webpackJsonp([96],{

/***/ "+iPQ":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return api; });
var api = {};
api.postLogin = '/oauth/token'; //登录
api.getlistNum = '/v1/card/get/list'; //获取人员（卡）列表
api.getTenant = '/v1/card/get/tenant'; //获取入住人员信息

api.getDeviceItems = '/v1/device/get/items'; //获取设备信息

api.unbindCard = '/v1/site/unbind/card'; //解绑房间
api.bindCard = "/v1/site/bind/card"; //绑定房间
api.setTenant = "/v1/card/set/tenant"; //绑定房间

api.addCard = "/v1/card/add"; //创建人员（卡）
api.updateCard = "/v1/card/update"; //修改卡信息
api.deleteCard = "/v1/card/delete"; //删除卡

api.exportCard = "/v1/card/export"; //导出卡信息
api.exportSite = "/v1/site/export"; //导出房源信息
api.exportDeviceOrder = "/v1/device/export/DeviceOrder"; //导出设备信息


api.getTree = "/v1/site/get/tree"; //获取所有房源
api.getSiteList = "/v1/site/get/list"; //获取房间列表信息
api.getIntegration = "/v1/card/get/integration"; //获取房间列表信息
api.deleteSite = "/v1/site/delete"; //房源批量删除
api.removeAssign = "/v1/site/remove/assign"; //解绑
api.siteAssign = "/v1/site/assign"; //绑定
api.siteAddRoot = "/v1/site/add/root"; //房源创建根级
api.siteUpdate = "/v1/site/update"; //房源修改
api.sitCreateMod = "/v1/site/create/mod"; //房源创建模板
api.sitAddChild = "/v1/site/add/child"; //房源创建下一级
api.sitAddNodes = "/v1/site/add/nodes"; //房源批量创建下一级
api.getSiteTenant = "/v1/site/get/tenant"; //获取已入住人员信息

api.sendCommand = "/v1/device/send/command"; //通用接口

api.getCertificates = "/v1/device/certificate/list"; //凭证列表获取
api.updateCertificates = "/v1/device/update/certificate"; //凭证列表修改
api.deleteCertificates = "/v1/device/delete/certificate"; //凭证列表删除
api.addCertificates = "/v1/device/add/certificate"; //添加凭证
api.getDeviceList = "/v1/device/get/list"; // 查询设备列表
api.getDeviceResult = "/v1/device/get/command/result"; // 查询反馈日志列表
api.unbindDeviceSite = "/v1/device/unbind/site"; // 解除绑定房间
api.deleteDevice = "/v1/device/delete/device"; // 删除设备
api.bindDeviceSite = "/v1/device/bind/site"; // 绑定房间

api.fingerprintTransfer = "/v1/device/isp/fingerprintTransfer"; //下发指纹
api.getDeviceRegisterManager = "/v1/device/isp/registerManager"; // 重置添加管理员
api.getDeviceOperateUserInfo = "/v1/device/isp/operateUserInfo"; // 下发凭证用户命令
api.DeviceRegisterDevice = "/v1/device/isp/registerDevice"; // 设备初始化
api.openLock = "/v1/device/isp/openLock"; //远程开锁

// api.fingerprintTransfer = "/v1/device/onenet/fingerprintTransfer" //下发指纹
// api.getDeviceRegisterManager = "/v1/device/onenet/registerManager" // 重置添加管理员
// api.getDeviceOperateUserInfo = "/v1/device/onenet/operateUserInfo" // 下发凭证用户命令
// api.DeviceRegisterDevice = "/v1/device/onenet/registerDevice" // 设备初始化
// api.openLock = "v1/device/onenet/openLock"//远程开锁

api.getOpenRecord = "/v1/device/get/open/record"; //获取开门数据

api.bindRole = "/v1/account/bind/role"; //用户绑定角色
api.getUserList = "/v1/account/user/list"; //获取用户列表
api.getRoleList = "/v1/account/role/list"; //获取角色信息
api.getRoleList = "/v1/account/role/list"; //获取角色信息
api.updateRole = "/v1/account/update/role"; //修改角色权限
api.deleteRole = "/v1/account/role/delete"; //删除角色
api.addRole = "/v1/account/add/role"; //添加角色

api.getStatisticsTotal = "/v1/statistics/get/total"; // 获取房间总数
api.getStatisticsVacancy = "/v1/statistics/get/vacancy"; // 查询空房总数
api.getTenantCount = "/v1/statistics/get/tenant/count"; //查询入住人数

api.getOperateList = "/v1/log/operate/list"; // 获取操作日志
api.getExceptionList = "/v1/log/exception/list"; // 获取操作日志
api.getLockAlert = "/v1/device/get/lock/alert"; // 获取警告日志

api.getCheckCode = "/v1/account/checkCode"; // 获取验证码
api.checkCodeMatches = "/v1/account/checkCode/matches"; // 校验验证码
api.addUser = "/v1/account/add/user"; // 添加用户
api.queryList = "/v1/card/query/list"; //获取卡号（IMEI）
api.countStatus = "/v1/card/count/status"; //获卡状态统计
api.lateOpenLock = "/v1/statistics/late/open/lock"; //晚归
api.unOpenLockByDay = "/v1/statistics/unOpen/lock"; //不在校

api.analysis = "/v1/statistics/analysis"; //电量统计
api.userInfo = "/v1/account/user/info"; //用户信息
api.getEnterprise = "/v1/account/get/enterprise"; //查询所属部门
api.addEnterprise = "/v1/account/add/enterprise"; //添加部门

api.getHeartbeat = "/v1/statistics/get/heartbeat"; //获取心跳

api.editPassword = "/v1/account/edit/password"; //修改登录账户
api.deleteUser = "/v1/account/delete/user"; //删除用户
api.updateEnterprise = "/v1/account/update/enterprise"; //更新部门信息


api.lockDeviceInfoList = "/v1/device/refresh/list"; //刷新设备信息
api.getLockAlert1 = "/v1/device/refresh/alert"; //门锁报警日志刷新
api.getOpenRecordList = "/v1/device/refresh/record"; //开锁日志刷新
api.getHeartbeat1 = "/v1/device/refresh/  "; //心跳刷新
api.deleteEnterprise = "/v1/account/delete/enterprise"; //删除部门
api.assignSite = "/v1/site/assign"; //房源和部门绑定
api.setEnterprise = "/v1/site/set/enterprise"; //房源和部门绑定
api.infoImport = "/v1/card/infoImport"; //批量导入

api.getMark = "/v1/card/get/mark"; //获取指纹库
api.addMark = "/v1/card/add/mark"; //导入指纹库
api.deleteMark = "/v1/card/delete/mark"; //删除信息库
api.editMark = "/v1/card/edit/mark"; //编辑信息库

api.onlySiteDevice = "/v1/card/only/siteDevice"; //查询房间和设备数据
api.onlyTenant = "/v1/card/only/tenant"; //查询房间和人员信息

api.export = "/v1/device/export/openRecord"; //导出接口
api.editType = "/v1/account/edit/type"; //修改类型
api.orderKill = "/v1/account/order/kill"; //强制删除登录用户
api.editUserEnterprise = "/v1/account/edit/user/enterprise"; //修改账户部门
api.getDeletes = "/v1/account/get/deletes"; //获取已删除账户
// ZG
api.ZGdeleteDevice = "/v1/zg/deleteDevice"; //删除设备
api.ZGregisterDevice = "/v1/zg/registerDevice"; //注册平台
api.ZGduserOperation = "/v1/zg/userOperation"; //添加用户

api.formDataCommand = "/v1/device/send/fromData"; //formdata指纹
api.sendEmergence = "/v1/device/send/emergence"; //发送离线密码短信
api.getProjects = "/v1/statistics/get/project"; //获取项目下门锁总数
api.getRolesByUser = "/v1/account/get/role"; //获取用户对应角色
api.orderLockOpen = "/v1/statistics/order/openLock"; //获取开锁记录
api.lockOpenStatistics = "/v1/statistics/statistics/openLock"; //获取当天开锁记录时间间隔
api.alertTypeStatistics = "/v1/statistics/alert/type"; //获取警告日志统计
api.cancelDistribution = "/v1/device/delete/by/serial"; //取消下发指令
api.syncCommands = "/v1/device/syncCommands"; //从paas同步能对应得上的有效凭证
api.orderDeviceData = "/v1/device/order/deviceData"; //获取指定锁所有非703凭证数据

api.editConfig = "/v1/auto/edit/config"; //修改配置
api.getConfig = "/v1/auto/get/config"; //获取配置
api.editQuota = "/v1/device/edit/quota/{id}/{quota}"; //修改lincense
api.edutLicense = "/v1/device/edit/license"; //edutLicense


api.getPlaceList = "/v1/place/get/list"; //获取房间列表信息
api.addNodes = "/v1/place/add/nodes"; //创建房源
api.createModPlace = "/v1/place/create/mod"; //创建房源
api.updatePlace = "/v1/place/update"; //更新房源信息
api.deleteRoom = "/v1/place/delete"; //删除房源信息
api.addRoot = "/v1/place/add/root"; //添加根目录
api.getList = "/v1/houseSensor/get/list"; //获取警告日志
api.getReportList = "/v1/houseSensor/report/list"; //获取警告日志
api.registerDevice = "/v1/houseSensor/isp/registerDevice"; //注册设备
api.bindSite = "/v1/houseSensor/bind/site"; //绑定地点
api.getAlarmUser = "/v1/place/get/alarm"; //获取联系人
api.addAlarmUser = "/v1/place/add/alarm"; //添加联系人
api.unbindSite = "/v1/houseSensor/unbind/site"; //解绑地点
api.deleteAlarm = "/v1/place/delete/alarm"; //删除联系人
api.deleteAlarmUser = "/v1/pay/delete/alarmUser"; //删除联系人
api.updateAlarm = "/v1/place/update/alarm"; //更新联系人
api.editAlarmUser = "/v1/pay/edit/alarmUser"; //更新联系人
api.monitorDevices = "/v1/place/monitor/devices"; //统计设备总数和房间总数
api.getOrderReport = "/v1/houseSensor/order/report"; //根据类型和指定天数范围获取报警记录
api.getReports = "/v1/houseSensor/get/reports"; //获取所有报警信息
api.siteDevices = "/v1/houseSensor/site/device"; //获取所关系
api.deviceReport = "/v1/houseSensor/export/report";
api.monitorReport = "/v1/houseSensor/monitor/report";

api.updatePush = "/v1/push/paas/update/push"; //修改反馈日志状态
// fluorite
api.fluoriteRegisterDevice = "/v1/ys/registerDevice"; //注册设备
api.fluoriteDeleteDevice = "/v1/ys/deleteDevice"; //注销设备

api.deviceLink = "/v1/ys/deviceLink"; //子设备关联
api.deviceUnlink = "/v1/ys/deviceUnlink"; //子设备解除关联
// 注册设备集成接口
api.registerDeviceAll = "/v1/device/all/registerDevice";

api.getAirSwitch = "/v1/device/get/airSwitch"; //获取空开信息
api.getAirSwitchParameter = "/v1/device/get/device/parameter"; //获取空开列表
api.getAirSwitchParameter = "/v1/device/get/device/parameter"; //获取空开列表
api.personBindEnterprise = "/v1/card/bind/enterprise"; //人员绑定部门
api.personUnBindEnterprise = "/v1/card/unbind/enterprise"; //人员解绑部门
api.getPersonBindEnterprise = "/v1/card/get/enterprise"; //获取人员绑定部门
api.getBase64Code = "/test/en/aed"; //
api.getUserid = "/work/wechat/convert_to_userid"; //获取企业微信userid

api.createKey = "/auto/create/key"; //创建普通用户
api.orderCreateKey = "/v1/card/order/create/key"; //生成普通用户账号
api.editMyKey = "/v1/account/edit/myKey";

api.createOrder = "/v1/pay/createOrder"; //充值
api.getOrderList = "/v1/pay/list"; //充值

// 接警联系人
api.lockAddAlarmUser = "/v1/pay/add/alarmUser"; //添加联系人
api.lockAlarmUsers = "/v1/pay/alarmUsers"; //获取联系人
api.rechargeAlarmBalance = "/v1/pay/recharge/alarmBalance";
api.getAlwaysOpensApi = "/v1/device/alwaysOpen/list";
// 设备状态统计筛选

api.screenStatisticsItems = "/v1/statistics/device/items";

// 合同

api.postLeasesList = "/v1/leases/get/list"; // 获取合同列表
api.postAddLeases = "/v1/leases/add"; // 创建合同
api.postUpdateLeases = "/v1/leases/update"; // 修改合同
api.postDeleteLeases = "/v1/leases/delete"; // 删除合同
api.getLeasesStatusstatistics = "/v1/leases/status/statistics"; // 首页数据获取
api.getAutoRetreat = "/v1/leases/to/retreat"; // 同步合同状态
api.getBalance = '/v1/pay/get/balance'; //获取余额
api.backRefunds = '/v1/pay/refunds/[orderNo}/[reason}'; //退款
api.getRoomStatistics = '/v1/leases/room/statistics'; //按社区进行房屋总数统计
api.getRentedRoomStatistics = '/v1/leases/rentedroom/statistics'; //按社区进行入住房屋总数统计
api.getCommunitystatus = '/v1/leases/communitystatus/statistics/{status}'; //按社区对租房状态统计的通用接口
api.getCommonStatistics = '/v1/leases/common/statistics'; //按社区、按状态 分组统计房间总数
api.getCommunityrentStatistics = '/v1/leases/communityrent/statistics'; //缴费的截至时间大于或等于当日时间，都算租金收缴成功
api.createkeyCard = '/v1/card/order/create/key'; //传人员id生成可登录的小程序用户
api.getTotalRevenue = '/v1/leases/order/totalRevenue'; //获取总收入
api.getStatisticsByMonth = '/v1/leases/statisticsByMonth/'; // 入住统计
api.getRevenueByMonth = '/v1/leases/revenueByMonth/'; // 月收入统计
api.getStatisticsRevenueTop = '/v1/leases/statistics/revenueTop'; // 收入排行
api.sendSigningNotice = '/v1/leases/to/signingNotice'; // 签约成功通知

api.getContracts = '/v1/auto/getContracts'; //获取所有合同模板
api.createUpdateContractHandle = '/v1/auto/contractHandle'; //新建或修改合同模板
api.getOrderContract = '/v1/auto/getOrderContract'; //查询指定模板
api.deleteContracts = '/v1/auto/deleteContracts'; //删除模板


api.editLincense = '/v1/device/edit/license'; //授权


/***/ }),

/***/ "/6zp":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/decoration7/src/main.vue
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//





/* harmony default export */ var main = ({
  name: 'DvDecoration7',
  props: {
    color: {
      type: Array,
      default: function _default() {
        return [];
      }
    }
  },
  data: function data() {
    return {
      defaultColor: ['#1dc1f5', '#1dc1f5'],

      mergedColor: []
    };
  },

  watch: {
    color: function color() {
      var mergeColor = this.mergeColor;


      mergeColor();
    }
  },
  methods: {
    mergeColor: function mergeColor() {
      var color = this.color,
          defaultColor = this.defaultColor;


      this.mergedColor = Object(util["deepMerge"])(Object(plugin_util["deepClone"])(defaultColor, true), color || []);
    }
  },
  mounted: function mounted() {
    var mergeColor = this.mergeColor;


    mergeColor();
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-a40c4f44","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/decoration7/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"dv-decoration-7"},[_c('svg',{attrs:{"width":"21px","height":"20px"}},[_c('polyline',{attrs:{"stroke-width":"4","fill":"transparent","stroke":_vm.mergedColor[0],"points":"10, 0 19, 10 10, 20"}}),_vm._v(" "),_c('polyline',{attrs:{"stroke-width":"2","fill":"transparent","stroke":_vm.mergedColor[1],"points":"2, 0 11, 10 2, 20"}})]),_vm._v(" "),_vm._t("default"),_vm._v(" "),_c('svg',{attrs:{"width":"21px","height":"20px"}},[_c('polyline',{attrs:{"stroke-width":"4","fill":"transparent","stroke":_vm.mergedColor[0],"points":"11, 0 2, 10 11, 20"}}),_vm._v(" "),_c('polyline',{attrs:{"stroke-width":"2","fill":"transparent","stroke":_vm.mergedColor[1],"points":"19, 0 10, 10 19, 20"}})])],2)}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/decoration7/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var decoration7_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "/Q7J":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/extends.js
var helpers_extends = __webpack_require__("Dd8w");
var extends_default = /*#__PURE__*/__webpack_require__.n(helpers_extends);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/mixin/autoResize.js
var autoResize = __webpack_require__("kN6d");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/conicalColumnChart/src/main.vue

//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//







/* harmony default export */ var main = ({
  name: 'DvConicalColumnChart',
  mixins: [autoResize["a" /* default */]],
  props: {
    config: {
      type: Object,
      default: function _default() {
        return {};
      }
    }
  },
  data: function data() {
    return {
      ref: 'conical-column-chart',

      defaultConfig: {
        /**
         * @description Chart data
         * @type {Array<Object>}
         * @default data = []
         */
        data: [],
        /**
         * @description Chart img
         * @type {Array<String>}
         * @default img = []
         */
        img: [],
        /**
         * @description Chart font size
         * @type {Number}
         * @default fontSize = 12
         */
        fontSize: 12,
        /**
         * @description Img side length
         * @type {Number}
         * @default imgSideLength = 30
         */
        imgSideLength: 30,
        /**
         * @description Column color
         * @type {String}
         * @default columnColor = 'rgba(0, 194, 255, 0.4)'
         */
        columnColor: 'rgba(0, 194, 255, 0.4)',
        /**
         * @description Text color
         * @type {String}
         * @default textColor = '#fff'
         */
        textColor: '#fff',
        /**
         * @description Show value
         * @type {Boolean}
         * @default showValue = false
         */
        showValue: false
      },

      mergedConfig: null,

      column: []
    };
  },

  watch: {
    config: function config() {
      var calcData = this.calcData;


      calcData();
    }
  },
  methods: {
    afterAutoResizeMixinInit: function afterAutoResizeMixinInit() {
      var calcData = this.calcData;


      calcData();
    },
    onResize: function onResize() {
      var calcData = this.calcData;


      calcData();
    },
    calcData: function calcData() {
      var mergeConfig = this.mergeConfig,
          initData = this.initData,
          calcSVGPath = this.calcSVGPath;


      mergeConfig();

      initData();

      calcSVGPath();
    },
    mergeConfig: function mergeConfig() {
      var defaultConfig = this.defaultConfig,
          config = this.config;


      this.mergedConfig = Object(util["deepMerge"])(Object(plugin_util["deepClone"])(defaultConfig, true), config || {});
    },
    initData: function initData() {
      var mergedConfig = this.mergedConfig;
      var data = mergedConfig.data;


      data = Object(plugin_util["deepClone"])(data, true);

      data.sort(function (_ref, _ref2) {
        var a = _ref.value;
        var b = _ref2.value;

        if (a > b) return -1;
        if (a < b) return 1;
        if (a === b) return 0;
      });

      var max = data[0] ? data[0].value : 10;

      data = data.map(function (item) {
        return extends_default()({}, item, {
          percent: item.value / max
        });
      });

      mergedConfig.data = data;
    },
    calcSVGPath: function calcSVGPath() {
      var mergedConfig = this.mergedConfig,
          width = this.width,
          height = this.height;
      var imgSideLength = mergedConfig.imgSideLength,
          fontSize = mergedConfig.fontSize,
          data = mergedConfig.data;


      var itemNum = data.length;
      var gap = width / (itemNum + 1);

      var useAbleHeight = height - imgSideLength - fontSize - 5;
      var svgBottom = height - fontSize - 5;

      this.column = data.map(function (item, i) {
        var percent = item.percent;


        var middleXPos = gap * (i + 1);
        var leftXPos = gap * i;
        var rightXpos = gap * (i + 2);

        var middleYPos = svgBottom - useAbleHeight * percent;
        var controlYPos = useAbleHeight * percent * 0.6 + middleYPos;

        var d = '\n          M' + leftXPos + ', ' + svgBottom + '\n          Q' + middleXPos + ', ' + controlYPos + ' ' + middleXPos + ',' + middleYPos + '\n          M' + middleXPos + ',' + middleYPos + '\n          Q' + middleXPos + ', ' + controlYPos + ' ' + rightXpos + ',' + svgBottom + '\n          L' + leftXPos + ', ' + svgBottom + '\n          Z\n        ';

        var textY = (svgBottom + middleYPos) / 2 + fontSize / 2;

        return extends_default()({}, item, {
          d: d,
          x: middleXPos,
          y: middleYPos,
          textY: textY
        });
      });
    }
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-7c00d6fd","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/conicalColumnChart/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:_vm.ref,staticClass:"dv-conical-column-chart"},[_c('svg',{attrs:{"width":_vm.width,"height":_vm.height}},_vm._l((_vm.column),function(item,i){return _c('g',{key:i},[_c('path',{attrs:{"d":item.d,"fill":_vm.mergedConfig.columnColor}}),_vm._v(" "),_c('text',{style:(("fontSize:" + (_vm.mergedConfig.fontSize) + "px")),attrs:{"fill":_vm.mergedConfig.textColor,"x":item.x,"y":_vm.height - 4}},[_vm._v("\n        "+_vm._s(item.name)+"\n      ")]),_vm._v(" "),(_vm.mergedConfig.img.length)?_c('image',{attrs:{"xlink:href":_vm.mergedConfig.img[i % _vm.mergedConfig.img.length],"width":_vm.mergedConfig.imgSideLength,"height":_vm.mergedConfig.imgSideLength,"x":item.x - _vm.mergedConfig.imgSideLength / 2,"y":item.y - _vm.mergedConfig.imgSideLength}}):_vm._e(),_vm._v(" "),(_vm.mergedConfig.showValue)?_c('text',{style:(("fontSize:" + (_vm.mergedConfig.fontSize) + "px")),attrs:{"fill":_vm.mergedConfig.textColor,"x":item.x,"y":item.textY}},[_vm._v("\n        "+_vm._s(item.value)+"\n      ")]):_vm._e()])}),0)])}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/conicalColumnChart/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var conicalColumnChart_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ 0:
/***/ (function(module, exports) {

/* (ignored) */

/***/ }),

/***/ "0UaI":
/***/ (function(module, exports) {

module.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEwAAAEACAIAAACWGAffAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQyIDc5LjE2MDkyNCwgMjAxNy8wNy8xMy0wMTowNjozOSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6Mjc4ODM2MTQ5NkNBMTFFQ0I0ODhFNTA0RDVDODk5NzAiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6Mjc4ODM2MTM5NkNBMTFFQ0I0ODhFNTA0RDVDODk5NzAiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTggKFdpbmRvd3MpIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RkE1MzQwNzM4QTFCMTFFQzhGNTk5NEFGNkU1NTgxNTYiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6RkE1MzQwNzQ4QTFCMTFFQzhGNTk5NEFGNkU1NTgxNTYiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4IZ/QvAAAF+0lEQVR42uzcXUgUXRjA8SezIiMluhGKCsk+KMiIDLwIWzIzqUhE9iIqEPIm+rgJ6SIoCIoyvPBGKbDAC+siE6IPSQgrKjASy+xTzIRAoZQ+MKvpnHzb2RlndV1nd+Z93//DEs105pz9zZ4z58zs9kwxDEP+65Ek/4MACRIkSJAgQYIECRIkSJAgQYIECRIkSJAgQYIECRIkSJAgQYIECRIkSJAgQYIECRIkSJAgQYIECRIkSJAgQYIECRIkSJAgQYIECRKkN5E81j9+/y5378qDB/LunXz8KN++udny7NkyZ44sXSo5ObJmzcSOVe+kvl5evZKXL2VoyNw/a5YsWSIrVkhJiaW84RiDg0ZNjbF1q6EKxPsVCBg7dxqNjUaU8fixUVIyfoVdXaEjnJC3biWIZ3tne/YYvb3jCPv7dcloKszPN4aHIyDr66OtJR6vggKjs3MspDoR0ddWXj7itI7Jmzelulqamx2GQXa2zJ8vP364NibViHr+3L7z+nU9xi5dkrlzHQ5pb9dXh1Ckp8uOHbqkunaomD5d+vrk6lX58OGfAidPSm6u5OeHfZJv3hi5ufaTUVRkdHQY8YumJiMry95oMBjqaZaoqzPLpKfrY0fH5cuWqioqrN21tNTeWHOzkZg4dszedGWlQ7HTp80CGRnOVX3+bKnn8GG17+88qaaKri5L33j/XjZsSNBEdvSonDtn2XPtmgwMjJrUw2b1qVOdqxp9lLkYUF05fCiqJufNS+iEXVoqGzeam01N2mmLSLCxFjtJYUg1pkORmqqbTHyoEx0eqnO5vKwbHjb37d7tzeorJUUyM83N16/l16+4rV3VZderWLfO0mNDk4H7yOXLPUOq1Wx4qAVzvJCq23gVM2ZYNl1aezghf/70DGlTJSXFDclNM0iQPn38ESkGB6WtTf+ZHN3hI5eThQtl5cp/A/LRIykrkydPJrVGPXtWrxx92l1PndIrkskIVZw/L2lp+mT5EdnaKuXlbi7fwp+y+QW5ebPLLatu768xqbpof79lT0GBbNqkV2FRLo/UtaehQe7cMfdcuCC1tX5CNjZaNk+ckCNHJtzUwYOyZYt+VBV+7rKyfNNdbR/jvn0xthYMWjZ7e/00Jm3PHfr6YmxNTa2WbpTsJyTLOpAgQYIECTJy2BaoMU/itkWFi992ur/isT0Cjj5sj1X9teJJT7dsHj8eY2vqtjs8Fizw013Itm2WO+aKCn0zEQhMrKm6Ovtj/0R9HxEdUr2bjAx5+9bc09GhX5OJGG7W4n51vXfPzWZTU/VNqe+Qalg+fOhOmykp0tPj13kyO1u+fJG9e2NvTZ0p9QGqShL7SDJ5wh9CdbV+qUvIyOOCaL7HV9OsKqaEHn0pGOtMpabKmGdLlnUgQYIECRIkSJAgQYIECRIkSJAgQYIECRIkSJAgQYIECRIkSJAgQYL8EzEkS3ErbD/zjWPuj5FsTJ6E7QfbLv202Qk5OnVVwsL2q1+XftnmhGxp8QzZ2mr+PS/P/rPwySKnTTP31dR4I/z6VZ4+NTeXLXM798eqVea+wUFvnEVFls2cHLevroWFunuEoqxMursTKqys1FnzwvtqQYG9TAzpZf5cn/8i16+XRYss/6w2799PkPDMGTl0yLJHnfS0tLEOiQR2PMrM+NbZ6Zycr709jhnrbtxwSM5XXOycnK+hwZKcTx07OmprLVVVVal9U3SCvlBcuSJVVV6mWVQRCOj/na/aGh3Pnsn+/ebbGzfNoorbt3WFDmfLw4SZ27ePkzAzGJxAbQcOGENDEVKftrQYhYUepD4tLdWZTceOnp5oP4O8POPTp8j5XUeS2FZW6nL+TGK7a9c4FZaVGd3doSOsY9IWAwM6DWBbW1zSEavLoBpOmZmydq0e8BOdGC5elBcv9Cv8MjFzpixeLKtXS3FxePExkdxPggQJEiRIkCBBggQJEiRIkCBBggQJEiRIkCBBggQJEiRIkCBBggQJEiRIkCBBggQJEiRIkCBBggQJEiRIkCBBggQJEiRIkCBBggQJEuQ48VuAAQDvoDKB9NOzjgAAAABJRU5ErkJggg=="

/***/ }),

/***/ "0xDb":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony export (immutable) */ __webpack_exports__["c"] = debounce;
/* harmony export (immutable) */ __webpack_exports__["b"] = compare;
/* unused harmony export getlist */
/* unused harmony export setRemoveTitle */
/* harmony export (immutable) */ __webpack_exports__["f"] = formatTime;
/* unused harmony export palindrome */
/* harmony export (immutable) */ __webpack_exports__["m"] = timestampToTime;
/* unused harmony export toUTCtime */
/* unused harmony export getNowTime */
/* unused harmony export writeCurrentDate */
/* unused harmony export writeCurrentDate1 */
/* harmony export (immutable) */ __webpack_exports__["p"] = ztreeToElementTree;
/* harmony export (immutable) */ __webpack_exports__["q"] = ztreeToElementTree2;
/* harmony export (immutable) */ __webpack_exports__["j"] = recursion;
/* unused harmony export ztreeToElementTree3 */
/* unused harmony export get_header_row */
/* unused harmony export processFile */
/* harmony export (immutable) */ __webpack_exports__["n"] = uniqueArray;
/* harmony export (immutable) */ __webpack_exports__["o"] = uniqueArray1;
/* unused harmony export hbFun */
/* harmony export (immutable) */ __webpack_exports__["d"] = dec2hex;
/* harmony export (immutable) */ __webpack_exports__["h"] = group;
/* unused harmony export delArrVal */
/* unused harmony export isContained */
/* unused harmony export duplicateRemoval */
/* unused harmony export getcurrentTime */
/* harmony export (immutable) */ __webpack_exports__["g"] = getcurrentTime1;
/* unused harmony export timeTotimeimp */
/* harmony export (immutable) */ __webpack_exports__["k"] = reverse;
/* harmony export (immutable) */ __webpack_exports__["a"] = backDevice;
/* harmony export (immutable) */ __webpack_exports__["e"] = deleteZgVoucher;
/* unused harmony export deleteVoucher */
/* unused harmony export getfiId */
/* unused harmony export getfiId1 */
/* harmony export (immutable) */ __webpack_exports__["i"] = modifyCraiAllFun;
/* unused harmony export paramsValidate */
/* harmony export (immutable) */ __webpack_exports__["l"] = smallToBig;
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_toConsumableArray__ = __webpack_require__("Gu7T");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_toConsumableArray___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_toConsumableArray__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_json_stringify__ = __webpack_require__("mvHQ");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_json_stringify___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_json_stringify__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_core_js_object_keys__ = __webpack_require__("fZjL");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_core_js_object_keys___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_core_js_object_keys__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_typeof__ = __webpack_require__("pFYg");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_typeof___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_typeof__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__api__ = __webpack_require__("gyMJ");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__api_all__ = __webpack_require__("+iPQ");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__utils_equipment_js__ = __webpack_require__("ObZk");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__utils_util_js__ = __webpack_require__("oFuF");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_moment__ = __webpack_require__("PJh5");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_moment___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_moment__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__resetMessage__ = __webpack_require__("46Yo");










/**
 * @param {Function} fn 防抖函数
 * @param {Number} delay 延迟时间
 */
function debounce(fn, delay) {
    var timer;
    return function () {
        var context = this;
        var args = arguments;
        clearTimeout(timer);
        timer = setTimeout(function () {
            fn.apply(context, args);
        }, delay);
    };
}
function compare(prop, align) {
    return function (a, b) {
        var value1 = a[prop];
        var value2 = b[prop];
        if (align == "positive") {
            //正序
            return new Date(value1) - new Date(value2);
        } else if (align == "inverted") {
            //倒序
            return new Date(value2) - new Date(value1);
        }
    };
}
// zTree传参
function getlist(id) {
    console.log(1111);
    // this.$parent.fatherMethod(id);
}
function setRemoveTitle(treeId, treeNode) {
    console.log(treeNode);
    return treeNode.isParent ? "删除父节点" : "删除叶子节点";
}
/**
 * @param {date} time 需要转换的时间
 * @param {String} fmt 需要转换的格式 如 yyyy-MM-dd、yyyy-MM-dd HH:mm:ss
 */
function formatTime(time, fmt) {
    if (!time) return '';else {
        var date = new Date(time);
        var o = {
            'M+': date.getMonth() + 1,
            'd+': date.getDate(),
            'H+': date.getHours(),
            'm+': date.getMinutes(),
            's+': date.getSeconds(),
            'q+': Math.floor((date.getMonth() + 3) / 3),
            S: date.getMilliseconds()
        };
        if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length));
        for (var k in o) {
            if (new RegExp('(' + k + ')').test(fmt)) {
                fmt = fmt.replace(RegExp.$1, RegExp.$1.length === 1 ? o[k] : ('00' + o[k]).substr(('' + o[k]).length));
            }
        }
        return fmt;
    }
}

// 标准时间转日期
function palindrome(str) {
    // 先后去除空格和非数字字母的字符
    var newStr = str.replace(/\s/g, "").replace(/[^a-zA-Z0-9]/g, "").toLowerCase();
    //判断翻转后的字符串是否与原字符串相等
    console.log(newStr, '------');
    var reverStr = newStr.split("").reverse().join("");
    if (reverStr === newStr) {
        return true;
    } else {
        return false;
    }
}

function timestampToTime(timestamp) {
    var chinaStandard = timestamp;
    var date = new Date(chinaStandard);
    var y = date.getFullYear();
    var m = date.getMonth() + 1;
    m = m < 10 ? '0' + m : m.toString();
    var d = date.getDate();
    d = d < 10 ? '0' + d : d;
    var h = date.getHours();
    var minute = date.getMinutes();
    h = h < 10 ? '0' + h : h;
    minute = minute < 10 ? '0' + minute : minute;
    var second = date.getSeconds();
    second = second < 10 ? '0' + second : second;
    var Time = y + m + d + h + minute + second;
    if (Time.length < 14) {
        var str = '';
        for (var i = Time.length; i < 14; i++) {
            str += '0';
        }
        Time += str;
    }
    return Time;
}

//日期转为UTC国际时间  format the date string from webservice to UTC time;
function toUTCtime(dateStr) {
    return new Date(dateStr).toISOString();
}

// 获取当前时间
function getNowTime() {
    var dateTime = void 0;
    var yy = new Date().getFullYear();
    var mm = new Date().getMonth() + 1;
    var dd = new Date().getDate();
    var hh = new Date().getHours();
    var mf = new Date().getMinutes() < 10 ? '0' + new Date().getMinutes() : new Date().getMinutes();
    var ss = new Date().getSeconds() < 10 ? '0' + new Date().getSeconds() : new Date().getSeconds();
    dateTime = yy + '-' + mm + '-' + dd + ' ' + '00' + ':' + '00' + ':' + '00';
    return dateTime;
}

function writeCurrentDate(n) {
    var now = new Date();
    var time = now.setTime(now.getTime() - n * 24 * 60 * 60 * 1000);
    var date = new Date(parseInt(time));
    var y = date.getFullYear();
    var MM = date.getMonth() + 1;
    MM = MM < 10 ? '0' + MM : MM;
    var d = date.getDate();
    d = d < 10 ? '0' + d : d;
    var h = date.getHours();
    h = h < 10 ? '0' + h : h;
    var m = date.getMinutes();
    m = m < 10 ? '0' + m : m;
    var s = date.getSeconds();
    s = s < 10 ? '0' + s : s;
    return y + '-' + MM + '-' + d + ' ' + '00' + ':' + '00' + ':' + '00';
}
function writeCurrentDate1(n) {
    var now = new Date();
    var time = now.setTime(now.getTime() - n * 24 * 60 * 60 * 1000);
    return time;
}

// 树形数据转化
function ztreeToElementTree(data, config) {
    var id = config.id || 'id'; // 定义ztree数据存储id（自身的id）的key值，可以自定义但一般都是id、pid这种
    var pid = config.pid || 'pid'; // 定义ztree数据存储pid（父id）的key值
    var children = config.children || 'children'; // 定义生成的element tree存储子节点的key，可以在element中规定defaultProps: {children: 'children'}
    var idMap = {}; // 将原始数据转化为以id为key的map
    var elementTree = []; // 输出的element tree数据
    data.forEach(function (item) {
        item['value'] = item.id;
        item['label'] = item.name;
        idMap[item.id] = item;
    });
    data.forEach(function (item) {
        // debugger
        if (idMap[item.pid] != idMap[item.id] && idMap[item.pid]) {
            // 该item项有爸爸，放到对应的父节点下
            !idMap[item.pid].hasOwnProperty(children) && (idMap[item.pid][children] = []);
            idMap[item.pid][children].push(item);
        } else {
            // 根节点
            elementTree.push(item);
        }
    });
    return elementTree;
}
// 树形数据转化2
function ztreeToElementTree2(data, config) {
    var id = config.id || 'id'; // 定义ztree数据存储id（自身的id）的key值，可以自定义但一般都是id、pid这种
    var pid = config.pid || 'pid'; // 定义ztree数据存储pid（父id）的key值
    var children = config.children || 'children'; // 定义生成的element tree存储子节点的key，可以在element中规定defaultProps: {children: 'children'}
    var idMap = {}; // 将原始数据转化为以id为key的map
    var elementTree = []; // 输出的element tree数据
    data.forEach(function (item) {
        item['value'] = item.id;
        item['label'] = item.name;
        // if(item.layout){
        //   item['disabled']=false
        // }else{
        //   item['disabled']=true
        // }
        idMap[item.id] = item;
    });
    data.forEach(function (item) {
        // debugger
        if (idMap[item.pid] != idMap[item.id] && idMap[item.pid]) {
            // 该item项有爸爸，放到对应的父节点下
            !idMap[item.pid].hasOwnProperty(children) && (idMap[item.pid][children] = []);
            idMap[item.pid][children].push(item);
        } else {
            // 根节点
            elementTree.push(item);
        }
    });
    return elementTree;
}

function recursion(arr) {
    var newArr = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];

    arr.forEach(function (item) {
        (typeof item === "undefined" ? "undefined" : __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_typeof___default()(item)) === 'object' && item.id && newArr.push(item.id); // 先判断当前项是否是对象。 当前项是否存在你想要的数据。都符合，把数据push到新数组里
        item.children && item.children instanceof Array && recursion(item.children, newArr); // 当前项是否还有子节点，子节是否是数组, 如果是继续调用自己。再循环遍历一次.
    });
    return newArr;
}

// 树形数据转化2
function ztreeToElementTree3(data, config) {
    var id = config.id || 'id'; // 定义ztree数据存储id（自身的id）的key值，可以自定义但一般都是id、pid这种
    var pid = config.pid || 'pid'; // 定义ztree数据存储pid（父id）的key值
    var children = config.children || 'children'; // 定义生成的element tree存储子节点的key，可以在element中规定defaultProps: {children: 'children'}
    var idMap = {}; // 将原始数据转化为以id为key的map
    var elementTree = []; // 输出的element tree数据
    data.forEach(function (item) {
        // if(item.layout){
        //   item['disabled']=false
        // }else{
        //   item['disabled']=true
        // }
        idMap[item.id] = item;
    });
    data.forEach(function (item) {
        // debugger
        idMap[item.pid]['label'] = item.name;
        idMap[item.pid]['value'] = item.id;
        var num = idMap[item.id] - idMap[item.pid];
        if (idMap[item.pid] != idMap[item.id] && num != 0) {
            // 该item项有爸爸，放到对应的父节点下
            !idMap[item.pid].hasOwnProperty(children) && (idMap[item.pid][children] = []);
            item['label'] = item.name;
            item['value'] = item.id;
            idMap[item.pid][children].push(item);
        } else {
            // 根节点
            elementTree.push(item);
        }
    });
    return elementTree;
}

function get_header_row(sheet) {
    var headers = [];
    /* sheet['!ref']表示所有单元格的范围，例如从A1到F8则记录为 A1:F8*/
    var range = XLSX.utils.decode_range(sheet['!ref']);
    var C = void 0,
        R = range.s.r; /* 从第一行开始 */
    /* 按列进行数据遍历 */
    for (C = range.s.c; C <= range.e.c; ++C) {
        /* 查找第一行中的单元格 */
        var cell = sheet[XLSX.utils.encode_cell({ c: C, r: R })];

        var hdr = "UNKNOWN " + C; // <-- 进行默认值设置
        if (cell && cell.t) hdr = XLSX.utils.format_cell(cell);

        headers.push(hdr);
    }
    return headers;
}
function processFile(file, fileList) {
    var _this = this;

    var reader = new FileReader();
    reader.onload = function (e) {
        /* 解析数据 */
        var bstr = e.target.result;
        var wb = XLSX.read(bstr, { type: 'binary' });
        /* 获取文件的第一个工作表（WorkSheet） */
        var wsname = wb.SheetNames[0];
        var ws = wb.Sheets[wsname];
        /* 数组转换 */
        var data = XLSX.utils.sheet_to_json(ws, { header: 1 });
        /* 进行表格数据更新 */
        _this.tableData = data;
        /* 进行表格表头数据更新 */
        _this.cols = getHeaderRow(ws);
    };
    reader.readAsBinaryString(file.raw);
    console.log(reader.readAsBinaryString(file.raw));
}

function uniqueArray(array, key) {
    var result = [array[0]];
    for (var i = 1; i < array.length; i++) {
        var item = array[i];
        var repeat = false;
        for (var j = 0; j < result.length; j++) {
            if (item[key] == result[j][key]) {
                repeat = true;
                break;
            }
        }
        if (!repeat) {
            result.push(item);
        }
    }
    return result;
}
function uniqueArray1(array, key) {
    var result = [array[0]];
    for (var i = 1; i < array.length; i++) {
        array[i]['label'] = array[i].name;
        array[i]['value'] = array[i].id;
        var item = array[i];
        var repeat = false;
        for (var j = 0; j < result.length; j++) {
            if (item[key] == result[j][key]) {
                repeat = true;
                break;
            }
        }
        if (!repeat) {
            result.push(item);
        }
    }
    return result;
}
// 合并
function hbFun(arrayName) {
    var idArray = [];
    var newAarray = [];
    arrayName.forEach(function (ele, i) {

        if (idArray.indexOf(arrayName[i].name) === -1) {

            newAarray.push({
                'openType': arrayName[i].openType,
                'name': arrayName[i].name,
                'total': arrayName[i].total,
                'time': __WEBPACK_IMPORTED_MODULE_8_moment___default()().format('YYYY-MM-DD')
            });
            idArray.push(arrayName[i].name);
        } else {
            newAarray.forEach(function (dom, k) {
                if (newAarray[k].name == arrayName[i].name) {//把具有相同id的course值进行合并
                    // var num=parseInt(newAarray[k].total)
                    // var num1=parseInt(arrayName[i].total)
                    // newAarray[k].total=num+num1
                }
            });
        }
    });

    console.log(newAarray);
}
// 进制转换
function dec2hex(str) {
    var dec = str.toString().split(""),
        sum = [],
        hex = [],
        i,
        s;
    while (dec.length) {
        s = 1 * dec.shift();
        for (i = 0; s || i < sum.length; i++) {
            s += (sum[i] || 0) * 10;
            sum[i] = s % 16;
            s = (s - sum[i]) / 16;
        }
    }
    while (sum.length) {
        hex.push(sum.pop().toString(16));
    }
    var card = hex.join("");
    var zero = '00000000';
    var tmp = 8 - card.length;
    var clength = zero.substring(0, tmp) + card;
    return clength;
}
function group(array, len) {
    var index = 0;
    var newarray = [];
    while (index < array.length) {
        newarray.push(array.slice(index, index += len));
    }
    return newarray;
}

function delArrVal(arr, val) {
    for (var i = 0; i < arr.length; i++) {
        if (arr[i] == val) {
            arr.splice(i, 1);
            i--;
        }
    }
    return arr;
}

function isContained(a, b) {
    if (!(a instanceof Array) || !(b instanceof Array)) return false;
    if (a.length < b.length) return false;
    var aStr = a.toString();
    for (var i = 0, len = b.length; i < len; i++) {
        if (aStr.indexOf(b[i]) == -1) return false;
    }
    return true;
}

function duplicateRemoval(obj) {
    var uniques = [];
    var stringify = {};
    for (var i = 0; i < obj.length; i++) {
        var keys = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_core_js_object_keys___default()(obj[i]);
        keys.sort(function (a, b) {
            return Number(a) - Number(b);
        });
        var str = '';
        for (var j = 0; j < keys.length; j++) {
            str += __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_json_stringify___default()(keys[j]);
            str += __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_json_stringify___default()(obj[i][keys[j]]);
        }
        if (!stringify.hasOwnProperty(str)) {
            uniques.push(obj[i]);
            stringify[str] = true;
        }
    }
    uniques = uniques;
    return uniques;
}

function getcurrentTime() {
    var date = new Date();
    var year = date.getFullYear();
    var month = date.getMonth() + 1;
    var day = date.getDate();
    if (month < 10) {
        month = "0" + month;
    }
    if (day < 10) {
        day = "0" + day;
    }
    var nowDate = year + "/" + month + "/" + day + ' 08:00:00';
    var str = new Date(nowDate).getTime();
    return new Date(str);
}

function getcurrentTime1(y) {
    var date = new Date();
    var year = date.getFullYear() + y;
    var month = date.getMonth() + 1;
    var day = date.getDate();
    if (month < 10) {
        month = "0" + month;
    }
    if (day < 10) {
        day = "0" + day;
    }
    var nowDate = year + "/" + month + "/" + day + ' 08:00:00';
    var str = new Date(nowDate).getTime();
    return new Date(str);
}

function timeTotimeimp(obj) {
    var year = obj.substr(0, 4);
    var month = obj.substr(4, 2);
    var day = obj.substr(6, 2);
    var hours = obj.substr(8, 2);
    var min = obj.substr(8, 2);
    var miao = obj.substr(10, 2);
    var hm = obj.substr(12, 2);
    var str = year + "-" + month + "-" + day + " " + hours + ":" + min + ":" + miao;
    var time = new Date(str);
    var time1 = time.getTime();
    return time1 / 1000;
}

function reverse(text) {
    var aaa = text;
    var bbb = [].concat(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_toConsumableArray___default()(aaa));
    var ccc = aaa.split('');
    var a, b;
    var aIndex = 0;
    var bIndex = 1;
    var arr = [];

    bbb.forEach(function (str, index) {
        if (index % 2 === 0) {
            a = str;
            aIndex += 1;
        } else {
            b = str;
            bIndex += 1;
        }
        if (a && b && bIndex - aIndex === 1) {
            arr.push(a + b);
        }
    });
    var str = arr.reverse().join('');
    console.log(str);
    return str;
}

function backDevice(row, callback) {
    var data = {
        q: __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_json_stringify___default()({ imei: row.imei })
    };
    Object(__WEBPACK_IMPORTED_MODULE_4__api__["g" /* httpPost */])(data, __WEBPACK_IMPORTED_MODULE_5__api_all__["a" /* api */].getDeviceItems).then(function (res) {
        callback(res);
    });
}
function deleteZgVoucher(row, callback) {
    if (row.type == 1) {
        getfiId1(row, function (data) {
            console.log(data);
            if (data.length > 0) {
                var _cardName = JSON.parse(row.content).username + '-' + JSON.parse(row.content).pzname;
                var _roomName = data[0].roomName;
                var startTime = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_json_stringify___default()(row.startTime);
                var endTime = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_json_stringify___default()(row.endTime);
                var _startTime = row.startTime,
                    _endTime = row.endTime;
                if (startTime.length == 13) {
                    _startTime = row.startTime / 1000;
                }
                if (endTime.length == 13) {
                    _endTime = row.endTime / 1000;
                }
                __WEBPACK_IMPORTED_MODULE_6__utils_equipment_js__["a" /* default */].delFingerPrints(row.deviceNum, row.imei, JSON.parse(row.content).userPassword, 2, data[0].face, 0, _startTime, _endTime, _cardName, _roomName, function (callback1) {
                    callback(callback1);
                });
            } else {
                Object(__WEBPACK_IMPORTED_MODULE_9__resetMessage__["a" /* message */])({
                    type: "error",
                    message: "还未下发"
                });
            }
        });
    } else if (row.type == 2) {
        getfiId1(row, function (data) {
            if (data.length > 0) {
                var _cardName = JSON.parse(row.content).username + '-' + JSON.parse(row.content).pzname;
                var _roomName = data[0].roomName;
                var startTime = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_json_stringify___default()(row.startTime);
                var endTime = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_json_stringify___default()(row.endTime);
                var _startTime = row.startTime,
                    _endTime = row.endTime;
                if (startTime.length == 13) {
                    _startTime = row.startTime / 1000;
                }
                if (endTime.length == 13) {
                    _endTime = row.endTime / 1000;
                }
                __WEBPACK_IMPORTED_MODULE_6__utils_equipment_js__["a" /* default */].delCardRegister(row.deviceNum, row.imei, JSON.parse(row.content).userPassword, 2, 1, JSON.parse(row.content).password, 36, _startTime, _endTime, 6212, data[0].face, _cardName, _roomName, function (callback1) {
                    callback(callback1);
                });
            } else {
                Object(__WEBPACK_IMPORTED_MODULE_9__resetMessage__["a" /* message */])({
                    type: "error",
                    message: "还未下发"
                });
            }
        });
    } else if (row.type == 3) {
        getfiId1(row, function (data) {
            if (data.length > 0) {
                var _cardName = JSON.parse(row.content).username + '-' + JSON.parse(row.content).pzname;
                var _roomName = data[0].roomName;
                var startTime = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_json_stringify___default()(row.startTime);
                var endTime = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_json_stringify___default()(row.endTime);
                var _startTime = row.startTime,
                    _endTime = row.endTime;
                if (startTime.length == 13) {
                    _startTime = row.startTime / 1000;
                }
                if (endTime.length == 13) {
                    _endTime = row.endTime / 1000;
                }
                __WEBPACK_IMPORTED_MODULE_6__utils_equipment_js__["a" /* default */].delCardRegister(row.deviceNum, row.imei, JSON.parse(row.content).userPassword, 2, 1, JSON.parse(row.content).password, 50, _startTime, _endTime, 6212, data[0].face, _cardName, _roomName, function (callback1) {
                    callback(callback1);
                });
            } else {
                Object(__WEBPACK_IMPORTED_MODULE_9__resetMessage__["a" /* message */])({
                    type: "error",
                    message: "还未下发"
                });
            }
        });
    } else if (row.type == 4) {
        getfiId1(row, function (data) {
            if (data.length > 0) {
                var _cardName = JSON.parse(row.content).username + '-' + JSON.parse(row.content).pzname;
                var _roomName = data[0].roomName;
                var startTime = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_json_stringify___default()(row.startTime);
                var endTime = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_json_stringify___default()(row.endTime);
                var _startTime = row.startTime,
                    _endTime = row.endTime;
                if (startTime.length == 13) {
                    _startTime = row.startTime / 1000;
                }
                if (endTime.length == 13) {
                    _endTime = row.endTime / 1000;
                }
                __WEBPACK_IMPORTED_MODULE_6__utils_equipment_js__["a" /* default */].delForeverPassword(row.deviceNum, row.imei, JSON.parse(row.content).userPassword, 2, JSON.parse(row.content).password, 255, _startTime, _endTime, 6209, data[0].face, _cardName, _roomName, function (callback1) {
                    callback(callback1);
                });
            } else {
                Object(__WEBPACK_IMPORTED_MODULE_9__resetMessage__["a" /* message */])({
                    type: "error",
                    message: "还未下发"
                });
            }
        });
    }
}

function deleteVoucher(row, callback) {
    var str = {};
    var _cardName = JSON.parse(row.content).username + '-' + JSON.parse(row.content).pzname;
    if (row.type == 1) {
        getfiId(row, function (data) {
            if (data.length > 0) {
                var fpid = "";
                if (data[0].face) {
                    fpid = data[0].face.toString(16);
                    if (fpid.length != 2) {
                        fpid = "0" + fpid;
                    }
                } else {
                    if (data[0].face == 0) {
                        fpid = data[0].face.toString(16);
                        fpid = "0" + fpid;
                    }
                }
                str = {
                    imei: row.imei,
                    deviceNum: row.deviceNum,
                    userTelephone: JSON.parse(row.content).userTelephone,
                    operateMode: 18,
                    order: 6218,
                    password: fpid,
                    userPassword: JSON.parse(row.content).userPassword,
                    is: false,
                    passwordStartTime: JSON.parse(row.content).passwordStartTime,
                    passwordEndTime: JSON.parse(row.content).passwordEndTime,
                    cardName: _cardName,
                    roomName: data[0].roomName
                };
                Object(__WEBPACK_IMPORTED_MODULE_4__api__["g" /* httpPost */])(str, __WEBPACK_IMPORTED_MODULE_5__api_all__["a" /* api */].getDeviceOperateUserInfo).then(function (res1) {
                    callback(res1);
                });
            } else {
                Object(__WEBPACK_IMPORTED_MODULE_9__resetMessage__["a" /* message */])({
                    type: "error",
                    message: "该凭还未下发"
                });
            }
        });
        return false;
    } else if (row.type == 2) {
        str = {
            cardId: row.cardId,
            imei: row.imei,
            deviceNum: row.deviceNum,
            userTelephone: JSON.parse(row.content).userTelephone,
            userPassword: JSON.parse(row.content).userPassword,
            operateMode: 13,
            order: 6213,
            password: JSON.parse(row.content).password,
            passwordStartTime: "20210813010101",
            passwordEndTime: "20680813010101",
            is: false,
            cardName: _cardName
        };
    } else if (row.type == 3) {
        str = {
            cardId: row.cardId,
            imei: row.imei,
            deviceNum: row.deviceNum,
            userTelephone: JSON.parse(row.content).userTelephone,
            operateMode: 12,
            order: 6212,
            userPassword: JSON.parse(row.content).userPassword,
            is: false,
            passwordStartTime: "20210813010101",
            passwordEndTime: "20680813010101",
            cardName: _cardName
        };
    } else if (row.type == 4) {
        str = {
            cardId: row.cardId,
            imei: row.imei,
            deviceNum: row.deviceNum,
            userTelephone: JSON.parse(row.content).userTelephone,
            operateMode: 9,
            order: 6209,
            userPassword: JSON.parse(row.content).userPassword,
            password: JSON.parse(row.content).password,
            is: false,
            passwordStartTime: "20210813010101",
            passwordEndTime: "20680813010101",
            cardName: _cardName
        };
    }
    Object(__WEBPACK_IMPORTED_MODULE_4__api__["g" /* httpPost */])(str, __WEBPACK_IMPORTED_MODULE_5__api_all__["a" /* api */].getDeviceOperateUserInfo).then(function (res1) {
        callback(res1);
    });
}
// 获取指纹id
function getfiId(row, callback) {
    var content = JSON.parse(row.content);
    var data = {
        q: __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_json_stringify___default()({
            fpTimeId: content.fpTimeId
        }),
        pageNum: 1,
        pageSize: 10
    };
    Object(__WEBPACK_IMPORTED_MODULE_4__api__["g" /* httpPost */])(data, __WEBPACK_IMPORTED_MODULE_5__api_all__["a" /* api */].getDeviceResult).then(function (res) {
        var datalist = __WEBPACK_IMPORTED_MODULE_7__utils_util_js__["a" /* default */].zlib_unzip(res.data);
        callback(datalist);
    });
}
function getfiId1(row, callback) {
    var data = {
        q: __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_json_stringify___default()({
            serial: row.serial
        }),
        pageNum: 1,
        pageSize: 10
    };
    Object(__WEBPACK_IMPORTED_MODULE_4__api__["g" /* httpPost */])(data, __WEBPACK_IMPORTED_MODULE_5__api_all__["a" /* api */].getDeviceResult).then(function (res) {
        var datalist = __WEBPACK_IMPORTED_MODULE_7__utils_util_js__["a" /* default */].zlib_unzip(res.data);
        callback(datalist);
    });
}

function modifyCraiAllFun(row, modifyvalue2, certificatesContent, callback) {
    var _this2 = this;

    var data = {
        q: __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_json_stringify___default()({
            imei: row.imei
        }),
        pageNum: 1,
        pageSize: 10
    };
    Object(__WEBPACK_IMPORTED_MODULE_4__api__["g" /* httpPost */])(data, __WEBPACK_IMPORTED_MODULE_5__api_all__["a" /* api */].getDeviceItems).then(function (res) {
        if (res.data.list.length > 0) {
            if (res.data.list[0].manufactureId == 201 || res.data.list[0].manufactureId == 221) {
                var startTime = new Date(modifyvalue2[0]).getTime() / 1000;
                var endTime = new Date(modifyvalue2[1]).getTime() / 1000;
                if (row.type == 1) {
                    getfiId1(row, function (data) {
                        if (data.length > 0) {
                            var fpid = "";
                            fpid = data[0].face.toString(16).length != 2 ? "0" + data[0].face.toString(16) : data[0].face;
                            var pwd = JSON.parse(row.content).userPassword;
                            __WEBPACK_IMPORTED_MODULE_6__utils_equipment_js__["a" /* default */].modifyFingerPrints(row.deviceNum, row.imei, pwd, 3, fpid, 0, startTime, endTime, function (callback1) {
                                callback(callback1);
                            });
                        } else {
                            Object(__WEBPACK_IMPORTED_MODULE_9__resetMessage__["a" /* message */])({
                                type: "error",
                                message: "修改失败"
                            });
                        }
                    });
                } else if (row.type == 2) {
                    var idcard = JSON.parse(row.content).password;
                    var userid = JSON.parse(row.content).userPassword;
                    if (idcard.length != 16) {
                        Object(__WEBPACK_IMPORTED_MODULE_9__resetMessage__["a" /* message */])({
                            type: "error",
                            message: "卡格式错误，请重新录入"
                        });
                        return;
                    }
                    __WEBPACK_IMPORTED_MODULE_6__utils_equipment_js__["a" /* default */].RfCardRegister(row.deviceNum, row.imei, userid, 3, 1, idcard.toUpperCase(), 36, startTime, endTime, 6211, function (callback1) {
                        callback(callback1);
                    });
                } else if (row.type == 3) {
                    var nfc = JSON.parse(row.content).password;
                    var userid = JSON.parse(row.content).userPassword;
                    if (nfc.length != 8) {
                        Object(__WEBPACK_IMPORTED_MODULE_9__resetMessage__["a" /* message */])({
                            type: "error",
                            message: "卡格式错误，请重新录入"
                        });
                        return;
                    }
                    __WEBPACK_IMPORTED_MODULE_6__utils_equipment_js__["a" /* default */].RfCardRegister(row.deviceNum, row.imei, userid, 3, 1, nfc.toUpperCase(), 50, startTime, endTime, 6211, function (callback1) {
                        callback(callback1);
                    });
                } else if (row.type == 4) {
                    var pwd = JSON.parse(row.content).password;
                    var userid = JSON.parse(row.content).userPassword;
                    __WEBPACK_IMPORTED_MODULE_6__utils_equipment_js__["a" /* default */].addForeverPassword(row.deviceNum, row.imei, userid, 3, pwd, 255, startTime, endTime, 6208, function (callback1) {
                        callback(callback1);
                    });
                }
            } else if (res.data.list[0].manufactureId == 101) {
                var content = JSON.parse(row.content);
                var userTelephone = content.userTelephone;
                var userPassword = content.userPassword;
                var data = {};
                if (row.type == 1) {
                    _this2.getfiId(row, function (data) {
                        if (data.length > 0) {
                            var fpid = "";
                            fpid = data[0].face.toString(16).length != 2 ? "0" + data[0].face.toString(16) : data[0].face.toString(16);
                            var str = {
                                imei: row.imei,
                                deviceNum: row.deviceNum,
                                pzname: certificatesContent.pzname,
                                cardId: row.cardId,
                                password: fpid,
                                operateMode: 17,
                                order: 6217,
                                userPassword: userPassword,
                                userTelephone: userTelephone,
                                passwordStartTime: timestampToTime(modifyvalue2[0]),
                                passwordEndTime: timestampToTime(modifyvalue2[1]),
                                is: false
                            };
                            Object(__WEBPACK_IMPORTED_MODULE_4__api__["g" /* httpPost */])(str, that.$api.getDeviceOperateUserInfo).then(function (res1) {
                                callback(res1);
                            });
                        }
                    });
                    return false;
                } else if (row.type == 2) {
                    var arr2 = content.password;
                    data = {
                        imei: row.imei,
                        deviceNum: row.deviceNum,
                        userTelephone: userTelephone,
                        pzname: certificatesContent.pzname,
                        cardId: row.cardId,
                        userPassword: userPassword,
                        password: arr2.toUpperCase(),
                        operateMode: 14,
                        order: 6214,
                        passwordStartTime: timestampToTime(modifyvalue2[0]),
                        passwordEndTime: timestampToTime(modifyvalue2[1]),
                        is: false
                    };
                    if (arr2 == "") {
                        Object(__WEBPACK_IMPORTED_MODULE_9__resetMessage__["a" /* message */])({
                            type: "error",
                            message: "请填写完整信息"
                        });
                        return false;
                    }
                } else if (row.type == 3) {
                    var arr4 = content.password;
                    data = {
                        imei: row.imei,
                        deviceNum: row.deviceNum,
                        userTelephone: userTelephone,
                        pzname: certificatesContent.pzname,
                        cardId: row.cardId,
                        userPassword: userPassword,
                        password: arr4.toUpperCase(),
                        operateMode: 11,
                        order: 6211,
                        passwordStartTime: timestampToTime(modifyvalue2[0]),
                        passwordEndTime: timestampToTime(modifyvalue2[1]),
                        is: false
                    };
                    if (arr4 == "") {
                        Object(__WEBPACK_IMPORTED_MODULE_9__resetMessage__["a" /* message */])({
                            type: "error",
                            message: "请填写完整信息"
                        });
                        return false;
                    }
                } else if (row.type == 4) {
                    data = {
                        imei: row.imei,
                        deviceNum: row.deviceNum,
                        userTelephone: userTelephone,
                        pzname: certificatesContent.pzname,
                        cardId: row.cardId,
                        userPassword: userPassword,
                        password: content.password,
                        operateMode: 8,
                        order: 6208,
                        passwordStartTime: timestampToTime(modifyvalue2[0]),
                        passwordEndTime: timestampToTime(modifyvalue2[1]),
                        is: false
                    };
                    if (content.password == "") {
                        Object(__WEBPACK_IMPORTED_MODULE_9__resetMessage__["a" /* message */])({
                            type: "error",
                            message: "请填写完整信息"
                        });
                        return false;
                    }
                }
                Object(__WEBPACK_IMPORTED_MODULE_4__api__["g" /* httpPost */])(data, __WEBPACK_IMPORTED_MODULE_5__api_all__["a" /* api */].getDeviceOperateUserInfo).then(function (res) {
                    callback(res1);
                });
            }
        } else {
            Object(__WEBPACK_IMPORTED_MODULE_9__resetMessage__["a" /* message */])({
                type: "error",
                message: "未找到该凭证对应门锁"
            });
        }
    });
}

// 判断字段是否有效
function paramsValidate(obj) {
    var array = {};
    for (var key in obj) {
        if (obj[key]) {
            array[key] = obj[key];
        }
    }
    return array;
}

//金额小写转大写
function smallToBig() {
    var money = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';

    // 汉字的数字
    var cnNums = ['零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖'];
    // 基本单位
    var cnIntRadice = ['', '拾', '佰', '仟'];
    // 对应整数部分扩展单位
    var cnIntUnits = ['', '万', '亿', '兆'];
    // 对应小数部分单位
    var cnDecUnits = ['角', '分'];
    // 整数金额时后面跟的字符
    var cnInteger = '整';
    // 整型完以后的单位
    var cnIntLast = '元';
    // 最大处理的数字
    var maxNum = 9999999999999999.99;
    // 金额整数部分
    var integerNum = void 0;
    // 金额小数部分
    var decimalNum = void 0;
    // 输出的中文金额字符串
    var chineseStr = '';
    // 分离金额后用的数组，预定义
    var parts = void 0;
    if (money === '') {
        return '';
    }
    money = parseFloat(money);
    if (money >= maxNum) {
        // 超出最大处理数字
        return '';
    }
    if (money === 0) {
        chineseStr = cnNums[0] + cnIntLast + cnInteger;
        return chineseStr;
    }
    // 转换为字符串
    money = money.toString();
    if (money.indexOf('.') === -1) {
        integerNum = money;

        decimalNum = '';
    } else {
        parts = money.split('.');
        integerNum = parts[0];
        decimalNum = parts[1].substr(0, 4);
    }
    // 获取整型部分转换
    if (parseInt(integerNum, 10) > 0) {
        var zeroCount = 0;
        var IntLen = integerNum.length;
        for (var i = 0; i < IntLen; i++) {
            var n = integerNum.substr(i, 1);
            var p = IntLen - i - 1;
            var q = p / 4;
            var m = p % 4;
            if (n === '0') {
                zeroCount++;
            } else {
                if (zeroCount > 0) {
                    chineseStr += cnNums[0];
                }
                // 归零
                zeroCount = 0;
                //alert(cnNums[parseInt(n)])
                chineseStr += cnNums[parseInt(n)] + cnIntRadice[m];
            }
            if (m === 0 && zeroCount < 4) {
                chineseStr += cnIntUnits[q];
            }
        }
        chineseStr += cnIntLast;
    }
    // 小数部分
    if (decimalNum !== '') {
        var decLen = decimalNum.length;
        for (var _i = 0; _i < decLen; _i++) {
            var _n = decimalNum.substr(_i, 1);
            if (_n !== '0') {
                chineseStr += cnNums[Number(_n)] + cnDecUnits[_i];
            }
        }
    }
    if (chineseStr === '') {
        chineseStr += cnNums[0] + cnIntLast + cnInteger;
    } else if (decimalNum === '') {
        chineseStr += cnInteger;
    }
    return chineseStr;
}

/***/ }),

/***/ 1:
/***/ (function(module, exports, __webpack_require__) {

__webpack_require__("j1ja");
module.exports = __webpack_require__("NHnr");


/***/ }),

/***/ "11IE":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "17FL":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "1BEG":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/toConsumableArray.js
var toConsumableArray = __webpack_require__("Gu7T");
var toConsumableArray_default = /*#__PURE__*/__webpack_require__.n(toConsumableArray);

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/slicedToArray.js
var slicedToArray = __webpack_require__("d7EF");
var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/mixin/autoResize.js
var autoResize = __webpack_require__("kN6d");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/decoration1/src/main.vue


//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//







/* harmony default export */ var main = ({
  name: 'DvDecoration1',
  mixins: [autoResize["a" /* default */]],
  props: {
    color: {
      type: Array,
      default: function _default() {
        return [];
      }
    }
  },
  data: function data() {
    var pointSideLength = 2.5;

    return {
      ref: 'decoration-1',

      svgWH: [200, 50],

      svgScale: [1, 1],

      rowNum: 4,
      rowPoints: 20,

      pointSideLength: pointSideLength,
      halfPointSideLength: pointSideLength / 2,

      points: [],

      rects: [],

      defaultColor: ['#fff', '#0de7c2'],

      mergedColor: []
    };
  },

  watch: {
    color: function color() {
      var mergeColor = this.mergeColor;


      mergeColor();
    }
  },
  methods: {
    afterAutoResizeMixinInit: function afterAutoResizeMixinInit() {
      var calcSVGData = this.calcSVGData;


      calcSVGData();
    },
    calcSVGData: function calcSVGData() {
      var calcPointsPosition = this.calcPointsPosition,
          calcRectsPosition = this.calcRectsPosition,
          calcScale = this.calcScale;


      calcPointsPosition();

      calcRectsPosition();

      calcScale();
    },
    calcPointsPosition: function calcPointsPosition() {
      var svgWH = this.svgWH,
          rowNum = this.rowNum,
          rowPoints = this.rowPoints;

      var _svgWH = slicedToArray_default()(svgWH, 2),
          w = _svgWH[0],
          h = _svgWH[1];

      var horizontalGap = w / (rowPoints + 1);
      var verticalGap = h / (rowNum + 1);

      var points = new Array(rowNum).fill(0).map(function (foo, i) {
        return new Array(rowPoints).fill(0).map(function (foo, j) {
          return [horizontalGap * (j + 1), verticalGap * (i + 1)];
        });
      });

      this.points = points.reduce(function (all, item) {
        return [].concat(toConsumableArray_default()(all), toConsumableArray_default()(item));
      }, []);
    },
    calcRectsPosition: function calcRectsPosition() {
      var points = this.points,
          rowPoints = this.rowPoints;


      var rect1 = points[rowPoints * 2 - 1];
      var rect2 = points[rowPoints * 2 - 3];

      this.rects = [rect1, rect2];
    },
    calcScale: function calcScale() {
      var width = this.width,
          height = this.height,
          svgWH = this.svgWH;

      var _svgWH2 = slicedToArray_default()(svgWH, 2),
          w = _svgWH2[0],
          h = _svgWH2[1];

      this.svgScale = [width / w, height / h];
    },
    onResize: function onResize() {
      var calcSVGData = this.calcSVGData;


      calcSVGData();
    },
    mergeColor: function mergeColor() {
      var color = this.color,
          defaultColor = this.defaultColor;


      this.mergedColor = Object(util["deepMerge"])(Object(plugin_util["deepClone"])(defaultColor, true), color || []);
    }
  },
  mounted: function mounted() {
    var mergeColor = this.mergeColor;


    mergeColor();
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-295bc631","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/decoration1/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:_vm.ref,staticClass:"dv-decoration-1"},[_c('svg',{style:(("transform:scale(" + (_vm.svgScale[0]) + "," + (_vm.svgScale[1]) + ");")),attrs:{"width":((_vm.svgWH[0]) + "px"),"height":((_vm.svgWH[1]) + "px")}},[_vm._l((_vm.points),function(point,i){return [(Math.random() > 0.6)?_c('rect',{key:i,attrs:{"fill":_vm.mergedColor[0],"x":point[0] - _vm.halfPointSideLength,"y":point[1] - _vm.halfPointSideLength,"width":_vm.pointSideLength,"height":_vm.pointSideLength}},[(Math.random() > 0.6)?_c('animate',{attrs:{"attributeName":"fill","values":((_vm.mergedColor[0]) + ";transparent"),"dur":"1s","begin":Math.random() * 2,"repeatCount":"indefinite"}}):_vm._e()]):_vm._e()]}),_vm._v(" "),(_vm.rects[0])?_c('rect',{attrs:{"fill":_vm.mergedColor[1],"x":_vm.rects[0][0] - _vm.pointSideLength,"y":_vm.rects[0][1] - _vm.pointSideLength,"width":_vm.pointSideLength * 2,"height":_vm.pointSideLength * 2}},[_c('animate',{attrs:{"attributeName":"width","values":("0;" + (_vm.pointSideLength * 2)),"dur":"2s","repeatCount":"indefinite"}}),_vm._v(" "),_c('animate',{attrs:{"attributeName":"height","values":("0;" + (_vm.pointSideLength * 2)),"dur":"2s","repeatCount":"indefinite"}}),_vm._v(" "),_c('animate',{attrs:{"attributeName":"x","values":((_vm.rects[0][0]) + ";" + (_vm.rects[0][0] - _vm.pointSideLength)),"dur":"2s","repeatCount":"indefinite"}}),_vm._v(" "),_c('animate',{attrs:{"attributeName":"y","values":((_vm.rects[0][1]) + ";" + (_vm.rects[0][1] - _vm.pointSideLength)),"dur":"2s","repeatCount":"indefinite"}})]):_vm._e(),_vm._v(" "),(_vm.rects[1])?_c('rect',{attrs:{"fill":_vm.mergedColor[1],"x":_vm.rects[1][0] - 40,"y":_vm.rects[1][1] - _vm.pointSideLength,"width":40,"height":_vm.pointSideLength * 2}},[_c('animate',{attrs:{"attributeName":"width","values":"0;40;0","dur":"2s","repeatCount":"indefinite"}}),_vm._v(" "),_c('animate',{attrs:{"attributeName":"x","values":((_vm.rects[1][0]) + ";" + (_vm.rects[1][0] - 40) + ";" + (_vm.rects[1][0])),"dur":"2s","repeatCount":"indefinite"}})]):_vm._e()],2)])}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/decoration1/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var decoration1_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ 2:
/***/ (function(module, exports) {

/* (ignored) */

/***/ }),

/***/ 3:
/***/ (function(module, exports) {

/* (ignored) */

/***/ }),

/***/ 4:
/***/ (function(module, exports) {

/* (ignored) */

/***/ }),

/***/ "46Ky":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/mixin/autoResize.js
var autoResize = __webpack_require__("kN6d");

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/fullScreenContainer/src/main.vue
//
//
//
//
//
//
//
//



/* harmony default export */ var main = ({
  name: 'DvFullScreenContainer',
  mixins: [autoResize["a" /* default */]],
  data: function data() {
    return {
      ref: 'full-screen-container',
      allWidth: 0,
      scale: 0,
      datavRoot: '',
      ready: false
    };
  },

  methods: {
    afterAutoResizeMixinInit: function afterAutoResizeMixinInit() {
      var initConfig = this.initConfig,
          setAppScale = this.setAppScale;


      initConfig();

      setAppScale();

      this.ready = true;
    },
    initConfig: function initConfig() {
      var dom = this.dom;
      var _screen = screen,
          width = _screen.width,
          height = _screen.height;


      this.allWidth = width;

      dom.style.width = width + 'px';
      dom.style.height = height + 'px';
    },
    setAppScale: function setAppScale() {
      var allWidth = this.allWidth,
          dom = this.dom;


      var currentWidth = document.body.clientWidth;

      dom.style.transform = 'scale(' + currentWidth / allWidth + ')';
    },
    onResize: function onResize() {
      var setAppScale = this.setAppScale;


      setAppScale();
    }
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-fe03f55e","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/fullScreenContainer/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:_vm.ref,attrs:{"id":"dv-full-screen-container"}},[(_vm.ready)?[_vm._t("default")]:_vm._e()],2)}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/fullScreenContainer/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var fullScreenContainer_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "46Yo":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return message; });
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_element_ui__ = __webpack_require__("zL8q");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_element_ui___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_element_ui__);
/**重置message，防止重复点击重复弹出message弹框 */

var messageInstance = null;
var resetMessage = function resetMessage(options) {
    if (messageInstance) {
        messageInstance.close();
    }
    messageInstance = Object(__WEBPACK_IMPORTED_MODULE_0_element_ui__["Message"])(options);
};['error', 'success', 'info', 'warning'].forEach(function (type) {
    resetMessage[type] = function (options) {
        if (typeof options === 'string') {
            options = {
                message: options
            };
        }
        options.type = type;
        return resetMessage(options);
    };
});
var message = resetMessage;

/**重置message，防止重复点击重复弹出message弹框 */
// import {
//     Message
// } from 'element-ui';
// const showMessage = Symbol('showMessage')
// class DoneMessage {
//     [showMessage](type, options, single) {
//         if (single) {
//             if (document.getElementsByClassName('el-message').length === 0) {
//                 Message[type](options)
//             }
//         } else {
//             Message[type](options)
//         }
//     }
//     info(options, single = true) {
//         this[showMessage]('info', options, single)
//     }
//     warning(options, single = true) {
//         this[showMessage]('warning', options, single)
//     }
//     error(options, single = true) {
//         this[showMessage]('error', options, single)
//     }
//     success(options, single = true) {
//         this[showMessage]('success', options, single)
//     }
// }
// export const message = new DoneMessage();

/***/ }),

/***/ "4LX4":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "5NCg":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "5o8e":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/mixin/autoResize.js
var autoResize = __webpack_require__("kN6d");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/borderBox2/src/main.vue
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//







/* harmony default export */ var main = ({
  name: 'DvBorderBox2',
  mixins: [autoResize["a" /* default */]],
  props: {
    color: {
      type: Array,
      default: function _default() {
        return [];
      }
    },
    backgroundColor: {
      type: String,
      default: 'transparent'
    }
  },
  data: function data() {
    return {
      ref: 'border-box-2',

      defaultColor: ['#fff', 'rgba(255, 255, 255, 0.6)'],

      mergedColor: []
    };
  },

  watch: {
    color: function color() {
      var mergeColor = this.mergeColor;


      mergeColor();
    }
  },
  methods: {
    mergeColor: function mergeColor() {
      var color = this.color,
          defaultColor = this.defaultColor;


      this.mergedColor = Object(util["deepMerge"])(Object(plugin_util["deepClone"])(defaultColor, true), color || []);
    }
  },
  mounted: function mounted() {
    var mergeColor = this.mergeColor;


    mergeColor();
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-7ed8b580","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/borderBox2/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:_vm.ref,staticClass:"dv-border-box-2"},[_c('svg',{staticClass:"dv-border-svg-container",attrs:{"width":_vm.width,"height":_vm.height}},[_c('polygon',{attrs:{"fill":_vm.backgroundColor,"points":("\n      7, 7 " + (_vm.width - 7) + ", 7 " + (_vm.width - 7) + ", " + (_vm.height - 7) + " 7, " + (_vm.height - 7) + "\n    ")}}),_vm._v(" "),_c('polyline',{attrs:{"stroke":_vm.mergedColor[0],"points":("2, 2 " + (_vm.width - 2) + " ,2 " + (_vm.width - 2) + ", " + (_vm.height - 2) + " 2, " + (_vm.height - 2) + " 2, 2")}}),_vm._v(" "),_c('polyline',{attrs:{"stroke":_vm.mergedColor[1],"points":("6, 6 " + (_vm.width - 6) + ", 6 " + (_vm.width - 6) + ", " + (_vm.height - 6) + " 6, " + (_vm.height - 6) + " 6, 6")}}),_vm._v(" "),_c('circle',{attrs:{"fill":_vm.mergedColor[0],"cx":"11","cy":"11","r":"1"}}),_vm._v(" "),_c('circle',{attrs:{"fill":_vm.mergedColor[0],"cx":_vm.width - 11,"cy":"11","r":"1"}}),_vm._v(" "),_c('circle',{attrs:{"fill":_vm.mergedColor[0],"cx":_vm.width - 11,"cy":_vm.height - 11,"r":"1"}}),_vm._v(" "),_c('circle',{attrs:{"fill":_vm.mergedColor[0],"cx":"11","cy":_vm.height - 11,"r":"1"}})]),_vm._v(" "),_c('div',{staticClass:"border-box-content"},[_vm._t("default")],2)])}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/borderBox2/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var borderBox2_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "75l9":
/***/ (function(module, exports) {

module.exports = {"_args":[["axios@0.21.4","F:\\kaifa\\back\\saas2"]],"_from":"axios@0.21.4","_id":"axios@0.21.4","_inBundle":false,"_integrity":"sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==","_location":"/axios","_phantomChildren":{},"_requested":{"type":"version","registry":true,"raw":"axios@0.21.4","name":"axios","escapedName":"axios","rawSpec":"0.21.4","saveSpec":null,"fetchSpec":"0.21.4"},"_requiredBy":["/"],"_resolved":"https://registry.npmmirror.com/axios/-/axios-0.21.4.tgz","_spec":"0.21.4","_where":"F:\\kaifa\\back\\saas2","author":{"name":"Matt Zabriskie"},"browser":{"./lib/adapters/http.js":"./lib/adapters/xhr.js"},"bugs":{"url":"https://github.com/axios/axios/issues"},"bundlesize":[{"path":"./dist/axios.min.js","threshold":"5kB"}],"dependencies":{"follow-redirects":"^1.14.0"},"description":"Promise based HTTP client for the browser and node.js","devDependencies":{"coveralls":"^3.0.0","es6-promise":"^4.2.4","grunt":"^1.3.0","grunt-banner":"^0.6.0","grunt-cli":"^1.2.0","grunt-contrib-clean":"^1.1.0","grunt-contrib-watch":"^1.0.0","grunt-eslint":"^23.0.0","grunt-karma":"^4.0.0","grunt-mocha-test":"^0.13.3","grunt-ts":"^6.0.0-beta.19","grunt-webpack":"^4.0.2","istanbul-instrumenter-loader":"^1.0.0","jasmine-core":"^2.4.1","karma":"^6.3.2","karma-chrome-launcher":"^3.1.0","karma-firefox-launcher":"^2.1.0","karma-jasmine":"^1.1.1","karma-jasmine-ajax":"^0.1.13","karma-safari-launcher":"^1.0.0","karma-sauce-launcher":"^4.3.6","karma-sinon":"^1.0.5","karma-sourcemap-loader":"^0.3.8","karma-webpack":"^4.0.2","load-grunt-tasks":"^3.5.2","minimist":"^1.2.0","mocha":"^8.2.1","sinon":"^4.5.0","terser-webpack-plugin":"^4.2.3","typescript":"^4.0.5","url-search-params":"^0.10.0","webpack":"^4.44.2","webpack-dev-server":"^3.11.0"},"homepage":"https://axios-http.com","jsdelivr":"dist/axios.min.js","keywords":["xhr","http","ajax","promise","node"],"license":"MIT","main":"index.js","name":"axios","repository":{"type":"git","url":"git+https://github.com/axios/axios.git"},"scripts":{"build":"NODE_ENV=production grunt build","coveralls":"cat coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js","examples":"node ./examples/server.js","fix":"eslint --fix lib/**/*.js","postversion":"git push && git push --tags","preversion":"npm test","start":"node ./sandbox/server.js","test":"grunt test","version":"npm run build && grunt version && git add -A dist && git add CHANGELOG.md bower.json package.json"},"typings":"./index.d.ts","unpkg":"dist/axios.min.js","version":"0.21.4"}

/***/ }),

/***/ "7dP5":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "80xR":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/mixin/autoResize.js
var autoResize = __webpack_require__("kN6d");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/util/index.js
var util = __webpack_require__("3e7c");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var lib_util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(lib_util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/borderBox8/src/main.vue
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//








/* harmony default export */ var main = ({
  name: 'DvBorderBox8',
  mixins: [autoResize["a" /* default */]],
  props: {
    color: {
      type: Array,
      default: function _default() {
        return [];
      }
    },
    dur: {
      type: Number,
      default: 3
    },
    backgroundColor: {
      type: String,
      default: 'transparent'
    },
    reverse: {
      type: Boolean,
      default: false
    }
  },
  data: function data() {
    var id = Object(util["e" /* uuid */])();
    return {
      ref: 'border-box-8',
      path: 'border-box-8-path-' + id,
      gradient: 'border-box-8-gradient-' + id,
      mask: 'border-box-8-mask-' + id,

      defaultColor: ['#235fa7', '#4fd2dd'],

      mergedColor: []
    };
  },

  computed: {
    length: function length() {
      var width = this.width,
          height = this.height;


      return (width + height - 5) * 2;
    },
    pathD: function pathD() {
      var reverse = this.reverse,
          width = this.width,
          height = this.height;


      if (reverse) return 'M 2.5, 2.5 L 2.5, ' + (height - 2.5) + ' L ' + (width - 2.5) + ', ' + (height - 2.5) + ' L ' + (width - 2.5) + ', 2.5 L 2.5, 2.5';

      return 'M2.5, 2.5 L' + (width - 2.5) + ', 2.5 L' + (width - 2.5) + ', ' + (height - 2.5) + ' L2.5, ' + (height - 2.5) + ' L2.5, 2.5';
    }
  },
  watch: {
    color: function color() {
      var mergeColor = this.mergeColor;


      mergeColor();
    }
  },
  methods: {
    mergeColor: function mergeColor() {
      var color = this.color,
          defaultColor = this.defaultColor;


      this.mergedColor = Object(lib_util["deepMerge"])(Object(plugin_util["deepClone"])(defaultColor, true), color || []);
    }
  },
  mounted: function mounted() {
    var mergeColor = this.mergeColor;


    mergeColor();
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-667924e2","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/borderBox8/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:_vm.ref,staticClass:"dv-border-box-8"},[_c('svg',{staticClass:"dv-border-svg-container",attrs:{"width":_vm.width,"height":_vm.height}},[_c('defs',[_c('path',{attrs:{"id":_vm.path,"d":_vm.pathD,"fill":"transparent"}}),_vm._v(" "),_c('radialGradient',{attrs:{"id":_vm.gradient,"cx":"50%","cy":"50%","r":"50%"}},[_c('stop',{attrs:{"offset":"0%","stop-color":"#fff","stop-opacity":"1"}}),_vm._v(" "),_c('stop',{attrs:{"offset":"100%","stop-color":"#fff","stop-opacity":"0"}})],1),_vm._v(" "),_c('mask',{attrs:{"id":_vm.mask}},[_c('circle',{attrs:{"cx":"0","cy":"0","r":"150","fill":("url(#" + _vm.gradient + ")")}},[_c('animateMotion',{attrs:{"dur":(_vm.dur + "s"),"path":_vm.pathD,"rotate":"auto","repeatCount":"indefinite"}})],1)])],1),_vm._v(" "),_c('polygon',{attrs:{"fill":_vm.backgroundColor,"points":("5, 5 " + (_vm.width - 5) + ", 5 " + (_vm.width - 5) + " " + (_vm.height - 5) + " 5, " + (_vm.height - 5))}}),_vm._v(" "),_c('use',{attrs:{"stroke":_vm.mergedColor[0],"stroke-width":"1","xlink:href":("#" + _vm.path)}}),_vm._v(" "),_c('use',{attrs:{"stroke":_vm.mergedColor[1],"stroke-width":"3","xlink:href":("#" + _vm.path),"mask":("url(#" + _vm.mask + ")")}},[_c('animate',{attrs:{"attributeName":"stroke-dasharray","from":("0, " + _vm.length),"to":(_vm.length + ", 0"),"dur":(_vm.dur + "s"),"repeatCount":"indefinite"}})])]),_vm._v(" "),_c('div',{staticClass:"border-box-content"},[_vm._t("default")],2)])}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/borderBox8/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var borderBox8_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "8R8w":
/***/ (function(module, exports, __webpack_require__) {

module.exports = __webpack_require__.p + "static/media/ls.8c4fc51.mp3";

/***/ }),

/***/ "8slu":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/mixin/autoResize.js
var autoResize = __webpack_require__("kN6d");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/decoration8/src/main.vue
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//







/* harmony default export */ var main = ({
  name: 'DvDecoration8',
  mixins: [autoResize["a" /* default */]],
  props: {
    color: {
      type: Array,
      default: function _default() {
        return [];
      }
    },
    reverse: {
      type: Boolean,
      default: false
    }
  },
  data: function data() {
    return {
      ref: 'decoration-8',

      defaultColor: ['#3f96a5', '#3f96a5'],

      mergedColor: []
    };
  },

  watch: {
    color: function color() {
      var mergeColor = this.mergeColor;


      mergeColor();
    }
  },
  methods: {
    xPos: function xPos(pos) {
      var reverse = this.reverse,
          width = this.width;


      if (!reverse) return pos;

      return width - pos;
    },
    mergeColor: function mergeColor() {
      var color = this.color,
          defaultColor = this.defaultColor;


      this.mergedColor = Object(util["deepMerge"])(Object(plugin_util["deepClone"])(defaultColor, true), color || []);
    }
  },
  mounted: function mounted() {
    var mergeColor = this.mergeColor;


    mergeColor();
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-8cf9c33e","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/decoration8/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:_vm.ref,staticClass:"dv-decoration-8"},[_c('svg',{attrs:{"width":_vm.width,"height":_vm.height}},[_c('polyline',{attrs:{"stroke":_vm.mergedColor[0],"stroke-width":"2","fill":"transparent","points":((_vm.xPos(0)) + ", 0 " + (_vm.xPos(30)) + ", " + (_vm.height / 2))}}),_vm._v(" "),_c('polyline',{attrs:{"stroke":_vm.mergedColor[0],"stroke-width":"2","fill":"transparent","points":((_vm.xPos(20)) + ", 0 " + (_vm.xPos(50)) + ", " + (_vm.height / 2) + " " + (_vm.xPos(_vm.width)) + ", " + (_vm.height / 2))}}),_vm._v(" "),_c('polyline',{attrs:{"stroke":_vm.mergedColor[1],"fill":"transparent","stroke-width":"3","points":((_vm.xPos(0)) + ", " + (_vm.height - 3) + ", " + (_vm.xPos(200)) + ", " + (_vm.height - 3))}})])])}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/decoration8/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var decoration8_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "977A":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "9Eed":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "BNBy":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/mixin/autoResize.js
var autoResize = __webpack_require__("kN6d");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/borderBox13/src/main.vue
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//







/* harmony default export */ var main = ({
  name: 'DvBorderBox13',
  mixins: [autoResize["a" /* default */]],
  props: {
    color: {
      type: Array,
      default: function _default() {
        return [];
      }
    },
    backgroundColor: {
      type: String,
      default: 'transparent'
    }
  },
  data: function data() {
    return {
      ref: 'border-box-13',

      defaultColor: ['#6586ec', '#2cf7fe'],

      mergedColor: []
    };
  },

  watch: {
    color: function color() {
      var mergeColor = this.mergeColor;


      mergeColor();
    }
  },
  methods: {
    mergeColor: function mergeColor() {
      var color = this.color,
          defaultColor = this.defaultColor;


      this.mergedColor = Object(util["deepMerge"])(Object(plugin_util["deepClone"])(defaultColor, true), color || []);
    }
  },
  mounted: function mounted() {
    var mergeColor = this.mergeColor;


    mergeColor();
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-886c55d0","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/borderBox13/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:_vm.ref,staticClass:"dv-border-box-13"},[_c('svg',{staticClass:"dv-border-svg-container",attrs:{"width":_vm.width,"height":_vm.height}},[_c('path',{attrs:{"fill":_vm.backgroundColor,"stroke":_vm.mergedColor[0],"d":("\n        M 5 20 L 5 10 L 12 3  L 60 3 L 68 10\n        L " + (_vm.width - 20) + " 10 L " + (_vm.width - 5) + " 25\n        L " + (_vm.width - 5) + " " + (_vm.height - 5) + " L 20 " + (_vm.height - 5) + "\n        L 5 " + (_vm.height - 20) + " L 5 20\n      ")}}),_vm._v(" "),_c('path',{attrs:{"fill":"transparent","stroke-width":"3","stroke-linecap":"round","stroke-dasharray":"10, 5","stroke":_vm.mergedColor[0],"d":"M 16 9 L 61 9"}}),_vm._v(" "),_c('path',{attrs:{"fill":"transparent","stroke":_vm.mergedColor[1],"d":"M 5 20 L 5 10 L 12 3  L 60 3 L 68 10"}}),_vm._v(" "),_c('path',{attrs:{"fill":"transparent","stroke":_vm.mergedColor[1],"d":("M " + (_vm.width - 5) + " " + (_vm.height - 30) + " L " + (_vm.width - 5) + " " + (_vm.height - 5) + " L " + (_vm.width - 30) + " " + (_vm.height - 5))}})]),_vm._v(" "),_c('div',{staticClass:"border-box-content"},[_vm._t("default")],2)])}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/borderBox13/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var borderBox13_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "BpKH":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "BvmP":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/mixin/autoResize.js
var autoResize = __webpack_require__("kN6d");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/decoration5/src/main.vue
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//









/* harmony default export */ var main = ({
  name: 'DvDecoration5',
  mixins: [autoResize["a" /* default */]],
  props: {
    color: {
      type: Array,
      default: function _default() {
        return [];
      }
    },
    dur: {
      type: Number,
      default: 1.2
    }
  },
  data: function data() {
    return {
      ref: 'decoration-5',

      line1Points: '',
      line2Points: '',

      line1Length: 0,
      line2Length: 0,

      defaultColor: ['#3f96a5', '#3f96a5'],

      mergedColor: []
    };
  },

  watch: {
    color: function color() {
      var mergeColor = this.mergeColor;


      mergeColor();
    }
  },
  methods: {
    afterAutoResizeMixinInit: function afterAutoResizeMixinInit() {
      var calcSVGData = this.calcSVGData;


      calcSVGData();
    },
    calcSVGData: function calcSVGData() {
      var width = this.width,
          height = this.height;


      var line1Points = [[0, height * 0.2], [width * 0.18, height * 0.2], [width * 0.2, height * 0.4], [width * 0.25, height * 0.4], [width * 0.27, height * 0.6], [width * 0.72, height * 0.6], [width * 0.75, height * 0.4], [width * 0.8, height * 0.4], [width * 0.82, height * 0.2], [width, height * 0.2]];

      var line2Points = [[width * 0.3, height * 0.8], [width * 0.7, height * 0.8]];

      var line1Length = Object(util["getPolylineLength"])(line1Points);
      var line2Length = Object(util["getPolylineLength"])(line2Points);

      line1Points = line1Points.map(function (point) {
        return point.join(',');
      }).join(' ');
      line2Points = line2Points.map(function (point) {
        return point.join(',');
      }).join(' ');

      this.line1Points = line1Points;
      this.line2Points = line2Points;

      this.line1Length = line1Length;
      this.line2Length = line2Length;
    },
    onResize: function onResize() {
      var calcSVGData = this.calcSVGData;


      calcSVGData();
    },
    mergeColor: function mergeColor() {
      var color = this.color,
          defaultColor = this.defaultColor;


      this.mergedColor = Object(util["deepMerge"])(Object(plugin_util["deepClone"])(defaultColor, true), color || []);
    }
  },
  mounted: function mounted() {
    var mergeColor = this.mergeColor;


    mergeColor();
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-791c9101","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/decoration5/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:_vm.ref,staticClass:"dv-decoration-5"},[_c('svg',{attrs:{"width":_vm.width,"height":_vm.height}},[_c('polyline',{attrs:{"fill":"transparent","stroke":_vm.mergedColor[0],"stroke-width":"3","points":_vm.line1Points}},[_c('animate',{attrs:{"attributeName":"stroke-dasharray","attributeType":"XML","from":("0, " + (_vm.line1Length / 2) + ", 0, " + (_vm.line1Length / 2)),"to":("0, 0, " + _vm.line1Length + ", 0"),"dur":(_vm.dur + "s"),"begin":"0s","calcMode":"spline","keyTimes":"0;1","keySplines":"0.4,1,0.49,0.98","repeatCount":"indefinite"}})]),_vm._v(" "),_c('polyline',{attrs:{"fill":"transparent","stroke":_vm.mergedColor[1],"stroke-width":"2","points":_vm.line2Points}},[_c('animate',{attrs:{"attributeName":"stroke-dasharray","attributeType":"XML","from":("0, " + (_vm.line2Length / 2) + ", 0, " + (_vm.line2Length / 2)),"to":("0, 0, " + _vm.line2Length + ", 0"),"dur":(_vm.dur + "s"),"begin":"0s","calcMode":"spline","keyTimes":"0;1","keySplines":".4,1,.49,.98","repeatCount":"indefinite"}})])])])}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/decoration5/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var decoration5_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "Bwl3":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "BySr":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/babel-runtime/regenerator/index.js
var regenerator = __webpack_require__("Xxa5");
var regenerator_default = /*#__PURE__*/__webpack_require__.n(regenerator);

// EXTERNAL MODULE: ./node_modules/babel-runtime/core-js/promise.js
var promise = __webpack_require__("//Fk");
var promise_default = /*#__PURE__*/__webpack_require__.n(promise);

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/asyncToGenerator.js
var asyncToGenerator = __webpack_require__("exGp");
var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/extends.js
var helpers_extends = __webpack_require__("Dd8w");
var extends_default = /*#__PURE__*/__webpack_require__.n(helpers_extends);

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/toConsumableArray.js
var toConsumableArray = __webpack_require__("Gu7T");
var toConsumableArray_default = /*#__PURE__*/__webpack_require__.n(toConsumableArray);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/mixin/autoResize.js
var autoResize = __webpack_require__("kN6d");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/scrollBoard/src/main.vue





//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//







/* harmony default export */ var main = ({
  name: 'DvScrollBoard',
  mixins: [autoResize["a" /* default */]],
  props: {
    config: {
      type: Object,
      default: function _default() {
        return {};
      }
    }
  },
  data: function data() {
    return {
      ref: 'scroll-board',

      defaultConfig: {
        /**
         * @description Board header
         * @type {Array<String>}
         * @default header = []
         * @example header = ['column1', 'column2', 'column3']
         */
        header: [],
        /**
         * @description Board data
         * @type {Array<Array>}
         * @default data = []
         */
        data: [],
        /**
         * @description Row num
         * @type {Number}
         * @default rowNum = 5
         */
        rowNum: 5,
        /**
         * @description Header background color
         * @type {String}
         * @default headerBGC = '#00BAFF'
         */
        headerBGC: '#00BAFF',
        /**
         * @description Odd row background color
         * @type {String}
         * @default oddRowBGC = '#003B51'
         */
        oddRowBGC: '#003B51',
        /**
         * @description Even row background color
         * @type {String}
         * @default evenRowBGC = '#003B51'
         */
        evenRowBGC: '#0A2732',
        /**
         * @description Scroll wait time
         * @type {Number}
         * @default waitTime = 2000
         */
        waitTime: 2000,
        /**
         * @description Header height
         * @type {Number}
         * @default headerHeight = 35
         */
        headerHeight: 35,
        /**
         * @description Column width
         * @type {Array<Number>}
         * @default columnWidth = []
         */
        columnWidth: [],
        /**
         * @description Column align
         * @type {Array<String>}
         * @default align = []
         * @example align = ['left', 'center', 'right']
         */
        align: [],
        /**
         * @description Show index
         * @type {Boolean}
         * @default index = false
         */
        index: false,
        /**
         * @description index Header
         * @type {String}
         * @default indexHeader = '#'
         */
        indexHeader: '#',
        /**
         * @description Carousel type
         * @type {String}
         * @default carousel = 'single'
         * @example carousel = 'single' | 'page'
         */
        carousel: 'single',
        /**
         * @description Pause scroll when mouse hovered
         * @type {Boolean}
         * @default hoverPause = true
         * @example hoverPause = true | false
         */
        hoverPause: true
      },

      mergedConfig: null,

      header: [],

      rowsData: [],

      rows: [],

      widths: [],

      heights: [],

      avgHeight: 0,

      aligns: [],

      animationIndex: 0,

      animationHandler: '',

      updater: 0,

      needCalc: false
    };
  },

  watch: {
    config: function config() {
      var stopAnimation = this.stopAnimation,
          calcData = this.calcData;


      stopAnimation();

      this.animationIndex = 0;

      calcData();
    }
  },
  methods: {
    handleHover: function handleHover(enter, ri, ci, row, ceil) {
      var mergedConfig = this.mergedConfig,
          emitEvent = this.emitEvent,
          stopAnimation = this.stopAnimation,
          animation = this.animation;


      if (enter) emitEvent('mouseover', ri, ci, row, ceil);
      if (!mergedConfig.hoverPause) return;

      if (enter) {
        stopAnimation();
      } else {
        animation(true);
      }
    },
    afterAutoResizeMixinInit: function afterAutoResizeMixinInit() {
      var calcData = this.calcData;


      calcData();
    },
    onResize: function onResize() {
      var mergedConfig = this.mergedConfig,
          calcWidths = this.calcWidths,
          calcHeights = this.calcHeights;


      if (!mergedConfig) return;

      calcWidths();

      calcHeights();
    },
    calcData: function calcData() {
      var mergeConfig = this.mergeConfig,
          calcHeaderData = this.calcHeaderData,
          calcRowsData = this.calcRowsData;


      mergeConfig();

      calcHeaderData();

      calcRowsData();

      var calcWidths = this.calcWidths,
          calcHeights = this.calcHeights,
          calcAligns = this.calcAligns;


      calcWidths();

      calcHeights();

      calcAligns();

      var animation = this.animation;


      animation(true);
    },
    mergeConfig: function mergeConfig() {
      var config = this.config,
          defaultConfig = this.defaultConfig;


      this.mergedConfig = Object(util["deepMerge"])(Object(plugin_util["deepClone"])(defaultConfig, true), config || {});
    },
    calcHeaderData: function calcHeaderData() {
      var _mergedConfig = this.mergedConfig,
          header = _mergedConfig.header,
          index = _mergedConfig.index,
          indexHeader = _mergedConfig.indexHeader;


      if (!header.length) {
        this.header = [];

        return;
      }

      header = [].concat(toConsumableArray_default()(header));

      if (index) header.unshift(indexHeader);

      this.header = header;
    },
    calcRowsData: function calcRowsData() {
      var _mergedConfig2 = this.mergedConfig,
          data = _mergedConfig2.data,
          index = _mergedConfig2.index,
          headerBGC = _mergedConfig2.headerBGC,
          rowNum = _mergedConfig2.rowNum;


      if (index) {
        data = data.map(function (row, i) {
          row = [].concat(toConsumableArray_default()(row));

          var indexTag = '<span class="index" style="background-color: ' + headerBGC + ';">' + (i + 1) + '</span>';

          row.unshift(indexTag);

          return row;
        });
      }

      data = data.map(function (ceils, i) {
        return { ceils: ceils, rowIndex: i };
      });

      var rowLength = data.length;

      if (rowLength > rowNum && rowLength < 2 * rowNum) {
        data = [].concat(toConsumableArray_default()(data), toConsumableArray_default()(data));
      }

      data = data.map(function (d, i) {
        return extends_default()({}, d, { scroll: i });
      });

      this.rowsData = data;
      this.rows = data;
    },
    calcWidths: function calcWidths() {
      var width = this.width,
          mergedConfig = this.mergedConfig,
          rowsData = this.rowsData;
      var columnWidth = mergedConfig.columnWidth,
          header = mergedConfig.header;


      var usedWidth = columnWidth.reduce(function (all, w) {
        return all + w;
      }, 0);

      var columnNum = 0;
      if (rowsData[0]) {
        columnNum = rowsData[0].ceils.length;
      } else if (header.length) {
        columnNum = header.length;
      }

      var avgWidth = (width - usedWidth) / (columnNum - columnWidth.length);

      var widths = new Array(columnNum).fill(avgWidth);

      this.widths = Object(util["deepMerge"])(widths, columnWidth);
    },
    calcHeights: function calcHeights() {
      var onresize = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
      var height = this.height,
          mergedConfig = this.mergedConfig,
          header = this.header;
      var headerHeight = mergedConfig.headerHeight,
          rowNum = mergedConfig.rowNum,
          data = mergedConfig.data;


      var allHeight = height;

      if (header.length) allHeight -= headerHeight;

      var avgHeight = allHeight / rowNum;

      this.avgHeight = avgHeight;

      if (!onresize) this.heights = new Array(data.length).fill(avgHeight);
    },
    calcAligns: function calcAligns() {
      var header = this.header,
          mergedConfig = this.mergedConfig;


      var columnNum = header.length;

      var aligns = new Array(columnNum).fill('left');

      var align = mergedConfig.align;


      this.aligns = Object(util["deepMerge"])(aligns, align);
    },
    animation: function animation() {
      var _this = this;

      var start = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
      return asyncToGenerator_default()( /*#__PURE__*/regenerator_default.a.mark(function _callee() {
        var _heights;

        var needCalc, calcHeights, calcRowsData, avgHeight, animationIndex, mergedConfig, rowsData, animation, updater, waitTime, carousel, rowNum, rowLength, animationNum, rows, back;
        return regenerator_default.a.wrap(function _callee$(_context) {
          while (1) {
            switch (_context.prev = _context.next) {
              case 0:
                needCalc = _this.needCalc, calcHeights = _this.calcHeights, calcRowsData = _this.calcRowsData;


                if (needCalc) {
                  calcRowsData();
                  calcHeights();
                  _this.needCalc = false;
                }

                avgHeight = _this.avgHeight, animationIndex = _this.animationIndex, mergedConfig = _this.mergedConfig, rowsData = _this.rowsData, animation = _this.animation, updater = _this.updater;
                waitTime = mergedConfig.waitTime, carousel = mergedConfig.carousel, rowNum = mergedConfig.rowNum;
                rowLength = rowsData.length;

                if (!(rowNum >= rowLength)) {
                  _context.next = 7;
                  break;
                }

                return _context.abrupt('return');

              case 7:
                if (!start) {
                  _context.next = 12;
                  break;
                }

                _context.next = 10;
                return new promise_default.a(function (resolve) {
                  return setTimeout(resolve, waitTime);
                });

              case 10:
                if (!(updater !== _this.updater)) {
                  _context.next = 12;
                  break;
                }

                return _context.abrupt('return');

              case 12:
                animationNum = carousel === 'single' ? 1 : rowNum;
                rows = rowsData.slice(animationIndex);

                rows.push.apply(rows, toConsumableArray_default()(rowsData.slice(0, animationIndex)));

                _this.rows = rows.slice(0, carousel === 'page' ? rowNum * 2 : rowNum + 1);
                _this.heights = new Array(rowLength).fill(avgHeight);

                _context.next = 19;
                return new promise_default.a(function (resolve) {
                  return setTimeout(resolve, 300);
                });

              case 19:
                if (!(updater !== _this.updater)) {
                  _context.next = 21;
                  break;
                }

                return _context.abrupt('return');

              case 21:

                (_heights = _this.heights).splice.apply(_heights, [0, animationNum].concat(toConsumableArray_default()(new Array(animationNum).fill(0))));

                animationIndex += animationNum;

                back = animationIndex - rowLength;

                if (back >= 0) animationIndex = back;

                _this.animationIndex = animationIndex;
                _this.animationHandler = setTimeout(animation, waitTime - 300);

              case 27:
              case 'end':
                return _context.stop();
            }
          }
        }, _callee, _this);
      }))();
    },
    stopAnimation: function stopAnimation() {
      var animationHandler = this.animationHandler,
          updater = this.updater;


      this.updater = (updater + 1) % 999999;

      if (!animationHandler) return;

      clearTimeout(animationHandler);
    },
    emitEvent: function emitEvent(type, ri, ci, row, ceil) {
      var ceils = row.ceils,
          rowIndex = row.rowIndex;


      this.$emit(type, {
        row: ceils,
        ceil: ceil,
        rowIndex: rowIndex,
        columnIndex: ci
      });
    },
    updateRows: function updateRows(rows, animationIndex) {
      var mergedConfig = this.mergedConfig,
          animationHandler = this.animationHandler,
          animation = this.animation;


      this.mergedConfig = extends_default()({}, mergedConfig, {
        data: [].concat(toConsumableArray_default()(rows))
      });

      this.needCalc = true;

      if (typeof animationIndex === 'number') this.animationIndex = animationIndex;
      if (!animationHandler) animation(true);
    }
  },
  destroyed: function destroyed() {
    var stopAnimation = this.stopAnimation;


    stopAnimation();
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-0c0d0428","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/scrollBoard/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:_vm.ref,staticClass:"dv-scroll-board"},[(_vm.header.length && _vm.mergedConfig)?_c('div',{staticClass:"header",style:(("background-color: " + (_vm.mergedConfig.headerBGC) + ";"))},_vm._l((_vm.header),function(headerItem,i){return _c('div',{key:("" + headerItem + i),staticClass:"header-item",style:(("\n        height: " + (_vm.mergedConfig.headerHeight) + "px;\n        line-height: " + (_vm.mergedConfig.headerHeight) + "px;\n        width: " + (_vm.widths[i]) + "px;\n      ")),attrs:{"align":_vm.aligns[i]},domProps:{"innerHTML":_vm._s(headerItem)}})}),0):_vm._e(),_vm._v(" "),(_vm.mergedConfig)?_c('div',{staticClass:"rows",style:(("height: " + (_vm.height - (_vm.header.length ? _vm.mergedConfig.headerHeight : 0)) + "px;"))},_vm._l((_vm.rows),function(row,ri){return _c('div',{key:("" + (row.toString()) + (row.scroll)),staticClass:"row-item",style:(("\n        height: " + (_vm.heights[ri]) + "px;\n        line-height: " + (_vm.heights[ri]) + "px;\n        background-color: " + (_vm.mergedConfig[row.rowIndex % 2 === 0 ? 'evenRowBGC' : 'oddRowBGC']) + ";\n      "))},_vm._l((row.ceils),function(ceil,ci){return _c('div',{key:("" + ceil + ri + ci),staticClass:"ceil",style:(("width: " + (_vm.widths[ci]) + "px;")),attrs:{"align":_vm.aligns[ci]},domProps:{"innerHTML":_vm._s(ceil)},on:{"click":function($event){return _vm.emitEvent('click', ri, ci, row, ceil)},"mouseenter":function($event){return _vm.handleHover(true, ri, ci, row, ceil)},"mouseleave":function($event){return _vm.handleHover(false)}}})}),0)}),0):_vm._e()])}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/scrollBoard/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var scrollBoard_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "DTqG":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "DgXS":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/mixin/autoResize.js
var autoResize = __webpack_require__("kN6d");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/borderBox4/src/main.vue
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//







/* harmony default export */ var main = ({
  name: 'DvBorderBox4',
  mixins: [autoResize["a" /* default */]],
  props: {
    color: {
      type: Array,
      default: function _default() {
        return [];
      }
    },
    reverse: {
      type: Boolean,
      default: false
    },
    backgroundColor: {
      type: String,
      default: 'transparent'
    }
  },
  data: function data() {
    return {
      ref: 'border-box-4',

      defaultColor: ['red', 'rgba(0,0,255,0.8)'],

      mergedColor: []
    };
  },

  watch: {
    color: function color() {
      var mergeColor = this.mergeColor;


      mergeColor();
    }
  },
  methods: {
    mergeColor: function mergeColor() {
      var color = this.color,
          defaultColor = this.defaultColor;


      this.mergedColor = Object(util["deepMerge"])(Object(plugin_util["deepClone"])(defaultColor, true), color || []);
    }
  },
  mounted: function mounted() {
    var mergeColor = this.mergeColor;


    mergeColor();
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-a5527428","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/borderBox4/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:_vm.ref,staticClass:"dv-border-box-4"},[_c('svg',{class:("dv-border-svg-container " + (_vm.reverse && 'dv-reverse')),attrs:{"width":_vm.width,"height":_vm.height}},[_c('polygon',{attrs:{"fill":_vm.backgroundColor,"points":("\n      " + (_vm.width - 15) + ", 22 170, 22 150, 7 40, 7 28, 21 32, 24\n      16, 42 16, " + (_vm.height - 32) + " 41, " + (_vm.height - 7) + " " + (_vm.width - 15) + ", " + (_vm.height - 7) + "\n    ")}}),_vm._v(" "),_c('polyline',{staticClass:"dv-bb4-line-1",attrs:{"stroke":_vm.mergedColor[0],"points":("145, " + (_vm.height - 5) + " 40, " + (_vm.height - 5) + " 10, " + (_vm.height - 35) + "\n        10, 40 40, 5 150, 5 170, 20 " + (_vm.width - 15) + ", 20")}}),_vm._v(" "),_c('polyline',{staticClass:"dv-bb4-line-2",attrs:{"stroke":_vm.mergedColor[1],"points":("245, " + (_vm.height - 1) + " 36, " + (_vm.height - 1) + " 14, " + (_vm.height - 23) + "\n        14, " + (_vm.height - 100))}}),_vm._v(" "),_c('polyline',{staticClass:"dv-bb4-line-3",attrs:{"stroke":_vm.mergedColor[0],"points":("7, " + (_vm.height - 40) + " 7, " + (_vm.height - 75))}}),_vm._v(" "),_c('polyline',{staticClass:"dv-bb4-line-4",attrs:{"stroke":_vm.mergedColor[0],"points":"28, 24 13, 41 13, 64"}}),_vm._v(" "),_c('polyline',{staticClass:"dv-bb4-line-5",attrs:{"stroke":_vm.mergedColor[0],"points":"5, 45 5, 140"}}),_vm._v(" "),_c('polyline',{staticClass:"dv-bb4-line-6",attrs:{"stroke":_vm.mergedColor[1],"points":"14, 75 14, 180"}}),_vm._v(" "),_c('polyline',{staticClass:"dv-bb4-line-7",attrs:{"stroke":_vm.mergedColor[1],"points":"55, 11 147, 11 167, 26 250, 26"}}),_vm._v(" "),_c('polyline',{staticClass:"dv-bb4-line-8",attrs:{"stroke":_vm.mergedColor[1],"points":"158, 5 173, 16"}}),_vm._v(" "),_c('polyline',{staticClass:"dv-bb4-line-9",attrs:{"stroke":_vm.mergedColor[0],"points":("200, 17 " + (_vm.width - 10) + ", 17")}}),_vm._v(" "),_c('polyline',{staticClass:"dv-bb4-line-10",attrs:{"stroke":_vm.mergedColor[1],"points":("385, 17 " + (_vm.width - 10) + ", 17")}})]),_vm._v(" "),_c('div',{staticClass:"border-box-content"},[_vm._t("default")],2)])}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/borderBox4/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var borderBox4_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "F5G8":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "Ficw":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "HJfr":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/mixin/autoResize.js
var autoResize = __webpack_require__("kN6d");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/borderBox10/src/main.vue
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//







/* harmony default export */ var main = ({
  name: 'DvBorderBox10',
  mixins: [autoResize["a" /* default */]],
  props: {
    color: {
      type: Array,
      default: function _default() {
        return [];
      }
    },
    backgroundColor: {
      type: String,
      default: 'transparent'
    }
  },
  data: function data() {
    return {
      ref: 'border-box-10',

      border: ['left-top', 'right-top', 'left-bottom', 'right-bottom'],

      defaultColor: ['#1d48c4', '#d3e1f8'],

      mergedColor: []
    };
  },

  watch: {
    color: function color() {
      var mergeColor = this.mergeColor;


      mergeColor();
    }
  },
  methods: {
    mergeColor: function mergeColor() {
      var color = this.color,
          defaultColor = this.defaultColor;


      this.mergedColor = Object(util["deepMerge"])(Object(plugin_util["deepClone"])(defaultColor, true), color || []);
    }
  },
  mounted: function mounted() {
    var mergeColor = this.mergeColor;


    mergeColor();
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-de1fc3cc","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/borderBox10/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:_vm.ref,staticClass:"dv-border-box-10",style:(("box-shadow: inset 0 0 25px 3px " + (_vm.mergedColor[0])))},[_c('svg',{staticClass:"dv-border-svg-container",attrs:{"width":_vm.width,"height":_vm.height}},[_c('polygon',{attrs:{"fill":_vm.backgroundColor,"points":("\n      4, 0 " + (_vm.width - 4) + ", 0 " + _vm.width + ", 4 " + _vm.width + ", " + (_vm.height - 4) + " " + (_vm.width - 4) + ", " + _vm.height + "\n      4, " + _vm.height + " 0, " + (_vm.height - 4) + " 0, 4\n    ")}})]),_vm._v(" "),_vm._l((_vm.border),function(item){return _c('svg',{key:item,class:(item + " dv-border-svg-container"),attrs:{"width":"150px","height":"150px"}},[_c('polygon',{attrs:{"fill":_vm.mergedColor[1],"points":"40, 0 5, 0 0, 5 0, 16 3, 19 3, 7 7, 3 35, 3"}})])}),_vm._v(" "),_c('div',{staticClass:"border-box-content"},[_vm._t("default")],2)],2)}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/borderBox10/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var borderBox10_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "HMS8":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/babel-runtime/regenerator/index.js
var regenerator = __webpack_require__("Xxa5");
var regenerator_default = /*#__PURE__*/__webpack_require__.n(regenerator);

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/asyncToGenerator.js
var asyncToGenerator = __webpack_require__("exGp");
var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/util/index.js
var util = __webpack_require__("3e7c");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var lib_util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(lib_util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/percentPond/src/main.vue


//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//







/* harmony default export */ var main = ({
  name: 'DvPercentPond',
  props: {
    config: {
      type: Object,
      default: function _default() {
        return {};
      }
    }
  },
  data: function data() {
    var id = Object(util["e" /* uuid */])();
    return {
      gradientId1: 'percent-pond-gradientId1-' + id,
      gradientId2: 'percent-pond-gradientId2-' + id,

      width: 0,
      height: 0,

      defaultConfig: {
        /**
         * @description Value
         * @type {Number}
         * @default value = 0
         */
        value: 0,
        /**
         * @description Colors (hex|rgb|rgba|color keywords)
         * @type {Array<String>}
         * @default colors = ['#00BAFF', '#3DE7C9']
         * @example colors = ['#000', 'rgb(0, 0, 0)', 'rgba(0, 0, 0, 1)', 'red']
         */
        colors: ['#3DE7C9', '#00BAFF'],
        /**
         * @description Border width
         * @type {Number}
         * @default borderWidth = 3
         */
        borderWidth: 3,
        /**
         * @description Gap between border and pond
         * @type {Number}
         * @default borderGap = 3
         */
        borderGap: 3,
        /**
         * @description Line dash
         * @type {Array<Number>}
         * @default lineDash = [5, 1]
         */
        lineDash: [5, 1],
        /**
         * @description Text color
         * @type {String}
         * @default textColor = '#fff'
         */
        textColor: '#fff',
        /**
         * @description Border radius
         * @type {Number}
         * @default borderRadius = 5
         */
        borderRadius: 5,
        /**
         * @description Local Gradient
         * @type {Boolean}
         * @default localGradient = false
         * @example localGradient = false | true
         */
        localGradient: false,
        /**
         * @description Formatter
         * @type {String}
         * @default formatter = '{value}%'
         */
        formatter: '{value}%'
      },

      mergedConfig: null
    };
  },

  computed: {
    rectWidth: function rectWidth() {
      var mergedConfig = this.mergedConfig,
          width = this.width;


      if (!mergedConfig) return 0;

      var borderWidth = mergedConfig.borderWidth;


      return width - borderWidth;
    },
    rectHeight: function rectHeight() {
      var mergedConfig = this.mergedConfig,
          height = this.height;


      if (!mergedConfig) return 0;

      var borderWidth = mergedConfig.borderWidth;


      return height - borderWidth;
    },
    points: function points() {
      var mergedConfig = this.mergedConfig,
          width = this.width,
          height = this.height;


      var halfHeight = height / 2;

      if (!mergedConfig) return '0, ' + halfHeight + ' 0, ' + halfHeight;

      var borderWidth = mergedConfig.borderWidth,
          borderGap = mergedConfig.borderGap,
          value = mergedConfig.value;


      var polylineLength = (width - (borderWidth + borderGap) * 2) / 100 * value;

      return '\n        ' + (borderWidth + borderGap) + ', ' + halfHeight + '\n        ' + (borderWidth + borderGap + polylineLength) + ', ' + (halfHeight + 0.001) + '\n      ';
    },
    polylineWidth: function polylineWidth() {
      var mergedConfig = this.mergedConfig,
          height = this.height;


      if (!mergedConfig) return 0;

      var borderWidth = mergedConfig.borderWidth,
          borderGap = mergedConfig.borderGap;


      return height - (borderWidth + borderGap) * 2;
    },
    linearGradient: function linearGradient() {
      var mergedConfig = this.mergedConfig;


      if (!mergedConfig) return [];

      var colors = mergedConfig.colors;


      var colorNum = colors.length;

      var colorOffsetGap = 100 / (colorNum - 1);

      return colors.map(function (c, i) {
        return [colorOffsetGap * i, c];
      });
    },
    polylineGradient: function polylineGradient() {
      var gradientId1 = this.gradientId1,
          gradientId2 = this.gradientId2,
          mergedConfig = this.mergedConfig;


      if (!mergedConfig) return gradientId2;

      if (mergedConfig.localGradient) return gradientId1;

      return gradientId2;
    },
    gradient2XPos: function gradient2XPos() {
      var mergedConfig = this.mergedConfig;


      if (!mergedConfig) return '100%';

      var value = mergedConfig.value;


      return 200 - value + '%';
    },
    details: function details() {
      var mergedConfig = this.mergedConfig;


      if (!mergedConfig) return '';

      var value = mergedConfig.value,
          formatter = mergedConfig.formatter;


      return formatter.replace('{value}', value);
    }
  },
  watch: {
    config: function config() {
      var mergeConfig = this.mergeConfig;


      mergeConfig();
    }
  },
  methods: {
    init: function init() {
      var _this = this;

      return asyncToGenerator_default()( /*#__PURE__*/regenerator_default.a.mark(function _callee() {
        var initWH, config, mergeConfig;
        return regenerator_default.a.wrap(function _callee$(_context) {
          while (1) {
            switch (_context.prev = _context.next) {
              case 0:
                initWH = _this.initWH, config = _this.config, mergeConfig = _this.mergeConfig;
                _context.next = 3;
                return initWH();

              case 3:
                if (config) {
                  _context.next = 5;
                  break;
                }

                return _context.abrupt('return');

              case 5:

                mergeConfig();

              case 6:
              case 'end':
                return _context.stop();
            }
          }
        }, _callee, _this);
      }))();
    },
    initWH: function initWH() {
      var _this2 = this;

      return asyncToGenerator_default()( /*#__PURE__*/regenerator_default.a.mark(function _callee2() {
        var $nextTick, $refs, _$refs$percentPond, clientWidth, clientHeight;

        return regenerator_default.a.wrap(function _callee2$(_context2) {
          while (1) {
            switch (_context2.prev = _context2.next) {
              case 0:
                $nextTick = _this2.$nextTick, $refs = _this2.$refs;
                _context2.next = 3;
                return $nextTick();

              case 3:
                _$refs$percentPond = $refs['percent-pond'], clientWidth = _$refs$percentPond.clientWidth, clientHeight = _$refs$percentPond.clientHeight;


                _this2.width = clientWidth;
                _this2.height = clientHeight;

              case 6:
              case 'end':
                return _context2.stop();
            }
          }
        }, _callee2, _this2);
      }))();
    },
    mergeConfig: function mergeConfig() {
      var config = this.config,
          defaultConfig = this.defaultConfig;


      this.mergedConfig = Object(lib_util["deepMerge"])(Object(plugin_util["deepClone"])(defaultConfig, true), config || {});
    }
  },
  mounted: function mounted() {
    var init = this.init;


    init();
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-ea653244","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/percentPond/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:"percent-pond",staticClass:"dv-percent-pond"},[_c('svg',[_c('defs',[_c('linearGradient',{attrs:{"id":_vm.gradientId1,"x1":"0%","y1":"0%","x2":"100%","y2":"0%"}},_vm._l((_vm.linearGradient),function(lc){return _c('stop',{key:lc[0],attrs:{"offset":((lc[0]) + "%"),"stop-color":lc[1]}})}),1),_vm._v(" "),_c('linearGradient',{attrs:{"id":_vm.gradientId2,"x1":"0%","y1":"0%","x2":_vm.gradient2XPos,"y2":"0%"}},_vm._l((_vm.linearGradient),function(lc){return _c('stop',{key:lc[0],attrs:{"offset":((lc[0]) + "%"),"stop-color":lc[1]}})}),1)],1),_vm._v(" "),_c('rect',{attrs:{"x":_vm.mergedConfig ? _vm.mergedConfig.borderWidth / 2 : '0',"y":_vm.mergedConfig ? _vm.mergedConfig.borderWidth / 2 : '0',"rx":_vm.mergedConfig ? _vm.mergedConfig.borderRadius : '0',"ry":_vm.mergedConfig ? _vm.mergedConfig.borderRadius : '0',"fill":"transparent","stroke-width":_vm.mergedConfig ? _vm.mergedConfig.borderWidth : '0',"stroke":("url(#" + _vm.gradientId1 + ")"),"width":_vm.rectWidth > 0 ? _vm.rectWidth : 0,"height":_vm.rectHeight > 0 ? _vm.rectHeight : 0}}),_vm._v(" "),_c('polyline',{attrs:{"stroke-width":_vm.polylineWidth,"stroke-dasharray":_vm.mergedConfig ? _vm.mergedConfig.lineDash.join(',') : '0',"stroke":("url(#" + _vm.polylineGradient + ")"),"points":_vm.points}}),_vm._v(" "),_c('text',{attrs:{"stroke":_vm.mergedConfig ? _vm.mergedConfig.textColor : '#fff',"fill":_vm.mergedConfig ? _vm.mergedConfig.textColor : '#fff',"x":_vm.width / 2,"y":_vm.height / 2}},[_vm._v("\n      "+_vm._s(_vm.details)+"\n    ")])])])}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/percentPond/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var percentPond_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "HX3G":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/slicedToArray.js
var slicedToArray = __webpack_require__("d7EF");
var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/mixin/autoResize.js
var autoResize = __webpack_require__("kN6d");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/util/index.js
var util = __webpack_require__("3e7c");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var lib_util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(lib_util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/color/lib/index.js
var lib = __webpack_require__("glc7");
var lib_default = /*#__PURE__*/__webpack_require__.n(lib);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/decoration12/src/main.vue

//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//










/* harmony default export */ var main = ({
  name: 'DvDecoration12',
  mixins: [autoResize["a" /* default */]],
  props: {
    color: {
      type: Array,
      default: function _default() {
        return [];
      }
    },
    /**
     * @description Scan animation dur
     */
    scanDur: {
      type: Number,
      default: 3
    },
    /**
     * @description Halo animation dur
     */
    haloDur: {
      type: Number,
      default: 2
    }
  },
  data: function data() {
    var id = Object(util["e" /* uuid */])();
    return {
      ref: 'decoration-12',
      gId: 'decoration-12-g-' + id,
      gradientId: 'decoration-12-gradient-' + id,

      defaultColor: ['#2783ce', '#2cf7fe'],

      mergedColor: [],

      pathD: [],

      pathColor: [],

      circleR: [],

      splitLinePoints: [],

      arcD: [],

      segment: 30,

      sectorAngle: Math.PI / 3,

      ringNum: 3,

      ringWidth: 1,

      showSplitLine: true
    };
  },

  watch: {
    color: function color() {
      var mergeColor = this.mergeColor;


      mergeColor();
    }
  },
  computed: {
    x: function x() {
      var width = this.width;


      return width / 2;
    },
    y: function y() {
      var height = this.height;


      return height / 2;
    }
  },
  methods: {
    init: function init() {
      var mergeColor = this.mergeColor,
          calcPathD = this.calcPathD,
          calcPathColor = this.calcPathColor,
          calcCircleR = this.calcCircleR,
          calcSplitLinePoints = this.calcSplitLinePoints,
          calcArcD = this.calcArcD;


      mergeColor();

      calcPathD();

      calcPathColor();

      calcCircleR();

      calcSplitLinePoints();

      calcArcD();
    },
    mergeColor: function mergeColor() {
      var color = this.color,
          defaultColor = this.defaultColor;


      this.mergedColor = Object(lib_util["deepMerge"])(Object(plugin_util["deepClone"])(defaultColor, true), color || []);
    },
    calcPathD: function calcPathD() {
      var x = this.x,
          y = this.y,
          width = this.width,
          segment = this.segment,
          sectorAngle = this.sectorAngle;


      var startAngle = -Math.PI / 2;
      var angleGap = sectorAngle / segment;
      var r = width / 4;
      var lastEndPoints = Object(plugin_util["getCircleRadianPoint"])(x, y, r, startAngle);

      this.pathD = new Array(segment).fill('').map(function (_, i) {
        var endPoints = Object(plugin_util["getCircleRadianPoint"])(x, y, r, startAngle - (i + 1) * angleGap).map(function (_) {
          return _.toFixed(5);
        });
        var d = 'M' + lastEndPoints.join(',') + ' A' + r + ', ' + r + ' 0 0 0 ' + endPoints.join(',');
        lastEndPoints = endPoints;

        return d;
      });
    },
    calcPathColor: function calcPathColor() {
      var _mergedColor = slicedToArray_default()(this.mergedColor, 1),
          color = _mergedColor[0],
          segment = this.segment;

      var colorGap = 100 / (segment - 1);

      this.pathColor = new Array(segment).fill(color).map(function (_, i) {
        return Object(lib["fade"])(color, 100 - i * colorGap);
      });
    },
    calcCircleR: function calcCircleR() {
      var segment = this.segment,
          ringNum = this.ringNum,
          width = this.width,
          ringWidth = this.ringWidth;


      var radiusGap = (width / 2 - ringWidth / 2) / ringNum;

      this.circleR = new Array(ringNum).fill(0).map(function (_, i) {
        return radiusGap * (i + 1);
      });
    },
    calcSplitLinePoints: function calcSplitLinePoints() {
      var x = this.x,
          y = this.y,
          width = this.width;


      var angleGap = Math.PI / 6;
      var r = width / 2;

      this.splitLinePoints = new Array(6).fill('').map(function (_, i) {
        var startAngle = angleGap * (i + 1);
        var endAngle = startAngle + Math.PI;
        var startPoint = Object(plugin_util["getCircleRadianPoint"])(x, y, r, startAngle);
        var endPoint = Object(plugin_util["getCircleRadianPoint"])(x, y, r, endAngle);

        return startPoint.join(',') + ' ' + endPoint.join(',');
      });
    },
    calcArcD: function calcArcD() {
      var x = this.x,
          y = this.y,
          width = this.width;


      var angleGap = Math.PI / 6;
      var r = width / 2 - 1;

      this.arcD = new Array(4).fill('').map(function (_, i) {
        var startAngle = angleGap * (3 * i + 1);
        var endAngle = startAngle + angleGap;
        var startPoint = Object(plugin_util["getCircleRadianPoint"])(x, y, r, startAngle);
        var endPoint = Object(plugin_util["getCircleRadianPoint"])(x, y, r, endAngle);

        return 'M' + startPoint.join(',') + ' A' + x + ', ' + y + ' 0 0 1 ' + endPoint.join(',');
      });
    },
    afterAutoResizeMixinInit: function afterAutoResizeMixinInit() {
      var init = this.init;


      init();
    },

    fade: lib["fade"]
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-1b5d7dd6","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/decoration12/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:_vm.ref,staticClass:"dv-decoration-12"},[_c('svg',{attrs:{"width":_vm.width,"height":_vm.height}},[_c('defs',[_c('g',{attrs:{"id":_vm.gId}},_vm._l((_vm.pathD),function(d,i){return _c('path',{key:d,attrs:{"stroke":_vm.pathColor[i],"stroke-width":_vm.width / 2,"fill":"transparent","d":d}})}),0),_vm._v(" "),_c('radialGradient',{attrs:{"id":_vm.gradientId,"cx":"50%","cy":"50%","r":"50%"}},[_c('stop',{attrs:{"offset":"0%","stop-color":"transparent","stop-opacity":"1"}}),_vm._v(" "),_c('stop',{attrs:{"offset":"100%","stop-color":_vm.fade(_vm.mergedColor[1] || _vm.defaultColor[1], 30),"stop-opacity":"1"}})],1)],1),_vm._v(" "),_vm._l((_vm.circleR),function(r){return _c('circle',{key:r,attrs:{"r":r,"cx":_vm.x,"cy":_vm.y,"stroke":_vm.mergedColor[1],"stroke-width":0.5,"fill":"transparent"}})}),_vm._v(" "),_c('circle',{attrs:{"r":"1","cx":_vm.x,"cy":_vm.y,"stroke":"transparent","fill":("url(#" + _vm.gradientId + ")")}},[_c('animate',{attrs:{"attributeName":"r","values":("1;" + (_vm.width / 2)),"dur":(_vm.haloDur + "s"),"repeatCount":"indefinite"}}),_vm._v(" "),_c('animate',{attrs:{"attributeName":"opacity","values":"1;0","dur":(_vm.haloDur + "s"),"repeatCount":"indefinite"}})]),_vm._v(" "),_c('circle',{attrs:{"r":"2","cx":_vm.x,"cy":_vm.y,"fill":_vm.mergedColor[1]}}),_vm._v(" "),(_vm.showSplitLine)?_c('g',_vm._l((_vm.splitLinePoints),function(p){return _c('polyline',{key:p,attrs:{"points":p,"stroke":_vm.mergedColor[1],"stroke-width":0.5,"opacity":"0.5"}})}),0):_vm._e(),_vm._v(" "),_vm._l((_vm.arcD),function(d){return _c('path',{key:d,attrs:{"d":d,"stroke":_vm.mergedColor[1],"stroke-width":"2","fill":"transparent"}})}),_vm._v(" "),_c('use',{attrs:{"xlink:href":("#" + _vm.gId)}},[_c('animateTransform',{attrs:{"attributeName":"transform","type":"rotate","values":("0, " + _vm.x + " " + _vm.y + ";360, " + _vm.x + " " + _vm.y),"dur":(_vm.scanDur + "s"),"repeatCount":"indefinite"}})],1)],2),_vm._v(" "),_c('div',{staticClass:"decoration-content"},[_vm._t("default")],2)])}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/decoration12/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var decoration12_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "I/zu":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "IcnI":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator__ = __webpack_require__("Xxa5");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_asyncToGenerator__ = __webpack_require__("exGp");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_asyncToGenerator___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_asyncToGenerator__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_core_js_json_stringify__ = __webpack_require__("mvHQ");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_core_js_json_stringify___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_core_js_json_stringify__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_vue__ = __webpack_require__("7+uW");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_vuex__ = __webpack_require__("NYxO");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__api_all_js__ = __webpack_require__("+iPQ");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__api__ = __webpack_require__("gyMJ");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_moment__ = __webpack_require__("PJh5");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_moment___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_moment__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__utils_index__ = __webpack_require__("0xDb");





__WEBPACK_IMPORTED_MODULE_3_vue__["default"].use(__WEBPACK_IMPORTED_MODULE_4_vuex__["a" /* default */]);




var store = new __WEBPACK_IMPORTED_MODULE_4_vuex__["a" /* default */].Store({
  state: {
    treeList: [],
    tenantId: '1200',
    selectoption: [],
    tagsList: [],
    cardList: [],
    collapse: false,
    lange: false,
    token: {
      refresh_token: "",
      access_token: ""
    },
    ms_username: '',
    collectUS: {
      houseSensor400: 0,
      lock200: 0,
      lock300: 0,
      site200: 0,
      site300: 0,
      site400: 0,
      userCount: 0
    },
    seriesData: {
      abnormalTotal: 0,
      batteryLevel1: 0,
      batteryLevel2: 0,
      batteryLevel3: 0,
      batteryLevel4: 0,
      batteryLevel5: 0,
      closeTotal: 0,
      offlineTotal: 0,
      onlineTotal: 0,
      openTotal: 0,
      projects: 0,
      total: 0
    },
    cdata: [0, 0, 0, 0, 0],
    tableData: {},
    currentPage: 1,
    currentPage1: 1,
    deviceList: [],
    roomAbout: [],
    deviceAbout: [],
    customerCode: "d39eaa7fc1f34190869608259133d2fb",
    conditionRoomAndPersonnel: [],
    analysis: {
      abnormalTotal: 0,
      batteryLevel1: 0,
      batteryLevel2: 0,
      batteryLevel3: 0,
      batteryLevel4: 0,
      batteryLevel5: 0,
      offlineTotal: 0,
      onlineTotal: 0,
      operationTotal: 0,
      projects: 0,
      total: 0
    },
    Statistics: {
      projectSum: 0,
      deviceSum: 0,
      bindingSum: 0,
      islineSum: 0,
      unlineSum: 0,
      lowElectricity: 0,
      openlook: 0,
      closelook: 0,
      openDoorlog: 0,
      closeDoorlog: 0,
      unlineList: [],
      fcDoorlog: 0,
      Processed: 0,
      allertLog: {
        openDoorlog: [0, 0, 0, 0, 0, 0, 0],
        closeDoorlog: [0, 0, 0, 0, 0, 0, 0],
        fcDoorlog: [0, 0, 0, 0, 0, 0, 0]
      },
      deviceBattery: [0, 0, 0],
      userinfo: {
        type: 1
      },
      sumTotal: 0
    },
    zNodes: []
  },
  mutations: {
    getSumTotal: function getSumTotal(state) {
      Object(__WEBPACK_IMPORTED_MODULE_6__api__["d" /* httpGet */])('', __WEBPACK_IMPORTED_MODULE_5__api_all_js__["a" /* api */].getTotalRevenue).then(function (res) {
        if (res.success) {
          if (res.data) {
            state.sumTotal = res.data / 100;
          }
        }
      });
    },
    getConditionRoomAndPersonnel: function getConditionRoomAndPersonnel(state) {
      var data = {};
      Object(__WEBPACK_IMPORTED_MODULE_6__api__["d" /* httpGet */])(data, __WEBPACK_IMPORTED_MODULE_5__api_all_js__["a" /* api */].onlyTenant).then(function (res) {
        if (res.success) {
          state.conditionRoomAndPersonnel = res.data.list;
        }
      });
    },
    getTree: function getTree(state) {
      var data = {};
      Object(__WEBPACK_IMPORTED_MODULE_6__api__["d" /* httpGet */])(data, __WEBPACK_IMPORTED_MODULE_5__api_all_js__["a" /* api */].getTree).then(function (res) {
        if (res.success) {
          var arrdata = Object(__WEBPACK_IMPORTED_MODULE_8__utils_index__["n" /* uniqueArray */])(res.data, "id");
          state.treeList = arrdata;
          state.zNodes = Object(__WEBPACK_IMPORTED_MODULE_8__utils_index__["p" /* ztreeToElementTree */])(arrdata, {});
        }
      });
    },
    getselectoption: function getselectoption(state, v) {
      // var userinfo = JSON.parse(localStorage.getItem("info"));
      // var tenantId = userinfo.tenantId.split(',')
      // var arr = []
      // httpGet('', api.getConfig).then(res => {
      //   if (res.success) {
      //     if(userinfo.type===0){
      //       arr=res.data.list
      //     }else{
      //       tenantId.map(lt => {
      //         var obj = res.data.list.filter(item => {return item.value==lt})[0]
      //         if(obj){
      //           arr.push(obj)
      //         }
      //       })
      //     }
      //     state.selectoption = arr
      //     localStorage.setItem('selectoption',JSON.stringify(arr))
      //   } else {
      //     this.$message.error("获取失败")
      //   }
      // })
    },
    getuserInfo: function getuserInfo(state) {
      Object(__WEBPACK_IMPORTED_MODULE_6__api__["d" /* httpGet */])('', __WEBPACK_IMPORTED_MODULE_5__api_all_js__["a" /* api */].userInfo).then(function (res3) {
        if (res3.success) {
          state.userinfo = res.data;
          localStorage.setItem('info', __WEBPACK_IMPORTED_MODULE_2_babel_runtime_core_js_json_stringify___default()(res.data));
        }
      });
    },
    settenantid: function settenantid(state) {
      // var tenantId = JSON.parse(localStorage.getItem("tenantId"));
      // if (tenantId) {
      //   state.tenantId = tenantId
      // } else {
      //   var userinfo = JSON.parse(localStorage.getItem("info"));
      //   tenantId = userinfo.tenantId.split(',')
      //   state.tenantId = tenantId[0]
      //   localStorage.setItem('tenantId', tenantId[0])
      // }
    },
    defaultsettenantid: function defaultsettenantid(state) {
      // var userinfo = JSON.parse(localStorage.getItem("info"));
      // var tenantId = userinfo.tenantId.split(',')
      // state.tenantId = tenantId[0]
      // localStorage.setItem('tenantId', tenantId[0])
    },
    updateTenantId: function updateTenantId(state, p) {
      // state.tenantId = p
      // localStorage.setItem('tenantId', p)
    },
    updatedata: function updatedata(state, p) {
      state.Statistics.openlook = p;
    },
    getCardname: function getCardname(state) {
      var data = {
        pageNum: 0,
        pageSize: 0,
        orderBy: "create_at desc",
        q: __WEBPACK_IMPORTED_MODULE_2_babel_runtime_core_js_json_stringify___default()({})
      };
      Object(__WEBPACK_IMPORTED_MODULE_6__api__["g" /* httpPost */])(data, __WEBPACK_IMPORTED_MODULE_5__api_all_js__["a" /* api */].getlistNum).then(function (res) {
        if (res.success) {
          state.cardList = res.data.list;
        } else {
          state.cardList = [];
        }
      });
    },
    setanalysis: function setanalysis(state, data) {
      state.analysis = data;
    },

    // 查询关于房间数据
    getAboutRoom: function getAboutRoom(state, count) {
      state.roomAbout = count;
    },

    // 查询关于房间数据
    getAboutDevice: function getAboutDevice(state, count) {
      state.deviceAbout = count;
    },
    increment: function increment(state, count) {
      state.currentPage = count;
    },
    increment1: function increment1(state, count) {
      state.currentPage1 = count;
    },
    deviceFun: function deviceFun(state, list) {
      state.deviceList = list;
    },
    getcollectUS: function getcollectUS(state) {},
    setUser: function setUser(state, v) {
      state.seriesData = v;
    },
    setUser1: function setUser1(state) {
      var _this = this;

      return __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_asyncToGenerator___default()( /*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee() {
        var ids, tenantIds, lookStatistic;
        return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee$(_context) {
          while (1) {
            switch (_context.prev = _context.next) {
              case 0:
                ids = JSON.parse(localStorage.getItem('info')); //require('../../static/global.json');

                tenantIds = ids.tenantId.replace('100,', '');
                lookStatistic = 0;

                Object(__WEBPACK_IMPORTED_MODULE_6__api__["f" /* httpGetno */])("", '/v1/statistics/all/analysis/' + tenantIds + '/1').then(function (res) {
                  for (var key in res) {
                    lookStatistic += res[key].total;
                  }
                  localStorage.setItem("lookStatistic", lookStatistic);
                });
                Object(__WEBPACK_IMPORTED_MODULE_6__api__["f" /* httpGetno */])("", '/v1/statistics/all/analysis/' + tenantIds + '/-1').then(function (res) {
                  var datate = [0, 0, 0, 0, 0, 0, 0];
                  var today = __WEBPACK_IMPORTED_MODULE_7_moment___default()().format("YYYY-MM-DD");
                  datate[6] = today;
                  datate[5] = __WEBPACK_IMPORTED_MODULE_7_moment___default()().subtract('days', 1).format("YYYY/MM/DD");
                  datate[4] = __WEBPACK_IMPORTED_MODULE_7_moment___default()().subtract('days', 2).format("YYYY/MM/DD");
                  datate[3] = __WEBPACK_IMPORTED_MODULE_7_moment___default()().subtract('days', 3).format("YYYY/MM/DD");
                  datate[2] = __WEBPACK_IMPORTED_MODULE_7_moment___default()().subtract('days', 4).format("YYYY/MM/DD");
                  datate[1] = __WEBPACK_IMPORTED_MODULE_7_moment___default()().subtract('days', 5).format("YYYY/MM/DD");
                  datate[0] = __WEBPACK_IMPORTED_MODULE_7_moment___default()().subtract('days', 6).format("YYYY/MM/DD");
                  var sum = [{
                    order: datate[0],
                    count: 0
                  }, {
                    order: datate[1],
                    count: 0
                  }, {
                    order: datate[2],
                    count: 0
                  }, {
                    order: datate[3],
                    count: 0
                  }, {
                    order: datate[4],
                    count: 0
                  }, {
                    order: datate[5],
                    count: 0
                  }, {
                    order: datate[6],
                    count: 0
                  }];
                  var array = [];
                  for (var i in res) {
                    array.push(res[i]);
                  }
                  var seriesData = {
                    abnormalTotal: 0,
                    batteryLevel1: 0,
                    batteryLevel2: 0,
                    batteryLevel3: 0,
                    batteryLevel4: 0,
                    batteryLevel5: 0,
                    closeTotal: 0,
                    offlineTotal: 0,
                    onlineTotal: 0,
                    openTotal: 0,
                    projects: 0,
                    total: 0,
                    isAppBind: 0
                  };
                  array.map(function (li, index) {
                    if (index < array.length) {
                      for (var key in seriesData) {
                        seriesData[key] += li[key];
                      }
                    }
                  });
                  array.map(function (li, index) {
                    li.createAtS.map(function (lt) {
                      var order = __WEBPACK_IMPORTED_MODULE_7_moment___default()(lt).format("YYYY/MM/DD");
                      if (order == datate[0]) {
                        sum[0].count += 1;
                      } else if (order == datate[1]) {
                        sum[1].count += 1;
                      } else if (order == datate[2]) {
                        sum[2].count += 1;
                      } else if (order == datate[3]) {
                        sum[3].count += 1;
                      } else if (order == datate[4]) {
                        sum[4].count += 1;
                      } else if (order == datate[5]) {
                        sum[5].count += 1;
                      } else if (order == datate[6]) {
                        sum[6].count += 1;
                      }
                    });
                  });
                  var cdata = state.cdata;
                  cdata[0] = (parseInt(seriesData.batteryLevel1) / parseInt(seriesData.total) * 100).toFixed(2);
                  cdata[1] = (parseInt(seriesData.batteryLevel2) / parseInt(seriesData.total) * 100).toFixed(2);
                  cdata[2] = (parseInt(seriesData.batteryLevel3) / parseInt(seriesData.total) * 100).toFixed(2);
                  cdata[3] = (parseInt(seriesData.batteryLevel4) / parseInt(seriesData.total) * 100).toFixed(2);
                  cdata[4] = (parseInt(seriesData.batteryLevel5) / parseInt(seriesData.total) * 100).toFixed(2);
                  // seriesData['lookStatistic']=lookStatistic
                  state.cdata = cdata;
                  state.seriesData = seriesData;
                  var collectUS = {
                    houseSensor400: 0,
                    lock200: 0,
                    lock300: 0,
                    site200: 0,
                    site300: 0,
                    site400: 0,
                    userCount: 0
                  };
                  Object(__WEBPACK_IMPORTED_MODULE_6__api__["f" /* httpGetno */])("", '/v1/statistics/all/collectUSA/' + tenantIds).then(function (res) {
                    state.collectUS = res;
                    collectUS = res;
                    var tenantIdsTwo = tenantIds.replace('400,', '');
                    Object(__WEBPACK_IMPORTED_MODULE_6__api__["f" /* httpGetno */])("", '/v1/statistics/collect/openLock/' + tenantIdsTwo).then(function (res1) {
                      var ary = [];
                      for (var o in res1) {
                        var m = o.indexOf('week');
                        if (m != -1) {
                          ary = ary.concat(res1[o]);
                        }
                      }
                      var objArr = [];
                      ary.forEach(function (v, i) {
                        var result = objArr.findIndex(function (ev) {
                          return ev.order === v.order;
                        });
                        if (result != -1) {
                          objArr[result].count += v.count;
                        } else {
                          objArr.push(v);
                        }
                      });
                      var sortArry = objArr.sort(Object(__WEBPACK_IMPORTED_MODULE_8__utils_index__["b" /* compare */])('order', 'positive'));
                      setTimeout(function () {
                        var statisticsDate = {
                          cdata: cdata,
                          seriesData: seriesData,
                          collectUS: collectUS,
                          collectOpenLock: res1,
                          weekopenlock: sortArry,
                          addDeviceWeek: sum
                        };
                        state.statisticsDate = statisticsDate;
                        localStorage.removeItem("statisticsDate");
                        localStorage.setItem("statisticsDate", __WEBPACK_IMPORTED_MODULE_2_babel_runtime_core_js_json_stringify___default()(statisticsDate));
                      }, 500);
                    });
                  });
                });

              case 5:
              case 'end':
                return _context.stop();
            }
          }
        }, _callee, _this);
      }))();
    },
    selectlanguage: function selectlanguage(state) {
      if (state.lange) {
        state.lange = false;
        sessionStorage.setItem("lange", false);
      } else {
        state.lange = true;
        sessionStorage.setItem("lange", true);
      }
    },
    delTagsItem: function delTagsItem(state, data) {
      state.tagsList.splice(data.index, 1);
    },
    setTagsItem: function setTagsItem(state, data) {
      state.tagsList.push(data);
    },
    clearTags: function clearTags(state) {
      state.tagsList = [];
    },
    closeTagsOther: function closeTagsOther(state, data) {
      state.tagsList = data;
    },
    closeCurrentTag: function closeCurrentTag(state, data) {
      for (var i = 0, len = state.tagsList.length; i < len; i++) {
        var item = state.tagsList[i];
        if (item.path === data.$route.fullPath) {
          if (i < len - 1) {
            data.$router.push(state.tagsList[i + 1].path);
          } else if (i > 0) {
            data.$router.push(state.tagsList[i - 1].path);
          } else {
            data.$router.push("/");
          }
          state.tagsList.splice(i, 1);
          break;
        }
      }
    },

    // 侧边栏折叠
    hadndleCollapse: function hadndleCollapse(state, data) {
      state.collapse = data;
    }
  },
  actions: {},
  modules: {}
});
/* harmony default export */ __webpack_exports__["a"] = (store);

/***/ }),

/***/ "In5b":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "J1Kv":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "J5oY":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_promise__ = __webpack_require__("//Fk");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_promise___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_promise__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_json_stringify__ = __webpack_require__("mvHQ");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_json_stringify___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_json_stringify__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_typeof__ = __webpack_require__("pFYg");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_typeof___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_typeof__);



!function (_$) {
  var settings = {},
      roots = {},
      caches = {},
      _consts = {
    className: {
      BUTTON: "button",
      LEVEL: "level",
      ICO_LOADING: "ico_loading",
      SWITCH: "switch",
      NAME: "node_name"
    },
    event: {
      NODECREATED: "ztree_nodeCreated",
      CLICK: "ztree_click",
      EXPAND: "ztree_expand",
      COLLAPSE: "ztree_collapse",
      ASYNC_SUCCESS: "ztree_async_success",
      ASYNC_ERROR: "ztree_async_error",
      REMOVE: "ztree_remove",
      SELECTED: "ztree_selected",
      UNSELECTED: "ztree_unselected"
    },
    id: {
      A: "_a",
      ICON: "_ico",
      SPAN: "_span",
      SWITCH: "_switch",
      UL: "_ul"
    },
    line: {
      ROOT: "root",
      ROOTS: "roots",
      CENTER: "center",
      BOTTOM: "bottom",
      NOLINE: "noline",
      LINE: "line"
    },
    folder: {
      OPEN: "open",
      CLOSE: "close",
      DOCU: "docu"
    },
    node: {
      CURSELECTED: "curSelectedNode"
    }
  },
      _setting = {
    treeId: "",
    treeObj: null,
    view: {
      addDiyDom: null,
      autoCancelSelected: !0,
      dblClickExpand: !0,
      expandSpeed: "fast",
      fontCss: {},
      nodeClasses: {},
      nameIsHTML: !1,
      selectedMulti: !0,
      showIcon: !0,
      showLine: !0,
      showTitle: !0,
      txtSelectedEnable: !1
    },
    data: {
      key: {
        isParent: "isParent",
        children: "children",
        name: "name",
        title: "",
        url: "url",
        icon: "icon"
      },
      render: {
        name: null,
        title: null
      },
      simpleData: {
        enable: !1,
        idKey: "id",
        pIdKey: "pId",
        rootPId: null
      },
      keep: {
        parent: !1,
        leaf: !1
      }
    },
    async: {
      enable: !1,
      contentType: "application/x-www-form-urlencoded",
      type: "post",
      dataType: "text",
      headers: {},
      xhrFields: {},
      url: "",
      autoParam: [],
      otherParam: [],
      dataFilter: null
    },
    callback: {
      beforeAsync: null,
      beforeClick: null,
      beforeDblClick: null,
      beforeRightClick: null,
      beforeMouseDown: null,
      beforeMouseUp: null,
      beforeExpand: null,
      beforeCollapse: null,
      beforeRemove: null,
      onAsyncError: null,
      onAsyncSuccess: null,
      onNodeCreated: null,
      onClick: "zTreeOnClick",
      onDblClick: null,
      onRightClick: null,
      onMouseDown: null,
      onMouseUp: null,
      onExpand: null,
      onCollapse: null,
      onRemove: null
    }
  },
      _initRoot = function _initRoot(e) {
    var t = data.getRoot(e);
    t || (t = {}, data.setRoot(e, t)), data.nodeChildren(e, t, []), t.expandTriggerFlag = !1, t.curSelectedList = [], t.noSelection = !0, t.createdNodes = [], t.zId = 0, t._ver = new Date().getTime();
  },
      _initCache = function _initCache(e) {
    var t = data.getCache(e);
    t || (t = {}, data.setCache(e, t)), t.nodes = [], t.doms = [];
  },
      _bindEvent = function _bindEvent(d) {
    var e = d.treeObj,
        t = consts.event;
    e.bind(t.NODECREATED, function (e, t, n) {
      tools.apply(d.callback.onNodeCreated, [e, t, n]);
    }), e.bind(t.CLICK, function (e, t, n, o, a) {
      tools.apply(d.callback.onClick, [t, n, o, a]);
    }), e.bind(t.EXPAND, function (e, t, n) {
      tools.apply(d.callback.onExpand, [e, t, n]);
    }), e.bind(t.COLLAPSE, function (e, t, n) {
      tools.apply(d.callback.onCollapse, [e, t, n]);
    }), e.bind(t.ASYNC_SUCCESS, function (e, t, n, o) {
      tools.apply(d.callback.onAsyncSuccess, [e, t, n, o]);
    }), e.bind(t.ASYNC_ERROR, function (e, t, n, o, a, r) {
      tools.apply(d.callback.onAsyncError, [e, t, n, o, a, r]);
    }), e.bind(t.REMOVE, function (e, t, n) {
      tools.apply(d.callback.onRemove, [e, t, n]);
    }), e.bind(t.SELECTED, function (e, t, n) {
      tools.apply(d.callback.onSelected, [t, n]);
    }), e.bind(t.UNSELECTED, function (e, t, n) {
      tools.apply(d.callback.onUnSelected, [t, n]);
    });
  },
      _unbindEvent = function _unbindEvent(e) {
    var t = e.treeObj,
        n = consts.event;
    t.unbind(n.NODECREATED).unbind(n.CLICK).unbind(n.EXPAND).unbind(n.COLLAPSE).unbind(n.ASYNC_SUCCESS).unbind(n.ASYNC_ERROR).unbind(n.REMOVE).unbind(n.SELECTED).unbind(n.UNSELECTED);
  },
      _eventProxy = function _eventProxy(e) {
    var t = e.target,
        n = data.getSetting(e.data.treeId),
        o = "",
        a = null,
        r = "",
        d = "",
        i = null,
        s = null,
        l = null;
    if (tools.eqs(e.type, "mousedown") ? d = "mousedown" : tools.eqs(e.type, "mouseup") ? d = "mouseup" : tools.eqs(e.type, "contextmenu") ? d = "contextmenu" : tools.eqs(e.type, "click") ? tools.eqs(t.tagName, "span") && null !== t.getAttribute("treeNode" + consts.id.SWITCH) ? (o = tools.getNodeMainDom(t).id, r = "switchNode") : (l = tools.getMDom(n, t, [{
      tagName: "a",
      attrName: "treeNode" + consts.id.A
    }])) && (o = tools.getNodeMainDom(l).id, r = "clickNode") : tools.eqs(e.type, "dblclick") && (d = "dblclick", (l = tools.getMDom(n, t, [{
      tagName: "a",
      attrName: "treeNode" + consts.id.A
    }])) && (o = tools.getNodeMainDom(l).id, r = "switchNode")), 0 < d.length && 0 == o.length && (l = tools.getMDom(n, t, [{
      tagName: "a",
      attrName: "treeNode" + consts.id.A
    }])) && (o = tools.getNodeMainDom(l).id), 0 < o.length) switch (a = data.getNodeCache(n, o), r) {
      case "switchNode":
        data.nodeIsParent(n, a) && (tools.eqs(e.type, "click") || tools.eqs(e.type, "dblclick") && tools.apply(n.view.dblClickExpand, [n.treeId, a], n.view.dblClickExpand)) ? i = handler.onSwitchNode : r = "";
        break;
      case "clickNode":
        i = handler.onClickNode;
    }
    switch (d) {
      case "mousedown":
        s = handler.onZTreeMousedown;
        break;
      case "mouseup":
        s = handler.onZTreeMouseup;
        break;
      case "dblclick":
        s = handler.onZTreeDblclick;
        break;
      case "contextmenu":
        s = handler.onZTreeContextmenu;
    }
    return {
      stop: !1,
      node: a,
      nodeEventType: r,
      nodeEventCallback: i,
      treeEventType: d,
      treeEventCallback: s
    };
  },
      _initNode = function _initNode(e, t, n, o, a, r, d) {
    if (n) {
      var i = data.getRoot(e),
          s = data.nodeChildren(e, n);
      n.level = t, n.tId = e.treeId + "_" + ++i.zId, n.parentTId = o ? o.tId : null, n.open = "string" == typeof n.open ? tools.eqs(n.open, "true") : !!n.open;
      var l = data.nodeIsParent(e, n);
      tools.isArray(s) ? (data.nodeIsParent(e, n, !0), n.zAsync = !0) : (l = data.nodeIsParent(e, n, l), n.open = !(!l || e.async.enable) && n.open, n.zAsync = !l), n.isFirstNode = a, n.isLastNode = r, n.getParentNode = function () {
        return data.getNodeCache(e, n.parentTId);
      }, n.getPreNode = function () {
        return data.getPreNode(e, n);
      }, n.getNextNode = function () {
        return data.getNextNode(e, n);
      }, n.getIndex = function () {
        return data.getNodeIndex(e, n);
      }, n.getPath = function () {
        return data.getNodePath(e, n);
      }, n.isAjaxing = !1, data.fixPIdKeyValue(e, n);
    }
  },
      _init = {
    bind: [_bindEvent],
    unbind: [_unbindEvent],
    caches: [_initCache],
    nodes: [_initNode],
    proxys: [_eventProxy],
    roots: [_initRoot],
    beforeA: [],
    afterA: [],
    innerBeforeA: [],
    innerAfterA: [],
    zTreeTools: []
  },
      data = {
    addNodeCache: function addNodeCache(e, t) {
      data.getCache(e).nodes[data.getNodeCacheId(t.tId)] = t;
    },
    getNodeCacheId: function getNodeCacheId(e) {
      return e.substring(e.lastIndexOf("_") + 1);
    },
    addAfterA: function addAfterA(e) {
      _init.afterA.push(e);
    },
    addBeforeA: function addBeforeA(e) {
      _init.beforeA.push(e);
    },
    addInnerAfterA: function addInnerAfterA(e) {
      _init.innerAfterA.push(e);
    },
    addInnerBeforeA: function addInnerBeforeA(e) {
      _init.innerBeforeA.push(e);
    },
    addInitBind: function addInitBind(e) {
      _init.bind.push(e);
    },
    addInitUnBind: function addInitUnBind(e) {
      _init.unbind.push(e);
    },
    addInitCache: function addInitCache(e) {
      _init.caches.push(e);
    },
    addInitNode: function addInitNode(e) {
      _init.nodes.push(e);
    },
    addInitProxy: function addInitProxy(e, t) {
      t ? _init.proxys.splice(0, 0, e) : _init.proxys.push(e);
    },
    addInitRoot: function addInitRoot(e) {
      _init.roots.push(e);
    },
    addNodesData: function addNodesData(e, t, n, o) {
      var a,
          r = data.nodeChildren(e, t);
      r ? n >= r.length && (n = -1) : (r = data.nodeChildren(e, t, []), n = -1), 0 < r.length && 0 === n ? (r[0].isFirstNode = !1, view.setNodeLineIcos(e, r[0])) : 0 < r.length && n < 0 && (r[r.length - 1].isLastNode = !1, view.setNodeLineIcos(e, r[r.length - 1])), data.nodeIsParent(e, t, !0), n < 0 ? data.nodeChildren(e, t, r.concat(o)) : (a = [n, 0].concat(o), r.splice.apply(r, a));
    },
    addSelectedNode: function addSelectedNode(e, t) {
      var n = data.getRoot(e);
      data.isSelectedNode(e, t) || n.curSelectedList.push(t);
    },
    addCreatedNode: function addCreatedNode(e, t) {
      (e.callback.onNodeCreated || e.view.addDiyDom) && data.getRoot(e).createdNodes.push(t);
    },
    addZTreeTools: function addZTreeTools(e) {
      _init.zTreeTools.push(e);
    },
    exSetting: function exSetting(e) {
      _$.extend(!0, _setting, e);
    },
    fixPIdKeyValue: function fixPIdKeyValue(e, t) {
      e.data.simpleData.enable && (t[e.data.simpleData.pIdKey] = t.parentTId ? t.getParentNode()[e.data.simpleData.idKey] : e.data.simpleData.rootPId);
    },
    getAfterA: function getAfterA(e, t, n) {
      for (var o = 0, a = _init.afterA.length; o < a; o++) {
        _init.afterA[o].apply(this, arguments);
      }
    },
    getBeforeA: function getBeforeA(e, t, n) {
      for (var o = 0, a = _init.beforeA.length; o < a; o++) {
        _init.beforeA[o].apply(this, arguments);
      }
    },
    getInnerAfterA: function getInnerAfterA(e, t, n) {
      for (var o = 0, a = _init.innerAfterA.length; o < a; o++) {
        _init.innerAfterA[o].apply(this, arguments);
      }
    },
    getInnerBeforeA: function getInnerBeforeA(e, t, n) {
      for (var o = 0, a = _init.innerBeforeA.length; o < a; o++) {
        _init.innerBeforeA[o].apply(this, arguments);
      }
    },
    getCache: function getCache(e) {
      return caches[e.treeId];
    },
    getNodeIndex: function getNodeIndex(e, t) {
      if (!t) return null;
      for (var n = t.parentTId ? t.getParentNode() : data.getRoot(e), o = data.nodeChildren(e, n), a = 0, r = o.length - 1; a <= r; a++) {
        if (o[a] === t) return a;
      }return -1;
    },
    getNextNode: function getNextNode(e, t) {
      if (!t) return null;
      for (var n = t.parentTId ? t.getParentNode() : data.getRoot(e), o = data.nodeChildren(e, n), a = 0, r = o.length - 1; a <= r; a++) {
        if (o[a] === t) return a == r ? null : o[a + 1];
      }return null;
    },
    getNodeByParam: function getNodeByParam(e, t, n, o) {
      if (!t || !n) return null;
      for (var a = 0, r = t.length; a < r; a++) {
        var d = t[a];
        if (d[n] == o) return t[a];
        var i = data.nodeChildren(e, d),
            s = data.getNodeByParam(e, i, n, o);
        if (s) return s;
      }
      return null;
    },
    getNodeCache: function getNodeCache(e, t) {
      if (!t) return null;
      var n = caches[e.treeId].nodes[data.getNodeCacheId(t)];
      return n || null;
    },
    getNodePath: function getNodePath(e, t) {
      return t ? ((n = t.parentTId ? t.getParentNode().getPath() : []) && n.push(t), n) : null;
      var n;
    },
    getNodes: function getNodes(e) {
      return data.nodeChildren(e, data.getRoot(e));
    },
    getNodesByParam: function getNodesByParam(e, t, n, o) {
      if (!t || !n) return [];
      for (var a = [], r = 0, d = t.length; r < d; r++) {
        var i = t[r];
        i[n] == o && a.push(i);
        var s = data.nodeChildren(e, i);
        a = a.concat(data.getNodesByParam(e, s, n, o));
      }
      return a;
    },
    getNodesByParamFuzzy: function getNodesByParamFuzzy(e, t, n, o) {
      if (!t || !n) return [];
      var a = [];
      o = o.toLowerCase();
      for (var r = 0, d = t.length; r < d; r++) {
        var i = t[r];
        "string" == typeof i[n] && -1 < t[r][n].toLowerCase().indexOf(o) && a.push(i);
        var s = data.nodeChildren(e, i);
        a = a.concat(data.getNodesByParamFuzzy(e, s, n, o));
      }
      return a;
    },
    getNodesByFilter: function getNodesByFilter(e, t, n, o, a) {
      if (!t) return o ? null : [];
      for (var r = o ? null : [], d = 0, i = t.length; d < i; d++) {
        var s = t[d];
        if (tools.apply(n, [s, a], !1)) {
          if (o) return s;
          r.push(s);
        }
        var l = data.nodeChildren(e, s),
            c = data.getNodesByFilter(e, l, n, o, a);
        if (o && c) return c;
        r = o ? c : r.concat(c);
      }
      return r;
    },
    getPreNode: function getPreNode(e, t) {
      if (!t) return null;
      for (var n = t.parentTId ? t.getParentNode() : data.getRoot(e), o = data.nodeChildren(e, n), a = 0, r = o.length; a < r; a++) {
        if (o[a] === t) return 0 == a ? null : o[a - 1];
      }return null;
    },
    getRoot: function getRoot(e) {
      return e ? roots[e.treeId] : null;
    },
    getRoots: function getRoots() {
      return roots;
    },
    getSetting: function getSetting(e) {
      return settings[e];
    },
    getSettings: function getSettings() {
      return settings;
    },
    getZTreeTools: function getZTreeTools(e) {
      var t = this.getRoot(this.getSetting(e));
      return t ? t.treeTools : null;
    },
    initCache: function initCache(e) {
      for (var t = 0, n = _init.caches.length; t < n; t++) {
        _init.caches[t].apply(this, arguments);
      }
    },
    initNode: function initNode(e, t, n, o, a, r) {
      for (var d = 0, i = _init.nodes.length; d < i; d++) {
        _init.nodes[d].apply(this, arguments);
      }
    },
    initRoot: function initRoot(e) {
      for (var t = 0, n = _init.roots.length; t < n; t++) {
        _init.roots[t].apply(this, arguments);
      }
    },
    isSelectedNode: function isSelectedNode(e, t) {
      for (var n = data.getRoot(e), o = 0, a = n.curSelectedList.length; o < a; o++) {
        if (t === n.curSelectedList[o]) return !0;
      }return !1;
    },
    nodeChildren: function nodeChildren(e, t, n) {
      if (!t) return null;
      var o = e.data.key.children;
      return void 0 !== n && (t[o] = n), t[o];
    },
    nodeIsParent: function nodeIsParent(e, t, n) {
      if (!t) return !1;
      var o = e.data.key.isParent;
      return void 0 !== n ? ("string" == typeof n && (n = tools.eqs(n, "true")), n = !!n, t[o] = n) : "string" == typeof t[o] ? t[o] = tools.eqs(t[o], "true") : t[o] = !!t[o], t[o];
    },
    nodeName: function nodeName(e, t, n) {
      var o = e.data.key.name;
      void 0 !== n && (t[o] = n);
      var a = "" + t[o];
      return "function" == typeof e.data.render.name ? e.data.render.name.call(this, a, t) : a;
    },
    nodeTitle: function nodeTitle(e, t) {
      var n = "" + t["" === e.data.key.title ? e.data.key.name : e.data.key.title];
      return "function" == typeof e.data.render.title ? e.data.render.title.call(this, n, t) : n;
    },
    removeNodeCache: function removeNodeCache(e, t) {
      var n = data.nodeChildren(e, t);
      if (n) for (var o = 0, a = n.length; o < a; o++) {
        data.removeNodeCache(e, n[o]);
      }data.getCache(e).nodes[data.getNodeCacheId(t.tId)] = null;
    },
    removeSelectedNode: function removeSelectedNode(e, t) {
      for (var n = data.getRoot(e), o = 0, a = n.curSelectedList.length; o < a; o++) {
        t !== n.curSelectedList[o] && data.getNodeCache(e, n.curSelectedList[o].tId) || (n.curSelectedList.splice(o, 1), e.treeObj.trigger(consts.event.UNSELECTED, [e.treeId, t]), o--, a--);
      }
    },
    setCache: function setCache(e, t) {
      caches[e.treeId] = t;
    },
    setRoot: function setRoot(e, t) {
      roots[e.treeId] = t;
    },
    setZTreeTools: function setZTreeTools(e, t) {
      for (var n = 0, o = _init.zTreeTools.length; n < o; n++) {
        _init.zTreeTools[n].apply(this, arguments);
      }
    },
    transformToArrayFormat: function transformToArrayFormat(n, e) {
      if (!e) return [];
      var o = [];
      if (tools.isArray(e)) for (var t = 0, a = e.length; t < a; t++) {
        r(e[t]);
      } else r(e);
      return o;

      function r(e) {
        o.push(e);
        var t = data.nodeChildren(n, e);
        t && (o = o.concat(data.transformToArrayFormat(n, t)));
      }
    },
    transformTozTreeFormat: function transformTozTreeFormat(e, t) {
      var n,
          o,
          a = e.data.simpleData.idKey,
          r = e.data.simpleData.pIdKey;
      if (!a || "" == a || !t) return [];
      if (tools.isArray(t)) {
        var d = [],
            i = {};
        for (n = 0, o = t.length; n < o; n++) {
          i[t[n][a]] = t[n];
        }for (n = 0, o = t.length; n < o; n++) {
          var s = i[t[n][r]];
          if (s && t[n][a] != t[n][r]) {
            var l = data.nodeChildren(e, s);
            (l = l || data.nodeChildren(e, s, [])).push(t[n]);
          } else d.push(t[n]);
        }
        return d;
      }
      return [t];
    }
  },
      event = {
    bindEvent: function bindEvent(e) {
      for (var t = 0, n = _init.bind.length; t < n; t++) {
        _init.bind[t].apply(this, arguments);
      }
    },
    unbindEvent: function unbindEvent(e) {
      for (var t = 0, n = _init.unbind.length; t < n; t++) {
        _init.unbind[t].apply(this, arguments);
      }
    },
    bindTree: function bindTree(e) {
      var t = {
        treeId: e.treeId
      },
          n = e.treeObj;
      e.view.txtSelectedEnable || n.bind("selectstart", handler.onSelectStart).css({
        "-moz-user-select": "-moz-none"
      }), n.bind("click", t, event.proxy), n.bind("dblclick", t, event.proxy), n.bind("mouseover", t, event.proxy), n.bind("mouseout", t, event.proxy), n.bind("mousedown", t, event.proxy), n.bind("mouseup", t, event.proxy), n.bind("contextmenu", t, event.proxy);
    },
    unbindTree: function unbindTree(e) {
      e.treeObj.unbind("selectstart", handler.onSelectStart).unbind("click", event.proxy).unbind("dblclick", event.proxy).unbind("mouseover", event.proxy).unbind("mouseout", event.proxy).unbind("mousedown", event.proxy).unbind("mouseup", event.proxy).unbind("contextmenu", event.proxy);
    },
    doProxy: function doProxy(e) {
      for (var t = [], n = 0, o = _init.proxys.length; n < o; n++) {
        var a = _init.proxys[n].apply(this, arguments);
        if (t.push(a), a.stop) break;
      }
      return t;
    },
    proxy: function proxy(e) {
      var t = data.getSetting(e.data.treeId);
      if (!tools.uCanDo(t, e)) return !0;
      for (var n = event.doProxy(e), o = !0, a = 0, r = n.length; a < r; a++) {
        var d = n[a];
        d.nodeEventCallback && (o = d.nodeEventCallback.apply(d, [e, d.node]) && o), d.treeEventCallback && (o = d.treeEventCallback.apply(d, [e, d.node]) && o);
      }
      return o;
    }
  },
      handler = {
    onSwitchNode: function onSwitchNode(e, t) {
      var n = data.getSetting(e.data.treeId);
      if (t.open) {
        if (0 == tools.apply(n.callback.beforeCollapse, [n.treeId, t], !0)) return !0;
        data.getRoot(n).expandTriggerFlag = !0, view.switchNode(n, t);
      } else {
        if (0 == tools.apply(n.callback.beforeExpand, [n.treeId, t], !0)) return !0;
        data.getRoot(n).expandTriggerFlag = !0, view.switchNode(n, t);
      }
      return !0;
    },
    onClickNode: function onClickNode(e, t) {
      var n = data.getSetting(e.data.treeId),
          o = n.view.autoCancelSelected && (e.ctrlKey || e.metaKey) && data.isSelectedNode(n, t) ? 0 : n.view.autoCancelSelected && (e.ctrlKey || e.metaKey) && n.view.selectedMulti ? 2 : 1;
      return 0 == tools.apply(n.callback.beforeClick, [n.treeId, t, o], !0) || (0 == o ? view.cancelPreSelectedNode(n, t) : view.selectNode(n, t, 2 == o), n.treeObj.trigger(consts.event.CLICK, [e, n.treeId, t, o])), !0;
    },
    onZTreeMousedown: function onZTreeMousedown(e, t) {
      var n = data.getSetting(e.data.treeId);
      return tools.apply(n.callback.beforeMouseDown, [n.treeId, t], !0) && tools.apply(n.callback.onMouseDown, [e, n.treeId, t]), !0;
    },
    onZTreeMouseup: function onZTreeMouseup(e, t) {
      var n = data.getSetting(e.data.treeId);
      return tools.apply(n.callback.beforeMouseUp, [n.treeId, t], !0) && tools.apply(n.callback.onMouseUp, [e, n.treeId, t]), !0;
    },
    onZTreeDblclick: function onZTreeDblclick(e, t) {
      var n = data.getSetting(e.data.treeId);
      return tools.apply(n.callback.beforeDblClick, [n.treeId, t], !0) && tools.apply(n.callback.onDblClick, [e, n.treeId, t]), !0;
    },
    onZTreeContextmenu: function onZTreeContextmenu(e, t) {
      var n = data.getSetting(e.data.treeId);
      return tools.apply(n.callback.beforeRightClick, [n.treeId, t], !0) && tools.apply(n.callback.onRightClick, [e, n.treeId, t]), "function" != typeof n.callback.onRightClick;
    },
    onSelectStart: function onSelectStart(e) {
      var t = e.originalEvent.srcElement.nodeName.toLowerCase();
      return "input" === t || "textarea" === t;
    }
  },
      tools = {
    apply: function apply(e, t, n) {
      return "function" == typeof e ? e.apply(zt, t || []) : n;
    },
    canAsync: function canAsync(e, t) {
      var n = data.nodeChildren(e, t),
          o = data.nodeIsParent(e, t);
      return e.async.enable && t && o && !(t.zAsync || n && 0 < n.length);
    },
    clone: function clone(e) {
      if (null === e) return null;
      var t = tools.isArray(e) ? [] : {};
      for (var n in e) {
        t[n] = e[n] instanceof Date ? new Date(e[n].getTime()) : "object" == __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_typeof___default()(e[n]) ? tools.clone(e[n]) : e[n];
      }return t;
    },
    eqs: function eqs(e, t) {
      return e.toLowerCase() === t.toLowerCase();
    },
    isArray: function isArray(e) {
      return "[object Array]" === Object.prototype.toString.apply(e);
    },
    isElement: function isElement(e) {
      return "object" == (typeof HTMLElement === "undefined" ? "undefined" : __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_typeof___default()(HTMLElement)) ? e instanceof HTMLElement : e && "object" == (typeof e === "undefined" ? "undefined" : __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_typeof___default()(e)) && null !== e && 1 === e.nodeType && "string" == typeof e.nodeName;
    },
    $: function $(e, t, n) {
      return t && "string" != typeof t && (n = t, t = ""), "string" == typeof e ? _$(e, n ? n.treeObj.get(0).ownerDocument : null) : _$("#" + e.tId + t, n ? n.treeObj : null);
    },
    getMDom: function getMDom(e, t, n) {
      if (!t) return null;
      for (; t && t.id !== e.treeId;) {
        for (var o = 0, a = n.length; t.tagName && o < a; o++) {
          if (tools.eqs(t.tagName, n[o].tagName) && null !== t.getAttribute(n[o].attrName)) return t;
        }t = t.parentNode;
      }
      return null;
    },
    getNodeMainDom: function getNodeMainDom(e) {
      return _$(e).parent("li").get(0) || _$(e).parentsUntil("li").parent().get(0);
    },
    isChildOrSelf: function isChildOrSelf(e, t) {
      return 0 < _$(e).closest("#" + t).length;
    },
    uCanDo: function uCanDo(e, t) {
      return !0;
    }
  },
      view = {
    addNodes: function addNodes(e, t, n, o, a) {
      var r = data.nodeIsParent(e, t);
      if (!e.data.keep.leaf || !t || r) if (tools.isArray(o) || (o = [o]), e.data.simpleData.enable && (o = data.transformTozTreeFormat(e, o)), t) {
        var d = $$(t, consts.id.SWITCH, e),
            i = $$(t, consts.id.ICON, e),
            s = $$(t, consts.id.UL, e);
        t.open || (view.replaceSwitchClass(t, d, consts.folder.CLOSE), view.replaceIcoClass(t, i, consts.folder.CLOSE), t.open = !1, s.css({
          display: "none"
        })), data.addNodesData(e, t, n, o), view.createNodes(e, t.level + 1, o, t, n), a || view.expandCollapseParentNode(e, t, !0);
      } else data.addNodesData(e, data.getRoot(e), n, o), view.createNodes(e, 0, o, null, n);
    },
    appendNodes: function appendNodes(e, t, n, o, a, r, d) {
      if (!n) return [];
      var i,
          s,
          l = [],
          c = o || data.getRoot(e),
          u = data.nodeChildren(e, c);
      (!u || a >= u.length - n.length) && (a = -1);
      for (var p = 0, f = n.length; p < f; p++) {
        var g = n[p];
        r && (i = (0 === a || u.length == n.length) && 0 == p, s = a < 0 && p == n.length - 1, data.initNode(e, t, g, o, i, s, d), data.addNodeCache(e, g));
        var v = data.nodeIsParent(e, g),
            N = [],
            h = data.nodeChildren(e, g);
        h && 0 < h.length && (N = view.appendNodes(e, t + 1, h, g, -1, r, d && g.open)), d && (view.makeDOMNodeMainBefore(l, e, g), view.makeDOMNodeLine(l, e, g), data.getBeforeA(e, g, l), view.makeDOMNodeNameBefore(l, e, g), data.getInnerBeforeA(e, g, l), view.makeDOMNodeIcon(l, e, g), data.getInnerAfterA(e, g, l), view.makeDOMNodeNameAfter(l, e, g), data.getAfterA(e, g, l), v && g.open && view.makeUlHtml(e, g, l, N.join("")), view.makeDOMNodeMainAfter(l, e, g), data.addCreatedNode(e, g));
      }
      return l;
    },
    appendParentULDom: function appendParentULDom(e, t) {
      var n = [],
          o = $$(t, e);
      !o.get(0) && t.parentTId && (view.appendParentULDom(e, t.getParentNode()), o = $$(t, e));
      var a = $$(t, consts.id.UL, e);
      a.get(0) && a.remove();
      var r = data.nodeChildren(e, t),
          d = view.appendNodes(e, t.level + 1, r, t, -1, !1, !0);
      view.makeUlHtml(e, t, n, d.join("")), o.append(n.join(""));
    },
    asyncNode: function asyncNode(setting, node, isSilent, callback) {
      var i,
          l,
          isParent = data.nodeIsParent(setting, node);
      if (node && !isParent) return tools.apply(callback), !1;
      if (node && node.isAjaxing) return !1;
      if (0 == tools.apply(setting.callback.beforeAsync, [setting.treeId, node], !0)) return tools.apply(callback), !1;
      if (node) {
        node.isAjaxing = !0;
        var icoObj = $$(node, consts.id.ICON, setting);
        icoObj.attr({
          style: "",
          class: consts.className.BUTTON + " " + consts.className.ICO_LOADING
        });
      }
      var tmpParam = {},
          autoParam = tools.apply(setting.async.autoParam, [setting.treeId, node], setting.async.autoParam);
      for (i = 0, l = autoParam.length; node && i < l; i++) {
        var pKey = autoParam[i].split("="),
            spKey = pKey;
        1 < pKey.length && (spKey = pKey[1], pKey = pKey[0]), tmpParam[spKey] = node[pKey];
      }
      var otherParam = tools.apply(setting.async.otherParam, [setting.treeId, node], setting.async.otherParam);
      if (tools.isArray(otherParam)) for (i = 0, l = otherParam.length; i < l; i += 2) {
        tmpParam[otherParam[i]] = otherParam[i + 1];
      } else for (var p in otherParam) {
        tmpParam[p] = otherParam[p];
      }var _tmpV = data.getRoot(setting)._ver;
      return _$.ajax({
        contentType: setting.async.contentType,
        cache: !1,
        type: setting.async.type,
        url: tools.apply(setting.async.url, [setting.treeId, node], setting.async.url),
        data: -1 < setting.async.contentType.indexOf("application/json") ? __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_json_stringify___default()(tmpParam) : tmpParam,
        dataType: setting.async.dataType,
        headers: setting.async.headers,
        xhrFields: setting.async.xhrFields,
        success: function success(msg) {
          if (_tmpV == data.getRoot(setting)._ver) {
            var newNodes = [];
            try {
              newNodes = msg && 0 != msg.length ? "string" == typeof msg ? eval("(" + msg + ")") : msg : [];
            } catch (e) {
              newNodes = msg;
            }
            node && (node.isAjaxing = null, node.zAsync = !0), view.setNodeLineIcos(setting, node), newNodes && "" !== newNodes ? (newNodes = tools.apply(setting.async.dataFilter, [setting.treeId, node, newNodes], newNodes), view.addNodes(setting, node, -1, newNodes ? tools.clone(newNodes) : [], !!isSilent)) : view.addNodes(setting, node, -1, [], !!isSilent), setting.treeObj.trigger(consts.event.ASYNC_SUCCESS, [setting.treeId, node, msg]), tools.apply(callback);
          }
        },
        error: function error(e, t, n) {
          _tmpV == data.getRoot(setting)._ver && (node && (node.isAjaxing = null), view.setNodeLineIcos(setting, node), setting.treeObj.trigger(consts.event.ASYNC_ERROR, [setting.treeId, node, e, t, n]));
        }
      }), !0;
    },
    cancelPreSelectedNode: function cancelPreSelectedNode(e, t, n) {
      var o,
          a,
          r = data.getRoot(e).curSelectedList;
      for (o = r.length - 1; 0 <= o; o--) {
        if (t === (a = r[o]) || !t && (!n || n !== a)) {
          if ($$(a, consts.id.A, e).removeClass(consts.node.CURSELECTED), t) {
            data.removeSelectedNode(e, t);
            break;
          }
          r.splice(o, 1), e.treeObj.trigger(consts.event.UNSELECTED, [e.treeId, a]);
        }
      }
    },
    createNodeCallback: function createNodeCallback(e) {
      if (e.callback.onNodeCreated || e.view.addDiyDom) for (var t = data.getRoot(e); 0 < t.createdNodes.length;) {
        var n = t.createdNodes.shift();
        tools.apply(e.view.addDiyDom, [e.treeId, n]), e.callback.onNodeCreated && e.treeObj.trigger(consts.event.NODECREATED, [e.treeId, n]);
      }
    },
    createNodes: function createNodes(e, t, n, o, a) {
      if (n && 0 != n.length) {
        var r = data.getRoot(e),
            d = !o || o.open || !!$$(data.nodeChildren(e, o)[0], e).get(0);
        r.createdNodes = [];
        var i,
            s,
            l = view.appendNodes(e, t, n, o, a, !0, d);
        if (o) {
          var c = $$(o, consts.id.UL, e);
          c.get(0) && (i = c);
        } else i = e.treeObj;
        i && (0 <= a && (s = i.children()[a]), 0 <= a && s ? _$(s).before(l.join("")) : i.append(l.join(""))), view.createNodeCallback(e);
      }
    },
    destroy: function destroy(e) {
      e && (data.initCache(e), data.initRoot(e), event.unbindTree(e), event.unbindEvent(e), e.treeObj.empty(), delete settings[e.treeId]);
    },
    expandCollapseNode: function expandCollapseNode(e, t, n, o, a) {
      var r,
          d = data.getRoot(e);
      if (t) {
        var i = data.nodeChildren(e, t),
            s = data.nodeIsParent(e, t);
        if (d.expandTriggerFlag && (r = a, a = function a() {
          r && r(), t.open ? e.treeObj.trigger(consts.event.EXPAND, [e.treeId, t]) : e.treeObj.trigger(consts.event.COLLAPSE, [e.treeId, t]);
        }, d.expandTriggerFlag = !1), !t.open && s && (!$$(t, consts.id.UL, e).get(0) || i && 0 < i.length && !$$(i[0], e).get(0)) && (view.appendParentULDom(e, t), view.createNodeCallback(e)), t.open != n) {
          var l = $$(t, consts.id.UL, e),
              c = $$(t, consts.id.SWITCH, e),
              u = $$(t, consts.id.ICON, e);
          s ? (t.open = !t.open, t.iconOpen && t.iconClose && u.attr("style", view.makeNodeIcoStyle(e, t)), t.open ? (view.replaceSwitchClass(t, c, consts.folder.OPEN), view.replaceIcoClass(t, u, consts.folder.OPEN), 0 == o || "" == e.view.expandSpeed ? (l.show(), tools.apply(a, [])) : i && 0 < i.length ? l.slideDown(e.view.expandSpeed, a) : (l.show(), tools.apply(a, []))) : (view.replaceSwitchClass(t, c, consts.folder.CLOSE), view.replaceIcoClass(t, u, consts.folder.CLOSE), 0 != o && "" != e.view.expandSpeed && i && 0 < i.length ? l.slideUp(e.view.expandSpeed, a) : (l.hide(), tools.apply(a, [])))) : tools.apply(a, []);
        } else tools.apply(a, []);
      } else tools.apply(a, []);
    },
    expandCollapseParentNode: function expandCollapseParentNode(e, t, n, o, a) {
      t && (t.parentTId ? (view.expandCollapseNode(e, t, n, o), t.parentTId && view.expandCollapseParentNode(e, t.getParentNode(), n, o, a)) : view.expandCollapseNode(e, t, n, o, a));
    },
    expandCollapseSonNode: function expandCollapseSonNode(e, t, n, o, a) {
      var r = data.getRoot(e),
          d = t ? data.nodeChildren(e, t) : data.nodeChildren(e, r),
          i = !t && o,
          s = data.getRoot(e).expandTriggerFlag;
      if (data.getRoot(e).expandTriggerFlag = !1, d) for (var l = 0, c = d.length; l < c; l++) {
        d[l] && view.expandCollapseSonNode(e, d[l], n, i);
      }data.getRoot(e).expandTriggerFlag = s, view.expandCollapseNode(e, t, n, o, a);
    },
    isSelectedNode: function isSelectedNode(e, t) {
      if (!t) return !1;
      var n,
          o = data.getRoot(e).curSelectedList;
      for (n = o.length - 1; 0 <= n; n--) {
        if (t === o[n]) return !0;
      }return !1;
    },
    makeDOMNodeIcon: function makeDOMNodeIcon(e, t, n) {
      var o = data.nodeName(t, n),
          a = t.view.nameIsHTML ? o : o.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
      e.push("<span id='", n.tId, consts.id.ICON, "' title='' treeNode", consts.id.ICON, " class='", view.makeNodeIcoClass(t, n), "' style='", view.makeNodeIcoStyle(t, n), "'></span><span id='", n.tId, consts.id.SPAN, "' class='", consts.className.NAME, "'>", a, "</span>");
    },
    makeDOMNodeLine: function makeDOMNodeLine(e, t, n) {
      e.push("<span id='", n.tId, consts.id.SWITCH, "' title='' class='", view.makeNodeLineClass(t, n), "' treeNode", consts.id.SWITCH, "></span>");
    },
    makeDOMNodeMainAfter: function makeDOMNodeMainAfter(e, t, n) {
      e.push("</li>");
    },
    makeDOMNodeMainBefore: function makeDOMNodeMainBefore(e, t, n) {
      e.push("<li id='", n.tId, "' class='", consts.className.LEVEL, n.level, "' tabindex='0' hidefocus='true' treenode>");
    },
    makeDOMNodeNameAfter: function makeDOMNodeNameAfter(e, t, n) {
      e.push("</a>");
    },
    makeDOMNodeNameBefore: function makeDOMNodeNameBefore(e, t, n) {
      var o = data.nodeTitle(t, n),
          a = view.makeNodeUrl(t, n),
          r = view.makeNodeFontCss(t, n),
          d = view.makeNodeClasses(t, n),
          i = [];
      for (var s in r) {
        i.push(s, ":", r[s], ";");
      }e.push("<a id='", n.tId, consts.id.A, "' class='", consts.className.LEVEL, n.level, d.add ? " " + d.add.join(" ") : "", "' treeNode", consts.id.A, n.click ? ' onclick="' + n.click + '"' : "", null != a && 0 < a.length ? " href='" + a + "'" : "", " target='", view.makeNodeTarget(n), "' style='", i.join(""), "'"), tools.apply(t.view.showTitle, [t.treeId, n], t.view.showTitle) && o && e.push("title='", o.replace(/'/g, "&#39;").replace(/</g, "&lt;").replace(/>/g, "&gt;"), "'"), e.push(">");
    },
    makeNodeFontCss: function makeNodeFontCss(e, t) {
      var n = tools.apply(e.view.fontCss, [e.treeId, t], e.view.fontCss);
      return n && "function" != typeof n ? n : {};
    },
    makeNodeClasses: function makeNodeClasses(e, t) {
      var n = tools.apply(e.view.nodeClasses, [e.treeId, t], e.view.nodeClasses);
      return n && "function" != typeof n ? n : {
        add: [],
        remove: []
      };
    },
    makeNodeIcoClass: function makeNodeIcoClass(e, t) {
      var n = ["ico"];
      if (!t.isAjaxing) {
        var o = data.nodeIsParent(e, t);
        n[0] = (t.iconSkin ? t.iconSkin + "_" : "") + n[0], o ? n.push(t.open ? consts.folder.OPEN : consts.folder.CLOSE) : n.push(consts.folder.DOCU);
      }
      return consts.className.BUTTON + " " + n.join("_");
    },
    makeNodeIcoStyle: function makeNodeIcoStyle(e, t) {
      var n = [];
      if (!t.isAjaxing) {
        var o = data.nodeIsParent(e, t) && t.iconOpen && t.iconClose ? t.open ? t.iconOpen : t.iconClose : t[e.data.key.icon];
        o && n.push("background:url(", o, ") 0 0 no-repeat;"), 0 != e.view.showIcon && tools.apply(e.view.showIcon, [e.treeId, t], !0) || n.push("display:none;");
      }
      return n.join("");
    },
    makeNodeLineClass: function makeNodeLineClass(e, t) {
      var n = [];
      return e.view.showLine ? 0 == t.level && t.isFirstNode && t.isLastNode ? n.push(consts.line.ROOT) : 0 == t.level && t.isFirstNode ? n.push(consts.line.ROOTS) : t.isLastNode ? n.push(consts.line.BOTTOM) : n.push(consts.line.CENTER) : n.push(consts.line.NOLINE), data.nodeIsParent(e, t) ? n.push(t.open ? consts.folder.OPEN : consts.folder.CLOSE) : n.push(consts.folder.DOCU), view.makeNodeLineClassEx(t) + n.join("_");
    },
    makeNodeLineClassEx: function makeNodeLineClassEx(e) {
      return consts.className.BUTTON + " " + consts.className.LEVEL + e.level + " " + consts.className.SWITCH + " ";
    },
    makeNodeTarget: function makeNodeTarget(e) {
      return e.target || "_blank";
    },
    makeNodeUrl: function makeNodeUrl(e, t) {
      var n = e.data.key.url;
      return t[n] ? t[n] : null;
    },
    makeUlHtml: function makeUlHtml(e, t, n, o) {
      n.push("<ul id='", t.tId, consts.id.UL, "' class='", consts.className.LEVEL, t.level, " ", view.makeUlLineClass(e, t), "' style='display:", t.open ? "block" : "none", "'>"), n.push(o), n.push("</ul>");
    },
    makeUlLineClass: function makeUlLineClass(e, t) {
      return e.view.showLine && !t.isLastNode ? consts.line.LINE : "";
    },
    removeChildNodes: function removeChildNodes(e, t) {
      if (t) {
        var n = data.nodeChildren(e, t);
        if (n) {
          for (var o = 0, a = n.length; o < a; o++) {
            data.removeNodeCache(e, n[o]);
          }if (data.removeSelectedNode(e), delete t[e.data.key.children], e.data.keep.parent) $$(t, consts.id.UL, e).empty();else {
            data.nodeIsParent(e, t, !1), t.open = !1;
            var r = $$(t, consts.id.SWITCH, e),
                d = $$(t, consts.id.ICON, e);
            view.replaceSwitchClass(t, r, consts.folder.DOCU), view.replaceIcoClass(t, d, consts.folder.DOCU), $$(t, consts.id.UL, e).remove();
          }
        }
      }
    },
    scrollIntoView: function scrollIntoView(e, t) {
      if (t) if ("undefined" != typeof Element && "undefined" != typeof HTMLElement) Element.prototype.scrollIntoViewIfNeeded || (Element.prototype.scrollIntoViewIfNeeded = function (n) {
        "use strict";

        function e(e, t) {
          return {
            start: e,
            length: t,
            end: e + t
          };
        }

        function t(e, t) {
          return !1 === n || t.start < e.end && e.start < t.end ? Math.max(e.end - t.length, Math.min(t.start, e.start)) : (e.start + e.end - t.length) / 2;
        }

        function a(n, o) {
          return {
            x: n,
            y: o,
            translate: function translate(e, t) {
              return a(n + e, o + t);
            }
          };
        }

        function o(e, t) {
          for (; e;) {
            t = t.translate(e.offsetLeft, e.offsetTop), e = e.offsetParent;
          }return t;
        }
        for (var r, d = o(this, a(0, 0)), i = a(this.offsetWidth, this.offsetHeight), s = this.parentNode; s instanceof HTMLElement;) {
          r = o(s, a(s.clientLeft, s.clientTop)), s.scrollLeft = t(e(d.x - r.x, i.x), e(s.scrollLeft, s.clientWidth)), s.scrollTop = t(e(d.y - r.y, i.y), e(s.scrollTop, s.clientHeight)), d = d.translate(-s.scrollLeft, -s.scrollTop), s = s.parentNode;
        }
      }), t.scrollIntoViewIfNeeded();else {
        var n = e.treeObj.get(0).getBoundingClientRect(),
            o = t.getBoundingClientRect();
        (o.top < n.top || o.bottom > n.bottom || o.right > n.right || o.left < n.left) && t.scrollIntoView();
      }
    },
    setFirstNode: function setFirstNode(e, t) {
      var n = data.nodeChildren(e, t);
      0 < n.length && (n[0].isFirstNode = !0);
    },
    setLastNode: function setLastNode(e, t) {
      var n = data.nodeChildren(e, t);
      0 < n.length && (n[n.length - 1].isLastNode = !0);
    },
    removeNode: function removeNode(e, t) {
      var n = data.getRoot(e),
          o = t.parentTId ? t.getParentNode() : n;
      if (t.isFirstNode = !1, t.isLastNode = !1, t.getPreNode = function () {
        return null;
      }, t.getNextNode = function () {
        return null;
      }, data.getNodeCache(e, t.tId)) {
        $$(t, e).remove(), data.removeNodeCache(e, t), data.removeSelectedNode(e, t);
        for (var a = data.nodeChildren(e, o), r = 0, d = a.length; r < d; r++) {
          if (a[r].tId == t.tId) {
            a.splice(r, 1);
            break;
          }
        }view.setFirstNode(e, o), view.setLastNode(e, o);
        var i,
            s,
            l,
            c = a.length;
        if (e.data.keep.parent || 0 != c) {
          if (e.view.showLine && 0 < c) {
            var u = a[c - 1];
            if (i = $$(u, consts.id.UL, e), s = $$(u, consts.id.SWITCH, e), l = $$(u, consts.id.ICON, e), o == n) {
              if (1 == a.length) view.replaceSwitchClass(u, s, consts.line.ROOT);else {
                var p = $$(a[0], consts.id.SWITCH, e);
                view.replaceSwitchClass(a[0], p, consts.line.ROOTS), view.replaceSwitchClass(u, s, consts.line.BOTTOM);
              }
            } else view.replaceSwitchClass(u, s, consts.line.BOTTOM);
            i.removeClass(consts.line.LINE);
          }
        } else data.nodeIsParent(e, o, !1), o.open = !1, delete o[e.data.key.children], i = $$(o, consts.id.UL, e), s = $$(o, consts.id.SWITCH, e), l = $$(o, consts.id.ICON, e), view.replaceSwitchClass(o, s, consts.folder.DOCU), view.replaceIcoClass(o, l, consts.folder.DOCU), i.css("display", "none");
      }
    },
    replaceIcoClass: function replaceIcoClass(e, t, n) {
      if (t && !e.isAjaxing) {
        var o = t.attr("class");
        if (null != o) {
          var a = o.split("_");
          switch (n) {
            case consts.folder.OPEN:
            case consts.folder.CLOSE:
            case consts.folder.DOCU:
              a[a.length - 1] = n;
          }
          t.attr("class", a.join("_"));
        }
      }
    },
    replaceSwitchClass: function replaceSwitchClass(e, t, n) {
      if (t) {
        var o = t.attr("class");
        if (null != o) {
          var a = o.split("_");
          switch (n) {
            case consts.line.ROOT:
            case consts.line.ROOTS:
            case consts.line.CENTER:
            case consts.line.BOTTOM:
            case consts.line.NOLINE:
              a[0] = view.makeNodeLineClassEx(e) + n;
              break;
            case consts.folder.OPEN:
            case consts.folder.CLOSE:
            case consts.folder.DOCU:
              a[1] = n;
          }
          t.attr("class", a.join("_")), n !== consts.folder.DOCU ? t.removeAttr("disabled") : t.attr("disabled", "disabled");
        }
      }
    },
    selectNode: function selectNode(e, t, n) {
      n || view.cancelPreSelectedNode(e, null, t), $$(t, consts.id.A, e).addClass(consts.node.CURSELECTED), data.addSelectedNode(e, t), e.treeObj.trigger(consts.event.SELECTED, [e.treeId, t]);
    },
    setNodeFontCss: function setNodeFontCss(e, t) {
      var n = $$(t, consts.id.A, e),
          o = view.makeNodeFontCss(e, t);
      o && n.css(o);
    },
    setNodeClasses: function setNodeClasses(e, t) {
      var n = $$(t, consts.id.A, e),
          o = view.makeNodeClasses(e, t);
      "add" in o && o.add.length && n.addClass(o.add.join(" ")), "remove" in o && o.remove.length && n.removeClass(o.remove.join(" "));
    },
    setNodeLineIcos: function setNodeLineIcos(e, t) {
      if (t) {
        var n = $$(t, consts.id.SWITCH, e),
            o = $$(t, consts.id.UL, e),
            a = $$(t, consts.id.ICON, e),
            r = view.makeUlLineClass(e, t);
        0 == r.length ? o.removeClass(consts.line.LINE) : o.addClass(r), n.attr("class", view.makeNodeLineClass(e, t)), data.nodeIsParent(e, t) ? n.removeAttr("disabled") : n.attr("disabled", "disabled"), a.removeAttr("style"), a.attr("style", view.makeNodeIcoStyle(e, t)), a.attr("class", view.makeNodeIcoClass(e, t));
      }
    },
    setNodeName: function setNodeName(e, t) {
      var n = data.nodeTitle(e, t),
          o = $$(t, consts.id.SPAN, e);
      o.empty(), e.view.nameIsHTML ? o.html(data.nodeName(e, t)) : o.text(data.nodeName(e, t)), tools.apply(e.view.showTitle, [e.treeId, t], e.view.showTitle) && $$(t, consts.id.A, e).attr("title", n || "");
    },
    setNodeTarget: function setNodeTarget(e, t) {
      $$(t, consts.id.A, e).attr("target", view.makeNodeTarget(t));
    },
    setNodeUrl: function setNodeUrl(e, t) {
      var n = $$(t, consts.id.A, e),
          o = view.makeNodeUrl(e, t);
      null == o || 0 == o.length ? n.removeAttr("href") : n.attr("href", o);
    },
    switchNode: function switchNode(e, t) {
      if (t.open || !tools.canAsync(e, t)) view.expandCollapseNode(e, t, !t.open);else if (e.async.enable) {
        if (!view.asyncNode(e, t)) return void view.expandCollapseNode(e, t, !t.open);
      } else t && view.expandCollapseNode(e, t, !t.open);
    }
  };
  _$.fn.zTree = {
    consts: _consts,
    _z: {
      tools: tools,
      view: view,
      event: event,
      data: data
    },
    getZTreeObj: function getZTreeObj(e) {
      var t = data.getZTreeTools(e);
      return t || null;
    },
    destroy: function destroy(e) {
      if (e && 0 < e.length) view.destroy(data.getSetting(e));else for (var t in settings) {
        view.destroy(settings[t]);
      }
    },
    init: function init(e, t, n) {
      var s = tools.clone(_setting);
      _$.extend(!0, s, t), s.treeId = e.attr("id"), s.treeObj = e, s.treeObj.empty(), settings[s.treeId] = s, void 0 === document.body.style.maxHeight && (s.view.expandSpeed = ""), data.initRoot(s);
      var o = data.getRoot(s);
      n = n ? tools.clone(tools.isArray(n) ? n : [n]) : [], s.data.simpleData.enable ? data.nodeChildren(s, o, data.transformTozTreeFormat(s, n)) : data.nodeChildren(s, o, n), data.initCache(s), event.unbindTree(s), event.bindTree(s), event.unbindEvent(s), event.bindEvent(s);
      var r = {
        setting: s,
        addNodes: function addNodes(e, t, n, o) {
          e = e || null;
          var a = data.nodeIsParent(s, e);
          if (e && !a && s.data.keep.leaf) return null;
          var r = parseInt(t, 10);
          if (t = isNaN(r) ? (o = !!n, n = t, -1) : r, !n) return null;
          var d = tools.clone(tools.isArray(n) ? n : [n]);

          function i() {
            view.addNodes(s, e, t, d, 1 == o);
          }
          return tools.canAsync(s, e) ? view.asyncNode(s, e, o, i) : i(), d;
        },
        cancelSelectedNode: function cancelSelectedNode(e) {
          view.cancelPreSelectedNode(s, e);
        },
        destroy: function destroy() {
          view.destroy(s);
        },
        expandAll: function expandAll(e) {
          return e = !!e, view.expandCollapseSonNode(s, null, e, !0), e;
        },
        expandNode: function expandNode(t, e, n, o, a) {
          return t && data.nodeIsParent(s, t) ? (!0 !== e && !1 !== e && (e = !t.open), (a = !!a) && e && 0 == tools.apply(s.callback.beforeExpand, [s.treeId, t], !0) || a && !e && 0 == tools.apply(s.callback.beforeCollapse, [s.treeId, t], !0) ? null : (e && t.parentTId && view.expandCollapseParentNode(s, t.getParentNode(), e, !1), e !== t.open || n ? (data.getRoot(s).expandTriggerFlag = a, !tools.canAsync(s, t) && n ? view.expandCollapseSonNode(s, t, e, !0, r) : (t.open = !e, view.switchNode(this.setting, t), r()), e) : null)) : null;

          function r() {
            var e = $$(t, s).get(0);
            e && !1 !== o && view.scrollIntoView(s, e);
          }
        },
        getNodes: function getNodes() {
          return data.getNodes(s);
        },
        getNodeByParam: function getNodeByParam(e, t, n) {
          return e ? data.getNodeByParam(s, n ? data.nodeChildren(s, n) : data.getNodes(s), e, t) : null;
        },
        getNodeByTId: function getNodeByTId(e) {
          return data.getNodeCache(s, e);
        },
        getNodesByParam: function getNodesByParam(e, t, n) {
          return e ? data.getNodesByParam(s, n ? data.nodeChildren(s, n) : data.getNodes(s), e, t) : null;
        },
        getNodesByParamFuzzy: function getNodesByParamFuzzy(e, t, n) {
          return e ? data.getNodesByParamFuzzy(s, n ? data.nodeChildren(s, n) : data.getNodes(s), e, t) : null;
        },
        getNodesByFilter: function getNodesByFilter(e, t, n, o) {
          return t = !!t, e && "function" == typeof e ? data.getNodesByFilter(s, n ? data.nodeChildren(s, n) : data.getNodes(s), e, t, o) : t ? null : [];
        },
        getNodeIndex: function getNodeIndex(e) {
          if (!e) return null;
          for (var t = e.parentTId ? e.getParentNode() : data.getRoot(s), n = data.nodeChildren(s, t), o = 0, a = n.length; o < a; o++) {
            if (n[o] == e) return o;
          }return -1;
        },
        getSelectedNodes: function getSelectedNodes() {
          for (var e = [], t = data.getRoot(s).curSelectedList, n = 0, o = t.length; n < o; n++) {
            e.push(t[n]);
          }return e;
        },
        isSelectedNode: function isSelectedNode(e) {
          return data.isSelectedNode(s, e);
        },
        reAsyncChildNodesPromise: function reAsyncChildNodesPromise(n, o, a) {
          return new __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_promise___default.a(function (e, t) {
            try {
              r.reAsyncChildNodes(n, o, a, function () {
                e(n);
              });
            } catch (e) {
              t(e);
            }
          });
        },
        reAsyncChildNodes: function reAsyncChildNodes(e, t, n, o) {
          if (this.setting.async.enable) {
            var a = !e;
            if (a && (e = data.getRoot(s)), "refresh" == t) {
              for (var r = data.nodeChildren(s, e), d = 0, i = r ? r.length : 0; d < i; d++) {
                data.removeNodeCache(s, r[d]);
              }if (data.removeSelectedNode(s), data.nodeChildren(s, e, []), a) this.setting.treeObj.empty();else $$(e, consts.id.UL, s).empty();
            }
            view.asyncNode(this.setting, a ? null : e, !!n, o);
          }
        },
        refresh: function refresh() {
          this.setting.treeObj.empty();
          var e = data.getRoot(s),
              t = data.nodeChildren(s, e);
          data.initRoot(s), data.nodeChildren(s, e, t), data.initCache(s), view.createNodes(s, 0, data.nodeChildren(s, e), null, -1);
        },
        removeChildNodes: function removeChildNodes(e) {
          if (!e) return null;
          var t = data.nodeChildren(s, e);
          return view.removeChildNodes(s, e), t || null;
        },
        removeNode: function removeNode(e, t) {
          e && ((t = !!t) && 0 == tools.apply(s.callback.beforeRemove, [s.treeId, e], !0) || (view.removeNode(s, e), t && this.setting.treeObj.trigger(consts.event.REMOVE, [s.treeId, e])));
        },
        selectNode: function selectNode(t, e, n) {
          if (t && tools.uCanDo(s)) {
            if (e = s.view.selectedMulti && e, t.parentTId) view.expandCollapseParentNode(s, t.getParentNode(), !0, !1, function () {
              if (n) return;
              var e = $$(t, s).get(0);
              view.scrollIntoView(s, e);
            });else if (!n) try {
              $$(t, s).focus().blur();
            } catch (e) {}
            view.selectNode(s, t, e);
          }
        },
        transformTozTreeNodes: function transformTozTreeNodes(e) {
          return data.transformTozTreeFormat(s, e);
        },
        transformToArray: function transformToArray(e) {
          return data.transformToArrayFormat(s, e);
        },
        updateNode: function updateNode(e, t) {
          e && $$(e, s).get(0) && tools.uCanDo(s) && (view.setNodeName(s, e), view.setNodeTarget(s, e), view.setNodeUrl(s, e), view.setNodeLineIcos(s, e), view.setNodeFontCss(s, e), view.setNodeClasses(s, e));
        }
      };
      o.treeTools = r, data.setZTreeTools(s, r);
      var a = data.nodeChildren(s, o);
      return a && 0 < a.length ? view.createNodes(s, 0, a, null, -1) : s.async.enable && s.async.url && "" !== s.async.url && view.asyncNode(s), r;
    }
  };
  var zt = _$.fn.zTree,
      $$ = tools.$,
      consts = zt.consts;
}(jQuery);

/***/ }),

/***/ "JYXt":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "JeZZ":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "LJ2z":
/***/ (function(module, exports, __webpack_require__) {

module.exports = __webpack_require__.p + "static/img/logo1.38f1073.png";

/***/ }),

/***/ "MDGh":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "MFQN":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "MPgH":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/babel-runtime/core-js/set.js
var set = __webpack_require__("lHA8");
var set_default = /*#__PURE__*/__webpack_require__.n(set);

// EXTERNAL MODULE: ./node_modules/babel-runtime/core-js/array/from.js
var from = __webpack_require__("c/Tr");
var from_default = /*#__PURE__*/__webpack_require__.n(from);

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/toConsumableArray.js
var toConsumableArray = __webpack_require__("Gu7T");
var toConsumableArray_default = /*#__PURE__*/__webpack_require__.n(toConsumableArray);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/capsuleChart/src/main.vue



//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//





/* harmony default export */ var main = ({
  name: 'DvCapsuleChart',
  props: {
    config: {
      type: Object,
      default: function _default() {
        return {};
      }
    }
  },
  data: function data() {
    return {
      defaultConfig: {
        /**
         * @description Capsule chart data
         * @type {Array<Object>}
         * @default data = []
         * @example data = [{ name: 'foo1', value: 100 }, { name: 'foo2', value: 100 }]
         */
        data: [],
        /**
         * @description Colors (hex|rgb|rgba|color keywords)
         * @type {Array<String>}
         * @default color = ['#37a2da', '#32c5e9', '#67e0e3', '#9fe6b8', '#ffdb5c', '#ff9f7f', '#fb7293']
         * @example color = ['#000', 'rgb(0, 0, 0)', 'rgba(0, 0, 0, 1)', 'red']
         */
        colors: ['#37a2da', '#32c5e9', '#67e0e3', '#9fe6b8', '#ffdb5c', '#ff9f7f', '#fb7293'],
        /**
         * @description Chart unit
         * @type {String}
         * @default unit = ''
         */
        unit: '',
        /**
         * @description Show item value
         * @type {Boolean}
         * @default showValue = false
         */
        showValue: false
      },

      mergedConfig: null,

      capsuleLength: [],
      capsuleValue: [],
      labelData: [],
      labelDataLength: []
    };
  },

  watch: {
    config: function config() {
      var calcData = this.calcData;


      calcData();
    }
  },
  methods: {
    calcData: function calcData() {
      var mergeConfig = this.mergeConfig,
          calcCapsuleLengthAndLabelData = this.calcCapsuleLengthAndLabelData;


      mergeConfig();

      calcCapsuleLengthAndLabelData();
    },
    mergeConfig: function mergeConfig() {
      var config = this.config,
          defaultConfig = this.defaultConfig;


      this.mergedConfig = Object(util["deepMerge"])(Object(plugin_util["deepClone"])(defaultConfig, true), config || {});
    },
    calcCapsuleLengthAndLabelData: function calcCapsuleLengthAndLabelData() {
      var data = this.mergedConfig.data;


      if (!data.length) return;

      var capsuleValue = data.map(function (_ref) {
        var value = _ref.value;
        return value;
      });

      var maxValue = Math.max.apply(Math, toConsumableArray_default()(capsuleValue));

      this.capsuleValue = capsuleValue;

      this.capsuleLength = capsuleValue.map(function (v) {
        return maxValue ? v / maxValue : 0;
      });

      var oneFifth = maxValue / 5;

      var labelData = from_default()(new set_default.a(new Array(6).fill(0).map(function (v, i) {
        return Math.ceil(i * oneFifth);
      })));

      this.labelData = labelData;

      this.labelDataLength = from_default()(labelData).map(function (v) {
        return maxValue ? v / maxValue : 0;
      });
    }
  },
  mounted: function mounted() {
    var calcData = this.calcData;


    calcData();
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-058edf2a","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/capsuleChart/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"dv-capsule-chart"},[(_vm.mergedConfig)?[_c('div',{staticClass:"label-column"},[_vm._l((_vm.mergedConfig.data),function(item){return _c('div',{key:item.name},[_vm._v(_vm._s(item.name))])}),_vm._v(" "),_c('div',[_vm._v(" ")])],2),_vm._v(" "),_c('div',{staticClass:"capsule-container"},[_vm._l((_vm.capsuleLength),function(capsule,index){return _c('div',{key:index,staticClass:"capsule-item"},[_c('div',{staticClass:"capsule-item-column",style:(("width: " + (capsule * 100) + "%; background-color: " + (_vm.mergedConfig.colors[index % _vm.mergedConfig.colors.length]) + ";"))},[(_vm.mergedConfig.showValue)?_c('div',{staticClass:"capsule-item-value"},[_vm._v(_vm._s(_vm.capsuleValue[index]))]):_vm._e()])])}),_vm._v(" "),_c('div',{staticClass:"unit-label"},_vm._l((_vm.labelData),function(label,index){return _c('div',{key:label + index},[_vm._v(_vm._s(label))])}),0)],2),_vm._v(" "),(_vm.mergedConfig.unit)?_c('div',{staticClass:"unit-text"},[_vm._v(_vm._s(_vm.mergedConfig.unit))]):_vm._e()]:_vm._e()],2)}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/capsuleChart/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var capsuleChart_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "MU2+":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "MzPt":
/***/ (function(module, exports) {

module.exports = {"version":"3.2.1"}

/***/ }),

/***/ "NHnr":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
Object.defineProperty(__webpack_exports__, "__esModule", { value: true });

// EXTERNAL MODULE: ./node_modules/vue/dist/vue.esm.js
var vue_esm = __webpack_require__("7+uW");

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/App.vue
//
//
//
//
//
//

/* harmony default export */ var App = ({
  name: 'App',
  provide: function provide() {
    return {
      reload: this.reload
    };
  },
  data: function data() {
    return {
      isrouterview: true
    };
  },

  computed: {
    count: function count() {
      return this.$store.lange;
    }
  },
  watch: {
    count: function count() {
      this.isrouterview = false;
      this.$nextTick(function () {
        this.isrouterview = true;
      });
    }
  },
  mounted: function mounted() {
    // //接口判断主题，此处为设定默认样式
    // var themesCss = localStorage.getItem('cssStyle');
    // if(themesCss){
    // require("./assets/css/" + 'primary' + "/style.scss");
    // }
  },

  methods: {
    reload: function reload() {
      // var themesCss = localStorage.getItem('cssStyle');
      // console.log(themesCss)
      // require("./assets/css/" + themesCss + "/style.scss");
      this.isrouterview = false;
      this.$nextTick(function () {
        this.isrouterview = true;
      });
    }
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-6d0bce0f","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/App.vue
var App_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{"id":"app"}},[(_vm.isrouterview)?_c('router-view'):_vm._e()],1)}
var staticRenderFns = []
var esExports = { render: App_render, staticRenderFns: staticRenderFns }
/* harmony default export */ var selectortype_template_index_0_src_App = (esExports);
// CONCATENATED MODULE: ./src/App.vue
function injectStyle (ssrContext) {
  __webpack_require__("Zilr")
}
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = injectStyle
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  App,
  selectortype_template_index_0_src_App,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var src_App = (Component.exports);

// EXTERNAL MODULE: ./src/router/index.js + 15 modules
var router = __webpack_require__("YaEn");

// EXTERNAL MODULE: ./src/assets/css/iconfont/iconfont.js
var iconfont = __webpack_require__("RMme");
var iconfont_default = /*#__PURE__*/__webpack_require__.n(iconfont);

// EXTERNAL MODULE: ./src/assets/css/index.css
var css = __webpack_require__("n4oI");
var css_default = /*#__PURE__*/__webpack_require__.n(css);

// EXTERNAL MODULE: ./src/assets/css/iconfont1/iconfont.css
var iconfont1_iconfont = __webpack_require__("X8Re");
var iconfont1_iconfont_default = /*#__PURE__*/__webpack_require__.n(iconfont1_iconfont);

// EXTERNAL MODULE: ./node_modules/axios/index.js
var axios = __webpack_require__("mtWM");
var axios_default = /*#__PURE__*/__webpack_require__.n(axios);

// EXTERNAL MODULE: ./src/store/index.js
var store = __webpack_require__("IcnI");

// EXTERNAL MODULE: ./node_modules/vuex/dist/vuex.esm.js
var vuex_esm = __webpack_require__("NYxO");

// EXTERNAL MODULE: ./node_modules/qs/lib/index.js
var lib = __webpack_require__("mw3O");
var lib_default = /*#__PURE__*/__webpack_require__.n(lib);

// EXTERNAL MODULE: ./src/utils/i18n.js
var i18n = __webpack_require__("ivlf");

// CONCATENATED MODULE: ./static/config.js
/* harmony default export */ var config = ({
  userType:[
		{"label":"租客","value":0},
		{"label":"物业","value":1}
  ],
	accessPlatform:{
		select:[
			{
				code:1,
				desc:"电信"
			},
			{
				code:2,
				desc:"移动"
			},
			{
				code:3,
				desc:"联通"
			},
			{
				code:4,
				desc:"Z电信"
			},
			{
				code:5,
				desc:"移动透传"
			},
			{
				code:6,
				desc:"wifi"
			},
			{
				code:7,
				desc:"平台"
			},
			{
				code:8,
				desc:"直连UDP平台"
			},
			{
				code:98,
				desc:"消息服务器"
			},
			{
				code:99,
				desc:"本地缓存"
			}
		],
		show:[
			{
				code:-1,
				desc:"错误"
			},
			{
				code:0,
				desc:"无"
			},
			{
				code:1,
				desc:"电信"
			},
			{
				code:2,
				desc:"移动"
			},
			{
				code:3,
				desc:"联通"
			},
			{
				code:4,
				desc:"电信"
			},
			{
				code:5,
				desc:"移动透传"
			},
			{
				code:6,
				desc:"wifi"
			},
			{
				code:7,
				desc:"平台"
			},
			{
				code:8,
				desc:"直连UDP平台"
			},
			{
				code:98,
				desc:"消息服务器"
			},
			{
				code:99,
				desc:"本地缓存"
			}
		],
    deviceType:[
      {
        code:101,
        desc:"GX1000"
      },
      {
        code:201,
        desc:"GX1000-ZH"
      },
      {
        code:221,
        desc:"GX1000-ZH-蓝牙"
      },
    ]
	},
	DeviceFeedbackLog:[
		{
			code: 0,
			desc: "全部"
		},
		{
			code: 5101,
			desc: "向平台注册锁"
		},
		{
			code: 5102,
			desc: "向平台删除锁"
		},
		{
			code: 5103,
			desc: "冻结锁"
		},
		{
			code: 5104,
			desc: "解冻锁"
		},
		{
			code: 6101,
			desc: "初始化管理员"
		},
		{
			code: 6126,
			desc: "冻结租客"
		},
		{
			code: 6127,
			desc: "解冻租客"
		},
		// {
		// 	code: 6201,
		// 	desc: "增加用户"
		// },
		{
			code: 6202,
			desc: "修改租客"
		},
		{
			code: 6203,
			desc: "删除租客"
		},
		{
			code: 6204,
			desc: "增加蓝牙权限"
		},
		{
			code: 6205,
			desc: "修改蓝牙密码"
		},
		{
			code: 6206,
			desc: "删除蓝牙密码"
		},
		{
			code: 6207,
			desc: "增加数字密码"
		},
		{
			code: 6208,
			desc: "修改数字密码"
		},
		{
			code: 6209,
			desc: "删除数字密码"
		},
		{
			code: 6210,
			desc: "增加nfc"
		},
		{
			code: 6211,
			desc: "修改nfc"
		},
		{
			code: 6212,
			desc: "删除nfc"
		},
		{
			code: 6213,
			desc: "增加身份证"
		},
		{
			code: 6214,
			desc: "修改身份证"
		},
		{
			code: 6215,
			desc: "删除身份证"
		},
		{
			code: 6216,
			desc: "增加指纹"
		},
		{
			code: 6217,
			desc: "修改指纹"
		},
		{
			code: 6218,
			desc: "删除指纹"
		},
		{
			code: 6219,
			desc: "添加协迫指纹"
		},
		{
			code: 6226,
			desc: "增加租客"
		},
		{
			code: 6301,
			desc: "远程开门"
		},
		{
			code: 6501,
			desc: "恢复出厂设置"
		},
		{
			code: 61001,
			desc: "音量设置"
		},
		{
			code: 61101,
			desc: "常开设置"
		},
		{
			code: 61201,
			desc: "添加指纹"
		},
		{
			code: 6233,
			desc: "退租"
		}
	],
	"DEVICETYPE":[
		{"label":"智能锁","value":1},
		{"label":"门磁","value":2},
		{"label":"空开","value":3},
		{"label":"烟感","value":4},
		{"label":"空气清洁","value":5},
		{"label":"红外","value":6},
		{"label":"智能按钮","value":7},
		{"label":"井盖","value":8},
		{"label":"垃圾桶","value":9},
		{"label":"空气检测","value":10},
		{"label":"声光报警器","value":11},
		{"label":"网关","value":99},
	],
  "MANUFACTURER": {
    //锁
    lock: [{
      "label": "GX1000_lock",
      "productID": "GX1000_LOCK",
      "value": 101
    }, {
      "label": "Z_lock",
      "productID": "ZG_LOCK",
      "value": 201
    },{
      "label": "Z_ble_lock",
      "productID": "ZG_LOCK",
      "value": 221
    },  {
      "label": "YS_LOCK",
      "productID": "YS_LOCK",
      "value": 701
    },{
      "label": "LWJ_LOCK",
      "productID": "LWJ_LOCK",
      "value": 1201
    }],
    //门磁
    doorMagnetism: [{
        "label": "FULI_HOUSESENSOR",
        "productID": "FULI_HOUSESENSOR",
        "value": 302
      },
      {
        "label": "JINGHUA_HOUSESENSOR",
        "productID": "JINGHUA_HOUSESENSOR",
        "value": 402
      },
      {
        "label": "JIANSHU_HOUSESENSOR",
        "productID": "JIANSHU_HOUSESENSOR",
        "value": 502
      },
      {
        "label": "CHITONGDA_HOUSESENSOR",
        "productID": "CHITONGDA_HOUSESENSOR",
        "value": 602
      }, {
        "label": "YS_HOUSESENSOR",
        "product": "YS_HOUSESENSOR",
        "value": 702
      }
    ],
    //空开
    airSwitch: [
    //   {
    //   "label": "GX1000-emptyOpen",
    //   "productID": "GX1000_AIRSWITCH",
    //   "value": 103
    // },
    {
      "label": "YS_AIRSWITCH",
      "product": "YS_AIRSWITCH",
      "value": 703
    },{
      "label": "HT_AIRSWITCH",
      "product": "HT_AIRSWITCH",
      "value": 1003
    }],
    //烟雾
    smokeSensation: [{
      "label": "GX1000-senseSmoke",
      "productID": "GX1000_SMOGDETECTOR",
      "value": 104
    },  {
      "label": "CHITONGDA_SMOGDETECTOR",
      "product": "CHITONGDA_SMOGDETECTOR",
      "value": 604
    }, {
      "label": "YS_SMOGDETECTOR",
      "product": "YS_SMOGDETECTOR",
      "value": 704
    }, ],
    //空气清洁
    AirCleaning: [{
      "label": "GX1000-cleanAir",
      "productID": "GX1000_AIRCLEANER",
      "value": 105
    }, {
      "label": "YS_AIRCLEANER",
      "product": "YS_AIRCLEANER",
      "value": 705
    }, ],
    //人体移动传感器
    humanMotionSensor: [{
      "label": "CHITONGDA_HUMAN_MOVING",
      "product": "CHITONGDA_HUMAN_MOVING",
      "value": 606
    },{
      "label": "YS_HUMAN_MOVING",
      "product": "YS_HUMAN_MOVING",
      "value": 706
    }, ],
    //紧急主动按钮或智能按钮
    smartButton: [{
      "label": "YS_ACTIVE_BUTTON",
      "product": "YS_ACTIVE_BUTTON",
      "value": 707
    },{
      "label": "MANUFACTURER_HONGTU_EMERGENCY_BUTTON",
      "product": "MANUFACTURER_HONGTU_EMERGENCY_BUTTON",
      "value": 1007
    }],
    //井盖
    manholeCover: [{
      "label": "FIRSTRATE_MANHOLE_COVER",
      "product": "FIRSTRATE_MANHOLE_COVER",
      "value": 808
    }],
    //垃圾桶
    trashCan: [{
      "label": "FIRSTRATE_GARBAGE",
      "product": "FIRSTRATE_GARBAGE",
      "value": 809
    }],
    //空气检测传感器
    airDetection: [{
      "label": "FIRSTRATE_AIR_DETECTION",
      "product": "FIRSTRATE_AIR_DETECTION",
      "value": 810
    }],
    //声光
    acoustoopticAlarm: [{
      "label": "MANUFACTURER_HONGTU_SOUND_LIGHT",
      "product": "MANUFACTURER_HONGTU_SOUND_LIGHT",
      "value": 1011
    }],
    //网关
    gateway: [{
      "label": "YS_GATEWAY",
      "product": "YS_GATEWAY",
      "value": 799
    }]
  },
  /* --- MP 报警类型 --- */
  alertType: {
    /* 门锁报警 */
    lockLog: [{
        code: 1,
        desc: "门锁被撬报警"
      },
      {
        code: 2,
        desc: "强行开门"
      },
      {
        code: 3,
        desc: "指纹尝试开锁被冻结"
      },
      {
        code: 4,
        desc: "密码尝试开锁被冻结"
      },
      {
        code: 5,
        desc: "卡尝试开锁被冻结"
      },
      {
        code: 6,
        desc: "钥匙尝试开锁被冻结"
      },
      {
        code: 7,
        desc: "低电量报警"
      },
      {
        code: 8,
        desc: "保留"
      },
      {
        code: 9,
        desc: "胁迫开锁报警"
      },
      {
        code: 10,
        desc: "忘拔钥匙"
      },
      {
        code: 11,
        desc: "敲门提醒"
      },
      {
        code: 12,
        desc: "救提醒"
      },
      {
        code: 13,
        desc: "门没关好"
      },
      {
        code: 14,
        desc: "门已反锁"
      },
      {
        code: 15,
        desc: "门已解锁"
      },
      {
        code: 16,
        desc: "常开已开启"
      },
      {
        code: 99,
        desc: "其它报警"
      },
    ],
    /* 门磁报警 */
    doorMagneticLog: [{
        code: 100,
        desc: "工作正常(心跳)"
      },
      {
        code: 101,
        desc: "设备告警"
      },
      {
        code: 102,
        desc: "低电压告警"
      },
      {
        code: 104,
        desc: "防拆报警"
      },
      {
        code: 105,
        desc: "设备故障"
      },
      {
        code: 113,
        desc: "设备测试"
      },
      {
        code: 117,
        desc: "报警恢复"
      },
      {
        code: 118,
        desc: "低电压恢复与上电开机"
      },
      {
        code: 120,
        desc: "防拆恢复"
      },
      {
        code: 126,
        desc: "设备ACK"
      },
      {
        code: 130,
        desc: "添加子设备"
      },
      {
        code: 131,
        desc: "删除子设备"
      },
    ],
    /* 人体移动传感器报警 */
    humanMotionSensorLog: [{
        code: 500,
        desc: "心跳"
      },
      {
        code: 501,
        desc: "故障告警"
      },
      {
        code: 502,
        desc: "防拆告警"
      },
      {
        code: 503,
        desc: "检测告警"
      },
      {
        code: 504,
        desc: "低电压告警"
      },
      {
        code: 505,
        desc: "红外位（看护监测：8 小时无人报警）"
      },
      {
        code: 506,
        desc: "红外位（看护监测：12 小时无人报警）"
      },
      {
        code: 507,
        desc: "红外位（看护监测：24 小时无人报警）"
      },
    ],
    // 智能按钮报警
    smartButtonLog: [{
        code: 600,
        desc: "心跳"
      },{
        code: 601,
        desc: "检测告警"
      },
      {
        code: 604,
        desc: "低电压告警"
      },
    ],
    /* 井盖报警 */
    manholeCoverLog: [{
        code: 700,
        desc: "工作正常(心跳)FULL"
      },
      {
        code: 701,
        desc: "水位满溢告警"
      },
      {
        code: 702,
        desc: "倾斜告警"
      },
      {
        code: 703,
        desc: "移动告警"
      },
      {
        code: 704,
        desc: "低电压告警"
      },
    ],
    /* 垃圾桶报警 */
    trashLog: [{
        code: 800,
        desc: "工作正常(心跳)FULL"
      },
      {
        code: 801,
        desc: "满溢告警"
      },
      {
        code: 802,
        desc: "倾斜报警"
      },
      {
        code: 803,
        desc: "传感器报警"
      },
      {
        code: 804,
        desc: "低电压告警"
      },
    ],
    /* 空气检测传感器日志 */
    airDetectionSensorLog: [{
        code: 900,
        desc: "工作正常(心跳)FULL"
      },
      {
        code: 901,
        desc: "低浓度告警"
      },
      {
        code: 902,
        desc: "高浓度告警"
      },
      {
        code: 904,
        desc: "低电压告警"
      },
    ],
    /* 空气清洁日志 */
    airCleaningLog:[{
        code: 900,
        desc: "工作正常(心跳)FULL"
      },
      {
        code: 901,
        desc: "低浓度告警"
      },
      {
        code: 902,
        desc: "高浓度告警"
      },
      {
        code: 904,
        desc: "低电压告警"
      },
    ],
    // 空开日志
    emptyLog:[
      {
        code: 200,
        desc: "工作正常(心跳)"
      },
      {
        code: 201,
        desc: "短路告警"
      },
      {
        code: 202,
        desc: "浪涌告警"
      },
      {
        code: 203,
        desc: "过载报警"
      },
      {
        code: 204,
        desc: "温度报警"
      },
      {
        code: 205,
        desc: "漏电报警"
      },
      {
        code: 206,
        desc: "过流报警"
      },
      {
        code: 207,
        desc: "过压报警"
      },
      {
        code: 208,
        desc: "漏电保护功能正常"
      },
      {
        code: 209,
        desc: "漏电保护自检未完成"
      },
      {
        code: 210,
        desc: "输入缺相（仅 380）"
      },
      {
        code: 211,
        desc: "打火报警"
      },
      {
        code: 212,
        desc: "欠压报警"
      },
      {
        code: 213,
        desc: "过压预警"
      },
      {
        code: 214,
        desc: "欠压预警"
      },
      {
        code: 215,
        desc: "漏电预警"
      },
      {
        code: 216,
        desc: "电流预警"
      },
      {
        code: 217,
        desc: "远程合闸禁止"
      },
      {
        code: 218,
        desc: "禁止缺相保护"
      },
      {
        code: 219,
        desc: "禁止不平衡保护"
      },
      {
        code: 220,
        desc: "禁止相序保护"
      },
      {
        code: 221,
        desc: "温度报警"
      },
      {
        code: 222,
        desc: "不平衡报警"
      },
      {
        code: 223,
        desc: "相序 ACB"
      },
      {
        code: 224,
        desc: "外部输入报警"
      },
      {
        code: 225,
        desc: "开关开合状态"
      },
      {
        code: 226,
        desc: "开关在线状态"
      },
    ],
    // 网关日志
    gatewayLog:[
    ],
    acoustoopticAlarmLog:[
      {
        code: 1000,
        desc: "工作正常(心跳)"
      },
      {
        code: 1001,
        desc: "防拆报警"
      },
      {
        code: 1001,
        desc: "防拆报警恢复"
      },
      {
        code: 1001,
        desc: "低电压告警"
      },
      {
        code: 1001,
        desc: "故障"
      },
      {
        code: 1001,
        desc: "故障恢复"
      },
      {
        code: 1001,
        desc: "报警"
      },
      {
        code: 1001,
        desc: "报警恢复"
      },
      {
        code: 1001,
        desc: "消音"
      },
      {
        code: 1001,
        desc: "消警"
      },
      {
        code: 1001,
        desc: "撤防"
      },
      {
        code: 1001,
        desc: "布防"
      },
    ],
    // 烟感日志
    smokeSensationLog:[
      {
        code: 300,
        desc: "工作正常"
      },
      {
        code: 301,
        desc: "故障告警"
      },{
        code: 302,
        desc: "温度警告"
      },{
        code: 303,
        desc: "烟雾报警"
      },{
        code: 304,
        desc: "低电压报警"
      },{
        code: 305,
        desc: "按键测试告警"
      },]
  },
	mapData:[{
		"value": "110000",
		"label": "北京市",
		"children": [{
			"value": "110100",
			"label": "市辖区",
			"children": [{
				"value": "110101",
				"label": "东城区"
			}, {
				"value": "110102",
				"label": "西城区"
			}, {
				"value": "110105",
				"label": "朝阳区"
			}, {
				"value": "110106",
				"label": "丰台区"
			}, {
				"value": "110107",
				"label": "石景山区"
			}, {
				"value": "110108",
				"label": "海淀区"
			}, {
				"value": "110109",
				"label": "门头沟区"
			}, {
				"value": "110111",
				"label": "房山区"
			}, {
				"value": "110112",
				"label": "通州区"
			}, {
				"value": "110113",
				"label": "顺义区"
			}, {
				"value": "110114",
				"label": "昌平区"
			}, {
				"value": "110115",
				"label": "大兴区"
			}, {
				"value": "110116",
				"label": "怀柔区"
			}, {
				"value": "110117",
				"label": "平谷区"
			}, {
				"value": "110118",
				"label": "密云区"
			}, {
				"value": "110119",
				"label": "延庆区"
			}]
		}]
	}, {
		"value": "120000",
		"label": "天津市",
		"children": [{
			"value": "120100",
			"label": "市辖区",
			"children": [{
				"value": "120101",
				"label": "和平区"
			}, {
				"value": "120102",
				"label": "河东区"
			}, {
				"value": "120103",
				"label": "河西区"
			}, {
				"value": "120104",
				"label": "南开区"
			}, {
				"value": "120105",
				"label": "河北区"
			}, {
				"value": "120106",
				"label": "红桥区"
			}, {
				"value": "120110",
				"label": "东丽区"
			}, {
				"value": "120111",
				"label": "西青区"
			}, {
				"value": "120112",
				"label": "津南区"
			}, {
				"value": "120113",
				"label": "北辰区"
			}, {
				"value": "120114",
				"label": "武清区"
			}, {
				"value": "120115",
				"label": "宝坻区"
			}, {
				"value": "120116",
				"label": "滨海新区"
			}, {
				"value": "120117",
				"label": "宁河区"
			}, {
				"value": "120118",
				"label": "静海区"
			}, {
				"value": "120119",
				"label": "蓟州区"
			}]
		}]
	}, {
		"value": "130000",
		"label": "河北省",
		"children": [{
			"value": "130100",
			"label": "石家庄市",
			"children": [{
				"value": "130101",
				"label": "市辖区"
			}, {
				"value": "130102",
				"label": "长安区"
			}, {
				"value": "130104",
				"label": "桥西区"
			}, {
				"value": "130105",
				"label": "新华区"
			}, {
				"value": "130107",
				"label": "井陉矿区"
			}, {
				"value": "130108",
				"label": "裕华区"
			}, {
				"value": "130109",
				"label": "藁城区"
			}, {
				"value": "130110",
				"label": "鹿泉区"
			}, {
				"value": "130111",
				"label": "栾城区"
			}, {
				"value": "130121",
				"label": "井陉县"
			}, {
				"value": "130123",
				"label": "正定县"
			}, {
				"value": "130125",
				"label": "行唐县"
			}, {
				"value": "130126",
				"label": "灵寿县"
			}, {
				"value": "130127",
				"label": "高邑县"
			}, {
				"value": "130128",
				"label": "深泽县"
			}, {
				"value": "130129",
				"label": "赞皇县"
			}, {
				"value": "130130",
				"label": "无极县"
			}, {
				"value": "130131",
				"label": "平山县"
			}, {
				"value": "130132",
				"label": "元氏县"
			}, {
				"value": "130133",
				"label": "赵县"
			}, {
				"value": "130171",
				"label": "石家庄高新技术产业开发区"
			}, {
				"value": "130172",
				"label": "石家庄循环化工园区"
			}, {
				"value": "130181",
				"label": "辛集市"
			}, {
				"value": "130183",
				"label": "晋州市"
			}, {
				"value": "130184",
				"label": "新乐市"
			}]
		}, {
			"value": "130200",
			"label": "唐山市",
			"children": [{
				"value": "130201",
				"label": "市辖区"
			}, {
				"value": "130202",
				"label": "路南区"
			}, {
				"value": "130203",
				"label": "路北区"
			}, {
				"value": "130204",
				"label": "古冶区"
			}, {
				"value": "130205",
				"label": "开平区"
			}, {
				"value": "130207",
				"label": "丰南区"
			}, {
				"value": "130208",
				"label": "丰润区"
			}, {
				"value": "130209",
				"label": "曹妃甸区"
			}, {
				"value": "130224",
				"label": "滦南县"
			}, {
				"value": "130225",
				"label": "乐亭县"
			}, {
				"value": "130227",
				"label": "迁西县"
			}, {
				"value": "130229",
				"label": "玉田县"
			}, {
				"value": "130271",
				"label": "河北唐山芦台经济开发区"
			}, {
				"value": "130272",
				"label": "唐山市汉沽管理区"
			}, {
				"value": "130273",
				"label": "唐山高新技术产业开发区"
			}, {
				"value": "130274",
				"label": "河北唐山海港经济开发区"
			}, {
				"value": "130281",
				"label": "遵化市"
			}, {
				"value": "130283",
				"label": "迁安市"
			}, {
				"value": "130284",
				"label": "滦州市"
			}]
		}, {
			"value": "130300",
			"label": "秦皇岛市",
			"children": [{
				"value": "130301",
				"label": "市辖区"
			}, {
				"value": "130302",
				"label": "海港区"
			}, {
				"value": "130303",
				"label": "山海关区"
			}, {
				"value": "130304",
				"label": "北戴河区"
			}, {
				"value": "130306",
				"label": "抚宁区"
			}, {
				"value": "130321",
				"label": "青龙满族自治县"
			}, {
				"value": "130322",
				"label": "昌黎县"
			}, {
				"value": "130324",
				"label": "卢龙县"
			}, {
				"value": "130371",
				"label": "秦皇岛市经济技术开发区"
			}, {
				"value": "130372",
				"label": "北戴河新区"
			}]
		}, {
			"value": "130400",
			"label": "邯郸市",
			"children": [{
				"value": "130401",
				"label": "市辖区"
			}, {
				"value": "130402",
				"label": "邯山区"
			}, {
				"value": "130403",
				"label": "丛台区"
			}, {
				"value": "130404",
				"label": "复兴区"
			}, {
				"value": "130406",
				"label": "峰峰矿区"
			}, {
				"value": "130407",
				"label": "肥乡区"
			}, {
				"value": "130408",
				"label": "永年区"
			}, {
				"value": "130423",
				"label": "临漳县"
			}, {
				"value": "130424",
				"label": "成安县"
			}, {
				"value": "130425",
				"label": "大名县"
			}, {
				"value": "130426",
				"label": "涉县"
			}, {
				"value": "130427",
				"label": "磁县"
			}, {
				"value": "130430",
				"label": "邱县"
			}, {
				"value": "130431",
				"label": "鸡泽县"
			}, {
				"value": "130432",
				"label": "广平县"
			}, {
				"value": "130433",
				"label": "馆陶县"
			}, {
				"value": "130434",
				"label": "魏县"
			}, {
				"value": "130435",
				"label": "曲周县"
			}, {
				"value": "130471",
				"label": "邯郸经济技术开发区"
			}, {
				"value": "130473",
				"label": "邯郸冀南新区"
			}, {
				"value": "130481",
				"label": "武安市"
			}]
		}, {
			"value": "130500",
			"label": "邢台市",
			"children": [{
				"value": "130501",
				"label": "市辖区"
			}, {
				"value": "130502",
				"label": "桥东区"
			}, {
				"value": "130503",
				"label": "桥西区"
			}, {
				"value": "130521",
				"label": "邢台县"
			}, {
				"value": "130522",
				"label": "临城县"
			}, {
				"value": "130523",
				"label": "内丘县"
			}, {
				"value": "130524",
				"label": "柏乡县"
			}, {
				"value": "130525",
				"label": "隆尧县"
			}, {
				"value": "130526",
				"label": "任县"
			}, {
				"value": "130527",
				"label": "南和县"
			}, {
				"value": "130528",
				"label": "宁晋县"
			}, {
				"value": "130529",
				"label": "巨鹿县"
			}, {
				"value": "130530",
				"label": "新河县"
			}, {
				"value": "130531",
				"label": "广宗县"
			}, {
				"value": "130532",
				"label": "平乡县"
			}, {
				"value": "130533",
				"label": "威县"
			}, {
				"value": "130534",
				"label": "清河县"
			}, {
				"value": "130535",
				"label": "临西县"
			}, {
				"value": "130571",
				"label": "河北邢台经济开发区"
			}, {
				"value": "130581",
				"label": "南宫市"
			}, {
				"value": "130582",
				"label": "沙河市"
			}]
		}, {
			"value": "130600",
			"label": "保定市",
			"children": [{
				"value": "130601",
				"label": "市辖区"
			}, {
				"value": "130602",
				"label": "竞秀区"
			}, {
				"value": "130606",
				"label": "莲池区"
			}, {
				"value": "130607",
				"label": "满城区"
			}, {
				"value": "130608",
				"label": "清苑区"
			}, {
				"value": "130609",
				"label": "徐水区"
			}, {
				"value": "130623",
				"label": "涞水县"
			}, {
				"value": "130624",
				"label": "阜平县"
			}, {
				"value": "130626",
				"label": "定兴县"
			}, {
				"value": "130627",
				"label": "唐县"
			}, {
				"value": "130628",
				"label": "高阳县"
			}, {
				"value": "130629",
				"label": "容城县"
			}, {
				"value": "130630",
				"label": "涞源县"
			}, {
				"value": "130631",
				"label": "望都县"
			}, {
				"value": "130632",
				"label": "安新县"
			}, {
				"value": "130633",
				"label": "易县"
			}, {
				"value": "130634",
				"label": "曲阳县"
			}, {
				"value": "130635",
				"label": "蠡县"
			}, {
				"value": "130636",
				"label": "顺平县"
			}, {
				"value": "130637",
				"label": "博野县"
			}, {
				"value": "130638",
				"label": "雄县"
			}, {
				"value": "130671",
				"label": "保定高新技术产业开发区"
			}, {
				"value": "130672",
				"label": "保定白沟新城"
			}, {
				"value": "130681",
				"label": "涿州市"
			}, {
				"value": "130682",
				"label": "定州市"
			}, {
				"value": "130683",
				"label": "安国市"
			}, {
				"value": "130684",
				"label": "高碑店市"
			}]
		}, {
			"value": "130700",
			"label": "张家口市",
			"children": [{
				"value": "130701",
				"label": "市辖区"
			}, {
				"value": "130702",
				"label": "桥东区"
			}, {
				"value": "130703",
				"label": "桥西区"
			}, {
				"value": "130705",
				"label": "宣化区"
			}, {
				"value": "130706",
				"label": "下花园区"
			}, {
				"value": "130708",
				"label": "万全区"
			}, {
				"value": "130709",
				"label": "崇礼区"
			}, {
				"value": "130722",
				"label": "张北县"
			}, {
				"value": "130723",
				"label": "康保县"
			}, {
				"value": "130724",
				"label": "沽源县"
			}, {
				"value": "130725",
				"label": "尚义县"
			}, {
				"value": "130726",
				"label": "蔚县"
			}, {
				"value": "130727",
				"label": "阳原县"
			}, {
				"value": "130728",
				"label": "怀安县"
			}, {
				"value": "130730",
				"label": "怀来县"
			}, {
				"value": "130731",
				"label": "涿鹿县"
			}, {
				"value": "130732",
				"label": "赤城县"
			}, {
				"value": "130771",
				"label": "张家口经济开发区"
			}, {
				"value": "130772",
				"label": "张家口市察北管理区"
			}, {
				"value": "130773",
				"label": "张家口市塞北管理区"
			}]
		}, {
			"value": "130800",
			"label": "承德市",
			"children": [{
				"value": "130801",
				"label": "市辖区"
			}, {
				"value": "130802",
				"label": "双桥区"
			}, {
				"value": "130803",
				"label": "双滦区"
			}, {
				"value": "130804",
				"label": "鹰手营子矿区"
			}, {
				"value": "130821",
				"label": "承德县"
			}, {
				"value": "130822",
				"label": "兴隆县"
			}, {
				"value": "130824",
				"label": "滦平县"
			}, {
				"value": "130825",
				"label": "隆化县"
			}, {
				"value": "130826",
				"label": "丰宁满族自治县"
			}, {
				"value": "130827",
				"label": "宽城满族自治县"
			}, {
				"value": "130828",
				"label": "围场满族蒙古族自治县"
			}, {
				"value": "130871",
				"label": "承德高新技术产业开发区"
			}, {
				"value": "130881",
				"label": "平泉市"
			}]
		}, {
			"value": "130900",
			"label": "沧州市",
			"children": [{
				"value": "130901",
				"label": "市辖区"
			}, {
				"value": "130902",
				"label": "新华区"
			}, {
				"value": "130903",
				"label": "运河区"
			}, {
				"value": "130921",
				"label": "沧县"
			}, {
				"value": "130922",
				"label": "青县"
			}, {
				"value": "130923",
				"label": "东光县"
			}, {
				"value": "130924",
				"label": "海兴县"
			}, {
				"value": "130925",
				"label": "盐山县"
			}, {
				"value": "130926",
				"label": "肃宁县"
			}, {
				"value": "130927",
				"label": "南皮县"
			}, {
				"value": "130928",
				"label": "吴桥县"
			}, {
				"value": "130929",
				"label": "献县"
			}, {
				"value": "130930",
				"label": "孟村回族自治县"
			}, {
				"value": "130971",
				"label": "河北沧州经济开发区"
			}, {
				"value": "130972",
				"label": "沧州高新技术产业开发区"
			}, {
				"value": "130973",
				"label": "沧州渤海新区"
			}, {
				"value": "130981",
				"label": "泊头市"
			}, {
				"value": "130982",
				"label": "任丘市"
			}, {
				"value": "130983",
				"label": "黄骅市"
			}, {
				"value": "130984",
				"label": "河间市"
			}]
		}, {
			"value": "131000",
			"label": "廊坊市",
			"children": [{
				"value": "131001",
				"label": "市辖区"
			}, {
				"value": "131002",
				"label": "安次区"
			}, {
				"value": "131003",
				"label": "广阳区"
			}, {
				"value": "131022",
				"label": "固安县"
			}, {
				"value": "131023",
				"label": "永清县"
			}, {
				"value": "131024",
				"label": "香河县"
			}, {
				"value": "131025",
				"label": "大城县"
			}, {
				"value": "131026",
				"label": "文安县"
			}, {
				"value": "131028",
				"label": "大厂回族自治县"
			}, {
				"value": "131071",
				"label": "廊坊经济技术开发区"
			}, {
				"value": "131081",
				"label": "霸州市"
			}, {
				"value": "131082",
				"label": "三河市"
			}]
		}, {
			"value": "131100",
			"label": "衡水市",
			"children": [{
				"value": "131101",
				"label": "市辖区"
			}, {
				"value": "131102",
				"label": "桃城区"
			}, {
				"value": "131103",
				"label": "冀州区"
			}, {
				"value": "131121",
				"label": "枣强县"
			}, {
				"value": "131122",
				"label": "武邑县"
			}, {
				"value": "131123",
				"label": "武强县"
			}, {
				"value": "131124",
				"label": "饶阳县"
			}, {
				"value": "131125",
				"label": "安平县"
			}, {
				"value": "131126",
				"label": "故城县"
			}, {
				"value": "131127",
				"label": "景县"
			}, {
				"value": "131128",
				"label": "阜城县"
			}, {
				"value": "131171",
				"label": "河北衡水高新技术产业开发区"
			}, {
				"value": "131172",
				"label": "衡水滨湖新区"
			}, {
				"value": "131182",
				"label": "深州市"
			}]
		}]
	}, {
		"value": "140000",
		"label": "山西省",
		"children": [{
			"value": "140100",
			"label": "太原市",
			"children": [{
				"value": "140101",
				"label": "市辖区"
			}, {
				"value": "140105",
				"label": "小店区"
			}, {
				"value": "140106",
				"label": "迎泽区"
			}, {
				"value": "140107",
				"label": "杏花岭区"
			}, {
				"value": "140108",
				"label": "尖草坪区"
			}, {
				"value": "140109",
				"label": "万柏林区"
			}, {
				"value": "140110",
				"label": "晋源区"
			}, {
				"value": "140121",
				"label": "清徐县"
			}, {
				"value": "140122",
				"label": "阳曲县"
			}, {
				"value": "140123",
				"label": "娄烦县"
			}, {
				"value": "140171",
				"label": "山西转型综合改革示范区"
			}, {
				"value": "140181",
				"label": "古交市"
			}]
		}, {
			"value": "140200",
			"label": "大同市",
			"children": [{
				"value": "140201",
				"label": "市辖区"
			}, {
				"value": "140212",
				"label": "新荣区"
			}, {
				"value": "140213",
				"label": "平城区"
			}, {
				"value": "140214",
				"label": "云冈区"
			}, {
				"value": "140215",
				"label": "云州区"
			}, {
				"value": "140221",
				"label": "阳高县"
			}, {
				"value": "140222",
				"label": "天镇县"
			}, {
				"value": "140223",
				"label": "广灵县"
			}, {
				"value": "140224",
				"label": "灵丘县"
			}, {
				"value": "140225",
				"label": "浑源县"
			}, {
				"value": "140226",
				"label": "左云县"
			}, {
				"value": "140271",
				"label": "山西大同经济开发区"
			}]
		}, {
			"value": "140300",
			"label": "阳泉市",
			"children": [{
				"value": "140301",
				"label": "市辖区"
			}, {
				"value": "140302",
				"label": "城区"
			}, {
				"value": "140303",
				"label": "矿区"
			}, {
				"value": "140311",
				"label": "郊区"
			}, {
				"value": "140321",
				"label": "平定县"
			}, {
				"value": "140322",
				"label": "盂县"
			}]
		}, {
			"value": "140400",
			"label": "长治市",
			"children": [{
				"value": "140401",
				"label": "市辖区"
			}, {
				"value": "140403",
				"label": "潞州区"
			}, {
				"value": "140404",
				"label": "上党区"
			}, {
				"value": "140405",
				"label": "屯留区"
			}, {
				"value": "140406",
				"label": "潞城区"
			}, {
				"value": "140423",
				"label": "襄垣县"
			}, {
				"value": "140425",
				"label": "平顺县"
			}, {
				"value": "140426",
				"label": "黎城县"
			}, {
				"value": "140427",
				"label": "壶关县"
			}, {
				"value": "140428",
				"label": "长子县"
			}, {
				"value": "140429",
				"label": "武乡县"
			}, {
				"value": "140430",
				"label": "沁县"
			}, {
				"value": "140431",
				"label": "沁源县"
			}, {
				"value": "140471",
				"label": "山西长治高新技术产业园区"
			}]
		}, {
			"value": "140500",
			"label": "晋城市",
			"children": [{
				"value": "140501",
				"label": "市辖区"
			}, {
				"value": "140502",
				"label": "城区"
			}, {
				"value": "140521",
				"label": "沁水县"
			}, {
				"value": "140522",
				"label": "阳城县"
			}, {
				"value": "140524",
				"label": "陵川县"
			}, {
				"value": "140525",
				"label": "泽州县"
			}, {
				"value": "140581",
				"label": "高平市"
			}]
		}, {
			"value": "140600",
			"label": "朔州市",
			"children": [{
				"value": "140601",
				"label": "市辖区"
			}, {
				"value": "140602",
				"label": "朔城区"
			}, {
				"value": "140603",
				"label": "平鲁区"
			}, {
				"value": "140621",
				"label": "山阴县"
			}, {
				"value": "140622",
				"label": "应县"
			}, {
				"value": "140623",
				"label": "右玉县"
			}, {
				"value": "140671",
				"label": "山西朔州经济开发区"
			}, {
				"value": "140681",
				"label": "怀仁市"
			}]
		}, {
			"value": "140700",
			"label": "晋中市",
			"children": [{
				"value": "140701",
				"label": "市辖区"
			}, {
				"value": "140702",
				"label": "榆次区"
			}, {
				"value": "140721",
				"label": "榆社县"
			}, {
				"value": "140722",
				"label": "左权县"
			}, {
				"value": "140723",
				"label": "和顺县"
			}, {
				"value": "140724",
				"label": "昔阳县"
			}, {
				"value": "140725",
				"label": "寿阳县"
			}, {
				"value": "140726",
				"label": "太谷县"
			}, {
				"value": "140727",
				"label": "祁县"
			}, {
				"value": "140728",
				"label": "平遥县"
			}, {
				"value": "140729",
				"label": "灵石县"
			}, {
				"value": "140781",
				"label": "介休市"
			}]
		}, {
			"value": "140800",
			"label": "运城市",
			"children": [{
				"value": "140801",
				"label": "市辖区"
			}, {
				"value": "140802",
				"label": "盐湖区"
			}, {
				"value": "140821",
				"label": "临猗县"
			}, {
				"value": "140822",
				"label": "万荣县"
			}, {
				"value": "140823",
				"label": "闻喜县"
			}, {
				"value": "140824",
				"label": "稷山县"
			}, {
				"value": "140825",
				"label": "新绛县"
			}, {
				"value": "140826",
				"label": "绛县"
			}, {
				"value": "140827",
				"label": "垣曲县"
			}, {
				"value": "140828",
				"label": "夏县"
			}, {
				"value": "140829",
				"label": "平陆县"
			}, {
				"value": "140830",
				"label": "芮城县"
			}, {
				"value": "140881",
				"label": "永济市"
			}, {
				"value": "140882",
				"label": "河津市"
			}]
		}, {
			"value": "140900",
			"label": "忻州市",
			"children": [{
				"value": "140901",
				"label": "市辖区"
			}, {
				"value": "140902",
				"label": "忻府区"
			}, {
				"value": "140921",
				"label": "定襄县"
			}, {
				"value": "140922",
				"label": "五台县"
			}, {
				"value": "140923",
				"label": "代县"
			}, {
				"value": "140924",
				"label": "繁峙县"
			}, {
				"value": "140925",
				"label": "宁武县"
			}, {
				"value": "140926",
				"label": "静乐县"
			}, {
				"value": "140927",
				"label": "神池县"
			}, {
				"value": "140928",
				"label": "五寨县"
			}, {
				"value": "140929",
				"label": "岢岚县"
			}, {
				"value": "140930",
				"label": "河曲县"
			}, {
				"value": "140931",
				"label": "保德县"
			}, {
				"value": "140932",
				"label": "偏关县"
			}, {
				"value": "140971",
				"label": "五台山风景名胜区"
			}, {
				"value": "140981",
				"label": "原平市"
			}]
		}, {
			"value": "141000",
			"label": "临汾市",
			"children": [{
				"value": "141001",
				"label": "市辖区"
			}, {
				"value": "141002",
				"label": "尧都区"
			}, {
				"value": "141021",
				"label": "曲沃县"
			}, {
				"value": "141022",
				"label": "翼城县"
			}, {
				"value": "141023",
				"label": "襄汾县"
			}, {
				"value": "141024",
				"label": "洪洞县"
			}, {
				"value": "141025",
				"label": "古县"
			}, {
				"value": "141026",
				"label": "安泽县"
			}, {
				"value": "141027",
				"label": "浮山县"
			}, {
				"value": "141028",
				"label": "吉县"
			}, {
				"value": "141029",
				"label": "乡宁县"
			}, {
				"value": "141030",
				"label": "大宁县"
			}, {
				"value": "141031",
				"label": "隰县"
			}, {
				"value": "141032",
				"label": "永和县"
			}, {
				"value": "141033",
				"label": "蒲县"
			}, {
				"value": "141034",
				"label": "汾西县"
			}, {
				"value": "141081",
				"label": "侯马市"
			}, {
				"value": "141082",
				"label": "霍州市"
			}]
		}, {
			"value": "141100",
			"label": "吕梁市",
			"children": [{
				"value": "141101",
				"label": "市辖区"
			}, {
				"value": "141102",
				"label": "离石区"
			}, {
				"value": "141121",
				"label": "文水县"
			}, {
				"value": "141122",
				"label": "交城县"
			}, {
				"value": "141123",
				"label": "兴县"
			}, {
				"value": "141124",
				"label": "临县"
			}, {
				"value": "141125",
				"label": "柳林县"
			}, {
				"value": "141126",
				"label": "石楼县"
			}, {
				"value": "141127",
				"label": "岚县"
			}, {
				"value": "141128",
				"label": "方山县"
			}, {
				"value": "141129",
				"label": "中阳县"
			}, {
				"value": "141130",
				"label": "交口县"
			}, {
				"value": "141181",
				"label": "孝义市"
			}, {
				"value": "141182",
				"label": "汾阳市"
			}]
		}]
	}, {
		"value": "150000",
		"label": "内蒙古自治区",
		"children": [{
			"value": "150100",
			"label": "呼和浩特市",
			"children": [{
				"value": "150101",
				"label": "市辖区"
			}, {
				"value": "150102",
				"label": "新城区"
			}, {
				"value": "150103",
				"label": "回民区"
			}, {
				"value": "150104",
				"label": "玉泉区"
			}, {
				"value": "150105",
				"label": "赛罕区"
			}, {
				"value": "150121",
				"label": "土默特左旗"
			}, {
				"value": "150122",
				"label": "托克托县"
			}, {
				"value": "150123",
				"label": "和林格尔县"
			}, {
				"value": "150124",
				"label": "清水河县"
			}, {
				"value": "150125",
				"label": "武川县"
			}, {
				"value": "150171",
				"label": "呼和浩特金海工业园区"
			}, {
				"value": "150172",
				"label": "呼和浩特经济技术开发区"
			}]
		}, {
			"value": "150200",
			"label": "包头市",
			"children": [{
				"value": "150201",
				"label": "市辖区"
			}, {
				"value": "150202",
				"label": "东河区"
			}, {
				"value": "150203",
				"label": "昆都仑区"
			}, {
				"value": "150204",
				"label": "青山区"
			}, {
				"value": "150205",
				"label": "石拐区"
			}, {
				"value": "150206",
				"label": "白云鄂博矿区"
			}, {
				"value": "150207",
				"label": "九原区"
			}, {
				"value": "150221",
				"label": "土默特右旗"
			}, {
				"value": "150222",
				"label": "固阳县"
			}, {
				"value": "150223",
				"label": "达尔罕茂明安联合旗"
			}, {
				"value": "150271",
				"label": "包头稀土高新技术产业开发区"
			}]
		}, {
			"value": "150300",
			"label": "乌海市",
			"children": [{
				"value": "150301",
				"label": "市辖区"
			}, {
				"value": "150302",
				"label": "海勃湾区"
			}, {
				"value": "150303",
				"label": "海南区"
			}, {
				"value": "150304",
				"label": "乌达区"
			}]
		}, {
			"value": "150400",
			"label": "赤峰市",
			"children": [{
				"value": "150401",
				"label": "市辖区"
			}, {
				"value": "150402",
				"label": "红山区"
			}, {
				"value": "150403",
				"label": "元宝山区"
			}, {
				"value": "150404",
				"label": "松山区"
			}, {
				"value": "150421",
				"label": "阿鲁科尔沁旗"
			}, {
				"value": "150422",
				"label": "巴林左旗"
			}, {
				"value": "150423",
				"label": "巴林右旗"
			}, {
				"value": "150424",
				"label": "林西县"
			}, {
				"value": "150425",
				"label": "克什克腾旗"
			}, {
				"value": "150426",
				"label": "翁牛特旗"
			}, {
				"value": "150428",
				"label": "喀喇沁旗"
			}, {
				"value": "150429",
				"label": "宁城县"
			}, {
				"value": "150430",
				"label": "敖汉旗"
			}]
		}, {
			"value": "150500",
			"label": "通辽市",
			"children": [{
				"value": "150501",
				"label": "市辖区"
			}, {
				"value": "150502",
				"label": "科尔沁区"
			}, {
				"value": "150521",
				"label": "科尔沁左翼中旗"
			}, {
				"value": "150522",
				"label": "科尔沁左翼后旗"
			}, {
				"value": "150523",
				"label": "开鲁县"
			}, {
				"value": "150524",
				"label": "库伦旗"
			}, {
				"value": "150525",
				"label": "奈曼旗"
			}, {
				"value": "150526",
				"label": "扎鲁特旗"
			}, {
				"value": "150571",
				"label": "通辽经济技术开发区"
			}, {
				"value": "150581",
				"label": "霍林郭勒市"
			}]
		}, {
			"value": "150600",
			"label": "鄂尔多斯市",
			"children": [{
				"value": "150601",
				"label": "市辖区"
			}, {
				"value": "150602",
				"label": "东胜区"
			}, {
				"value": "150603",
				"label": "康巴什区"
			}, {
				"value": "150621",
				"label": "达拉特旗"
			}, {
				"value": "150622",
				"label": "准格尔旗"
			}, {
				"value": "150623",
				"label": "鄂托克前旗"
			}, {
				"value": "150624",
				"label": "鄂托克旗"
			}, {
				"value": "150625",
				"label": "杭锦旗"
			}, {
				"value": "150626",
				"label": "乌审旗"
			}, {
				"value": "150627",
				"label": "伊金霍洛旗"
			}]
		}, {
			"value": "150700",
			"label": "呼伦贝尔市",
			"children": [{
				"value": "150701",
				"label": "市辖区"
			}, {
				"value": "150702",
				"label": "海拉尔区"
			}, {
				"value": "150703",
				"label": "扎赉诺尔区"
			}, {
				"value": "150721",
				"label": "阿荣旗"
			}, {
				"value": "150722",
				"label": "莫力达瓦达斡尔族自治旗"
			}, {
				"value": "150723",
				"label": "鄂伦春自治旗"
			}, {
				"value": "150724",
				"label": "鄂温克族自治旗"
			}, {
				"value": "150725",
				"label": "陈巴尔虎旗"
			}, {
				"value": "150726",
				"label": "新巴尔虎左旗"
			}, {
				"value": "150727",
				"label": "新巴尔虎右旗"
			}, {
				"value": "150781",
				"label": "满洲里市"
			}, {
				"value": "150782",
				"label": "牙克石市"
			}, {
				"value": "150783",
				"label": "扎兰屯市"
			}, {
				"value": "150784",
				"label": "额尔古纳市"
			}, {
				"value": "150785",
				"label": "根河市"
			}]
		}, {
			"value": "150800",
			"label": "巴彦淖尔市",
			"children": [{
				"value": "150801",
				"label": "市辖区"
			}, {
				"value": "150802",
				"label": "临河区"
			}, {
				"value": "150821",
				"label": "五原县"
			}, {
				"value": "150822",
				"label": "磴口县"
			}, {
				"value": "150823",
				"label": "乌拉特前旗"
			}, {
				"value": "150824",
				"label": "乌拉特中旗"
			}, {
				"value": "150825",
				"label": "乌拉特后旗"
			}, {
				"value": "150826",
				"label": "杭锦后旗"
			}]
		}, {
			"value": "150900",
			"label": "乌兰察布市",
			"children": [{
				"value": "150901",
				"label": "市辖区"
			}, {
				"value": "150902",
				"label": "集宁区"
			}, {
				"value": "150921",
				"label": "卓资县"
			}, {
				"value": "150922",
				"label": "化德县"
			}, {
				"value": "150923",
				"label": "商都县"
			}, {
				"value": "150924",
				"label": "兴和县"
			}, {
				"value": "150925",
				"label": "凉城县"
			}, {
				"value": "150926",
				"label": "察哈尔右翼前旗"
			}, {
				"value": "150927",
				"label": "察哈尔右翼中旗"
			}, {
				"value": "150928",
				"label": "察哈尔右翼后旗"
			}, {
				"value": "150929",
				"label": "四子王旗"
			}, {
				"value": "150981",
				"label": "丰镇市"
			}]
		}, {
			"value": "152200",
			"label": "兴安盟",
			"children": [{
				"value": "152201",
				"label": "乌兰浩特市"
			}, {
				"value": "152202",
				"label": "阿尔山市"
			}, {
				"value": "152221",
				"label": "科尔沁右翼前旗"
			}, {
				"value": "152222",
				"label": "科尔沁右翼中旗"
			}, {
				"value": "152223",
				"label": "扎赉特旗"
			}, {
				"value": "152224",
				"label": "突泉县"
			}]
		}, {
			"value": "152500",
			"label": "锡林郭勒盟",
			"children": [{
				"value": "152501",
				"label": "二连浩特市"
			}, {
				"value": "152502",
				"label": "锡林浩特市"
			}, {
				"value": "152522",
				"label": "阿巴嘎旗"
			}, {
				"value": "152523",
				"label": "苏尼特左旗"
			}, {
				"value": "152524",
				"label": "苏尼特右旗"
			}, {
				"value": "152525",
				"label": "东乌珠穆沁旗"
			}, {
				"value": "152526",
				"label": "西乌珠穆沁旗"
			}, {
				"value": "152527",
				"label": "太仆寺旗"
			}, {
				"value": "152528",
				"label": "镶黄旗"
			}, {
				"value": "152529",
				"label": "正镶白旗"
			}, {
				"value": "152530",
				"label": "正蓝旗"
			}, {
				"value": "152531",
				"label": "多伦县"
			}, {
				"value": "152571",
				"label": "乌拉盖管委会"
			}]
		}, {
			"value": "152900",
			"label": "阿拉善盟",
			"children": [{
				"value": "152921",
				"label": "阿拉善左旗"
			}, {
				"value": "152922",
				"label": "阿拉善右旗"
			}, {
				"value": "152923",
				"label": "额济纳旗"
			}, {
				"value": "152971",
				"label": "内蒙古阿拉善经济开发区"
			}]
		}]
	}, {
		"value": "210000",
		"label": "辽宁省",
		"children": [{
			"value": "210100",
			"label": "沈阳市",
			"children": [{
				"value": "210101",
				"label": "市辖区"
			}, {
				"value": "210102",
				"label": "和平区"
			}, {
				"value": "210103",
				"label": "沈河区"
			}, {
				"value": "210104",
				"label": "大东区"
			}, {
				"value": "210105",
				"label": "皇姑区"
			}, {
				"value": "210106",
				"label": "铁西区"
			}, {
				"value": "210111",
				"label": "苏家屯区"
			}, {
				"value": "210112",
				"label": "浑南区"
			}, {
				"value": "210113",
				"label": "沈北新区"
			}, {
				"value": "210114",
				"label": "于洪区"
			}, {
				"value": "210115",
				"label": "辽中区"
			}, {
				"value": "210123",
				"label": "康平县"
			}, {
				"value": "210124",
				"label": "法库县"
			}, {
				"value": "210181",
				"label": "新民市"
			}]
		}, {
			"value": "210200",
			"label": "大连市",
			"children": [{
				"value": "210201",
				"label": "市辖区"
			}, {
				"value": "210202",
				"label": "中山区"
			}, {
				"value": "210203",
				"label": "西岗区"
			}, {
				"value": "210204",
				"label": "沙河口区"
			}, {
				"value": "210211",
				"label": "甘井子区"
			}, {
				"value": "210212",
				"label": "旅顺口区"
			}, {
				"value": "210213",
				"label": "金州区"
			}, {
				"value": "210214",
				"label": "普兰店区"
			}, {
				"value": "210224",
				"label": "长海县"
			}, {
				"value": "210281",
				"label": "瓦房店市"
			}, {
				"value": "210283",
				"label": "庄河市"
			}]
		}, {
			"value": "210300",
			"label": "鞍山市",
			"children": [{
				"value": "210301",
				"label": "市辖区"
			}, {
				"value": "210302",
				"label": "铁东区"
			}, {
				"value": "210303",
				"label": "铁西区"
			}, {
				"value": "210304",
				"label": "立山区"
			}, {
				"value": "210311",
				"label": "千山区"
			}, {
				"value": "210321",
				"label": "台安县"
			}, {
				"value": "210323",
				"label": "岫岩满族自治县"
			}, {
				"value": "210381",
				"label": "海城市"
			}]
		}, {
			"value": "210400",
			"label": "抚顺市",
			"children": [{
				"value": "210401",
				"label": "市辖区"
			}, {
				"value": "210402",
				"label": "新抚区"
			}, {
				"value": "210403",
				"label": "东洲区"
			}, {
				"value": "210404",
				"label": "望花区"
			}, {
				"value": "210411",
				"label": "顺城区"
			}, {
				"value": "210421",
				"label": "抚顺县"
			}, {
				"value": "210422",
				"label": "新宾满族自治县"
			}, {
				"value": "210423",
				"label": "清原满族自治县"
			}]
		}, {
			"value": "210500",
			"label": "本溪市",
			"children": [{
				"value": "210501",
				"label": "市辖区"
			}, {
				"value": "210502",
				"label": "平山区"
			}, {
				"value": "210503",
				"label": "溪湖区"
			}, {
				"value": "210504",
				"label": "明山区"
			}, {
				"value": "210505",
				"label": "南芬区"
			}, {
				"value": "210521",
				"label": "本溪满族自治县"
			}, {
				"value": "210522",
				"label": "桓仁满族自治县"
			}]
		}, {
			"value": "210600",
			"label": "丹东市",
			"children": [{
				"value": "210601",
				"label": "市辖区"
			}, {
				"value": "210602",
				"label": "元宝区"
			}, {
				"value": "210603",
				"label": "振兴区"
			}, {
				"value": "210604",
				"label": "振安区"
			}, {
				"value": "210624",
				"label": "宽甸满族自治县"
			}, {
				"value": "210681",
				"label": "东港市"
			}, {
				"value": "210682",
				"label": "凤城市"
			}]
		}, {
			"value": "210700",
			"label": "锦州市",
			"children": [{
				"value": "210701",
				"label": "市辖区"
			}, {
				"value": "210702",
				"label": "古塔区"
			}, {
				"value": "210703",
				"label": "凌河区"
			}, {
				"value": "210711",
				"label": "太和区"
			}, {
				"value": "210726",
				"label": "黑山县"
			}, {
				"value": "210727",
				"label": "义县"
			}, {
				"value": "210781",
				"label": "凌海市"
			}, {
				"value": "210782",
				"label": "北镇市"
			}]
		}, {
			"value": "210800",
			"label": "营口市",
			"children": [{
				"value": "210801",
				"label": "市辖区"
			}, {
				"value": "210802",
				"label": "站前区"
			}, {
				"value": "210803",
				"label": "西市区"
			}, {
				"value": "210804",
				"label": "鲅鱼圈区"
			}, {
				"value": "210811",
				"label": "老边区"
			}, {
				"value": "210881",
				"label": "盖州市"
			}, {
				"value": "210882",
				"label": "大石桥市"
			}]
		}, {
			"value": "210900",
			"label": "阜新市",
			"children": [{
				"value": "210901",
				"label": "市辖区"
			}, {
				"value": "210902",
				"label": "海州区"
			}, {
				"value": "210903",
				"label": "新邱区"
			}, {
				"value": "210904",
				"label": "太平区"
			}, {
				"value": "210905",
				"label": "清河门区"
			}, {
				"value": "210911",
				"label": "细河区"
			}, {
				"value": "210921",
				"label": "阜新蒙古族自治县"
			}, {
				"value": "210922",
				"label": "彰武县"
			}]
		}, {
			"value": "211000",
			"label": "辽阳市",
			"children": [{
				"value": "211001",
				"label": "市辖区"
			}, {
				"value": "211002",
				"label": "白塔区"
			}, {
				"value": "211003",
				"label": "文圣区"
			}, {
				"value": "211004",
				"label": "宏伟区"
			}, {
				"value": "211005",
				"label": "弓长岭区"
			}, {
				"value": "211011",
				"label": "太子河区"
			}, {
				"value": "211021",
				"label": "辽阳县"
			}, {
				"value": "211081",
				"label": "灯塔市"
			}]
		}, {
			"value": "211100",
			"label": "盘锦市",
			"children": [{
				"value": "211101",
				"label": "市辖区"
			}, {
				"value": "211102",
				"label": "双台子区"
			}, {
				"value": "211103",
				"label": "兴隆台区"
			}, {
				"value": "211104",
				"label": "大洼区"
			}, {
				"value": "211122",
				"label": "盘山县"
			}]
		}, {
			"value": "211200",
			"label": "铁岭市",
			"children": [{
				"value": "211201",
				"label": "市辖区"
			}, {
				"value": "211202",
				"label": "银州区"
			}, {
				"value": "211204",
				"label": "清河区"
			}, {
				"value": "211221",
				"label": "铁岭县"
			}, {
				"value": "211223",
				"label": "西丰县"
			}, {
				"value": "211224",
				"label": "昌图县"
			}, {
				"value": "211281",
				"label": "调兵山市"
			}, {
				"value": "211282",
				"label": "开原市"
			}]
		}, {
			"value": "211300",
			"label": "朝阳市",
			"children": [{
				"value": "211301",
				"label": "市辖区"
			}, {
				"value": "211302",
				"label": "双塔区"
			}, {
				"value": "211303",
				"label": "龙城区"
			}, {
				"value": "211321",
				"label": "朝阳县"
			}, {
				"value": "211322",
				"label": "建平县"
			}, {
				"value": "211324",
				"label": "喀喇沁左翼蒙古族自治县"
			}, {
				"value": "211381",
				"label": "北票市"
			}, {
				"value": "211382",
				"label": "凌源市"
			}]
		}, {
			"value": "211400",
			"label": "葫芦岛市",
			"children": [{
				"value": "211401",
				"label": "市辖区"
			}, {
				"value": "211402",
				"label": "连山区"
			}, {
				"value": "211403",
				"label": "龙港区"
			}, {
				"value": "211404",
				"label": "南票区"
			}, {
				"value": "211421",
				"label": "绥中县"
			}, {
				"value": "211422",
				"label": "建昌县"
			}, {
				"value": "211481",
				"label": "兴城市"
			}]
		}]
	}, {
		"value": "220000",
		"label": "吉林省",
		"children": [{
			"value": "220100",
			"label": "长春市",
			"children": [{
				"value": "220101",
				"label": "市辖区"
			}, {
				"value": "220102",
				"label": "南关区"
			}, {
				"value": "220103",
				"label": "宽城区"
			}, {
				"value": "220104",
				"label": "朝阳区"
			}, {
				"value": "220105",
				"label": "二道区"
			}, {
				"value": "220106",
				"label": "绿园区"
			}, {
				"value": "220112",
				"label": "双阳区"
			}, {
				"value": "220113",
				"label": "九台区"
			}, {
				"value": "220122",
				"label": "农安县"
			}, {
				"value": "220171",
				"label": "长春经济技术开发区"
			}, {
				"value": "220172",
				"label": "长春净月高新技术产业开发区"
			}, {
				"value": "220173",
				"label": "长春高新技术产业开发区"
			}, {
				"value": "220174",
				"label": "长春汽车经济技术开发区"
			}, {
				"value": "220182",
				"label": "榆树市"
			}, {
				"value": "220183",
				"label": "德惠市"
			}]
		}, {
			"value": "220200",
			"label": "吉林市",
			"children": [{
				"value": "220201",
				"label": "市辖区"
			}, {
				"value": "220202",
				"label": "昌邑区"
			}, {
				"value": "220203",
				"label": "龙潭区"
			}, {
				"value": "220204",
				"label": "船营区"
			}, {
				"value": "220211",
				"label": "丰满区"
			}, {
				"value": "220221",
				"label": "永吉县"
			}, {
				"value": "220271",
				"label": "吉林经济开发区"
			}, {
				"value": "220272",
				"label": "吉林高新技术产业开发区"
			}, {
				"value": "220273",
				"label": "吉林中国新加坡食品区"
			}, {
				"value": "220281",
				"label": "蛟河市"
			}, {
				"value": "220282",
				"label": "桦甸市"
			}, {
				"value": "220283",
				"label": "舒兰市"
			}, {
				"value": "220284",
				"label": "磐石市"
			}]
		}, {
			"value": "220300",
			"label": "四平市",
			"children": [{
				"value": "220301",
				"label": "市辖区"
			}, {
				"value": "220302",
				"label": "铁西区"
			}, {
				"value": "220303",
				"label": "铁东区"
			}, {
				"value": "220322",
				"label": "梨树县"
			}, {
				"value": "220323",
				"label": "伊通满族自治县"
			}, {
				"value": "220381",
				"label": "公主岭市"
			}, {
				"value": "220382",
				"label": "双辽市"
			}]
		}, {
			"value": "220400",
			"label": "辽源市",
			"children": [{
				"value": "220401",
				"label": "市辖区"
			}, {
				"value": "220402",
				"label": "龙山区"
			}, {
				"value": "220403",
				"label": "西安区"
			}, {
				"value": "220421",
				"label": "东丰县"
			}, {
				"value": "220422",
				"label": "东辽县"
			}]
		}, {
			"value": "220500",
			"label": "通化市",
			"children": [{
				"value": "220501",
				"label": "市辖区"
			}, {
				"value": "220502",
				"label": "东昌区"
			}, {
				"value": "220503",
				"label": "二道江区"
			}, {
				"value": "220521",
				"label": "通化县"
			}, {
				"value": "220523",
				"label": "辉南县"
			}, {
				"value": "220524",
				"label": "柳河县"
			}, {
				"value": "220581",
				"label": "梅河口市"
			}, {
				"value": "220582",
				"label": "集安市"
			}]
		}, {
			"value": "220600",
			"label": "白山市",
			"children": [{
				"value": "220601",
				"label": "市辖区"
			}, {
				"value": "220602",
				"label": "浑江区"
			}, {
				"value": "220605",
				"label": "江源区"
			}, {
				"value": "220621",
				"label": "抚松县"
			}, {
				"value": "220622",
				"label": "靖宇县"
			}, {
				"value": "220623",
				"label": "长白朝鲜族自治县"
			}, {
				"value": "220681",
				"label": "临江市"
			}]
		}, {
			"value": "220700",
			"label": "松原市",
			"children": [{
				"value": "220701",
				"label": "市辖区"
			}, {
				"value": "220702",
				"label": "宁江区"
			}, {
				"value": "220721",
				"label": "前郭尔罗斯蒙古族自治县"
			}, {
				"value": "220722",
				"label": "长岭县"
			}, {
				"value": "220723",
				"label": "乾安县"
			}, {
				"value": "220771",
				"label": "吉林松原经济开发区"
			}, {
				"value": "220781",
				"label": "扶余市"
			}]
		}, {
			"value": "220800",
			"label": "白城市",
			"children": [{
				"value": "220801",
				"label": "市辖区"
			}, {
				"value": "220802",
				"label": "洮北区"
			}, {
				"value": "220821",
				"label": "镇赉县"
			}, {
				"value": "220822",
				"label": "通榆县"
			}, {
				"value": "220871",
				"label": "吉林白城经济开发区"
			}, {
				"value": "220881",
				"label": "洮南市"
			}, {
				"value": "220882",
				"label": "大安市"
			}]
		}, {
			"value": "222400",
			"label": "延边朝鲜族自治州",
			"children": [{
				"value": "222401",
				"label": "延吉市"
			}, {
				"value": "222402",
				"label": "图们市"
			}, {
				"value": "222403",
				"label": "敦化市"
			}, {
				"value": "222404",
				"label": "珲春市"
			}, {
				"value": "222405",
				"label": "龙井市"
			}, {
				"value": "222406",
				"label": "和龙市"
			}, {
				"value": "222424",
				"label": "汪清县"
			}, {
				"value": "222426",
				"label": "安图县"
			}]
		}]
	}, {
		"value": "230000",
		"label": "黑龙江省",
		"children": [{
			"value": "230100",
			"label": "哈尔滨市",
			"children": [{
				"value": "230101",
				"label": "市辖区"
			}, {
				"value": "230102",
				"label": "道里区"
			}, {
				"value": "230103",
				"label": "南岗区"
			}, {
				"value": "230104",
				"label": "道外区"
			}, {
				"value": "230108",
				"label": "平房区"
			}, {
				"value": "230109",
				"label": "松北区"
			}, {
				"value": "230110",
				"label": "香坊区"
			}, {
				"value": "230111",
				"label": "呼兰区"
			}, {
				"value": "230112",
				"label": "阿城区"
			}, {
				"value": "230113",
				"label": "双城区"
			}, {
				"value": "230123",
				"label": "依兰县"
			}, {
				"value": "230124",
				"label": "方正县"
			}, {
				"value": "230125",
				"label": "宾县"
			}, {
				"value": "230126",
				"label": "巴彦县"
			}, {
				"value": "230127",
				"label": "木兰县"
			}, {
				"value": "230128",
				"label": "通河县"
			}, {
				"value": "230129",
				"label": "延寿县"
			}, {
				"value": "230183",
				"label": "尚志市"
			}, {
				"value": "230184",
				"label": "五常市"
			}]
		}, {
			"value": "230200",
			"label": "齐齐哈尔市",
			"children": [{
				"value": "230201",
				"label": "市辖区"
			}, {
				"value": "230202",
				"label": "龙沙区"
			}, {
				"value": "230203",
				"label": "建华区"
			}, {
				"value": "230204",
				"label": "铁锋区"
			}, {
				"value": "230205",
				"label": "昂昂溪区"
			}, {
				"value": "230206",
				"label": "富拉尔基区"
			}, {
				"value": "230207",
				"label": "碾子山区"
			}, {
				"value": "230208",
				"label": "梅里斯达斡尔族区"
			}, {
				"value": "230221",
				"label": "龙江县"
			}, {
				"value": "230223",
				"label": "依安县"
			}, {
				"value": "230224",
				"label": "泰来县"
			}, {
				"value": "230225",
				"label": "甘南县"
			}, {
				"value": "230227",
				"label": "富裕县"
			}, {
				"value": "230229",
				"label": "克山县"
			}, {
				"value": "230230",
				"label": "克东县"
			}, {
				"value": "230231",
				"label": "拜泉县"
			}, {
				"value": "230281",
				"label": "讷河市"
			}]
		}, {
			"value": "230300",
			"label": "鸡西市",
			"children": [{
				"value": "230301",
				"label": "市辖区"
			}, {
				"value": "230302",
				"label": "鸡冠区"
			}, {
				"value": "230303",
				"label": "恒山区"
			}, {
				"value": "230304",
				"label": "滴道区"
			}, {
				"value": "230305",
				"label": "梨树区"
			}, {
				"value": "230306",
				"label": "城子河区"
			}, {
				"value": "230307",
				"label": "麻山区"
			}, {
				"value": "230321",
				"label": "鸡东县"
			}, {
				"value": "230381",
				"label": "虎林市"
			}, {
				"value": "230382",
				"label": "密山市"
			}]
		}, {
			"value": "230400",
			"label": "鹤岗市",
			"children": [{
				"value": "230401",
				"label": "市辖区"
			}, {
				"value": "230402",
				"label": "向阳区"
			}, {
				"value": "230403",
				"label": "工农区"
			}, {
				"value": "230404",
				"label": "南山区"
			}, {
				"value": "230405",
				"label": "兴安区"
			}, {
				"value": "230406",
				"label": "东山区"
			}, {
				"value": "230407",
				"label": "兴山区"
			}, {
				"value": "230421",
				"label": "萝北县"
			}, {
				"value": "230422",
				"label": "绥滨县"
			}]
		}, {
			"value": "230500",
			"label": "双鸭山市",
			"children": [{
				"value": "230501",
				"label": "市辖区"
			}, {
				"value": "230502",
				"label": "尖山区"
			}, {
				"value": "230503",
				"label": "岭东区"
			}, {
				"value": "230505",
				"label": "四方台区"
			}, {
				"value": "230506",
				"label": "宝山区"
			}, {
				"value": "230521",
				"label": "集贤县"
			}, {
				"value": "230522",
				"label": "友谊县"
			}, {
				"value": "230523",
				"label": "宝清县"
			}, {
				"value": "230524",
				"label": "饶河县"
			}]
		}, {
			"value": "230600",
			"label": "大庆市",
			"children": [{
				"value": "230601",
				"label": "市辖区"
			}, {
				"value": "230602",
				"label": "萨尔图区"
			}, {
				"value": "230603",
				"label": "龙凤区"
			}, {
				"value": "230604",
				"label": "让胡路区"
			}, {
				"value": "230605",
				"label": "红岗区"
			}, {
				"value": "230606",
				"label": "大同区"
			}, {
				"value": "230621",
				"label": "肇州县"
			}, {
				"value": "230622",
				"label": "肇源县"
			}, {
				"value": "230623",
				"label": "林甸县"
			}, {
				"value": "230624",
				"label": "杜尔伯特蒙古族自治县"
			}, {
				"value": "230671",
				"label": "大庆高新技术产业开发区"
			}]
		}, {
			"value": "230700",
			"label": "伊春市",
			"children": [{
				"value": "230701",
				"label": "市辖区"
			}, {
				"value": "230717",
				"label": "伊美区"
			}, {
				"value": "230718",
				"label": "乌翠区"
			}, {
				"value": "230719",
				"label": "友好区"
			}, {
				"value": "230722",
				"label": "嘉荫县"
			}, {
				"value": "230723",
				"label": "汤旺县"
			}, {
				"value": "230724",
				"label": "丰林县"
			}, {
				"value": "230725",
				"label": "大箐山县"
			}, {
				"value": "230726",
				"label": "南岔县"
			}, {
				"value": "230751",
				"label": "金林区"
			}, {
				"value": "230781",
				"label": "铁力市"
			}]
		}, {
			"value": "230800",
			"label": "佳木斯市",
			"children": [{
				"value": "230801",
				"label": "市辖区"
			}, {
				"value": "230803",
				"label": "向阳区"
			}, {
				"value": "230804",
				"label": "前进区"
			}, {
				"value": "230805",
				"label": "东风区"
			}, {
				"value": "230811",
				"label": "郊区"
			}, {
				"value": "230822",
				"label": "桦南县"
			}, {
				"value": "230826",
				"label": "桦川县"
			}, {
				"value": "230828",
				"label": "汤原县"
			}, {
				"value": "230881",
				"label": "同江市"
			}, {
				"value": "230882",
				"label": "富锦市"
			}, {
				"value": "230883",
				"label": "抚远市"
			}]
		}, {
			"value": "230900",
			"label": "七台河市",
			"children": [{
				"value": "230901",
				"label": "市辖区"
			}, {
				"value": "230902",
				"label": "新兴区"
			}, {
				"value": "230903",
				"label": "桃山区"
			}, {
				"value": "230904",
				"label": "茄子河区"
			}, {
				"value": "230921",
				"label": "勃利县"
			}]
		}, {
			"value": "231000",
			"label": "牡丹江市",
			"children": [{
				"value": "231001",
				"label": "市辖区"
			}, {
				"value": "231002",
				"label": "东安区"
			}, {
				"value": "231003",
				"label": "阳明区"
			}, {
				"value": "231004",
				"label": "爱民区"
			}, {
				"value": "231005",
				"label": "西安区"
			}, {
				"value": "231025",
				"label": "林口县"
			}, {
				"value": "231071",
				"label": "牡丹江经济技术开发区"
			}, {
				"value": "231081",
				"label": "绥芬河市"
			}, {
				"value": "231083",
				"label": "海林市"
			}, {
				"value": "231084",
				"label": "宁安市"
			}, {
				"value": "231085",
				"label": "穆棱市"
			}, {
				"value": "231086",
				"label": "东宁市"
			}]
		}, {
			"value": "231100",
			"label": "黑河市",
			"children": [{
				"value": "231101",
				"label": "市辖区"
			}, {
				"value": "231102",
				"label": "爱辉区"
			}, {
				"value": "231123",
				"label": "逊克县"
			}, {
				"value": "231124",
				"label": "孙吴县"
			}, {
				"value": "231181",
				"label": "北安市"
			}, {
				"value": "231182",
				"label": "五大连池市"
			}, {
				"value": "231183",
				"label": "嫩江市"
			}]
		}, {
			"value": "231200",
			"label": "绥化市",
			"children": [{
				"value": "231201",
				"label": "市辖区"
			}, {
				"value": "231202",
				"label": "北林区"
			}, {
				"value": "231221",
				"label": "望奎县"
			}, {
				"value": "231222",
				"label": "兰西县"
			}, {
				"value": "231223",
				"label": "青冈县"
			}, {
				"value": "231224",
				"label": "庆安县"
			}, {
				"value": "231225",
				"label": "明水县"
			}, {
				"value": "231226",
				"label": "绥棱县"
			}, {
				"value": "231281",
				"label": "安达市"
			}, {
				"value": "231282",
				"label": "肇东市"
			}, {
				"value": "231283",
				"label": "海伦市"
			}]
		}, {
			"value": "232700",
			"label": "大兴安岭地区",
			"children": [{
				"value": "232701",
				"label": "漠河市"
			}, {
				"value": "232721",
				"label": "呼玛县"
			}, {
				"value": "232722",
				"label": "塔河县"
			}, {
				"value": "232761",
				"label": "加格达奇区"
			}, {
				"value": "232762",
				"label": "松岭区"
			}, {
				"value": "232763",
				"label": "新林区"
			}, {
				"value": "232764",
				"label": "呼中区"
			}]
		}]
	}, {
		"value": "310000",
		"label": "上海市",
		"children": [{
			"value": "310100",
			"label": "市辖区",
			"children": [{
				"value": "310101",
				"label": "黄浦区"
			}, {
				"value": "310104",
				"label": "徐汇区"
			}, {
				"value": "310105",
				"label": "长宁区"
			}, {
				"value": "310106",
				"label": "静安区"
			}, {
				"value": "310107",
				"label": "普陀区"
			}, {
				"value": "310109",
				"label": "虹口区"
			}, {
				"value": "310110",
				"label": "杨浦区"
			}, {
				"value": "310112",
				"label": "闵行区"
			}, {
				"value": "310113",
				"label": "宝山区"
			}, {
				"value": "310114",
				"label": "嘉定区"
			}, {
				"value": "310115",
				"label": "浦东新区"
			}, {
				"value": "310116",
				"label": "金山区"
			}, {
				"value": "310117",
				"label": "松江区"
			}, {
				"value": "310118",
				"label": "青浦区"
			}, {
				"value": "310120",
				"label": "奉贤区"
			}, {
				"value": "310151",
				"label": "崇明区"
			}]
		}]
	}, {
		"value": "320000",
		"label": "江苏省",
		"children": [{
			"value": "320100",
			"label": "南京市",
			"children": [{
				"value": "320101",
				"label": "市辖区"
			}, {
				"value": "320102",
				"label": "玄武区"
			}, {
				"value": "320104",
				"label": "秦淮区"
			}, {
				"value": "320105",
				"label": "建邺区"
			}, {
				"value": "320106",
				"label": "鼓楼区"
			}, {
				"value": "320111",
				"label": "浦口区"
			}, {
				"value": "320113",
				"label": "栖霞区"
			}, {
				"value": "320114",
				"label": "雨花台区"
			}, {
				"value": "320115",
				"label": "江宁区"
			}, {
				"value": "320116",
				"label": "六合区"
			}, {
				"value": "320117",
				"label": "溧水区"
			}, {
				"value": "320118",
				"label": "高淳区"
			}]
		}, {
			"value": "320200",
			"label": "无锡市",
			"children": [{
				"value": "320201",
				"label": "市辖区"
			}, {
				"value": "320205",
				"label": "锡山区"
			}, {
				"value": "320206",
				"label": "惠山区"
			}, {
				"value": "320211",
				"label": "滨湖区"
			}, {
				"value": "320213",
				"label": "梁溪区"
			}, {
				"value": "320214",
				"label": "新吴区"
			}, {
				"value": "320281",
				"label": "江阴市"
			}, {
				"value": "320282",
				"label": "宜兴市"
			}]
		}, {
			"value": "320300",
			"label": "徐州市",
			"children": [{
				"value": "320301",
				"label": "市辖区"
			}, {
				"value": "320302",
				"label": "鼓楼区"
			}, {
				"value": "320303",
				"label": "云龙区"
			}, {
				"value": "320305",
				"label": "贾汪区"
			}, {
				"value": "320311",
				"label": "泉山区"
			}, {
				"value": "320312",
				"label": "铜山区"
			}, {
				"value": "320321",
				"label": "丰县"
			}, {
				"value": "320322",
				"label": "沛县"
			}, {
				"value": "320324",
				"label": "睢宁县"
			}, {
				"value": "320371",
				"label": "徐州经济技术开发区"
			}, {
				"value": "320381",
				"label": "新沂市"
			}, {
				"value": "320382",
				"label": "邳州市"
			}]
		}, {
			"value": "320400",
			"label": "常州市",
			"children": [{
				"value": "320401",
				"label": "市辖区"
			}, {
				"value": "320402",
				"label": "天宁区"
			}, {
				"value": "320404",
				"label": "钟楼区"
			}, {
				"value": "320411",
				"label": "新北区"
			}, {
				"value": "320412",
				"label": "武进区"
			}, {
				"value": "320413",
				"label": "金坛区"
			}, {
				"value": "320481",
				"label": "溧阳市"
			}]
		}, {
			"value": "320500",
			"label": "苏州市",
			"children": [{
				"value": "320501",
				"label": "市辖区"
			}, {
				"value": "320505",
				"label": "虎丘区"
			}, {
				"value": "320506",
				"label": "吴中区"
			}, {
				"value": "320507",
				"label": "相城区"
			}, {
				"value": "320508",
				"label": "姑苏区"
			}, {
				"value": "320509",
				"label": "吴江区"
			}, {
				"value": "320571",
				"label": "苏州工业园区"
			}, {
				"value": "320581",
				"label": "常熟市"
			}, {
				"value": "320582",
				"label": "张家港市"
			}, {
				"value": "320583",
				"label": "昆山市"
			}, {
				"value": "320585",
				"label": "太仓市"
			}]
		}, {
			"value": "320600",
			"label": "南通市",
			"children": [{
				"value": "320601",
				"label": "市辖区"
			}, {
				"value": "320602",
				"label": "崇川区"
			}, {
				"value": "320611",
				"label": "港闸区"
			}, {
				"value": "320612",
				"label": "通州区"
			}, {
				"value": "320623",
				"label": "如东县"
			}, {
				"value": "320671",
				"label": "南通经济技术开发区"
			}, {
				"value": "320681",
				"label": "启东市"
			}, {
				"value": "320682",
				"label": "如皋市"
			}, {
				"value": "320684",
				"label": "海门市"
			}, {
				"value": "320685",
				"label": "海安市"
			}]
		}, {
			"value": "320700",
			"label": "连云港市",
			"children": [{
				"value": "320701",
				"label": "市辖区"
			}, {
				"value": "320703",
				"label": "连云区"
			}, {
				"value": "320706",
				"label": "海州区"
			}, {
				"value": "320707",
				"label": "赣榆区"
			}, {
				"value": "320722",
				"label": "东海县"
			}, {
				"value": "320723",
				"label": "灌云县"
			}, {
				"value": "320724",
				"label": "灌南县"
			}, {
				"value": "320771",
				"label": "连云港经济技术开发区"
			}, {
				"value": "320772",
				"label": "连云港高新技术产业开发区"
			}]
		}, {
			"value": "320800",
			"label": "淮安市",
			"children": [{
				"value": "320801",
				"label": "市辖区"
			}, {
				"value": "320803",
				"label": "淮安区"
			}, {
				"value": "320804",
				"label": "淮阴区"
			}, {
				"value": "320812",
				"label": "清江浦区"
			}, {
				"value": "320813",
				"label": "洪泽区"
			}, {
				"value": "320826",
				"label": "涟水县"
			}, {
				"value": "320830",
				"label": "盱眙县"
			}, {
				"value": "320831",
				"label": "金湖县"
			}, {
				"value": "320871",
				"label": "淮安经济技术开发区"
			}]
		}, {
			"value": "320900",
			"label": "盐城市",
			"children": [{
				"value": "320901",
				"label": "市辖区"
			}, {
				"value": "320902",
				"label": "亭湖区"
			}, {
				"value": "320903",
				"label": "盐都区"
			}, {
				"value": "320904",
				"label": "大丰区"
			}, {
				"value": "320921",
				"label": "响水县"
			}, {
				"value": "320922",
				"label": "滨海县"
			}, {
				"value": "320923",
				"label": "阜宁县"
			}, {
				"value": "320924",
				"label": "射阳县"
			}, {
				"value": "320925",
				"label": "建湖县"
			}, {
				"value": "320971",
				"label": "盐城经济技术开发区"
			}, {
				"value": "320981",
				"label": "东台市"
			}]
		}, {
			"value": "321000",
			"label": "扬州市",
			"children": [{
				"value": "321001",
				"label": "市辖区"
			}, {
				"value": "321002",
				"label": "广陵区"
			}, {
				"value": "321003",
				"label": "邗江区"
			}, {
				"value": "321012",
				"label": "江都区"
			}, {
				"value": "321023",
				"label": "宝应县"
			}, {
				"value": "321071",
				"label": "扬州经济技术开发区"
			}, {
				"value": "321081",
				"label": "仪征市"
			}, {
				"value": "321084",
				"label": "高邮市"
			}]
		}, {
			"value": "321100",
			"label": "镇江市",
			"children": [{
				"value": "321101",
				"label": "市辖区"
			}, {
				"value": "321102",
				"label": "京口区"
			}, {
				"value": "321111",
				"label": "润州区"
			}, {
				"value": "321112",
				"label": "丹徒区"
			}, {
				"value": "321171",
				"label": "镇江新区"
			}, {
				"value": "321181",
				"label": "丹阳市"
			}, {
				"value": "321182",
				"label": "扬中市"
			}, {
				"value": "321183",
				"label": "句容市"
			}]
		}, {
			"value": "321200",
			"label": "泰州市",
			"children": [{
				"value": "321201",
				"label": "市辖区"
			}, {
				"value": "321202",
				"label": "海陵区"
			}, {
				"value": "321203",
				"label": "高港区"
			}, {
				"value": "321204",
				"label": "姜堰区"
			}, {
				"value": "321271",
				"label": "泰州医药高新技术产业开发区"
			}, {
				"value": "321281",
				"label": "兴化市"
			}, {
				"value": "321282",
				"label": "靖江市"
			}, {
				"value": "321283",
				"label": "泰兴市"
			}]
		}, {
			"value": "321300",
			"label": "宿迁市",
			"children": [{
				"value": "321301",
				"label": "市辖区"
			}, {
				"value": "321302",
				"label": "宿城区"
			}, {
				"value": "321311",
				"label": "宿豫区"
			}, {
				"value": "321322",
				"label": "沭阳县"
			}, {
				"value": "321323",
				"label": "泗阳县"
			}, {
				"value": "321324",
				"label": "泗洪县"
			}, {
				"value": "321371",
				"label": "宿迁经济技术开发区"
			}]
		}]
	}, {
		"value": "330000",
		"label": "浙江省",
		"children": [{
			"value": "330100",
			"label": "杭州市",
			"children": [{
				"value": "330101",
				"label": "市辖区"
			}, {
				"value": "330102",
				"label": "上城区"
			}, {
				"value": "330103",
				"label": "下城区"
			}, {
				"value": "330104",
				"label": "江干区"
			}, {
				"value": "330105",
				"label": "拱墅区"
			}, {
				"value": "330106",
				"label": "西湖区"
			}, {
				"value": "330108",
				"label": "滨江区"
			}, {
				"value": "330109",
				"label": "萧山区"
			}, {
				"value": "330110",
				"label": "余杭区"
			}, {
				"value": "330111",
				"label": "富阳区"
			}, {
				"value": "330112",
				"label": "临安区"
			}, {
				"value": "330122",
				"label": "桐庐县"
			}, {
				"value": "330127",
				"label": "淳安县"
			}, {
				"value": "330182",
				"label": "建德市"
			}]
		}, {
			"value": "330200",
			"label": "宁波市",
			"children": [{
				"value": "330201",
				"label": "市辖区"
			}, {
				"value": "330203",
				"label": "海曙区"
			}, {
				"value": "330205",
				"label": "江北区"
			}, {
				"value": "330206",
				"label": "北仑区"
			}, {
				"value": "330211",
				"label": "镇海区"
			}, {
				"value": "330212",
				"label": "鄞州区"
			}, {
				"value": "330213",
				"label": "奉化区"
			}, {
				"value": "330225",
				"label": "象山县"
			}, {
				"value": "330226",
				"label": "宁海县"
			}, {
				"value": "330281",
				"label": "余姚市"
			}, {
				"value": "330282",
				"label": "慈溪市"
			}]
		}, {
			"value": "330300",
			"label": "温州市",
			"children": [{
				"value": "330301",
				"label": "市辖区"
			}, {
				"value": "330302",
				"label": "鹿城区"
			}, {
				"value": "330303",
				"label": "龙湾区"
			}, {
				"value": "330304",
				"label": "瓯海区"
			}, {
				"value": "330305",
				"label": "洞头区"
			}, {
				"value": "330324",
				"label": "永嘉县"
			}, {
				"value": "330326",
				"label": "平阳县"
			}, {
				"value": "330327",
				"label": "苍南县"
			}, {
				"value": "330328",
				"label": "文成县"
			}, {
				"value": "330329",
				"label": "泰顺县"
			}, {
				"value": "330371",
				"label": "温州经济技术开发区"
			}, {
				"value": "330381",
				"label": "瑞安市"
			}, {
				"value": "330382",
				"label": "乐清市"
			}, {
				"value": "330383",
				"label": "龙港市"
			}]
		}, {
			"value": "330400",
			"label": "嘉兴市",
			"children": [{
				"value": "330401",
				"label": "市辖区"
			}, {
				"value": "330402",
				"label": "南湖区"
			}, {
				"value": "330411",
				"label": "秀洲区"
			}, {
				"value": "330421",
				"label": "嘉善县"
			}, {
				"value": "330424",
				"label": "海盐县"
			}, {
				"value": "330481",
				"label": "海宁市"
			}, {
				"value": "330482",
				"label": "平湖市"
			}, {
				"value": "330483",
				"label": "桐乡市"
			}]
		}, {
			"value": "330500",
			"label": "湖州市",
			"children": [{
				"value": "330501",
				"label": "市辖区"
			}, {
				"value": "330502",
				"label": "吴兴区"
			}, {
				"value": "330503",
				"label": "南浔区"
			}, {
				"value": "330521",
				"label": "德清县"
			}, {
				"value": "330522",
				"label": "长兴县"
			}, {
				"value": "330523",
				"label": "安吉县"
			}]
		}, {
			"value": "330600",
			"label": "绍兴市",
			"children": [{
				"value": "330601",
				"label": "市辖区"
			}, {
				"value": "330602",
				"label": "越城区"
			}, {
				"value": "330603",
				"label": "柯桥区"
			}, {
				"value": "330604",
				"label": "上虞区"
			}, {
				"value": "330624",
				"label": "新昌县"
			}, {
				"value": "330681",
				"label": "诸暨市"
			}, {
				"value": "330683",
				"label": "嵊州市"
			}]
		}, {
			"value": "330700",
			"label": "金华市",
			"children": [{
				"value": "330701",
				"label": "市辖区"
			}, {
				"value": "330702",
				"label": "婺城区"
			}, {
				"value": "330703",
				"label": "金东区"
			}, {
				"value": "330723",
				"label": "武义县"
			}, {
				"value": "330726",
				"label": "浦江县"
			}, {
				"value": "330727",
				"label": "磐安县"
			}, {
				"value": "330781",
				"label": "兰溪市"
			}, {
				"value": "330782",
				"label": "义乌市"
			}, {
				"value": "330783",
				"label": "东阳市"
			}, {
				"value": "330784",
				"label": "永康市"
			}]
		}, {
			"value": "330800",
			"label": "衢州市",
			"children": [{
				"value": "330801",
				"label": "市辖区"
			}, {
				"value": "330802",
				"label": "柯城区"
			}, {
				"value": "330803",
				"label": "衢江区"
			}, {
				"value": "330822",
				"label": "常山县"
			}, {
				"value": "330824",
				"label": "开化县"
			}, {
				"value": "330825",
				"label": "龙游县"
			}, {
				"value": "330881",
				"label": "江山市"
			}]
		}, {
			"value": "330900",
			"label": "舟山市",
			"children": [{
				"value": "330901",
				"label": "市辖区"
			}, {
				"value": "330902",
				"label": "定海区"
			}, {
				"value": "330903",
				"label": "普陀区"
			}, {
				"value": "330921",
				"label": "岱山县"
			}, {
				"value": "330922",
				"label": "嵊泗县"
			}]
		}, {
			"value": "331000",
			"label": "台州市",
			"children": [{
				"value": "331001",
				"label": "市辖区"
			}, {
				"value": "331002",
				"label": "椒江区"
			}, {
				"value": "331003",
				"label": "黄岩区"
			}, {
				"value": "331004",
				"label": "路桥区"
			}, {
				"value": "331022",
				"label": "三门县"
			}, {
				"value": "331023",
				"label": "天台县"
			}, {
				"value": "331024",
				"label": "仙居县"
			}, {
				"value": "331081",
				"label": "温岭市"
			}, {
				"value": "331082",
				"label": "临海市"
			}, {
				"value": "331083",
				"label": "玉环市"
			}]
		}, {
			"value": "331100",
			"label": "丽水市",
			"children": [{
				"value": "331101",
				"label": "市辖区"
			}, {
				"value": "331102",
				"label": "莲都区"
			}, {
				"value": "331121",
				"label": "青田县"
			}, {
				"value": "331122",
				"label": "缙云县"
			}, {
				"value": "331123",
				"label": "遂昌县"
			}, {
				"value": "331124",
				"label": "松阳县"
			}, {
				"value": "331125",
				"label": "云和县"
			}, {
				"value": "331126",
				"label": "庆元县"
			}, {
				"value": "331127",
				"label": "景宁畲族自治县"
			}, {
				"value": "331181",
				"label": "龙泉市"
			}]
		}]
	}, {
		"value": "340000",
		"label": "安徽省",
		"children": [{
			"value": "340100",
			"label": "合肥市",
			"children": [{
				"value": "340101",
				"label": "市辖区"
			}, {
				"value": "340102",
				"label": "瑶海区"
			}, {
				"value": "340103",
				"label": "庐阳区"
			}, {
				"value": "340104",
				"label": "蜀山区"
			}, {
				"value": "340111",
				"label": "包河区"
			}, {
				"value": "340121",
				"label": "长丰县"
			}, {
				"value": "340122",
				"label": "肥东县"
			}, {
				"value": "340123",
				"label": "肥西县"
			}, {
				"value": "340124",
				"label": "庐江县"
			}, {
				"value": "340171",
				"label": "合肥高新技术产业开发区"
			}, {
				"value": "340172",
				"label": "合肥经济技术开发区"
			}, {
				"value": "340173",
				"label": "合肥新站高新技术产业开发区"
			}, {
				"value": "340181",
				"label": "巢湖市"
			}]
		}, {
			"value": "340200",
			"label": "芜湖市",
			"children": [{
				"value": "340201",
				"label": "市辖区"
			}, {
				"value": "340202",
				"label": "镜湖区"
			}, {
				"value": "340203",
				"label": "弋江区"
			}, {
				"value": "340207",
				"label": "鸠江区"
			}, {
				"value": "340208",
				"label": "三山区"
			}, {
				"value": "340221",
				"label": "芜湖县"
			}, {
				"value": "340222",
				"label": "繁昌县"
			}, {
				"value": "340223",
				"label": "南陵县"
			}, {
				"value": "340225",
				"label": "无为县"
			}, {
				"value": "340271",
				"label": "芜湖经济技术开发区"
			}, {
				"value": "340272",
				"label": "安徽芜湖长江大桥经济开发区"
			}]
		}, {
			"value": "340300",
			"label": "蚌埠市",
			"children": [{
				"value": "340301",
				"label": "市辖区"
			}, {
				"value": "340302",
				"label": "龙子湖区"
			}, {
				"value": "340303",
				"label": "蚌山区"
			}, {
				"value": "340304",
				"label": "禹会区"
			}, {
				"value": "340311",
				"label": "淮上区"
			}, {
				"value": "340321",
				"label": "怀远县"
			}, {
				"value": "340322",
				"label": "五河县"
			}, {
				"value": "340323",
				"label": "固镇县"
			}, {
				"value": "340371",
				"label": "蚌埠市高新技术开发区"
			}, {
				"value": "340372",
				"label": "蚌埠市经济开发区"
			}]
		}, {
			"value": "340400",
			"label": "淮南市",
			"children": [{
				"value": "340401",
				"label": "市辖区"
			}, {
				"value": "340402",
				"label": "大通区"
			}, {
				"value": "340403",
				"label": "田家庵区"
			}, {
				"value": "340404",
				"label": "谢家集区"
			}, {
				"value": "340405",
				"label": "八公山区"
			}, {
				"value": "340406",
				"label": "潘集区"
			}, {
				"value": "340421",
				"label": "凤台县"
			}, {
				"value": "340422",
				"label": "寿县"
			}]
		}, {
			"value": "340500",
			"label": "马鞍山市",
			"children": [{
				"value": "340501",
				"label": "市辖区"
			}, {
				"value": "340503",
				"label": "花山区"
			}, {
				"value": "340504",
				"label": "雨山区"
			}, {
				"value": "340506",
				"label": "博望区"
			}, {
				"value": "340521",
				"label": "当涂县"
			}, {
				"value": "340522",
				"label": "含山县"
			}, {
				"value": "340523",
				"label": "和县"
			}]
		}, {
			"value": "340600",
			"label": "淮北市",
			"children": [{
				"value": "340601",
				"label": "市辖区"
			}, {
				"value": "340602",
				"label": "杜集区"
			}, {
				"value": "340603",
				"label": "相山区"
			}, {
				"value": "340604",
				"label": "烈山区"
			}, {
				"value": "340621",
				"label": "濉溪县"
			}]
		}, {
			"value": "340700",
			"label": "铜陵市",
			"children": [{
				"value": "340701",
				"label": "市辖区"
			}, {
				"value": "340705",
				"label": "铜官区"
			}, {
				"value": "340706",
				"label": "义安区"
			}, {
				"value": "340711",
				"label": "郊区"
			}, {
				"value": "340722",
				"label": "枞阳县"
			}]
		}, {
			"value": "340800",
			"label": "安庆市",
			"children": [{
				"value": "340801",
				"label": "市辖区"
			}, {
				"value": "340802",
				"label": "迎江区"
			}, {
				"value": "340803",
				"label": "大观区"
			}, {
				"value": "340811",
				"label": "宜秀区"
			}, {
				"value": "340822",
				"label": "怀宁县"
			}, {
				"value": "340825",
				"label": "太湖县"
			}, {
				"value": "340826",
				"label": "宿松县"
			}, {
				"value": "340827",
				"label": "望江县"
			}, {
				"value": "340828",
				"label": "岳西县"
			}, {
				"value": "340871",
				"label": "安徽安庆经济开发区"
			}, {
				"value": "340881",
				"label": "桐城市"
			}, {
				"value": "340882",
				"label": "潜山市"
			}]
		}, {
			"value": "341000",
			"label": "黄山市",
			"children": [{
				"value": "341001",
				"label": "市辖区"
			}, {
				"value": "341002",
				"label": "屯溪区"
			}, {
				"value": "341003",
				"label": "黄山区"
			}, {
				"value": "341004",
				"label": "徽州区"
			}, {
				"value": "341021",
				"label": "歙县"
			}, {
				"value": "341022",
				"label": "休宁县"
			}, {
				"value": "341023",
				"label": "黟县"
			}, {
				"value": "341024",
				"label": "祁门县"
			}]
		}, {
			"value": "341100",
			"label": "滁州市",
			"children": [{
				"value": "341101",
				"label": "市辖区"
			}, {
				"value": "341102",
				"label": "琅琊区"
			}, {
				"value": "341103",
				"label": "南谯区"
			}, {
				"value": "341122",
				"label": "来安县"
			}, {
				"value": "341124",
				"label": "全椒县"
			}, {
				"value": "341125",
				"label": "定远县"
			}, {
				"value": "341126",
				"label": "凤阳县"
			}, {
				"value": "341171",
				"label": "苏滁现代产业园"
			}, {
				"value": "341172",
				"label": "滁州经济技术开发区"
			}, {
				"value": "341181",
				"label": "天长市"
			}, {
				"value": "341182",
				"label": "明光市"
			}]
		}, {
			"value": "341200",
			"label": "阜阳市",
			"children": [{
				"value": "341201",
				"label": "市辖区"
			}, {
				"value": "341202",
				"label": "颍州区"
			}, {
				"value": "341203",
				"label": "颍东区"
			}, {
				"value": "341204",
				"label": "颍泉区"
			}, {
				"value": "341221",
				"label": "临泉县"
			}, {
				"value": "341222",
				"label": "太和县"
			}, {
				"value": "341225",
				"label": "阜南县"
			}, {
				"value": "341226",
				"label": "颍上县"
			}, {
				"value": "341271",
				"label": "阜阳合肥现代产业园区"
			}, {
				"value": "341272",
				"label": "阜阳经济技术开发区"
			}, {
				"value": "341282",
				"label": "界首市"
			}]
		}, {
			"value": "341300",
			"label": "宿州市",
			"children": [{
				"value": "341301",
				"label": "市辖区"
			}, {
				"value": "341302",
				"label": "埇桥区"
			}, {
				"value": "341321",
				"label": "砀山县"
			}, {
				"value": "341322",
				"label": "萧县"
			}, {
				"value": "341323",
				"label": "灵璧县"
			}, {
				"value": "341324",
				"label": "泗县"
			}, {
				"value": "341371",
				"label": "宿州马鞍山现代产业园区"
			}, {
				"value": "341372",
				"label": "宿州经济技术开发区"
			}]
		}, {
			"value": "341500",
			"label": "六安市",
			"children": [{
				"value": "341501",
				"label": "市辖区"
			}, {
				"value": "341502",
				"label": "金安区"
			}, {
				"value": "341503",
				"label": "裕安区"
			}, {
				"value": "341504",
				"label": "叶集区"
			}, {
				"value": "341522",
				"label": "霍邱县"
			}, {
				"value": "341523",
				"label": "舒城县"
			}, {
				"value": "341524",
				"label": "金寨县"
			}, {
				"value": "341525",
				"label": "霍山县"
			}]
		}, {
			"value": "341600",
			"label": "亳州市",
			"children": [{
				"value": "341601",
				"label": "市辖区"
			}, {
				"value": "341602",
				"label": "谯城区"
			}, {
				"value": "341621",
				"label": "涡阳县"
			}, {
				"value": "341622",
				"label": "蒙城县"
			}, {
				"value": "341623",
				"label": "利辛县"
			}]
		}, {
			"value": "341700",
			"label": "池州市",
			"children": [{
				"value": "341701",
				"label": "市辖区"
			}, {
				"value": "341702",
				"label": "贵池区"
			}, {
				"value": "341721",
				"label": "东至县"
			}, {
				"value": "341722",
				"label": "石台县"
			}, {
				"value": "341723",
				"label": "青阳县"
			}]
		}, {
			"value": "341800",
			"label": "宣城市",
			"children": [{
				"value": "341801",
				"label": "市辖区"
			}, {
				"value": "341802",
				"label": "宣州区"
			}, {
				"value": "341821",
				"label": "郎溪县"
			}, {
				"value": "341823",
				"label": "泾县"
			}, {
				"value": "341824",
				"label": "绩溪县"
			}, {
				"value": "341825",
				"label": "旌德县"
			}, {
				"value": "341871",
				"label": "宣城市经济开发区"
			}, {
				"value": "341881",
				"label": "宁国市"
			}, {
				"value": "341882",
				"label": "广德市"
			}]
		}]
	}, {
		"value": "350000",
		"label": "福建省",
		"children": [{
			"value": "350100",
			"label": "福州市",
			"children": [{
				"value": "350101",
				"label": "市辖区"
			}, {
				"value": "350102",
				"label": "鼓楼区"
			}, {
				"value": "350103",
				"label": "台江区"
			}, {
				"value": "350104",
				"label": "仓山区"
			}, {
				"value": "350105",
				"label": "马尾区"
			}, {
				"value": "350111",
				"label": "晋安区"
			}, {
				"value": "350112",
				"label": "长乐区"
			}, {
				"value": "350121",
				"label": "闽侯县"
			}, {
				"value": "350122",
				"label": "连江县"
			}, {
				"value": "350123",
				"label": "罗源县"
			}, {
				"value": "350124",
				"label": "闽清县"
			}, {
				"value": "350125",
				"label": "永泰县"
			}, {
				"value": "350128",
				"label": "平潭县"
			}, {
				"value": "350181",
				"label": "福清市"
			}]
		}, {
			"value": "350200",
			"label": "厦门市",
			"children": [{
				"value": "350201",
				"label": "市辖区"
			}, {
				"value": "350203",
				"label": "思明区"
			}, {
				"value": "350205",
				"label": "海沧区"
			}, {
				"value": "350206",
				"label": "湖里区"
			}, {
				"value": "350211",
				"label": "集美区"
			}, {
				"value": "350212",
				"label": "同安区"
			}, {
				"value": "350213",
				"label": "翔安区"
			}]
		}, {
			"value": "350300",
			"label": "莆田市",
			"children": [{
				"value": "350301",
				"label": "市辖区"
			}, {
				"value": "350302",
				"label": "城厢区"
			}, {
				"value": "350303",
				"label": "涵江区"
			}, {
				"value": "350304",
				"label": "荔城区"
			}, {
				"value": "350305",
				"label": "秀屿区"
			}, {
				"value": "350322",
				"label": "仙游县"
			}]
		}, {
			"value": "350400",
			"label": "三明市",
			"children": [{
				"value": "350401",
				"label": "市辖区"
			}, {
				"value": "350402",
				"label": "梅列区"
			}, {
				"value": "350403",
				"label": "三元区"
			}, {
				"value": "350421",
				"label": "明溪县"
			}, {
				"value": "350423",
				"label": "清流县"
			}, {
				"value": "350424",
				"label": "宁化县"
			}, {
				"value": "350425",
				"label": "大田县"
			}, {
				"value": "350426",
				"label": "尤溪县"
			}, {
				"value": "350427",
				"label": "沙县"
			}, {
				"value": "350428",
				"label": "将乐县"
			}, {
				"value": "350429",
				"label": "泰宁县"
			}, {
				"value": "350430",
				"label": "建宁县"
			}, {
				"value": "350481",
				"label": "永安市"
			}]
		}, {
			"value": "350500",
			"label": "泉州市",
			"children": [{
				"value": "350501",
				"label": "市辖区"
			}, {
				"value": "350502",
				"label": "鲤城区"
			}, {
				"value": "350503",
				"label": "丰泽区"
			}, {
				"value": "350504",
				"label": "洛江区"
			}, {
				"value": "350505",
				"label": "泉港区"
			}, {
				"value": "350521",
				"label": "惠安县"
			}, {
				"value": "350524",
				"label": "安溪县"
			}, {
				"value": "350525",
				"label": "永春县"
			}, {
				"value": "350526",
				"label": "德化县"
			}, {
				"value": "350527",
				"label": "金门县"
			}, {
				"value": "350581",
				"label": "石狮市"
			}, {
				"value": "350582",
				"label": "晋江市"
			}, {
				"value": "350583",
				"label": "南安市"
			}]
		}, {
			"value": "350600",
			"label": "漳州市",
			"children": [{
				"value": "350601",
				"label": "市辖区"
			}, {
				"value": "350602",
				"label": "芗城区"
			}, {
				"value": "350603",
				"label": "龙文区"
			}, {
				"value": "350622",
				"label": "云霄县"
			}, {
				"value": "350623",
				"label": "漳浦县"
			}, {
				"value": "350624",
				"label": "诏安县"
			}, {
				"value": "350625",
				"label": "长泰县"
			}, {
				"value": "350626",
				"label": "东山县"
			}, {
				"value": "350627",
				"label": "南靖县"
			}, {
				"value": "350628",
				"label": "平和县"
			}, {
				"value": "350629",
				"label": "华安县"
			}, {
				"value": "350681",
				"label": "龙海市"
			}]
		}, {
			"value": "350700",
			"label": "南平市",
			"children": [{
				"value": "350701",
				"label": "市辖区"
			}, {
				"value": "350702",
				"label": "延平区"
			}, {
				"value": "350703",
				"label": "建阳区"
			}, {
				"value": "350721",
				"label": "顺昌县"
			}, {
				"value": "350722",
				"label": "浦城县"
			}, {
				"value": "350723",
				"label": "光泽县"
			}, {
				"value": "350724",
				"label": "松溪县"
			}, {
				"value": "350725",
				"label": "政和县"
			}, {
				"value": "350781",
				"label": "邵武市"
			}, {
				"value": "350782",
				"label": "武夷山市"
			}, {
				"value": "350783",
				"label": "建瓯市"
			}]
		}, {
			"value": "350800",
			"label": "龙岩市",
			"children": [{
				"value": "350801",
				"label": "市辖区"
			}, {
				"value": "350802",
				"label": "新罗区"
			}, {
				"value": "350803",
				"label": "永定区"
			}, {
				"value": "350821",
				"label": "长汀县"
			}, {
				"value": "350823",
				"label": "上杭县"
			}, {
				"value": "350824",
				"label": "武平县"
			}, {
				"value": "350825",
				"label": "连城县"
			}, {
				"value": "350881",
				"label": "漳平市"
			}]
		}, {
			"value": "350900",
			"label": "宁德市",
			"children": [{
				"value": "350901",
				"label": "市辖区"
			}, {
				"value": "350902",
				"label": "蕉城区"
			}, {
				"value": "350921",
				"label": "霞浦县"
			}, {
				"value": "350922",
				"label": "古田县"
			}, {
				"value": "350923",
				"label": "屏南县"
			}, {
				"value": "350924",
				"label": "寿宁县"
			}, {
				"value": "350925",
				"label": "周宁县"
			}, {
				"value": "350926",
				"label": "柘荣县"
			}, {
				"value": "350981",
				"label": "福安市"
			}, {
				"value": "350982",
				"label": "福鼎市"
			}]
		}]
	}, {
		"value": "360000",
		"label": "江西省",
		"children": [{
			"value": "360100",
			"label": "南昌市",
			"children": [{
				"value": "360101",
				"label": "市辖区"
			}, {
				"value": "360102",
				"label": "东湖区"
			}, {
				"value": "360103",
				"label": "西湖区"
			}, {
				"value": "360104",
				"label": "青云谱区"
			}, {
				"value": "360105",
				"label": "湾里区"
			}, {
				"value": "360111",
				"label": "青山湖区"
			}, {
				"value": "360112",
				"label": "新建区"
			}, {
				"value": "360121",
				"label": "南昌县"
			}, {
				"value": "360123",
				"label": "安义县"
			}, {
				"value": "360124",
				"label": "进贤县"
			}]
		}, {
			"value": "360200",
			"label": "景德镇市",
			"children": [{
				"value": "360201",
				"label": "市辖区"
			}, {
				"value": "360202",
				"label": "昌江区"
			}, {
				"value": "360203",
				"label": "珠山区"
			}, {
				"value": "360222",
				"label": "浮梁县"
			}, {
				"value": "360281",
				"label": "乐平市"
			}]
		}, {
			"value": "360300",
			"label": "萍乡市",
			"children": [{
				"value": "360301",
				"label": "市辖区"
			}, {
				"value": "360302",
				"label": "安源区"
			}, {
				"value": "360313",
				"label": "湘东区"
			}, {
				"value": "360321",
				"label": "莲花县"
			}, {
				"value": "360322",
				"label": "上栗县"
			}, {
				"value": "360323",
				"label": "芦溪县"
			}]
		}, {
			"value": "360400",
			"label": "九江市",
			"children": [{
				"value": "360401",
				"label": "市辖区"
			}, {
				"value": "360402",
				"label": "濂溪区"
			}, {
				"value": "360403",
				"label": "浔阳区"
			}, {
				"value": "360404",
				"label": "柴桑区"
			}, {
				"value": "360423",
				"label": "武宁县"
			}, {
				"value": "360424",
				"label": "修水县"
			}, {
				"value": "360425",
				"label": "永修县"
			}, {
				"value": "360426",
				"label": "德安县"
			}, {
				"value": "360428",
				"label": "都昌县"
			}, {
				"value": "360429",
				"label": "湖口县"
			}, {
				"value": "360430",
				"label": "彭泽县"
			}, {
				"value": "360481",
				"label": "瑞昌市"
			}, {
				"value": "360482",
				"label": "共青城市"
			}, {
				"value": "360483",
				"label": "庐山市"
			}]
		}, {
			"value": "360500",
			"label": "新余市",
			"children": [{
				"value": "360501",
				"label": "市辖区"
			}, {
				"value": "360502",
				"label": "渝水区"
			}, {
				"value": "360521",
				"label": "分宜县"
			}]
		}, {
			"value": "360600",
			"label": "鹰潭市",
			"children": [{
				"value": "360601",
				"label": "市辖区"
			}, {
				"value": "360602",
				"label": "月湖区"
			}, {
				"value": "360603",
				"label": "余江区"
			}, {
				"value": "360681",
				"label": "贵溪市"
			}]
		}, {
			"value": "360700",
			"label": "赣州市",
			"children": [{
				"value": "360701",
				"label": "市辖区"
			}, {
				"value": "360702",
				"label": "章贡区"
			}, {
				"value": "360703",
				"label": "南康区"
			}, {
				"value": "360704",
				"label": "赣县区"
			}, {
				"value": "360722",
				"label": "信丰县"
			}, {
				"value": "360723",
				"label": "大余县"
			}, {
				"value": "360724",
				"label": "上犹县"
			}, {
				"value": "360725",
				"label": "崇义县"
			}, {
				"value": "360726",
				"label": "安远县"
			}, {
				"value": "360727",
				"label": "龙南县"
			}, {
				"value": "360728",
				"label": "定南县"
			}, {
				"value": "360729",
				"label": "全南县"
			}, {
				"value": "360730",
				"label": "宁都县"
			}, {
				"value": "360731",
				"label": "于都县"
			}, {
				"value": "360732",
				"label": "兴国县"
			}, {
				"value": "360733",
				"label": "会昌县"
			}, {
				"value": "360734",
				"label": "寻乌县"
			}, {
				"value": "360735",
				"label": "石城县"
			}, {
				"value": "360781",
				"label": "瑞金市"
			}]
		}, {
			"value": "360800",
			"label": "吉安市",
			"children": [{
				"value": "360801",
				"label": "市辖区"
			}, {
				"value": "360802",
				"label": "吉州区"
			}, {
				"value": "360803",
				"label": "青原区"
			}, {
				"value": "360821",
				"label": "吉安县"
			}, {
				"value": "360822",
				"label": "吉水县"
			}, {
				"value": "360823",
				"label": "峡江县"
			}, {
				"value": "360824",
				"label": "新干县"
			}, {
				"value": "360825",
				"label": "永丰县"
			}, {
				"value": "360826",
				"label": "泰和县"
			}, {
				"value": "360827",
				"label": "遂川县"
			}, {
				"value": "360828",
				"label": "万安县"
			}, {
				"value": "360829",
				"label": "安福县"
			}, {
				"value": "360830",
				"label": "永新县"
			}, {
				"value": "360881",
				"label": "井冈山市"
			}]
		}, {
			"value": "360900",
			"label": "宜春市",
			"children": [{
				"value": "360901",
				"label": "市辖区"
			}, {
				"value": "360902",
				"label": "袁州区"
			}, {
				"value": "360921",
				"label": "奉新县"
			}, {
				"value": "360922",
				"label": "万载县"
			}, {
				"value": "360923",
				"label": "上高县"
			}, {
				"value": "360924",
				"label": "宜丰县"
			}, {
				"value": "360925",
				"label": "靖安县"
			}, {
				"value": "360926",
				"label": "铜鼓县"
			}, {
				"value": "360981",
				"label": "丰城市"
			}, {
				"value": "360982",
				"label": "樟树市"
			}, {
				"value": "360983",
				"label": "高安市"
			}]
		}, {
			"value": "361000",
			"label": "抚州市",
			"children": [{
				"value": "361001",
				"label": "市辖区"
			}, {
				"value": "361002",
				"label": "临川区"
			}, {
				"value": "361003",
				"label": "东乡区"
			}, {
				"value": "361021",
				"label": "南城县"
			}, {
				"value": "361022",
				"label": "黎川县"
			}, {
				"value": "361023",
				"label": "南丰县"
			}, {
				"value": "361024",
				"label": "崇仁县"
			}, {
				"value": "361025",
				"label": "乐安县"
			}, {
				"value": "361026",
				"label": "宜黄县"
			}, {
				"value": "361027",
				"label": "金溪县"
			}, {
				"value": "361028",
				"label": "资溪县"
			}, {
				"value": "361030",
				"label": "广昌县"
			}]
		}, {
			"value": "361100",
			"label": "上饶市",
			"children": [{
				"value": "361101",
				"label": "市辖区"
			}, {
				"value": "361102",
				"label": "信州区"
			}, {
				"value": "361103",
				"label": "广丰区"
			}, {
				"value": "361104",
				"label": "广信区"
			}, {
				"value": "361123",
				"label": "玉山县"
			}, {
				"value": "361124",
				"label": "铅山县"
			}, {
				"value": "361125",
				"label": "横峰县"
			}, {
				"value": "361126",
				"label": "弋阳县"
			}, {
				"value": "361127",
				"label": "余干县"
			}, {
				"value": "361128",
				"label": "鄱阳县"
			}, {
				"value": "361129",
				"label": "万年县"
			}, {
				"value": "361130",
				"label": "婺源县"
			}, {
				"value": "361181",
				"label": "德兴市"
			}]
		}]
	}, {
		"value": "370000",
		"label": "山东省",
		"children": [{
			"value": "370100",
			"label": "济南市",
			"children": [{
				"value": "370101",
				"label": "市辖区"
			}, {
				"value": "370102",
				"label": "历下区"
			}, {
				"value": "370103",
				"label": "市中区"
			}, {
				"value": "370104",
				"label": "槐荫区"
			}, {
				"value": "370105",
				"label": "天桥区"
			}, {
				"value": "370112",
				"label": "历城区"
			}, {
				"value": "370113",
				"label": "长清区"
			}, {
				"value": "370114",
				"label": "章丘区"
			}, {
				"value": "370115",
				"label": "济阳区"
			}, {
				"value": "370116",
				"label": "莱芜区"
			}, {
				"value": "370117",
				"label": "钢城区"
			}, {
				"value": "370124",
				"label": "平阴县"
			}, {
				"value": "370126",
				"label": "商河县"
			}, {
				"value": "370171",
				"label": "济南高新技术产业开发区"
			}]
		}, {
			"value": "370200",
			"label": "青岛市",
			"children": [{
				"value": "370201",
				"label": "市辖区"
			}, {
				"value": "370202",
				"label": "市南区"
			}, {
				"value": "370203",
				"label": "市北区"
			}, {
				"value": "370211",
				"label": "黄岛区"
			}, {
				"value": "370212",
				"label": "崂山区"
			}, {
				"value": "370213",
				"label": "李沧区"
			}, {
				"value": "370214",
				"label": "城阳区"
			}, {
				"value": "370215",
				"label": "即墨区"
			}, {
				"value": "370271",
				"label": "青岛高新技术产业开发区"
			}, {
				"value": "370281",
				"label": "胶州市"
			}, {
				"value": "370283",
				"label": "平度市"
			}, {
				"value": "370285",
				"label": "莱西市"
			}]
		}, {
			"value": "370300",
			"label": "淄博市",
			"children": [{
				"value": "370301",
				"label": "市辖区"
			}, {
				"value": "370302",
				"label": "淄川区"
			}, {
				"value": "370303",
				"label": "张店区"
			}, {
				"value": "370304",
				"label": "博山区"
			}, {
				"value": "370305",
				"label": "临淄区"
			}, {
				"value": "370306",
				"label": "周村区"
			}, {
				"value": "370321",
				"label": "桓台县"
			}, {
				"value": "370322",
				"label": "高青县"
			}, {
				"value": "370323",
				"label": "沂源县"
			}]
		}, {
			"value": "370400",
			"label": "枣庄市",
			"children": [{
				"value": "370401",
				"label": "市辖区"
			}, {
				"value": "370402",
				"label": "市中区"
			}, {
				"value": "370403",
				"label": "薛城区"
			}, {
				"value": "370404",
				"label": "峄城区"
			}, {
				"value": "370405",
				"label": "台儿庄区"
			}, {
				"value": "370406",
				"label": "山亭区"
			}, {
				"value": "370481",
				"label": "滕州市"
			}]
		}, {
			"value": "370500",
			"label": "东营市",
			"children": [{
				"value": "370501",
				"label": "市辖区"
			}, {
				"value": "370502",
				"label": "东营区"
			}, {
				"value": "370503",
				"label": "河口区"
			}, {
				"value": "370505",
				"label": "垦利区"
			}, {
				"value": "370522",
				"label": "利津县"
			}, {
				"value": "370523",
				"label": "广饶县"
			}, {
				"value": "370571",
				"label": "东营经济技术开发区"
			}, {
				"value": "370572",
				"label": "东营港经济开发区"
			}]
		}, {
			"value": "370600",
			"label": "烟台市",
			"children": [{
				"value": "370601",
				"label": "市辖区"
			}, {
				"value": "370602",
				"label": "芝罘区"
			}, {
				"value": "370611",
				"label": "福山区"
			}, {
				"value": "370612",
				"label": "牟平区"
			}, {
				"value": "370613",
				"label": "莱山区"
			}, {
				"value": "370634",
				"label": "长岛县"
			}, {
				"value": "370671",
				"label": "烟台高新技术产业开发区"
			}, {
				"value": "370672",
				"label": "烟台经济技术开发区"
			}, {
				"value": "370681",
				"label": "龙口市"
			}, {
				"value": "370682",
				"label": "莱阳市"
			}, {
				"value": "370683",
				"label": "莱州市"
			}, {
				"value": "370684",
				"label": "蓬莱市"
			}, {
				"value": "370685",
				"label": "招远市"
			}, {
				"value": "370686",
				"label": "栖霞市"
			}, {
				"value": "370687",
				"label": "海阳市"
			}]
		}, {
			"value": "370700",
			"label": "潍坊市",
			"children": [{
				"value": "370701",
				"label": "市辖区"
			}, {
				"value": "370702",
				"label": "潍城区"
			}, {
				"value": "370703",
				"label": "寒亭区"
			}, {
				"value": "370704",
				"label": "坊子区"
			}, {
				"value": "370705",
				"label": "奎文区"
			}, {
				"value": "370724",
				"label": "临朐县"
			}, {
				"value": "370725",
				"label": "昌乐县"
			}, {
				"value": "370772",
				"label": "潍坊滨海经济技术开发区"
			}, {
				"value": "370781",
				"label": "青州市"
			}, {
				"value": "370782",
				"label": "诸城市"
			}, {
				"value": "370783",
				"label": "寿光市"
			}, {
				"value": "370784",
				"label": "安丘市"
			}, {
				"value": "370785",
				"label": "高密市"
			}, {
				"value": "370786",
				"label": "昌邑市"
			}]
		}, {
			"value": "370800",
			"label": "济宁市",
			"children": [{
				"value": "370801",
				"label": "市辖区"
			}, {
				"value": "370811",
				"label": "任城区"
			}, {
				"value": "370812",
				"label": "兖州区"
			}, {
				"value": "370826",
				"label": "微山县"
			}, {
				"value": "370827",
				"label": "鱼台县"
			}, {
				"value": "370828",
				"label": "金乡县"
			}, {
				"value": "370829",
				"label": "嘉祥县"
			}, {
				"value": "370830",
				"label": "汶上县"
			}, {
				"value": "370831",
				"label": "泗水县"
			}, {
				"value": "370832",
				"label": "梁山县"
			}, {
				"value": "370871",
				"label": "济宁高新技术产业开发区"
			}, {
				"value": "370881",
				"label": "曲阜市"
			}, {
				"value": "370883",
				"label": "邹城市"
			}]
		}, {
			"value": "370900",
			"label": "泰安市",
			"children": [{
				"value": "370901",
				"label": "市辖区"
			}, {
				"value": "370902",
				"label": "泰山区"
			}, {
				"value": "370911",
				"label": "岱岳区"
			}, {
				"value": "370921",
				"label": "宁阳县"
			}, {
				"value": "370923",
				"label": "东平县"
			}, {
				"value": "370982",
				"label": "新泰市"
			}, {
				"value": "370983",
				"label": "肥城市"
			}]
		}, {
			"value": "371000",
			"label": "威海市",
			"children": [{
				"value": "371001",
				"label": "市辖区"
			}, {
				"value": "371002",
				"label": "环翠区"
			}, {
				"value": "371003",
				"label": "文登区"
			}, {
				"value": "371071",
				"label": "威海火炬高技术产业开发区"
			}, {
				"value": "371072",
				"label": "威海经济技术开发区"
			}, {
				"value": "371073",
				"label": "威海临港经济技术开发区"
			}, {
				"value": "371082",
				"label": "荣成市"
			}, {
				"value": "371083",
				"label": "乳山市"
			}]
		}, {
			"value": "371100",
			"label": "日照市",
			"children": [{
				"value": "371101",
				"label": "市辖区"
			}, {
				"value": "371102",
				"label": "东港区"
			}, {
				"value": "371103",
				"label": "岚山区"
			}, {
				"value": "371121",
				"label": "五莲县"
			}, {
				"value": "371122",
				"label": "莒县"
			}, {
				"value": "371171",
				"label": "日照经济技术开发区"
			}]
		}, {
			"value": "371300",
			"label": "临沂市",
			"children": [{
				"value": "371301",
				"label": "市辖区"
			}, {
				"value": "371302",
				"label": "兰山区"
			}, {
				"value": "371311",
				"label": "罗庄区"
			}, {
				"value": "371312",
				"label": "河东区"
			}, {
				"value": "371321",
				"label": "沂南县"
			}, {
				"value": "371322",
				"label": "郯城县"
			}, {
				"value": "371323",
				"label": "沂水县"
			}, {
				"value": "371324",
				"label": "兰陵县"
			}, {
				"value": "371325",
				"label": "费县"
			}, {
				"value": "371326",
				"label": "平邑县"
			}, {
				"value": "371327",
				"label": "莒南县"
			}, {
				"value": "371328",
				"label": "蒙阴县"
			}, {
				"value": "371329",
				"label": "临沭县"
			}, {
				"value": "371371",
				"label": "临沂高新技术产业开发区"
			}, {
				"value": "371372",
				"label": "临沂经济技术开发区"
			}, {
				"value": "371373",
				"label": "临沂临港经济开发区"
			}]
		}, {
			"value": "371400",
			"label": "德州市",
			"children": [{
				"value": "371401",
				"label": "市辖区"
			}, {
				"value": "371402",
				"label": "德城区"
			}, {
				"value": "371403",
				"label": "陵城区"
			}, {
				"value": "371422",
				"label": "宁津县"
			}, {
				"value": "371423",
				"label": "庆云县"
			}, {
				"value": "371424",
				"label": "临邑县"
			}, {
				"value": "371425",
				"label": "齐河县"
			}, {
				"value": "371426",
				"label": "平原县"
			}, {
				"value": "371427",
				"label": "夏津县"
			}, {
				"value": "371428",
				"label": "武城县"
			}, {
				"value": "371471",
				"label": "德州经济技术开发区"
			}, {
				"value": "371472",
				"label": "德州运河经济开发区"
			}, {
				"value": "371481",
				"label": "乐陵市"
			}, {
				"value": "371482",
				"label": "禹城市"
			}]
		}, {
			"value": "371500",
			"label": "聊城市",
			"children": [{
				"value": "371501",
				"label": "市辖区"
			}, {
				"value": "371502",
				"label": "东昌府区"
			}, {
				"value": "371503",
				"label": "茌平区"
			}, {
				"value": "371521",
				"label": "阳谷县"
			}, {
				"value": "371522",
				"label": "莘县"
			}, {
				"value": "371524",
				"label": "东阿县"
			}, {
				"value": "371525",
				"label": "冠县"
			}, {
				"value": "371526",
				"label": "高唐县"
			}, {
				"value": "371581",
				"label": "临清市"
			}]
		}, {
			"value": "371600",
			"label": "滨州市",
			"children": [{
				"value": "371601",
				"label": "市辖区"
			}, {
				"value": "371602",
				"label": "滨城区"
			}, {
				"value": "371603",
				"label": "沾化区"
			}, {
				"value": "371621",
				"label": "惠民县"
			}, {
				"value": "371622",
				"label": "阳信县"
			}, {
				"value": "371623",
				"label": "无棣县"
			}, {
				"value": "371625",
				"label": "博兴县"
			}, {
				"value": "371681",
				"label": "邹平市"
			}]
		}, {
			"value": "371700",
			"label": "菏泽市",
			"children": [{
				"value": "371701",
				"label": "市辖区"
			}, {
				"value": "371702",
				"label": "牡丹区"
			}, {
				"value": "371703",
				"label": "定陶区"
			}, {
				"value": "371721",
				"label": "曹县"
			}, {
				"value": "371722",
				"label": "单县"
			}, {
				"value": "371723",
				"label": "成武县"
			}, {
				"value": "371724",
				"label": "巨野县"
			}, {
				"value": "371725",
				"label": "郓城县"
			}, {
				"value": "371726",
				"label": "鄄城县"
			}, {
				"value": "371728",
				"label": "东明县"
			}, {
				"value": "371771",
				"label": "菏泽经济技术开发区"
			}, {
				"value": "371772",
				"label": "菏泽高新技术开发区"
			}]
		}]
	}, {
		"value": "410000",
		"label": "河南省",
		"children": [{
			"value": "410100",
			"label": "郑州市",
			"children": [{
				"value": "410101",
				"label": "市辖区"
			}, {
				"value": "410102",
				"label": "中原区"
			}, {
				"value": "410103",
				"label": "二七区"
			}, {
				"value": "410104",
				"label": "管城回族区"
			}, {
				"value": "410105",
				"label": "金水区"
			}, {
				"value": "410106",
				"label": "上街区"
			}, {
				"value": "410108",
				"label": "惠济区"
			}, {
				"value": "410122",
				"label": "中牟县"
			}, {
				"value": "410171",
				"label": "郑州经济技术开发区"
			}, {
				"value": "410172",
				"label": "郑州高新技术产业开发区"
			}, {
				"value": "410173",
				"label": "郑州航空港经济综合实验区"
			}, {
				"value": "410181",
				"label": "巩义市"
			}, {
				"value": "410182",
				"label": "荥阳市"
			}, {
				"value": "410183",
				"label": "新密市"
			}, {
				"value": "410184",
				"label": "新郑市"
			}, {
				"value": "410185",
				"label": "登封市"
			}]
		}, {
			"value": "410200",
			"label": "开封市",
			"children": [{
				"value": "410201",
				"label": "市辖区"
			}, {
				"value": "410202",
				"label": "龙亭区"
			}, {
				"value": "410203",
				"label": "顺河回族区"
			}, {
				"value": "410204",
				"label": "鼓楼区"
			}, {
				"value": "410205",
				"label": "禹王台区"
			}, {
				"value": "410212",
				"label": "祥符区"
			}, {
				"value": "410221",
				"label": "杞县"
			}, {
				"value": "410222",
				"label": "通许县"
			}, {
				"value": "410223",
				"label": "尉氏县"
			}, {
				"value": "410225",
				"label": "兰考县"
			}]
		}, {
			"value": "410300",
			"label": "洛阳市",
			"children": [{
				"value": "410301",
				"label": "市辖区"
			}, {
				"value": "410302",
				"label": "老城区"
			}, {
				"value": "410303",
				"label": "西工区"
			}, {
				"value": "410304",
				"label": "瀍河回族区"
			}, {
				"value": "410305",
				"label": "涧西区"
			}, {
				"value": "410306",
				"label": "吉利区"
			}, {
				"value": "410311",
				"label": "洛龙区"
			}, {
				"value": "410322",
				"label": "孟津县"
			}, {
				"value": "410323",
				"label": "新安县"
			}, {
				"value": "410324",
				"label": "栾川县"
			}, {
				"value": "410325",
				"label": "嵩县"
			}, {
				"value": "410326",
				"label": "汝阳县"
			}, {
				"value": "410327",
				"label": "宜阳县"
			}, {
				"value": "410328",
				"label": "洛宁县"
			}, {
				"value": "410329",
				"label": "伊川县"
			}, {
				"value": "410371",
				"label": "洛阳高新技术产业开发区"
			}, {
				"value": "410381",
				"label": "偃师市"
			}]
		}, {
			"value": "410400",
			"label": "平顶山市",
			"children": [{
				"value": "410401",
				"label": "市辖区"
			}, {
				"value": "410402",
				"label": "新华区"
			}, {
				"value": "410403",
				"label": "卫东区"
			}, {
				"value": "410404",
				"label": "石龙区"
			}, {
				"value": "410411",
				"label": "湛河区"
			}, {
				"value": "410421",
				"label": "宝丰县"
			}, {
				"value": "410422",
				"label": "叶县"
			}, {
				"value": "410423",
				"label": "鲁山县"
			}, {
				"value": "410425",
				"label": "郏县"
			}, {
				"value": "410471",
				"label": "平顶山高新技术产业开发区"
			}, {
				"value": "410472",
				"label": "平顶山市城乡一体化示范区"
			}, {
				"value": "410481",
				"label": "舞钢市"
			}, {
				"value": "410482",
				"label": "汝州市"
			}]
		}, {
			"value": "410500",
			"label": "安阳市",
			"children": [{
				"value": "410501",
				"label": "市辖区"
			}, {
				"value": "410502",
				"label": "文峰区"
			}, {
				"value": "410503",
				"label": "北关区"
			}, {
				"value": "410505",
				"label": "殷都区"
			}, {
				"value": "410506",
				"label": "龙安区"
			}, {
				"value": "410522",
				"label": "安阳县"
			}, {
				"value": "410523",
				"label": "汤阴县"
			}, {
				"value": "410526",
				"label": "滑县"
			}, {
				"value": "410527",
				"label": "内黄县"
			}, {
				"value": "410571",
				"label": "安阳高新技术产业开发区"
			}, {
				"value": "410581",
				"label": "林州市"
			}]
		}, {
			"value": "410600",
			"label": "鹤壁市",
			"children": [{
				"value": "410601",
				"label": "市辖区"
			}, {
				"value": "410602",
				"label": "鹤山区"
			}, {
				"value": "410603",
				"label": "山城区"
			}, {
				"value": "410611",
				"label": "淇滨区"
			}, {
				"value": "410621",
				"label": "浚县"
			}, {
				"value": "410622",
				"label": "淇县"
			}, {
				"value": "410671",
				"label": "鹤壁经济技术开发区"
			}]
		}, {
			"value": "410700",
			"label": "新乡市",
			"children": [{
				"value": "410701",
				"label": "市辖区"
			}, {
				"value": "410702",
				"label": "红旗区"
			}, {
				"value": "410703",
				"label": "卫滨区"
			}, {
				"value": "410704",
				"label": "凤泉区"
			}, {
				"value": "410711",
				"label": "牧野区"
			}, {
				"value": "410721",
				"label": "新乡县"
			}, {
				"value": "410724",
				"label": "获嘉县"
			}, {
				"value": "410725",
				"label": "原阳县"
			}, {
				"value": "410726",
				"label": "延津县"
			}, {
				"value": "410727",
				"label": "封丘县"
			}, {
				"value": "410771",
				"label": "新乡高新技术产业开发区"
			}, {
				"value": "410772",
				"label": "新乡经济技术开发区"
			}, {
				"value": "410773",
				"label": "新乡市平原城乡一体化示范区"
			}, {
				"value": "410781",
				"label": "卫辉市"
			}, {
				"value": "410782",
				"label": "辉县市"
			}, {
				"value": "410783",
				"label": "长垣市"
			}]
		}, {
			"value": "410800",
			"label": "焦作市",
			"children": [{
				"value": "410801",
				"label": "市辖区"
			}, {
				"value": "410802",
				"label": "解放区"
			}, {
				"value": "410803",
				"label": "中站区"
			}, {
				"value": "410804",
				"label": "马村区"
			}, {
				"value": "410811",
				"label": "山阳区"
			}, {
				"value": "410821",
				"label": "修武县"
			}, {
				"value": "410822",
				"label": "博爱县"
			}, {
				"value": "410823",
				"label": "武陟县"
			}, {
				"value": "410825",
				"label": "温县"
			}, {
				"value": "410871",
				"label": "焦作城乡一体化示范区"
			}, {
				"value": "410882",
				"label": "沁阳市"
			}, {
				"value": "410883",
				"label": "孟州市"
			}]
		}, {
			"value": "410900",
			"label": "濮阳市",
			"children": [{
				"value": "410901",
				"label": "市辖区"
			}, {
				"value": "410902",
				"label": "华龙区"
			}, {
				"value": "410922",
				"label": "清丰县"
			}, {
				"value": "410923",
				"label": "南乐县"
			}, {
				"value": "410926",
				"label": "范县"
			}, {
				"value": "410927",
				"label": "台前县"
			}, {
				"value": "410928",
				"label": "濮阳县"
			}, {
				"value": "410971",
				"label": "河南濮阳工业园区"
			}, {
				"value": "410972",
				"label": "濮阳经济技术开发区"
			}]
		}, {
			"value": "411000",
			"label": "许昌市",
			"children": [{
				"value": "411001",
				"label": "市辖区"
			}, {
				"value": "411002",
				"label": "魏都区"
			}, {
				"value": "411003",
				"label": "建安区"
			}, {
				"value": "411024",
				"label": "鄢陵县"
			}, {
				"value": "411025",
				"label": "襄城县"
			}, {
				"value": "411071",
				"label": "许昌经济技术开发区"
			}, {
				"value": "411081",
				"label": "禹州市"
			}, {
				"value": "411082",
				"label": "长葛市"
			}]
		}, {
			"value": "411100",
			"label": "漯河市",
			"children": [{
				"value": "411101",
				"label": "市辖区"
			}, {
				"value": "411102",
				"label": "源汇区"
			}, {
				"value": "411103",
				"label": "郾城区"
			}, {
				"value": "411104",
				"label": "召陵区"
			}, {
				"value": "411121",
				"label": "舞阳县"
			}, {
				"value": "411122",
				"label": "临颍县"
			}, {
				"value": "411171",
				"label": "漯河经济技术开发区"
			}]
		}, {
			"value": "411200",
			"label": "三门峡市",
			"children": [{
				"value": "411201",
				"label": "市辖区"
			}, {
				"value": "411202",
				"label": "湖滨区"
			}, {
				"value": "411203",
				"label": "陕州区"
			}, {
				"value": "411221",
				"label": "渑池县"
			}, {
				"value": "411224",
				"label": "卢氏县"
			}, {
				"value": "411271",
				"label": "河南三门峡经济开发区"
			}, {
				"value": "411281",
				"label": "义马市"
			}, {
				"value": "411282",
				"label": "灵宝市"
			}]
		}, {
			"value": "411300",
			"label": "南阳市",
			"children": [{
				"value": "411301",
				"label": "市辖区"
			}, {
				"value": "411302",
				"label": "宛城区"
			}, {
				"value": "411303",
				"label": "卧龙区"
			}, {
				"value": "411321",
				"label": "南召县"
			}, {
				"value": "411322",
				"label": "方城县"
			}, {
				"value": "411323",
				"label": "西峡县"
			}, {
				"value": "411324",
				"label": "镇平县"
			}, {
				"value": "411325",
				"label": "内乡县"
			}, {
				"value": "411326",
				"label": "淅川县"
			}, {
				"value": "411327",
				"label": "社旗县"
			}, {
				"value": "411328",
				"label": "唐河县"
			}, {
				"value": "411329",
				"label": "新野县"
			}, {
				"value": "411330",
				"label": "桐柏县"
			}, {
				"value": "411371",
				"label": "南阳高新技术产业开发区"
			}, {
				"value": "411372",
				"label": "南阳市城乡一体化示范区"
			}, {
				"value": "411381",
				"label": "邓州市"
			}]
		}, {
			"value": "411400",
			"label": "商丘市",
			"children": [{
				"value": "411401",
				"label": "市辖区"
			}, {
				"value": "411402",
				"label": "梁园区"
			}, {
				"value": "411403",
				"label": "睢阳区"
			}, {
				"value": "411421",
				"label": "民权县"
			}, {
				"value": "411422",
				"label": "睢县"
			}, {
				"value": "411423",
				"label": "宁陵县"
			}, {
				"value": "411424",
				"label": "柘城县"
			}, {
				"value": "411425",
				"label": "虞城县"
			}, {
				"value": "411426",
				"label": "夏邑县"
			}, {
				"value": "411471",
				"label": "豫东综合物流产业聚集区"
			}, {
				"value": "411472",
				"label": "河南商丘经济开发区"
			}, {
				"value": "411481",
				"label": "永城市"
			}]
		}, {
			"value": "411500",
			"label": "信阳市",
			"children": [{
				"value": "411501",
				"label": "市辖区"
			}, {
				"value": "411502",
				"label": "浉河区"
			}, {
				"value": "411503",
				"label": "平桥区"
			}, {
				"value": "411521",
				"label": "罗山县"
			}, {
				"value": "411522",
				"label": "光山县"
			}, {
				"value": "411523",
				"label": "新县"
			}, {
				"value": "411524",
				"label": "商城县"
			}, {
				"value": "411525",
				"label": "固始县"
			}, {
				"value": "411526",
				"label": "潢川县"
			}, {
				"value": "411527",
				"label": "淮滨县"
			}, {
				"value": "411528",
				"label": "息县"
			}, {
				"value": "411571",
				"label": "信阳高新技术产业开发区"
			}]
		}, {
			"value": "411600",
			"label": "周口市",
			"children": [{
				"value": "411601",
				"label": "市辖区"
			}, {
				"value": "411602",
				"label": "川汇区"
			}, {
				"value": "411603",
				"label": "淮阳区"
			}, {
				"value": "411621",
				"label": "扶沟县"
			}, {
				"value": "411622",
				"label": "西华县"
			}, {
				"value": "411623",
				"label": "商水县"
			}, {
				"value": "411624",
				"label": "沈丘县"
			}, {
				"value": "411625",
				"label": "郸城县"
			}, {
				"value": "411627",
				"label": "太康县"
			}, {
				"value": "411628",
				"label": "鹿邑县"
			}, {
				"value": "411671",
				"label": "河南周口经济开发区"
			}, {
				"value": "411681",
				"label": "项城市"
			}]
		}, {
			"value": "411700",
			"label": "驻马店市",
			"children": [{
				"value": "411701",
				"label": "市辖区"
			}, {
				"value": "411702",
				"label": "驿城区"
			}, {
				"value": "411721",
				"label": "西平县"
			}, {
				"value": "411722",
				"label": "上蔡县"
			}, {
				"value": "411723",
				"label": "平舆县"
			}, {
				"value": "411724",
				"label": "正阳县"
			}, {
				"value": "411725",
				"label": "确山县"
			}, {
				"value": "411726",
				"label": "泌阳县"
			}, {
				"value": "411727",
				"label": "汝南县"
			}, {
				"value": "411728",
				"label": "遂平县"
			}, {
				"value": "411729",
				"label": "新蔡县"
			}, {
				"value": "411771",
				"label": "河南驻马店经济开发区"
			}]
		}, {
			"value": "419000",
			"label": "省直辖县级行政区划",
			"children": [{
				"value": "419001",
				"label": "济源市"
			}]
		}]
	}, {
		"value": "420000",
		"label": "湖北省",
		"children": [{
			"value": "420100",
			"label": "武汉市",
			"children": [{
				"value": "420101",
				"label": "市辖区"
			}, {
				"value": "420102",
				"label": "江岸区"
			}, {
				"value": "420103",
				"label": "江汉区"
			}, {
				"value": "420104",
				"label": "硚口区"
			}, {
				"value": "420105",
				"label": "汉阳区"
			}, {
				"value": "420106",
				"label": "武昌区"
			}, {
				"value": "420107",
				"label": "青山区"
			}, {
				"value": "420111",
				"label": "洪山区"
			}, {
				"value": "420112",
				"label": "东西湖区"
			}, {
				"value": "420113",
				"label": "汉南区"
			}, {
				"value": "420114",
				"label": "蔡甸区"
			}, {
				"value": "420115",
				"label": "江夏区"
			}, {
				"value": "420116",
				"label": "黄陂区"
			}, {
				"value": "420117",
				"label": "新洲区"
			}]
		}, {
			"value": "420200",
			"label": "黄石市",
			"children": [{
				"value": "420201",
				"label": "市辖区"
			}, {
				"value": "420202",
				"label": "黄石港区"
			}, {
				"value": "420203",
				"label": "西塞山区"
			}, {
				"value": "420204",
				"label": "下陆区"
			}, {
				"value": "420205",
				"label": "铁山区"
			}, {
				"value": "420222",
				"label": "阳新县"
			}, {
				"value": "420281",
				"label": "大冶市"
			}]
		}, {
			"value": "420300",
			"label": "十堰市",
			"children": [{
				"value": "420301",
				"label": "市辖区"
			}, {
				"value": "420302",
				"label": "茅箭区"
			}, {
				"value": "420303",
				"label": "张湾区"
			}, {
				"value": "420304",
				"label": "郧阳区"
			}, {
				"value": "420322",
				"label": "郧西县"
			}, {
				"value": "420323",
				"label": "竹山县"
			}, {
				"value": "420324",
				"label": "竹溪县"
			}, {
				"value": "420325",
				"label": "房县"
			}, {
				"value": "420381",
				"label": "丹江口市"
			}]
		}, {
			"value": "420500",
			"label": "宜昌市",
			"children": [{
				"value": "420501",
				"label": "市辖区"
			}, {
				"value": "420502",
				"label": "西陵区"
			}, {
				"value": "420503",
				"label": "伍家岗区"
			}, {
				"value": "420504",
				"label": "点军区"
			}, {
				"value": "420505",
				"label": "猇亭区"
			}, {
				"value": "420506",
				"label": "夷陵区"
			}, {
				"value": "420525",
				"label": "远安县"
			}, {
				"value": "420526",
				"label": "兴山县"
			}, {
				"value": "420527",
				"label": "秭归县"
			}, {
				"value": "420528",
				"label": "长阳土家族自治县"
			}, {
				"value": "420529",
				"label": "五峰土家族自治县"
			}, {
				"value": "420581",
				"label": "宜都市"
			}, {
				"value": "420582",
				"label": "当阳市"
			}, {
				"value": "420583",
				"label": "枝江市"
			}]
		}, {
			"value": "420600",
			"label": "襄阳市",
			"children": [{
				"value": "420601",
				"label": "市辖区"
			}, {
				"value": "420602",
				"label": "襄城区"
			}, {
				"value": "420606",
				"label": "樊城区"
			}, {
				"value": "420607",
				"label": "襄州区"
			}, {
				"value": "420624",
				"label": "南漳县"
			}, {
				"value": "420625",
				"label": "谷城县"
			}, {
				"value": "420626",
				"label": "保康县"
			}, {
				"value": "420682",
				"label": "老河口市"
			}, {
				"value": "420683",
				"label": "枣阳市"
			}, {
				"value": "420684",
				"label": "宜城市"
			}]
		}, {
			"value": "420700",
			"label": "鄂州市",
			"children": [{
				"value": "420701",
				"label": "市辖区"
			}, {
				"value": "420702",
				"label": "梁子湖区"
			}, {
				"value": "420703",
				"label": "华容区"
			}, {
				"value": "420704",
				"label": "鄂城区"
			}]
		}, {
			"value": "420800",
			"label": "荆门市",
			"children": [{
				"value": "420801",
				"label": "市辖区"
			}, {
				"value": "420802",
				"label": "东宝区"
			}, {
				"value": "420804",
				"label": "掇刀区"
			}, {
				"value": "420822",
				"label": "沙洋县"
			}, {
				"value": "420881",
				"label": "钟祥市"
			}, {
				"value": "420882",
				"label": "京山市"
			}]
		}, {
			"value": "420900",
			"label": "孝感市",
			"children": [{
				"value": "420901",
				"label": "市辖区"
			}, {
				"value": "420902",
				"label": "孝南区"
			}, {
				"value": "420921",
				"label": "孝昌县"
			}, {
				"value": "420922",
				"label": "大悟县"
			}, {
				"value": "420923",
				"label": "云梦县"
			}, {
				"value": "420981",
				"label": "应城市"
			}, {
				"value": "420982",
				"label": "安陆市"
			}, {
				"value": "420984",
				"label": "汉川市"
			}]
		}, {
			"value": "421000",
			"label": "荆州市",
			"children": [{
				"value": "421001",
				"label": "市辖区"
			}, {
				"value": "421002",
				"label": "沙市区"
			}, {
				"value": "421003",
				"label": "荆州区"
			}, {
				"value": "421022",
				"label": "公安县"
			}, {
				"value": "421023",
				"label": "监利县"
			}, {
				"value": "421024",
				"label": "江陵县"
			}, {
				"value": "421071",
				"label": "荆州经济技术开发区"
			}, {
				"value": "421081",
				"label": "石首市"
			}, {
				"value": "421083",
				"label": "洪湖市"
			}, {
				"value": "421087",
				"label": "松滋市"
			}]
		}, {
			"value": "421100",
			"label": "黄冈市",
			"children": [{
				"value": "421101",
				"label": "市辖区"
			}, {
				"value": "421102",
				"label": "黄州区"
			}, {
				"value": "421121",
				"label": "团风县"
			}, {
				"value": "421122",
				"label": "红安县"
			}, {
				"value": "421123",
				"label": "罗田县"
			}, {
				"value": "421124",
				"label": "英山县"
			}, {
				"value": "421125",
				"label": "浠水县"
			}, {
				"value": "421126",
				"label": "蕲春县"
			}, {
				"value": "421127",
				"label": "黄梅县"
			}, {
				"value": "421171",
				"label": "龙感湖管理区"
			}, {
				"value": "421181",
				"label": "麻城市"
			}, {
				"value": "421182",
				"label": "武穴市"
			}]
		}, {
			"value": "421200",
			"label": "咸宁市",
			"children": [{
				"value": "421201",
				"label": "市辖区"
			}, {
				"value": "421202",
				"label": "咸安区"
			}, {
				"value": "421221",
				"label": "嘉鱼县"
			}, {
				"value": "421222",
				"label": "通城县"
			}, {
				"value": "421223",
				"label": "崇阳县"
			}, {
				"value": "421224",
				"label": "通山县"
			}, {
				"value": "421281",
				"label": "赤壁市"
			}]
		}, {
			"value": "421300",
			"label": "随州市",
			"children": [{
				"value": "421301",
				"label": "市辖区"
			}, {
				"value": "421303",
				"label": "曾都区"
			}, {
				"value": "421321",
				"label": "随县"
			}, {
				"value": "421381",
				"label": "广水市"
			}]
		}, {
			"value": "422800",
			"label": "恩施土家族苗族自治州",
			"children": [{
				"value": "422801",
				"label": "恩施市"
			}, {
				"value": "422802",
				"label": "利川市"
			}, {
				"value": "422822",
				"label": "建始县"
			}, {
				"value": "422823",
				"label": "巴东县"
			}, {
				"value": "422825",
				"label": "宣恩县"
			}, {
				"value": "422826",
				"label": "咸丰县"
			}, {
				"value": "422827",
				"label": "来凤县"
			}, {
				"value": "422828",
				"label": "鹤峰县"
			}]
		}, {
			"value": "429000",
			"label": "省直辖县级行政区划",
			"children": [{
				"value": "429004",
				"label": "仙桃市"
			}, {
				"value": "429005",
				"label": "潜江市"
			}, {
				"value": "429006",
				"label": "天门市"
			}, {
				"value": "429021",
				"label": "神农架林区"
			}]
		}]
	}, {
		"value": "430000",
		"label": "湖南省",
		"children": [{
			"value": "430100",
			"label": "长沙市",
			"children": [{
				"value": "430101",
				"label": "市辖区"
			}, {
				"value": "430102",
				"label": "芙蓉区"
			}, {
				"value": "430103",
				"label": "天心区"
			}, {
				"value": "430104",
				"label": "岳麓区"
			}, {
				"value": "430105",
				"label": "开福区"
			}, {
				"value": "430111",
				"label": "雨花区"
			}, {
				"value": "430112",
				"label": "望城区"
			}, {
				"value": "430121",
				"label": "长沙县"
			}, {
				"value": "430181",
				"label": "浏阳市"
			}, {
				"value": "430182",
				"label": "宁乡市"
			}]
		}, {
			"value": "430200",
			"label": "株洲市",
			"children": [{
				"value": "430201",
				"label": "市辖区"
			}, {
				"value": "430202",
				"label": "荷塘区"
			}, {
				"value": "430203",
				"label": "芦淞区"
			}, {
				"value": "430204",
				"label": "石峰区"
			}, {
				"value": "430211",
				"label": "天元区"
			}, {
				"value": "430212",
				"label": "渌口区"
			}, {
				"value": "430223",
				"label": "攸县"
			}, {
				"value": "430224",
				"label": "茶陵县"
			}, {
				"value": "430225",
				"label": "炎陵县"
			}, {
				"value": "430271",
				"label": "云龙示范区"
			}, {
				"value": "430281",
				"label": "醴陵市"
			}]
		}, {
			"value": "430300",
			"label": "湘潭市",
			"children": [{
				"value": "430301",
				"label": "市辖区"
			}, {
				"value": "430302",
				"label": "雨湖区"
			}, {
				"value": "430304",
				"label": "岳塘区"
			}, {
				"value": "430321",
				"label": "湘潭县"
			}, {
				"value": "430371",
				"label": "湖南湘潭高新技术产业园区"
			}, {
				"value": "430372",
				"label": "湘潭昭山示范区"
			}, {
				"value": "430373",
				"label": "湘潭九华示范区"
			}, {
				"value": "430381",
				"label": "湘乡市"
			}, {
				"value": "430382",
				"label": "韶山市"
			}]
		}, {
			"value": "430400",
			"label": "衡阳市",
			"children": [{
				"value": "430401",
				"label": "市辖区"
			}, {
				"value": "430405",
				"label": "珠晖区"
			}, {
				"value": "430406",
				"label": "雁峰区"
			}, {
				"value": "430407",
				"label": "石鼓区"
			}, {
				"value": "430408",
				"label": "蒸湘区"
			}, {
				"value": "430412",
				"label": "南岳区"
			}, {
				"value": "430421",
				"label": "衡阳县"
			}, {
				"value": "430422",
				"label": "衡南县"
			}, {
				"value": "430423",
				"label": "衡山县"
			}, {
				"value": "430424",
				"label": "衡东县"
			}, {
				"value": "430426",
				"label": "祁东县"
			}, {
				"value": "430471",
				"label": "衡阳综合保税区"
			}, {
				"value": "430472",
				"label": "湖南衡阳高新技术产业园区"
			}, {
				"value": "430473",
				"label": "湖南衡阳松木经济开发区"
			}, {
				"value": "430481",
				"label": "耒阳市"
			}, {
				"value": "430482",
				"label": "常宁市"
			}]
		}, {
			"value": "430500",
			"label": "邵阳市",
			"children": [{
				"value": "430501",
				"label": "市辖区"
			}, {
				"value": "430502",
				"label": "双清区"
			}, {
				"value": "430503",
				"label": "大祥区"
			}, {
				"value": "430511",
				"label": "北塔区"
			}, {
				"value": "430522",
				"label": "新邵县"
			}, {
				"value": "430523",
				"label": "邵阳县"
			}, {
				"value": "430524",
				"label": "隆回县"
			}, {
				"value": "430525",
				"label": "洞口县"
			}, {
				"value": "430527",
				"label": "绥宁县"
			}, {
				"value": "430528",
				"label": "新宁县"
			}, {
				"value": "430529",
				"label": "城步苗族自治县"
			}, {
				"value": "430581",
				"label": "武冈市"
			}, {
				"value": "430582",
				"label": "邵东市"
			}]
		}, {
			"value": "430600",
			"label": "岳阳市",
			"children": [{
				"value": "430601",
				"label": "市辖区"
			}, {
				"value": "430602",
				"label": "岳阳楼区"
			}, {
				"value": "430603",
				"label": "云溪区"
			}, {
				"value": "430611",
				"label": "君山区"
			}, {
				"value": "430621",
				"label": "岳阳县"
			}, {
				"value": "430623",
				"label": "华容县"
			}, {
				"value": "430624",
				"label": "湘阴县"
			}, {
				"value": "430626",
				"label": "平江县"
			}, {
				"value": "430671",
				"label": "岳阳市屈原管理区"
			}, {
				"value": "430681",
				"label": "汨罗市"
			}, {
				"value": "430682",
				"label": "临湘市"
			}]
		}, {
			"value": "430700",
			"label": "常德市",
			"children": [{
				"value": "430701",
				"label": "市辖区"
			}, {
				"value": "430702",
				"label": "武陵区"
			}, {
				"value": "430703",
				"label": "鼎城区"
			}, {
				"value": "430721",
				"label": "安乡县"
			}, {
				"value": "430722",
				"label": "汉寿县"
			}, {
				"value": "430723",
				"label": "澧县"
			}, {
				"value": "430724",
				"label": "临澧县"
			}, {
				"value": "430725",
				"label": "桃源县"
			}, {
				"value": "430726",
				"label": "石门县"
			}, {
				"value": "430771",
				"label": "常德市西洞庭管理区"
			}, {
				"value": "430781",
				"label": "津市市"
			}]
		}, {
			"value": "430800",
			"label": "张家界市",
			"children": [{
				"value": "430801",
				"label": "市辖区"
			}, {
				"value": "430802",
				"label": "永定区"
			}, {
				"value": "430811",
				"label": "武陵源区"
			}, {
				"value": "430821",
				"label": "慈利县"
			}, {
				"value": "430822",
				"label": "桑植县"
			}]
		}, {
			"value": "430900",
			"label": "益阳市",
			"children": [{
				"value": "430901",
				"label": "市辖区"
			}, {
				"value": "430902",
				"label": "资阳区"
			}, {
				"value": "430903",
				"label": "赫山区"
			}, {
				"value": "430921",
				"label": "南县"
			}, {
				"value": "430922",
				"label": "桃江县"
			}, {
				"value": "430923",
				"label": "安化县"
			}, {
				"value": "430971",
				"label": "益阳市大通湖管理区"
			}, {
				"value": "430972",
				"label": "湖南益阳高新技术产业园区"
			}, {
				"value": "430981",
				"label": "沅江市"
			}]
		}, {
			"value": "431000",
			"label": "郴州市",
			"children": [{
				"value": "431001",
				"label": "市辖区"
			}, {
				"value": "431002",
				"label": "北湖区"
			}, {
				"value": "431003",
				"label": "苏仙区"
			}, {
				"value": "431021",
				"label": "桂阳县"
			}, {
				"value": "431022",
				"label": "宜章县"
			}, {
				"value": "431023",
				"label": "永兴县"
			}, {
				"value": "431024",
				"label": "嘉禾县"
			}, {
				"value": "431025",
				"label": "临武县"
			}, {
				"value": "431026",
				"label": "汝城县"
			}, {
				"value": "431027",
				"label": "桂东县"
			}, {
				"value": "431028",
				"label": "安仁县"
			}, {
				"value": "431081",
				"label": "资兴市"
			}]
		}, {
			"value": "431100",
			"label": "永州市",
			"children": [{
				"value": "431101",
				"label": "市辖区"
			}, {
				"value": "431102",
				"label": "零陵区"
			}, {
				"value": "431103",
				"label": "冷水滩区"
			}, {
				"value": "431121",
				"label": "祁阳县"
			}, {
				"value": "431122",
				"label": "东安县"
			}, {
				"value": "431123",
				"label": "双牌县"
			}, {
				"value": "431124",
				"label": "道县"
			}, {
				"value": "431125",
				"label": "江永县"
			}, {
				"value": "431126",
				"label": "宁远县"
			}, {
				"value": "431127",
				"label": "蓝山县"
			}, {
				"value": "431128",
				"label": "新田县"
			}, {
				"value": "431129",
				"label": "江华瑶族自治县"
			}, {
				"value": "431171",
				"label": "永州经济技术开发区"
			}, {
				"value": "431172",
				"label": "永州市金洞管理区"
			}, {
				"value": "431173",
				"label": "永州市回龙圩管理区"
			}]
		}, {
			"value": "431200",
			"label": "怀化市",
			"children": [{
				"value": "431201",
				"label": "市辖区"
			}, {
				"value": "431202",
				"label": "鹤城区"
			}, {
				"value": "431221",
				"label": "中方县"
			}, {
				"value": "431222",
				"label": "沅陵县"
			}, {
				"value": "431223",
				"label": "辰溪县"
			}, {
				"value": "431224",
				"label": "溆浦县"
			}, {
				"value": "431225",
				"label": "会同县"
			}, {
				"value": "431226",
				"label": "麻阳苗族自治县"
			}, {
				"value": "431227",
				"label": "新晃侗族自治县"
			}, {
				"value": "431228",
				"label": "芷江侗族自治县"
			}, {
				"value": "431229",
				"label": "靖州苗族侗族自治县"
			}, {
				"value": "431230",
				"label": "通道侗族自治县"
			}, {
				"value": "431271",
				"label": "怀化市洪江管理区"
			}, {
				"value": "431281",
				"label": "洪江市"
			}]
		}, {
			"value": "431300",
			"label": "娄底市",
			"children": [{
				"value": "431301",
				"label": "市辖区"
			}, {
				"value": "431302",
				"label": "娄星区"
			}, {
				"value": "431321",
				"label": "双峰县"
			}, {
				"value": "431322",
				"label": "新化县"
			}, {
				"value": "431381",
				"label": "冷水江市"
			}, {
				"value": "431382",
				"label": "涟源市"
			}]
		}, {
			"value": "433100",
			"label": "湘西土家族苗族自治州",
			"children": [{
				"value": "433101",
				"label": "吉首市"
			}, {
				"value": "433122",
				"label": "泸溪县"
			}, {
				"value": "433123",
				"label": "凤凰县"
			}, {
				"value": "433124",
				"label": "花垣县"
			}, {
				"value": "433125",
				"label": "保靖县"
			}, {
				"value": "433126",
				"label": "古丈县"
			}, {
				"value": "433127",
				"label": "永顺县"
			}, {
				"value": "433130",
				"label": "龙山县"
			}, {
				"value": "433173",
				"label": "湖南永顺经济开发区"
			}]
		}]
	}, {
		"value": "440000",
		"label": "广东省",
		"children": [{
			"value": "440100",
			"label": "广州市",
			"children": [{
				"value": "440101",
				"label": "市辖区"
			}, {
				"value": "440103",
				"label": "荔湾区"
			}, {
				"value": "440104",
				"label": "越秀区"
			}, {
				"value": "440105",
				"label": "海珠区"
			}, {
				"value": "440106",
				"label": "天河区"
			}, {
				"value": "440111",
				"label": "白云区"
			}, {
				"value": "440112",
				"label": "黄埔区"
			}, {
				"value": "440113",
				"label": "番禺区"
			}, {
				"value": "440114",
				"label": "花都区"
			}, {
				"value": "440115",
				"label": "南沙区"
			}, {
				"value": "440117",
				"label": "从化区"
			}, {
				"value": "440118",
				"label": "增城区"
			}]
		}, {
			"value": "440200",
			"label": "韶关市",
			"children": [{
				"value": "440201",
				"label": "市辖区"
			}, {
				"value": "440203",
				"label": "武江区"
			}, {
				"value": "440204",
				"label": "浈江区"
			}, {
				"value": "440205",
				"label": "曲江区"
			}, {
				"value": "440222",
				"label": "始兴县"
			}, {
				"value": "440224",
				"label": "仁化县"
			}, {
				"value": "440229",
				"label": "翁源县"
			}, {
				"value": "440232",
				"label": "乳源瑶族自治县"
			}, {
				"value": "440233",
				"label": "新丰县"
			}, {
				"value": "440281",
				"label": "乐昌市"
			}, {
				"value": "440282",
				"label": "南雄市"
			}]
		}, {
			"value": "440300",
			"label": "深圳市",
			"children": [{
				"value": "440301",
				"label": "市辖区"
			}, {
				"value": "440303",
				"label": "罗湖区"
			}, {
				"value": "440304",
				"label": "福田区"
			}, {
				"value": "440305",
				"label": "南山区"
			}, {
				"value": "440306",
				"label": "宝安区"
			}, {
				"value": "440307",
				"label": "龙岗区"
			}, {
				"value": "440308",
				"label": "盐田区"
			}, {
				"value": "440309",
				"label": "龙华区"
			}, {
				"value": "440310",
				"label": "坪山区"
			}, {
				"value": "440311",
				"label": "光明区"
			}]
		}, {
			"value": "440400",
			"label": "珠海市",
			"children": [{
				"value": "440401",
				"label": "市辖区"
			}, {
				"value": "440402",
				"label": "香洲区"
			}, {
				"value": "440403",
				"label": "斗门区"
			}, {
				"value": "440404",
				"label": "金湾区"
			}]
		}, {
			"value": "440500",
			"label": "汕头市",
			"children": [{
				"value": "440501",
				"label": "市辖区"
			}, {
				"value": "440507",
				"label": "龙湖区"
			}, {
				"value": "440511",
				"label": "金平区"
			}, {
				"value": "440512",
				"label": "濠江区"
			}, {
				"value": "440513",
				"label": "潮阳区"
			}, {
				"value": "440514",
				"label": "潮南区"
			}, {
				"value": "440515",
				"label": "澄海区"
			}, {
				"value": "440523",
				"label": "南澳县"
			}]
		}, {
			"value": "440600",
			"label": "佛山市",
			"children": [{
				"value": "440601",
				"label": "市辖区"
			}, {
				"value": "440604",
				"label": "禅城区"
			}, {
				"value": "440605",
				"label": "南海区"
			}, {
				"value": "440606",
				"label": "顺德区"
			}, {
				"value": "440607",
				"label": "三水区"
			}, {
				"value": "440608",
				"label": "高明区"
			}]
		}, {
			"value": "440700",
			"label": "江门市",
			"children": [{
				"value": "440701",
				"label": "市辖区"
			}, {
				"value": "440703",
				"label": "蓬江区"
			}, {
				"value": "440704",
				"label": "江海区"
			}, {
				"value": "440705",
				"label": "新会区"
			}, {
				"value": "440781",
				"label": "台山市"
			}, {
				"value": "440783",
				"label": "开平市"
			}, {
				"value": "440784",
				"label": "鹤山市"
			}, {
				"value": "440785",
				"label": "恩平市"
			}]
		}, {
			"value": "440800",
			"label": "湛江市",
			"children": [{
				"value": "440801",
				"label": "市辖区"
			}, {
				"value": "440802",
				"label": "赤坎区"
			}, {
				"value": "440803",
				"label": "霞山区"
			}, {
				"value": "440804",
				"label": "坡头区"
			}, {
				"value": "440811",
				"label": "麻章区"
			}, {
				"value": "440823",
				"label": "遂溪县"
			}, {
				"value": "440825",
				"label": "徐闻县"
			}, {
				"value": "440881",
				"label": "廉江市"
			}, {
				"value": "440882",
				"label": "雷州市"
			}, {
				"value": "440883",
				"label": "吴川市"
			}]
		}, {
			"value": "440900",
			"label": "茂名市",
			"children": [{
				"value": "440901",
				"label": "市辖区"
			}, {
				"value": "440902",
				"label": "茂南区"
			}, {
				"value": "440904",
				"label": "电白区"
			}, {
				"value": "440981",
				"label": "高州市"
			}, {
				"value": "440982",
				"label": "化州市"
			}, {
				"value": "440983",
				"label": "信宜市"
			}]
		}, {
			"value": "441200",
			"label": "肇庆市",
			"children": [{
				"value": "441201",
				"label": "市辖区"
			}, {
				"value": "441202",
				"label": "端州区"
			}, {
				"value": "441203",
				"label": "鼎湖区"
			}, {
				"value": "441204",
				"label": "高要区"
			}, {
				"value": "441223",
				"label": "广宁县"
			}, {
				"value": "441224",
				"label": "怀集县"
			}, {
				"value": "441225",
				"label": "封开县"
			}, {
				"value": "441226",
				"label": "德庆县"
			}, {
				"value": "441284",
				"label": "四会市"
			}]
		}, {
			"value": "441300",
			"label": "惠州市",
			"children": [{
				"value": "441301",
				"label": "市辖区"
			}, {
				"value": "441302",
				"label": "惠城区"
			}, {
				"value": "441303",
				"label": "惠阳区"
			}, {
				"value": "441322",
				"label": "博罗县"
			}, {
				"value": "441323",
				"label": "惠东县"
			}, {
				"value": "441324",
				"label": "龙门县"
			}]
		}, {
			"value": "441400",
			"label": "梅州市",
			"children": [{
				"value": "441401",
				"label": "市辖区"
			}, {
				"value": "441402",
				"label": "梅江区"
			}, {
				"value": "441403",
				"label": "梅县区"
			}, {
				"value": "441422",
				"label": "大埔县"
			}, {
				"value": "441423",
				"label": "丰顺县"
			}, {
				"value": "441424",
				"label": "五华县"
			}, {
				"value": "441426",
				"label": "平远县"
			}, {
				"value": "441427",
				"label": "蕉岭县"
			}, {
				"value": "441481",
				"label": "兴宁市"
			}]
		}, {
			"value": "441500",
			"label": "汕尾市",
			"children": [{
				"value": "441501",
				"label": "市辖区"
			}, {
				"value": "441502",
				"label": "城区"
			}, {
				"value": "441521",
				"label": "海丰县"
			}, {
				"value": "441523",
				"label": "陆河县"
			}, {
				"value": "441581",
				"label": "陆丰市"
			}]
		}, {
			"value": "441600",
			"label": "河源市",
			"children": [{
				"value": "441601",
				"label": "市辖区"
			}, {
				"value": "441602",
				"label": "源城区"
			}, {
				"value": "441621",
				"label": "紫金县"
			}, {
				"value": "441622",
				"label": "龙川县"
			}, {
				"value": "441623",
				"label": "连平县"
			}, {
				"value": "441624",
				"label": "和平县"
			}, {
				"value": "441625",
				"label": "东源县"
			}]
		}, {
			"value": "441700",
			"label": "阳江市",
			"children": [{
				"value": "441701",
				"label": "市辖区"
			}, {
				"value": "441702",
				"label": "江城区"
			}, {
				"value": "441704",
				"label": "阳东区"
			}, {
				"value": "441721",
				"label": "阳西县"
			}, {
				"value": "441781",
				"label": "阳春市"
			}]
		}, {
			"value": "441800",
			"label": "清远市",
			"children": [{
				"value": "441801",
				"label": "市辖区"
			}, {
				"value": "441802",
				"label": "清城区"
			}, {
				"value": "441803",
				"label": "清新区"
			}, {
				"value": "441821",
				"label": "佛冈县"
			}, {
				"value": "441823",
				"label": "阳山县"
			}, {
				"value": "441825",
				"label": "连山壮族瑶族自治县"
			}, {
				"value": "441826",
				"label": "连南瑶族自治县"
			}, {
				"value": "441881",
				"label": "英德市"
			}, {
				"value": "441882",
				"label": "连州市"
			}]
		}, {
			"value": "441900",
			"label": "东莞市",
			"children": [{
				"value": "441900003",
				"label": "东城街道"
			}, {
				"value": "441900004",
				"label": "南城街道"
			}, {
				"value": "441900005",
				"label": "万江街道"
			}, {
				"value": "441900006",
				"label": "莞城街道"
			}, {
				"value": "441900101",
				"label": "石碣镇"
			}, {
				"value": "441900102",
				"label": "石龙镇"
			}, {
				"value": "441900103",
				"label": "茶山镇"
			}, {
				"value": "441900104",
				"label": "石排镇"
			}, {
				"value": "441900105",
				"label": "企石镇"
			}, {
				"value": "441900106",
				"label": "横沥镇"
			}, {
				"value": "441900107",
				"label": "桥头镇"
			}, {
				"value": "441900108",
				"label": "谢岗镇"
			}, {
				"value": "441900109",
				"label": "东坑镇"
			}, {
				"value": "441900110",
				"label": "常平镇"
			}, {
				"value": "441900111",
				"label": "寮步镇"
			}, {
				"value": "441900112",
				"label": "樟木头镇"
			}, {
				"value": "441900113",
				"label": "大朗镇"
			}, {
				"value": "441900114",
				"label": "黄江镇"
			}, {
				"value": "441900115",
				"label": "清溪镇"
			}, {
				"value": "441900116",
				"label": "塘厦镇"
			}, {
				"value": "441900117",
				"label": "凤岗镇"
			}, {
				"value": "441900118",
				"label": "大岭山镇"
			}, {
				"value": "441900119",
				"label": "长安镇"
			}, {
				"value": "441900121",
				"label": "虎门镇"
			}, {
				"value": "441900122",
				"label": "厚街镇"
			}, {
				"value": "441900123",
				"label": "沙田镇"
			}, {
				"value": "441900124",
				"label": "道滘镇"
			}, {
				"value": "441900125",
				"label": "洪梅镇"
			}, {
				"value": "441900126",
				"label": "麻涌镇"
			}, {
				"value": "441900127",
				"label": "望牛墩镇"
			}, {
				"value": "441900128",
				"label": "中堂镇"
			}, {
				"value": "441900129",
				"label": "高埗镇"
			}, {
				"value": "441900401",
				"label": "松山湖"
			}, {
				"value": "441900402",
				"label": "东莞港"
			}, {
				"value": "441900403",
				"label": "东莞生态园"
			}]
		}, {
			"value": "442000",
			"label": "中山市",
			"children": [{
				"value": "442000001",
				"label": "石岐街道"
			}, {
				"value": "442000002",
				"label": "东区街道"
			}, {
				"value": "442000003",
				"label": "中山港街道"
			}, {
				"value": "442000004",
				"label": "西区街道"
			}, {
				"value": "442000005",
				"label": "南区街道"
			}, {
				"value": "442000006",
				"label": "五桂山街道"
			}, {
				"value": "442000100",
				"label": "小榄镇"
			}, {
				"value": "442000101",
				"label": "黄圃镇"
			}, {
				"value": "442000102",
				"label": "民众镇"
			}, {
				"value": "442000103",
				"label": "东凤镇"
			}, {
				"value": "442000104",
				"label": "东升镇"
			}, {
				"value": "442000105",
				"label": "古镇镇"
			}, {
				"value": "442000106",
				"label": "沙溪镇"
			}, {
				"value": "442000107",
				"label": "坦洲镇"
			}, {
				"value": "442000108",
				"label": "港口镇"
			}, {
				"value": "442000109",
				"label": "三角镇"
			}, {
				"value": "442000110",
				"label": "横栏镇"
			}, {
				"value": "442000111",
				"label": "南头镇"
			}, {
				"value": "442000112",
				"label": "阜沙镇"
			}, {
				"value": "442000113",
				"label": "南朗镇"
			}, {
				"value": "442000114",
				"label": "三乡镇"
			}, {
				"value": "442000115",
				"label": "板芙镇"
			}, {
				"value": "442000116",
				"label": "大涌镇"
			}, {
				"value": "442000117",
				"label": "神湾镇"
			}]
		}, {
			"value": "445100",
			"label": "潮州市",
			"children": [{
				"value": "445101",
				"label": "市辖区"
			}, {
				"value": "445102",
				"label": "湘桥区"
			}, {
				"value": "445103",
				"label": "潮安区"
			}, {
				"value": "445122",
				"label": "饶平县"
			}]
		}, {
			"value": "445200",
			"label": "揭阳市",
			"children": [{
				"value": "445201",
				"label": "市辖区"
			}, {
				"value": "445202",
				"label": "榕城区"
			}, {
				"value": "445203",
				"label": "揭东区"
			}, {
				"value": "445222",
				"label": "揭西县"
			}, {
				"value": "445224",
				"label": "惠来县"
			}, {
				"value": "445281",
				"label": "普宁市"
			}]
		}, {
			"value": "445300",
			"label": "云浮市",
			"children": [{
				"value": "445301",
				"label": "市辖区"
			}, {
				"value": "445302",
				"label": "云城区"
			}, {
				"value": "445303",
				"label": "云安区"
			}, {
				"value": "445321",
				"label": "新兴县"
			}, {
				"value": "445322",
				"label": "郁南县"
			}, {
				"value": "445381",
				"label": "罗定市"
			}]
		}]
	}, {
		"value": "450000",
		"label": "广西壮族自治区",
		"children": [{
			"value": "450100",
			"label": "南宁市",
			"children": [{
				"value": "450101",
				"label": "市辖区"
			}, {
				"value": "450102",
				"label": "兴宁区"
			}, {
				"value": "450103",
				"label": "青秀区"
			}, {
				"value": "450105",
				"label": "江南区"
			}, {
				"value": "450107",
				"label": "西乡塘区"
			}, {
				"value": "450108",
				"label": "良庆区"
			}, {
				"value": "450109",
				"label": "邕宁区"
			}, {
				"value": "450110",
				"label": "武鸣区"
			}, {
				"value": "450123",
				"label": "隆安县"
			}, {
				"value": "450124",
				"label": "马山县"
			}, {
				"value": "450125",
				"label": "上林县"
			}, {
				"value": "450126",
				"label": "宾阳县"
			}, {
				"value": "450127",
				"label": "横县"
			}]
		}, {
			"value": "450200",
			"label": "柳州市",
			"children": [{
				"value": "450201",
				"label": "市辖区"
			}, {
				"value": "450202",
				"label": "城中区"
			}, {
				"value": "450203",
				"label": "鱼峰区"
			}, {
				"value": "450204",
				"label": "柳南区"
			}, {
				"value": "450205",
				"label": "柳北区"
			}, {
				"value": "450206",
				"label": "柳江区"
			}, {
				"value": "450222",
				"label": "柳城县"
			}, {
				"value": "450223",
				"label": "鹿寨县"
			}, {
				"value": "450224",
				"label": "融安县"
			}, {
				"value": "450225",
				"label": "融水苗族自治县"
			}, {
				"value": "450226",
				"label": "三江侗族自治县"
			}]
		}, {
			"value": "450300",
			"label": "桂林市",
			"children": [{
				"value": "450301",
				"label": "市辖区"
			}, {
				"value": "450302",
				"label": "秀峰区"
			}, {
				"value": "450303",
				"label": "叠彩区"
			}, {
				"value": "450304",
				"label": "象山区"
			}, {
				"value": "450305",
				"label": "七星区"
			}, {
				"value": "450311",
				"label": "雁山区"
			}, {
				"value": "450312",
				"label": "临桂区"
			}, {
				"value": "450321",
				"label": "阳朔县"
			}, {
				"value": "450323",
				"label": "灵川县"
			}, {
				"value": "450324",
				"label": "全州县"
			}, {
				"value": "450325",
				"label": "兴安县"
			}, {
				"value": "450326",
				"label": "永福县"
			}, {
				"value": "450327",
				"label": "灌阳县"
			}, {
				"value": "450328",
				"label": "龙胜各族自治县"
			}, {
				"value": "450329",
				"label": "资源县"
			}, {
				"value": "450330",
				"label": "平乐县"
			}, {
				"value": "450332",
				"label": "恭城瑶族自治县"
			}, {
				"value": "450381",
				"label": "荔浦市"
			}]
		}, {
			"value": "450400",
			"label": "梧州市",
			"children": [{
				"value": "450401",
				"label": "市辖区"
			}, {
				"value": "450403",
				"label": "万秀区"
			}, {
				"value": "450405",
				"label": "长洲区"
			}, {
				"value": "450406",
				"label": "龙圩区"
			}, {
				"value": "450421",
				"label": "苍梧县"
			}, {
				"value": "450422",
				"label": "藤县"
			}, {
				"value": "450423",
				"label": "蒙山县"
			}, {
				"value": "450481",
				"label": "岑溪市"
			}]
		}, {
			"value": "450500",
			"label": "北海市",
			"children": [{
				"value": "450501",
				"label": "市辖区"
			}, {
				"value": "450502",
				"label": "海城区"
			}, {
				"value": "450503",
				"label": "银海区"
			}, {
				"value": "450512",
				"label": "铁山港区"
			}, {
				"value": "450521",
				"label": "合浦县"
			}]
		}, {
			"value": "450600",
			"label": "防城港市",
			"children": [{
				"value": "450601",
				"label": "市辖区"
			}, {
				"value": "450602",
				"label": "港口区"
			}, {
				"value": "450603",
				"label": "防城区"
			}, {
				"value": "450621",
				"label": "上思县"
			}, {
				"value": "450681",
				"label": "东兴市"
			}]
		}, {
			"value": "450700",
			"label": "钦州市",
			"children": [{
				"value": "450701",
				"label": "市辖区"
			}, {
				"value": "450702",
				"label": "钦南区"
			}, {
				"value": "450703",
				"label": "钦北区"
			}, {
				"value": "450721",
				"label": "灵山县"
			}, {
				"value": "450722",
				"label": "浦北县"
			}]
		}, {
			"value": "450800",
			"label": "贵港市",
			"children": [{
				"value": "450801",
				"label": "市辖区"
			}, {
				"value": "450802",
				"label": "港北区"
			}, {
				"value": "450803",
				"label": "港南区"
			}, {
				"value": "450804",
				"label": "覃塘区"
			}, {
				"value": "450821",
				"label": "平南县"
			}, {
				"value": "450881",
				"label": "桂平市"
			}]
		}, {
			"value": "450900",
			"label": "玉林市",
			"children": [{
				"value": "450901",
				"label": "市辖区"
			}, {
				"value": "450902",
				"label": "玉州区"
			}, {
				"value": "450903",
				"label": "福绵区"
			}, {
				"value": "450921",
				"label": "容县"
			}, {
				"value": "450922",
				"label": "陆川县"
			}, {
				"value": "450923",
				"label": "博白县"
			}, {
				"value": "450924",
				"label": "兴业县"
			}, {
				"value": "450981",
				"label": "北流市"
			}]
		}, {
			"value": "451000",
			"label": "百色市",
			"children": [{
				"value": "451001",
				"label": "市辖区"
			}, {
				"value": "451002",
				"label": "右江区"
			}, {
				"value": "451003",
				"label": "田阳区"
			}, {
				"value": "451022",
				"label": "田东县"
			}, {
				"value": "451023",
				"label": "平果县"
			}, {
				"value": "451024",
				"label": "德保县"
			}, {
				"value": "451026",
				"label": "那坡县"
			}, {
				"value": "451027",
				"label": "凌云县"
			}, {
				"value": "451028",
				"label": "乐业县"
			}, {
				"value": "451029",
				"label": "田林县"
			}, {
				"value": "451030",
				"label": "西林县"
			}, {
				"value": "451031",
				"label": "隆林各族自治县"
			}, {
				"value": "451081",
				"label": "靖西市"
			}]
		}, {
			"value": "451100",
			"label": "贺州市",
			"children": [{
				"value": "451101",
				"label": "市辖区"
			}, {
				"value": "451102",
				"label": "八步区"
			}, {
				"value": "451103",
				"label": "平桂区"
			}, {
				"value": "451121",
				"label": "昭平县"
			}, {
				"value": "451122",
				"label": "钟山县"
			}, {
				"value": "451123",
				"label": "富川瑶族自治县"
			}]
		}, {
			"value": "451200",
			"label": "河池市",
			"children": [{
				"value": "451201",
				"label": "市辖区"
			}, {
				"value": "451202",
				"label": "金城江区"
			}, {
				"value": "451203",
				"label": "宜州区"
			}, {
				"value": "451221",
				"label": "南丹县"
			}, {
				"value": "451222",
				"label": "天峨县"
			}, {
				"value": "451223",
				"label": "凤山县"
			}, {
				"value": "451224",
				"label": "东兰县"
			}, {
				"value": "451225",
				"label": "罗城仫佬族自治县"
			}, {
				"value": "451226",
				"label": "环江毛南族自治县"
			}, {
				"value": "451227",
				"label": "巴马瑶族自治县"
			}, {
				"value": "451228",
				"label": "都安瑶族自治县"
			}, {
				"value": "451229",
				"label": "大化瑶族自治县"
			}]
		}, {
			"value": "451300",
			"label": "来宾市",
			"children": [{
				"value": "451301",
				"label": "市辖区"
			}, {
				"value": "451302",
				"label": "兴宾区"
			}, {
				"value": "451321",
				"label": "忻城县"
			}, {
				"value": "451322",
				"label": "象州县"
			}, {
				"value": "451323",
				"label": "武宣县"
			}, {
				"value": "451324",
				"label": "金秀瑶族自治县"
			}, {
				"value": "451381",
				"label": "合山市"
			}]
		}, {
			"value": "451400",
			"label": "崇左市",
			"children": [{
				"value": "451401",
				"label": "市辖区"
			}, {
				"value": "451402",
				"label": "江州区"
			}, {
				"value": "451421",
				"label": "扶绥县"
			}, {
				"value": "451422",
				"label": "宁明县"
			}, {
				"value": "451423",
				"label": "龙州县"
			}, {
				"value": "451424",
				"label": "大新县"
			}, {
				"value": "451425",
				"label": "天等县"
			}, {
				"value": "451481",
				"label": "凭祥市"
			}]
		}]
	}, {
		"value": "460000",
		"label": "海南省",
		"children": [{
			"value": "460100",
			"label": "海口市",
			"children": [{
				"value": "460101",
				"label": "市辖区"
			}, {
				"value": "460105",
				"label": "秀英区"
			}, {
				"value": "460106",
				"label": "龙华区"
			}, {
				"value": "460107",
				"label": "琼山区"
			}, {
				"value": "460108",
				"label": "美兰区"
			}]
		}, {
			"value": "460200",
			"label": "三亚市",
			"children": [{
				"value": "460201",
				"label": "市辖区"
			}, {
				"value": "460202",
				"label": "海棠区"
			}, {
				"value": "460203",
				"label": "吉阳区"
			}, {
				"value": "460204",
				"label": "天涯区"
			}, {
				"value": "460205",
				"label": "崖州区"
			}]
		}, {
			"value": "460300",
			"label": "三沙市",
			"children": [{
				"value": "460321",
				"label": "西沙群岛"
			}, {
				"value": "460322",
				"label": "南沙群岛"
			}, {
				"value": "460323",
				"label": "中沙群岛的岛礁及其海域"
			}]
		}, {
			"value": "460400",
			"label": "儋州市",
			"children": [{
				"value": "460400100",
				"label": "那大镇"
			}, {
				"value": "460400101",
				"label": "和庆镇"
			}, {
				"value": "460400102",
				"label": "南丰镇"
			}, {
				"value": "460400103",
				"label": "大成镇"
			}, {
				"value": "460400104",
				"label": "雅星镇"
			}, {
				"value": "460400105",
				"label": "兰洋镇"
			}, {
				"value": "460400106",
				"label": "光村镇"
			}, {
				"value": "460400107",
				"label": "木棠镇"
			}, {
				"value": "460400108",
				"label": "海头镇"
			}, {
				"value": "460400109",
				"label": "峨蔓镇"
			}, {
				"value": "460400111",
				"label": "王五镇"
			}, {
				"value": "460400112",
				"label": "白马井镇"
			}, {
				"value": "460400113",
				"label": "中和镇"
			}, {
				"value": "460400114",
				"label": "排浦镇"
			}, {
				"value": "460400115",
				"label": "东成镇"
			}, {
				"value": "460400116",
				"label": "新州镇"
			}, {
				"value": "460400499",
				"label": "洋浦经济开发区"
			}, {
				"value": "460400500",
				"label": "华南热作学院"
			}]
		}, {
			"value": "469000",
			"label": "省直辖县级行政区划",
			"children": [{
				"value": "469001",
				"label": "五指山市"
			}, {
				"value": "469002",
				"label": "琼海市"
			}, {
				"value": "469005",
				"label": "文昌市"
			}, {
				"value": "469006",
				"label": "万宁市"
			}, {
				"value": "469007",
				"label": "东方市"
			}, {
				"value": "469021",
				"label": "定安县"
			}, {
				"value": "469022",
				"label": "屯昌县"
			}, {
				"value": "469023",
				"label": "澄迈县"
			}, {
				"value": "469024",
				"label": "临高县"
			}, {
				"value": "469025",
				"label": "白沙黎族自治县"
			}, {
				"value": "469026",
				"label": "昌江黎族自治县"
			}, {
				"value": "469027",
				"label": "乐东黎族自治县"
			}, {
				"value": "469028",
				"label": "陵水黎族自治县"
			}, {
				"value": "469029",
				"label": "保亭黎族苗族自治县"
			}, {
				"value": "469030",
				"label": "琼中黎族苗族自治县"
			}]
		}]
	}, {
		"value": "500000",
		"label": "重庆市",
		"children": [{
			"value": "500100",
			"label": "市辖区",
			"children": [{
				"value": "500101",
				"label": "万州区"
			}, {
				"value": "500102",
				"label": "涪陵区"
			}, {
				"value": "500103",
				"label": "渝中区"
			}, {
				"value": "500104",
				"label": "大渡口区"
			}, {
				"value": "500105",
				"label": "江北区"
			}, {
				"value": "500106",
				"label": "沙坪坝区"
			}, {
				"value": "500107",
				"label": "九龙坡区"
			}, {
				"value": "500108",
				"label": "南岸区"
			}, {
				"value": "500109",
				"label": "北碚区"
			}, {
				"value": "500110",
				"label": "綦江区"
			}, {
				"value": "500111",
				"label": "大足区"
			}, {
				"value": "500112",
				"label": "渝北区"
			}, {
				"value": "500113",
				"label": "巴南区"
			}, {
				"value": "500114",
				"label": "黔江区"
			}, {
				"value": "500115",
				"label": "长寿区"
			}, {
				"value": "500116",
				"label": "江津区"
			}, {
				"value": "500117",
				"label": "合川区"
			}, {
				"value": "500118",
				"label": "永川区"
			}, {
				"value": "500119",
				"label": "南川区"
			}, {
				"value": "500120",
				"label": "璧山区"
			}, {
				"value": "500151",
				"label": "铜梁区"
			}, {
				"value": "500152",
				"label": "潼南区"
			}, {
				"value": "500153",
				"label": "荣昌区"
			}, {
				"value": "500154",
				"label": "开州区"
			}, {
				"value": "500155",
				"label": "梁平区"
			}, {
				"value": "500156",
				"label": "武隆区"
			}]
		}, {
			"value": "500200",
			"label": "县",
			"children": [{
				"value": "500229",
				"label": "城口县"
			}, {
				"value": "500230",
				"label": "丰都县"
			}, {
				"value": "500231",
				"label": "垫江县"
			}, {
				"value": "500233",
				"label": "忠县"
			}, {
				"value": "500235",
				"label": "云阳县"
			}, {
				"value": "500236",
				"label": "奉节县"
			}, {
				"value": "500237",
				"label": "巫山县"
			}, {
				"value": "500238",
				"label": "巫溪县"
			}, {
				"value": "500240",
				"label": "石柱土家族自治县"
			}, {
				"value": "500241",
				"label": "秀山土家族苗族自治县"
			}, {
				"value": "500242",
				"label": "酉阳土家族苗族自治县"
			}, {
				"value": "500243",
				"label": "彭水苗族土家族自治县"
			}]
		}]
	}, {
		"value": "510000",
		"label": "四川省",
		"children": [{
			"value": "510100",
			"label": "成都市",
			"children": [{
				"value": "510101",
				"label": "市辖区"
			}, {
				"value": "510104",
				"label": "锦江区"
			}, {
				"value": "510105",
				"label": "青羊区"
			}, {
				"value": "510106",
				"label": "金牛区"
			}, {
				"value": "510107",
				"label": "武侯区"
			}, {
				"value": "510108",
				"label": "成华区"
			}, {
				"value": "510112",
				"label": "龙泉驿区"
			}, {
				"value": "510113",
				"label": "青白江区"
			}, {
				"value": "510114",
				"label": "新都区"
			}, {
				"value": "510115",
				"label": "温江区"
			}, {
				"value": "510116",
				"label": "双流区"
			}, {
				"value": "510117",
				"label": "郫都区"
			}, {
				"value": "510121",
				"label": "金堂县"
			}, {
				"value": "510129",
				"label": "大邑县"
			}, {
				"value": "510131",
				"label": "蒲江县"
			}, {
				"value": "510132",
				"label": "新津县"
			}, {
				"value": "510181",
				"label": "都江堰市"
			}, {
				"value": "510182",
				"label": "彭州市"
			}, {
				"value": "510183",
				"label": "邛崃市"
			}, {
				"value": "510184",
				"label": "崇州市"
			}, {
				"value": "510185",
				"label": "简阳市"
			}]
		}, {
			"value": "510300",
			"label": "自贡市",
			"children": [{
				"value": "510301",
				"label": "市辖区"
			}, {
				"value": "510302",
				"label": "自流井区"
			}, {
				"value": "510303",
				"label": "贡井区"
			}, {
				"value": "510304",
				"label": "大安区"
			}, {
				"value": "510311",
				"label": "沿滩区"
			}, {
				"value": "510321",
				"label": "荣县"
			}, {
				"value": "510322",
				"label": "富顺县"
			}]
		}, {
			"value": "510400",
			"label": "攀枝花市",
			"children": [{
				"value": "510401",
				"label": "市辖区"
			}, {
				"value": "510402",
				"label": "东区"
			}, {
				"value": "510403",
				"label": "西区"
			}, {
				"value": "510411",
				"label": "仁和区"
			}, {
				"value": "510421",
				"label": "米易县"
			}, {
				"value": "510422",
				"label": "盐边县"
			}]
		}, {
			"value": "510500",
			"label": "泸州市",
			"children": [{
				"value": "510501",
				"label": "市辖区"
			}, {
				"value": "510502",
				"label": "江阳区"
			}, {
				"value": "510503",
				"label": "纳溪区"
			}, {
				"value": "510504",
				"label": "龙马潭区"
			}, {
				"value": "510521",
				"label": "泸县"
			}, {
				"value": "510522",
				"label": "合江县"
			}, {
				"value": "510524",
				"label": "叙永县"
			}, {
				"value": "510525",
				"label": "古蔺县"
			}]
		}, {
			"value": "510600",
			"label": "德阳市",
			"children": [{
				"value": "510601",
				"label": "市辖区"
			}, {
				"value": "510603",
				"label": "旌阳区"
			}, {
				"value": "510604",
				"label": "罗江区"
			}, {
				"value": "510623",
				"label": "中江县"
			}, {
				"value": "510681",
				"label": "广汉市"
			}, {
				"value": "510682",
				"label": "什邡市"
			}, {
				"value": "510683",
				"label": "绵竹市"
			}]
		}, {
			"value": "510700",
			"label": "绵阳市",
			"children": [{
				"value": "510701",
				"label": "市辖区"
			}, {
				"value": "510703",
				"label": "涪城区"
			}, {
				"value": "510704",
				"label": "游仙区"
			}, {
				"value": "510705",
				"label": "安州区"
			}, {
				"value": "510722",
				"label": "三台县"
			}, {
				"value": "510723",
				"label": "盐亭县"
			}, {
				"value": "510725",
				"label": "梓潼县"
			}, {
				"value": "510726",
				"label": "北川羌族自治县"
			}, {
				"value": "510727",
				"label": "平武县"
			}, {
				"value": "510781",
				"label": "江油市"
			}]
		}, {
			"value": "510800",
			"label": "广元市",
			"children": [{
				"value": "510801",
				"label": "市辖区"
			}, {
				"value": "510802",
				"label": "利州区"
			}, {
				"value": "510811",
				"label": "昭化区"
			}, {
				"value": "510812",
				"label": "朝天区"
			}, {
				"value": "510821",
				"label": "旺苍县"
			}, {
				"value": "510822",
				"label": "青川县"
			}, {
				"value": "510823",
				"label": "剑阁县"
			}, {
				"value": "510824",
				"label": "苍溪县"
			}]
		}, {
			"value": "510900",
			"label": "遂宁市",
			"children": [{
				"value": "510901",
				"label": "市辖区"
			}, {
				"value": "510903",
				"label": "船山区"
			}, {
				"value": "510904",
				"label": "安居区"
			}, {
				"value": "510921",
				"label": "蓬溪县"
			}, {
				"value": "510923",
				"label": "大英县"
			}, {
				"value": "510981",
				"label": "射洪市"
			}]
		}, {
			"value": "511000",
			"label": "内江市",
			"children": [{
				"value": "511001",
				"label": "市辖区"
			}, {
				"value": "511002",
				"label": "市中区"
			}, {
				"value": "511011",
				"label": "东兴区"
			}, {
				"value": "511024",
				"label": "威远县"
			}, {
				"value": "511025",
				"label": "资中县"
			}, {
				"value": "511071",
				"label": "内江经济开发区"
			}, {
				"value": "511083",
				"label": "隆昌市"
			}]
		}, {
			"value": "511100",
			"label": "乐山市",
			"children": [{
				"value": "511101",
				"label": "市辖区"
			}, {
				"value": "511102",
				"label": "市中区"
			}, {
				"value": "511111",
				"label": "沙湾区"
			}, {
				"value": "511112",
				"label": "五通桥区"
			}, {
				"value": "511113",
				"label": "金口河区"
			}, {
				"value": "511123",
				"label": "犍为县"
			}, {
				"value": "511124",
				"label": "井研县"
			}, {
				"value": "511126",
				"label": "夹江县"
			}, {
				"value": "511129",
				"label": "沐川县"
			}, {
				"value": "511132",
				"label": "峨边彝族自治县"
			}, {
				"value": "511133",
				"label": "马边彝族自治县"
			}, {
				"value": "511181",
				"label": "峨眉山市"
			}]
		}, {
			"value": "511300",
			"label": "南充市",
			"children": [{
				"value": "511301",
				"label": "市辖区"
			}, {
				"value": "511302",
				"label": "顺庆区"
			}, {
				"value": "511303",
				"label": "高坪区"
			}, {
				"value": "511304",
				"label": "嘉陵区"
			}, {
				"value": "511321",
				"label": "南部县"
			}, {
				"value": "511322",
				"label": "营山县"
			}, {
				"value": "511323",
				"label": "蓬安县"
			}, {
				"value": "511324",
				"label": "仪陇县"
			}, {
				"value": "511325",
				"label": "西充县"
			}, {
				"value": "511381",
				"label": "阆中市"
			}]
		}, {
			"value": "511400",
			"label": "眉山市",
			"children": [{
				"value": "511401",
				"label": "市辖区"
			}, {
				"value": "511402",
				"label": "东坡区"
			}, {
				"value": "511403",
				"label": "彭山区"
			}, {
				"value": "511421",
				"label": "仁寿县"
			}, {
				"value": "511423",
				"label": "洪雅县"
			}, {
				"value": "511424",
				"label": "丹棱县"
			}, {
				"value": "511425",
				"label": "青神县"
			}]
		}, {
			"value": "511500",
			"label": "宜宾市",
			"children": [{
				"value": "511501",
				"label": "市辖区"
			}, {
				"value": "511502",
				"label": "翠屏区"
			}, {
				"value": "511503",
				"label": "南溪区"
			}, {
				"value": "511504",
				"label": "叙州区"
			}, {
				"value": "511523",
				"label": "江安县"
			}, {
				"value": "511524",
				"label": "长宁县"
			}, {
				"value": "511525",
				"label": "高县"
			}, {
				"value": "511526",
				"label": "珙县"
			}, {
				"value": "511527",
				"label": "筠连县"
			}, {
				"value": "511528",
				"label": "兴文县"
			}, {
				"value": "511529",
				"label": "屏山县"
			}]
		}, {
			"value": "511600",
			"label": "广安市",
			"children": [{
				"value": "511601",
				"label": "市辖区"
			}, {
				"value": "511602",
				"label": "广安区"
			}, {
				"value": "511603",
				"label": "前锋区"
			}, {
				"value": "511621",
				"label": "岳池县"
			}, {
				"value": "511622",
				"label": "武胜县"
			}, {
				"value": "511623",
				"label": "邻水县"
			}, {
				"value": "511681",
				"label": "华蓥市"
			}]
		}, {
			"value": "511700",
			"label": "达州市",
			"children": [{
				"value": "511701",
				"label": "市辖区"
			}, {
				"value": "511702",
				"label": "通川区"
			}, {
				"value": "511703",
				"label": "达川区"
			}, {
				"value": "511722",
				"label": "宣汉县"
			}, {
				"value": "511723",
				"label": "开江县"
			}, {
				"value": "511724",
				"label": "大竹县"
			}, {
				"value": "511725",
				"label": "渠县"
			}, {
				"value": "511771",
				"label": "达州经济开发区"
			}, {
				"value": "511781",
				"label": "万源市"
			}]
		}, {
			"value": "511800",
			"label": "雅安市",
			"children": [{
				"value": "511801",
				"label": "市辖区"
			}, {
				"value": "511802",
				"label": "雨城区"
			}, {
				"value": "511803",
				"label": "名山区"
			}, {
				"value": "511822",
				"label": "荥经县"
			}, {
				"value": "511823",
				"label": "汉源县"
			}, {
				"value": "511824",
				"label": "石棉县"
			}, {
				"value": "511825",
				"label": "天全县"
			}, {
				"value": "511826",
				"label": "芦山县"
			}, {
				"value": "511827",
				"label": "宝兴县"
			}]
		}, {
			"value": "511900",
			"label": "巴中市",
			"children": [{
				"value": "511901",
				"label": "市辖区"
			}, {
				"value": "511902",
				"label": "巴州区"
			}, {
				"value": "511903",
				"label": "恩阳区"
			}, {
				"value": "511921",
				"label": "通江县"
			}, {
				"value": "511922",
				"label": "南江县"
			}, {
				"value": "511923",
				"label": "平昌县"
			}, {
				"value": "511971",
				"label": "巴中经济开发区"
			}]
		}, {
			"value": "512000",
			"label": "资阳市",
			"children": [{
				"value": "512001",
				"label": "市辖区"
			}, {
				"value": "512002",
				"label": "雁江区"
			}, {
				"value": "512021",
				"label": "安岳县"
			}, {
				"value": "512022",
				"label": "乐至县"
			}]
		}, {
			"value": "513200",
			"label": "阿坝藏族羌族自治州",
			"children": [{
				"value": "513201",
				"label": "马尔康市"
			}, {
				"value": "513221",
				"label": "汶川县"
			}, {
				"value": "513222",
				"label": "理县"
			}, {
				"value": "513223",
				"label": "茂县"
			}, {
				"value": "513224",
				"label": "松潘县"
			}, {
				"value": "513225",
				"label": "九寨沟县"
			}, {
				"value": "513226",
				"label": "金川县"
			}, {
				"value": "513227",
				"label": "小金县"
			}, {
				"value": "513228",
				"label": "黑水县"
			}, {
				"value": "513230",
				"label": "壤塘县"
			}, {
				"value": "513231",
				"label": "阿坝县"
			}, {
				"value": "513232",
				"label": "若尔盖县"
			}, {
				"value": "513233",
				"label": "红原县"
			}]
		}, {
			"value": "513300",
			"label": "甘孜藏族自治州",
			"children": [{
				"value": "513301",
				"label": "康定市"
			}, {
				"value": "513322",
				"label": "泸定县"
			}, {
				"value": "513323",
				"label": "丹巴县"
			}, {
				"value": "513324",
				"label": "九龙县"
			}, {
				"value": "513325",
				"label": "雅江县"
			}, {
				"value": "513326",
				"label": "道孚县"
			}, {
				"value": "513327",
				"label": "炉霍县"
			}, {
				"value": "513328",
				"label": "甘孜县"
			}, {
				"value": "513329",
				"label": "新龙县"
			}, {
				"value": "513330",
				"label": "德格县"
			}, {
				"value": "513331",
				"label": "白玉县"
			}, {
				"value": "513332",
				"label": "石渠县"
			}, {
				"value": "513333",
				"label": "色达县"
			}, {
				"value": "513334",
				"label": "理塘县"
			}, {
				"value": "513335",
				"label": "巴塘县"
			}, {
				"value": "513336",
				"label": "乡城县"
			}, {
				"value": "513337",
				"label": "稻城县"
			}, {
				"value": "513338",
				"label": "得荣县"
			}]
		}, {
			"value": "513400",
			"label": "凉山彝族自治州",
			"children": [{
				"value": "513401",
				"label": "西昌市"
			}, {
				"value": "513422",
				"label": "木里藏族自治县"
			}, {
				"value": "513423",
				"label": "盐源县"
			}, {
				"value": "513424",
				"label": "德昌县"
			}, {
				"value": "513425",
				"label": "会理县"
			}, {
				"value": "513426",
				"label": "会东县"
			}, {
				"value": "513427",
				"label": "宁南县"
			}, {
				"value": "513428",
				"label": "普格县"
			}, {
				"value": "513429",
				"label": "布拖县"
			}, {
				"value": "513430",
				"label": "金阳县"
			}, {
				"value": "513431",
				"label": "昭觉县"
			}, {
				"value": "513432",
				"label": "喜德县"
			}, {
				"value": "513433",
				"label": "冕宁县"
			}, {
				"value": "513434",
				"label": "越西县"
			}, {
				"value": "513435",
				"label": "甘洛县"
			}, {
				"value": "513436",
				"label": "美姑县"
			}, {
				"value": "513437",
				"label": "雷波县"
			}]
		}]
	}, {
		"value": "520000",
		"label": "贵州省",
		"children": [{
			"value": "520100",
			"label": "贵阳市",
			"children": [{
				"value": "520101",
				"label": "市辖区"
			}, {
				"value": "520102",
				"label": "南明区"
			}, {
				"value": "520103",
				"label": "云岩区"
			}, {
				"value": "520111",
				"label": "花溪区"
			}, {
				"value": "520112",
				"label": "乌当区"
			}, {
				"value": "520113",
				"label": "白云区"
			}, {
				"value": "520115",
				"label": "观山湖区"
			}, {
				"value": "520121",
				"label": "开阳县"
			}, {
				"value": "520122",
				"label": "息烽县"
			}, {
				"value": "520123",
				"label": "修文县"
			}, {
				"value": "520181",
				"label": "清镇市"
			}]
		}, {
			"value": "520200",
			"label": "六盘水市",
			"children": [{
				"value": "520201",
				"label": "钟山区"
			}, {
				"value": "520203",
				"label": "六枝特区"
			}, {
				"value": "520221",
				"label": "水城县"
			}, {
				"value": "520281",
				"label": "盘州市"
			}]
		}, {
			"value": "520300",
			"label": "遵义市",
			"children": [{
				"value": "520301",
				"label": "市辖区"
			}, {
				"value": "520302",
				"label": "红花岗区"
			}, {
				"value": "520303",
				"label": "汇川区"
			}, {
				"value": "520304",
				"label": "播州区"
			}, {
				"value": "520322",
				"label": "桐梓县"
			}, {
				"value": "520323",
				"label": "绥阳县"
			}, {
				"value": "520324",
				"label": "正安县"
			}, {
				"value": "520325",
				"label": "道真仡佬族苗族自治县"
			}, {
				"value": "520326",
				"label": "务川仡佬族苗族自治县"
			}, {
				"value": "520327",
				"label": "凤冈县"
			}, {
				"value": "520328",
				"label": "湄潭县"
			}, {
				"value": "520329",
				"label": "余庆县"
			}, {
				"value": "520330",
				"label": "习水县"
			}, {
				"value": "520381",
				"label": "赤水市"
			}, {
				"value": "520382",
				"label": "仁怀市"
			}]
		}, {
			"value": "520400",
			"label": "安顺市",
			"children": [{
				"value": "520401",
				"label": "市辖区"
			}, {
				"value": "520402",
				"label": "西秀区"
			}, {
				"value": "520403",
				"label": "平坝区"
			}, {
				"value": "520422",
				"label": "普定县"
			}, {
				"value": "520423",
				"label": "镇宁布依族苗族自治县"
			}, {
				"value": "520424",
				"label": "关岭布依族苗族自治县"
			}, {
				"value": "520425",
				"label": "紫云苗族布依族自治县"
			}]
		}, {
			"value": "520500",
			"label": "毕节市",
			"children": [{
				"value": "520501",
				"label": "市辖区"
			}, {
				"value": "520502",
				"label": "七星关区"
			}, {
				"value": "520521",
				"label": "大方县"
			}, {
				"value": "520522",
				"label": "黔西县"
			}, {
				"value": "520523",
				"label": "金沙县"
			}, {
				"value": "520524",
				"label": "织金县"
			}, {
				"value": "520525",
				"label": "纳雍县"
			}, {
				"value": "520526",
				"label": "威宁彝族回族苗族自治县"
			}, {
				"value": "520527",
				"label": "赫章县"
			}]
		}, {
			"value": "520600",
			"label": "铜仁市",
			"children": [{
				"value": "520601",
				"label": "市辖区"
			}, {
				"value": "520602",
				"label": "碧江区"
			}, {
				"value": "520603",
				"label": "万山区"
			}, {
				"value": "520621",
				"label": "江口县"
			}, {
				"value": "520622",
				"label": "玉屏侗族自治县"
			}, {
				"value": "520623",
				"label": "石阡县"
			}, {
				"value": "520624",
				"label": "思南县"
			}, {
				"value": "520625",
				"label": "印江土家族苗族自治县"
			}, {
				"value": "520626",
				"label": "德江县"
			}, {
				"value": "520627",
				"label": "沿河土家族自治县"
			}, {
				"value": "520628",
				"label": "松桃苗族自治县"
			}]
		}, {
			"value": "522300",
			"label": "黔西南布依族苗族自治州",
			"children": [{
				"value": "522301",
				"label": "兴义市"
			}, {
				"value": "522302",
				"label": "兴仁市"
			}, {
				"value": "522323",
				"label": "普安县"
			}, {
				"value": "522324",
				"label": "晴隆县"
			}, {
				"value": "522325",
				"label": "贞丰县"
			}, {
				"value": "522326",
				"label": "望谟县"
			}, {
				"value": "522327",
				"label": "册亨县"
			}, {
				"value": "522328",
				"label": "安龙县"
			}]
		}, {
			"value": "522600",
			"label": "黔东南苗族侗族自治州",
			"children": [{
				"value": "522601",
				"label": "凯里市"
			}, {
				"value": "522622",
				"label": "黄平县"
			}, {
				"value": "522623",
				"label": "施秉县"
			}, {
				"value": "522624",
				"label": "三穗县"
			}, {
				"value": "522625",
				"label": "镇远县"
			}, {
				"value": "522626",
				"label": "岑巩县"
			}, {
				"value": "522627",
				"label": "天柱县"
			}, {
				"value": "522628",
				"label": "锦屏县"
			}, {
				"value": "522629",
				"label": "剑河县"
			}, {
				"value": "522630",
				"label": "台江县"
			}, {
				"value": "522631",
				"label": "黎平县"
			}, {
				"value": "522632",
				"label": "榕江县"
			}, {
				"value": "522633",
				"label": "从江县"
			}, {
				"value": "522634",
				"label": "雷山县"
			}, {
				"value": "522635",
				"label": "麻江县"
			}, {
				"value": "522636",
				"label": "丹寨县"
			}]
		}, {
			"value": "522700",
			"label": "黔南布依族苗族自治州",
			"children": [{
				"value": "522701",
				"label": "都匀市"
			}, {
				"value": "522702",
				"label": "福泉市"
			}, {
				"value": "522722",
				"label": "荔波县"
			}, {
				"value": "522723",
				"label": "贵定县"
			}, {
				"value": "522725",
				"label": "瓮安县"
			}, {
				"value": "522726",
				"label": "独山县"
			}, {
				"value": "522727",
				"label": "平塘县"
			}, {
				"value": "522728",
				"label": "罗甸县"
			}, {
				"value": "522729",
				"label": "长顺县"
			}, {
				"value": "522730",
				"label": "龙里县"
			}, {
				"value": "522731",
				"label": "惠水县"
			}, {
				"value": "522732",
				"label": "三都水族自治县"
			}]
		}]
	}, {
		"value": "530000",
		"label": "云南省",
		"children": [{
			"value": "530100",
			"label": "昆明市",
			"children": [{
				"value": "530101",
				"label": "市辖区"
			}, {
				"value": "530102",
				"label": "五华区"
			}, {
				"value": "530103",
				"label": "盘龙区"
			}, {
				"value": "530111",
				"label": "官渡区"
			}, {
				"value": "530112",
				"label": "西山区"
			}, {
				"value": "530113",
				"label": "东川区"
			}, {
				"value": "530114",
				"label": "呈贡区"
			}, {
				"value": "530115",
				"label": "晋宁区"
			}, {
				"value": "530124",
				"label": "富民县"
			}, {
				"value": "530125",
				"label": "宜良县"
			}, {
				"value": "530126",
				"label": "石林彝族自治县"
			}, {
				"value": "530127",
				"label": "嵩明县"
			}, {
				"value": "530128",
				"label": "禄劝彝族苗族自治县"
			}, {
				"value": "530129",
				"label": "寻甸回族彝族自治县"
			}, {
				"value": "530181",
				"label": "安宁市"
			}]
		}, {
			"value": "530300",
			"label": "曲靖市",
			"children": [{
				"value": "530301",
				"label": "市辖区"
			}, {
				"value": "530302",
				"label": "麒麟区"
			}, {
				"value": "530303",
				"label": "沾益区"
			}, {
				"value": "530304",
				"label": "马龙区"
			}, {
				"value": "530322",
				"label": "陆良县"
			}, {
				"value": "530323",
				"label": "师宗县"
			}, {
				"value": "530324",
				"label": "罗平县"
			}, {
				"value": "530325",
				"label": "富源县"
			}, {
				"value": "530326",
				"label": "会泽县"
			}, {
				"value": "530381",
				"label": "宣威市"
			}]
		}, {
			"value": "530400",
			"label": "玉溪市",
			"children": [{
				"value": "530401",
				"label": "市辖区"
			}, {
				"value": "530402",
				"label": "红塔区"
			}, {
				"value": "530403",
				"label": "江川区"
			}, {
				"value": "530422",
				"label": "澄江县"
			}, {
				"value": "530423",
				"label": "通海县"
			}, {
				"value": "530424",
				"label": "华宁县"
			}, {
				"value": "530425",
				"label": "易门县"
			}, {
				"value": "530426",
				"label": "峨山彝族自治县"
			}, {
				"value": "530427",
				"label": "新平彝族傣族自治县"
			}, {
				"value": "530428",
				"label": "元江哈尼族彝族傣族自治县"
			}]
		}, {
			"value": "530500",
			"label": "保山市",
			"children": [{
				"value": "530501",
				"label": "市辖区"
			}, {
				"value": "530502",
				"label": "隆阳区"
			}, {
				"value": "530521",
				"label": "施甸县"
			}, {
				"value": "530523",
				"label": "龙陵县"
			}, {
				"value": "530524",
				"label": "昌宁县"
			}, {
				"value": "530581",
				"label": "腾冲市"
			}]
		}, {
			"value": "530600",
			"label": "昭通市",
			"children": [{
				"value": "530601",
				"label": "市辖区"
			}, {
				"value": "530602",
				"label": "昭阳区"
			}, {
				"value": "530621",
				"label": "鲁甸县"
			}, {
				"value": "530622",
				"label": "巧家县"
			}, {
				"value": "530623",
				"label": "盐津县"
			}, {
				"value": "530624",
				"label": "大关县"
			}, {
				"value": "530625",
				"label": "永善县"
			}, {
				"value": "530626",
				"label": "绥江县"
			}, {
				"value": "530627",
				"label": "镇雄县"
			}, {
				"value": "530628",
				"label": "彝良县"
			}, {
				"value": "530629",
				"label": "威信县"
			}, {
				"value": "530681",
				"label": "水富市"
			}]
		}, {
			"value": "530700",
			"label": "丽江市",
			"children": [{
				"value": "530701",
				"label": "市辖区"
			}, {
				"value": "530702",
				"label": "古城区"
			}, {
				"value": "530721",
				"label": "玉龙纳西族自治县"
			}, {
				"value": "530722",
				"label": "永胜县"
			}, {
				"value": "530723",
				"label": "华坪县"
			}, {
				"value": "530724",
				"label": "宁蒗彝族自治县"
			}]
		}, {
			"value": "530800",
			"label": "普洱市",
			"children": [{
				"value": "530801",
				"label": "市辖区"
			}, {
				"value": "530802",
				"label": "思茅区"
			}, {
				"value": "530821",
				"label": "宁洱哈尼族彝族自治县"
			}, {
				"value": "530822",
				"label": "墨江哈尼族自治县"
			}, {
				"value": "530823",
				"label": "景东彝族自治县"
			}, {
				"value": "530824",
				"label": "景谷傣族彝族自治县"
			}, {
				"value": "530825",
				"label": "镇沅彝族哈尼族拉祜族自治县"
			}, {
				"value": "530826",
				"label": "江城哈尼族彝族自治县"
			}, {
				"value": "530827",
				"label": "孟连傣族拉祜族佤族自治县"
			}, {
				"value": "530828",
				"label": "澜沧拉祜族自治县"
			}, {
				"value": "530829",
				"label": "西盟佤族自治县"
			}]
		}, {
			"value": "530900",
			"label": "临沧市",
			"children": [{
				"value": "530901",
				"label": "市辖区"
			}, {
				"value": "530902",
				"label": "临翔区"
			}, {
				"value": "530921",
				"label": "凤庆县"
			}, {
				"value": "530922",
				"label": "云县"
			}, {
				"value": "530923",
				"label": "永德县"
			}, {
				"value": "530924",
				"label": "镇康县"
			}, {
				"value": "530925",
				"label": "双江拉祜族佤族布朗族傣族自治县"
			}, {
				"value": "530926",
				"label": "耿马傣族佤族自治县"
			}, {
				"value": "530927",
				"label": "沧源佤族自治县"
			}]
		}, {
			"value": "532300",
			"label": "楚雄彝族自治州",
			"children": [{
				"value": "532301",
				"label": "楚雄市"
			}, {
				"value": "532322",
				"label": "双柏县"
			}, {
				"value": "532323",
				"label": "牟定县"
			}, {
				"value": "532324",
				"label": "南华县"
			}, {
				"value": "532325",
				"label": "姚安县"
			}, {
				"value": "532326",
				"label": "大姚县"
			}, {
				"value": "532327",
				"label": "永仁县"
			}, {
				"value": "532328",
				"label": "元谋县"
			}, {
				"value": "532329",
				"label": "武定县"
			}, {
				"value": "532331",
				"label": "禄丰县"
			}]
		}, {
			"value": "532500",
			"label": "红河哈尼族彝族自治州",
			"children": [{
				"value": "532501",
				"label": "个旧市"
			}, {
				"value": "532502",
				"label": "开远市"
			}, {
				"value": "532503",
				"label": "蒙自市"
			}, {
				"value": "532504",
				"label": "弥勒市"
			}, {
				"value": "532523",
				"label": "屏边苗族自治县"
			}, {
				"value": "532524",
				"label": "建水县"
			}, {
				"value": "532525",
				"label": "石屏县"
			}, {
				"value": "532527",
				"label": "泸西县"
			}, {
				"value": "532528",
				"label": "元阳县"
			}, {
				"value": "532529",
				"label": "红河县"
			}, {
				"value": "532530",
				"label": "金平苗族瑶族傣族自治县"
			}, {
				"value": "532531",
				"label": "绿春县"
			}, {
				"value": "532532",
				"label": "河口瑶族自治县"
			}]
		}, {
			"value": "532600",
			"label": "文山壮族苗族自治州",
			"children": [{
				"value": "532601",
				"label": "文山市"
			}, {
				"value": "532622",
				"label": "砚山县"
			}, {
				"value": "532623",
				"label": "西畴县"
			}, {
				"value": "532624",
				"label": "麻栗坡县"
			}, {
				"value": "532625",
				"label": "马关县"
			}, {
				"value": "532626",
				"label": "丘北县"
			}, {
				"value": "532627",
				"label": "广南县"
			}, {
				"value": "532628",
				"label": "富宁县"
			}]
		}, {
			"value": "532800",
			"label": "西双版纳傣族自治州",
			"children": [{
				"value": "532801",
				"label": "景洪市"
			}, {
				"value": "532822",
				"label": "勐海县"
			}, {
				"value": "532823",
				"label": "勐腊县"
			}]
		}, {
			"value": "532900",
			"label": "大理白族自治州",
			"children": [{
				"value": "532901",
				"label": "大理市"
			}, {
				"value": "532922",
				"label": "漾濞彝族自治县"
			}, {
				"value": "532923",
				"label": "祥云县"
			}, {
				"value": "532924",
				"label": "宾川县"
			}, {
				"value": "532925",
				"label": "弥渡县"
			}, {
				"value": "532926",
				"label": "南涧彝族自治县"
			}, {
				"value": "532927",
				"label": "巍山彝族回族自治县"
			}, {
				"value": "532928",
				"label": "永平县"
			}, {
				"value": "532929",
				"label": "云龙县"
			}, {
				"value": "532930",
				"label": "洱源县"
			}, {
				"value": "532931",
				"label": "剑川县"
			}, {
				"value": "532932",
				"label": "鹤庆县"
			}]
		}, {
			"value": "533100",
			"label": "德宏傣族景颇族自治州",
			"children": [{
				"value": "533102",
				"label": "瑞丽市"
			}, {
				"value": "533103",
				"label": "芒市"
			}, {
				"value": "533122",
				"label": "梁河县"
			}, {
				"value": "533123",
				"label": "盈江县"
			}, {
				"value": "533124",
				"label": "陇川县"
			}]
		}, {
			"value": "533300",
			"label": "怒江傈僳族自治州",
			"children": [{
				"value": "533301",
				"label": "泸水市"
			}, {
				"value": "533323",
				"label": "福贡县"
			}, {
				"value": "533324",
				"label": "贡山独龙族怒族自治县"
			}, {
				"value": "533325",
				"label": "兰坪白族普米族自治县"
			}]
		}, {
			"value": "533400",
			"label": "迪庆藏族自治州",
			"children": [{
				"value": "533401",
				"label": "香格里拉市"
			}, {
				"value": "533422",
				"label": "德钦县"
			}, {
				"value": "533423",
				"label": "维西傈僳族自治县"
			}]
		}]
	}, {
		"value": "540000",
		"label": "西藏自治区",
		"children": [{
			"value": "540100",
			"label": "拉萨市",
			"children": [{
				"value": "540101",
				"label": "市辖区"
			}, {
				"value": "540102",
				"label": "城关区"
			}, {
				"value": "540103",
				"label": "堆龙德庆区"
			}, {
				"value": "540104",
				"label": "达孜区"
			}, {
				"value": "540121",
				"label": "林周县"
			}, {
				"value": "540122",
				"label": "当雄县"
			}, {
				"value": "540123",
				"label": "尼木县"
			}, {
				"value": "540124",
				"label": "曲水县"
			}, {
				"value": "540127",
				"label": "墨竹工卡县"
			}, {
				"value": "540171",
				"label": "格尔木藏青工业园区"
			}, {
				"value": "540172",
				"label": "拉萨经济技术开发区"
			}, {
				"value": "540173",
				"label": "西藏文化旅游创意园区"
			}, {
				"value": "540174",
				"label": "达孜工业园区"
			}]
		}, {
			"value": "540200",
			"label": "日喀则市",
			"children": [{
				"value": "540202",
				"label": "桑珠孜区"
			}, {
				"value": "540221",
				"label": "南木林县"
			}, {
				"value": "540222",
				"label": "江孜县"
			}, {
				"value": "540223",
				"label": "定日县"
			}, {
				"value": "540224",
				"label": "萨迦县"
			}, {
				"value": "540225",
				"label": "拉孜县"
			}, {
				"value": "540226",
				"label": "昂仁县"
			}, {
				"value": "540227",
				"label": "谢通门县"
			}, {
				"value": "540228",
				"label": "白朗县"
			}, {
				"value": "540229",
				"label": "仁布县"
			}, {
				"value": "540230",
				"label": "康马县"
			}, {
				"value": "540231",
				"label": "定结县"
			}, {
				"value": "540232",
				"label": "仲巴县"
			}, {
				"value": "540233",
				"label": "亚东县"
			}, {
				"value": "540234",
				"label": "吉隆县"
			}, {
				"value": "540235",
				"label": "聂拉木县"
			}, {
				"value": "540236",
				"label": "萨嘎县"
			}, {
				"value": "540237",
				"label": "岗巴县"
			}]
		}, {
			"value": "540300",
			"label": "昌都市",
			"children": [{
				"value": "540302",
				"label": "卡若区"
			}, {
				"value": "540321",
				"label": "江达县"
			}, {
				"value": "540322",
				"label": "贡觉县"
			}, {
				"value": "540323",
				"label": "类乌齐县"
			}, {
				"value": "540324",
				"label": "丁青县"
			}, {
				"value": "540325",
				"label": "察雅县"
			}, {
				"value": "540326",
				"label": "八宿县"
			}, {
				"value": "540327",
				"label": "左贡县"
			}, {
				"value": "540328",
				"label": "芒康县"
			}, {
				"value": "540329",
				"label": "洛隆县"
			}, {
				"value": "540330",
				"label": "边坝县"
			}]
		}, {
			"value": "540400",
			"label": "林芝市",
			"children": [{
				"value": "540402",
				"label": "巴宜区"
			}, {
				"value": "540421",
				"label": "工布江达县"
			}, {
				"value": "540422",
				"label": "米林县"
			}, {
				"value": "540423",
				"label": "墨脱县"
			}, {
				"value": "540424",
				"label": "波密县"
			}, {
				"value": "540425",
				"label": "察隅县"
			}, {
				"value": "540426",
				"label": "朗县"
			}]
		}, {
			"value": "540500",
			"label": "山南市",
			"children": [{
				"value": "540501",
				"label": "市辖区"
			}, {
				"value": "540502",
				"label": "乃东区"
			}, {
				"value": "540521",
				"label": "扎囊县"
			}, {
				"value": "540522",
				"label": "贡嘎县"
			}, {
				"value": "540523",
				"label": "桑日县"
			}, {
				"value": "540524",
				"label": "琼结县"
			}, {
				"value": "540525",
				"label": "曲松县"
			}, {
				"value": "540526",
				"label": "措美县"
			}, {
				"value": "540527",
				"label": "洛扎县"
			}, {
				"value": "540528",
				"label": "加查县"
			}, {
				"value": "540529",
				"label": "隆子县"
			}, {
				"value": "540530",
				"label": "错那县"
			}, {
				"value": "540531",
				"label": "浪卡子县"
			}]
		}, {
			"value": "540600",
			"label": "那曲市",
			"children": [{
				"value": "540602",
				"label": "色尼区"
			}, {
				"value": "540621",
				"label": "嘉黎县"
			}, {
				"value": "540622",
				"label": "比如县"
			}, {
				"value": "540623",
				"label": "聂荣县"
			}, {
				"value": "540624",
				"label": "安多县"
			}, {
				"value": "540625",
				"label": "申扎县"
			}, {
				"value": "540626",
				"label": "索县"
			}, {
				"value": "540627",
				"label": "班戈县"
			}, {
				"value": "540628",
				"label": "巴青县"
			}, {
				"value": "540629",
				"label": "尼玛县"
			}, {
				"value": "540630",
				"label": "双湖县"
			}]
		}, {
			"value": "542500",
			"label": "阿里地区",
			"children": [{
				"value": "542521",
				"label": "普兰县"
			}, {
				"value": "542522",
				"label": "札达县"
			}, {
				"value": "542523",
				"label": "噶尔县"
			}, {
				"value": "542524",
				"label": "日土县"
			}, {
				"value": "542525",
				"label": "革吉县"
			}, {
				"value": "542526",
				"label": "改则县"
			}, {
				"value": "542527",
				"label": "措勤县"
			}]
		}]
	}, {
		"value": "610000",
		"label": "陕西省",
		"children": [{
			"value": "610100",
			"label": "西安市",
			"children": [{
				"value": "610101",
				"label": "市辖区"
			}, {
				"value": "610102",
				"label": "新城区"
			}, {
				"value": "610103",
				"label": "碑林区"
			}, {
				"value": "610104",
				"label": "莲湖区"
			}, {
				"value": "610111",
				"label": "灞桥区"
			}, {
				"value": "610112",
				"label": "未央区"
			}, {
				"value": "610113",
				"label": "雁塔区"
			}, {
				"value": "610114",
				"label": "阎良区"
			}, {
				"value": "610115",
				"label": "临潼区"
			}, {
				"value": "610116",
				"label": "长安区"
			}, {
				"value": "610117",
				"label": "高陵区"
			}, {
				"value": "610118",
				"label": "鄠邑区"
			}, {
				"value": "610122",
				"label": "蓝田县"
			}, {
				"value": "610124",
				"label": "周至县"
			}]
		}, {
			"value": "610200",
			"label": "铜川市",
			"children": [{
				"value": "610201",
				"label": "市辖区"
			}, {
				"value": "610202",
				"label": "王益区"
			}, {
				"value": "610203",
				"label": "印台区"
			}, {
				"value": "610204",
				"label": "耀州区"
			}, {
				"value": "610222",
				"label": "宜君县"
			}]
		}, {
			"value": "610300",
			"label": "宝鸡市",
			"children": [{
				"value": "610301",
				"label": "市辖区"
			}, {
				"value": "610302",
				"label": "渭滨区"
			}, {
				"value": "610303",
				"label": "金台区"
			}, {
				"value": "610304",
				"label": "陈仓区"
			}, {
				"value": "610322",
				"label": "凤翔县"
			}, {
				"value": "610323",
				"label": "岐山县"
			}, {
				"value": "610324",
				"label": "扶风县"
			}, {
				"value": "610326",
				"label": "眉县"
			}, {
				"value": "610327",
				"label": "陇县"
			}, {
				"value": "610328",
				"label": "千阳县"
			}, {
				"value": "610329",
				"label": "麟游县"
			}, {
				"value": "610330",
				"label": "凤县"
			}, {
				"value": "610331",
				"label": "太白县"
			}]
		}, {
			"value": "610400",
			"label": "咸阳市",
			"children": [{
				"value": "610401",
				"label": "市辖区"
			}, {
				"value": "610402",
				"label": "秦都区"
			}, {
				"value": "610403",
				"label": "杨陵区"
			}, {
				"value": "610404",
				"label": "渭城区"
			}, {
				"value": "610422",
				"label": "三原县"
			}, {
				"value": "610423",
				"label": "泾阳县"
			}, {
				"value": "610424",
				"label": "乾县"
			}, {
				"value": "610425",
				"label": "礼泉县"
			}, {
				"value": "610426",
				"label": "永寿县"
			}, {
				"value": "610428",
				"label": "长武县"
			}, {
				"value": "610429",
				"label": "旬邑县"
			}, {
				"value": "610430",
				"label": "淳化县"
			}, {
				"value": "610431",
				"label": "武功县"
			}, {
				"value": "610481",
				"label": "兴平市"
			}, {
				"value": "610482",
				"label": "彬州市"
			}]
		}, {
			"value": "610500",
			"label": "渭南市",
			"children": [{
				"value": "610501",
				"label": "市辖区"
			}, {
				"value": "610502",
				"label": "临渭区"
			}, {
				"value": "610503",
				"label": "华州区"
			}, {
				"value": "610522",
				"label": "潼关县"
			}, {
				"value": "610523",
				"label": "大荔县"
			}, {
				"value": "610524",
				"label": "合阳县"
			}, {
				"value": "610525",
				"label": "澄城县"
			}, {
				"value": "610526",
				"label": "蒲城县"
			}, {
				"value": "610527",
				"label": "白水县"
			}, {
				"value": "610528",
				"label": "富平县"
			}, {
				"value": "610581",
				"label": "韩城市"
			}, {
				"value": "610582",
				"label": "华阴市"
			}]
		}, {
			"value": "610600",
			"label": "延安市",
			"children": [{
				"value": "610601",
				"label": "市辖区"
			}, {
				"value": "610602",
				"label": "宝塔区"
			}, {
				"value": "610603",
				"label": "安塞区"
			}, {
				"value": "610621",
				"label": "延长县"
			}, {
				"value": "610622",
				"label": "延川县"
			}, {
				"value": "610625",
				"label": "志丹县"
			}, {
				"value": "610626",
				"label": "吴起县"
			}, {
				"value": "610627",
				"label": "甘泉县"
			}, {
				"value": "610628",
				"label": "富县"
			}, {
				"value": "610629",
				"label": "洛川县"
			}, {
				"value": "610630",
				"label": "宜川县"
			}, {
				"value": "610631",
				"label": "黄龙县"
			}, {
				"value": "610632",
				"label": "黄陵县"
			}, {
				"value": "610681",
				"label": "子长市"
			}]
		}, {
			"value": "610700",
			"label": "汉中市",
			"children": [{
				"value": "610701",
				"label": "市辖区"
			}, {
				"value": "610702",
				"label": "汉台区"
			}, {
				"value": "610703",
				"label": "南郑区"
			}, {
				"value": "610722",
				"label": "城固县"
			}, {
				"value": "610723",
				"label": "洋县"
			}, {
				"value": "610724",
				"label": "西乡县"
			}, {
				"value": "610725",
				"label": "勉县"
			}, {
				"value": "610726",
				"label": "宁强县"
			}, {
				"value": "610727",
				"label": "略阳县"
			}, {
				"value": "610728",
				"label": "镇巴县"
			}, {
				"value": "610729",
				"label": "留坝县"
			}, {
				"value": "610730",
				"label": "佛坪县"
			}]
		}, {
			"value": "610800",
			"label": "榆林市",
			"children": [{
				"value": "610801",
				"label": "市辖区"
			}, {
				"value": "610802",
				"label": "榆阳区"
			}, {
				"value": "610803",
				"label": "横山区"
			}, {
				"value": "610822",
				"label": "府谷县"
			}, {
				"value": "610824",
				"label": "靖边县"
			}, {
				"value": "610825",
				"label": "定边县"
			}, {
				"value": "610826",
				"label": "绥德县"
			}, {
				"value": "610827",
				"label": "米脂县"
			}, {
				"value": "610828",
				"label": "佳县"
			}, {
				"value": "610829",
				"label": "吴堡县"
			}, {
				"value": "610830",
				"label": "清涧县"
			}, {
				"value": "610831",
				"label": "子洲县"
			}, {
				"value": "610881",
				"label": "神木市"
			}]
		}, {
			"value": "610900",
			"label": "安康市",
			"children": [{
				"value": "610901",
				"label": "市辖区"
			}, {
				"value": "610902",
				"label": "汉滨区"
			}, {
				"value": "610921",
				"label": "汉阴县"
			}, {
				"value": "610922",
				"label": "石泉县"
			}, {
				"value": "610923",
				"label": "宁陕县"
			}, {
				"value": "610924",
				"label": "紫阳县"
			}, {
				"value": "610925",
				"label": "岚皋县"
			}, {
				"value": "610926",
				"label": "平利县"
			}, {
				"value": "610927",
				"label": "镇坪县"
			}, {
				"value": "610928",
				"label": "旬阳县"
			}, {
				"value": "610929",
				"label": "白河县"
			}]
		}, {
			"value": "611000",
			"label": "商洛市",
			"children": [{
				"value": "611001",
				"label": "市辖区"
			}, {
				"value": "611002",
				"label": "商州区"
			}, {
				"value": "611021",
				"label": "洛南县"
			}, {
				"value": "611022",
				"label": "丹凤县"
			}, {
				"value": "611023",
				"label": "商南县"
			}, {
				"value": "611024",
				"label": "山阳县"
			}, {
				"value": "611025",
				"label": "镇安县"
			}, {
				"value": "611026",
				"label": "柞水县"
			}]
		}]
	}, {
		"value": "620000",
		"label": "甘肃省",
		"children": [{
			"value": "620100",
			"label": "兰州市",
			"children": [{
				"value": "620101",
				"label": "市辖区"
			}, {
				"value": "620102",
				"label": "城关区"
			}, {
				"value": "620103",
				"label": "七里河区"
			}, {
				"value": "620104",
				"label": "西固区"
			}, {
				"value": "620105",
				"label": "安宁区"
			}, {
				"value": "620111",
				"label": "红古区"
			}, {
				"value": "620121",
				"label": "永登县"
			}, {
				"value": "620122",
				"label": "皋兰县"
			}, {
				"value": "620123",
				"label": "榆中县"
			}, {
				"value": "620171",
				"label": "兰州新区"
			}]
		}, {
			"value": "620200",
			"label": "嘉峪关市",
			"children": [{
				"value": "620201",
				"label": "市辖区"
			}]
		}, {
			"value": "620300",
			"label": "金昌市",
			"children": [{
				"value": "620301",
				"label": "市辖区"
			}, {
				"value": "620302",
				"label": "金川区"
			}, {
				"value": "620321",
				"label": "永昌县"
			}]
		}, {
			"value": "620400",
			"label": "白银市",
			"children": [{
				"value": "620401",
				"label": "市辖区"
			}, {
				"value": "620402",
				"label": "白银区"
			}, {
				"value": "620403",
				"label": "平川区"
			}, {
				"value": "620421",
				"label": "靖远县"
			}, {
				"value": "620422",
				"label": "会宁县"
			}, {
				"value": "620423",
				"label": "景泰县"
			}]
		}, {
			"value": "620500",
			"label": "天水市",
			"children": [{
				"value": "620501",
				"label": "市辖区"
			}, {
				"value": "620502",
				"label": "秦州区"
			}, {
				"value": "620503",
				"label": "麦积区"
			}, {
				"value": "620521",
				"label": "清水县"
			}, {
				"value": "620522",
				"label": "秦安县"
			}, {
				"value": "620523",
				"label": "甘谷县"
			}, {
				"value": "620524",
				"label": "武山县"
			}, {
				"value": "620525",
				"label": "张家川回族自治县"
			}]
		}, {
			"value": "620600",
			"label": "武威市",
			"children": [{
				"value": "620601",
				"label": "市辖区"
			}, {
				"value": "620602",
				"label": "凉州区"
			}, {
				"value": "620621",
				"label": "民勤县"
			}, {
				"value": "620622",
				"label": "古浪县"
			}, {
				"value": "620623",
				"label": "天祝藏族自治县"
			}]
		}, {
			"value": "620700",
			"label": "张掖市",
			"children": [{
				"value": "620701",
				"label": "市辖区"
			}, {
				"value": "620702",
				"label": "甘州区"
			}, {
				"value": "620721",
				"label": "肃南裕固族自治县"
			}, {
				"value": "620722",
				"label": "民乐县"
			}, {
				"value": "620723",
				"label": "临泽县"
			}, {
				"value": "620724",
				"label": "高台县"
			}, {
				"value": "620725",
				"label": "山丹县"
			}]
		}, {
			"value": "620800",
			"label": "平凉市",
			"children": [{
				"value": "620801",
				"label": "市辖区"
			}, {
				"value": "620802",
				"label": "崆峒区"
			}, {
				"value": "620821",
				"label": "泾川县"
			}, {
				"value": "620822",
				"label": "灵台县"
			}, {
				"value": "620823",
				"label": "崇信县"
			}, {
				"value": "620825",
				"label": "庄浪县"
			}, {
				"value": "620826",
				"label": "静宁县"
			}, {
				"value": "620881",
				"label": "华亭市"
			}]
		}, {
			"value": "620900",
			"label": "酒泉市",
			"children": [{
				"value": "620901",
				"label": "市辖区"
			}, {
				"value": "620902",
				"label": "肃州区"
			}, {
				"value": "620921",
				"label": "金塔县"
			}, {
				"value": "620922",
				"label": "瓜州县"
			}, {
				"value": "620923",
				"label": "肃北蒙古族自治县"
			}, {
				"value": "620924",
				"label": "阿克塞哈萨克族自治县"
			}, {
				"value": "620981",
				"label": "玉门市"
			}, {
				"value": "620982",
				"label": "敦煌市"
			}]
		}, {
			"value": "621000",
			"label": "庆阳市",
			"children": [{
				"value": "621001",
				"label": "市辖区"
			}, {
				"value": "621002",
				"label": "西峰区"
			}, {
				"value": "621021",
				"label": "庆城县"
			}, {
				"value": "621022",
				"label": "环县"
			}, {
				"value": "621023",
				"label": "华池县"
			}, {
				"value": "621024",
				"label": "合水县"
			}, {
				"value": "621025",
				"label": "正宁县"
			}, {
				"value": "621026",
				"label": "宁县"
			}, {
				"value": "621027",
				"label": "镇原县"
			}]
		}, {
			"value": "621100",
			"label": "定西市",
			"children": [{
				"value": "621101",
				"label": "市辖区"
			}, {
				"value": "621102",
				"label": "安定区"
			}, {
				"value": "621121",
				"label": "通渭县"
			}, {
				"value": "621122",
				"label": "陇西县"
			}, {
				"value": "621123",
				"label": "渭源县"
			}, {
				"value": "621124",
				"label": "临洮县"
			}, {
				"value": "621125",
				"label": "漳县"
			}, {
				"value": "621126",
				"label": "岷县"
			}]
		}, {
			"value": "621200",
			"label": "陇南市",
			"children": [{
				"value": "621201",
				"label": "市辖区"
			}, {
				"value": "621202",
				"label": "武都区"
			}, {
				"value": "621221",
				"label": "成县"
			}, {
				"value": "621222",
				"label": "文县"
			}, {
				"value": "621223",
				"label": "宕昌县"
			}, {
				"value": "621224",
				"label": "康县"
			}, {
				"value": "621225",
				"label": "西和县"
			}, {
				"value": "621226",
				"label": "礼县"
			}, {
				"value": "621227",
				"label": "徽县"
			}, {
				"value": "621228",
				"label": "两当县"
			}]
		}, {
			"value": "622900",
			"label": "临夏回族自治州",
			"children": [{
				"value": "622901",
				"label": "临夏市"
			}, {
				"value": "622921",
				"label": "临夏县"
			}, {
				"value": "622922",
				"label": "康乐县"
			}, {
				"value": "622923",
				"label": "永靖县"
			}, {
				"value": "622924",
				"label": "广河县"
			}, {
				"value": "622925",
				"label": "和政县"
			}, {
				"value": "622926",
				"label": "东乡族自治县"
			}, {
				"value": "622927",
				"label": "积石山保安族东乡族撒拉族自治县"
			}]
		}, {
			"value": "623000",
			"label": "甘南藏族自治州",
			"children": [{
				"value": "623001",
				"label": "合作市"
			}, {
				"value": "623021",
				"label": "临潭县"
			}, {
				"value": "623022",
				"label": "卓尼县"
			}, {
				"value": "623023",
				"label": "舟曲县"
			}, {
				"value": "623024",
				"label": "迭部县"
			}, {
				"value": "623025",
				"label": "玛曲县"
			}, {
				"value": "623026",
				"label": "碌曲县"
			}, {
				"value": "623027",
				"label": "夏河县"
			}]
		}]
	}, {
		"value": "630000",
		"label": "青海省",
		"children": [{
			"value": "630100",
			"label": "西宁市",
			"children": [{
				"value": "630101",
				"label": "市辖区"
			}, {
				"value": "630102",
				"label": "城东区"
			}, {
				"value": "630103",
				"label": "城中区"
			}, {
				"value": "630104",
				"label": "城西区"
			}, {
				"value": "630105",
				"label": "城北区"
			}, {
				"value": "630121",
				"label": "大通回族土族自治县"
			}, {
				"value": "630122",
				"label": "湟中县"
			}, {
				"value": "630123",
				"label": "湟源县"
			}]
		}, {
			"value": "630200",
			"label": "海东市",
			"children": [{
				"value": "630202",
				"label": "乐都区"
			}, {
				"value": "630203",
				"label": "平安区"
			}, {
				"value": "630222",
				"label": "民和回族土族自治县"
			}, {
				"value": "630223",
				"label": "互助土族自治县"
			}, {
				"value": "630224",
				"label": "化隆回族自治县"
			}, {
				"value": "630225",
				"label": "循化撒拉族自治县"
			}]
		}, {
			"value": "632200",
			"label": "海北藏族自治州",
			"children": [{
				"value": "632221",
				"label": "门源回族自治县"
			}, {
				"value": "632222",
				"label": "祁连县"
			}, {
				"value": "632223",
				"label": "海晏县"
			}, {
				"value": "632224",
				"label": "刚察县"
			}]
		}, {
			"value": "632300",
			"label": "黄南藏族自治州",
			"children": [{
				"value": "632321",
				"label": "同仁县"
			}, {
				"value": "632322",
				"label": "尖扎县"
			}, {
				"value": "632323",
				"label": "泽库县"
			}, {
				"value": "632324",
				"label": "河南蒙古族自治县"
			}]
		}, {
			"value": "632500",
			"label": "海南藏族自治州",
			"children": [{
				"value": "632521",
				"label": "共和县"
			}, {
				"value": "632522",
				"label": "同德县"
			}, {
				"value": "632523",
				"label": "贵德县"
			}, {
				"value": "632524",
				"label": "兴海县"
			}, {
				"value": "632525",
				"label": "贵南县"
			}]
		}, {
			"value": "632600",
			"label": "果洛藏族自治州",
			"children": [{
				"value": "632621",
				"label": "玛沁县"
			}, {
				"value": "632622",
				"label": "班玛县"
			}, {
				"value": "632623",
				"label": "甘德县"
			}, {
				"value": "632624",
				"label": "达日县"
			}, {
				"value": "632625",
				"label": "久治县"
			}, {
				"value": "632626",
				"label": "玛多县"
			}]
		}, {
			"value": "632700",
			"label": "玉树藏族自治州",
			"children": [{
				"value": "632701",
				"label": "玉树市"
			}, {
				"value": "632722",
				"label": "杂多县"
			}, {
				"value": "632723",
				"label": "称多县"
			}, {
				"value": "632724",
				"label": "治多县"
			}, {
				"value": "632725",
				"label": "囊谦县"
			}, {
				"value": "632726",
				"label": "曲麻莱县"
			}]
		}, {
			"value": "632800",
			"label": "海西蒙古族藏族自治州",
			"children": [{
				"value": "632801",
				"label": "格尔木市"
			}, {
				"value": "632802",
				"label": "德令哈市"
			}, {
				"value": "632803",
				"label": "茫崖市"
			}, {
				"value": "632821",
				"label": "乌兰县"
			}, {
				"value": "632822",
				"label": "都兰县"
			}, {
				"value": "632823",
				"label": "天峻县"
			}, {
				"value": "632857",
				"label": "大柴旦行政委员会"
			}]
		}]
	}, {
		"value": "640000",
		"label": "宁夏回族自治区",
		"children": [{
			"value": "640100",
			"label": "银川市",
			"children": [{
				"value": "640101",
				"label": "市辖区"
			}, {
				"value": "640104",
				"label": "兴庆区"
			}, {
				"value": "640105",
				"label": "西夏区"
			}, {
				"value": "640106",
				"label": "金凤区"
			}, {
				"value": "640121",
				"label": "永宁县"
			}, {
				"value": "640122",
				"label": "贺兰县"
			}, {
				"value": "640181",
				"label": "灵武市"
			}]
		}, {
			"value": "640200",
			"label": "石嘴山市",
			"children": [{
				"value": "640201",
				"label": "市辖区"
			}, {
				"value": "640202",
				"label": "大武口区"
			}, {
				"value": "640205",
				"label": "惠农区"
			}, {
				"value": "640221",
				"label": "平罗县"
			}]
		}, {
			"value": "640300",
			"label": "吴忠市",
			"children": [{
				"value": "640301",
				"label": "市辖区"
			}, {
				"value": "640302",
				"label": "利通区"
			}, {
				"value": "640303",
				"label": "红寺堡区"
			}, {
				"value": "640323",
				"label": "盐池县"
			}, {
				"value": "640324",
				"label": "同心县"
			}, {
				"value": "640381",
				"label": "青铜峡市"
			}]
		}, {
			"value": "640400",
			"label": "固原市",
			"children": [{
				"value": "640401",
				"label": "市辖区"
			}, {
				"value": "640402",
				"label": "原州区"
			}, {
				"value": "640422",
				"label": "西吉县"
			}, {
				"value": "640423",
				"label": "隆德县"
			}, {
				"value": "640424",
				"label": "泾源县"
			}, {
				"value": "640425",
				"label": "彭阳县"
			}]
		}, {
			"value": "640500",
			"label": "中卫市",
			"children": [{
				"value": "640501",
				"label": "市辖区"
			}, {
				"value": "640502",
				"label": "沙坡头区"
			}, {
				"value": "640521",
				"label": "中宁县"
			}, {
				"value": "640522",
				"label": "海原县"
			}]
		}]
	}, {
		"value": "650000",
		"label": "新疆维吾尔自治区",
		"children": [{
			"value": "650100",
			"label": "乌鲁木齐市",
			"children": [{
				"value": "650101",
				"label": "市辖区"
			}, {
				"value": "650102",
				"label": "天山区"
			}, {
				"value": "650103",
				"label": "沙依巴克区"
			}, {
				"value": "650104",
				"label": "新市区"
			}, {
				"value": "650105",
				"label": "水磨沟区"
			}, {
				"value": "650106",
				"label": "头屯河区"
			}, {
				"value": "650107",
				"label": "达坂城区"
			}, {
				"value": "650109",
				"label": "米东区"
			}, {
				"value": "650121",
				"label": "乌鲁木齐县"
			}]
		}, {
			"value": "650200",
			"label": "克拉玛依市",
			"children": [{
				"value": "650201",
				"label": "市辖区"
			}, {
				"value": "650202",
				"label": "独山子区"
			}, {
				"value": "650203",
				"label": "克拉玛依区"
			}, {
				"value": "650204",
				"label": "白碱滩区"
			}, {
				"value": "650205",
				"label": "乌尔禾区"
			}]
		}, {
			"value": "650400",
			"label": "吐鲁番市",
			"children": [{
				"value": "650402",
				"label": "高昌区"
			}, {
				"value": "650421",
				"label": "鄯善县"
			}, {
				"value": "650422",
				"label": "托克逊县"
			}]
		}, {
			"value": "650500",
			"label": "哈密市",
			"children": [{
				"value": "650502",
				"label": "伊州区"
			}, {
				"value": "650521",
				"label": "巴里坤哈萨克自治县"
			}, {
				"value": "650522",
				"label": "伊吾县"
			}]
		}, {
			"value": "652300",
			"label": "昌吉回族自治州",
			"children": [{
				"value": "652301",
				"label": "昌吉市"
			}, {
				"value": "652302",
				"label": "阜康市"
			}, {
				"value": "652323",
				"label": "呼图壁县"
			}, {
				"value": "652324",
				"label": "玛纳斯县"
			}, {
				"value": "652325",
				"label": "奇台县"
			}, {
				"value": "652327",
				"label": "吉木萨尔县"
			}, {
				"value": "652328",
				"label": "木垒哈萨克自治县"
			}]
		}, {
			"value": "652700",
			"label": "博尔塔拉蒙古自治州",
			"children": [{
				"value": "652701",
				"label": "博乐市"
			}, {
				"value": "652702",
				"label": "阿拉山口市"
			}, {
				"value": "652722",
				"label": "精河县"
			}, {
				"value": "652723",
				"label": "温泉县"
			}]
		}, {
			"value": "652800",
			"label": "巴音郭楞蒙古自治州",
			"children": [{
				"value": "652801",
				"label": "库尔勒市"
			}, {
				"value": "652822",
				"label": "轮台县"
			}, {
				"value": "652823",
				"label": "尉犁县"
			}, {
				"value": "652824",
				"label": "若羌县"
			}, {
				"value": "652825",
				"label": "且末县"
			}, {
				"value": "652826",
				"label": "焉耆回族自治县"
			}, {
				"value": "652827",
				"label": "和静县"
			}, {
				"value": "652828",
				"label": "和硕县"
			}, {
				"value": "652829",
				"label": "博湖县"
			}, {
				"value": "652871",
				"label": "库尔勒经济技术开发区"
			}]
		}, {
			"value": "652900",
			"label": "阿克苏地区",
			"children": [{
				"value": "652901",
				"label": "阿克苏市"
			}, {
				"value": "652922",
				"label": "温宿县"
			}, {
				"value": "652923",
				"label": "库车县"
			}, {
				"value": "652924",
				"label": "沙雅县"
			}, {
				"value": "652925",
				"label": "新和县"
			}, {
				"value": "652926",
				"label": "拜城县"
			}, {
				"value": "652927",
				"label": "乌什县"
			}, {
				"value": "652928",
				"label": "阿瓦提县"
			}, {
				"value": "652929",
				"label": "柯坪县"
			}]
		}, {
			"value": "653000",
			"label": "克孜勒苏柯尔克孜自治州",
			"children": [{
				"value": "653001",
				"label": "阿图什市"
			}, {
				"value": "653022",
				"label": "阿克陶县"
			}, {
				"value": "653023",
				"label": "阿合奇县"
			}, {
				"value": "653024",
				"label": "乌恰县"
			}]
		}, {
			"value": "653100",
			"label": "喀什地区",
			"children": [{
				"value": "653101",
				"label": "喀什市"
			}, {
				"value": "653121",
				"label": "疏附县"
			}, {
				"value": "653122",
				"label": "疏勒县"
			}, {
				"value": "653123",
				"label": "英吉沙县"
			}, {
				"value": "653124",
				"label": "泽普县"
			}, {
				"value": "653125",
				"label": "莎车县"
			}, {
				"value": "653126",
				"label": "叶城县"
			}, {
				"value": "653127",
				"label": "麦盖提县"
			}, {
				"value": "653128",
				"label": "岳普湖县"
			}, {
				"value": "653129",
				"label": "伽师县"
			}, {
				"value": "653130",
				"label": "巴楚县"
			}, {
				"value": "653131",
				"label": "塔什库尔干塔吉克自治县"
			}]
		}, {
			"value": "653200",
			"label": "和田地区",
			"children": [{
				"value": "653201",
				"label": "和田市"
			}, {
				"value": "653221",
				"label": "和田县"
			}, {
				"value": "653222",
				"label": "墨玉县"
			}, {
				"value": "653223",
				"label": "皮山县"
			}, {
				"value": "653224",
				"label": "洛浦县"
			}, {
				"value": "653225",
				"label": "策勒县"
			}, {
				"value": "653226",
				"label": "于田县"
			}, {
				"value": "653227",
				"label": "民丰县"
			}]
		}, {
			"value": "654000",
			"label": "伊犁哈萨克自治州",
			"children": [{
				"value": "654002",
				"label": "伊宁市"
			}, {
				"value": "654003",
				"label": "奎屯市"
			}, {
				"value": "654004",
				"label": "霍尔果斯市"
			}, {
				"value": "654021",
				"label": "伊宁县"
			}, {
				"value": "654022",
				"label": "察布查尔锡伯自治县"
			}, {
				"value": "654023",
				"label": "霍城县"
			}, {
				"value": "654024",
				"label": "巩留县"
			}, {
				"value": "654025",
				"label": "新源县"
			}, {
				"value": "654026",
				"label": "昭苏县"
			}, {
				"value": "654027",
				"label": "特克斯县"
			}, {
				"value": "654028",
				"label": "尼勒克县"
			}]
		}, {
			"value": "654200",
			"label": "塔城地区",
			"children": [{
				"value": "654201",
				"label": "塔城市"
			}, {
				"value": "654202",
				"label": "乌苏市"
			}, {
				"value": "654221",
				"label": "额敏县"
			}, {
				"value": "654223",
				"label": "沙湾县"
			}, {
				"value": "654224",
				"label": "托里县"
			}, {
				"value": "654225",
				"label": "裕民县"
			}, {
				"value": "654226",
				"label": "和布克赛尔蒙古自治县"
			}]
		}, {
			"value": "654300",
			"label": "阿勒泰地区",
			"children": [{
				"value": "654301",
				"label": "阿勒泰市"
			}, {
				"value": "654321",
				"label": "布尔津县"
			}, {
				"value": "654322",
				"label": "富蕴县"
			}, {
				"value": "654323",
				"label": "福海县"
			}, {
				"value": "654324",
				"label": "哈巴河县"
			}, {
				"value": "654325",
				"label": "青河县"
			}, {
				"value": "654326",
				"label": "吉木乃县"
			}]
		}, {
			"value": "659000",
			"label": "自治区直辖县级行政区划",
			"children": [{
				"value": "659001",
				"label": "石河子市"
			}, {
				"value": "659002",
				"label": "阿拉尔市"
			}, {
				"value": "659003",
				"label": "图木舒克市"
			}, {
				"value": "659004",
				"label": "五家渠市"
			}, {
				"value": "659006",
				"label": "铁门关市"
			}]
		}]
	}, {
		"value": "710000",
		"label": "台湾省",
		"children": [{
			"value": "710100",
			"label": "台北市",
			"children": [{
				"value": "710101",
				"label": "内湖区"
			}, {
				"value": "710102",
				"label": "南港区"
			}, {
				"value": "710103",
				"label": "中正区"
			}, {
				"value": "710104",
				"label": "松山区"
			}, {
				"value": "710105",
				"label": "信义区"
			}, {
				"value": "710106",
				"label": "大安区"
			}, {
				"value": "710107",
				"label": "中山区"
			}, {
				"value": "710108",
				"label": "文山区"
			}, {
				"value": "710109",
				"label": "大同区"
			}, {
				"value": "710110",
				"label": "万华区"
			}, {
				"value": "710111",
				"label": "士林区"
			}, {
				"value": "710112",
				"label": "北投区"
			}]
		}, {
			"value": "710200",
			"label": "高雄市",
			"children": [{
				"value": "710201",
				"label": "新兴区"
			}, {
				"value": "710202",
				"label": "前金区"
			}, {
				"value": "710203",
				"label": "芩雅区"
			}, {
				"value": "710204",
				"label": "盐埕区"
			}, {
				"value": "710205",
				"label": "鼓山区"
			}, {
				"value": "710206",
				"label": "旗津区"
			}, {
				"value": "710207",
				"label": "前镇区"
			}, {
				"value": "710208",
				"label": "三民区"
			}, {
				"value": "710209",
				"label": "左营区"
			}, {
				"value": "710210",
				"label": "楠梓区"
			}, {
				"value": "710211",
				"label": "小港区"
			}]
		}, {
			"value": "710300",
			"label": "基隆市",
			"children": [{
				"value": "710301",
				"label": "仁爱区"
			}, {
				"value": "710302",
				"label": "信义区"
			}, {
				"value": "710303",
				"label": "中正区"
			}, {
				"value": "710304",
				"label": "暖暖区"
			}, {
				"value": "710305",
				"label": "安乐区"
			}, {
				"value": "710307",
				"label": "七堵区"
			}]
		}, {
			"value": "710400",
			"label": "台中市",
			"children": [{
				"value": "710301",
				"label": "中区"
			}, {
				"value": "710302",
				"label": "东区"
			}, {
				"value": "710303",
				"label": "南区"
			}, {
				"value": "710304",
				"label": "西区"
			}, {
				"value": "710305",
				"label": "北区"
			}, {
				"value": "710306",
				"label": "北屯区"
			}, {
				"value": "710307",
				"label": "西屯区"
			}, {
				"value": "710308",
				"label": "南屯区"
			}]
		}, {
			"value": "710500",
			"label": "台南市",
			"children": [{
				"value": "710501",
				"label": "中西区"
			}, {
				"value": "710502",
				"label": "东区"
			}, {
				"value": "710503",
				"label": "南区"
			}, {
				"value": "710504",
				"label": "北区"
			}, {
				"value": "710505",
				"label": "安平区"
			}, {
				"value": "710506",
				"label": "安南区"
			}]
		}, {
			"value": "710600",
			"label": "新竹市",
			"children": [{
				"value": "710601",
				"label": "东区"
			}, {
				"value": "710602",
				"label": "北区"
			}, {
				"value": "710603",
				"label": "香山区"
			}]
		}, {
			"value": "710700",
			"label": "嘉义市",
			"children": [{
				"value": "710701",
				"label": "东区"
			}, {
				"value": "710702",
				"label": "西区"
			}]
		}]
	}, {
		"value": "810000",
		"label": "香港特别行政区",
		"children": [{
			"value": "810001",
			"label": "中西區"
		}, {
			"value": "810002",
			"label": "灣仔區"
		}, {
			"value": "810003",
			"label": "東區"
		}, {
			"value": "810004",
			"label": "南區"
		}, {
			"value": "810005",
			"label": "油尖旺區"
		}, {
			"value": "810006",
			"label": "深水埗區"
		}, {
			"value": "810007",
			"label": "九龍城區"
		}, {
			"value": "810008",
			"label": "黃大仙區"
		}, {
			"value": "810009",
			"label": "觀塘區"
		}, {
			"value": "810010",
			"label": "荃灣區"
		}, {
			"value": "810011",
			"label": "屯門區"
		}, {
			"value": "810012",
			"label": "元朗區"
		}, {
			"value": "810013",
			"label": "北區"
		}, {
			"value": "810014",
			"label": "大埔區"
		}, {
			"value": "810015",
			"label": "西貢區"
		}, {
			"value": "810016",
			"label": "沙田區"
		}, {
			"value": "810017",
			"label": "葵青區"
		}, {
			"value": "810018",
			"label": "離島區"
		}]
	}, {
		"value": "820000",
		"label": "澳门特别行政区",
		"children": [{
			"value": "820001",
			"label": "花地瑪堂區"
		}, {
			"value": "820002",
			"label": "花王堂區"
		}, {
			"value": "820003",
			"label": "望德堂區"
		}, {
			"value": "820004",
			"label": "大堂區"
		}, {
			"value": "820005",
			"label": "風順堂區"
		}, {
			"value": "820006",
			"label": "嘉模堂區"
		}, {
			"value": "820007",
			"label": "路氹填海區"
		}, {
			"value": "820008",
			"label": "聖方濟各堂區"
		}]
	}],
});

// EXTERNAL MODULE: ./node_modules/element-ui/lib/element-ui.common.js
var element_ui_common = __webpack_require__("zL8q");
var element_ui_common_default = /*#__PURE__*/__webpack_require__.n(element_ui_common);

// EXTERNAL MODULE: ./node_modules/element-ui/lib/theme-chalk/index.css
var theme_chalk = __webpack_require__("tvR6");
var theme_chalk_default = /*#__PURE__*/__webpack_require__.n(theme_chalk);

// EXTERNAL MODULE: ./node_modules/less/dist/less.js
var less = __webpack_require__("nrAE");
var less_default = /*#__PURE__*/__webpack_require__.n(less);

// EXTERNAL MODULE: ./src/utils/jquery.min.js
var jquery_min = __webpack_require__("ZcjC");

// EXTERNAL MODULE: ./src/utils/jquery.ztree.core.min.js
var jquery_ztree_core_min = __webpack_require__("J5oY");

// EXTERNAL MODULE: ./src/utils/jquery.ztree.excheck.min.js
var jquery_ztree_excheck_min = __webpack_require__("Zf4G");
var jquery_ztree_excheck_min_default = /*#__PURE__*/__webpack_require__.n(jquery_ztree_excheck_min);

// EXTERNAL MODULE: ./node_modules/vue-qriously/dist/vue-qriously.js
var vue_qriously = __webpack_require__("f3u+");
var vue_qriously_default = /*#__PURE__*/__webpack_require__.n(vue_qriously);

// EXTERNAL MODULE: ./node_modules/echarts-liquidfill/index.js
var echarts_liquidfill = __webpack_require__("+jab");
var echarts_liquidfill_default = /*#__PURE__*/__webpack_require__.n(echarts_liquidfill);

// EXTERNAL MODULE: ./node_modules/vue-amap/dist/index.js
var dist = __webpack_require__("/IwO");
var dist_default = /*#__PURE__*/__webpack_require__.n(dist);

// EXTERNAL MODULE: ./node_modules/vue-baidu-map/index.js
var vue_baidu_map = __webpack_require__("dAEq");
var vue_baidu_map_default = /*#__PURE__*/__webpack_require__.n(vue_baidu_map);

// EXTERNAL MODULE: ./node_modules/babel-polyfill/lib/index.js
var babel_polyfill_lib = __webpack_require__("j1ja");
var babel_polyfill_lib_default = /*#__PURE__*/__webpack_require__.n(babel_polyfill_lib);

// EXTERNAL MODULE: ./node_modules/es6-promise/dist/es6-promise.js
var es6_promise = __webpack_require__("hKoQ");
var es6_promise_default = /*#__PURE__*/__webpack_require__.n(es6_promise);

// EXTERNAL MODULE: ./node_modules/xlsx/xlsx.js
var xlsx = __webpack_require__("uXZL");
var xlsx_default = /*#__PURE__*/__webpack_require__.n(xlsx);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/index.js + 38 modules
var data_view_lib = __webpack_require__("5wnc");

// EXTERNAL MODULE: ./node_modules/vue-awesome/components/Icon.js
var Icon = __webpack_require__("eonX");

// EXTERNAL MODULE: ./node_modules/vue-awesome/icons/chart-bar.js
var chart_bar = __webpack_require__("4vVE");

// EXTERNAL MODULE: ./node_modules/vue-awesome/icons/chart-area.js
var chart_area = __webpack_require__("cKTW");

// EXTERNAL MODULE: ./node_modules/vue-awesome/icons/chart-pie.js
var chart_pie = __webpack_require__("ZHiG");

// EXTERNAL MODULE: ./node_modules/vue-awesome/icons/chart-line.js
var chart_line = __webpack_require__("/H0l");

// EXTERNAL MODULE: ./node_modules/vue-awesome/icons/align-left.js
var align_left = __webpack_require__("FNjd");

// EXTERNAL MODULE: ./node_modules/v-charts/lib/line.common.js
var line_common = __webpack_require__("vXZn");
var line_common_default = /*#__PURE__*/__webpack_require__.n(line_common);

// EXTERNAL MODULE: ./src/common/flexible.js
var flexible = __webpack_require__("UHcj");
var flexible_default = /*#__PURE__*/__webpack_require__.n(flexible);

// EXTERNAL MODULE: ./src/assets/scss/style.scss
var style = __webpack_require__("pOKD");
var style_default = /*#__PURE__*/__webpack_require__.n(style);

// EXTERNAL MODULE: ./node_modules/echarts/index.js
var echarts = __webpack_require__("XLwt");
var echarts_default = /*#__PURE__*/__webpack_require__.n(echarts);

// EXTERNAL MODULE: ./node_modules/v-charts/lib/style.css
var lib_style = __webpack_require__("Qbfk");
var lib_style_default = /*#__PURE__*/__webpack_require__.n(lib_style);

// EXTERNAL MODULE: ./src/api/all.js
var api_all = __webpack_require__("+iPQ");

// EXTERNAL MODULE: ./src/utils/resetMessage.js
var resetMessage = __webpack_require__("46Yo");

// EXTERNAL MODULE: ./node_modules/moment/moment.js
var moment = __webpack_require__("PJh5");
var moment_default = /*#__PURE__*/__webpack_require__.n(moment);

// CONCATENATED MODULE: ./src/api/GlobalConst.js
/* harmony default export */ var GlobalConst = ({
    install: function install(Vue, options) {
        Vue.prototype.GlobalConst = {
            customCode: 'd39eaa7fc1f34190869608259133d2fb'
        };
    }
});
// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/classCallCheck.js
var classCallCheck = __webpack_require__("Zrlr");
var classCallCheck_default = /*#__PURE__*/__webpack_require__.n(classCallCheck);

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/createClass.js
var createClass = __webpack_require__("wxAW");
var createClass_default = /*#__PURE__*/__webpack_require__.n(createClass);

// EXTERNAL MODULE: ./src/common/plugin/websocket/logger.js
var logger = __webpack_require__("YC/o");

// EXTERNAL MODULE: ./node_modules/babel-runtime/core-js/map.js
var map = __webpack_require__("ifoU");
var map_default = /*#__PURE__*/__webpack_require__.n(map);

// CONCATENATED MODULE: ./src/common/plugin/websocket/emitter.js





var emitter_EventEmitter = function () {
    function EventEmitter() {
        var vuex = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};

        classCallCheck_default()(this, EventEmitter);

        logger["a" /* default */].info(vuex ? 'Vuex adapter enabled' : 'Vuex adapter disabled');
        logger["a" /* default */].info(vuex.mutationPrefix ? 'Vuex socket mutations enabled' : 'Vuex socket mutations disabled');
        logger["a" /* default */].info(vuex ? 'Vuex socket actions enabled' : 'Vuex socket actions disabled');
        this.store = vuex.store;
        this.actionPrefix = vuex.actionPrefix ? vuex.actionPrefix : 'SOCKET_';
        this.mutationPrefix = vuex.mutationPrefix;
        this.listeners = new map_default.a();
    }

    /**
     * register new event listener with vuejs component instance
     * @param event
     * @param callback
     * @param component
     */

    createClass_default()(EventEmitter, [{
        key: 'addListener',
        value: function addListener(event, callback, component) {
            if (typeof callback === 'function') {
                if (!this.listeners.has(event)) this.listeners.set(event, []);
                this.listeners.get(event).push({ callback: callback, component: component });

                logger["a" /* default */].info('#' + event + ' subscribe, component: ' + component.$options.name);
            } else {
                throw new Error('callback must be a function');
            }
        }

        /**
         * remove a listenler
         * @param event
         * @param component
         */

    }, {
        key: 'removeListener',
        value: function removeListener(event, component) {
            if (this.listeners.has(event)) {
                var listeners = this.listeners.get(event).filter(function (listener) {
                    return listener.component !== component;
                });

                if (listeners.length > 0) {
                    this.listeners.set(event, listeners);
                } else {
                    this.listeners.delete(event);
                }

                logger["a" /* default */].info('#' + event + ' unsubscribe, component: ' + component.$options.name);
            }
        }

        /**
         * broadcast incoming event to components
         * @param event
         * @param args
         */

    }, {
        key: 'emit',
        value: function emit(event, args) {
            if (this.listeners.has(event)) {
                logger["a" /* default */].info('Broadcasting: #' + event + ', Data:', args);

                this.listeners.get(event).forEach(function (listener) {
                    listener.callback.call(listener.component, args);
                    console.log('----' + listener);
                });
            }

            if (event !== 'ping' && event !== 'pong') {
                this.dispatchStore(event, args);
            }
        }

        /**
         * dispatching vuex actions
         * @param event
         * @param args
         */

    }, {
        key: 'dispatchStore',
        value: function dispatchStore(event, args) {
            if (this.store && this.store._actions) {
                var prefixed_event = this.actionPrefix + event;

                for (var key in this.store._actions) {
                    var action = key.split('/').pop();

                    if (action === prefixed_event) {
                        logger["a" /* default */].info('Dispatching Action: ' + key + ', Data:', args);

                        this.store.dispatch(key, args);
                    }
                }

                if (this.mutationPrefix) {
                    var _prefixed_event = this.mutationPrefix + event;

                    for (var _key in this.store._mutations) {
                        var mutation = _key.split('/').pop();

                        if (mutation === _prefixed_event) {
                            logger["a" /* default */].info('Commiting Mutation: ' + _key + ', Data:', args);

                            this.store.commit(_key, args);
                        }
                    }
                }
            }
        }
    }]);

    return EventEmitter;
}();

/* harmony default export */ var emitter = (emitter_EventEmitter);
// EXTERNAL MODULE: ./node_modules/babel-runtime/core-js/object/keys.js
var keys = __webpack_require__("fZjL");
var keys_default = /*#__PURE__*/__webpack_require__.n(keys);

// CONCATENATED MODULE: ./src/common/plugin/websocket/mixin.js

/* harmony default export */ var mixin = ({

    /**
     *  Assign runtime callbacks
     */
    beforeCreate: function beforeCreate() {
        var _this = this;

        if (!this.sockets) this.sockets = {};

        this.sockets.subscribe = function (event, callback) {
            _this.$vueSocket.emitter.addListener(event, callback, _this);
        };

        this.sockets.unsubscribe = function (event) {
            _this.$vueSocket.emitter.removeListener(event, _this);
        };
    },

    /**
     * Register all socket events
     */
    mounted: function mounted() {
        var _this2 = this;

        if (this.$options.sockets) {
            keys_default()(this.$options.sockets).forEach(function (event) {
                if (event !== 'subscribe' && event !== 'unsubscribe') {
                    _this2.$vueSocket.emitter.addListener(event, _this2.$options.sockets[event], _this2);
                }
            });
        }
    },

    /**
     * unsubscribe when component unmounting
     */
    beforeDestroy: function beforeDestroy() {
        var _this3 = this;

        if (this.$options.sockets) {
            keys_default()(this.$options.sockets).forEach(function (event) {
                _this3.$vueSocket.emitter.removeListener(event, _this3);
            });
        }
    }
});
// EXTERNAL MODULE: ./src/common/plugin/websocket/util.js
var util = __webpack_require__("Vc1h");

// CONCATENATED MODULE: ./src/common/plugin/websocket/vuesocket.js







var vuesocket_VueSocket = function () {
    function VueSocket(_ref) {
        var connection = _ref.connection,
            vuex = _ref.vuex,
            options = _ref.options;

        classCallCheck_default()(this, VueSocket);

        logger["a" /* default */].debug = options.debug;
        this.connection = connection;
        this.connection_options = options;
        this.init(connection, options);
        this.emitter = new emitter(vuex);
    }

    createClass_default()(VueSocket, [{
        key: 'install',
        value: function install(Vue) {
            Vue.prototype.$vueSocket = this;
            Vue.mixin(mixin);
            logger["a" /* default */].info('Vue-Socket plugin enabled');
        }
    }, {
        key: 'init',
        value: function init(connection, options) {
            this.ws = new WebSocket(connection + options.path);
            this.ws.binaryType = 'arraybuffer';
            var _this = this;
            this.ws.onopen = function (evt) {
                logger["a" /* default */].info('OPEN');
                _this.emitter.emit('connect');
            };
            this.ws.onclose = function (evt) {
                logger["a" /* default */].info('CLOSE');
                _this.emitter.emit('close');
            };
            this.ws.onmessage = function (evt) {
                var data = evt.data;
                logger["a" /* default */].info('RESPONSE: ' + data);
                _this.emitter.emit('message', data);
            };
            this.ws.onerror = function (evt) {
                logger["a" /* default */].error('ERROR: ' + evt.data);
                _this.emitter.emit('error', evt.data);
            };
        }
    }, {
        key: 'isConnected',
        value: function isConnected() {
            return this.ws && this.ws.readyState === WebSocket.OPEN;
        }
    }, {
        key: 'reconnect',
        value: function reconnect() {
            this.disconnect();
            this.init(this.connection, this.connection_options);
        }
    }, {
        key: 'disconnect',
        value: function disconnect() {
            if (this.ws) {
                this.ws.close();
                this.ws = null;
            }
        }
    }, {
        key: 'send',
        value: function send(data) {
            logger["a" /* default */].info('send data -> ' + util["a" /* default */].byte2HexStr(data));
            this.ws.send(data);
        }
    }]);

    return VueSocket;
}();

/* harmony default export */ var vuesocket = (vuesocket_VueSocket);
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/selectoption/index.vue
//
//
//
//
//
//
//
//
//
//

/* harmony default export */ var selectoption = ({
  inject: ['reload'],
  name: "selectoption",
  data: function data() {
    return {
      selectoption: [],
      selectoptionValue: ''
    };
  },
  created: function created() {
    this.selectoption = JSON.parse(localStorage.getItem('selectoption'));
    this.selectoptionValue = localStorage.getItem('tenantId');
  },

  methods: {
    selectTenantId: function selectTenantId(e) {
      localStorage.setItem('tenantId', e);
      this.reload();
    }
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-520a57dc","hasScoped":true,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/selectoption/index.vue
var selectoption_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c("div")}
var selectoption_staticRenderFns = []
var selectoption_esExports = { render: selectoption_render, staticRenderFns: selectoption_staticRenderFns }
/* harmony default export */ var components_selectoption = (selectoption_esExports);
// CONCATENATED MODULE: ./src/components/selectoption/index.vue
function selectoption_injectStyle (ssrContext) {
  __webpack_require__("jC93")
}
var selectoption_normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var selectoption___vue_template_functional__ = false
/* styles */
var selectoption___vue_styles__ = selectoption_injectStyle
/* scopeId */
var selectoption___vue_scopeId__ = "data-v-520a57dc"
/* moduleIdentifier (server only) */
var selectoption___vue_module_identifier__ = null
var selectoption_Component = selectoption_normalizeComponent(
  selectoption,
  components_selectoption,
  selectoption___vue_template_functional__,
  selectoption___vue_styles__,
  selectoption___vue_scopeId__,
  selectoption___vue_module_identifier__
)

/* harmony default export */ var src_components_selectoption = (selectoption_Component.exports);

// EXTERNAL MODULE: ./node_modules/vue-awesome-swiper/dist/vue-awesome-swiper.js
var vue_awesome_swiper = __webpack_require__("7QTg");
var vue_awesome_swiper_default = /*#__PURE__*/__webpack_require__.n(vue_awesome_swiper);

// EXTERNAL MODULE: ./node_modules/swiper/css/swiper.css
var swiper = __webpack_require__("BpKH");
var swiper_default = /*#__PURE__*/__webpack_require__.n(swiper);

// CONCATENATED MODULE: ./src/main.js
var main__this = this;

// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.




















vue_esm["default"].use(vue_qriously_default.a);

// moment.locale('zh-cn');//需要汉化

vue_esm["default"].use(dist_default.a);
dist_default.a.initAMapApiLoader({
  // 高德key
  key: 'b12bd8eb631f003437d1032dcb433065',
  // 插件集合 （插件按需引入）
  plugin: ['AMap.Autocomplete', 'AMap.Geocoder', 'AMap.PlaceSearch', 'AMap.Scale', 'AMap.OverView', 'AMap.ToolBar', 'AMap.MapType', 'AMap.AMapManager', 'AMap.Geolocation'],
  v: '1.4.4',
  uiVersion: '1.0.11'
});
window._AMapSecurityConfig = {
  securityJsCode: "584c59da25977d841e3d7b290898025d"
};


vue_esm["default"].use(vue_baidu_map_default.a, {
  // ak 是在百度地图开发者平台申请的密钥 详见 http://lbsyun.baidu.com/apiconsole/key */
  ak: 'stOxjAmPN6nZGQMGfc9ZUeVZO8ym3fOI'
});




vue_esm["default"].use(xlsx_default.a);


vue_esm["default"].use(data_view_lib["a" /* default */]);

// 按需引入vue-awesome图标







// 全局注册图标
vue_esm["default"].component('icon', Icon["a" /* default */]);
vue_esm["default"].component('VeLine', line_common_default.a);

// 适配flex


// 引入全局css


//引入echart






vue_esm["default"].prototype.$echarts = echarts_default.a;
vue_esm["default"].prototype.moment = moment_default.a;
// axios.defaults.baseURL = '/api'
vue_esm["default"].config.productionTip = false;
vue_esm["default"].prototype.$language = i18n["a" /* default */];
vue_esm["default"].prototype.$MANUFACTURER = config;
vue_esm["default"].prototype.$store = store["a" /* default */];
vue_esm["default"].prototype.$api = api_all["a" /* api */];
vue_esm["default"].prototype.$tenantId = "";
vue_esm["default"].use(router["a" /* default */]);
vue_esm["default"].use(element_ui_common_default.a);
vue_esm["default"].use(lib_default.a);
vue_esm["default"].use(vuex_esm["a" /* default */]);
vue_esm["default"].use(less_default.a);
vue_esm["default"].prototype.$message = resetMessage["a" /* message */];
vue_esm["default"].prototype.$Loading = element_ui_common["Loading"];
//引入全局常量

vue_esm["default"].use(GlobalConst);

axios_default.a.interceptors.request.use(function (config) {
  return config;
}, function (error) {
  if (error.response.status === 401) {
    localStorage.setItem("ms_username", '');
    main__this.$router.push("/login");
  }
  return es6_promise_default.a.reject(error);
});


vue_esm["default"].use(new vuesocket({
  connection: 'ws://127.0.0.1:4649',
  store: store["a" /* default */],
  options: {
    path: '/WebServer',
    debug: true
  }
}));

vue_esm["default"].component('selectoption', src_components_selectoption);



vue_esm["default"].use(vue_awesome_swiper_default.a);
// import moment from 'moment'
// Vue.prototype.$moment = moment;//赋值使用

/* eslint-disable no-new */
new vue_esm["default"]({
  el: '#app',
  router: router["a" /* default */],
  store: store["a" /* default */],
  render: function render(h) {
    return h(src_App);
  },
  components: {
    App: src_App
  },
  template: '<App/>'
});

/***/ }),

/***/ "ObZk":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__("Zrlr");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_createClass__ = __webpack_require__("wxAW");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_createClass___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_createClass__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__api_index__ = __webpack_require__("gyMJ");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__api_all__ = __webpack_require__("+iPQ");





var ICINLocker = function () {
  function ICINLocker() {
    __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, ICINLocker);
  }

  __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_createClass___default()(ICINLocker, null, [{
    key: "addUserToLock",

    /**
     * *添加用户
     * @param {锁ID} _lockId
     * @param {门锁IMEI} _imei
     * @param {添加的用户ID} _userId
     * @param {用户的keyId} _keyId
     * @param {00普通用户 01管理员 FF超级管理员} _role
     * @param {操作类型 1: 添加 2： 删除} _action
     * @param {回调} callback
     */
    value: function addUserToLock() {
      var _lockId = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';

      var _imei = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';

      var _userId = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';

      var _role = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '';

      var _action = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : '';

      var order = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : '';

      var _cardName = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : '';

      var _roomName = arguments.length > 7 && arguments[7] !== undefined ? arguments[7] : '';

      var callback = arguments[8];

      var data = {
        lockerId: _lockId,
        imei: _imei,
        lockerUserId: _userId,
        keyId: _userId,
        role: _role,
        action: _action,
        order: order,
        cardName: _cardName,
        roomName: _roomName
      };
      Object(__WEBPACK_IMPORTED_MODULE_2__api_index__["g" /* httpPost */])(data, __WEBPACK_IMPORTED_MODULE_3__api_all__["a" /* api */].ZGduserOperation).then(function (res) {
        callback(res);
      });
    }

    /**
     * *添加指纹
     * @param {门锁ID} _lockId
     * @param {门锁IMEI} _imei
     * @param {用户ID – 最多20字节} _userId
     * @param {指纹类型 0:普通指纹，1：胁迫指} _fingerType
     * @param {文件字节数组} _file
     * @param {设置开始时间-8位timestamp字符串,eg:'00000000'} _startTime
     * @param {设置结束时间-8位timestamp字符串,eg:'FFFFFFFF'} _endTime
     * @param {是否为报警指纹，'00'为否，'01'为是} _alarmFinger
     * @param {超管的commonKey} _commonKey
     * @param {回调方法} callback
     */

  }, {
    key: "addFingerPrints",
    value: function addFingerPrints(_lockId, _imei, _userId, _fingerType, _file, _startTime, _endTime, _cardName, _roomName, callback) {
      var data3 = {
        code: "zg/addFingerPrint",
        data: {
          lockerId: _lockId,
          imei: _imei,
          lockerUserId: _userId,
          keyId: _userId,
          fingerType: _fingerType,
          order: 6216,
          file: _file,
          startTime: _startTime,
          endTime: _endTime,
          cardName: _cardName,
          roomName: _roomName
        }
      };
      Object(__WEBPACK_IMPORTED_MODULE_2__api_index__["g" /* httpPost */])(data3, __WEBPACK_IMPORTED_MODULE_3__api_all__["a" /* api */].sendCommand).then(function (res) {
        callback(res);
      });
    }

    /**
     * *删除指纹
     * @param {门锁ID} _lockId
     * @param {门锁IMEI} _imei
     * @param {用户ID – 最多20字节} _userId
     * @param {指纹类型 0:普通指纹，1：胁迫指} _fingerType
     * @param {2：删除 3：修改} _action
     * @param {指纹模板号} _fingerId
     * @param {设置开始时间-8位timestamp字符串,eg:'00000000'} _startTime
     * @param {设置结束时间-8位timestamp字符串,eg:'FFFFFFFF'} _endTime
     * @param {是否为报警指纹，'00'为否，'01'为是} _alarmFinger
     * @param {超管的commonKey} _commonKey
     * @param {回调方法} callback
     */

  }, {
    key: "delFingerPrints",
    value: function delFingerPrints(_lockId, _imei, _userId, _action, _fingerId, _fingerType, _startTime, _endTime, _cardName, _roomName, callback) {
      var data3 = {
        code: "zg/fpOperate",
        data: {
          lockerId: _lockId,
          imei: _imei,
          lockerUserId: _userId,
          keyId: _userId,
          fingerId: _fingerId,
          fingerType: _fingerType,
          order: 6218,
          action: _action,
          startTime: _startTime,
          endTime: _endTime,
          cardName: _cardName,
          roomName: _roomName
        }
      };
      Object(__WEBPACK_IMPORTED_MODULE_2__api_index__["g" /* httpPost */])(data3, __WEBPACK_IMPORTED_MODULE_3__api_all__["a" /* api */].sendCommand).then(function (res) {
        callback(res);
      });
    }
    /**
     * *修改指纹时间
     * @param {门锁ID} _lockId
     * @param {门锁IMEI} _imei
     * @param {用户ID – 最多20字节} _userId
     * @param {指纹类型 0:普通指纹，1：胁迫指} _fingerType
     * @param {2：删除 3：修改} _action
     * @param {指纹模板号} _fingerId
     * @param {设置开始时间-8位timestamp字符串,eg:'00000000'} _startTime
     * @param {设置结束时间-8位timestamp字符串,eg:'FFFFFFFF'} _endTime
     * @param {是否为报警指纹，'00'为否，'01'为是} _alarmFinger
     * @param {超管的commonKey} _commonKey
     * @param {回调方法} callback
     */

  }, {
    key: "modifyFingerPrints",
    value: function modifyFingerPrints(_lockId, _imei, _userId, _action, _fingerId, _fingerType, _startTime, _endTime, _cardName, _roomName, callback) {
      var data3 = {
        code: "zg/fpOperate",
        data: {
          lockerId: _lockId,
          imei: _imei,
          lockerUserId: _userId,
          keyId: _userId,
          fingerId: _fingerId,
          fingerType: _fingerType,
          order: 6217,
          action: _action,
          startTime: _startTime,
          endTime: _endTime,
          cardName: _cardName,
          roomName: _roomName
        }
      };
      Object(__WEBPACK_IMPORTED_MODULE_2__api_index__["g" /* httpPost */])(data3, __WEBPACK_IMPORTED_MODULE_3__api_all__["a" /* api */].sendCommand).then(function (res) {
        callback(res);
      });
    }
    /**
     * *添加身份证
     * @param {门锁ID} _lockId
     * @param {门锁IMEI} _imei
     * @param {用户ID – 最多20字节} _userId
     * @param {操作类型 1: 添加 2： 删除 3:修改} _action
     * @param {文件字节数组} _taskStatus 任务状态 1：提交任务
     * @param {文件字节数组} _cardNo 卡号 卡片唯一标识
     * @param {文件字节数组} _cardType 卡类型 （16 进制） ：typeA 在线卡 0x21 Mifare 在线卡 0x22 typeB 在线卡 0x23 身份证（在线）0x24 typeA 离线卡 0x71 Mifare 离线卡 0x72 typeB 离线卡 0x73
     * @param {设置开始时间-8位timestamp字符串,eg:'00000000'} _startTime
     * @param {设置结束时间-8位timestamp字符串,eg:'FFFFFFFF'} _endTime
     * @param {回调方法} callback
     */

  }, {
    key: "RfCardRegister",
    value: function RfCardRegister(_lockId, _imei, _userId, _action, _taskStatus, _cardNo, _cardType, _startTime, _endTime, order, _cardName, _roomName, callback) {
      var data3 = {
        code: "zg/cardOperate",
        data: {
          lockerId: _lockId,
          imei: _imei,
          lockerUserId: _userId,
          keyId: _userId,
          action: _action,
          taskStatus: _taskStatus,
          order: order,
          startTime: _startTime,
          endTime: _endTime,
          cardType: _cardType,
          cardNo: _cardNo,
          cardName: _cardName,
          roomName: _roomName
        }
      };
      Object(__WEBPACK_IMPORTED_MODULE_2__api_index__["g" /* httpPost */])(data3, __WEBPACK_IMPORTED_MODULE_3__api_all__["a" /* api */].sendCommand).then(function (res) {
        callback(res);
      });
    }
  }, {
    key: "delCardRegister",
    value: function delCardRegister(_lockId, _imei, _userId, _action, _taskStatus, _cardNo, _cardType, _startTime, _endTime, order, cardIndex, _cardName, _roomName, callback) {
      var data3 = {
        code: "zg/cardOperate",
        data: {
          lockerId: _lockId,
          imei: _imei,
          lockerUserId: _userId,
          keyId: _userId,
          action: _action,
          taskStatus: _taskStatus,
          order: order,
          startTime: _startTime,
          endTime: _endTime,
          cardType: _cardType,
          cardNo: _cardNo,
          cardIndex: cardIndex,
          cardName: _cardName,
          roomName: _roomName
        }
      };
      Object(__WEBPACK_IMPORTED_MODULE_2__api_index__["g" /* httpPost */])(data3, __WEBPACK_IMPORTED_MODULE_3__api_all__["a" /* api */].sendCommand).then(function (res) {
        callback(res);
      });
    }

    /**
     * *添加密码
     * @param {门锁ID} _lockId
     * @param {门锁IMEI} _imei
     * @param {用户ID – 最多20字节} _userId
     * @param {r 操作类型 1: 添加 2: 删除 3：修} _action
     * @param {文件字节数组} password 密码长度为 6 位，建议不要采用同样数字组合和连续简单组合
     * @param {回调方法} callback
     */

  }, {
    key: "addForeverPassword",
    value: function addForeverPassword(_lockId, _imei, _userId, _action, _password, _passwordCount, _startTime, _endTime, order, _cardName, _roomName, callback) {
      var data3 = {
        code: "zg/tempPassword",
        data: {
          lockerId: _lockId,
          imei: _imei,
          order: order,
          lockerUserId: _userId,
          passwordCount: _passwordCount,
          keyId: _userId,
          passwordStartTime: _startTime,
          passwordEndTime: _endTime,
          action: _action,
          password: _password,
          cardName: _cardName,
          roomName: _roomName
        }
      };
      Object(__WEBPACK_IMPORTED_MODULE_2__api_index__["g" /* httpPost */])(data3, __WEBPACK_IMPORTED_MODULE_3__api_all__["a" /* api */].sendCommand).then(function (res) {
        callback(res);
      });
    }
  }, {
    key: "delForeverPassword",
    value: function delForeverPassword(_lockId, _imei, _userId, _action, _password, _passwordCount, _startTime, _endTime, order, passwordIndex, _cardName, _roomName, callback) {
      var data3 = {
        code: "zg/tempPassword",
        data: {
          lockerId: _lockId,
          imei: _imei,
          order: order,
          lockerUserId: _userId,
          passwordCount: _passwordCount,
          keyId: _userId,
          passwordStartTime: _startTime,
          passwordEndTime: _endTime,
          action: _action,
          password: _password,
          passwordIndex: passwordIndex,
          cardName: _cardName,
          roomName: _roomName
        }
      };
      Object(__WEBPACK_IMPORTED_MODULE_2__api_index__["g" /* httpPost */])(data3, __WEBPACK_IMPORTED_MODULE_3__api_all__["a" /* api */].sendCommand).then(function (res) {
        callback(res);
      });
    }

    /*
    LD下发函数
    */
    /**
     * *添加用户
     * @param {锁ID} _deviceNum
     * @param {门锁IMEI} _imei
     * @param {添加的用户ID} _userTelephone
     * @param {用户的keyId} _userPassword
     * @param {用户的蓝牙密码password} _pwd
     * @param {操作类型} _mode
     * @param {操作指令} _order
     * @param {锁用户有效期开始时间} _passwordStartTime
     * @param {锁用户有效期结束时间} _passwordEndTime
     * @param {回调} callback
     */

  }, {
    key: "LDAddUser",
    value: function LDAddUser() {
      var _deviceNum = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';

      var _imei = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';

      var _userTelephone = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';

      var _userPassword = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '';

      var _pwd = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : '';

      var _passwordStartTime = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : '';

      var _passwordEndTime = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : '';

      var _mode = arguments.length > 7 && arguments[7] !== undefined ? arguments[7] : '';

      var _order = arguments.length > 8 && arguments[8] !== undefined ? arguments[8] : '';

      var _cardName = arguments.length > 9 && arguments[9] !== undefined ? arguments[9] : '';

      var _roomName = arguments.length > 10 && arguments[10] !== undefined ? arguments[10] : '';

      var _pass = arguments.length > 11 && arguments[11] !== undefined ? arguments[11] : '';

      var callback = arguments[12];

      var data = {
        imei: _imei,
        deviceNum: _deviceNum,
        userTelephone: _userTelephone,
        userPassword: _userPassword,
        password: _pwd,
        operateMode: _mode,
        order: _order,
        passwordStartTime: _passwordStartTime,
        passwordEndTime: _passwordEndTime,
        is: false,
        cardName: _cardName,
        roomName: _roomName,
        pass: _pass
      };
      Object(__WEBPACK_IMPORTED_MODULE_2__api_index__["g" /* httpPost */])(data, __WEBPACK_IMPORTED_MODULE_3__api_all__["a" /* api */].getDeviceOperateUserInfo).then(function (res) {
        callback(res);
      });
    }
    /**
     * *删除用户
     * @param {锁ID} _deviceNum
     * @param {门锁IMEI} _imei
     * @param {添加的用户ID} _userTelephone
     * @param {用户的keyId} _userPassword
     * @param {用户的蓝牙密码password} _pwd
     * @param {操作类型} _mode
     * @param {操作指令} _order
     * @param {锁用户有效期开始时间} _passwordStartTime
     * @param {锁用户有效期结束时间} _passwordEndTime
     * @param {回调} callback
     */

  }, {
    key: "LDDeleteUser",
    value: function LDDeleteUser(_deviceNum, _imei, _userTelephone, _userPassword, _cardName, _roomName, callback) {
      var data = {
        imei: _imei,
        deviceNum: _deviceNum,
        userTelephone: _userTelephone,
        userPassword: _userPassword,
        password: "20210816",
        passwordStartTime: "20210813010101",
        passwordEndTime: "20680813010101",
        operateMode: 3,
        order: 6203,
        is: false,
        cardName: _cardName,
        roomName: _roomName
      };
      Object(__WEBPACK_IMPORTED_MODULE_2__api_index__["g" /* httpPost */])(data, __WEBPACK_IMPORTED_MODULE_3__api_all__["a" /* api */].getDeviceOperateUserInfo).then(function (res) {
        callback(res);
      });
    }
  }, {
    key: "LDDeleteUserSurrenderLease",
    value: function LDDeleteUserSurrenderLease(_deviceNum, _imei, _userTelephone, _userPassword, _order, _cardName, _roomName, callback) {
      var data = {
        imei: _imei,
        deviceNum: _deviceNum,
        userTelephone: _userTelephone,
        userPassword: _userPassword,
        password: "20210816",
        passwordStartTime: "20210813010101",
        passwordEndTime: "20680813010101",
        operateMode: 3,
        order: _order,
        is: false,
        cardName: _cardName,
        roomName: _roomName
      };
      Object(__WEBPACK_IMPORTED_MODULE_2__api_index__["g" /* httpPost */])(data, __WEBPACK_IMPORTED_MODULE_3__api_all__["a" /* api */].getDeviceOperateUserInfo).then(function (res) {
        callback(res);
      });
    }
    /**
     * *添加指纹
     * @param {锁ID} _deviceNum
     * @param {门锁IMEI} _imei
     * @param {添加的用户ID} _userTelephone
     * @param {用户的keyId} _userPassword
     * @param {用户的蓝牙密码password} _pwd
     * @param {操作类型} _mode
     * @param {操作指令} _order
     * @param {锁用户有效期开始时间} _passwordStartTime
     * @param {锁用户有效期结束时间} _passwordEndTime
     * @param {指纹数据长度length} _length
     * @param {指纹fpTimeId} _fpTimeId
     * @param {指纹数据fingerprint} _fingerprint
     * @param {回调} callback
     */

  }, {
    key: "LDAddFingerPrints",
    value: function LDAddFingerPrints(_deviceNum, _imei, _userTelephone, _userPassword, _pwd, _passwordStartTime, _passwordEndTime, _mode, _order, _length, _fpTimeId, _fingerprint, _cardName, _roomName, _pass, callback) {
      var data = {
        imei: _imei,
        deviceNum: _deviceNum,
        userTelephone: _userTelephone,
        userPassword: _userPassword,
        password: _pwd,
        operateMode: _mode,
        order: _order,
        fingerprintStartTime: _passwordStartTime,
        fingerprintEndTime: _passwordEndTime,
        length: _length,
        fpTimeId: _fpTimeId,
        fingerprint: _fingerprint,
        is: false,
        cardName: _cardName,
        roomName: _roomName,
        pass: _pass
      };
      Object(__WEBPACK_IMPORTED_MODULE_2__api_index__["g" /* httpPost */])(data, __WEBPACK_IMPORTED_MODULE_3__api_all__["a" /* api */].fingerprintTransfer).then(function (res) {
        callback(res);
      });
    }
    /**
     * *添加身份证
     * @param {锁ID} _deviceNum
     * @param {门锁IMEI} _imei
     * @param {添加的用户ID} _userTelephone
     * @param {用户的keyId} _userPassword
     * @param {用户的蓝牙密码password} _pwd
     * @param {操作类型} _mode
     * @param {操作指令} _order
     * @param {锁用户有效期开始时间} _passwordStartTime
     * @param {锁用户有效期结束时间} _passwordEndTime
     * @param {指纹数据长度length} _length
     * @param {指纹fpTimeId} _fpTimeId
     * @param {指纹数据fingerprint} _fingerprint
     * @param {回调} callback
     */

  }, {
    key: "LDRfCardRegister",
    value: function LDRfCardRegister() {
      var _deviceNum = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';

      var _imei = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';

      var _userTelephone = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';

      var _userPassword = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '';

      var _pwd = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : '';

      var _passwordStartTime = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : '';

      var _passwordEndTime = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : '';

      var _mode = arguments.length > 7 && arguments[7] !== undefined ? arguments[7] : '';

      var _order = arguments.length > 8 && arguments[8] !== undefined ? arguments[8] : '';

      var _cardName = arguments.length > 9 && arguments[9] !== undefined ? arguments[9] : '';

      var _roomName = arguments.length > 10 && arguments[10] !== undefined ? arguments[10] : '';

      var _pass = arguments.length > 11 && arguments[11] !== undefined ? arguments[11] : 'false';

      var callback = arguments[12];

      var data = {
        imei: _imei,
        deviceNum: _deviceNum,
        userTelephone: _userTelephone,
        userPassword: _userPassword,
        password: _pwd,
        operateMode: _mode,
        order: _order,
        passwordStartTime: _passwordStartTime,
        passwordEndTime: _passwordEndTime,
        is: false,
        cardName: _cardName,
        roomName: _roomName,
        pass: _pass
      };
      Object(__WEBPACK_IMPORTED_MODULE_2__api_index__["g" /* httpPost */])(data, __WEBPACK_IMPORTED_MODULE_3__api_all__["a" /* api */].getDeviceOperateUserInfo).then(function (res) {
        callback(res);
      });
    }
  }, {
    key: "LDAddCertificate",
    value: function LDAddCertificate(row, callback) {
      var data = {};
      var content = JSON.parse(row.content);
      if (row.type == 1) {
        data = {
          imei: row.imei,
          deviceNum: row.deviceNum,
          userTelephone: content.userTelephone,
          userPassword: content.userPassword,
          password: content.password,
          operateMode: content.operateMode,
          order: content.order,
          fingerprintStartTime: content.fingerprintStartTime,
          fingerprintEndTime: content.fingerprintEndTime,
          length: content.length,
          fpTimeId: content.fpTimeId,
          fingerprint: content.fingerprint,
          is: false,
          cardName: content.cardName,
          roomName: content.roomName,
          pass: true
        };
        Object(__WEBPACK_IMPORTED_MODULE_2__api_index__["g" /* httpPost */])(data, __WEBPACK_IMPORTED_MODULE_3__api_all__["a" /* api */].fingerprintTransfer).then(function (res) {
          callback(res);
        });
        return;
      } else {
        data = {
          imei: row.imei,
          deviceNum: row.deviceNum,
          userTelephone: content.userTelephone,
          userPassword: content.userPassword,
          password: content.password,
          operateMode: content.mode,
          order: content.order,
          passwordStartTime: content.passwordStartTime,
          passwordEndTime: content.passwordEndTime,
          is: false,
          cardName: content.cardName,
          roomName: content.roomName,
          pass: true
        };
      }
      Object(__WEBPACK_IMPORTED_MODULE_2__api_index__["g" /* httpPost */])(data, __WEBPACK_IMPORTED_MODULE_3__api_all__["a" /* api */].getDeviceOperateUserInfo).then(function (res) {
        callback(res);
      });
    }
  }, {
    key: "ZGAddCertificate",
    value: function ZGAddCertificate(row, callback) {
      var data3 = {};
      var content = JSON.parse(row.content);
      console.log(row);
      if (row.type == 1) {
        data3 = {
          code: "zg/addFingerPrint",
          data: {
            lockerId: row.deviceNum,
            imei: row.imei,
            lockerUserId: content.userPassword,
            keyId: content.userPassword,
            fingerType: 0,
            order: content.order,
            file: content.fingerprint,
            startTime: content.passwordStartTime,
            endTime: content.passwordEndTime,
            cardName: content.cardName,
            roomName: content.roomName
          }
        };
      } else if (row.type == 2) {
        data3 = {
          code: "zg/cardOperate",
          data: {
            lockerId: row.deviceNum,
            imei: row.imei,
            lockerUserId: content.userPassword,
            keyId: content.userPassword,
            action: 1,
            taskStatus: 1,
            cardType: 36,
            cardNo: content.password,
            order: content.order,
            startTime: content.passwordStartTime,
            endTime: content.passwordEndTime,
            cardName: content.cardName,
            roomName: content.roomName
          }
        };
      } else if (row.type == 3) {
        data3 = {
          code: "zg/cardOperate",
          data: {
            lockerId: row.deviceNum,
            imei: row.imei,
            lockerUserId: content.userPassword,
            keyId: content.userPassword,
            action: 1,
            taskStatus: 1,
            cardType: 50,
            cardNo: content.password,
            order: content.order,
            startTime: content.passwordStartTime,
            endTime: content.passwordEndTime,
            cardName: content.cardName,
            roomName: content.roomName
          }
        };
      } else if (row.type == 4) {
        data3 = {
          code: "zg/tempPassword",
          data: {
            lockerId: row.deviceNum,
            imei: row.imei,
            lockerUserId: content.userPassword,
            keyId: content.userPassword,
            order: content.order,
            passwordCount: 255,
            passwordStartTime: content.passwordStartTime,
            passwordEndTime: content.passwordEndTime,
            action: 1,
            password: content.password,
            cardName: content.cardName,
            roomName: content.roomName
          }
        };
      }
      Object(__WEBPACK_IMPORTED_MODULE_2__api_index__["g" /* httpPost */])(data3, __WEBPACK_IMPORTED_MODULE_3__api_all__["a" /* api */].sendCommand).then(function (res) {
        callback(res);
      });
    }
  }]);

  return ICINLocker;
}();

/* harmony default export */ __webpack_exports__["a"] = (ICINLocker);

/***/ }),

/***/ "OmSs":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "Oo05":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "PC80":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "PXCl":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
/* WEBPACK VAR INJECTION */(function(Buffer) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "version", function() { return version; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "VERSION", function() { return VERSION; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "atob", function() { return _atob; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "atobPolyfill", function() { return atobPolyfill; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "btoa", function() { return _btoa; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "btoaPolyfill", function() { return btoaPolyfill; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "fromBase64", function() { return decode; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "toBase64", function() { return encode; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "utob", function() { return utob; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "encode", function() { return encode; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "encodeURI", function() { return encodeURI; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "encodeURL", function() { return encodeURI; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "btou", function() { return btou; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "decode", function() { return decode; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "isValid", function() { return isValid; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "fromUint8Array", function() { return fromUint8Array; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "toUint8Array", function() { return toUint8Array; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "extendString", function() { return extendString; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "extendUint8Array", function() { return extendUint8Array; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "extendBuiltins", function() { return extendBuiltins; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Base64", function() { return gBase64; });
/**
 *  base64.ts
 *
 *  Licensed under the BSD 3-Clause License.
 *    http://opensource.org/licenses/BSD-3-Clause
 *
 *  References:
 *    http://en.wikipedia.org/wiki/Base64
 *
 * @author Dan Kogai (https://github.com/dankogai)
 */
const version = '3.7.2';
/**
 * @deprecated use lowercase `version`.
 */
const VERSION = version;
const _hasatob = typeof atob === 'function';
const _hasbtoa = typeof btoa === 'function';
const _hasBuffer = typeof Buffer === 'function';
const _TD = typeof TextDecoder === 'function' ? new TextDecoder() : undefined;
const _TE = typeof TextEncoder === 'function' ? new TextEncoder() : undefined;
const b64ch = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';
const b64chs = Array.prototype.slice.call(b64ch);
const b64tab = ((a) => {
    let tab = {};
    a.forEach((c, i) => tab[c] = i);
    return tab;
})(b64chs);
const b64re = /^(?:[A-Za-z\d+\/]{4})*?(?:[A-Za-z\d+\/]{2}(?:==)?|[A-Za-z\d+\/]{3}=?)?$/;
const _fromCC = String.fromCharCode.bind(String);
const _U8Afrom = typeof Uint8Array.from === 'function'
    ? Uint8Array.from.bind(Uint8Array)
    : (it, fn = (x) => x) => new Uint8Array(Array.prototype.slice.call(it, 0).map(fn));
const _mkUriSafe = (src) => src
    .replace(/=/g, '').replace(/[+\/]/g, (m0) => m0 == '+' ? '-' : '_');
const _tidyB64 = (s) => s.replace(/[^A-Za-z0-9\+\/]/g, '');
/**
 * polyfill version of `btoa`
 */
const btoaPolyfill = (bin) => {
    // console.log('polyfilled');
    let u32, c0, c1, c2, asc = '';
    const pad = bin.length % 3;
    for (let i = 0; i < bin.length;) {
        if ((c0 = bin.charCodeAt(i++)) > 255 ||
            (c1 = bin.charCodeAt(i++)) > 255 ||
            (c2 = bin.charCodeAt(i++)) > 255)
            throw new TypeError('invalid character found');
        u32 = (c0 << 16) | (c1 << 8) | c2;
        asc += b64chs[u32 >> 18 & 63]
            + b64chs[u32 >> 12 & 63]
            + b64chs[u32 >> 6 & 63]
            + b64chs[u32 & 63];
    }
    return pad ? asc.slice(0, pad - 3) + "===".substring(pad) : asc;
};
/**
 * does what `window.btoa` of web browsers do.
 * @param {String} bin binary string
 * @returns {string} Base64-encoded string
 */
const _btoa = _hasbtoa ? (bin) => btoa(bin)
    : _hasBuffer ? (bin) => Buffer.from(bin, 'binary').toString('base64')
        : btoaPolyfill;
const _fromUint8Array = _hasBuffer
    ? (u8a) => Buffer.from(u8a).toString('base64')
    : (u8a) => {
        // cf. https://stackoverflow.com/questions/12710001/how-to-convert-uint8-array-to-base64-encoded-string/12713326#12713326
        const maxargs = 0x1000;
        let strs = [];
        for (let i = 0, l = u8a.length; i < l; i += maxargs) {
            strs.push(_fromCC.apply(null, u8a.subarray(i, i + maxargs)));
        }
        return _btoa(strs.join(''));
    };
/**
 * converts a Uint8Array to a Base64 string.
 * @param {boolean} [urlsafe] URL-and-filename-safe a la RFC4648 §5
 * @returns {string} Base64 string
 */
const fromUint8Array = (u8a, urlsafe = false) => urlsafe ? _mkUriSafe(_fromUint8Array(u8a)) : _fromUint8Array(u8a);
// This trick is found broken https://github.com/dankogai/js-base64/issues/130
// const utob = (src: string) => unescape(encodeURIComponent(src));
// reverting good old fationed regexp
const cb_utob = (c) => {
    if (c.length < 2) {
        var cc = c.charCodeAt(0);
        return cc < 0x80 ? c
            : cc < 0x800 ? (_fromCC(0xc0 | (cc >>> 6))
                + _fromCC(0x80 | (cc & 0x3f)))
                : (_fromCC(0xe0 | ((cc >>> 12) & 0x0f))
                    + _fromCC(0x80 | ((cc >>> 6) & 0x3f))
                    + _fromCC(0x80 | (cc & 0x3f)));
    }
    else {
        var cc = 0x10000
            + (c.charCodeAt(0) - 0xD800) * 0x400
            + (c.charCodeAt(1) - 0xDC00);
        return (_fromCC(0xf0 | ((cc >>> 18) & 0x07))
            + _fromCC(0x80 | ((cc >>> 12) & 0x3f))
            + _fromCC(0x80 | ((cc >>> 6) & 0x3f))
            + _fromCC(0x80 | (cc & 0x3f)));
    }
};
const re_utob = /[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g;
/**
 * @deprecated should have been internal use only.
 * @param {string} src UTF-8 string
 * @returns {string} UTF-16 string
 */
const utob = (u) => u.replace(re_utob, cb_utob);
//
const _encode = _hasBuffer
    ? (s) => Buffer.from(s, 'utf8').toString('base64')
    : _TE
        ? (s) => _fromUint8Array(_TE.encode(s))
        : (s) => _btoa(utob(s));
/**
 * converts a UTF-8-encoded string to a Base64 string.
 * @param {boolean} [urlsafe] if `true` make the result URL-safe
 * @returns {string} Base64 string
 */
const encode = (src, urlsafe = false) => urlsafe
    ? _mkUriSafe(_encode(src))
    : _encode(src);
/**
 * converts a UTF-8-encoded string to URL-safe Base64 RFC4648 §5.
 * @returns {string} Base64 string
 */
const encodeURI = (src) => encode(src, true);
// This trick is found broken https://github.com/dankogai/js-base64/issues/130
// const btou = (src: string) => decodeURIComponent(escape(src));
// reverting good old fationed regexp
const re_btou = /[\xC0-\xDF][\x80-\xBF]|[\xE0-\xEF][\x80-\xBF]{2}|[\xF0-\xF7][\x80-\xBF]{3}/g;
const cb_btou = (cccc) => {
    switch (cccc.length) {
        case 4:
            var cp = ((0x07 & cccc.charCodeAt(0)) << 18)
                | ((0x3f & cccc.charCodeAt(1)) << 12)
                | ((0x3f & cccc.charCodeAt(2)) << 6)
                | (0x3f & cccc.charCodeAt(3)), offset = cp - 0x10000;
            return (_fromCC((offset >>> 10) + 0xD800)
                + _fromCC((offset & 0x3FF) + 0xDC00));
        case 3:
            return _fromCC(((0x0f & cccc.charCodeAt(0)) << 12)
                | ((0x3f & cccc.charCodeAt(1)) << 6)
                | (0x3f & cccc.charCodeAt(2)));
        default:
            return _fromCC(((0x1f & cccc.charCodeAt(0)) << 6)
                | (0x3f & cccc.charCodeAt(1)));
    }
};
/**
 * @deprecated should have been internal use only.
 * @param {string} src UTF-16 string
 * @returns {string} UTF-8 string
 */
const btou = (b) => b.replace(re_btou, cb_btou);
/**
 * polyfill version of `atob`
 */
const atobPolyfill = (asc) => {
    // console.log('polyfilled');
    asc = asc.replace(/\s+/g, '');
    if (!b64re.test(asc))
        throw new TypeError('malformed base64.');
    asc += '=='.slice(2 - (asc.length & 3));
    let u24, bin = '', r1, r2;
    for (let i = 0; i < asc.length;) {
        u24 = b64tab[asc.charAt(i++)] << 18
            | b64tab[asc.charAt(i++)] << 12
            | (r1 = b64tab[asc.charAt(i++)]) << 6
            | (r2 = b64tab[asc.charAt(i++)]);
        bin += r1 === 64 ? _fromCC(u24 >> 16 & 255)
            : r2 === 64 ? _fromCC(u24 >> 16 & 255, u24 >> 8 & 255)
                : _fromCC(u24 >> 16 & 255, u24 >> 8 & 255, u24 & 255);
    }
    return bin;
};
/**
 * does what `window.atob` of web browsers do.
 * @param {String} asc Base64-encoded string
 * @returns {string} binary string
 */
const _atob = _hasatob ? (asc) => atob(_tidyB64(asc))
    : _hasBuffer ? (asc) => Buffer.from(asc, 'base64').toString('binary')
        : atobPolyfill;
//
const _toUint8Array = _hasBuffer
    ? (a) => _U8Afrom(Buffer.from(a, 'base64'))
    : (a) => _U8Afrom(_atob(a), c => c.charCodeAt(0));
/**
 * converts a Base64 string to a Uint8Array.
 */
const toUint8Array = (a) => _toUint8Array(_unURI(a));
//
const _decode = _hasBuffer
    ? (a) => Buffer.from(a, 'base64').toString('utf8')
    : _TD
        ? (a) => _TD.decode(_toUint8Array(a))
        : (a) => btou(_atob(a));
const _unURI = (a) => _tidyB64(a.replace(/[-_]/g, (m0) => m0 == '-' ? '+' : '/'));
/**
 * converts a Base64 string to a UTF-8 string.
 * @param {String} src Base64 string.  Both normal and URL-safe are supported
 * @returns {string} UTF-8 string
 */
const decode = (src) => _decode(_unURI(src));
/**
 * check if a value is a valid Base64 string
 * @param {String} src a value to check
  */
const isValid = (src) => {
    if (typeof src !== 'string')
        return false;
    const s = src.replace(/\s+/g, '').replace(/={0,2}$/, '');
    return !/[^\s0-9a-zA-Z\+/]/.test(s) || !/[^\s0-9a-zA-Z\-_]/.test(s);
};
//
const _noEnum = (v) => {
    return {
        value: v, enumerable: false, writable: true, configurable: true
    };
};
/**
 * extend String.prototype with relevant methods
 */
const extendString = function () {
    const _add = (name, body) => Object.defineProperty(String.prototype, name, _noEnum(body));
    _add('fromBase64', function () { return decode(this); });
    _add('toBase64', function (urlsafe) { return encode(this, urlsafe); });
    _add('toBase64URI', function () { return encode(this, true); });
    _add('toBase64URL', function () { return encode(this, true); });
    _add('toUint8Array', function () { return toUint8Array(this); });
};
/**
 * extend Uint8Array.prototype with relevant methods
 */
const extendUint8Array = function () {
    const _add = (name, body) => Object.defineProperty(Uint8Array.prototype, name, _noEnum(body));
    _add('toBase64', function (urlsafe) { return fromUint8Array(this, urlsafe); });
    _add('toBase64URI', function () { return fromUint8Array(this, true); });
    _add('toBase64URL', function () { return fromUint8Array(this, true); });
};
/**
 * extend Builtin prototypes with relevant methods
 */
const extendBuiltins = () => {
    extendString();
    extendUint8Array();
};
const gBase64 = {
    version: version,
    VERSION: VERSION,
    atob: _atob,
    atobPolyfill: atobPolyfill,
    btoa: _btoa,
    btoaPolyfill: btoaPolyfill,
    fromBase64: decode,
    toBase64: encode,
    encode: encode,
    encodeURI: encodeURI,
    encodeURL: encodeURI,
    utob: utob,
    btou: btou,
    decode: decode,
    isValid: isValid,
    fromUint8Array: fromUint8Array,
    toUint8Array: toUint8Array,
    extendString: extendString,
    extendUint8Array: extendUint8Array,
    extendBuiltins: extendBuiltins,
};
// makecjs:CUT //




















// and finally,


/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__("EuP9").Buffer))

/***/ }),

/***/ "Qbfk":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "RFQG":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/toConsumableArray.js
var toConsumableArray = __webpack_require__("Gu7T");
var toConsumableArray_default = /*#__PURE__*/__webpack_require__.n(toConsumableArray);

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/slicedToArray.js
var slicedToArray = __webpack_require__("d7EF");
var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/mixin/autoResize.js
var autoResize = __webpack_require__("kN6d");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/util/index.js
var util = __webpack_require__("3e7c");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var lib_util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(lib_util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/decoration6/src/main.vue


//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//









/* harmony default export */ var main = ({
  name: 'DvDecoration6',
  mixins: [autoResize["a" /* default */]],
  props: {
    color: {
      type: Array,
      default: function _default() {
        return [];
      }
    }
  },
  data: function data() {
    var rectWidth = 7;

    return {
      ref: 'decoration-6',

      svgWH: [300, 35],

      svgScale: [1, 1],

      rowNum: 1,
      rowPoints: 40,

      rectWidth: rectWidth,
      halfRectWidth: rectWidth / 2,

      points: [],
      heights: [],
      minHeights: [],
      randoms: [],

      defaultColor: ['#7acaec', '#7acaec'],

      mergedColor: []
    };
  },

  watch: {
    color: function color() {
      var mergeColor = this.mergeColor;


      mergeColor();
    }
  },
  methods: {
    afterAutoResizeMixinInit: function afterAutoResizeMixinInit() {
      var calcSVGData = this.calcSVGData;


      calcSVGData();
    },
    calcSVGData: function calcSVGData() {
      var calcPointsPosition = this.calcPointsPosition,
          calcScale = this.calcScale;


      calcPointsPosition();

      calcScale();
    },
    calcPointsPosition: function calcPointsPosition() {
      var svgWH = this.svgWH,
          rowNum = this.rowNum,
          rowPoints = this.rowPoints;

      var _svgWH = slicedToArray_default()(svgWH, 2),
          w = _svgWH[0],
          h = _svgWH[1];

      var horizontalGap = w / (rowPoints + 1);
      var verticalGap = h / (rowNum + 1);

      var points = new Array(rowNum).fill(0).map(function (foo, i) {
        return new Array(rowPoints).fill(0).map(function (foo, j) {
          return [horizontalGap * (j + 1), verticalGap * (i + 1)];
        });
      });

      this.points = points.reduce(function (all, item) {
        return [].concat(toConsumableArray_default()(all), toConsumableArray_default()(item));
      }, []);
      var heights = this.heights = new Array(rowNum * rowPoints).fill(0).map(function (foo) {
        return Math.random() > 0.8 ? Object(util["d" /* randomExtend */])(0.7 * h, h) : Object(util["d" /* randomExtend */])(0.2 * h, 0.5 * h);
      });

      this.minHeights = new Array(rowNum * rowPoints).fill(0).map(function (foo, i) {
        return heights[i] * Math.random();
      });

      this.randoms = new Array(rowNum * rowPoints).fill(0).map(function (foo) {
        return Math.random() + 1.5;
      });
    },
    calcScale: function calcScale() {
      var width = this.width,
          height = this.height,
          svgWH = this.svgWH;

      var _svgWH2 = slicedToArray_default()(svgWH, 2),
          w = _svgWH2[0],
          h = _svgWH2[1];

      this.svgScale = [width / w, height / h];
    },
    onResize: function onResize() {
      var calcSVGData = this.calcSVGData;


      calcSVGData();
    },
    mergeColor: function mergeColor() {
      var color = this.color,
          defaultColor = this.defaultColor;


      this.mergedColor = Object(lib_util["deepMerge"])(Object(plugin_util["deepClone"])(defaultColor, true), color || []);
    }
  },
  mounted: function mounted() {
    var mergeColor = this.mergeColor;


    mergeColor();
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-a9ebb10e","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/decoration6/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:_vm.ref,staticClass:"dv-decoration-6"},[_c('svg',{style:(("transform:scale(" + (_vm.svgScale[0]) + "," + (_vm.svgScale[1]) + ");")),attrs:{"width":((_vm.svgWH[0]) + "px"),"height":((_vm.svgWH[1]) + "px")}},[_vm._l((_vm.points),function(point,i){return [_c('rect',{key:i,attrs:{"fill":_vm.mergedColor[Math.random() > 0.5 ? 0 : 1],"x":point[0] - _vm.halfRectWidth,"y":point[1] - _vm.heights[i] / 2,"width":_vm.rectWidth,"height":_vm.heights[i]}},[_c('animate',{attrs:{"attributeName":"y","values":((point[1] - _vm.minHeights[i] / 2) + ";" + (point[1] - _vm.heights[i] / 2) + ";" + (point[1] - _vm.minHeights[i] / 2)),"dur":((_vm.randoms[i]) + "s"),"keyTimes":"0;0.5;1","calcMode":"spline","keySplines":"0.42,0,0.58,1;0.42,0,0.58,1","begin":"0s","repeatCount":"indefinite"}}),_vm._v(" "),_c('animate',{attrs:{"attributeName":"height","values":((_vm.minHeights[i]) + ";" + (_vm.heights[i]) + ";" + (_vm.minHeights[i])),"dur":((_vm.randoms[i]) + "s"),"keyTimes":"0;0.5;1","calcMode":"spline","keySplines":"0.42,0,0.58,1;0.42,0,0.58,1","begin":"0s","repeatCount":"indefinite"}})])]})],2)])}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/decoration6/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var decoration6_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "RMme":
/***/ (function(module, exports) {

!function (c) {
  var l,
      _h,
      a,
      t,
      z,
      i = '<svg><symbol id="httpicon-shouye1" viewBox="0 0 1024 1024"><path d="M683.2023 875.392581H226.184997v-0.136525h115.431853v-157.003703c0-1.0922 0.341312-2.047874 0.341313-3.071812A170.178362 170.178362 0 0 1 512.409575 548.89314a170.178362 170.178362 0 0 1 170.519675 166.287401c0 1.023937 0.27305 2.047874 0.27305 3.071812v157.140228z m321.448017-565.008546L896.727337 240.346731V104.709183c0-23.345768-19.113494-42.322738-42.732313-42.322737a42.459262 42.459262 0 0 0-42.66405 42.322737V185.054122L535.823605 6.206425A42.11795 42.11795 0 0 0 511.658688 0.062801a41.913163 41.913163 0 0 0-23.482293 6.143624L19.349683 310.452298a42.049688 42.049688 0 0 0-12.287247 58.569207 43.005362 43.005362 0 0 0 59.047045 12.218984l19.318282-12.560296v519.272685c0 39.728763 36.247377 72.085179 80.822776 72.085178h692.318071c44.575399 0 80.822776-32.356415 80.822777-72.085178V369.15803l18.499132 12.014197a43.005362 43.005362 0 0 0 59.115307-12.287247 41.981425 41.981425 0 0 0-12.355509-58.500945z" fill="#515B77" ></path></symbol><symbol id="httpicon-weibo" viewBox="0 0 1024 1024"><path d="M511.896576 0c-282.712064 0-511.896576 229.184512-511.896576 511.899648 0 282.708992 229.184512 511.893504 511.896576 511.893504s511.893504-229.184512 511.893504-511.893504C1023.79008 229.184512 794.60864 0 511.896576 0zM464.433152 767.041536c-130.83136 0-264.563712-63.404032-264.563712-167.69024 0-54.520832 34.541568-117.568512 94.0288-177.068032 79.430656-79.409152 172.059648-115.581952 206.896128-80.723968 15.371264 15.348736 16.859136 41.947136 6.979584 73.693184-5.149696 15.992832 15.009792 7.13728 15.009792 7.172096 64.202752-26.88 120.215552-28.464128 140.68736 0.78848 10.925056 15.588352 9.879552 37.446656-0.18944 62.778368-4.657152 11.669504 1.432576 13.477888 10.313728 16.144384 36.175872 11.214848 76.438528 38.340608 76.438528 86.140928C750.032896 667.392 635.94496 767.041536 464.433152 767.041536zM701.2864 435.448832c4.231168-13.072384 1.580032-27.972608-8.28416-38.90688-9.854976-10.912768-24.419328-15.053824-37.851136-12.214272l0-0.023552c-11.203584 2.438144-22.247424-4.753408-24.649728-15.946752-2.408448-11.240448 4.749312-22.293504 15.97952-24.686592 27.476992-5.84192 57.244672 2.65216 77.402112 25.01632 20.200448 22.361088 25.602048 52.822016 16.96768 79.543296-3.524608 10.940416-15.244288 16.896-26.169344 13.39904-10.921984-3.535872-16.894976-15.269888-13.374464-26.180608L701.2864 435.448832zM822.412288 474.564608c-0.007168 0.021504-0.007168 0.069632-0.007168 0.093184-4.110336 12.674048-17.73056 19.61472-30.399488 15.512576-12.719104-4.10624-19.668992-17.696768-15.563776-30.401536l-0.007168-0.008192c12.599296-39.001088 4.609024-83.49184-24.807424-116.109312-29.443072-32.620544-72.856576-45.080576-112.9728-36.56192-13.048832 2.782208-25.880576-5.547008-28.662784-18.582528-2.793472-13.024256 5.52448-25.86112 18.573312-28.653568l0.023552 0c56.388608-11.988992 117.481472 5.516288 158.901248 51.437568C828.920832 357.164032 840.088576 419.703808 822.412288 474.564608zM640.536576 578.312192c-6.767616-68.514816-96.889856-115.705856-201.298944-105.382912-104.38656 10.322944-183.547904 74.238976-176.766976 142.767104 6.781952 68.545536 96.900096 115.736576 201.29792 105.434112C568.179712 710.801408 647.307264 646.879232 640.536576 578.312192zM530.835456 634.569728c-21.305344 48.190464-82.586624 73.882624-134.575104 57.115648-50.193408-16.19968-71.442432-65.757184-49.466368-110.401536 21.577728-43.771904 77.727744-68.530176 127.40608-55.606272C525.613056 538.966016 551.84896 587.465728 530.835456 634.569728zM424.604672 597.858304c-16.164864-6.776832-37.061632 0.191488-47.03744 15.834112-10.098688 15.710208-5.36064 34.419712 10.691584 41.729024 16.285696 7.436288 37.90848 0.376832 48.008192-15.73376C446.1824 623.418368 440.961024 604.829696 424.604672 597.858304zM464.448512 581.34016c-6.203392-2.461696-13.959168 0.518144-17.596416 6.62016-3.533824 6.132736-1.584128 13.11744 4.632576 15.675392 6.324224 2.603008 14.395392-0.402432 18.046976-6.641664C473.01632 590.706688 470.751232 583.645184 464.448512 581.34016z"  ></path></symbol><symbol id="httpicon-weixin-copy" viewBox="0 0 1024 1024"><path d="M579.86616889 511.93173333c-11.67018667 0-23.34378667 10.83733333-23.34378667 24.17777778 0 10.83960889 11.66791111 21.67808 23.34378667 21.67808 17.51381333 0 30.02026667-10.83960889 30.02026666-21.67808 0-13.33930667-12.50417778-24.17777778-30.02026666-24.17777778v0zM503.15377778 399.36c18.34439111 0 30.02026667-11.67018667 30.02026667-29.18513778 0-18.34439111-11.67473778-29.18286222-30.02026667-29.18286222-17.5104 0-34.18794667 10.83960889-34.18794667 29.18286222-0.00113778 17.51722667 16.67868445 29.18513778 34.18794667 29.18513778v0zM512.32654222 0.55978667c-282.65472 0-511.78723555 229.13251555-511.78723555 511.78723555 0 282.65244445 229.13251555 511.78609778 511.78723555 511.78609778 282.65244445 0 511.78609778-229.13251555 511.78609778-511.78609778 0.00113778-282.65472-229.13137778-511.78723555-511.78609778-511.78723555v0zM415.60177778 642.00817778c-30.85539555 0-53.36860445-4.99939555-82.55260445-13.34044445l-84.21717333 42.53013334 24.18574222-71.71527112c-59.20426667-41.68817778-94.22848-94.22051555-94.22848-158.4275911 0-113.40231111 106.73265778-200.12259555 236.81365333-200.12259556 115.06915555 0 217.63299555 68.37703111 237.64423112 165.10634666-8.33763555-1.67139555-15.84469333-2.50197333-22.51434667-2.50197333-113.40231111 0-200.95317333 85.04888889-200.95317333 187.61272889 0 17.50812445 2.50197333 33.35168 6.67079111 50.03036444-6.67079111 0.82830222-14.17784889 0.82830222-20.84864 0.82830223v0zM763.31463111 723.72337778l16.67413334 60.04053333-63.3708089-35.85365333c-24.18005333 4.99939555-47.52839111 12.50417778-71.70844444 12.50417777-111.73660445 0-200.12259555-76.71125333-200.12259556-171.76803555 0-95.05792 88.38826667-171.77031111 200.12259556-171.77031111 105.89525333 0 200.95317333 76.71239111 200.95317334 171.77031111 0 53.36177778-35.85365333 100.89016889-82.54805334 135.07811555v0zM338.05312 340.992c-17.5104 0-35.85365333 10.83960889-35.85365333 29.18286222 0 17.51608889 18.34325333 29.19082667 35.85365333 29.19082667 16.67982222 0 30.02026667-11.67473778 30.02026667-29.19082667 0-18.34325333-13.34044445-29.18286222-30.02026667-29.18286222v0zM710.78343111 511.93173333c-12.50986667 0-23.34947555 10.83733333-23.34947556 24.17777778 0 10.83960889 10.83960889 21.67808 23.34947556 21.67808 16.67413333 0 29.18286222-10.83960889 29.18286222-21.67808 0-13.33930667-12.50872889-24.17777778-29.18286222-24.17777778v0zM710.78343111 511.93173333z"  ></path></symbol><symbol id="httpicon-QQ" viewBox="0 0 1024 1024"><path d="M510.976 3.64088889c-281.48622222 0-509.72444445 228.23822222-509.72444445 509.72444444s228.23822222 509.72444445 509.72444445 509.72444445 509.72444445-228.23822222 509.72444445-509.72444445-228.23822222-509.72444445-509.72444445-509.72444444z m221.98044445 631.92177778s-15.92888889 43.46311111-44.94222223 82.37511111c0 0 51.99644445 17.63555555 47.55911111 63.71555555 0 0 1.70666667 51.42755555-111.04711111 47.78666667 0 0-79.30311111-6.25777778-103.08266667-39.82222222h-21.04888888c-23.77955555 33.67822222-103.08266667 39.82222222-103.08266667 39.82222222-112.75377778 3.52711111-111.04711111-47.78666667-111.04711111-47.78666667-4.43733333-45.96622222 47.55911111-63.71555555 47.55911111-63.71555555-29.01333333-38.912-44.94222222-82.37511111-44.94222222-82.37511111-70.42844445 114.23288889-63.37422222-15.92888889-63.37422223-15.92888889 13.312-77.02755555 68.72177778-127.54488889 68.72177778-127.54488889-7.96444445-70.08711111 21.04888889-82.37511111 21.04888889-82.37511111 6.144-216.40533333 191.60177778-212.65066667 195.584-212.53688889 3.86844445-0.11377778 189.44-3.86844445 195.584 212.53688889 0 0 29.01333333 12.40177778 21.04888889 82.37511111 0 0 55.40977778 50.40355555 68.72177778 127.43111111 0.22755555 0.11377778 7.168 130.27555555-63.26044444 16.04266667z"  ></path></symbol><symbol id="httpicon-yiqiatong" viewBox="0 0 1024 1024"><path d="M863.133 838.074H161.066c-35.864 0-65.042-29.178-65.042-65.041V258.645c0-35.864 29.177-65.042 65.042-65.042h702.066c35.863 0 65.041 29.178 65.041 65.042v514.388c0.001 35.863-29.177 65.041-65.04 65.041z m-702.067-580.47c-0.497 0-1.042 0.545-1.042 1.042v514.388c0 0.496 0.545 1.041 1.042 1.041h702.066c0.496 0 1.041-0.545 1.041-1.041V258.645c0-0.496-0.545-1.042-1.041-1.042H161.066z" fill="" ></path><path d="M146.109 348.097h737.963v64H146.109zM515.239 544.127H220.604c-17.673 0-32-14.326-32-32 0-17.673 14.327-32 32-32h294.635c17.673 0 32 14.327 32 32 0 17.674-14.327 32-32 32zM806.096 544.127H613.112c-17.673 0-32-14.326-32-32s14.327-32 32-32h192.983c17.673 0 32 14.327 32 32s-14.326 32-31.999 32zM420.195 658.085h-197.99c-17.673 0-32-14.327-32-32s14.327-32 32-32h197.99c17.673 0 32 14.327 32 32s-14.326 32-32 32z" fill="" ></path></symbol><symbol id="httpicon-gongdanguanli" viewBox="0 0 1024 1024"><path d="M865.9 778.4l-75.3-71.7c16.5-45.8 5.5-97.1-29.3-133.7-25.7-25.6-58.6-38.5-89.8-38.5-20.2 0-40.3 5.5-58.6 14.7-11 5.5-12.8 20.2-3.7 29.3l62.3 62.3-22 22-62.3-62.3c-3.7-3.7-7.3-5.5-12.8-5.5-7.3 0-12.8 3.7-16.5 11-23.8 47.6-16.5 108.1 23.8 148.4 25.7 25.7 56.8 36.6 89.8 36.6 14.7 0 29.3-1.8 42.1-7.3l75.3 71.7 12.8 12.8c7.3 7.3 18.3 7.3 25.6 0l51.3-51.3c7.3-7.3 7.3-18.3 0-25.7l-12.7-12.8z m-51.3 51.3L739.3 758c-7.3-7.3-16.5-11-25.7-11-3.7 0-7.3 0-12.8 1.8-9.2 3.7-20.2 5.5-31.1 5.5-23.8 0-47.6-9.2-64.1-27.5-22-22-31.1-51.3-25.7-80.6l42.1 42.1c7.3 7.3 16.5 11 25.7 11s18.3-3.7 25.7-11l22-22c14.7-14.7 14.7-38.5 0-51.3l-42.3-42c5.5-1.8 11-1.8 16.5-1.8 23.8 0 47.6 9.2 64.1 27.5 25.7 23.8 34.8 60.5 22 95.3-5.5 12.8-1.8 27.5 9.2 38.5l75.3 71.7-25.6 25.5z"  ></path><path d="M558.2 890.7H226.8c-48.6 0-88.1-39-88.1-86.9V220.3c0-47.9 39.5-86.9 88.1-86.9h503.9c48.6 0 88.1 39 88.1 86.9v274.4c0 15.5-12.5 28-28 28s-28-12.5-28-28V220.3c0-17-14.4-30.9-32.1-30.9H226.8c-17.7 0-32.1 13.9-32.1 30.9v583.5c0 17 14.4 30.9 32.1 30.9h331.4c15.5 0 28 12.5 28 28s-12.5 28-28 28z"  ></path><path d="M646.7 359.7H271.1c-15.5 0-28-12.5-28-28s12.5-28 28-28h375.7c15.5 0 28 12.5 28 28s-12.6 28-28.1 28zM587.2 518.2H271.1c-15.5 0-28-12.5-28-28s12.5-28 28-28h316.2c15.5 0 28 12.5 28 28s-12.6 28-28.1 28zM465.2 676.7H271.1c-15.5 0-28-12.5-28-28s12.5-28 28-28h194.2c15.5 0 28 12.5 28 28s-12.6 28-28.1 28z"  ></path></symbol><symbol id="httpicon-xitongguanli" viewBox="0 0 1024 1024"><path d="M314.626235 664.993486l-94.089935-38.943964 20.822235-90.082668c-8.54256-7.28287-16.559141-15.301498-23.945365-23.953551l-90.12667 20.869307-38.991036-94.051049 78.484515-49.013297c-0.906649-11.233855-0.905626-22.583344-0.011256-33.863249l-78.480422-48.952922 38.938847-94.078679 90.12974 20.820188c7.302313-8.562003 15.312754-16.567327 23.937179-23.938202l-20.892843-90.14509 94.058213-38.980803 48.999994 78.466096c11.260461-0.896416 22.598694-0.8913 33.866319 0.004093l48.946782-78.484515 94.088912 38.944987-20.821211 90.083691c8.543583 7.280824 16.561188 15.300474 23.946388 23.953551l90.12667-20.868283 38.988989 94.050026-78.484515 49.010227c0.907673 11.235902 0.912789 22.574135 0.013303 33.864272l78.480422 48.953945-38.943964 94.088912-90.11439-20.87647c-7.284917 8.550747-15.300474 16.570397-23.940249 23.934109l20.903076 90.149183-94.054119 38.981826-49.019437-78.43335c-11.267625 0.907673-22.601764 0.903579-33.870412 0.011256L314.626235 664.993486zM249.496889 611.137905l55.178717 22.840194 46.069245-73.860195 7.824199 0.929162c14.556531 1.704828 29.320793 1.706875 43.877323-0.00614l7.817036-0.911766 46.124504 73.79368 55.161321-22.874987-19.658735-84.788082 6.164397-4.88424c11.594059-9.188266 22.036899-19.638269 31.035854-31.04711l4.882194-6.199189 84.785012 19.646456 22.838148-55.17974-73.840752-46.062082 0.910743-7.819083c1.719154-14.602579 1.708921-29.356608-0.01228-43.874253l-0.933255-7.819083 73.856102-46.122457-22.86066-55.16746-84.789105 19.635199-4.882194-6.158257c-9.202593-11.623735-19.648502-22.066575-31.035854-31.04711l-6.191003-4.876054 19.586081-84.764546L456.224184 111.682615l-46.057989 73.847915-7.820106-0.926092c-14.567787-1.707898-29.338189-1.702782-43.892673 0.011256l-7.818059 0.914836-46.110177-73.840752-55.158251 22.874987 19.657712 84.800361-6.17156 4.892427c-11.56029 9.148357-22.00927 19.6045-31.029714 31.036877l-4.881171 6.175653-84.798315-19.599384-22.844288 55.189973 73.855078 46.056965-0.916882 7.816013c-1.715061 14.602579-1.713015 29.366841 0.010233 43.880393l0.929162 7.822153-73.855078 46.119387 22.86373 55.17053 84.785012-19.635199 4.883217 6.15928c9.210779 11.625782 19.651572 22.066575 31.039947 31.039947l6.186909 4.88424L249.496889 611.137905z"  ></path><path d="M317.903885 675.209152 210.999087 630.962415l21.277606-92.056626c-6.225795-5.560646-12.187577-11.525498-17.800411-17.809621l-92.097558 21.325701L78.077751 435.56005l80.19753-50.082652c-0.478907-8.344039-0.480954-16.775059-0.00614-25.176402l-80.196507-50.0233 44.242643-106.892519 92.102674 21.276582c5.560646-6.224772 11.519358-12.18246 17.793248-17.790178l-21.350261-92.119047 106.871029-44.289716 50.072419 80.18218c8.365528-0.473791 16.777105-0.471744 25.177426 0.004093l50.016137-80.199577 106.903775 44.248783-21.276582 92.055602c6.227842 5.560646 12.189623 11.525498 17.801435 17.810644l92.097558-21.324678 44.298925 106.860796-80.19753 50.079582c0.481977 8.361435 0.485047 16.794501 0.00921 25.178449l80.195483 50.0233-44.248783 106.905822-92.085278-21.332864c-5.569856 6.241145-11.529591 12.19781-17.794271 17.788132l21.35947 92.117001-106.86489 44.290739-50.089815-80.145341c-8.360412 0.479931-16.771989 0.481977-25.183566 0.00614L317.903885 675.209152zM230.074537 621.136629l81.276095 33.640168 47.910173-76.81755 4.959965 0.39295c10.832719 0.857531 21.832238 0.854461 32.56672-0.011256l4.960988-0.399089 47.984874 76.776617 81.244372-33.67189-20.461007-88.242763 3.789303-3.229554c8.267291-7.046486 16.011672-14.788821 23.01825-23.01211l3.228531-3.790326 88.205924 20.434401 33.638121-81.272002-76.82062-47.919383 0.396019-4.962012c0.862647-10.824533 0.858554-21.776979-0.01228-32.555463l-0.402159-4.965082 76.827783-47.975664-33.67803-81.240279-88.217181 20.426215-3.228531-3.78214c-7.088442-8.30413-14.835893-16.054651-23.030529-23.037692l-3.786233-3.226484 20.380166-88.175225-81.275072-33.641191-47.910173 76.822666-4.960988-0.393973c-10.8143-0.859577-21.820981-0.860601-32.568766-0.004093l-4.958942 0.394996-47.962362-76.80527-81.246419 33.670867 20.448728 88.231507-3.77907 3.229554c-8.289804 7.083326-16.037255 14.830777-23.026436 23.026436l-3.226484 3.783163-88.218204-20.379143-33.636075 81.265862 76.81755 47.917336-0.39295 4.958942c-0.860601 10.858302-0.856507 21.811772 0.010233 32.55751l0.401136 4.964058-76.827783 47.978734 33.680077 81.241302 88.217181-20.426215 3.228531 3.78214c7.089465 8.30413 14.83794 16.054651 23.030529 23.039739l3.78521 3.226484L230.074537 621.136629zM307.951209 644.194788l-67.991534-28.14399 19.978007-86.465281-2.116197-1.670036c-11.878538-9.358135-22.775726-20.2543-32.383548-32.381501l-1.663896-2.098801-86.49598 20.032242-28.172643-67.982324 75.329662-47.040363-0.317225-2.663666c-1.797949-15.148002-1.802042-30.55797-0.011256-45.801139l0.312108-2.660596-75.335802-46.981011 28.148084-68.004837 86.503143 19.993357 1.665942-2.108011c9.423627-11.943007 20.316721-22.839171 32.372292-32.380478l2.106987-1.670036-20.053732-86.509283 67.969021-28.187993 47.037293 75.325569 2.668783-0.312108c15.116279-1.778506 30.67565-1.784646 45.797046-0.010233l2.669806 0.316202 46.978964-75.323523 67.992557 28.142967-19.976984 86.459141 2.111081 1.662873c11.907191 9.389858 22.802332 20.289092 32.388664 32.396851l1.661849 2.095731 86.500073-20.031219 28.16855 67.978231-75.327616 47.041386 0.317225 2.65855c1.799996 15.182794 1.805112 30.590715 0.014326 45.801139l-0.310062 2.660596 75.325569 46.988174-28.14399 67.997674-86.479607-20.039405-1.665942 2.115174c-9.405207 11.924587-20.299325 22.822798-32.383548 32.398898l-2.104941 1.666966 20.055778 86.494956-67.971068 28.185946-47.053666-75.27952-2.672876 0.312108c-15.086603 1.774413-30.640857 1.778506-45.777603 0.005117l-2.675946-0.318248L307.951209 644.194788zM259.034103 606.225011l42.364877 17.537422 45.150316-72.385611 12.984732 1.542122c13.847379 1.622964 28.113291 1.62194 41.955554-0.007163l12.970406-1.512447 45.196365 72.307839 42.352597-17.563004-19.262716-83.081207 10.226922-8.101515c11.087523-8.786107 21.077038-18.778692 29.692253-29.700439l8.093329-10.277064 83.089393 19.253506 17.533328-42.36283-72.355935-45.13599 1.5104-12.968359c1.641383-13.945617 1.638313-28.061103-0.010233-41.962717l-1.549286-12.973476 72.383564-45.202505-17.551748-42.35669-83.07916 19.23918-8.099469-10.215666c-8.800433-11.114129-18.786878-21.106714-29.691229-29.705556l-10.266831-8.087189 19.193131-83.069951-42.364877-17.535375-45.138036 72.372308-12.978593-1.537006c-13.840216-1.62194-28.109198-1.619894-41.97295 0.01228l-12.972453 1.517563-45.183062-72.355935-42.34748 17.563004 19.261693 83.092463-10.229992 8.110725c-11.062963 8.755408-21.050432 18.7439-29.689183 29.693276l-8.099469 10.248412-83.09451-19.206434-17.539468 42.376133 72.374354 45.133943-1.52268 12.970406c-1.641383 13.970176-1.638313 28.087709 0.00921 41.960671l1.542122 12.978593-72.379471 45.198411 17.554818 42.35976 83.075067-19.23918 8.100492 10.216689c8.81783 11.129478 18.807345 21.12104 29.691229 29.695323l10.264784 8.104585L259.034103 606.225011z"  ></path><path d="M316.424184 670.604274l-101.125165-41.85527 21.069875-91.153046c-7.254218-6.344498-14.159488-13.253862-20.582781-20.591991l-91.193978 21.116947-41.907459-101.085256 79.410608-49.592488c-0.651846-9.624195-0.653893-19.391652-0.00921-29.108968l-79.409584-49.532113 41.8522-101.114932 91.198072 21.065781c6.351662-7.256264 13.254885-14.159488 20.575618-20.572548l-21.141506-91.214445 101.093443-41.894156 49.581232 79.393211c9.649777-0.642636 19.418258-0.641613 29.109991 0.002047l49.525973-79.411631 101.125165 41.856293-21.065781 91.151c7.254218 6.347568 14.160511 13.256932 20.580734 20.593014l91.193978-21.113877 41.907459 101.08321-79.412654 49.590442c0.652869 9.662057 0.657986 19.429515 0.00921 29.112038l79.407538 49.532113-41.85527 101.126188-91.177606-21.122063c-6.372128 7.280824-13.277398 14.185071-20.577664 20.569478l21.147646 91.216491-101.08628 41.895179-49.599651-79.361489c-9.647731 0.651846-19.418258 0.655939-29.118178 0.008186L316.424184 670.604274zM225.773582 623.353111l87.051635 36.031635 48.378847-77.56968 2.725064 0.214894c11.037381 0.873903 22.191418 0.870834 33.154098-0.008186l2.725064-0.217964 48.450479 77.522608 87.018889-36.066427-20.659529-89.104387 2.080382-1.772366c8.410554-7.16519 16.297175-15.048741 23.436782-23.426549l1.771343-2.081405 89.061408 20.633946 36.030611-87.050612-77.567633-48.383964 0.216941-2.725064c0.876973-11.009751 0.873903-22.163789-0.011256-33.146934l-0.218988-2.727111 77.574796-48.443315-36.074613-87.013773-89.079828 20.623713-1.769296-2.076288c-7.218402-8.453533-15.103999-16.3422-23.442922-23.450085l-2.081405-1.772366 20.579711-89.035826-87.054705-36.029588-48.376801 77.56968-2.723018-0.215918c-11.029194-0.873903-22.185278-0.87595-33.153074-0.00307l-2.723018 0.216941L312.664557 86.291318l-87.022982 36.06438 20.649296 89.093131-2.076288 1.775436c-8.43409 7.203052-16.318664 15.089673-23.436782 23.435759l-1.77032 2.078335-89.080851-20.577664-36.027541 87.041402 77.56661 48.384987-0.213871 2.723018c-0.874927 11.060917-0.87288 22.213931 0.00921 33.147958l0.220011 2.725064-77.573773 48.446385 36.074613 87.015819 89.077781-20.62576 1.771343 2.078335c7.218402 8.456602 15.105023 16.343223 23.443945 23.449062l2.079358 1.77339L225.773582 623.353111zM306.475602 639.58991l-62.215994-25.753547 19.801998-85.699848-3.949962-3.118014c-11.661597-9.187243-22.356171-19.878746-31.777751-31.776727l-3.118014-3.931542-85.724407 19.854187-25.77913-62.206784 74.665537-46.6249-0.592494-4.988618c-1.76418-14.862499-1.768273-29.980825-0.010233-44.936445l0.583285-4.982478-74.66656-46.566572 25.75457-62.226227 85.736687 19.816325 3.114944-3.942799c9.249665-11.722996 19.938098-22.414499 31.764448-31.774681l3.940752-3.123131-19.874653-85.74078 62.194504-25.791409 46.619784 74.655304 4.990664-0.582261c14.916734-1.75497 30.036084-1.760087 44.939515-0.01228l4.990664 0.590448 46.562479-74.65735 62.21804 25.752524-19.803022 85.695754 3.946892 3.109828c11.683087 9.214872 22.37459 19.909445 31.782867 31.79003l3.112897 3.927449 85.727477-19.851117 25.777083 62.202691-74.668607 46.6249 0.596588 4.986571c1.766226 14.881942 1.77032 29.999245 0.013303 44.931329l-0.580215 4.987594 74.65735 46.569642-25.748431 62.219063-85.71929-19.862373-3.114944 3.956102c-9.219989 11.69025-19.911492 22.384823-31.778774 31.789007l-3.933589 3.116991 19.87363 85.726453-62.192458 25.78834-46.63411-74.607208-4.993734 0.582261c-14.880919 1.749854-29.995151 1.749854-44.918026 0.007163l-4.998851-0.595564L306.475602 639.58991zM254.73417 608.440469l48.143487 19.928888 45.563732-73.04769 10.656711 1.26276c14.22191 1.666966 28.632107 1.661849 42.822294-0.00614l10.649548-1.242294 45.613874 72.975035 48.126091-19.956517-19.441794-83.850733 8.394181-6.650467c11.322883-8.970302 21.512966-19.167548 30.29805-30.308283l6.646374-8.439206 83.854826 19.431561 19.927865-48.140417-73.031317-45.555545 1.24127-10.645454c1.676176-14.236236 1.672082-28.64234-0.010233-42.824341l-1.269923-10.650571 73.048713-45.61592-19.946284-48.13223-83.848687 19.416212-6.650467-8.385994c-8.975419-11.337209-19.166525-21.533432-30.29805-30.3134l-8.42795-6.638187 19.370163-83.83129-48.14144-19.926842-45.553499 73.036433-10.652618-1.260713c-14.20042-1.665942-28.615735-1.662873-42.837644 0.011256l-10.648524 1.245364-45.601594-73.025177-48.124044 19.956517 19.439748 83.863013-8.399297 6.659677c-11.281951 8.92937-21.474081 19.123546-30.293957 30.299073l-6.64842 8.413624-83.86199-19.384489-19.931958 48.154743 73.042573 45.548382-1.25048 10.646478c-1.675152 14.256702-1.672082 28.664853 0.008186 42.826388l1.2689 10.654664-73.046666 45.614897 19.948331 48.136324 83.84664-19.421328 6.650467 8.390088c8.990768 11.346419 19.183921 21.541619 30.299073 30.30112l8.425903 6.649444L254.73417 608.440469z"  ></path><path d="M319.700811 680.820963l-113.939005-47.159066 21.540595-93.192495c-4.981455-4.555759-9.797134-9.374508-14.387685-14.396895l-93.229335 21.588691L72.466963 433.764148l81.181951-50.699706c-0.304945-6.744611-0.306992-13.556761-0.004093-20.349467l-81.183997-50.639331 47.155996-113.927749 93.237521 21.537526c4.557806-4.981455 9.371438-9.794064 14.380522-14.376429l-21.614274-93.252871 113.90626-47.203068 50.689473 81.168648c6.763031-0.299829 13.561877-0.300852 20.346397 0.002047l50.632167-81.186044 113.940029 47.160089-21.537526 93.191472c4.984524 4.560876 9.800203 9.379625 14.387685 14.396895l93.229335-21.585621 47.218418 113.892957-81.183997 50.696636c0.306992 6.77224 0.309038 13.585413 0.00614 20.35356l81.179904 50.637284-47.161113 113.943099-93.217055-21.594831c-4.568039 4.993734-9.381671 9.80532-14.379499 14.373359l21.61939 93.251847-113.89705 47.204092-50.706869-81.131809c-6.770194 0.309038-13.57211 0.310062-20.3597 0.005117L319.700811 680.820963zM264.270361 603.527576l35.33067 14.625092 44.64378-71.572082 15.816221 1.874697c13.490246 1.581008 27.396977 1.579985 40.902572-0.007163l15.801894-1.842974 44.684712 71.489194 35.317367-14.645558-19.045775-82.144882 12.455683-9.867742c10.8143-8.567119 20.555152-18.311041 28.952402-28.960589l9.859555-12.518105 82.160231 19.037589 14.622022-35.323507-71.547523-44.629453 1.841951-15.795754c1.601474-13.603833 1.599428-27.366278-0.008186-40.911782l-1.88493-15.805988 71.575152-44.695968-14.638395-35.32146-82.137719 19.020192-9.867742-12.44238c-8.585539-10.842952-18.324344-20.588921-28.954449-28.972868l-12.502755-9.849322 18.978237-82.136695-35.3276-14.623046-44.632523 71.560826-15.812127-1.870604c-13.485129-1.582031-27.39493-1.579985-40.918945 0.01228l-15.802918 1.849114-44.673455-71.54036-35.313274 14.644535 19.043728 82.154092-12.458753 9.877975c-10.788717 8.538467-20.528546 18.278295-28.952402 28.955472l-9.866718 12.486382-82.158185-18.990516-14.627139 35.33988 71.562872 44.62536-1.855254 15.800871c-1.600451 13.619182-1.598404 27.381627 0.007163 40.906665l1.882883 15.811104-71.573105 44.694945 14.639418 35.32453 82.136695-19.024286 9.867742 12.449543c8.597819 10.851139 18.337647 20.593014 28.951379 28.956495l12.503778 9.866718L264.270361 603.527576z"  ></path><path d="M347.180676 453.205942c-44.318368-18.343787-65.448618-69.331042-47.107901-113.64327 18.342764-44.314275 69.324902-65.452711 113.644293-47.108924 44.315298 18.34174 65.443501 69.327972 47.102784 113.642247C442.478112 450.4072 391.495974 471.547683 347.180676 453.205942zM408.963811 303.937291c-37.989219-15.7231-81.681324 2.387373-97.40647 40.377616-15.724123 37.989219 2.38635 81.686441 40.375569 97.40954 37.985126 15.722076 81.682347-2.393513 97.40647-40.380686C465.06248 363.351472 446.948937 319.659367 408.963811 303.937291z"  ></path><path d="M380.326587 468.00295c-12.474103 0-24.680099-2.433422-36.277228-7.233752-48.489364-20.070104-71.609944-75.848479-51.540863-124.337843 14.779611-35.706223 49.343825-58.776661 88.056522-58.776661 12.476149 0 24.684192 2.434445 36.283368 7.235798 48.486294 20.068058 71.605851 75.845409 51.53677 124.33682C453.60452 444.932512 419.040307 468.00295 380.326587 468.00295zM380.543527 306.454624c-27.006074 0-51.116191 16.090467-61.422931 40.9916-6.768147 16.352433-6.752798 34.390251 0.044002 50.788733 6.797823 16.398482 19.546172 29.158087 35.898605 35.926234 8.087189 3.347235 16.593933 5.0449 25.28385 5.0449 27.00812 0.002047 51.120284-16.08842 61.428048-40.992623 13.994736-33.8172-2.128477-72.716138-35.942607-86.711897C397.742235 308.153312 389.233444 306.454624 380.543527 306.454624z"  ></path><path d="M342.949304 463.430818c-49.957809-20.677948-73.777307-78.143755-53.101405-128.101563 20.678972-49.957809 78.144778-73.777307 128.101563-53.099359 49.954739 20.674878 73.773214 78.139661 53.095265 128.098493C450.367803 460.285175 392.904043 484.10672 342.949304 463.430818zM404.732439 314.162166c-32.348756-13.388938-69.560262 2.036379-82.951247 34.385135-13.388938 32.350802 2.034333 69.563332 34.384112 82.95227 32.346709 13.388938 69.558216-2.036379 82.9492-34.388205C452.503443 364.761588 437.080172 327.550081 404.732439 314.162166z"  ></path><path d="M380.317377 479.07103c-13.925151 0-27.551496-2.716878-40.499389-8.075933C285.691229 448.590831 259.8814 386.327766 282.282596 332.198961c16.498766-39.857776 55.080479-65.611324 98.292654-65.611324 13.927197 0 27.554566 2.717901 40.504506 8.077979 26.180266 10.834766 46.589085 31.254841 57.466829 57.497529s10.899234 55.113225 0.062422 81.295538C462.111265 453.316459 423.529551 479.07103 380.317377 479.07103zM380.576273 282.960537c-36.564777 0-69.208245 21.785166-83.165118 55.499012-18.949584 45.786813 2.882654 98.455359 48.668443 117.405967 10.952446 4.533246 22.470781 6.831592 34.237779 6.831592 36.564777 0 69.208245-21.785166 83.163071-55.501058 9.16473-22.141276 9.144264-46.562479-0.058328-68.765153-9.202593-22.201651-26.463722-39.47506-48.603975-48.637744C403.864676 285.259906 392.343271 282.960537 380.576273 282.960537zM380.368542 444.512956c-0.00307 0-0.002047 0-0.00614 0-9.399067 0-18.593474-1.833765-27.327392-5.449106-36.519752-15.115256-53.933353-57.125045-38.818097-93.647867 11.131525-26.891464 37.162388-44.268226 66.316381-44.268226 9.398044 0 18.593474 1.833765 27.330462 5.449106 36.518728 15.115256 53.931307 57.122999 38.816051 93.644797C435.547259 427.134147 409.517419 444.512956 380.368542 444.512956zM380.533294 317.520657c-22.506597 0-42.59819 13.407358-51.187823 34.156938-11.662621 28.180829 1.772366 60.595077 29.951149 72.257697 6.738471 2.789533 13.826913 4.203742 21.066805 4.204765 0.001023 0 0.00307 0 0.004093 0 22.502503 0 42.593074-13.408381 51.182706-34.158984 11.662621-28.179806-1.772366-60.59303-29.949103-72.254627C394.860605 318.935889 387.772162 317.520657 380.533294 317.520657z"  ></path><path d="M675.608753 934.711418l-59.053977-32.720216 20.481474-57.772798c-5.079692-5.438872-9.759271-11.322883-13.973246-17.578354l-60.935838 6.975878-18.619056-64.87966 55.377238-26.39209c0.246617-7.466042 1.101077-14.941294 2.535753-22.307052l-48.018643-38.139645 32.715099-59.044768 57.803497 20.48352c5.454222-5.091972 11.33107-9.764388 17.567098-13.9712l-6.993275-60.94914 64.88273-18.61087 26.386974 55.362912c7.483438 0.25685 14.95255 1.113357 22.307052 2.543939l38.134529-48.018643 59.055001 32.717146-20.48352 57.779961c5.082762 5.436826 9.762341 11.319813 13.976316 17.575284l60.934814-6.978948 18.619056 64.880683-55.378262 26.38902c-0.24764 7.471159-1.094938 14.939247-2.534729 22.310122l48.019667 38.138622-32.719192 59.052954-57.788148-20.517289c-5.442966 5.083785-11.323906 9.766434-17.569144 13.966083l6.998391 60.953234-64.880683 18.611893-26.400277-55.345516c-7.491625-0.248663-14.956643-1.102101-22.311145-2.537799L675.608753 934.711418zM636.750747 894.345058l34.632775 19.191084 35.891442-45.194318 5.081739 1.201361c9.463536 2.211365 19.188015 3.323699 28.907377 3.288906l5.215792-0.013303 24.840758 52.071959 38.053688-10.923794-6.582929-57.32766 4.426823-2.75474c8.329712-5.180999 15.993253-11.278881 22.777773-18.119683l3.682879-3.718695 54.373375 19.310811 19.186991-34.632775-45.183062-35.889395 1.188058-5.080715c2.229784-9.489118 3.332908-19.207457 3.28686-28.90226l-0.026606-5.219885 52.113915-24.834618-10.915607-38.055734-57.325613 6.568602-2.752694-4.425799c-5.191232-8.349155-11.287067-16.010649-18.114566-22.780843l-3.710508-3.677762 19.267832-54.366212-34.633798-19.186991-35.885302 45.185108-5.080715-1.196245c-9.469676-2.221598-19.198248-3.325745-28.913517-3.292999l-5.217838 0.01842-24.828478-52.102658-38.052664 10.92584 6.580882 57.334823-4.436032 2.758834c-8.299013 5.15951-15.966647 11.262508-22.768563 18.11252l-3.677762 3.702322-54.385655-19.278065-19.191084 34.638915 45.191248 35.883255-1.192152 5.081739c-2.224668 9.491165-3.334955 19.213597-3.288906 28.903284l0.023536 5.225001-52.112891 24.834618 10.917654 38.051641 57.323567-6.563486 2.753717 4.425799c5.192256 8.348132 11.287067 16.008602 18.11559 22.776749l3.708462 3.681856L636.750747 894.345058z"  ></path><path d="M758.050394 954.352757l-27.282367-57.196677c-4.558829-0.308015-9.121751-0.827855-13.648858-1.554402l-39.412638 49.630351-71.185272-39.441291 21.169135-59.711963c-2.99931-3.438309-5.856381-7.034207-8.544607-10.751878l-62.97631 7.210215-22.444175-78.209246 57.229422-27.27418c0.306992-4.548596 0.826831-9.108448 1.553379-13.641695l-49.627281-39.418778 39.435151-71.175039 59.742662 21.170159c3.435239-2.997264 7.027044-5.852288 10.739599-8.540514l-7.227612-62.992683 78.214363-22.433942 27.27111 57.218166c4.552689 0.311085 9.113565 0.831948 13.638625 1.556449l39.412638-49.628304 71.186296 39.438221-21.170159 59.716057c2.99931 3.435239 5.857405 7.031137 8.546653 10.750855l62.974263-7.213285 22.445198 78.210269-57.230446 27.27111c-0.306992 4.560876-0.825808 9.123798-1.551332 13.645788l49.628304 39.415708-39.442314 71.186296-59.725266-21.205974c-3.444449 3.00545-7.03523 5.859451-10.739599 8.537444l7.231705 62.992683L758.050394 954.352757zM710.428793 877.699959l4.88424 0.954745c6.931876 1.352811 14.002922 2.157129 21.013593 2.390443l4.974291 0.165776 25.559119 53.581336 51.55212-14.788821-6.77531-59.009975 4.13211-2.780323c5.840008-3.927449 11.407817-8.353248 16.550954-13.155624l3.63683-3.396353 55.940057 19.860327 25.995047-46.919613-46.485731-36.919864 0.953721-4.88424c1.350764-6.92062 2.153036-13.989619 2.38635-21.012569l0.165776-4.976338 53.614082-25.547863-14.793938-51.55212-58.989509 6.756891-2.7793-4.124947c-3.958148-5.875824-8.388041-11.447726-13.166881-16.558118l-3.3984-3.635807 19.828604-55.93494-46.922682-25.996071-36.914748 46.483684-4.882194-0.950651c-6.942109-1.350764-14.015202-2.157129-21.023826-2.39863l-4.969175-0.170892-25.543769-53.592592-51.55212 14.786775 6.769171 58.997696-4.120854 2.780323c-5.867638 3.958148-11.43954 8.389064-16.560164 13.168927l-3.634784 3.39226-55.955406-19.827581-25.994024 46.915519 46.483684 36.920888-0.950651 4.881171c-1.353834 6.956436-2.157129 14.026458-2.38942 21.013593l-0.163729 4.976338-53.614082 25.551956 14.794961 51.551096 58.989509-6.753821 2.7793 4.124947c3.956102 5.871731 8.385994 11.44568 13.166881 16.565281l3.394307 3.634784-19.825534 55.924707 46.922682 25.998117L710.428793 877.699959zM766.916319 934.671509l-25.632797-53.653991-0.464581 0.001023c-10.171664 0-20.37505-1.178849-30.325679-3.504824l-0.041956-0.010233-36.97103 46.553269-46.762023-25.91216 19.84907-56.009641-0.026606-0.026606c-7.281847-7.218402-13.776771-15.382339-19.299555-24.26259l-0.017396-0.027629-59.066257 6.763031-14.741749-51.380204 53.683666-25.614377c-0.049119-10.311857 1.12973-20.677948 3.504824-30.80868l0.007163-0.029676-46.557362-36.968983 25.91216-46.769186 56.033178 19.86135 0.022513-0.022513c7.262404-7.312546 15.422248-13.805424 24.254404-19.295462l0.033769-0.021489-6.780427-59.075467 51.383274-14.753005 25.610284 53.680597 0.450255-0.001023c10.217712 0 20.432355 1.180895 30.360472 3.510964l0.030699 0.007163 36.966936-46.547129 46.76407 25.907043-19.84907 56.006572 0.022513 0.022513c7.290033 7.228635 13.783934 15.394618 19.303648 24.2718l0.016373 0.025583 59.06728-6.768147 14.738679 51.387367-53.680597 25.604144c0.049119 10.344602-1.12973 20.711717-3.5038 30.816866l-0.00614 0.022513 46.552246 36.977169-25.90909 46.766117-56.012711-19.892049-0.023536 0.023536c-7.239891 7.300266-15.404852 13.795191-24.270776 19.310811l-0.026606 0.017396 6.782473 59.07035L766.916319 934.671509zM751.638357 864.619036l24.086581 50.489928 24.725124-7.097652-6.382361-55.585993 8.824993-5.492084c7.788383-4.844332 14.950504-10.5421 21.291932-16.934694l7.336082-7.407714 52.733015 18.729573 12.464893-22.49841-43.813878-34.802644 2.367931-10.128685c2.082428-8.861832 3.114944-17.942651 3.071965-26.999934l-0.054235-10.413164 50.547233-24.087605-7.092535-24.725124-55.582923 6.369058-5.489014-8.824993c-4.848425-7.797593-10.544147-14.960737-16.927531-21.291932l-7.397481-7.330966 18.686594-52.724829-22.502503-12.466939-34.80469 43.823088-10.135848-2.38635c-8.698103-2.040473-17.654079-3.076058-26.615171-3.076058l-10.79895 0.036839-24.076348-50.52472-24.721031 7.098675 6.380314 55.594179-8.836249 5.496178c-7.755638 4.821819-14.915711 10.516518-21.283746 16.929578l-7.333012 7.383154-52.739155-18.694781-12.470009 22.50762 43.825135 34.798551-2.378164 10.134825c-2.080382 8.881274-3.114944 17.96414-3.071965 26.994818l0.048095 10.420327-50.542116 24.085558 7.093559 24.722054 55.579853-6.363941 5.490038 8.822946c4.851495 7.800663 10.54824 14.96176 16.928554 21.287839l7.394411 7.340175-18.682501 52.720735 22.502503 12.470009 34.812877-43.835368 10.141988 2.397606c8.710382 2.035356 17.660218 3.069919 26.579355 3.069919L751.638357 864.619036z"  ></path><path d="M676.371116 938.539606l-63.46852-35.161824 20.723997-58.464553c-4.301979-4.722558-8.329712-9.792017-12.011568-15.107069l-61.656245 7.058766-20.012799-69.734224 56.032154-26.703175c0.293689-6.387477 1.025353-12.822027 2.179642-19.174712l-48.587602-38.593993 35.161824-63.460334 58.492182 20.726044c4.727675-4.303003 9.794064-8.333806 15.09786-12.008498l-7.074116-61.669548 69.735248-20.007683 26.698059 56.021921c6.405897 0.300852 12.8384 1.036609 19.175735 2.189875l38.585807-48.590672 63.469544 35.164894-20.722974 58.46046c4.303003 4.728698 8.334829 9.797134 12.010545 15.112186l61.656245-7.058766 20.015869 69.732178-56.034201 26.702152c-0.296759 6.41613-1.028423 12.849656-2.181689 19.175735l48.585555 38.593993-35.161824 63.470567-58.476833-20.761859c-4.744048 4.316306-9.80839 8.346085-15.098883 12.003382l7.081279 61.673641-69.734224 20.004613-26.712385-56.000432c-6.40385-0.295735-12.8384-1.027399-19.179828-2.181689L676.371116 938.539606zM620.205932 900.609739l54.636365 30.271444 37.693484-47.464011 1.778506 0.344854c7.204076 1.407046 14.552437 2.242064 21.838378 2.486634l1.813299 0.061398 26.093285 54.703903 60.028165-17.22122-6.91755-60.245106 1.50426-1.011027c6.076392-4.092201 11.862165-8.69094 17.197684-13.675464l1.324158-1.235131 57.114812 20.278859 30.271444-54.635341-47.461965-37.694507 0.347924-1.779529c1.403976-7.187703 2.238994-14.532995 2.482541-21.836331l0.060375-1.812275 54.735625-26.082028L917.520385 664.036695l-60.226686 6.892991-1.011027-1.49812c-4.117784-6.115278-8.719592-11.901051-13.679557-17.20894l-1.239224-1.325182 20.244067-57.101509-54.638411-30.275537-37.692461 47.466058-1.775436-0.346901c-7.199982-1.403976-14.549368-2.242064-21.840424-2.493797l-1.809205-0.060375-26.076912-54.722322-60.030212 17.220197 6.91141 60.237943-1.502213 1.013073c-6.096858 4.112668-11.880585 8.714476-17.198707 13.680581l-1.323135 1.234107-57.134255-20.246113-30.266327 54.630225 47.458895 37.697577-0.344854 1.77646c-1.408069 7.220449-2.241041 14.564717-2.483564 21.834284l-0.058328 1.812275-54.739718 26.085098 17.23043 60.025095 60.225663-6.892991 1.010003 1.50119c4.117784 6.113231 8.722662 11.902074 13.681604 17.206894l1.237177 1.324158L620.205932 900.609739zM672.146908 917.363308l-39.048341-21.636786 19.478633-54.964846-2.367931-2.348488c-6.992251-6.92983-13.231349-14.774495-18.545378-23.319102l-1.75804-2.823302-57.960063 6.639211-12.30935-42.908252 52.68492-25.105794-0.016373-3.331885c-0.046049-9.924024 1.087774-19.880793 3.367701-29.601178l0.759293-3.240811-45.687552-36.278251 21.638833-39.057551 54.984289 19.495006 2.348488-2.364861c6.973832-7.028067 14.81645-13.266142 23.310915-18.544355l2.829442-1.763157-6.649444-57.96825 42.901089-12.317537 25.103748 52.674687 3.329838-0.008186c9.957793-0.034792 19.919678 1.094938 29.604248 3.366677l3.244904 0.765433 36.276205-45.681412 39.050388 21.633716L829.239759 653.637858l2.366907 2.344395c7.002484 6.947226 13.241582 14.794961 18.547425 23.327288l1.757017 2.824325 57.96211-6.640234 12.30628 42.909276-52.685943 25.103748 0.01842 3.328815c0.044002 9.939373-1.087774 19.895119-3.363607 29.602202l-0.759293 3.237741 45.684482 36.283368-21.63781 39.049365-54.972009-19.518542-2.348488 2.372024c-6.952342 7.007601-14.795984 13.249769-23.319102 18.550495l-2.824325 1.76111 6.653537 57.963133-42.906206 12.314467-25.118074-52.646034-3.331885 0.00921c-9.933233 0.035816-19.890003-1.098008-29.587875-3.369747l-3.247974-0.765433L672.146908 917.363308zM640.401904 892.961548l30.216185 16.739243 35.498492-44.694945 6.92676 1.632173c9.240455 2.168386 18.73469 3.245927 28.207435 3.213181l7.105838-0.01842 24.566512 51.495838 33.200146-9.532097-6.509251-56.694233 6.031367-3.748371c8.128121-5.058203 15.608489-11.011798 22.23235-17.689894l5.013177-5.060249 53.776787 19.097964 16.741289-30.213116-44.687782-35.495422 1.61887-6.919597c2.172479-9.250688 3.25309-18.738783 3.209088-28.207435l-0.034792-7.110955 51.540863-24.562419-9.522887-33.203216-56.691163 6.493901-3.752464-6.024204c-5.058203-8.140401-11.006681-15.623839-17.678638-22.242584l-5.055133-5.003967 19.054985-53.768601-30.214139-16.740266-35.492352 44.688805-6.921643-1.629103c-9.228175-2.163269-18.726503-3.246951-28.218692-3.212158l-7.105838 0.021489-24.555256-51.52449-33.199123 9.530051 6.510274 56.69935-6.036483 3.756557c-8.099469 5.03569-15.58086 10.985192-22.228257 17.681708l-5.013177 5.045923-53.784974-19.068288-16.746406 30.223349 44.695968 35.489282-1.623987 6.916527c-2.173502 9.268084-3.254114 18.759249-3.211135 28.212552l0.036839 7.113001-51.54291 24.561395 9.526981 33.207309 56.689117-6.500041 3.747347 6.02625c5.072529 8.15575 11.021008 15.634072 17.681708 22.237467l5.055133 5.012154L640.401904 892.961548z"  ></path><path d="M756.446873 957.913862 728.822722 900.000871c-3.486404-0.276293-6.976902-0.672312-10.44591-1.188058l-39.906895 50.248428-75.600839-41.882899 21.433148-60.465117c-2.25946-2.65241-4.444219-5.399987-6.537903-8.226359l-63.763233 7.30129-23.837918-83.062787 57.944713-27.613918c0.276293-3.480264 0.672312-6.969739 1.188058-10.43977l-50.249451-39.913035 41.883923-75.589582 60.493769 21.435195c2.65548-2.263553 5.399987-4.447289 8.215102-6.53381l-7.315616-63.778582 83.065857-23.831778 27.610848 57.938574c3.483334 0.277316 6.971785 0.676405 10.438747 1.193175l39.903825-50.251497 75.601862 41.886993-21.433148 60.46307c2.267647 2.661619 4.453429 5.411243 6.53995 8.228405l63.761186-7.300266 23.842011 83.060741-57.948807 27.613918c-0.276293 3.489474-0.672312 6.977925-1.187035 10.440793l50.245358 39.912012-41.883923 75.604932-60.479443-21.473057c-2.663666 2.269693-5.40715 4.452405-8.213056 6.53074l7.322779 63.778582L756.446873 957.913862zM753.516124 861.634052l23.812335 49.913806 19.872606-5.705955-6.309706-54.955636 10.43363-6.485715c7.581676-4.717442 14.560624-10.270924 20.741393-16.501836l8.668427-8.749268 52.135404 18.515702 10.018168-18.079774-43.318598-34.407648 2.799766-11.968589c2.028193-8.634658 3.035126-17.483186 2.994194-26.305109l-0.060375-12.304234 49.972135-23.814382-5.699816-19.87363-54.94438 6.293333-6.489808-10.41828c-4.726651-7.606235-10.275018-14.58723-16.495696-20.75879l-8.742105-8.652054 18.47477-52.131311-18.08489-10.019191-34.408671 43.325761-11.977799-2.819209c-8.472975-1.986237-17.188474-2.995217-25.897833-2.995217l-12.71151 0.036839-23.803125-49.943482-19.868513 5.702885 6.310729 54.957683-10.435677 6.493901c-7.567349 4.705162-14.545274 10.254551-20.74344 16.498766l-8.67252 8.726755-52.135404-18.48398-10.025331 18.092054 43.330878 34.404578-2.811022 11.970636c-2.026146 8.640798-3.034103 17.492396-2.994194 26.304086l0.064468 12.304234-49.975205 23.813359 5.701862 19.877723 54.94745-6.299473 6.484691 10.425444c4.732791 7.609305 10.282181 14.5903 16.492626 20.74651l8.743128 8.668427-18.475793 52.125171 18.086937 10.019191 34.417881-43.333948 11.982916 2.823302c8.466835 1.987261 17.186428 2.996241 25.908066 2.996241L753.516124 861.634052z"  ></path><path d="M712.957383 797.647739c-27.817556-15.410991-37.905308-50.584072-22.497387-78.395488 15.412015-27.814486 50.579979-37.906332 78.395488-22.49841 27.814486 15.414061 37.904285 50.583049 22.493294 78.399581C775.939833 802.961768 740.768799 813.05873 712.957383 797.647739zM764.863567 703.964056c-23.843034-13.210883-53.984518-4.564969-67.196425 19.281135-13.20986 23.844058-4.560876 53.987588 19.282159 67.197448 23.842011 13.207813 53.984518 4.555759 67.196425-19.283182C797.354562 747.313354 788.702508 717.171869 764.863567 703.964056z"  ></path><path d="M740.804614 813.048497c-11.084453 0-22.086018-2.849908-31.815613-8.241708-31.763424-17.59575-43.288922-57.756425-25.690102-89.522919 11.597129-20.929682 33.708729-33.930787 57.70833-33.930787 11.084453 0 22.086018 2.848884 31.815613 8.238638 31.762401 17.600867 43.285852 57.763588 25.689079 89.528036C786.912745 800.047392 764.802168 813.048497 740.804614 813.048497zM740.986763 705.963597c-15.041578 0-28.897144 8.142447-36.158525 21.248953-11.022031 19.894096-3.805676 45.046962 16.08842 56.068993 6.089695 3.373841 12.972453 5.157463 19.903306 5.158487 0.001023 0 0.002047 0 0.00307 0 15.041578 0 28.898167-8.142447 36.162618-21.248953 11.019984-19.893072 3.802606-45.045939-16.089443-56.065923C754.80242 707.748243 747.918639 705.963597 740.986763 705.963597z"  ></path><path d="M709.400371 804.064892c-31.355125-17.371646-42.72815-57.012482-25.357528-88.369653 17.373693-31.354102 57.016575-42.727127 88.3717-25.356504 31.351032 17.372669 42.727127 57.011458 25.353434 88.367607C780.397355 810.060443 740.754472 821.437561 709.400371 804.064892zM761.307577 710.379163c-20.302395-11.248182-45.973054-3.8814-57.223283 16.423041-11.248182 20.305465-3.880377 45.974078 16.420995 57.223283 20.302395 11.248182 45.972031 3.879354 57.222259-16.422018C788.97573 747.300051 781.610996 721.630415 761.307577 710.379163z"  ></path><path d="M740.795405 820.384579c-12.319583 0-24.548092-3.167133-35.362392-9.15859-35.300994-19.557428-48.109718-64.191998-28.551266-99.497085 12.888542-23.260773 37.46324-37.71088 64.135716-37.71088 12.320607 0 24.549116 3.168156 35.365462 9.15859 35.299971 19.560498 48.106648 64.194044 28.547173 99.496062C792.041556 805.934472 767.466857 820.384579 740.795405 820.384579zM741.017462 690.390923c-20.721951 0-39.808658 11.216459-49.813522 29.27065-15.182794 27.408233-5.240351 62.059428 22.163789 77.241198 8.392134 4.649903 17.877159 7.107885 27.427676 7.107885 20.720927 0 39.808658-11.216459 49.812499-29.272697 15.184841-27.405163 5.243421-62.055334-22.160719-77.240175C760.054027 692.849928 750.569002 690.390923 741.017462 690.390923zM740.83429 797.47787c-0.001023 0-0.002047 0-0.00307 0-8.464789 0-16.865109-2.175549-24.293289-6.290263-24.25031-13.438057-33.048697-44.100404-19.614733-68.351738 8.854669-15.980973 25.736151-25.908066 44.056402-25.908066 8.464789 0 16.866133 2.175549 24.295336 6.291287 24.25031 13.438057 33.048697 44.100404 19.61371 68.352761C776.03193 787.550777 759.151471 797.47787 740.83429 797.47787zM740.9796 713.299679c-12.369725 0-23.76424 6.694469-29.734208 17.469883-9.060353 16.35448-3.1262 37.032428 13.228279 46.095851 5.006014 2.77316 10.662851 4.239558 16.358573 4.239558 12.368702 0.001023 23.763217-6.692423 29.735232-17.46886 9.060353-16.35448 3.127224-37.032428-13.228279-46.095851C752.332159 714.7671 746.675322 713.299679 740.9796 713.299679z"  ></path></symbol><symbol id="httpicon-yonghuguanli" viewBox="0 0 1131 1024"><path d="M745.427267 506.826105a323.476211 323.476211 0 0 0-160.768 467.375158L3.296741 972.584421A485.214316 485.214316 0 0 1 301.873583 466.997895a269.473684 269.473684 0 1 1 366.645895 0c26.947368 11.048421 52.655158 24.414316 76.961684 39.882105z m-62.194526 65.320421c24.414316-21.557895 53.140211-38.265263 84.776421-48.666947 17.785263 22.204632 45.109895 36.432842 75.776 36.432842s57.990737-14.228211 75.776-36.432842a242.256842 242.256842 0 0 1 85.908211 49.690947 96.848842 96.848842 0 0 0 6.359579 83.752421c15.306105 26.570105 41.283368 43.115789 69.416421 47.427369a243.604211 243.604211 0 0 1 0.053894 98.896842 96.848842 96.848842 0 0 0-69.52421 47.427368 96.848842 96.848842 0 0 0-6.25179 83.968c-24.737684 22.204632-54.056421 39.343158-86.393263 49.906527a96.848842 96.848842 0 0 0-75.883789-36.594527c-30.558316 0-57.882947 14.174316-75.668211 36.325053a242.364632 242.364632 0 0 1-89.249684-53.032421 96.794947 96.794947 0 0 0-6.898526-82.458947c-14.551579-25.330526-38.804211-41.498947-65.374316-46.726737a243.658105 243.658105 0 0 1 1.401263-102.777263 96.794947 96.794947 0 0 0 68.015158-47.157895c14.605474-25.276632 16.545684-54.379789 7.760842-79.97979z m160.606316 278.797474a97.010526 97.010526 0 1 0 0-194.021053 97.010526 97.010526 0 0 0 0 194.021053z" fill="#64676F" ></path></symbol><symbol id="httpicon-rizhiguanli" viewBox="0 0 1024 1024"><path d="M504.552727 867.607273H203.869091a33.047273 33.047273 0 0 1-31.185455-34.443637v-213.876363h40.261819a34.909091 34.909091 0 0 0 0-69.818182H172.683636v-160.116364h40.261819a34.909091 34.909091 0 1 0 0-69.818182H172.683636V142.196364a33.047273 33.047273 0 0 1 31.185455-34.676364h624.174545a33.047273 33.047273 0 0 1 31.185455 34.676364v333.498181a34.909091 34.909091 0 0 0 69.818182 0V142.196364a103.098182 103.098182 0 0 0-101.003637-104.494546H203.869091a103.098182 103.098182 0 0 0-101.003636 104.494546v177.338181H69.818182a34.909091 34.909091 0 0 0 0 69.818182h33.047273v160.116364H69.818182a34.909091 34.909091 0 0 0 0 69.818182h33.047273v213.876363a102.865455 102.865455 0 0 0 101.003636 104.261819h300.683636a34.909091 34.909091 0 0 0 0-69.818182z"  ></path><path d="M726.109091 288.814545a34.909091 34.909091 0 0 0-34.909091-34.90909H329.774545a34.909091 34.909091 0 1 0 0 69.818181H691.2a34.909091 34.909091 0 0 0 34.909091-34.909091zM329.774545 415.650909a34.909091 34.909091 0 0 0 0 69.818182H605.090909a34.909091 34.909091 0 0 0 0-69.818182zM525.265455 577.163636h-195.49091a34.909091 34.909091 0 1 0 0 69.818182h195.49091a34.909091 34.909091 0 0 0 0-69.818182zM947.2 749.614545l-74.24-128.930909a29.789091 29.789091 0 0 0-25.367273-14.429091H698.181818a29.090909 29.090909 0 0 0-25.134545 14.429091l-74.472728 128.930909a28.392727 28.392727 0 0 0 0 29.09091L674.909091 907.636364a28.858182 28.858182 0 0 0 25.134545 14.661818h148.712728a29.323636 29.323636 0 0 0 24.203636-14.661818l74.24-128.930909a28.392727 28.392727 0 0 0 0-29.09091z m-116.363636 114.501819h-116.363637l-57.716363-99.84 57.716363-99.84h116.363637l57.716363 99.84z"  ></path><path d="M773.352727 691.432727a72.843636 72.843636 0 1 0 72.610909 72.843637 72.843636 72.843636 0 0 0-72.610909-72.843637z m0 87.505455a14.661818 14.661818 0 0 1-14.661818-14.661818 14.661818 14.661818 0 1 1 14.661818 14.661818z"  ></path></symbol><symbol id="httpicon-icon-test" viewBox="0 0 1024 1024"><path d="M214.3 363.2c-16.4 0-29.8 13.3-29.8 29.8v238.1c0 16.4 13.3 29.8 29.8 29.8s29.8-13.3 29.8-29.8V392.9c0-16.4-13.3-29.7-29.8-29.7zM333.4 363.2c-16.4 0-29.8 13.3-29.8 29.8v238.1c0 16.4 13.3 29.8 29.8 29.8s29.8-13.3 29.8-29.8V392.9c0-16.4-13.4-29.7-29.8-29.7z" fill="#666666" ></path><path d="M899 378h-59.5v-59.5c0-32.8-26.7-59.5-59.5-59.5H125c-32.8 0-59.5 26.7-59.5 59.5v387c0 32.8 26.7 59.5 59.5 59.5h654.9c32.8 0 59.5-26.7 59.5-59.5V646H899c32.8 0 59.5-26.7 59.5-59.5V437.6c0-32.8-26.7-59.6-59.5-59.6zM125 705.5v-387h654.9v386.9H125z m714.4-119.1V437.6H899v148.8h-59.6z" fill="#666666" ></path></symbol><symbol id="httpicon-wuxinhao" viewBox="0 0 1024 1024"><path d="M149.89062473 610.43750027h70.31250054v210.9375h-70.31250054zM290.515625 504.96875027h70.31249973v316.40625h-70.31249973zM431.14062527 399.50000027h70.31249973v421.875h-70.31249973zM571.76562473 294.03125027h70.31250054v527.34375h-70.31250054zM712.390625 188.56250027h70.31249973v632.8125h-70.31249973z" fill="" ></path><path d="M144.77539035 157.22070285L204.43554715 97.54296902 917.87890652 811.00390625l-59.66015679 59.66015598z" fill="#FFFFFF" ></path><path d="M101.97265652 209.70898465l49.72851563-49.72851563 703.5117182 703.51171821-49.72851562 49.72851562z" fill="#29ABE2" ></path></symbol><symbol id="httpicon-xinhao38" viewBox="0 0 1024 1024"><path d="M476.65047493 836.0373136h-117.83174977V541.45793709c0-32.40373178 26.51214381-58.91587557 58.9158742-58.91587418s58.91587557 26.51214381 58.91587557 58.91587418v294.57937651zM285.17388034 836.0373136h-117.83174977v-176.74762535c0-32.40373178 26.51214381-58.91587557 58.91587557-58.91587557s58.91587557 26.51214381 58.9158742 58.91587557v176.74762535zM665.18127484 836.0373136h-117.83174977V423.62618732c0-32.40373178 26.51214381-58.91587557 58.91587557-58.91587557s58.91587557 26.51214381 58.9158742 58.91587557v412.41112628zM856.65786943 836.0373136h-117.83174977V246.87856197c0-32.40373178 26.51214381-58.91587557 58.9158742-58.91587557s58.91587557 26.51214381 58.91587557 58.91587557v589.15875163z" fill="#4BB9A9" ></path></symbol><symbol id="httpicon-dianchi-didianliang" viewBox="0 0 1024 1024"><path d="M789.333333 213.333333h-682.666666C46.933333 213.333333 0 260.266667 0 320v384C0 763.733333 46.933333 810.666667 106.666667 810.666667h682.666666c59.733333 0 106.666667-46.933333 106.666667-106.666667v-384C896 260.266667 849.066667 213.333333 789.333333 213.333333z m21.333334 490.666667c0 12.8-8.533333 21.333333-21.333334 21.333333h-682.666666c-12.8 0-21.333333-8.533333-21.333334-21.333333v-384c0-12.8 8.533333-21.333333 21.333334-21.333333h682.666666c12.8 0 21.333333 8.533333 21.333334 21.333333v384z"  ></path><path d="M204.8 384c-25.6 0-42.666667 17.066667-42.666667 42.666667v170.666666c0 25.6 17.066667 42.666667 42.666667 42.666667s42.666667-17.066667 42.666667-42.666667v-170.666666c0-25.6-17.066667-42.666667-42.666667-42.666667zM981.333333 384h-42.666666v256h42.666666c25.6 0 42.666667-17.066667 42.666667-42.666667v-170.666666c0-25.6-17.066667-42.666667-42.666667-42.666667z"  ></path></symbol><symbol id="httpicon-mendoor13" viewBox="0 0 1024 1024"><path d="M825.06752 71.8336l-512 0c-11.30496 0-20.48 9.17504-20.48 20.48l0 306.18624 28.17024 0c-8.46848-10.81344-13.06624-24.064-13.06624-38.01088-0.01024-16.51712 6.43072-32.0512 18.11456-43.7248 2.4064-2.4064 5.02784-4.54656 7.75168-6.5024L333.55776 112.7936l471.04 0 0 14.71488-215.04 156.12928 0 668.53888 216.20736-156.9792c2.75456 8.06912 10.31168 13.91616 19.31264 13.91616 11.30496 0 20.48-9.17504 20.48-20.48l0-696.32C845.54752 80.9984 836.38272 71.8336 825.06752 71.8336zM670.79168 633.47712c-9.65632 0-17.70496-11.9296-19.78368-27.89376l-23.06048 0 0-17.92 23.38816 0c2.44736-14.99136 10.17856-26.01984 19.44576-26.01984 11.22304 0 20.31616 16.0768 20.31616 35.92192C691.10784 617.40032 682.01472 633.47712 670.79168 633.47712zM325.81632 603.86304c2.4064 2.39616 5.0176 4.52608 7.7312 6.47168l0 178.29888c0 11.30496-9.17504 20.48-20.48 20.48s-20.48-9.17504-20.48-20.48L292.58752 522.09664l28.17024 0C301.83424 546.33472 303.50336 581.53984 325.81632 603.86304zM472.29952 441.30304c8.15104 8.15104 8.15104 21.32992 0 29.48096l-99.80928 99.81952c-4.06528 4.05504-9.40032 6.10304-14.73536 6.11328-5.33504-0.01024-10.67008-2.048-14.73536-6.11328-8.1408-8.1408-8.13056-21.34016 0-29.47072l64.24576-64.24576-207.9744 0c-11.50976 0-20.8384-9.32864-20.8384-20.8384s9.3184-20.8384 20.84864-20.8384l207.95392 0-64.23552-64.24576c-8.13056-8.13056-8.1408-21.32992 0-29.46048 8.1408-8.1408 21.34016-8.1408 29.48096 0L472.29952 441.30304z"  ></path></symbol><symbol id="httpicon-men" viewBox="0 0 1024 1024"><path d="M761.344 119.296H226.816c-18.944 0-39.424 11.776-39.424 30.72V921.6h614.4V148.48c0.512-18.944-22.016-29.184-40.448-29.184z m-537.6 768c-2.048 0-2.048 0 0 0L221.696 163.84c0-5.12 5.12-10.24 10.24-10.24h522.24c8.704 0 13.824 5.12 13.824 13.824v720.384s0 1.536-1.536 1.536h-15.36V194.56c0-16.896-8.704-24.064-29.184-24.064H266.24c-18.944 0-27.136 8.704-27.136 24.064v692.736h-15.36z m49.152 0V204.8H716.8v682.496H272.896z"  ></path><path d="M648.704 508.416c-16.896 0-32.256 13.824-32.256 32.256 0 16.896 13.824 32.256 32.256 32.256s32.256-13.824 32.256-32.256c0-16.896-13.824-32.256-32.256-32.256z"  ></path></symbol><symbol id="httpicon-liebiao" viewBox="0 0 1024 1024"><path d="M187.392 70.656q28.672 0 48.64 19.456t19.968 48.128l0 52.224q0 28.672-19.968 48.64t-48.64 19.968l-54.272 0q-27.648 0-47.616-19.968t-19.968-48.64l0-52.224q0-28.672 19.968-48.128t47.616-19.456l54.272 0zM889.856 70.656q27.648 0 47.616 19.456t19.968 48.128l0 52.224q0 28.672-19.968 48.64t-47.616 19.968l-437.248 0q-28.672 0-48.64-19.968t-19.968-48.64l0-52.224q0-28.672 19.968-48.128t48.64-19.456l437.248 0zM187.392 389.12q28.672 0 48.64 19.968t19.968 48.64l0 52.224q0 27.648-19.968 47.616t-48.64 19.968l-54.272 0q-27.648 0-47.616-19.968t-19.968-47.616l0-52.224q0-28.672 19.968-48.64t47.616-19.968l54.272 0zM889.856 389.12q27.648 0 47.616 19.968t19.968 48.64l0 52.224q0 27.648-19.968 47.616t-47.616 19.968l-437.248 0q-28.672 0-48.64-19.968t-19.968-47.616l0-52.224q0-28.672 19.968-48.64t48.64-19.968l437.248 0zM187.392 708.608q28.672 0 48.64 19.968t19.968 47.616l0 52.224q0 28.672-19.968 48.64t-48.64 19.968l-54.272 0q-27.648 0-47.616-19.968t-19.968-48.64l0-52.224q0-27.648 19.968-47.616t47.616-19.968l54.272 0zM889.856 708.608q27.648 0 47.616 19.968t19.968 47.616l0 52.224q0 28.672-19.968 48.64t-47.616 19.968l-437.248 0q-28.672 0-48.64-19.968t-19.968-48.64l0-52.224q0-27.648 19.968-47.616t48.64-19.968l437.248 0z"  ></path></symbol><symbol id="httpicon-liebiao1" viewBox="0 0 1024 1024"><path d="M116.258455 465.03382h232.51505A116.257525 116.257525 0 0 0 465.03103 348.776295v-232.51505A116.257525 116.257525 0 0 0 348.773505 0.00372h-232.51505A116.257525 116.257525 0 0 0 0.00093 116.261245v232.51505A116.257525 116.257525 0 0 0 116.258455 465.03382zM93.00695 116.261245a23.251505 23.251505 0 0 1 23.251505-23.251505h232.51505a23.251505 23.251505 0 0 1 23.251505 23.251505v232.51505a23.251505 23.251505 0 0 1-23.251505 23.251505h-232.51505a23.251505 23.251505 0 0 1-23.251505-23.251505zM907.739685 0.00372h-232.51505A116.257525 116.257525 0 0 0 558.03705 116.726275v232.51505a116.722555 116.722555 0 0 0 116.257525 116.257525h232.51505a116.722555 116.722555 0 0 0 116.257525-116.257525v-232.51505A116.722555 116.722555 0 0 0 907.739685 0.00372z m23.251505 348.772575a23.716535 23.716535 0 0 1-23.251505 23.251505h-232.51505a23.251505 23.251505 0 0 1-23.251505-23.251505v-232.51505a23.251505 23.251505 0 0 1 23.251505-23.251505h232.51505a23.251505 23.251505 0 0 1 23.251505 23.251505zM907.739685 558.03984h-232.51505a116.257525 116.257525 0 0 0-116.257525 116.257525v232.51505a116.722555 116.722555 0 0 0 116.257525 116.257525h232.51505a116.722555 116.722555 0 0 0 116.257525-116.257525v-232.51505a116.722555 116.722555 0 0 0-116.257525-116.257525z m23.251505 348.772575a23.716535 23.716535 0 0 1-23.251505 23.251505h-232.51505a23.251505 23.251505 0 0 1-23.251505-23.251505v-232.51505a23.251505 23.251505 0 0 1 23.251505-23.251505h232.51505a23.251505 23.251505 0 0 1 23.251505 23.251505zM348.773505 558.03984h-232.51505A116.722555 116.722555 0 0 0 0.00093 675.227425v232.51505A116.722555 116.722555 0 0 0 116.258455 1023.06994h232.51505a116.722555 116.722555 0 0 0 116.257525-116.257525v-232.51505A116.257525 116.257525 0 0 0 348.773505 558.03984z m23.251505 348.772575a23.251505 23.251505 0 0 1-23.251505 23.251505h-232.51505a23.716535 23.716535 0 0 1-23.251505-23.251505v-232.51505a23.251505 23.251505 0 0 1 23.251505-23.251505h232.51505a23.251505 23.251505 0 0 1 23.251505 23.251505z"  ></path></symbol><symbol id="httpicon-shanchu" viewBox="0 0 1024 1024"><path d="M814.29 136.567H207.664c-55.752 0-101.274 13.3-101.274 56.776v26.086h808.663v-26.086c0.511-42.965-45.011-56.776-100.763-56.776"  ></path><path d="M723.245 191.808l-19.948-140.66c-3.58-27.62-29.667-50.125-57.287-50.125H376.456c-28.132 0-53.707 22.505-57.799 50.126l-19.948 141.17c-3.58 27.621 15.856 22.506 43.477 22.506h337.07c28.133-0.511 47.57 4.604 43.989-23.017z m-360.6-28.643L377.99 51.66h265.463l15.344 111.505H362.645zM831.17 282.342H190.785c-36.827 0-64.959 30.177-61.378 67.005l55.24 607.648c3.58 36.827 36.316 67.005 73.655 67.005h505.35c36.828 0 70.074-30.178 73.655-67.005l55.24-607.137c3.58-36.827-24.04-67.516-61.378-67.516zM376.456 953.415H245.514l-43.476-592.816h174.418v592.816z m221.474 0H423.512V360.599H597.93v592.816z m177.487 0H646.01V360.599h172.883l-43.476 592.816z"  ></path></symbol><symbol id="httpicon-pingzhengguanli" viewBox="0 0 1024 1024"><path d="M692.29056 649.7792h-378.1632a12.4416 12.4416 0 0 0-12.43648 12.46208 12.416 12.416 0 0 0 12.4416 12.42112h378.1632a12.4416 12.4416 0 0 0 0-24.8832z m0-127.78496h-378.1632a12.43648 12.43648 0 0 0-12.43648 12.45696 12.416 12.416 0 0 0 12.4416 12.42112h378.1632a12.41088 12.41088 0 0 0 12.416-12.42112 12.43136 12.43136 0 0 0-12.42112-12.45696z m0-127.75424h-378.1632a12.43136 12.43136 0 0 0 0 24.86272h378.1632c6.87104 0 12.42112-5.57056 12.42112-12.4416S699.1616 394.24 692.29056 394.24z m268.6976-217.18016c0-63.42144-53.01248-115.04128-118.1696-115.04128H263.51616c-0.27136 0-0.512 0.04096-0.80384 0.05632-0.27136-0.02048-0.52736-0.0512-0.80384-0.0512-63.4368 0-115.05664 51.61472-115.05664 115.03616V849.6128c0 8.4736 3.41504 16.54784 9.51808 22.39488l93.99296 90.65472a31.13984 31.13984 0 0 0 43.18208 0l95.8976-92.48256 99.49184 95.93344a31.05792 31.05792 0 0 0 43.20256 0l99.49184-95.93344 99.51232 95.93344a31.03232 31.03232 0 0 0 21.57568 8.7296c7.7824 0 15.58016-2.9184 21.6064-8.7296l90.07104-86.8352a31.15008 31.15008 0 0 0 9.51808-22.39488V287.96928c50.10432-13.36832 87.07072-57.97376 87.07072-110.90944z m-208.27136 723.51232l-99.51232-95.96928a31.0528 31.0528 0 0 0-43.1616 0l-99.49696 95.96928L411.0336 804.608a31.07328 31.07328 0 0 0-43.18208 0l-95.8976 92.4672-62.90432-60.6464V177.05984c0-29.15328 23.7056-52.864 52.85888-52.864 0.256 0 0.49664-0.07168 0.73216-0.07168 0.3072 0 0.58368 0.07168 0.87552 0.07168h0.11264c30.81216 0.0768 55.8592 23.76704 55.8592 52.864 0 29.15328-25.10336 52.87936-55.97184 52.87936a31.06304 31.06304 0 0 0-31.08864 31.06816 31.09376 31.09376 0 0 0 31.08864 31.1296h548.1984v551.52128l-58.99776 56.91392zM842.81856 229.9392h-474.368a112.15872 112.15872 0 0 0 0-105.74336h474.368c30.8736 0 55.96672 23.71072 55.96672 52.864 0 29.15328-25.09312 52.87936-55.9616 52.87936z" fill="#272636" ></path></symbol><symbol id="httpicon-bianji" viewBox="0 0 1024 1024"><path d="M800 531.52a32 32 0 0 1 64 0v305.92A90.56 90.56 0 0 1 773.44 928H186.88A90.88 90.88 0 0 1 96 837.44V250.88A90.88 90.88 0 0 1 186.88 160h288a32 32 0 0 1 0 64h-288A26.56 26.56 0 0 0 160 250.88v586.56A26.56 26.56 0 0 0 186.88 864h586.56A26.56 26.56 0 0 0 800 837.44z"  ></path><path d="M825.28 209.92l-43.2-43.2-405.12 405.12-13.76 56.96 56.96-13.76zM444.16 675.2L327.36 704A32 32 0 0 1 288 664.64l28.16-116.8a32 32 0 0 1 8.32-15.04l424-423.04a48 48 0 0 1 67.2 0l66.56 66.88a47.68 47.68 0 0 1 0 66.88L459.2 666.56a33.92 33.92 0 0 1-15.04 8.64z"  ></path></symbol><symbol id="httpicon-chaxun" viewBox="0 0 1024 1024"><path d="M268 329.5c-16.569 0-30-13.431-30-30 0-16.569 13.431-30 30-30h420c16.569 0 30 13.431 30 30 0 16.569-13.431 30-30 30H268z m0 212.5c-16.569 0-30-13.431-30-30 0-16.569 13.431-30 30-30h320c16.569 0 30 13.431 30 30 0 16.569-13.431 30-30 30H268z m0 212.5c-16.569 0-30-13.431-30-30 0-16.569 13.431-30 30-30h180c16.569 0 30 13.431 30 30 0 16.569-13.431 30-30 30H268z m502.918 83.807c-11.215-12.195-10.42-31.173 1.775-42.389 12.195-11.215 31.173-10.42 42.389 1.775l103 112c11.215 12.195 10.42 31.173-1.775 42.389-12.195 11.215-31.173 10.42-42.389-1.775l-103-112z"  ></path><path d="M709 871c-87.813 0-159-71.187-159-159s71.187-159 159-159 159 71.187 159 159-71.187 159-159 159z m0-60c54.676 0 99-44.324 99-99s-44.324-99-99-99-99 44.324-99 99 44.324 99 99 99z"  ></path><path d="M687.31 126H188c-16.569 0-30 13.431-30 30v716c0 16.569 13.431 30 30 30h387c16.569 0 30 13.431 30 30 0 16.569-13.431 30-30 30H188c-49.706 0-90-40.294-90-90V156c0-49.706 40.294-90 90-90h512.175a30 30 0 0 1 21.733 9.32l195.825 205.796a30 30 0 0 1 8.267 20.68v235.48c0 16.568-13.431 30-30 30-16.569 0-30-13.432-30-30V313.787L687.31 126z"  ></path></symbol><symbol id="httpicon-mima" viewBox="0 0 1024 1024"><path d="M842.24 444.416c-8.192 0-54.272 0.512-62.976 0.512V299.52c0-161.28-103.936-268.288-266.24-268.8-162.304 0-268.288 112.64-268.288 268.8v143.872c-5.632 0-64.512 0.512-69.632 0.512-38.912 0-64 33.28-64 69.12v409.088c0 40.448 21.504 70.656 62.976 70.656h670.208c32.256 0 69.12-29.184 69.12-81.92V522.24c0-39.936-13.312-77.824-71.168-77.824z m-240.64 367.104c0 50.688-39.936 91.648-89.088 91.648-49.152 0-89.088-40.96-89.088-91.648v-1.536c0-33.792 17.92-63.488 44.544-79.36v-168.96c0-24.064 18.944-26.624 42.496-26.624 23.552 0 46.592 2.56 46.592 26.624v168.96c26.624 15.872 44.544 45.568 44.544 79.36v1.536zM691.2 443.392H334.336v-184.32c0-88.576 98.816-136.704 173.056-136.704h16.384c74.24 0 167.424 44.544 167.424 136.704v184.32z"  ></path></symbol><symbol id="httpicon-zhanghao" viewBox="0 0 1024 1024"><path d="M391.136179 588.720987C191.832264 588.720987 42.993669 717.867879 42.993669 905.407919v20.203177C42.993669 1023.643389 202.487948 1023.643389 404.434473 1023.643389h214.477609c193.93345 0 361.440804 0 361.440805-98.032293v-20.203177c0-187.54004-148.838595-316.686931-348.142511-316.686932H391.136179z m109.796169-49.357128c157.874615 0 286.339543-120.87808 286.339543-269.546185 0-148.582859-128.464927-269.460939-286.339543-269.460939-157.78937 0-286.254297 120.87808-286.254297 269.460939 0 148.668104 128.464927 269.546185 286.254297 269.546185z"  ></path></symbol><symbol id="httpicon-yanzhengma" viewBox="0 0 1024 1024"><path d="M921.32693333 257.36533333a63.14666667 63.14666667 0 0 0-49.83466666-55.3984A1176.91733333 1176.91733333 0 0 1 710.31466667 164.864a598.69866667 598.69866667 0 0 1-144.00853334-84.1728 65.87733333 65.87733333 0 0 0-76.97066666 0 377.71946667 377.71946667 0 0 1-145.1008 83.62666667 541.0816 541.0816 0 0 1-156.74026667 38.74133333 58.70933333 58.70933333 0 0 0-49.28853333 55.3984S136.53333333 397.48266667 136.53333333 519.85066667C136.53333333 741.376 397.9264 955.73333333 528.65706667 955.73333333c130.69653333 0 352.256-151.21066667 387.6864-432.5376 8.87466667-166.16106667 2.73066667-265.28426667 2.73066666-265.28426666l2.2528-0.58026667z m-142.336 171.1104l-273.06666666 257.536c-12.288 11.70773333-31.06133333 13.55093333-45.39733334 4.43733334l-7.168-6.10986667-150.66453333-156.70613333a37.61493333 37.61493333 0 0 1 55.36426667-50.96106667l124.07466666 130.1504 245.89653334-232.61866667a37.61493333 37.61493333 0 1 1 50.96106666 55.3984v-1.1264z"  ></path></symbol><symbol id="httpicon-xia" viewBox="0 0 1024 1024"><path d="M263.338667 337.578667l248.900266 248.9344L761.173333 337.6128l48.298667 48.264533-297.233067 297.198934L215.04 385.877333z"  ></path></symbol><symbol id="httpicon-shouqi" viewBox="0 0 1024 1024"><path d="M890.2 115H133.8c-20.9 0-37.8 16.9-37.8 37.8v37.8c0 20.9 16.9 37.8 37.8 37.8h756.4c20.9 0 37.8-16.9 37.8-37.8v-37.8c0-20.9-16.9-37.8-37.8-37.8zM890.2 455.3H398.5c-20.9 0-37.8 16.9-37.8 37.8v37.8c0 20.9 16.9 37.8 37.8 37.8h491.6c20.9 0 37.8-16.9 37.8-37.8v-37.8c0.1-20.9-16.8-37.8-37.7-37.8zM890.2 795.6H133.8c-20.9 0-37.8 16.9-37.8 37.8v37.8c0 20.9 16.9 37.8 37.8 37.8h756.4c20.9 0 37.8-16.9 37.8-37.8v-37.8c0-20.9-16.9-37.8-37.8-37.8zM266.2 600.7V423.3c0-22-29.2-33.1-46.2-17.5l-97.1 88.7c-10.6 9.7-10.6 25.3 0 35l97.1 88.7c17 15.5 46.2 4.5 46.2-17.5z"  ></path></symbol><symbol id="httpicon-tuichu" viewBox="0 0 1024 1024"><path d="M992 452.16c0 17.92-6.08 30.08-17.92 41.92l-120 120c-12.16 12.16-24 17.92-41.92 17.92-36.16 0-60.16-24-60.16-60.16 0-17.92 6.08-30.08 17.92-41.92l18.24-17.92h-156.16c-36.16 0-60.16-24-60.16-60.16s24-60.16 60.16-60.16h156.16l-17.92-17.92c-12.16-12.16-17.92-24-17.92-41.92 0-36.16 24-60.16 60.16-60.16 17.92 0 30.08 6.08 41.92 17.92l120 120c11.52 12.48 17.6 24.32 17.6 42.56z m-179.84-300.16H308.16l113.92 65.92c17.92 12.16 30.08 30.08 30.08 54.08v480h360c36.16 0 60.16 24 60.16 60.16s-24 60.16-60.16 60.16H452.16v60.16c0 36.16-24 60.16-60.16 60.16-12.16 0-24-6.08-30.08-12.16L62.08 800l-17.92-17.92v-6.08c-6.08-6.08-12.16-11.84-12.16-24V92.16c0-24 17.92-48 36.16-54.08 5.76-6.08 17.92-6.08 24-6.08h720c36.16 0 60.16 24 60.16 60.16s-24.32 59.84-60.16 59.84z"  ></path></symbol><symbol id="httpicon-shijian" viewBox="0 0 1024 1024"><path d="M511.8 950.5c-248.1 0-449.9-201.8-449.9-449.9S263.7 50.7 511.8 50.7s449.9 201.8 449.9 449.9-201.9 449.9-449.9 449.9z m0-835c-212.4 0-385.1 172.8-385.1 385.1s172.8 385.1 385.1 385.1 385.1-172.8 385.1-385.1-172.8-385.1-385.1-385.1z" fill="#666666" ></path><path d="M504.9 207.5c-17.9 0-32.4-14.5-32.4-32.4v-57.9c0-17.9 14.5-32.4 32.4-32.4s32.4 14.5 32.4 32.4v57.9c0 17.9-14.5 32.4-32.4 32.4zM174.3 538.1h-57.9c-17.9 0-32.4-14.5-32.4-32.4s14.5-32.4 32.4-32.4h57.9c17.9 0 32.4 14.5 32.4 32.4s-14.5 32.4-32.4 32.4zM893.5 538.1h-57.9c-17.9 0-32.4-14.5-32.4-32.4s14.5-32.4 32.4-32.4h57.9c17.9 0 32.4 14.5 32.4 32.4s-14.5 32.4-32.4 32.4zM664.3 692.3c-8.3 0-16.6-3.2-22.9-9.5L482 523.5c-6.1-6.1-9.5-14.3-9.5-22.9V337c0-17.9 14.5-32.4 32.4-32.4s32.4 14.5 32.4 32.4v150.2L687.2 637c12.7 12.7 12.7 33.2 0 45.8-6.3 6.4-14.6 9.5-22.9 9.5z" fill="#666666" ></path></symbol><symbol id="httpicon-chazhaofangyuan" viewBox="0 0 1024 1024"><path d="M667.264 834.752 663.04 834.752l0-158.848c-36.864-6.144-70.656-23.168-97.28-49.472C530.688 591.488 512 544.384 513.024 493.824 513.536 468.608 518.976 444.16 528.832 421.312L402.88 292.16 144.128 557.504l0 277.248L138.496 834.752c-23.936 0-43.328 19.52-43.328 43.52l0 2.24 615.552 0 0-2.24C710.656 854.272 691.264 834.752 667.264 834.752zM514.624 809.6 293.44 809.6 293.44 585.088l221.12 0L514.56 809.6z"  ></path><path d="M402.88 266.24l134.4 137.856c8.832-16 20.032-30.912 33.28-44.224 9.344-9.408 19.456-17.792 30.08-25.024l-197.696-202.88L3.776 541.376l130.88 0L402.88 266.24z"  ></path><path d="M1011.136 717.504l-84.672-84.224c-9.856-9.856-24.704-11.648-36.288-5.312l-53.76-53.44c42.176-64.192 36.736-149.184-17.344-203.008-62.272-61.824-165.376-59.072-230.336 6.336s-67.136 168.512-4.8 230.4c55.296 54.976 142.848 58.752 207.168 13.12l54.656 54.208c-3.584 10.624-1.024 22.848 7.488 31.36l84.672 84.16c12.032 11.968 31.68 11.968 43.648-0.256l29.76-29.888C1023.296 748.864 1023.168 729.344 1011.136 717.504zM781.312 569.28c-46.848 47.104-120.896 49.92-164.864 6.144-44.032-43.776-41.792-117.76 5.056-164.864 46.784-47.296 120.832-50.048 164.864-6.144C830.464 448.192 828.16 522.176 781.312 569.28z"  ></path></symbol><symbol id="httpicon-tongjifenxi" viewBox="0 0 1024 1024"><path d="M490.6496 972.4672c-59.9808 0-124.7488-13.0048-192.512-38.656-5.1968-2.3552-325.504-159.5648-216.0128-528.3072 0.2816-0.896 0.5888-1.7664 0.9472-2.6368 4.1472-9.8816 104.704-242.304 361.8304-273.6128 7.3728-0.9472 14.592 1.3824 20.0704 6.2464S473.6 147.3536 473.6 154.6752l0 413.8752 405.3248 0c7.8336 0 15.232 3.584 20.0704 9.7024s6.6304 14.1568 4.8384 21.76C902.9376 603.7248 812.2624 972.4672 490.6496 972.4672zM130.7648 421.5808c-95.8976 326.144 175.7952 459.648 187.4176 465.152 60.032 22.6304 118.7072 34.5344 172.4416 34.5344 232.064 0 326.5024-218.112 354.1248-301.5424L448 619.7248c-14.1568 0-25.6-11.4688-25.6-25.6L422.4 184.6784C223.5648 224.128 138.0096 405.4784 130.7648 421.5808zM937.0368 476.8c-0.128 0-0.3584 0-0.512 0L569.6 476.8c-14.1568 0-25.6-11.4688-25.6-25.6L544 88.5248c0-7.0912 2.944-13.8752 8.1152-18.688 5.1456-4.864 12.0064-7.424 19.2-6.8352C574.6688 63.232 907.2384 89.6 961.1008 442.4704c0.9984 2.7136 1.536 5.6576 1.536 8.7296C962.6368 465.3312 951.168 476.8 937.0368 476.8zM595.2 425.6l310.9376 0C858.2656 190.5664 666.9312 131.9424 595.2 118.1184L595.2 425.6z"  ></path></symbol><symbol id="httpicon-kongkai" viewBox="0 0 1024 1024"><path d="M351.55816297 623.65392592h318.09232592c13.22856297 0 23.9085037-10.67994075 23.9085037-23.9085037v-0.72817777l-12.37902222-105.10032593H644.28562963v-78.27911111h-117.9648v78.27911111H495.00918518v-78.27911111h-117.9648v78.27911111h-37.0157037l-12.37902223 105.10032593v0.72817777c0 13.22856297 10.8013037 23.9085037 23.90850372 23.9085037z m200.73434073-182.04444444h65.90008889v52.18607407h-65.90008889v-52.18607407z m-83.25499259 0v52.18607407h-65.90008889v-52.18607407h65.90008889z m-105.8285037 78.27911111h294.79063704l9.10222222 77.6722963h-313.11644445l9.22358519-77.6722963z" fill="" ></path><path d="M772.44491852 193.54358518h-30.34074074v-112.62482963c0-13.22856297-10.67994075-23.9085037-23.9085037-23.9085037h-415.06133333c-13.22856297 0-23.9085037 10.8013037-23.90850372 23.9085037v112.62482963h-30.34074073V820.26192592h30.34074073v112.62482963c0 13.22856297 10.8013037 23.9085037 23.90850372 23.9085037h415.06133333c13.22856297 0 23.9085037-10.67994075 23.9085037-23.9085037V820.26192592h30.34074074V193.54358518z m-56.31241482 0H518.43223703v-110.44029629h197.57890372v110.44029629z m-410.93499259-110.44029629h197.57890371v110.44029629H305.19751111v-110.44029629z m0 737.15863703h197.57890371v110.4402963H305.19751111v-110.4402963z m410.93499259 110.56165926H518.43223703v-110.44029629h197.57890372v110.44029629z m30.21937778-136.53333333H274.97813333V219.63662222h471.37374815v574.65362963z" fill="" ></path><path d="M741.01191111 224.97659259H280.3181037v563.97368889h460.69380741V224.97659259zM738.46328889 786.2802963H282.86672592V227.52521482h455.4752V786.2802963z" fill="" ></path></symbol><symbol id="httpicon-shouye" viewBox="0 0 1024 1024"><path d="M865.16622222 584.81777778h-29.12711111c-14.56355555 0-27.30666667-12.74311111-27.30666666-27.30666667S821.47555555 530.20444445 836.03911111 530.20444445h29.12711111c12.74311111 0 16.384-9.10222222 18.20444445-12.74311112s3.64088889-12.74311111-3.64088889-21.84533333L526.56355555 142.44977778c-7.28177778-7.28177778-20.02488889-7.28177778-29.1271111 0L144.27022222 495.616c-9.10222222 9.10222222-5.46133333 18.20444445-3.64088889 21.84533333 1.82044445 3.64088889 7.28177778 12.74311111 18.20444445 12.74311112h36.40888889c14.56355555 0 27.30666667 12.74311111 27.30666666 27.30666666s-12.74311111 27.30666667-27.30666666 27.30666667h-36.40888889c-30.94755555 0-56.43377778-18.20444445-69.17688889-45.51111111-10.92266667-29.12711111-5.46133333-60.07466667 16.384-81.92L459.20711111 104.22044445c29.12711111-29.12711111 76.45866667-29.12711111 105.58577778 0L917.95911111 457.38666667c21.84533333 21.84533333 27.30666667 52.79288889 16.384 81.92-12.74311111 27.30666667-38.22933333 45.51111111-69.17688889 45.51111111z"  ></path><path d="M391.85066667 941.62488889h-125.61066667c-54.61333333 0-100.12444445-45.51111111-100.12444445-100.12444444v-273.06666667c0-14.56355555 12.74311111-27.30666667 27.30666667-27.30666667s27.30666667 12.74311111 27.30666667 27.30666667v273.06666667c0 25.48622222 20.02488889 45.51111111 45.51111111 45.5111111h125.61066667c14.56355555 0 27.30666667 12.74311111 27.30666666 27.30666667s-12.74311111 27.30666667-27.30666666 27.30666667zM757.76 941.62488889H639.43111111c-14.56355555 0-27.30666667-12.74311111-27.30666666-27.30666667s12.74311111-27.30666667 27.30666666-27.30666667h118.32888889c25.48622222 0 45.51111111-20.02488889 45.51111111-45.5111111v-145.63555556c0-14.56355555 12.74311111-27.30666667 27.30666667-27.30666667s27.30666667 12.74311111 27.30666667 27.30666667v145.63555556c0 56.43377778-45.51111111 100.12444445-100.12444445 100.12444444z"  ></path><path d="M612.12444445 932.52266667c-14.56355555 0-27.30666667-12.74311111-27.30666667-27.30666667V641.25155555h-145.63555556v263.96444445c0 14.56355555-12.74311111 27.30666667-27.30666667 27.30666667s-27.30666667-10.92266667-27.30666666-27.30666667V641.25155555c0-29.12711111 23.66577778-54.61333333 54.61333333-54.61333333h145.63555556c29.12711111 0 54.61333333 23.66577778 54.61333333 54.61333333v263.96444445c0 16.384-12.74311111 27.30666667-27.30666666 27.30666667z"  ></path></symbol><symbol id="httpicon-zhusujiedai" viewBox="0 0 1024 1024"><path d="M941.16977778 972.11733333H82.83022222c-17.06666667 0-30.83377778-13.88088889-30.83377777-30.83377778s13.88088889-30.83377778 30.83377777-30.83377777h26.73777778V103.424c0-28.44444445 22.98311111-51.42755555 51.42755555-51.42755555h473.42933334c28.44444445 0 51.42755555 23.09688889 51.42755556 51.42755555v806.912h166.79822222V460.57244445c0-11.37777778-9.216-20.59377778-20.59377778-20.59377778h-44.25955556c-17.06666667 0-30.83377778-13.88088889-30.83377778-30.83377778 0-17.06666667 13.88088889-30.83377778 30.83377778-30.83377778h75.09333334c28.44444445 0 51.42755555 22.98311111 51.42755555 51.42755556v480.71111111h26.73777778c17.06666667 0 30.83377778 13.88088889 30.83377778 30.83377777s-13.65333333 30.83377778-30.72 30.83377778zM624.18488889 134.25777778c0-11.37777778-9.216-20.59377778-20.59377778-20.59377778H191.94311111c-11.37777778 0-20.59377778 9.216-20.59377778 20.59377778v776.07822222h452.83555556V134.25777778z m-322.21866667 89.54311111h191.488c17.06666667 0 30.83377778 13.76711111 30.83377778 30.83377778 0 17.06666667-13.88088889 30.83377778-30.83377778 30.83377778H301.96622222c-17.06666667 0-30.83377778-13.88088889-30.83377777-30.83377778 0-17.06666667 13.88088889-30.83377778 30.83377777-30.83377778z m0 154.39644444h191.488c17.06666667 0 30.83377778 13.76711111 30.83377778 30.83377778 0 17.06666667-13.88088889 30.83377778-30.83377778 30.83377778H301.96622222c-17.06666667 0-30.83377778-13.88088889-30.83377777-30.83377778 0-17.06666667 13.88088889-30.83377778 30.83377777-30.83377778z m0 154.39644445h191.488c17.06666667 0 30.83377778 13.76711111 30.83377778 30.83377777 0 17.06666667-13.88088889 30.83377778-30.83377778 30.83377778H301.96622222c-17.06666667 0-30.83377778-13.88088889-30.83377777-30.83377778 0-17.06666667 13.88088889-30.83377778 30.83377777-30.83377777z m0 154.39644444h191.488c17.06666667 0 30.83377778 13.76711111 30.83377778 30.83377778 0 17.06666667-13.88088889 30.83377778-30.83377778 30.83377778H301.96622222c-17.06666667 0-30.83377778-13.88088889-30.83377777-30.83377778 0-17.06666667 13.88088889-30.83377778 30.83377777-30.83377778z m0 0"  ></path></symbol><symbol id="httpicon-jiaoshihuaxiang" viewBox="0 0 1024 1024"><path d="M539.3 347.1h186.2c1.4 0 2.5-2.3 2.5-5.4v-46.5c0-3-1.2-5.4-2.6-5.4H539.3c-1.4 0-2.6 2.4-2.6 5.4v46.5c0 2.9 1.2 5.4 2.6 5.4zM758 347.3h49.5c1.4 0 2.6-2.4 2.6-5.4v-46.5c0-3-1.2-5.4-2.6-5.4H758c-1.4 0-2.6 2.4-2.6 5.4V342c0 2.9 1.1 5.3 2.6 5.3zM536.7 450.9c0 3 1.2 5.4 2.6 5.4h186.2c1.4 0 2.5-2.3 2.5-5.4v-46.5c0-3-1.2-5.4-2.6-5.4H539.3c-1.4 0-2.6 2.4-2.6 5.4v46.5zM755.4 451.2c0 3 1.2 5.4 2.6 5.4h49.5c1.4 0 2.6-2.4 2.6-5.4v-46.5c0-3-1.2-5.4-2.6-5.4H758c-1.4 0-2.6 2.4-2.6 5.4v46.5zM536.7 559.3c0 3 1.2 5.4 2.6 5.4h186.2c1.4 0 2.5-2.3 2.5-5.4v-46.5c0-3-1.2-5.4-2.6-5.4H539.3c-1.4 0-2.6 2.4-2.6 5.4v46.5zM755.4 559.6c0 3 1.2 5.4 2.6 5.4h49.5c1.4 0 2.6-2.4 2.6-5.4v-46.5c0-3-1.2-5.4-2.6-5.4H758c-1.4 0-2.6 2.4-2.6 5.4v46.5zM314.3 573c73.9 0 134-60.1 134-134s-60.1-134-134-134-134 60.1-134 134c0 73.8 60.1 134 134 134z m0-209.5c41.6 0 75.5 33.9 75.5 75.5s-33.9 75.5-75.5 75.5-75.5-33.9-75.5-75.5c0-41.7 33.9-75.5 75.5-75.5zM422.4 598.5H208.8c-78.3 0-142 63.7-142 142v162.1h55.9V740.5c0-47.5 38.6-86.1 86.1-86.1h76.8l5.7 6.1-16.3 93.7 39.1 39.9 42-39.5-17.5-94.1 8.2-6.1h75.6c47.5 0 86.1 38.6 86.1 86.1v162.1h55.9V740.5c0-78.3-63.7-142-142-142z"  ></path><path d="M124.1 118.2v149.4h64.4v-87.9h706.1v600.5H692.8v61.5h266.3V118.2z"  ></path></symbol><symbol id="httpicon-yangan" viewBox="0 0 1024 1024"><path d="M935.19265185 78.73422222h-849.54074074c-11.77220741 0-21.23851852 9.46631111-21.23851852 21.23851853S73.8797037 121.21125925 85.65191111 121.21125925H147.91111111v158.01457778c0 4.49042963-0.9709037 8.73813333 1.69908148 12.37902222l83.74044444 118.3288889c4.00497778 5.5826963 9.22358518 8.61677037 16.14127408 8.61677037h8.8594963v72.69641481c0 42.96248889 35.19525925 80.22091852 78.15774814 80.22091852h347.94761482c42.96248889 0 75.12367408-37.25842963 75.12367408-80.22091852V418.55051852h11.89357037c6.79632592 0 13.22856297-3.03407408 17.23354073-8.61677037l85.43952593-118.45025185c2.54862222-3.64088889 4.36906667-7.76722963 4.36906667-12.25765927V121.21125925h56.6765037c11.77220741 0 21.23851852-9.46631111 21.23851852-21.2385185s-9.46631111-21.23851852-21.23851852-21.23851853zM717.10340741 491.24693333c0 19.53943703-13.1072 37.74388148-32.64663704 37.74388149H336.50915555c-19.53943703 0-35.68071111-18.20444445-35.6807111-37.74388149V418.55051852h416.27496296v72.69641481z m118.9357037-218.81742222L760.55134815 376.07348148H260.41457778L190.38814815 272.42951111V121.21125925h645.65096296v151.21825186z"  ></path><path d="M268.42453333 248.64237037h84.95407408c11.77220741 0 21.23851852-9.46631111 21.23851851-21.23851852S365.15081482 206.16533333 353.37860741 206.16533333h-84.95407408c-11.77220741 0-21.23851852 9.46631111-21.23851851 21.23851852s9.58767408 21.23851852 21.23851851 21.23851852zM464.91117037 248.64237037h84.95407408c11.77220741 0 21.23851852-9.46631111 21.23851852-21.23851852s-9.46631111-21.23851852-21.23851852-21.23851852h-84.95407408c-11.77220741 0-21.23851852 9.46631111-21.23851852 21.23851852s9.46631111 21.23851852 21.23851852 21.23851852zM661.39780741 248.64237037h84.95407407c11.77220741 0 21.23851852-9.46631111 21.23851852-21.23851852s-9.46631111-21.23851852-21.23851852-21.23851852h-84.95407407c-11.77220741 0-21.23851852 9.46631111-21.23851852 21.23851852s9.46631111 21.23851852 21.23851852 21.23851852zM295.48847408 619.40622222c-88.10951111 68.69143703-59.46785185 125.61066667-38.59342223 167.1168 20.51034075 40.65659259 33.98162963 67.47780741-31.31164444 114.93072593-9.46631111 6.91768889-11.52948148 20.14625185-4.61179259 29.61256296 4.12634075 5.70405925 10.67994075 8.73813333 17.23354073 8.73813334 4.36906667 0 8.73813333-1.33499259 12.5003852-4.12634075 94.42038518-68.69143703 65.41463703-126.33884445 44.1761185-168.45179259-20.38897778-40.53522963-33.86026667-67.23508148 26.69985186-114.56663703 9.22358518-7.16041482 10.92266667-20.51034075 3.64088889-29.8552889s-20.51034075-10.67994075-29.73392592-3.39816296zM539.79211852 646.10607408c7.5245037-8.98085925 6.43223703-22.33078518-2.54862222-29.97665186-8.98085925-7.5245037-22.33078518-6.43223703-29.97665185 2.54862223-71.96823703 85.43952592-32.16118518 135.19834075-3.15543704 171.48586666 28.39893333 35.55934815 47.21019259 58.9824-6.79632593 118.93570371-7.88859259 8.73813333-7.16041482 22.08805925 1.57771852 29.97665185 4.00497778 3.64088889 9.10222222 5.46133333 14.19946667 5.46133333 5.82542222 0 11.65084445-2.42725925 15.77718518-7.03905185 78.15774815-86.77451852 37.86524445-137.14014815 8.37404445-173.91312593-28.27757037-35.31662222-46.96746667-58.73967408 2.54862222-117.47934814zM781.91122963 760.67271111c-34.70980741-29.24847408-57.64740741-48.54518518-20.51034074-115.78026666 5.70405925-10.31585185 1.94180741-23.18032592-8.37404444-28.8843852-10.31585185-5.70405925-23.18032592-1.94180741-28.8843852 8.37404445-54.00651852 97.81854815-5.21860741 138.83922963 30.34074075 168.81588148 34.83117037 29.24847408 57.76877037 48.66654815 16.50536297 117.9648-5.94678518 10.07312592-2.66998518 23.05896297 7.40314073 29.12711112 3.39816297 2.06317037 7.16041482 3.03407408 10.80130371 3.03407407 7.28177778 0 14.32082963-3.76225185 18.32580741-10.43721482 59.71057778-100.36717037 10.43721482-141.8733037-25.60758519-172.21404444z"  ></path></symbol><symbol id="httpicon-wuyedangan" viewBox="0 0 1024 1024"><path d="M811.62138271 962H212.64491182c-83.38235273-0.31764727-150.77647089-65.17058818-150.61764727-144.95294092V418.50588271c-0.15882364-79.78235273 67.23529453-144.63529453 150.61764727-144.9h598.97647089c83.32941182 0.26470547 150.72352911 65.11764727 150.61764639 144.9v398.54117637c0.10588271 79.78235273-67.28823545 144.63529453-150.61764639 144.95294092z m94.60588184-543.49411729c0.10588271-50.08235273-42.19411729-90.74117636-94.5-90.95294179H212.64491182c-52.30588271 0.21176455-94.60588271 40.87058818-94.5 90.95294179v398.54117637c-0.15882364 50.13529453 42.24705908 90.84705908 94.60588271 91.00588184H811.72726455c52.30588271-0.21176455 94.60588271-40.87058818 94.5-90.95294092V418.50588271zM665.60961729 697.18823545H358.76255908a35.73529453 35.73529453 0 0 1-22.92352998-7.94117637 24.77647089 24.77647089 0 0 1-9.4235291-19.11176455V563.51176455c-0.15882364-12.54705908 11.2764709-23.08235273 26.31176455-24.19411728a31.71176455 31.71176455 0 0 1 21.12352998 6.3 21.70588271 21.70588271 0 0 1 8.89411729 17.20588184v60.24705907c0 7.14705908 3.38823545 14.02941182 9.4235291 19.11176455a36.21176455 36.21176455 0 0 0 22.92352997 7.88823545h194.18823458a36.10588271 36.10588271 0 0 0 22.92352998-7.88823545 25.09411729 25.09411729 0 0 0 9.4235291-19.11176455V563.51176455c-0.15882364-12.54705908 11.2764709-23.08235273 26.31176456-24.19411728a31.76470547 31.76470547 0 0 1 21.12352997 6.3 22.0235291 22.0235291 0 0 1 8.89411729 17.20588184v107.36470634a24.77647089 24.77647089 0 0 1-9.4235291 19.11176455 36.10588271 36.10588271 0 0 1-22.92352998 7.88823545z m109.00588271-476.73529453H249.75667637c-19.42941182 0-29.17058818-9.21176455-29.17058819-27.63529365v-0.31764727c0-18.4235291 9.74117637-27.63529453 29.17058818-27.63529453h524.85882364c19.42941182 0 29.11764727 9.21176455 29.11764727 27.63529453v0.31764727c0 18.4235291-9.68823545 27.63529453-29.11764727 27.63529365zM671.43314727 114.35882363H353.83902911c-17.62941182 0-26.47058818-8.68235273-26.47058819-26.04705908V88.04705908c0-17.36470547 8.84117636-26.04705908 26.47058818-26.04705908h317.59411817c17.68235273 0 26.47058818 8.68235273 26.47058818 26.04705908v0.26470547c0 17.36470547-8.78823545 26.04705908-26.47058818 26.04705908z"  ></path></symbol><symbol id="httpicon-xueshengdangan" viewBox="0 0 1024 1024"><path d="M346.33955555 851.74044445H231.08266667c-47.67288889 0-86.47111111-42.43911111-86.47111112-94.43555556V266.01244445c0-51.99644445 38.79822222-94.43555555 86.47111112-94.43555556h518.82666666c47.67288889 0 86.47111111 42.43911111 86.47111112 94.43555556v47.33155555c0 15.58755555 12.97066667 28.33066667 28.78577777 28.33066667s28.78577778-12.74311111 28.78577778-28.33066667v-47.33155555c0-83.28533333-64.62577778-151.09688889-144.15644445-151.0968889H230.96888889c-79.41688889 0-144.15644445 67.81155555-144.15644444 151.0968889v491.29244444c0 83.39911111 64.62577778 151.09688889 144.15644444 151.09688889h115.25688889c15.92888889 0 28.78577778-12.74311111 28.78577777-28.33066667 0.22755555-15.70133333-12.74311111-28.33066667-28.672-28.33066666zM231.08266667 341.56088889c-15.92888889 0-28.78577778 12.74311111-28.78577778 28.33066666 0 15.70133333 12.85688889 28.33066667 28.78577778 28.33066667h230.62755555c15.92888889 0 28.78577778-12.74311111 28.78577778-28.33066667s-12.85688889-28.33066667-28.78577778-28.33066666H231.08266667z m201.728 198.42844444c0-15.58755555-12.85688889-28.33066667-28.78577778-28.33066666h-172.94222222c-15.92888889 0-28.78577778 12.74311111-28.78577778 28.33066666s12.85688889 28.33066667 28.78577778 28.33066667h172.94222222c15.92888889 0 28.78577778-12.74311111 28.78577778-28.33066667z m346.112 80.896c43.46311111-30.94755555 71.79377778-81.23733333 71.79377778-137.89866666 0-93.75288889-77.59644445-170.09777778-172.94222223-170.09777778s-172.94222222 76.34488889-172.94222222 170.09777778c0 56.66133333 28.33066667 106.95111111 71.90755555 137.89866666-91.81866667 45.16977778-158.37866667 144.95288889-158.37866666 230.51377778 0 15.58755555 12.97066667 28.33066667 28.78577778 28.33066667 15.92888889 0 28.78577778-12.74311111 28.78577778-28.33066667 0-78.39288889 90.33955555-198.42844445 201.728-198.42844444s201.728 120.03555555 201.728 198.42844444c0 15.58755555 12.85688889 28.33066667 28.78577777 28.33066667s28.78577778-12.74311111 28.78577778-28.33066667c0.22755555-85.56088889-66.21866667-185.23022222-158.03733333-230.51377778z m-101.03466667-24.46222222c-63.60177778 0-115.25688889-50.74488889-115.25688889-113.32266666S614.28622222 369.77777778 677.888 369.77777778s115.25688889 50.85866667 115.25688889 113.32266667-51.65511111 113.32266667-115.25688889 113.32266666z" fill="#666666" ></path><path d="M346.33955555 920.23466667H231.08266667c-86.016 0-155.98933333-73.15911111-155.98933334-163.04355556V266.01244445c0-89.88444445 69.97333333-162.92977778 155.98933334-162.92977778h518.82666666c86.016 0 155.98933333 73.15911111 155.98933334 162.92977778v47.33155555c0 22.18666667-18.20444445 40.16355555-40.73244445 40.16355555-22.41422222 0-40.73244445-18.09066667-40.73244444-40.16355555v-47.33155555c0-45.51111111-33.45066667-82.60266667-74.63822223-82.60266667H230.96888889c-41.18755555 0-74.63822222 37.09155555-74.63822222 82.60266667v491.29244444c0 45.51111111 33.45066667 82.60266667 74.63822222 82.60266666h115.25688889c22.41422222 0 40.73244445 18.09066667 40.73244444 40.16355556 0.11377778 22.18666667-18.09066667 40.16355555-40.61866667 40.16355556zM231.08266667 126.74844445c-72.93155555 0-132.20977778 62.464-132.20977778 139.264v491.29244444c0 76.8 59.27822222 139.264 132.20977778 139.264h115.25688888c9.32977778 0 16.95288889-7.39555555 16.9528889-16.49777778s-7.62311111-16.49777778-16.9528889-16.49777778H231.08266667c-54.272 0-98.304-47.67288889-98.304-106.26844444V266.01244445c0-58.59555555 44.14577778-106.26844445 98.304-106.26844445h518.82666666c54.272 0 98.304 47.67288889 98.304 106.26844445v47.33155555c0 9.10222222 7.62311111 16.49777778 16.95288889 16.49777778s16.95288889-7.39555555 16.95288889-16.49777778v-47.33155555c0-76.8-59.27822222-139.264-132.20977778-139.264h-518.82666666z m677.31911111 764.928c-22.41422222 0-40.73244445-18.09066667-40.73244445-40.16355556 0-36.18133333-21.95911111-83.51288889-55.97866666-120.60444444-22.64177778-24.576-70.08711111-65.99111111-133.91644445-65.99111112s-111.27466667 41.30133333-133.91644444 65.99111112c-34.01955555 37.09155555-55.97866667 84.42311111-55.97866667 120.60444444 0 22.18666667-18.20444445 40.16355555-40.73244444 40.16355556-22.41422222 0-40.73244445-18.09066667-40.73244445-40.16355556 0-85.78844445 62.80533333-182.72711111 148.59377778-232.448-39.25333333-34.36088889-62.12266667-83.968-62.12266667-135.96444444 0-100.352 82.944-181.93066667 184.77511112-181.93066667 101.94488889 0 184.77511111 81.57866667 184.7751111 181.93066667 0 51.99644445-22.98311111 101.60355555-62.12266666 135.96444444C886.10133333 668.78577778 948.90666667 765.72444445 948.90666667 851.51288889c0.22755555 22.07288889-18.09066667 40.16355555-40.50488889 40.16355556zM677.888 641.25155555c54.04444445 0 107.86133333 26.16888889 151.43822222 73.61422223 38.34311111 41.87022222 62.23644445 94.208 62.23644445 136.64711111 0 9.10222222 7.62311111 16.49777778 16.95288888 16.49777778s16.95288889-7.39555555 16.9528889-16.49777778c0-82.71644445-65.19466667-177.26577778-151.66577778-219.93244444l-17.86311112-8.7608889 16.27022223-11.49155555c41.87022222-29.80977778 66.90133333-77.71022222 66.90133333-128.22755555 0-87.26755555-72.24888889-158.15111111-160.99555556-158.15111112-88.86044445 0-161.10933333 70.99733333-161.10933333 158.15111112 0 50.51733333 25.03111111 98.41777778 66.90133333 128.22755555l16.27022223 11.49155555-17.86311111 8.7608889c-86.47111111 42.55288889-151.66577778 137.10222222-151.66577778 219.93244444 0 9.10222222 7.62311111 16.49777778 16.95288889 16.49777778s16.95288889-7.39555555 16.95288889-16.49777778c0-42.43911111 23.89333333-94.77688889 62.23644444-136.64711111 43.23555555-47.44533333 97.05244445-73.61422222 151.09688889-73.61422223z m0-32.99555555c-70.08711111 0-127.20355555-56.20622222-127.20355555-125.26933333s57.00266667-125.26933333 127.20355555-125.26933334c70.08711111 0 127.20355555 56.20622222 127.20355555 125.26933334s-57.11644445 125.26933333-127.20355555 125.26933333z m0-226.75911111c-57.00266667 0-103.424 45.51111111-103.424 101.48977778s46.42133333 101.48977778 103.424 101.48977778c57.00266667 0 103.424-45.51111111 103.424-101.48977778s-46.42133333-101.48977778-103.424-101.48977778zM404.02488889 580.15288889h-172.94222222c-22.41422222 0-40.73244445-18.09066667-40.73244445-40.16355556 0-22.18666667 18.20444445-40.16355555 40.73244445-40.16355555h172.94222222c22.41422222 0 40.73244445 18.09066667 40.73244444 40.16355555 0 22.18666667-18.31822222 40.16355555-40.73244444 40.16355556z m-172.94222222-56.66133334c-9.32977778 0-16.95288889 7.39555555-16.95288889 16.49777778s7.62311111 16.49777778 16.95288889 16.49777778h172.94222222c9.32977778 0 16.95288889-7.39555555 16.95288889-16.49777778s-7.62311111-16.49777778-16.95288889-16.49777778h-172.94222222z m230.62755555-113.32266666H231.08266667c-22.41422222 0-40.73244445-18.09066667-40.73244445-40.16355556 0-22.18666667 18.20444445-40.16355555 40.73244445-40.16355555h230.62755555c22.41422222 0 40.73244445 18.09066667 40.73244445 40.16355555-0.11377778 22.07288889-18.31822222 40.16355555-40.73244445 40.16355556z m-230.62755555-56.77511111c-9.32977778 0-16.95288889 7.39555555-16.95288889 16.49777777s7.62311111 16.49777778 16.95288889 16.49777778h230.62755555c9.32977778 0 16.95288889-7.39555555 16.95288889-16.49777778s-7.62311111-16.49777778-16.95288889-16.49777777H231.08266667z" fill="#666666" ></path></symbol><symbol id="httpicon-mensuo1" viewBox="0 0 1024 1024"><path d="M490.666667 725.333333h384v42.666667H490.666667z" fill="#E9FF5B" ></path><path d="M682.666667 42.666667a64 64 0 0 1 64 64v576h106.666666a64 64 0 0 1 0 128h-106.666666v106.666666a64 64 0 0 1-64 64H341.333333a64 64 0 0 1-64-64V106.666667a64 64 0 0 1 64-64h341.333334z m0 42.666666H341.333333a21.333333 21.333333 0 0 0-21.333333 21.333334v810.666666a21.333333 21.333333 0 0 0 21.333333 21.333334h341.333334a21.333333 21.333333 0 0 0 21.333333-21.333334v-106.666666h-192a64 64 0 0 1 0-128h192V106.666667a21.333333 21.333333 0 0 0-21.333333-21.333334z m-149.333334 768a21.333333 21.333333 0 0 1 0 42.666667h-42.666666a21.333333 21.333333 0 0 1 0-42.666667h42.666666z m213.333334-85.333333h106.666666a21.333333 21.333333 0 0 0 0-42.666667H512a21.333333 21.333333 0 0 0 0 42.666667h234.666667zM405.333333 554.666667a21.333333 21.333333 0 1 1 0 42.666666 21.333333 21.333333 0 0 1 0-42.666666z m106.666667 0a21.333333 21.333333 0 1 1 0 42.666666 21.333333 21.333333 0 0 1 0-42.666666z m106.666667 0a21.333333 21.333333 0 1 1 0 42.666666 21.333333 21.333333 0 0 1 0-42.666666z m-213.333334-85.333334a21.333333 21.333333 0 1 1 0 42.666667 21.333333 21.333333 0 0 1 0-42.666667z m106.666667 0a21.333333 21.333333 0 1 1 0 42.666667 21.333333 21.333333 0 0 1 0-42.666667z m106.666667 0a21.333333 21.333333 0 1 1 0 42.666667 21.333333 21.333333 0 0 1 0-42.666667z m-213.333334-85.333333a21.333333 21.333333 0 1 1 0 42.666667 21.333333 21.333333 0 0 1 0-42.666667z m106.666667 0a21.333333 21.333333 0 1 1 0 42.666667 21.333333 21.333333 0 0 1 0-42.666667z m106.666667 0a21.333333 21.333333 0 1 1 0 42.666667 21.333333 21.333333 0 0 1 0-42.666667z m21.333333-256a21.333333 21.333333 0 0 1 21.333333 21.333333v149.333334a21.333333 21.333333 0 0 1-21.333333 21.333333H384a21.333333 21.333333 0 0 1-21.333333-21.333333V149.333333a21.333333 21.333333 0 0 1 21.333333-21.333333h256z m-21.333333 42.666667H405.333333v106.666666h213.333334V170.666667z" fill="#4E4E4E" ></path></symbol><symbol id="httpicon-shebei" viewBox="0 0 1024 1024"><path d="M912.3 329.1H112.2c-25.7 0-46.7-20.9-46.7-46.7V149.1c0-25.7 20.9-46.7 46.7-46.7h800.1c25.7 0 46.7 20.9 46.7 46.7v133.3c0 25.8-20.9 46.7-46.7 46.7zM112.2 142.5c-3.6 0-6.7 3.1-6.7 6.7v133.3c0 3.6 3.1 6.7 6.7 6.7h800.1c3.6 0 6.7-3.1 6.7-6.7V149.1c0-3.6-3.1-6.7-6.7-6.7H112.2z" fill="#4F4F4F" ></path><path d="M292.3 329.1h-180c-25.7 0-46.7-20.9-46.7-46.7V149.1c0-25.7 20.9-46.7 46.7-46.7h180v226.7zM112.2 142.5c-3.6 0-6.7 3.1-6.7 6.7v133.3c0 3.6 3.1 6.7 6.7 6.7h140V142.5h-140zM912.3 625.8H112.2c-25.7 0-46.7-20.9-46.7-46.7V445.8c0-25.7 20.9-46.7 46.7-46.7h800.1c25.7 0 46.7 20.9 46.7 46.7v133.3c0 25.8-20.9 46.7-46.7 46.7zM112.2 439.2c-3.6 0-6.7 3.1-6.7 6.7v133.3c0 3.6 3.1 6.7 6.7 6.7h800.1c3.6 0 6.7-3.1 6.7-6.7V445.8c0-3.6-3.1-6.7-6.7-6.7H112.2z" fill="#4F4F4F" ></path><path d="M292.3 625.8h-180c-25.7 0-46.7-20.9-46.7-46.7V445.8c0-25.7 20.9-46.7 46.7-46.7h180v226.7zM112.2 439.2c-3.6 0-6.7 3.1-6.7 6.7v133.3c0 3.6 3.1 6.7 6.7 6.7h140V439.2h-140zM912.3 922.5H112.2c-25.7 0-46.7-20.9-46.7-46.7V742.5c0-25.7 20.9-46.7 46.7-46.7h800.1c25.7 0 46.7 20.9 46.7 46.7v133.3c0 25.8-20.9 46.7-46.7 46.7zM112.2 735.9c-3.6 0-6.7 3.1-6.7 6.7v133.3c0 3.6 3.1 6.7 6.7 6.7h800.1c3.6 0 6.7-3.1 6.7-6.7V742.5c0-3.6-3.1-6.7-6.7-6.7H112.2z" fill="#4F4F4F" ></path><path d="M292.3 922.5h-180c-25.7 0-46.7-20.9-46.7-46.7V742.5c0-25.7 20.9-46.7 46.7-46.7h180v226.7zM112.2 735.9c-3.6 0-6.7 3.1-6.7 6.7v133.3c0 3.6 3.1 6.7 6.7 6.7h140V735.9h-140z" fill="#4F4F4F" ></path></symbol><symbol id="httpicon-yewuguanli" viewBox="0 0 1024 1024"><path d="M707.94602041 290.1308507h-264.7919195a26.47919161 26.47919161 0 1 1 0-52.95838321h264.7919195a26.47919161 26.47919161 0 1 1 0 52.95838321zM707.94602041 449.00600263h-264.7919195a26.47919161 26.47919161 0 1 1 0-52.95838436h264.7919195a26.47919161 26.47919161 0 1 1 0 52.95838436z" fill="#333333" ></path><path d="M840.34197959 581.40196181a26.47919161 26.47919161 0 0 1-26.47919161-26.4791916v-423.6670703h-476.62545465v423.6670703a26.47919161 26.47919161 0 1 1-52.95838435 0v-450.14626304a26.47919161 26.47919161 0 0 1 26.47919275-26.47919162h529.58383786a26.47919161 26.47919161 0 0 1 26.47919161 26.47919162v450.14626304a26.47919161 26.47919161 0 0 1-26.47919161 26.4791916z" fill="#333333" ></path><path d="M310.75814173 581.40196181h-132.39596032a26.47919161 26.47919161 0 0 1-26.47919162-26.4791916v-344.22949547a26.47919161 26.47919161 0 0 1 26.47919162-26.47919161h132.39596032a26.47919161 26.47919161 0 0 1 26.4791916 26.47919161v344.22949547a26.47919161 26.47919161 0 0 1-26.4791916 26.4791916z m-105.91676758-52.95838322h79.43757483v-291.2711111h-79.43757483v291.2711111z" fill="#333333" ></path><path d="M946.25874717 925.63145728h-847.33414059a26.47919161 26.47919161 0 0 1-26.47919275-26.47919275v-344.22949432a26.47919161 26.47919161 0 0 1 26.47919275-26.47919162h335.41192363c11.4125312 0 21.50110435 7.28177778 25.10227342 18.11176676l29.25950748 87.80500082h94.23944363l29.25950748-87.80500082a26.45271325 26.45271325 0 0 1 25.10227343-18.11176676H946.25874717a26.47919161 26.47919161 0 0 1 26.47919274 26.47919162v344.22949432a26.47919161 26.47919161 0 0 1-26.47919274 26.47919275z m-820.85494898-52.95838435h794.37575736v-291.27111112h-263.3620423l-29.25950749 87.80500082a26.45271325 26.45271325 0 0 1-25.10227456 18.11176676h-132.39595918a26.42623374 26.42623374 0 0 1-25.10227343-18.11176676l-29.25950748-87.80500082H125.40379819v291.27111112z" fill="#333333" ></path></symbol><symbol id="httpicon-tubiaozhizuomoban-101" viewBox="0 0 1024 1024"><path d="M842.07 448.91V125.33a61.87 61.87 0 0 0-61.8-61.8H231.84a61.87 61.87 0 0 0-61.8 61.8v323.58a228.09 228.09 0 0 0-65.71 160.23v322.43a20.6 20.6 0 1 0 41.2 0V760.05h139.61v112.46a20.6 20.6 0 1 0 41.2 0V760.05h360.18v112.46a20.6 20.6 0 0 0 41.2 0V760.05h138.86v171.52a20.6 20.6 0 1 0 41.2 0V609.14a228.09 228.09 0 0 0-65.71-160.23zM231.84 104.73h548.43a20.62 20.62 0 0 1 20.6 20.6v290.46a227.16 227.16 0 0 0-86.38-32.52c-3.07-87.92-75.36-158.55-164-158.55h-88.84c-88.65 0-160.94 70.63-164 158.55a227.31 227.31 0 0 0-86.4 32.52V125.33a20.62 20.62 0 0 1 20.59-20.6z m441.29 275.48H339c4.54-63.76 57.75-114.29 122.65-114.29h88.83c64.9 0 118.11 50.53 122.65 114.29z m-527.6 338.63v-109.7c0-103.51 84.22-187.73 187.75-187.73h345.57c103.51 0 187.73 84.22 187.73 187.73v109.7z"  ></path></symbol><symbol id="httpicon-jiaoshijiaoshiguanli" viewBox="0 0 1024 1024"><path d="M725.3 405.3c0-23.6-19.1-42.7-42.7-42.7H341.3c-23.6 0-42.7 19.1-42.7 42.7V576c0 23.6 19.1 42.7 42.7 42.7h341.3c23.6 0 42.7-19.1 42.7-42.7V405.3zM682.7 576H341.3V405.3h341.3V576zM320 704c-11.8 0-21.3 9.6-21.3 21.3 0 11.8 9.6 21.3 21.3 21.3h384c11.8 0 21.3-9.6 21.3-21.3 0-11.8-9.6-21.3-21.3-21.3H320z" fill="#333333" ></path><path d="M938.7 277.3c11.8 0 21.3-9.6 21.3-21.3V149.3c0-23.6-19.1-42.7-42.7-42.7H106.7c-23.6 0-42.7 19.1-42.7 42.7v725.3c0 23.6 19.1 42.7 42.7 42.7h810.7c23.6 0 42.7-19.1 42.7-42.7v-448c0-11.8-9.6-21.3-21.3-21.3-11.8 0-21.3 9.6-21.3 21.3v448H106.7V149.3h810.7V256c-0.1 11.8 9.5 21.3 21.3 21.3z" fill="#333333" ></path></symbol><symbol id="httpicon-renyuanguanli" viewBox="0 0 1154 1024"><path d="M420.160058 933.808318H130.83815251a452.57057849 452.57057849 0 0 1 452.57057849-420.24410909 258.61175979 258.61175979 0 1 0-143.8527909-43.96399843A517.22351843 517.22351843 0 0 0 64.56888887 966.13478854a32.32646941 32.32646941 0 0 0 32.3264694 32.32646941h323.26469973a32.32646941 32.32646941 0 1 0 0-64.65293995z m-32.3264694-678.85586773a193.95881984 193.95881984 0 1 1 193.9588187 193.95881984 193.95881984 193.95881984 0 0 1-193.9588187-193.95881984zM795.14710924 683.60144099a93.74676309 93.74676309 0 1 0 118.96140914 58.51091057 93.74676309 93.74676309 0 0 0-118.96140914-58.51091057z m39.76155819 116.69855686a29.09382315 29.09382315 0 1 1 18.10282268-37.17544049 29.09382315 29.09382315 0 0 1-18.10282268 37.17544049z" fill="#727272" ></path><path d="M1018.8462808 729.50502854a62.06682226 62.06682226 0 0 1-12.93058731-39.43829277 68.20885163 68.20885163 0 0 1 38.46849877-62.39008768 252.7929947 252.7929947 0 0 0-42.99420558-49.45949923 270.5725531 270.5725531 0 0 0-44.93379242-32.32646941 264.75378915 264.75378915 0 0 0-61.09702827-25.21464718 68.20885163 68.20885163 0 0 1-19.07261781 42.0244116 66.26926365 66.26926365 0 0 1-23.27505807 15.83997041 71.44149902 71.44149902 0 0 1-24.89138176 5.17223538 69.17864562 69.17864562 0 0 1-69.17864561-61.42029368c-4.20244139 0-8.72814706 2.26285341-12.93058845 3.87917709a246.32770105 246.32770105 0 0 0-47.84317554 21.65873437 258.61175979 258.61175979 0 0 0-44.93379243 33.9427931 254.4093184 254.4093184 0 0 0-42.02441158 51.07582293 66.26926365 66.26926365 0 0 1 42.34767587 56.89458688 66.59252793 66.59252793 0 0 1-15.51670499 50.10602894 68.85538133 68.85538133 0 0 1-66.59252794 23.27505807 251.17667101 251.17667101 0 0 0 6.14202938 64.65293995 229.51793664 229.51793664 0 0 0 7.11182336 25.53791147 252.46973042 252.46973042 0 0 0 11.3142636 27.15423402 256.67217067 256.67217067 0 0 0 35.5591168 55.27826432 68.53211591 68.53211591 0 0 1 70.14844075-20.36567609 75.32067499 75.32067499 0 0 1 20.68894037 9.69794105 61.74355797 61.74355797 0 0 1 15.19344072 15.19344071 68.53211591 68.53211591 0 0 1 5.49549966 73.05782159 271.86561251 271.86561251 0 0 0 64.65293994 13.90038243 235.33670059 235.33670059 0 0 0 54.3084692 0 245.35790706 245.35790706 0 0 0 51.39908721-11.63752904l11.96079445-4.84897109a68.85538133 68.85538133 0 0 1 6.46529366-74.35088099 73.38108701 73.38108701 0 0 1 13.25385273-13.25385273 57.86438087 57.86438087 0 0 1 16.48650012-8.72814706 67.56232192 67.56232192 0 0 1 73.05782159 15.19344185 252.7929947 252.7929947 0 0 0 32.3264694-56.24805831 256.67217067 256.67217067 0 0 0 20.68894151-117.02182116 68.53211591 68.53211591 0 0 1-68.85538133-26.83096974z m-10.99099933 117.34508544a133.83158557 133.83158557 0 0 0-102.79817443 24.56811747 132.86179157 132.86179157 0 0 0-52.36888121 92.13043941 188.14005475 188.14005475 0 0 1-38.14523449 0 131.56873216 131.56873216 0 0 0-161.63235044-111.5263215c-2.58611769-6.14202937-5.17223538-12.60732302-7.43508764-19.07261668a170.03723207 170.03723207 0 0 1-4.84896996-17.13302982 132.21526187 132.21526187 0 0 0 61.74355684-182.6445551 73.05782158 73.05782158 0 0 0-4.20244139-6.46529365 188.46332018 188.46332018 0 0 1 30.38688256-22.30526408 134.47811527 134.47811527 0 0 0 99.88879133 43.31746987 132.21526187 132.21526187 0 0 0 93.74676309-40.73135218 55.27826318 55.27826318 0 0 0 3.55591168-4.52570566 193.95881984 193.95881984 0 0 1 32.32647054 22.30526406 132.21526187 132.21526187 0 0 0 61.74355684 184.58414308 199.4543195 199.4543195 0 0 1-11.96079332 37.49870478z" fill="#727272" ></path></symbol><symbol id="httpicon-loufang01" viewBox="0 0 1024 1024"><path d="M946.150446 932.150082 819.560306 932.150082c0.751107-4.568039 1.051959-9.464559 0.546446-14.935154L820.106752 118.943996c0-28.269857-27.612894-55.104015-55.746652-55.104015L259.637854 63.83998c-28.132734 0-55.746652 26.834158-55.746652 55.104015l0 797.095153c-0.943488 5.907547-0.861624 11.269671 0.150426 16.110933L77.847507 932.150082c-7.740288 0-14.004969 6.263657-14.004969 14.004969s6.263657 14.004969 14.004969 14.004969l868.301915 0c7.741311 0 14.005992-6.263657 14.005992-14.004969S953.891757 932.150082 946.150446 932.150082zM610.033245 932.150082 413.964708 932.150082 413.964708 666.056702l196.068538 0L610.033245 932.150082zM791.057135 930.945651c0 0-1.203408 1.067308-7.686053 1.067308-2.777253 0-5.661953 0.245593-8.576329 0.081864-3.500731-0.192382-7.014764 0.055259-10.434653 0.055259l-126.316917 0L638.043183 652.051733c0-7.740288-6.263657-14.004969-14.004969-14.004969L399.959739 638.046764c-7.740288 0-14.004969 6.263657-14.004969 14.004969l0 280.098349L255.918136 932.150082c-5.731538 0-20.980847-0.465604-23.961738-4.021593-0.656963-0.793062-1.121544-3.802606-0.274246-8.397251 0.137123-0.820692 0.218988-1.669012 0.218988-2.51631L231.901139 118.943996c0-12.828167 15.030321-27.094078 27.735691-27.094078l504.72327 0c12.70537 0 27.735691 14.716166 27.735691 27.545356l0.055259 799.297308C793.040303 928.594093 791.083741 930.919045 791.057135 930.945651zM441.974645 189.884698l-98.03478 0c-7.740288 0-14.004969 6.263657-14.004969 14.004969l0 98.03478c0 7.726985 6.263657 14.004969 14.004969 14.004969l98.03478 0c7.726985 0 14.004969-6.277984 14.004969-14.004969l0-98.03478C455.979614 196.148355 449.70163 189.884698 441.974645 189.884698zM427.969677 287.919479l-70.024843 0 0-70.024843 70.024843 0L427.969677 287.919479zM680.057065 189.884698l-98.03478 0c-7.740288 0-14.004969 6.263657-14.004969 14.004969l0 98.03478c0 7.726985 6.263657 14.004969 14.004969 14.004969l98.03478 0c7.740288 0 14.005992-6.277984 14.005992-14.004969l0-98.03478C694.063057 196.148355 687.798377 189.884698 680.057065 189.884698zM666.05312 287.919479 596.028277 287.919479l0-70.024843 70.024843 0L666.05312 287.919479zM441.974645 413.96215l-98.03478 0c-7.740288 0-14.004969 6.263657-14.004969 14.004969l0 98.03478c0 7.726985 6.263657 14.004969 14.004969 14.004969l98.03478 0c7.726985 0 14.004969-6.277984 14.004969-14.004969l0-98.03478C455.979614 420.22683 449.70163 413.96215 441.974645 413.96215zM427.969677 511.99693l-70.024843 0 0-70.024843 70.024843 0L427.969677 511.99693zM680.057065 413.96215l-98.03478 0c-7.740288 0-14.004969 6.263657-14.004969 14.004969l0 98.03478c0 7.726985 6.263657 14.004969 14.004969 14.004969l98.03478 0c7.740288 0 14.005992-6.277984 14.005992-14.004969l0-98.03478C694.063057 420.22683 687.798377 413.96215 680.057065 413.96215zM666.05312 511.99693 596.028277 511.99693l0-70.024843 70.024843 0L666.05312 511.99693z"  ></path></symbol><symbol id="httpicon-bluetooth-01" viewBox="0 0 1024 1024"><path d="M512 512m-448 0a448 448 0 1 0 896 0 448 448 0 1 0-896 0Z" fill="#8C9EFF" ></path><path d="M514.64 533a21.003 21.003 0 0 1-21-21V240.86c0-11.59 6.49-21.91 16.96-26.92 10.45-5.01 22.56-3.6 31.59 3.67l157.1 126.33c7.08 5.69 11.14 14.17 11.14 23.26s-4.06 17.56-11.14 23.26l-171.5 137.9c-3.8 3.06-8.46 4.64-13.15 4.64z m21-266.76v201.92L661.18 367.2 535.64 266.24z" fill="#FFFFFF" ></path><path d="M334.6 677.8c-6.15 0-12.23-2.68-16.38-7.84-7.27-9.04-5.83-22.26 3.21-29.52L481.13 512l-159.7-128.43c-9.04-7.27-10.47-20.49-3.21-29.52 7.28-9.04 20.51-10.45 29.52-3.21l180.05 144.8a21.007 21.007 0 0 1 0 32.74l-180.05 144.8c-3.87 3.1-8.52 4.62-13.14 4.62z" fill="#FFFFFF" ></path><path d="M523.54 813.02c-4.38 0-8.79-0.97-12.94-2.96-10.47-5.01-16.96-15.33-16.96-26.92V512c0-8.08 4.63-15.45 11.93-18.94 7.28-3.51 15.93-2.49 22.23 2.57l171.49 137.91c7.08 5.69 11.14 14.17 11.14 23.26 0 9.08-4.06 17.56-11.14 23.26l-157.1 126.33c-5.45 4.38-12.01 6.63-18.65 6.63z m12.1-257.18v201.93L661.18 656.8 535.64 555.84z" fill="#FFFFFF" ></path></symbol><symbol id="httpicon-mensuo" viewBox="0 0 1024 1024"><path d="M541.43423281 962H269.79422276A113.79804258 113.79804258 0 0 1 156.13941289 848.34519013V175.65480987A113.79804258 113.79804258 0 0 1 269.79422276 62H541.43423281a113.79804258 113.79804258 0 0 1 113.65480987 113.65480987v378.27643886a20.3389831 20.3389831 0 0 1-40.60635029 0V175.65480987a73.04846045 73.04846045 0 0 0-73.04845958-73.04845958H269.79422276a73.04846045 73.04846045 0 0 0-73.04846046 73.04845958v672.69038026a73.04846045 73.04846045 0 0 0 73.04846046 73.04845958H541.43423281A73.04846045 73.04846045 0 0 0 614.48269238 848.34519013V792.48460273a20.3389831 20.3389831 0 1 1 40.6063503 0v55.71735469a113.79804258 113.79804258 0 0 1-113.65480987 113.79804258z"  ></path><path d="M482.42253535 444.57340625H328.80592021a58.08068789 58.08068789 0 0 1-58.08068789-58.00907109V290.16901426a58.15230381 58.15230381 0 0 1 58.08068789-58.0806879h153.61661515a58.15230381 58.15230381 0 0 1 58.08068701 58.08068789v96.39532091a58.08068789 58.08068789 0 0 1-58.08068701 58.00907109z m-153.61661514-171.87872959a17.4743376 17.4743376 0 0 0-17.47433759 17.47433759v96.39532091a17.40272168 17.40272168 0 0 0 17.47433759 17.40272168h153.61661515A17.40272168 17.40272168 0 0 0 499.89687295 386.56433516V290.16901426a17.4743376 17.4743376 0 0 0-17.47433759-17.4743376zM432.79255215 794.99116778A127.83480557 127.83480557 0 0 1 305.10097842 667.29959404a129.48197695 129.48197695 0 0 1 127.69157372-127.76318876 127.61995693 127.61995693 0 0 1 46.33564044 8.66555243 20.3389831 20.3389831 0 1 1-14.68130801 37.88493662 86.58391026 86.58391026 0 0 0-31.65433243-5.94413964 88.30269756 88.30269756 0 0 0-87.08522343 87.15683935 87.15683935 87.15683935 0 0 0 87.08522343 87.08522344 85.93936523 85.93936523 0 0 0 31.65433243-5.87252373 20.26736719 20.26736719 0 0 1 14.75292481 37.8133207 126.47409873 126.47409873 0 0 1-46.40725724 8.66555332z"  ></path><path d="M811.78515195 721.51301006H441.38648867a56.14705195 56.14705195 0 0 1 0-112.22248711h370.39866328a56.14705195 56.14705195 0 0 1 0 112.22248711z m-370.39866328-71.61613769a15.54070166 15.54070166 0 0 0 0 31.00978828h370.39866328a15.54070166 15.54070166 0 0 0 0-31.00978828z"  ></path></symbol></svg>',
      v = (v = document.getElementsByTagName("script"))[v.length - 1].getAttribute("data-injectcss"),
      o = function o(c, l) {
    l.parentNode.insertBefore(c, l);
  };if (v && !c.__iconfont__svg__cssinject__) {
    c.__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 (c) {
      console && console.log(c);
    }
  }function p() {
    z || (z = !0, a());
  }function M() {
    try {
      t.documentElement.doScroll("left");
    } catch (c) {
      return void setTimeout(M, 50);
    }p();
  }l = function l() {
    var c,
        l = document.createElement("div");l.innerHTML = i, i = null, (l = l.getElementsByTagName("svg")[0]) && (l.setAttribute("aria-hidden", "true"), l.style.position = "absolute", l.style.width = 0, l.style.height = 0, l.style.overflow = "hidden", l = l, (c = document.body).firstChild ? o(l, c.firstChild) : c.appendChild(l));
  }, document.addEventListener ? ~["complete", "loaded", "interactive"].indexOf(document.readyState) ? setTimeout(l, 0) : (_h = function h() {
    document.removeEventListener("DOMContentLoaded", _h, !1), l();
  }, document.addEventListener("DOMContentLoaded", _h, !1)) : document.attachEvent && (a = l, t = c.document, z = !1, M(), t.onreadystatechange = function () {
    "complete" == t.readyState && (t.onreadystatechange = null, p());
  });
}(window);

/***/ }),

/***/ "RWIN":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "SS1b":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "SvTU":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/mixin/autoResize.js
var autoResize = __webpack_require__("kN6d");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/borderBox7/src/main.vue
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//







/* harmony default export */ var main = ({
  name: 'DvBorderBox7',
  mixins: [autoResize["a" /* default */]],
  props: {
    color: {
      type: Array,
      default: function _default() {
        return [];
      }
    },
    backgroundColor: {
      type: String,
      default: 'transparent'
    }
  },
  data: function data() {
    return {
      ref: 'border-box-7',

      defaultColor: ['rgba(128,128,128,0.3)', 'rgba(128,128,128,0.5)'],

      mergedColor: []
    };
  },

  watch: {
    color: function color() {
      var mergeColor = this.mergeColor;


      mergeColor();
    }
  },
  methods: {
    mergeColor: function mergeColor() {
      var color = this.color,
          defaultColor = this.defaultColor;


      this.mergedColor = Object(util["deepMerge"])(Object(plugin_util["deepClone"])(defaultColor, true), color || []);
    }
  },
  mounted: function mounted() {
    var mergeColor = this.mergeColor;


    mergeColor();
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-3897f12e","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/borderBox7/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:_vm.ref,staticClass:"dv-border-box-7",style:(("box-shadow: inset 0 0 40px " + (_vm.mergedColor[0]) + "; border: 1px solid " + (_vm.mergedColor[0]) + "; background-color: " + _vm.backgroundColor))},[_c('svg',{staticClass:"dv-border-svg-container",attrs:{"width":_vm.width,"height":_vm.height}},[_c('polyline',{staticClass:"dv-bb7-line-width-2",attrs:{"stroke":_vm.mergedColor[0],"points":"0, 25 0, 0 25, 0"}}),_vm._v(" "),_c('polyline',{staticClass:"dv-bb7-line-width-2",attrs:{"stroke":_vm.mergedColor[0],"points":((_vm.width - 25) + ", 0 " + _vm.width + ", 0 " + _vm.width + ", 25")}}),_vm._v(" "),_c('polyline',{staticClass:"dv-bb7-line-width-2",attrs:{"stroke":_vm.mergedColor[0],"points":((_vm.width - 25) + ", " + _vm.height + " " + _vm.width + ", " + _vm.height + " " + _vm.width + ", " + (_vm.height - 25))}}),_vm._v(" "),_c('polyline',{staticClass:"dv-bb7-line-width-2",attrs:{"stroke":_vm.mergedColor[0],"points":("0, " + (_vm.height - 25) + " 0, " + _vm.height + " 25, " + _vm.height)}}),_vm._v(" "),_c('polyline',{staticClass:"dv-bb7-line-width-5",attrs:{"stroke":_vm.mergedColor[1],"points":"0, 10 0, 0 10, 0"}}),_vm._v(" "),_c('polyline',{staticClass:"dv-bb7-line-width-5",attrs:{"stroke":_vm.mergedColor[1],"points":((_vm.width - 10) + ", 0 " + _vm.width + ", 0 " + _vm.width + ", 10")}}),_vm._v(" "),_c('polyline',{staticClass:"dv-bb7-line-width-5",attrs:{"stroke":_vm.mergedColor[1],"points":((_vm.width - 10) + ", " + _vm.height + " " + _vm.width + ", " + _vm.height + " " + _vm.width + ", " + (_vm.height - 10))}}),_vm._v(" "),_c('polyline',{staticClass:"dv-bb7-line-width-5",attrs:{"stroke":_vm.mergedColor[1],"points":("0, " + (_vm.height - 10) + " 0, " + _vm.height + " 10, " + _vm.height)}})]),_vm._v(" "),_c('div',{staticClass:"border-box-content"},[_vm._t("default")],2)])}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/borderBox7/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var borderBox7_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "TNdk":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "Tp5f":
/***/ (function(module, exports) {

module.exports = "data:image/png;base64, "

/***/ }),

/***/ "UHcj":
/***/ (function(module, exports) {

(function (win, lib) {
  var doc = win.document;
  var docEl = doc.documentElement;
  var metaEl = doc.querySelector('meta[name="viewport"]');
  var flexibleEl = doc.querySelector('meta[name="flexible"]');
  var dpr = 0;
  var scale = 0;
  var tid;
  var flexible = lib.flexible || (lib.flexible = {});

  if (metaEl) {
    console.warn("将根据已有的meta标签来设置缩放比例");
    var match = metaEl.getAttribute("content")
    // eslint-disable-next-line no-useless-escape
    .match(/initial\-scale=([\d\.]+)/);
    if (match) {
      scale = parseFloat(match[1]);
      dpr = parseInt(1 / scale);
    }
  } else if (flexibleEl) {
    var content = flexibleEl.getAttribute("content");
    if (content) {
      // eslint-disable-next-line no-useless-escape
      var initialDpr = content.match(/initial\-dpr=([\d\.]+)/);
      // eslint-disable-next-line no-useless-escape
      var maximumDpr = content.match(/maximum\-dpr=([\d\.]+)/);
      if (initialDpr) {
        dpr = parseFloat(initialDpr[1]);
        scale = parseFloat((1 / dpr).toFixed(2));
      }
      if (maximumDpr) {
        dpr = parseFloat(maximumDpr[1]);
        scale = parseFloat((1 / dpr).toFixed(2));
      }
    }
  }

  if (!dpr && !scale) {
    // eslint-disable-next-line no-unused-vars
    var isAndroid = win.navigator.appVersion.match(/android/gi);
    var isIPhone = win.navigator.appVersion.match(/iphone/gi);
    var devicePixelRatio = win.devicePixelRatio;
    if (isIPhone) {
      // iOS下，对于2和3的屏，用2倍的方案，其余的用1倍方案
      if (devicePixelRatio >= 3 && (!dpr || dpr >= 3)) {
        dpr = 3;
      } else if (devicePixelRatio >= 2 && (!dpr || dpr >= 2)) {
        dpr = 2;
      } else {
        dpr = 1;
      }
    } else {
      // 其他设备下，仍旧使用1倍的方案
      dpr = 1;
    }
    scale = 1 / dpr;
  }

  docEl.setAttribute("data-dpr", dpr);
  if (!metaEl) {
    metaEl = doc.createElement("meta");
    metaEl.setAttribute("name", "viewport");
    metaEl.setAttribute("content", "initial-scale=" + scale + ", maximum-scale=" + scale + ", minimum-scale=" + scale + ", user-scalable=no");
    if (docEl.firstElementChild) {
      docEl.firstElementChild.appendChild(metaEl);
    } else {
      var wrap = doc.createElement("div");
      wrap.appendChild(metaEl);
      doc.write(wrap.innerHTML);
    }
  }

  function refreshRem() {
    var width = docEl.getBoundingClientRect().width;
    // 最小1366px，最大适配2560px
    if (width / dpr < 1366) {
      width = 1366 * dpr;
    } else if (width / dpr > 1920) {
      width = 1920 * dpr;
    }
    // 设置成24等份，设计稿时1920px的，这样1rem就是80px
    var rem = width / 24;
    docEl.style.fontSize = rem + "px";
    flexible.rem = win.rem = rem;
  }

  win.addEventListener("resize", function () {
    clearTimeout(tid);
    tid = setTimeout(refreshRem, 300);
  }, false);
  win.addEventListener("pageshow", function (e) {
    if (e.persisted) {
      clearTimeout(tid);
      tid = setTimeout(refreshRem, 300);
    }
  }, false);

  if (doc.readyState === "complete") {
    doc.body.style.fontSize = 12 * dpr + "px";
  } else {
    doc.addEventListener("DOMContentLoaded",
    // eslint-disable-next-line no-unused-vars
    function (e) {
      doc.body.style.fontSize = 12 * dpr + "px";
    }, false);
  }

  refreshRem();

  flexible.dpr = win.dpr = dpr;
  flexible.refreshRem = refreshRem;
  flexible.rem2px = function (d) {
    var val = parseFloat(d) * this.rem;
    if (typeof d === "string" && d.match(/rem$/)) {
      val += "px";
    }
    return val;
  };
  flexible.px2rem = function (d) {
    var val = parseFloat(d) / this.rem;
    if (typeof d === "string" && d.match(/px$/)) {
      val += "rem";
    }
    return val;
  };
})(window, window["lib"] || (window["lib"] = {}));

/***/ }),

/***/ "UsbJ":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/slicedToArray.js
var slicedToArray = __webpack_require__("d7EF");
var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/mixin/autoResize.js
var autoResize = __webpack_require__("kN6d");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/util/index.js
var util = __webpack_require__("3e7c");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var lib_util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(lib_util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/color/lib/index.js
var lib = __webpack_require__("glc7");
var lib_default = /*#__PURE__*/__webpack_require__.n(lib);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/decoration9/src/main.vue

//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//










/* harmony default export */ var main = ({
  name: 'DvDecoration9',
  mixins: [autoResize["a" /* default */]],
  props: {
    color: {
      type: Array,
      default: function _default() {
        return [];
      }
    },
    dur: {
      type: Number,
      default: 3
    }
  },
  data: function data() {
    var id = Object(util["e" /* uuid */])();
    return {
      ref: 'decoration-9',

      polygonId: 'decoration-9-polygon-' + id,

      svgWH: [100, 100],

      svgScale: [1, 1],

      defaultColor: ['rgba(3, 166, 224, 0.8)', 'rgba(3, 166, 224, 0.5)'],

      mergedColor: []
    };
  },

  watch: {
    color: function color() {
      var mergeColor = this.mergeColor;


      mergeColor();
    }
  },
  methods: {
    afterAutoResizeMixinInit: function afterAutoResizeMixinInit() {
      var calcScale = this.calcScale;


      calcScale();
    },
    calcScale: function calcScale() {
      var width = this.width,
          height = this.height,
          svgWH = this.svgWH;

      var _svgWH = slicedToArray_default()(svgWH, 2),
          w = _svgWH[0],
          h = _svgWH[1];

      this.svgScale = [width / w, height / h];
    },
    onResize: function onResize() {
      var calcScale = this.calcScale;


      calcScale();
    },
    mergeColor: function mergeColor() {
      var color = this.color,
          defaultColor = this.defaultColor;


      this.mergedColor = Object(lib_util["deepMerge"])(Object(plugin_util["deepClone"])(defaultColor, true), color || []);
    },

    fade: lib["fade"]
  },
  mounted: function mounted() {
    var mergeColor = this.mergeColor;


    mergeColor();
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-f8ad0d4c","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/decoration9/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:_vm.ref,staticClass:"dv-decoration-9"},[_c('svg',{style:(("transform:scale(" + (_vm.svgScale[0]) + "," + (_vm.svgScale[1]) + ");")),attrs:{"width":((_vm.svgWH[0]) + "px"),"height":((_vm.svgWH[1]) + "px")}},[_c('defs',[_c('polygon',{attrs:{"id":_vm.polygonId,"points":"15, 46.5, 21, 47.5, 21, 52.5, 15, 53.5"}})]),_vm._v(" "),_c('circle',{attrs:{"cx":"50","cy":"50","r":"45","fill":"transparent","stroke":_vm.mergedColor[1],"stroke-width":"10","stroke-dasharray":"80, 100, 30, 100"}},[_c('animateTransform',{attrs:{"attributeName":"transform","type":"rotate","values":"0 50 50;360 50 50","dur":(_vm.dur + "s"),"repeatCount":"indefinite"}})],1),_vm._v(" "),_c('circle',{attrs:{"cx":"50","cy":"50","r":"45","fill":"transparent","stroke":_vm.mergedColor[0],"stroke-width":"6","stroke-dasharray":"50, 66, 100, 66"}},[_c('animateTransform',{attrs:{"attributeName":"transform","type":"rotate","values":"0 50 50;-360 50 50","dur":(_vm.dur + "s"),"repeatCount":"indefinite"}})],1),_vm._v(" "),_c('circle',{attrs:{"cx":"50","cy":"50","r":"38","fill":"transparent","stroke":_vm.fade(_vm.mergedColor[1] || _vm.defaultColor[1], 30),"stroke-width":"1","stroke-dasharray":"5, 1"}}),_vm._v(" "),_vm._l((new Array(20).fill(0)),function(foo,i){return _c('use',{key:i,attrs:{"xlink:href":("#" + _vm.polygonId),"stroke":_vm.mergedColor[1],"fill":Math.random() > 0.4 ? 'transparent' : _vm.mergedColor[0]}},[_c('animateTransform',{attrs:{"attributeName":"transform","type":"rotate","values":"0 50 50;360 50 50","dur":(_vm.dur + "s"),"begin":((i * _vm.dur / 20) + "s"),"repeatCount":"indefinite"}})],1)}),_vm._v(" "),_c('circle',{attrs:{"cx":"50","cy":"50","r":"26","fill":"transparent","stroke":_vm.fade(_vm.mergedColor[1] || _vm.defaultColor[1], 30),"stroke-width":"1","stroke-dasharray":"5, 1"}})],2),_vm._v(" "),_vm._t("default")],2)}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/decoration9/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var decoration9_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "V7yy":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "Vc1h":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__("Zrlr");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_createClass__ = __webpack_require__("wxAW");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_createClass___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_createClass__);



var Utils = function () {
    function Utils() {
        __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, Utils);
    }

    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_createClass___default()(Utils, null, [{
        key: 'str2bytes1',
        value: function str2bytes1(str) {
            var array = new Uint8Array(str.length);
            for (var i = 0; i < str.length; i++) {
                array[i] = str.charCodeAt(i);
            }
            return array;
        }
    }, {
        key: 'str2bytes2',
        value: function str2bytes2(str, len) {
            var array = new Uint8Array(len);
            if (str) {
                for (var i = 0; i < str.length; i++) {
                    array[i] = str.charCodeAt(i);
                }
            }
            return array;
        }
    }, {
        key: 'str2bytes',
        value: function str2bytes(str, len) {
            if (arguments.length === 1) {
                return Utils.str2bytes1(str);
            } else {
                return Utils.str2bytes2(str, len);
            }
        }
    }, {
        key: 'bytes2str',
        value: function bytes2str(bytes) {
            if (bytes) {
                var str = '';
                for (var i = 0; i < bytes.length; i++) {
                    if (bytes[i] !== 0) {
                        str += String.fromCharCode(bytes[i]);
                    } else {
                        break;
                    }
                }
                return str;
            } else {
                return null;
            }
        }
    }, {
        key: 'getMacFromLockId',
        value: function getMacFromLockId(lockId) {
            var mac = '';
            var start = lockId.indexOf('_');
            var str = lockId.substring(start + 1);
            for (var i = str.length - 1; i >= 0; i -= 2) {
                mac += str.charAt(i - 1);
                mac += str.charAt(i);
                if (i > 1) {
                    mac += ':';
                }
            }
            return mac.toLocaleUpperCase();
        }
    }, {
        key: 'byte2HexStr',
        value: function byte2HexStr(byteArray) {
            if (byteArray) {
                var str = '';
                for (var i = 0; i < byteArray.length; i++) {
                    var tmp = byteArray[i].toString(16);
                    if (tmp.length === 1) {
                        tmp = '0' + tmp;
                    }
                    str += tmp;
                }
                return str;
            } else {
                return null;
            }
        }
    }, {
        key: 'hexStr2Byte',
        value: function hexStr2Byte(hexStr) {
            var pos = 0;
            var len = hexStr.length;
            if (len % 2 !== 0) {
                return null;
            }
            len /= 2;
            var hexA = [];
            for (var i = 0; i < len; i++) {
                var s = hexStr.substr(pos, 2);
                var v = parseInt(s, 16);
                hexA.push(v);
                pos += 2;
            }
            return hexA;
        }
    }, {
        key: 'int2Byte',
        value: function int2Byte(n) {
            var array = new Uint8Array(4);
            array[3] = n & 0xFF;
            array[2] = n >> 8 & 0xFF;
            array[1] = n >> 16 & 0xFF;
            array[0] = n >> 24 & 0xFF;
            return array;
        }
    }, {
        key: 'mergeTypedArrays',
        value: function mergeTypedArrays(a, b) {
            if (!b || b.length === 0) return a;
            if (!a || a.length === 0) return b;
            var c = new a.constructor(a.length + b.length);
            c.set(a);
            c.set(b, a.length);
            return c;
        }
    }, {
        key: 'dateFormat',
        value: function dateFormat(fmt, time) {
            var date = new Date(time);
            var o = {
                'M+': date.getMonth() + 1, // 月份
                'd+': date.getDate(), // 日
                'h+': date.getHours(), // 小时
                'm+': date.getMinutes(), // 分
                's+': date.getSeconds(), // 秒
                'q+': Math.floor((date.getMonth() + 3) / 3), // 季度
                'S': date.getMilliseconds() // 毫秒
            };
            if (/(y+)/.test(fmt)) {
                fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length));
            }
            for (var k in o) {
                if (new RegExp('(' + k + ')').test(fmt)) {
                    fmt = fmt.replace(RegExp.$1, RegExp.$1.length === 1 ? o[k] : ('00' + o[k]).substr(('' + o[k]).length));
                }
            }
            return fmt;
        }
    }]);

    return Utils;
}();

/* harmony default export */ __webpack_exports__["a"] = (Utils);

/***/ }),

/***/ "Vyt+":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/toConsumableArray.js
var toConsumableArray = __webpack_require__("Gu7T");
var toConsumableArray_default = /*#__PURE__*/__webpack_require__.n(toConsumableArray);

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/slicedToArray.js
var slicedToArray = __webpack_require__("d7EF");
var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/mixin/autoResize.js
var autoResize = __webpack_require__("kN6d");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/decoration3/src/main.vue


//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//







/* harmony default export */ var main = ({
  name: 'DvDecoration3',
  mixins: [autoResize["a" /* default */]],
  props: {
    color: {
      type: Array,
      default: function _default() {
        return [];
      }
    }
  },
  data: function data() {
    var pointSideLength = 7;

    return {
      ref: 'decoration-3',

      svgWH: [300, 35],

      svgScale: [1, 1],

      rowNum: 2,
      rowPoints: 25,

      pointSideLength: pointSideLength,
      halfPointSideLength: pointSideLength / 2,

      points: [],

      defaultColor: ['#7acaec', 'transparent'],

      mergedColor: []
    };
  },

  watch: {
    color: function color() {
      var mergeColor = this.mergeColor;


      mergeColor();
    }
  },
  methods: {
    afterAutoResizeMixinInit: function afterAutoResizeMixinInit() {
      var calcSVGData = this.calcSVGData;


      calcSVGData();
    },
    calcSVGData: function calcSVGData() {
      var calcPointsPosition = this.calcPointsPosition,
          calcScale = this.calcScale;


      calcPointsPosition();

      calcScale();
    },
    calcPointsPosition: function calcPointsPosition() {
      var svgWH = this.svgWH,
          rowNum = this.rowNum,
          rowPoints = this.rowPoints;

      var _svgWH = slicedToArray_default()(svgWH, 2),
          w = _svgWH[0],
          h = _svgWH[1];

      var horizontalGap = w / (rowPoints + 1);
      var verticalGap = h / (rowNum + 1);

      var points = new Array(rowNum).fill(0).map(function (foo, i) {
        return new Array(rowPoints).fill(0).map(function (foo, j) {
          return [horizontalGap * (j + 1), verticalGap * (i + 1)];
        });
      });

      this.points = points.reduce(function (all, item) {
        return [].concat(toConsumableArray_default()(all), toConsumableArray_default()(item));
      }, []);
    },
    calcScale: function calcScale() {
      var width = this.width,
          height = this.height,
          svgWH = this.svgWH;

      var _svgWH2 = slicedToArray_default()(svgWH, 2),
          w = _svgWH2[0],
          h = _svgWH2[1];

      this.svgScale = [width / w, height / h];
    },
    onResize: function onResize() {
      var calcSVGData = this.calcSVGData;


      calcSVGData();
    },
    mergeColor: function mergeColor() {
      var color = this.color,
          defaultColor = this.defaultColor;


      this.mergedColor = Object(util["deepMerge"])(Object(plugin_util["deepClone"])(defaultColor, true), color || []);
    }
  },
  mounted: function mounted() {
    var mergeColor = this.mergeColor;


    mergeColor();
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-455c74d6","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/decoration3/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:_vm.ref,staticClass:"dv-decoration-3"},[_c('svg',{style:(("transform:scale(" + (_vm.svgScale[0]) + "," + (_vm.svgScale[1]) + ");")),attrs:{"width":((_vm.svgWH[0]) + "px"),"height":((_vm.svgWH[1]) + "px")}},[_vm._l((_vm.points),function(point,i){return [_c('rect',{key:i,attrs:{"fill":_vm.mergedColor[0],"x":point[0] - _vm.halfPointSideLength,"y":point[1] - _vm.halfPointSideLength,"width":_vm.pointSideLength,"height":_vm.pointSideLength}},[(Math.random() > 0.6)?_c('animate',{attrs:{"attributeName":"fill","values":("" + (_vm.mergedColor.join(';'))),"dur":Math.random() + 1 + 's',"begin":Math.random() * 2,"repeatCount":"indefinite"}}):_vm._e()])]})],2)])}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/decoration3/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var decoration3_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "WO7A":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/toConsumableArray.js
var toConsumableArray = __webpack_require__("Gu7T");
var toConsumableArray_default = /*#__PURE__*/__webpack_require__.n(toConsumableArray);

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/extends.js
var helpers_extends = __webpack_require__("Dd8w");
var extends_default = /*#__PURE__*/__webpack_require__.n(helpers_extends);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/index.js
var lib = __webpack_require__("z0b2");
var lib_default = /*#__PURE__*/__webpack_require__.n(lib);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/components/digitalFlop/src/main.vue + 2 modules
var main = __webpack_require__("XMhG");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/activeRingChart/src/main.vue


//
//
//
//
//
//
//
//
//
//









/* harmony default export */ var src_main = ({
  name: 'DvActiveRingChart',
  components: {
    dvDigitalFlop: main["a" /* default */]
  },
  props: {
    config: {
      type: Object,
      default: function _default() {
        return {};
      }
    }
  },
  data: function data() {
    return {
      defaultConfig: {
        /**
         * @description Ring radius
         * @type {String|Number}
         * @default radius = '50%'
         * @example radius = '50%' | 100
         */
        radius: '50%',
        /**
         * @description Active ring radius
         * @type {String|Number}
         * @default activeRadius = '55%'
         * @example activeRadius = '55%' | 110
         */
        activeRadius: '55%',
        /**
         * @description Ring data
         * @type {Array<Object>}
         * @default data = [{ name: '', value: 0 }]
         */
        data: [{ name: '', value: 0 }],
        /**
         * @description Ring line width
         * @type {Number}
         * @default lineWidth = 20
         */
        lineWidth: 20,
        /**
         * @description Active time gap (ms)
         * @type {Number}
         * @default activeTimeGap = 3000
         */
        activeTimeGap: 3000,
        /**
         * @description Ring color (hex|rgb|rgba|color keywords)
         * @type {Array<String>}
         * @default color = [Charts Default Color]
         * @example color = ['#000', 'rgb(0, 0, 0)', 'rgba(0, 0, 0, 1)', 'red']
         */
        color: [],
        /**
         * @description Digital flop style
         * @type {Object}
         */
        digitalFlopStyle: {
          fontSize: 25,
          fill: '#fff'
        },
        /**
         * @description Digital flop toFixed
         * @type {Number}
         */
        digitalFlopToFixed: 0,
        /**
         * @description Digital flop unit
         * @type {String}
         */
        digitalFlopUnit: '',
        /**
         * @description CRender animationCurve
         * @type {String}
         * @default animationCurve = 'easeOutCubic'
         */
        animationCurve: 'easeOutCubic',
        /**
         * @description CRender animationFrame
         * @type {String}
         * @default animationFrame = 50
         */
        animationFrame: 50,
        /**
         * @description showOriginValue
         * @type {Boolean}
         * @default showOriginValue = false
         */
        showOriginValue: false
      },

      mergedConfig: null,

      chart: null,

      activeIndex: 0,

      animationHandler: ''
    };
  },

  computed: {
    digitalFlop: function digitalFlop() {
      var mergedConfig = this.mergedConfig,
          activeIndex = this.activeIndex;


      if (!mergedConfig) return {};

      var digitalFlopStyle = mergedConfig.digitalFlopStyle,
          digitalFlopToFixed = mergedConfig.digitalFlopToFixed,
          data = mergedConfig.data,
          showOriginValue = mergedConfig.showOriginValue,
          digitalFlopUnit = mergedConfig.digitalFlopUnit;


      var value = data.map(function (_ref) {
        var value = _ref.value;
        return value;
      });

      var displayValue = void 0;

      if (showOriginValue) {
        displayValue = value[activeIndex];
      } else {
        var sum = value.reduce(function (all, v) {
          return all + v;
        }, 0);

        var percent = parseFloat(value[activeIndex] / sum * 100) || 0;

        displayValue = percent;
      }

      return {
        content: showOriginValue ? '{nt}' + digitalFlopUnit : '{nt}' + (digitalFlopUnit || '%'),
        number: [displayValue],
        style: digitalFlopStyle,
        toFixed: digitalFlopToFixed
      };
    },
    ringName: function ringName() {
      var mergedConfig = this.mergedConfig,
          activeIndex = this.activeIndex;


      if (!mergedConfig) return '';

      return mergedConfig.data[activeIndex].name;
    },
    fontSize: function fontSize() {
      var mergedConfig = this.mergedConfig;


      if (!mergedConfig) return '';

      return 'font-size: ' + mergedConfig.digitalFlopStyle.fontSize + 'px;';
    }
  },
  watch: {
    config: function config() {
      var animationHandler = this.animationHandler,
          mergeConfig = this.mergeConfig,
          setRingOption = this.setRingOption;


      clearTimeout(animationHandler);

      this.activeIndex = 0;

      mergeConfig();

      setRingOption();
    }
  },
  methods: {
    init: function init() {
      var initChart = this.initChart,
          mergeConfig = this.mergeConfig,
          setRingOption = this.setRingOption;


      initChart();

      mergeConfig();

      setRingOption();
    },
    initChart: function initChart() {
      var $refs = this.$refs;


      this.chart = new lib_default.a($refs['active-ring-chart']);
    },
    mergeConfig: function mergeConfig() {
      var defaultConfig = this.defaultConfig,
          config = this.config;


      this.mergedConfig = Object(util["deepMerge"])(Object(plugin_util["deepClone"])(defaultConfig, true), config || {});
    },
    setRingOption: function setRingOption() {
      var getRingOption = this.getRingOption,
          chart = this.chart,
          ringAnimation = this.ringAnimation;


      var option = getRingOption();

      chart.setOption(option, true);

      ringAnimation();
    },
    getRingOption: function getRingOption() {
      var mergedConfig = this.mergedConfig,
          getRealRadius = this.getRealRadius;


      var radius = getRealRadius();

      mergedConfig.data.forEach(function (dataItem) {
        dataItem.radius = radius;
      });

      return {
        series: [extends_default()({
          type: 'pie'
        }, mergedConfig, {
          outsideLabel: {
            show: false
          }
        })],
        color: mergedConfig.color
      };
    },
    getRealRadius: function getRealRadius() {
      var active = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
      var mergedConfig = this.mergedConfig,
          chart = this.chart;
      var radius = mergedConfig.radius,
          activeRadius = mergedConfig.activeRadius,
          lineWidth = mergedConfig.lineWidth;


      var maxRadius = Math.min.apply(Math, toConsumableArray_default()(chart.render.area)) / 2;

      var halfLineWidth = lineWidth / 2;

      var realRadius = active ? activeRadius : radius;

      if (typeof realRadius !== 'number') realRadius = parseInt(realRadius) / 100 * maxRadius;

      var insideRadius = realRadius - halfLineWidth;
      var outSideRadius = realRadius + halfLineWidth;

      return [insideRadius, outSideRadius];
    },
    ringAnimation: function ringAnimation() {
      var _this = this;

      var activeIndex = this.activeIndex,
          getRingOption = this.getRingOption,
          chart = this.chart,
          getRealRadius = this.getRealRadius;


      var radius = getRealRadius();
      var active = getRealRadius(true);

      var option = getRingOption();

      var data = option.series[0].data;


      data.forEach(function (dataItem, i) {
        if (i === activeIndex) {
          dataItem.radius = active;
        } else {
          dataItem.radius = radius;
        }
      });

      chart.setOption(option, true);

      var activeTimeGap = option.series[0].activeTimeGap;


      this.animationHandler = setTimeout(function (foo) {
        activeIndex += 1;

        if (activeIndex >= data.length) activeIndex = 0;

        _this.activeIndex = activeIndex;

        _this.ringAnimation();
      }, activeTimeGap);
    }
  },
  mounted: function mounted() {
    var init = this.init;


    init();
  },
  beforeDestroy: function beforeDestroy() {
    var animationHandler = this.animationHandler;


    clearTimeout(animationHandler);
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-0cd75252","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/activeRingChart/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"dv-active-ring-chart"},[_c('div',{ref:"active-ring-chart",staticClass:"active-ring-chart-container"}),_vm._v(" "),_c('div',{staticClass:"active-ring-info"},[_c('dv-digital-flop',{attrs:{"config":_vm.digitalFlop}}),_vm._v(" "),_c('div',{staticClass:"active-ring-name",style:(_vm.fontSize)},[_vm._v(_vm._s(_vm.ringName))])],1)])}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var activeRingChart_src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/activeRingChart/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  src_main,
  activeRingChart_src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var components_activeRingChart_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "WkBw":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "X8Re":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "XMhG":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/slicedToArray.js
var slicedToArray = __webpack_require__("d7EF");
var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/index.js
var lib = __webpack_require__("TzJp");
var lib_default = /*#__PURE__*/__webpack_require__.n(lib);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/extend/index.js
var extend = __webpack_require__("5/ib");
var extend_default = /*#__PURE__*/__webpack_require__.n(extend);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/digitalFlop/src/main.vue

//
//
//
//
//
//









/* harmony default export */ var main = ({
  name: 'DvDigitalFlop',
  props: {
    config: {
      type: Object,
      default: function _default() {
        return {};
      }
    }
  },
  data: function data() {
    return {
      renderer: null,

      defaultConfig: {
        /**
         * @description Number for digital flop
         * @type {Array<Number>}
         * @default number = []
         * @example number = [10]
         */
        number: [],
        /**
         * @description Content formatter
         * @type {String}
         * @default content = ''
         * @example content = '{nt}个'
         */
        content: '',
        /**
         * @description Number toFixed
         * @type {Number}
         * @default toFixed = 0
         */
        toFixed: 0,
        /**
         * @description Text align
         * @type {String}
         * @default textAlign = 'center'
         * @example textAlign = 'center' | 'left' | 'right'
         */
        textAlign: 'center',
        /**
         * @description rowGap
         * @type {Number}
         @default rowGap = 0
         */
        rowGap: 0,
        /**
         * @description Text style configuration
         * @type {Object} {CRender Class Style}
         */
        style: {
          fontSize: 30,
          fill: '#3de7c9'
        },
        /**
         * @description Number formatter
         * @type {Null|Function}
         */
        formatter: undefined,
        /**
         * @description CRender animationCurve
         * @type {String}
         * @default animationCurve = 'easeOutCubic'
         */
        animationCurve: 'easeOutCubic',
        /**
         * @description CRender animationFrame
         * @type {String}
         * @default animationFrame = 50
         */
        animationFrame: 50
      },

      mergedConfig: null,

      graph: null
    };
  },

  watch: {
    config: function config() {
      var update = this.update;


      update();
    }
  },
  methods: {
    init: function init() {
      var initRender = this.initRender,
          mergeConfig = this.mergeConfig,
          initGraph = this.initGraph;


      initRender();

      mergeConfig();

      initGraph();
    },
    initRender: function initRender() {
      var $refs = this.$refs;


      this.renderer = new lib_default.a($refs['digital-flop']);
    },
    mergeConfig: function mergeConfig() {
      var defaultConfig = this.defaultConfig,
          config = this.config;


      this.mergedConfig = Object(util["deepMerge"])(Object(plugin_util["deepClone"])(defaultConfig, true), config || {});
    },
    initGraph: function initGraph() {
      var getShape = this.getShape,
          getStyle = this.getStyle,
          renderer = this.renderer,
          mergedConfig = this.mergedConfig;
      var animationCurve = mergedConfig.animationCurve,
          animationFrame = mergedConfig.animationFrame;


      var shape = getShape();
      var style = getStyle();

      this.graph = renderer.add({
        name: 'numberText',
        animationCurve: animationCurve,
        animationFrame: animationFrame,
        shape: shape,
        style: style
      });
    },
    getShape: function getShape() {
      var _mergedConfig = this.mergedConfig,
          number = _mergedConfig.number,
          content = _mergedConfig.content,
          toFixed = _mergedConfig.toFixed,
          textAlign = _mergedConfig.textAlign,
          rowGap = _mergedConfig.rowGap,
          formatter = _mergedConfig.formatter;

      var _renderer$area = slicedToArray_default()(this.renderer.area, 2),
          w = _renderer$area[0],
          h = _renderer$area[1];

      var position = [w / 2, h / 2];

      if (textAlign === 'left') position[0] = 0;
      if (textAlign === 'right') position[0] = w;

      return {
        number: number,
        content: content,
        toFixed: toFixed,
        position: position,
        rowGap: rowGap,
        formatter: formatter
      };
    },
    getStyle: function getStyle() {
      var _mergedConfig2 = this.mergedConfig,
          style = _mergedConfig2.style,
          textAlign = _mergedConfig2.textAlign;


      return Object(util["deepMerge"])(style, {
        textAlign: textAlign,
        textBaseline: 'middle'
      });
    },
    update: function update() {
      var mergeConfig = this.mergeConfig,
          mergeShape = this.mergeShape,
          getShape = this.getShape,
          getStyle = this.getStyle,
          graph = this.graph,
          mergedConfig = this.mergedConfig;


      graph.animationEnd();

      mergeConfig();

      if (!graph) return;

      var animationCurve = mergedConfig.animationCurve,
          animationFrame = mergedConfig.animationFrame;


      var shape = getShape();
      var style = getStyle();

      mergeShape(graph, shape);

      graph.animationCurve = animationCurve;
      graph.animationFrame = animationFrame;

      graph.animation('style', style, true);
      graph.animation('shape', shape);
    },
    mergeShape: function mergeShape(graph, shape) {
      var cacheNum = graph.shape.number.length;
      var shapeNum = shape.number.length;

      if (cacheNum !== shapeNum) graph.shape.number = shape.number;
    }
  },
  mounted: function mounted() {
    var init = this.init;


    init();
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-9d55478c","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/digitalFlop/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"dv-digital-flop"},[_c('canvas',{ref:"digital-flop"})])}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/digitalFlop/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var digitalFlop_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "Y7uo":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* unused harmony export Deflate */
/* unused harmony export Inflate */
/* unused harmony export constants */
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return pako; });
/* unused harmony export deflate */
/* unused harmony export deflateRaw */
/* unused harmony export gzip */
/* unused harmony export inflate */
/* unused harmony export inflateRaw */
/* unused harmony export ungzip */

/*! pako 2.0.4 https://github.com/nodeca/pako @license (MIT AND Zlib) */
// (C) 1995-2013 Jean-loup Gailly and Mark Adler
// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin
//
// This software is provided 'as-is', without any express or implied
// warranty. In no event will the authors be held liable for any damages
// arising from the use of this software.
//
// Permission is granted to anyone to use this software for any purpose,
// including commercial applications, and to alter it and redistribute it
// freely, subject to the following restrictions:
//
// 1. The origin of this software must not be misrepresented; you must not
//   claim that you wrote the original software. If you use this software
//   in a product, an acknowledgment in the product documentation would be
//   appreciated but is not required.
// 2. Altered source versions must be plainly marked as such, and must not be
//   misrepresented as being the original software.
// 3. This notice may not be removed or altered from any source distribution.

/* eslint-disable space-unary-ops */

/* Public constants ==========================================================*/
/* ===========================================================================*/


//const Z_FILTERED          = 1;
//const Z_HUFFMAN_ONLY      = 2;
//const Z_RLE               = 3;
const Z_FIXED$1               = 4;
//const Z_DEFAULT_STRATEGY  = 0;

/* Possible values of the data_type field (though see inflate()) */
const Z_BINARY              = 0;
const Z_TEXT                = 1;
//const Z_ASCII             = 1; // = Z_TEXT
const Z_UNKNOWN$1             = 2;

/*============================================================================*/


function zero$1(buf) { let len = buf.length; while (--len >= 0) { buf[len] = 0; } }

// From zutil.h

const STORED_BLOCK = 0;
const STATIC_TREES = 1;
const DYN_TREES    = 2;
/* The three kinds of block type */

const MIN_MATCH$1    = 3;
const MAX_MATCH$1    = 258;
/* The minimum and maximum match lengths */

// From deflate.h
/* ===========================================================================
 * Internal compression state.
 */

const LENGTH_CODES$1  = 29;
/* number of length codes, not counting the special END_BLOCK code */

const LITERALS$1      = 256;
/* number of literal bytes 0..255 */

const L_CODES$1       = LITERALS$1 + 1 + LENGTH_CODES$1;
/* number of Literal or Length codes, including the END_BLOCK code */

const D_CODES$1       = 30;
/* number of distance codes */

const BL_CODES$1      = 19;
/* number of codes used to transfer the bit lengths */

const HEAP_SIZE$1     = 2 * L_CODES$1 + 1;
/* maximum heap size */

const MAX_BITS$1      = 15;
/* All codes must not exceed MAX_BITS bits */

const Buf_size      = 16;
/* size of bit buffer in bi_buf */


/* ===========================================================================
 * Constants
 */

const MAX_BL_BITS = 7;
/* Bit length codes must not exceed MAX_BL_BITS bits */

const END_BLOCK   = 256;
/* end of block literal code */

const REP_3_6     = 16;
/* repeat previous bit length 3-6 times (2 bits of repeat count) */

const REPZ_3_10   = 17;
/* repeat a zero length 3-10 times  (3 bits of repeat count) */

const REPZ_11_138 = 18;
/* repeat a zero length 11-138 times  (7 bits of repeat count) */

/* eslint-disable comma-spacing,array-bracket-spacing */
const extra_lbits =   /* extra bits for each length code */
  new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]);

const extra_dbits =   /* extra bits for each distance code */
  new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]);

const extra_blbits =  /* extra bits for each bit length code */
  new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]);

const bl_order =
  new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);
/* eslint-enable comma-spacing,array-bracket-spacing */

/* The lengths of the bit length codes are sent in order of decreasing
 * probability, to avoid transmitting the lengths for unused bit length codes.
 */

/* ===========================================================================
 * Local data. These are initialized only once.
 */

// We pre-fill arrays with 0 to avoid uninitialized gaps

const DIST_CODE_LEN = 512; /* see definition of array dist_code below */

// !!!! Use flat array instead of structure, Freq = i*2, Len = i*2+1
const static_ltree  = new Array((L_CODES$1 + 2) * 2);
zero$1(static_ltree);
/* The static literal tree. Since the bit lengths are imposed, there is no
 * need for the L_CODES extra codes used during heap construction. However
 * The codes 286 and 287 are needed to build a canonical tree (see _tr_init
 * below).
 */

const static_dtree  = new Array(D_CODES$1 * 2);
zero$1(static_dtree);
/* The static distance tree. (Actually a trivial tree since all codes use
 * 5 bits.)
 */

const _dist_code    = new Array(DIST_CODE_LEN);
zero$1(_dist_code);
/* Distance codes. The first 256 values correspond to the distances
 * 3 .. 258, the last 256 values correspond to the top 8 bits of
 * the 15 bit distances.
 */

const _length_code  = new Array(MAX_MATCH$1 - MIN_MATCH$1 + 1);
zero$1(_length_code);
/* length code for each normalized match length (0 == MIN_MATCH) */

const base_length   = new Array(LENGTH_CODES$1);
zero$1(base_length);
/* First normalized length for each code (0 = MIN_MATCH) */

const base_dist     = new Array(D_CODES$1);
zero$1(base_dist);
/* First normalized distance for each code (0 = distance of 1) */


function StaticTreeDesc(static_tree, extra_bits, extra_base, elems, max_length) {

  this.static_tree  = static_tree;  /* static tree or NULL */
  this.extra_bits   = extra_bits;   /* extra bits for each code or NULL */
  this.extra_base   = extra_base;   /* base index for extra_bits */
  this.elems        = elems;        /* max number of elements in the tree */
  this.max_length   = max_length;   /* max bit length for the codes */

  // show if `static_tree` has data or dummy - needed for monomorphic objects
  this.has_stree    = static_tree && static_tree.length;
}


let static_l_desc;
let static_d_desc;
let static_bl_desc;


function TreeDesc(dyn_tree, stat_desc) {
  this.dyn_tree = dyn_tree;     /* the dynamic tree */
  this.max_code = 0;            /* largest code with non zero frequency */
  this.stat_desc = stat_desc;   /* the corresponding static tree */
}



const d_code = (dist) => {

  return dist < 256 ? _dist_code[dist] : _dist_code[256 + (dist >>> 7)];
};


/* ===========================================================================
 * Output a short LSB first on the stream.
 * IN assertion: there is enough room in pendingBuf.
 */
const put_short = (s, w) => {
//    put_byte(s, (uch)((w) & 0xff));
//    put_byte(s, (uch)((ush)(w) >> 8));
  s.pending_buf[s.pending++] = (w) & 0xff;
  s.pending_buf[s.pending++] = (w >>> 8) & 0xff;
};


/* ===========================================================================
 * Send a value on a given number of bits.
 * IN assertion: length <= 16 and value fits in length bits.
 */
const send_bits = (s, value, length) => {

  if (s.bi_valid > (Buf_size - length)) {
    s.bi_buf |= (value << s.bi_valid) & 0xffff;
    put_short(s, s.bi_buf);
    s.bi_buf = value >> (Buf_size - s.bi_valid);
    s.bi_valid += length - Buf_size;
  } else {
    s.bi_buf |= (value << s.bi_valid) & 0xffff;
    s.bi_valid += length;
  }
};


const send_code = (s, c, tree) => {

  send_bits(s, tree[c * 2]/*.Code*/, tree[c * 2 + 1]/*.Len*/);
};


/* ===========================================================================
 * Reverse the first len bits of a code, using straightforward code (a faster
 * method would use a table)
 * IN assertion: 1 <= len <= 15
 */
const bi_reverse = (code, len) => {

  let res = 0;
  do {
    res |= code & 1;
    code >>>= 1;
    res <<= 1;
  } while (--len > 0);
  return res >>> 1;
};


/* ===========================================================================
 * Flush the bit buffer, keeping at most 7 bits in it.
 */
const bi_flush = (s) => {

  if (s.bi_valid === 16) {
    put_short(s, s.bi_buf);
    s.bi_buf = 0;
    s.bi_valid = 0;

  } else if (s.bi_valid >= 8) {
    s.pending_buf[s.pending++] = s.bi_buf & 0xff;
    s.bi_buf >>= 8;
    s.bi_valid -= 8;
  }
};


/* ===========================================================================
 * Compute the optimal bit lengths for a tree and update the total bit length
 * for the current block.
 * IN assertion: the fields freq and dad are set, heap[heap_max] and
 *    above are the tree nodes sorted by increasing frequency.
 * OUT assertions: the field len is set to the optimal bit length, the
 *     array bl_count contains the frequencies for each bit length.
 *     The length opt_len is updated; static_len is also updated if stree is
 *     not null.
 */
const gen_bitlen = (s, desc) =>
//    deflate_state *s;
//    tree_desc *desc;    /* the tree descriptor */
{
  const tree            = desc.dyn_tree;
  const max_code        = desc.max_code;
  const stree           = desc.stat_desc.static_tree;
  const has_stree       = desc.stat_desc.has_stree;
  const extra           = desc.stat_desc.extra_bits;
  const base            = desc.stat_desc.extra_base;
  const max_length      = desc.stat_desc.max_length;
  let h;              /* heap index */
  let n, m;           /* iterate over the tree elements */
  let bits;           /* bit length */
  let xbits;          /* extra bits */
  let f;              /* frequency */
  let overflow = 0;   /* number of elements with bit length too large */

  for (bits = 0; bits <= MAX_BITS$1; bits++) {
    s.bl_count[bits] = 0;
  }

  /* In a first pass, compute the optimal bit lengths (which may
   * overflow in the case of the bit length tree).
   */
  tree[s.heap[s.heap_max] * 2 + 1]/*.Len*/ = 0; /* root of the heap */

  for (h = s.heap_max + 1; h < HEAP_SIZE$1; h++) {
    n = s.heap[h];
    bits = tree[tree[n * 2 + 1]/*.Dad*/ * 2 + 1]/*.Len*/ + 1;
    if (bits > max_length) {
      bits = max_length;
      overflow++;
    }
    tree[n * 2 + 1]/*.Len*/ = bits;
    /* We overwrite tree[n].Dad which is no longer needed */

    if (n > max_code) { continue; } /* not a leaf node */

    s.bl_count[bits]++;
    xbits = 0;
    if (n >= base) {
      xbits = extra[n - base];
    }
    f = tree[n * 2]/*.Freq*/;
    s.opt_len += f * (bits + xbits);
    if (has_stree) {
      s.static_len += f * (stree[n * 2 + 1]/*.Len*/ + xbits);
    }
  }
  if (overflow === 0) { return; }

  // Trace((stderr,"\nbit length overflow\n"));
  /* This happens for example on obj2 and pic of the Calgary corpus */

  /* Find the first bit length which could increase: */
  do {
    bits = max_length - 1;
    while (s.bl_count[bits] === 0) { bits--; }
    s.bl_count[bits]--;      /* move one leaf down the tree */
    s.bl_count[bits + 1] += 2; /* move one overflow item as its brother */
    s.bl_count[max_length]--;
    /* The brother of the overflow item also moves one step up,
     * but this does not affect bl_count[max_length]
     */
    overflow -= 2;
  } while (overflow > 0);

  /* Now recompute all bit lengths, scanning in increasing frequency.
   * h is still equal to HEAP_SIZE. (It is simpler to reconstruct all
   * lengths instead of fixing only the wrong ones. This idea is taken
   * from 'ar' written by Haruhiko Okumura.)
   */
  for (bits = max_length; bits !== 0; bits--) {
    n = s.bl_count[bits];
    while (n !== 0) {
      m = s.heap[--h];
      if (m > max_code) { continue; }
      if (tree[m * 2 + 1]/*.Len*/ !== bits) {
        // Trace((stderr,"code %d bits %d->%d\n", m, tree[m].Len, bits));
        s.opt_len += (bits - tree[m * 2 + 1]/*.Len*/) * tree[m * 2]/*.Freq*/;
        tree[m * 2 + 1]/*.Len*/ = bits;
      }
      n--;
    }
  }
};


/* ===========================================================================
 * Generate the codes for a given tree and bit counts (which need not be
 * optimal).
 * IN assertion: the array bl_count contains the bit length statistics for
 * the given tree and the field len is set for all tree elements.
 * OUT assertion: the field code is set for all tree elements of non
 *     zero code length.
 */
const gen_codes = (tree, max_code, bl_count) =>
//    ct_data *tree;             /* the tree to decorate */
//    int max_code;              /* largest code with non zero frequency */
//    ushf *bl_count;            /* number of codes at each bit length */
{
  const next_code = new Array(MAX_BITS$1 + 1); /* next code value for each bit length */
  let code = 0;              /* running code value */
  let bits;                  /* bit index */
  let n;                     /* code index */

  /* The distribution counts are first used to generate the code values
   * without bit reversal.
   */
  for (bits = 1; bits <= MAX_BITS$1; bits++) {
    next_code[bits] = code = (code + bl_count[bits - 1]) << 1;
  }
  /* Check that the bit counts in bl_count are consistent. The last code
   * must be all ones.
   */
  //Assert (code + bl_count[MAX_BITS]-1 == (1<<MAX_BITS)-1,
  //        "inconsistent bit counts");
  //Tracev((stderr,"\ngen_codes: max_code %d ", max_code));

  for (n = 0;  n <= max_code; n++) {
    let len = tree[n * 2 + 1]/*.Len*/;
    if (len === 0) { continue; }
    /* Now reverse the bits */
    tree[n * 2]/*.Code*/ = bi_reverse(next_code[len]++, len);

    //Tracecv(tree != static_ltree, (stderr,"\nn %3d %c l %2d c %4x (%x) ",
    //     n, (isgraph(n) ? n : ' '), len, tree[n].Code, next_code[len]-1));
  }
};


/* ===========================================================================
 * Initialize the various 'constant' tables.
 */
const tr_static_init = () => {

  let n;        /* iterates over tree elements */
  let bits;     /* bit counter */
  let length;   /* length value */
  let code;     /* code value */
  let dist;     /* distance index */
  const bl_count = new Array(MAX_BITS$1 + 1);
  /* number of codes at each bit length for an optimal tree */

  // do check in _tr_init()
  //if (static_init_done) return;

  /* For some embedded targets, global variables are not initialized: */
/*#ifdef NO_INIT_GLOBAL_POINTERS
  static_l_desc.static_tree = static_ltree;
  static_l_desc.extra_bits = extra_lbits;
  static_d_desc.static_tree = static_dtree;
  static_d_desc.extra_bits = extra_dbits;
  static_bl_desc.extra_bits = extra_blbits;
#endif*/

  /* Initialize the mapping length (0..255) -> length code (0..28) */
  length = 0;
  for (code = 0; code < LENGTH_CODES$1 - 1; code++) {
    base_length[code] = length;
    for (n = 0; n < (1 << extra_lbits[code]); n++) {
      _length_code[length++] = code;
    }
  }
  //Assert (length == 256, "tr_static_init: length != 256");
  /* Note that the length 255 (match length 258) can be represented
   * in two different ways: code 284 + 5 bits or code 285, so we
   * overwrite length_code[255] to use the best encoding:
   */
  _length_code[length - 1] = code;

  /* Initialize the mapping dist (0..32K) -> dist code (0..29) */
  dist = 0;
  for (code = 0; code < 16; code++) {
    base_dist[code] = dist;
    for (n = 0; n < (1 << extra_dbits[code]); n++) {
      _dist_code[dist++] = code;
    }
  }
  //Assert (dist == 256, "tr_static_init: dist != 256");
  dist >>= 7; /* from now on, all distances are divided by 128 */
  for (; code < D_CODES$1; code++) {
    base_dist[code] = dist << 7;
    for (n = 0; n < (1 << (extra_dbits[code] - 7)); n++) {
      _dist_code[256 + dist++] = code;
    }
  }
  //Assert (dist == 256, "tr_static_init: 256+dist != 512");

  /* Construct the codes of the static literal tree */
  for (bits = 0; bits <= MAX_BITS$1; bits++) {
    bl_count[bits] = 0;
  }

  n = 0;
  while (n <= 143) {
    static_ltree[n * 2 + 1]/*.Len*/ = 8;
    n++;
    bl_count[8]++;
  }
  while (n <= 255) {
    static_ltree[n * 2 + 1]/*.Len*/ = 9;
    n++;
    bl_count[9]++;
  }
  while (n <= 279) {
    static_ltree[n * 2 + 1]/*.Len*/ = 7;
    n++;
    bl_count[7]++;
  }
  while (n <= 287) {
    static_ltree[n * 2 + 1]/*.Len*/ = 8;
    n++;
    bl_count[8]++;
  }
  /* Codes 286 and 287 do not exist, but we must include them in the
   * tree construction to get a canonical Huffman tree (longest code
   * all ones)
   */
  gen_codes(static_ltree, L_CODES$1 + 1, bl_count);

  /* The static distance tree is trivial: */
  for (n = 0; n < D_CODES$1; n++) {
    static_dtree[n * 2 + 1]/*.Len*/ = 5;
    static_dtree[n * 2]/*.Code*/ = bi_reverse(n, 5);
  }

  // Now data ready and we can init static trees
  static_l_desc = new StaticTreeDesc(static_ltree, extra_lbits, LITERALS$1 + 1, L_CODES$1, MAX_BITS$1);
  static_d_desc = new StaticTreeDesc(static_dtree, extra_dbits, 0,          D_CODES$1, MAX_BITS$1);
  static_bl_desc = new StaticTreeDesc(new Array(0), extra_blbits, 0,         BL_CODES$1, MAX_BL_BITS);

  //static_init_done = true;
};


/* ===========================================================================
 * Initialize a new block.
 */
const init_block = (s) => {

  let n; /* iterates over tree elements */

  /* Initialize the trees. */
  for (n = 0; n < L_CODES$1;  n++) { s.dyn_ltree[n * 2]/*.Freq*/ = 0; }
  for (n = 0; n < D_CODES$1;  n++) { s.dyn_dtree[n * 2]/*.Freq*/ = 0; }
  for (n = 0; n < BL_CODES$1; n++) { s.bl_tree[n * 2]/*.Freq*/ = 0; }

  s.dyn_ltree[END_BLOCK * 2]/*.Freq*/ = 1;
  s.opt_len = s.static_len = 0;
  s.last_lit = s.matches = 0;
};


/* ===========================================================================
 * Flush the bit buffer and align the output on a byte boundary
 */
const bi_windup = (s) =>
{
  if (s.bi_valid > 8) {
    put_short(s, s.bi_buf);
  } else if (s.bi_valid > 0) {
    //put_byte(s, (Byte)s->bi_buf);
    s.pending_buf[s.pending++] = s.bi_buf;
  }
  s.bi_buf = 0;
  s.bi_valid = 0;
};

/* ===========================================================================
 * Copy a stored block, storing first the length and its
 * one's complement if requested.
 */
const copy_block = (s, buf, len, header) =>
//DeflateState *s;
//charf    *buf;    /* the input data */
//unsigned len;     /* its length */
//int      header;  /* true if block header must be written */
{
  bi_windup(s);        /* align on byte boundary */

  if (header) {
    put_short(s, len);
    put_short(s, ~len);
  }
//  while (len--) {
//    put_byte(s, *buf++);
//  }
  s.pending_buf.set(s.window.subarray(buf, buf + len), s.pending);
  s.pending += len;
};

/* ===========================================================================
 * Compares to subtrees, using the tree depth as tie breaker when
 * the subtrees have equal frequency. This minimizes the worst case length.
 */
const smaller = (tree, n, m, depth) => {

  const _n2 = n * 2;
  const _m2 = m * 2;
  return (tree[_n2]/*.Freq*/ < tree[_m2]/*.Freq*/ ||
         (tree[_n2]/*.Freq*/ === tree[_m2]/*.Freq*/ && depth[n] <= depth[m]));
};

/* ===========================================================================
 * Restore the heap property by moving down the tree starting at node k,
 * exchanging a node with the smallest of its two sons if necessary, stopping
 * when the heap property is re-established (each father smaller than its
 * two sons).
 */
const pqdownheap = (s, tree, k) =>
//    deflate_state *s;
//    ct_data *tree;  /* the tree to restore */
//    int k;               /* node to move down */
{
  const v = s.heap[k];
  let j = k << 1;  /* left son of k */
  while (j <= s.heap_len) {
    /* Set j to the smallest of the two sons: */
    if (j < s.heap_len &&
      smaller(tree, s.heap[j + 1], s.heap[j], s.depth)) {
      j++;
    }
    /* Exit if v is smaller than both sons */
    if (smaller(tree, v, s.heap[j], s.depth)) { break; }

    /* Exchange v with the smallest son */
    s.heap[k] = s.heap[j];
    k = j;

    /* And continue down the tree, setting j to the left son of k */
    j <<= 1;
  }
  s.heap[k] = v;
};


// inlined manually
// const SMALLEST = 1;

/* ===========================================================================
 * Send the block data compressed using the given Huffman trees
 */
const compress_block = (s, ltree, dtree) =>
//    deflate_state *s;
//    const ct_data *ltree; /* literal tree */
//    const ct_data *dtree; /* distance tree */
{
  let dist;           /* distance of matched string */
  let lc;             /* match length or unmatched char (if dist == 0) */
  let lx = 0;         /* running index in l_buf */
  let code;           /* the code to send */
  let extra;          /* number of extra bits to send */

  if (s.last_lit !== 0) {
    do {
      dist = (s.pending_buf[s.d_buf + lx * 2] << 8) | (s.pending_buf[s.d_buf + lx * 2 + 1]);
      lc = s.pending_buf[s.l_buf + lx];
      lx++;

      if (dist === 0) {
        send_code(s, lc, ltree); /* send a literal byte */
        //Tracecv(isgraph(lc), (stderr," '%c' ", lc));
      } else {
        /* Here, lc is the match length - MIN_MATCH */
        code = _length_code[lc];
        send_code(s, code + LITERALS$1 + 1, ltree); /* send the length code */
        extra = extra_lbits[code];
        if (extra !== 0) {
          lc -= base_length[code];
          send_bits(s, lc, extra);       /* send the extra length bits */
        }
        dist--; /* dist is now the match distance - 1 */
        code = d_code(dist);
        //Assert (code < D_CODES, "bad d_code");

        send_code(s, code, dtree);       /* send the distance code */
        extra = extra_dbits[code];
        if (extra !== 0) {
          dist -= base_dist[code];
          send_bits(s, dist, extra);   /* send the extra distance bits */
        }
      } /* literal or match pair ? */

      /* Check that the overlay between pending_buf and d_buf+l_buf is ok: */
      //Assert((uInt)(s->pending) < s->lit_bufsize + 2*lx,
      //       "pendingBuf overflow");

    } while (lx < s.last_lit);
  }

  send_code(s, END_BLOCK, ltree);
};


/* ===========================================================================
 * Construct one Huffman tree and assigns the code bit strings and lengths.
 * Update the total bit length for the current block.
 * IN assertion: the field freq is set for all tree elements.
 * OUT assertions: the fields len and code are set to the optimal bit length
 *     and corresponding code. The length opt_len is updated; static_len is
 *     also updated if stree is not null. The field max_code is set.
 */
const build_tree = (s, desc) =>
//    deflate_state *s;
//    tree_desc *desc; /* the tree descriptor */
{
  const tree     = desc.dyn_tree;
  const stree    = desc.stat_desc.static_tree;
  const has_stree = desc.stat_desc.has_stree;
  const elems    = desc.stat_desc.elems;
  let n, m;          /* iterate over heap elements */
  let max_code = -1; /* largest code with non zero frequency */
  let node;          /* new node being created */

  /* Construct the initial heap, with least frequent element in
   * heap[SMALLEST]. The sons of heap[n] are heap[2*n] and heap[2*n+1].
   * heap[0] is not used.
   */
  s.heap_len = 0;
  s.heap_max = HEAP_SIZE$1;

  for (n = 0; n < elems; n++) {
    if (tree[n * 2]/*.Freq*/ !== 0) {
      s.heap[++s.heap_len] = max_code = n;
      s.depth[n] = 0;

    } else {
      tree[n * 2 + 1]/*.Len*/ = 0;
    }
  }

  /* The pkzip format requires that at least one distance code exists,
   * and that at least one bit should be sent even if there is only one
   * possible code. So to avoid special checks later on we force at least
   * two codes of non zero frequency.
   */
  while (s.heap_len < 2) {
    node = s.heap[++s.heap_len] = (max_code < 2 ? ++max_code : 0);
    tree[node * 2]/*.Freq*/ = 1;
    s.depth[node] = 0;
    s.opt_len--;

    if (has_stree) {
      s.static_len -= stree[node * 2 + 1]/*.Len*/;
    }
    /* node is 0 or 1 so it does not have extra bits */
  }
  desc.max_code = max_code;

  /* The elements heap[heap_len/2+1 .. heap_len] are leaves of the tree,
   * establish sub-heaps of increasing lengths:
   */
  for (n = (s.heap_len >> 1/*int /2*/); n >= 1; n--) { pqdownheap(s, tree, n); }

  /* Construct the Huffman tree by repeatedly combining the least two
   * frequent nodes.
   */
  node = elems;              /* next internal node of the tree */
  do {
    //pqremove(s, tree, n);  /* n = node of least frequency */
    /*** pqremove ***/
    n = s.heap[1/*SMALLEST*/];
    s.heap[1/*SMALLEST*/] = s.heap[s.heap_len--];
    pqdownheap(s, tree, 1/*SMALLEST*/);
    /***/

    m = s.heap[1/*SMALLEST*/]; /* m = node of next least frequency */

    s.heap[--s.heap_max] = n; /* keep the nodes sorted by frequency */
    s.heap[--s.heap_max] = m;

    /* Create a new node father of n and m */
    tree[node * 2]/*.Freq*/ = tree[n * 2]/*.Freq*/ + tree[m * 2]/*.Freq*/;
    s.depth[node] = (s.depth[n] >= s.depth[m] ? s.depth[n] : s.depth[m]) + 1;
    tree[n * 2 + 1]/*.Dad*/ = tree[m * 2 + 1]/*.Dad*/ = node;

    /* and insert the new node in the heap */
    s.heap[1/*SMALLEST*/] = node++;
    pqdownheap(s, tree, 1/*SMALLEST*/);

  } while (s.heap_len >= 2);

  s.heap[--s.heap_max] = s.heap[1/*SMALLEST*/];

  /* At this point, the fields freq and dad are set. We can now
   * generate the bit lengths.
   */
  gen_bitlen(s, desc);

  /* The field len is now set, we can generate the bit codes */
  gen_codes(tree, max_code, s.bl_count);
};


/* ===========================================================================
 * Scan a literal or distance tree to determine the frequencies of the codes
 * in the bit length tree.
 */
const scan_tree = (s, tree, max_code) =>
//    deflate_state *s;
//    ct_data *tree;   /* the tree to be scanned */
//    int max_code;    /* and its largest code of non zero frequency */
{
  let n;                     /* iterates over all tree elements */
  let prevlen = -1;          /* last emitted length */
  let curlen;                /* length of current code */

  let nextlen = tree[0 * 2 + 1]/*.Len*/; /* length of next code */

  let count = 0;             /* repeat count of the current code */
  let max_count = 7;         /* max repeat count */
  let min_count = 4;         /* min repeat count */

  if (nextlen === 0) {
    max_count = 138;
    min_count = 3;
  }
  tree[(max_code + 1) * 2 + 1]/*.Len*/ = 0xffff; /* guard */

  for (n = 0; n <= max_code; n++) {
    curlen = nextlen;
    nextlen = tree[(n + 1) * 2 + 1]/*.Len*/;

    if (++count < max_count && curlen === nextlen) {
      continue;

    } else if (count < min_count) {
      s.bl_tree[curlen * 2]/*.Freq*/ += count;

    } else if (curlen !== 0) {

      if (curlen !== prevlen) { s.bl_tree[curlen * 2]/*.Freq*/++; }
      s.bl_tree[REP_3_6 * 2]/*.Freq*/++;

    } else if (count <= 10) {
      s.bl_tree[REPZ_3_10 * 2]/*.Freq*/++;

    } else {
      s.bl_tree[REPZ_11_138 * 2]/*.Freq*/++;
    }

    count = 0;
    prevlen = curlen;

    if (nextlen === 0) {
      max_count = 138;
      min_count = 3;

    } else if (curlen === nextlen) {
      max_count = 6;
      min_count = 3;

    } else {
      max_count = 7;
      min_count = 4;
    }
  }
};


/* ===========================================================================
 * Send a literal or distance tree in compressed form, using the codes in
 * bl_tree.
 */
const send_tree = (s, tree, max_code) =>
//    deflate_state *s;
//    ct_data *tree; /* the tree to be scanned */
//    int max_code;       /* and its largest code of non zero frequency */
{
  let n;                     /* iterates over all tree elements */
  let prevlen = -1;          /* last emitted length */
  let curlen;                /* length of current code */

  let nextlen = tree[0 * 2 + 1]/*.Len*/; /* length of next code */

  let count = 0;             /* repeat count of the current code */
  let max_count = 7;         /* max repeat count */
  let min_count = 4;         /* min repeat count */

  /* tree[max_code+1].Len = -1; */  /* guard already set */
  if (nextlen === 0) {
    max_count = 138;
    min_count = 3;
  }

  for (n = 0; n <= max_code; n++) {
    curlen = nextlen;
    nextlen = tree[(n + 1) * 2 + 1]/*.Len*/;

    if (++count < max_count && curlen === nextlen) {
      continue;

    } else if (count < min_count) {
      do { send_code(s, curlen, s.bl_tree); } while (--count !== 0);

    } else if (curlen !== 0) {
      if (curlen !== prevlen) {
        send_code(s, curlen, s.bl_tree);
        count--;
      }
      //Assert(count >= 3 && count <= 6, " 3_6?");
      send_code(s, REP_3_6, s.bl_tree);
      send_bits(s, count - 3, 2);

    } else if (count <= 10) {
      send_code(s, REPZ_3_10, s.bl_tree);
      send_bits(s, count - 3, 3);

    } else {
      send_code(s, REPZ_11_138, s.bl_tree);
      send_bits(s, count - 11, 7);
    }

    count = 0;
    prevlen = curlen;
    if (nextlen === 0) {
      max_count = 138;
      min_count = 3;

    } else if (curlen === nextlen) {
      max_count = 6;
      min_count = 3;

    } else {
      max_count = 7;
      min_count = 4;
    }
  }
};


/* ===========================================================================
 * Construct the Huffman tree for the bit lengths and return the index in
 * bl_order of the last bit length code to send.
 */
const build_bl_tree = (s) => {

  let max_blindex;  /* index of last bit length code of non zero freq */

  /* Determine the bit length frequencies for literal and distance trees */
  scan_tree(s, s.dyn_ltree, s.l_desc.max_code);
  scan_tree(s, s.dyn_dtree, s.d_desc.max_code);

  /* Build the bit length tree: */
  build_tree(s, s.bl_desc);
  /* opt_len now includes the length of the tree representations, except
   * the lengths of the bit lengths codes and the 5+5+4 bits for the counts.
   */

  /* Determine the number of bit length codes to send. The pkzip format
   * requires that at least 4 bit length codes be sent. (appnote.txt says
   * 3 but the actual value used is 4.)
   */
  for (max_blindex = BL_CODES$1 - 1; max_blindex >= 3; max_blindex--) {
    if (s.bl_tree[bl_order[max_blindex] * 2 + 1]/*.Len*/ !== 0) {
      break;
    }
  }
  /* Update opt_len to include the bit length tree and counts */
  s.opt_len += 3 * (max_blindex + 1) + 5 + 5 + 4;
  //Tracev((stderr, "\ndyn trees: dyn %ld, stat %ld",
  //        s->opt_len, s->static_len));

  return max_blindex;
};


/* ===========================================================================
 * Send the header for a block using dynamic Huffman trees: the counts, the
 * lengths of the bit length codes, the literal tree and the distance tree.
 * IN assertion: lcodes >= 257, dcodes >= 1, blcodes >= 4.
 */
const send_all_trees = (s, lcodes, dcodes, blcodes) =>
//    deflate_state *s;
//    int lcodes, dcodes, blcodes; /* number of codes for each tree */
{
  let rank;                    /* index in bl_order */

  //Assert (lcodes >= 257 && dcodes >= 1 && blcodes >= 4, "not enough codes");
  //Assert (lcodes <= L_CODES && dcodes <= D_CODES && blcodes <= BL_CODES,
  //        "too many codes");
  //Tracev((stderr, "\nbl counts: "));
  send_bits(s, lcodes - 257, 5); /* not +255 as stated in appnote.txt */
  send_bits(s, dcodes - 1,   5);
  send_bits(s, blcodes - 4,  4); /* not -3 as stated in appnote.txt */
  for (rank = 0; rank < blcodes; rank++) {
    //Tracev((stderr, "\nbl code %2d ", bl_order[rank]));
    send_bits(s, s.bl_tree[bl_order[rank] * 2 + 1]/*.Len*/, 3);
  }
  //Tracev((stderr, "\nbl tree: sent %ld", s->bits_sent));

  send_tree(s, s.dyn_ltree, lcodes - 1); /* literal tree */
  //Tracev((stderr, "\nlit tree: sent %ld", s->bits_sent));

  send_tree(s, s.dyn_dtree, dcodes - 1); /* distance tree */
  //Tracev((stderr, "\ndist tree: sent %ld", s->bits_sent));
};


/* ===========================================================================
 * Check if the data type is TEXT or BINARY, using the following algorithm:
 * - TEXT if the two conditions below are satisfied:
 *    a) There are no non-portable control characters belonging to the
 *       "black list" (0..6, 14..25, 28..31).
 *    b) There is at least one printable character belonging to the
 *       "white list" (9 {TAB}, 10 {LF}, 13 {CR}, 32..255).
 * - BINARY otherwise.
 * - The following partially-portable control characters form a
 *   "gray list" that is ignored in this detection algorithm:
 *   (7 {BEL}, 8 {BS}, 11 {VT}, 12 {FF}, 26 {SUB}, 27 {ESC}).
 * IN assertion: the fields Freq of dyn_ltree are set.
 */
const detect_data_type = (s) => {
  /* black_mask is the bit mask of black-listed bytes
   * set bits 0..6, 14..25, and 28..31
   * 0xf3ffc07f = binary 11110011111111111100000001111111
   */
  let black_mask = 0xf3ffc07f;
  let n;

  /* Check for non-textual ("black-listed") bytes. */
  for (n = 0; n <= 31; n++, black_mask >>>= 1) {
    if ((black_mask & 1) && (s.dyn_ltree[n * 2]/*.Freq*/ !== 0)) {
      return Z_BINARY;
    }
  }

  /* Check for textual ("white-listed") bytes. */
  if (s.dyn_ltree[9 * 2]/*.Freq*/ !== 0 || s.dyn_ltree[10 * 2]/*.Freq*/ !== 0 ||
      s.dyn_ltree[13 * 2]/*.Freq*/ !== 0) {
    return Z_TEXT;
  }
  for (n = 32; n < LITERALS$1; n++) {
    if (s.dyn_ltree[n * 2]/*.Freq*/ !== 0) {
      return Z_TEXT;
    }
  }

  /* There are no "black-listed" or "white-listed" bytes:
   * this stream either is empty or has tolerated ("gray-listed") bytes only.
   */
  return Z_BINARY;
};


let static_init_done = false;

/* ===========================================================================
 * Initialize the tree data structures for a new zlib stream.
 */
const _tr_init$1 = (s) =>
{

  if (!static_init_done) {
    tr_static_init();
    static_init_done = true;
  }

  s.l_desc  = new TreeDesc(s.dyn_ltree, static_l_desc);
  s.d_desc  = new TreeDesc(s.dyn_dtree, static_d_desc);
  s.bl_desc = new TreeDesc(s.bl_tree, static_bl_desc);

  s.bi_buf = 0;
  s.bi_valid = 0;

  /* Initialize the first block of the first file: */
  init_block(s);
};


/* ===========================================================================
 * Send a stored block
 */
const _tr_stored_block$1 = (s, buf, stored_len, last) =>
//DeflateState *s;
//charf *buf;       /* input block */
//ulg stored_len;   /* length of input block */
//int last;         /* one if this is the last block for a file */
{
  send_bits(s, (STORED_BLOCK << 1) + (last ? 1 : 0), 3);    /* send block type */
  copy_block(s, buf, stored_len, true); /* with header */
};


/* ===========================================================================
 * Send one empty static block to give enough lookahead for inflate.
 * This takes 10 bits, of which 7 may remain in the bit buffer.
 */
const _tr_align$1 = (s) => {
  send_bits(s, STATIC_TREES << 1, 3);
  send_code(s, END_BLOCK, static_ltree);
  bi_flush(s);
};


/* ===========================================================================
 * Determine the best encoding for the current block: dynamic trees, static
 * trees or store, and output the encoded block to the zip file.
 */
const _tr_flush_block$1 = (s, buf, stored_len, last) =>
//DeflateState *s;
//charf *buf;       /* input block, or NULL if too old */
//ulg stored_len;   /* length of input block */
//int last;         /* one if this is the last block for a file */
{
  let opt_lenb, static_lenb;  /* opt_len and static_len in bytes */
  let max_blindex = 0;        /* index of last bit length code of non zero freq */

  /* Build the Huffman trees unless a stored block is forced */
  if (s.level > 0) {

    /* Check if the file is binary or text */
    if (s.strm.data_type === Z_UNKNOWN$1) {
      s.strm.data_type = detect_data_type(s);
    }

    /* Construct the literal and distance trees */
    build_tree(s, s.l_desc);
    // Tracev((stderr, "\nlit data: dyn %ld, stat %ld", s->opt_len,
    //        s->static_len));

    build_tree(s, s.d_desc);
    // Tracev((stderr, "\ndist data: dyn %ld, stat %ld", s->opt_len,
    //        s->static_len));
    /* At this point, opt_len and static_len are the total bit lengths of
     * the compressed block data, excluding the tree representations.
     */

    /* Build the bit length tree for the above two trees, and get the index
     * in bl_order of the last bit length code to send.
     */
    max_blindex = build_bl_tree(s);

    /* Determine the best encoding. Compute the block lengths in bytes. */
    opt_lenb = (s.opt_len + 3 + 7) >>> 3;
    static_lenb = (s.static_len + 3 + 7) >>> 3;

    // Tracev((stderr, "\nopt %lu(%lu) stat %lu(%lu) stored %lu lit %u ",
    //        opt_lenb, s->opt_len, static_lenb, s->static_len, stored_len,
    //        s->last_lit));

    if (static_lenb <= opt_lenb) { opt_lenb = static_lenb; }

  } else {
    // Assert(buf != (char*)0, "lost buf");
    opt_lenb = static_lenb = stored_len + 5; /* force a stored block */
  }

  if ((stored_len + 4 <= opt_lenb) && (buf !== -1)) {
    /* 4: two words for the lengths */

    /* The test buf != NULL is only necessary if LIT_BUFSIZE > WSIZE.
     * Otherwise we can't have processed more than WSIZE input bytes since
     * the last block flush, because compression would have been
     * successful. If LIT_BUFSIZE <= WSIZE, it is never too late to
     * transform a block into a stored block.
     */
    _tr_stored_block$1(s, buf, stored_len, last);

  } else if (s.strategy === Z_FIXED$1 || static_lenb === opt_lenb) {

    send_bits(s, (STATIC_TREES << 1) + (last ? 1 : 0), 3);
    compress_block(s, static_ltree, static_dtree);

  } else {
    send_bits(s, (DYN_TREES << 1) + (last ? 1 : 0), 3);
    send_all_trees(s, s.l_desc.max_code + 1, s.d_desc.max_code + 1, max_blindex + 1);
    compress_block(s, s.dyn_ltree, s.dyn_dtree);
  }
  // Assert (s->compressed_len == s->bits_sent, "bad compressed size");
  /* The above check is made mod 2^32, for files larger than 512 MB
   * and uLong implemented on 32 bits.
   */
  init_block(s);

  if (last) {
    bi_windup(s);
  }
  // Tracev((stderr,"\ncomprlen %lu(%lu) ", s->compressed_len>>3,
  //       s->compressed_len-7*last));
};

/* ===========================================================================
 * Save the match info and tally the frequency counts. Return true if
 * the current block must be flushed.
 */
const _tr_tally$1 = (s, dist, lc) =>
//    deflate_state *s;
//    unsigned dist;  /* distance of matched string */
//    unsigned lc;    /* match length-MIN_MATCH or unmatched char (if dist==0) */
{
  //let out_length, in_length, dcode;

  s.pending_buf[s.d_buf + s.last_lit * 2]     = (dist >>> 8) & 0xff;
  s.pending_buf[s.d_buf + s.last_lit * 2 + 1] = dist & 0xff;

  s.pending_buf[s.l_buf + s.last_lit] = lc & 0xff;
  s.last_lit++;

  if (dist === 0) {
    /* lc is the unmatched char */
    s.dyn_ltree[lc * 2]/*.Freq*/++;
  } else {
    s.matches++;
    /* Here, lc is the match length - MIN_MATCH */
    dist--;             /* dist = match distance - 1 */
    //Assert((ush)dist < (ush)MAX_DIST(s) &&
    //       (ush)lc <= (ush)(MAX_MATCH-MIN_MATCH) &&
    //       (ush)d_code(dist) < (ush)D_CODES,  "_tr_tally: bad match");

    s.dyn_ltree[(_length_code[lc] + LITERALS$1 + 1) * 2]/*.Freq*/++;
    s.dyn_dtree[d_code(dist) * 2]/*.Freq*/++;
  }

// (!) This block is disabled in zlib defaults,
// don't enable it for binary compatibility

//#ifdef TRUNCATE_BLOCK
//  /* Try to guess if it is profitable to stop the current block here */
//  if ((s.last_lit & 0x1fff) === 0 && s.level > 2) {
//    /* Compute an upper bound for the compressed length */
//    out_length = s.last_lit*8;
//    in_length = s.strstart - s.block_start;
//
//    for (dcode = 0; dcode < D_CODES; dcode++) {
//      out_length += s.dyn_dtree[dcode*2]/*.Freq*/ * (5 + extra_dbits[dcode]);
//    }
//    out_length >>>= 3;
//    //Tracev((stderr,"\nlast_lit %u, in %ld, out ~%ld(%ld%%) ",
//    //       s->last_lit, in_length, out_length,
//    //       100L - out_length*100L/in_length));
//    if (s.matches < (s.last_lit>>1)/*int /2*/ && out_length < (in_length>>1)/*int /2*/) {
//      return true;
//    }
//  }
//#endif

  return (s.last_lit === s.lit_bufsize - 1);
  /* We avoid equality with lit_bufsize because of wraparound at 64K
   * on 16 bit machines and because stored blocks are restricted to
   * 64K-1 bytes.
   */
};

var _tr_init_1  = _tr_init$1;
var _tr_stored_block_1 = _tr_stored_block$1;
var _tr_flush_block_1  = _tr_flush_block$1;
var _tr_tally_1 = _tr_tally$1;
var _tr_align_1 = _tr_align$1;

var trees = {
	_tr_init: _tr_init_1,
	_tr_stored_block: _tr_stored_block_1,
	_tr_flush_block: _tr_flush_block_1,
	_tr_tally: _tr_tally_1,
	_tr_align: _tr_align_1
};

// Note: adler32 takes 12% for level 0 and 2% for level 6.
// It isn't worth it to make additional optimizations as in original.
// Small size is preferable.

// (C) 1995-2013 Jean-loup Gailly and Mark Adler
// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin
//
// This software is provided 'as-is', without any express or implied
// warranty. In no event will the authors be held liable for any damages
// arising from the use of this software.
//
// Permission is granted to anyone to use this software for any purpose,
// including commercial applications, and to alter it and redistribute it
// freely, subject to the following restrictions:
//
// 1. The origin of this software must not be misrepresented; you must not
//   claim that you wrote the original software. If you use this software
//   in a product, an acknowledgment in the product documentation would be
//   appreciated but is not required.
// 2. Altered source versions must be plainly marked as such, and must not be
//   misrepresented as being the original software.
// 3. This notice may not be removed or altered from any source distribution.

const adler32 = (adler, buf, len, pos) => {
  let s1 = (adler & 0xffff) |0,
      s2 = ((adler >>> 16) & 0xffff) |0,
      n = 0;

  while (len !== 0) {
    // Set limit ~ twice less than 5552, to keep
    // s2 in 31-bits, because we force signed ints.
    // in other case %= will fail.
    n = len > 2000 ? 2000 : len;
    len -= n;

    do {
      s1 = (s1 + buf[pos++]) |0;
      s2 = (s2 + s1) |0;
    } while (--n);

    s1 %= 65521;
    s2 %= 65521;
  }

  return (s1 | (s2 << 16)) |0;
};


var adler32_1 = adler32;

// Note: we can't get significant speed boost here.
// So write code to minimize size - no pregenerated tables
// and array tools dependencies.

// (C) 1995-2013 Jean-loup Gailly and Mark Adler
// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin
//
// This software is provided 'as-is', without any express or implied
// warranty. In no event will the authors be held liable for any damages
// arising from the use of this software.
//
// Permission is granted to anyone to use this software for any purpose,
// including commercial applications, and to alter it and redistribute it
// freely, subject to the following restrictions:
//
// 1. The origin of this software must not be misrepresented; you must not
//   claim that you wrote the original software. If you use this software
//   in a product, an acknowledgment in the product documentation would be
//   appreciated but is not required.
// 2. Altered source versions must be plainly marked as such, and must not be
//   misrepresented as being the original software.
// 3. This notice may not be removed or altered from any source distribution.

// Use ordinary array, since untyped makes no boost here
const makeTable = () => {
  let c, table = [];

  for (var n = 0; n < 256; n++) {
    c = n;
    for (var k = 0; k < 8; k++) {
      c = ((c & 1) ? (0xEDB88320 ^ (c >>> 1)) : (c >>> 1));
    }
    table[n] = c;
  }

  return table;
};

// Create table on load. Just 255 signed longs. Not a problem.
const crcTable = new Uint32Array(makeTable());


const crc32 = (crc, buf, len, pos) => {
  const t = crcTable;
  const end = pos + len;

  crc ^= -1;

  for (let i = pos; i < end; i++) {
    crc = (crc >>> 8) ^ t[(crc ^ buf[i]) & 0xFF];
  }

  return (crc ^ (-1)); // >>> 0;
};


var crc32_1 = crc32;

// (C) 1995-2013 Jean-loup Gailly and Mark Adler
// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin
//
// This software is provided 'as-is', without any express or implied
// warranty. In no event will the authors be held liable for any damages
// arising from the use of this software.
//
// Permission is granted to anyone to use this software for any purpose,
// including commercial applications, and to alter it and redistribute it
// freely, subject to the following restrictions:
//
// 1. The origin of this software must not be misrepresented; you must not
//   claim that you wrote the original software. If you use this software
//   in a product, an acknowledgment in the product documentation would be
//   appreciated but is not required.
// 2. Altered source versions must be plainly marked as such, and must not be
//   misrepresented as being the original software.
// 3. This notice may not be removed or altered from any source distribution.

var messages = {
  2:      'need dictionary',     /* Z_NEED_DICT       2  */
  1:      'stream end',          /* Z_STREAM_END      1  */
  0:      '',                    /* Z_OK              0  */
  '-1':   'file error',          /* Z_ERRNO         (-1) */
  '-2':   'stream error',        /* Z_STREAM_ERROR  (-2) */
  '-3':   'data error',          /* Z_DATA_ERROR    (-3) */
  '-4':   'insufficient memory', /* Z_MEM_ERROR     (-4) */
  '-5':   'buffer error',        /* Z_BUF_ERROR     (-5) */
  '-6':   'incompatible version' /* Z_VERSION_ERROR (-6) */
};

// (C) 1995-2013 Jean-loup Gailly and Mark Adler
// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin
//
// This software is provided 'as-is', without any express or implied
// warranty. In no event will the authors be held liable for any damages
// arising from the use of this software.
//
// Permission is granted to anyone to use this software for any purpose,
// including commercial applications, and to alter it and redistribute it
// freely, subject to the following restrictions:
//
// 1. The origin of this software must not be misrepresented; you must not
//   claim that you wrote the original software. If you use this software
//   in a product, an acknowledgment in the product documentation would be
//   appreciated but is not required.
// 2. Altered source versions must be plainly marked as such, and must not be
//   misrepresented as being the original software.
// 3. This notice may not be removed or altered from any source distribution.

var constants$2 = {

  /* Allowed flush values; see deflate() and inflate() below for details */
  Z_NO_FLUSH:         0,
  Z_PARTIAL_FLUSH:    1,
  Z_SYNC_FLUSH:       2,
  Z_FULL_FLUSH:       3,
  Z_FINISH:           4,
  Z_BLOCK:            5,
  Z_TREES:            6,

  /* Return codes for the compression/decompression functions. Negative values
  * are errors, positive values are used for special but normal events.
  */
  Z_OK:               0,
  Z_STREAM_END:       1,
  Z_NEED_DICT:        2,
  Z_ERRNO:           -1,
  Z_STREAM_ERROR:    -2,
  Z_DATA_ERROR:      -3,
  Z_MEM_ERROR:       -4,
  Z_BUF_ERROR:       -5,
  //Z_VERSION_ERROR: -6,

  /* compression levels */
  Z_NO_COMPRESSION:         0,
  Z_BEST_SPEED:             1,
  Z_BEST_COMPRESSION:       9,
  Z_DEFAULT_COMPRESSION:   -1,


  Z_FILTERED:               1,
  Z_HUFFMAN_ONLY:           2,
  Z_RLE:                    3,
  Z_FIXED:                  4,
  Z_DEFAULT_STRATEGY:       0,

  /* Possible values of the data_type field (though see inflate()) */
  Z_BINARY:                 0,
  Z_TEXT:                   1,
  //Z_ASCII:                1, // = Z_TEXT (deprecated)
  Z_UNKNOWN:                2,

  /* The deflate compression method */
  Z_DEFLATED:               8
  //Z_NULL:                 null // Use -1 or null inline, depending on var type
};

// (C) 1995-2013 Jean-loup Gailly and Mark Adler
// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin
//
// This software is provided 'as-is', without any express or implied
// warranty. In no event will the authors be held liable for any damages
// arising from the use of this software.
//
// Permission is granted to anyone to use this software for any purpose,
// including commercial applications, and to alter it and redistribute it
// freely, subject to the following restrictions:
//
// 1. The origin of this software must not be misrepresented; you must not
//   claim that you wrote the original software. If you use this software
//   in a product, an acknowledgment in the product documentation would be
//   appreciated but is not required.
// 2. Altered source versions must be plainly marked as such, and must not be
//   misrepresented as being the original software.
// 3. This notice may not be removed or altered from any source distribution.

const { _tr_init, _tr_stored_block, _tr_flush_block, _tr_tally, _tr_align } = trees;




/* Public constants ==========================================================*/
/* ===========================================================================*/

const {
  Z_NO_FLUSH: Z_NO_FLUSH$2, Z_PARTIAL_FLUSH, Z_FULL_FLUSH: Z_FULL_FLUSH$1, Z_FINISH: Z_FINISH$3, Z_BLOCK: Z_BLOCK$1,
  Z_OK: Z_OK$3, Z_STREAM_END: Z_STREAM_END$3, Z_STREAM_ERROR: Z_STREAM_ERROR$2, Z_DATA_ERROR: Z_DATA_ERROR$2, Z_BUF_ERROR: Z_BUF_ERROR$1,
  Z_DEFAULT_COMPRESSION: Z_DEFAULT_COMPRESSION$1,
  Z_FILTERED, Z_HUFFMAN_ONLY, Z_RLE, Z_FIXED, Z_DEFAULT_STRATEGY: Z_DEFAULT_STRATEGY$1,
  Z_UNKNOWN,
  Z_DEFLATED: Z_DEFLATED$2
} = constants$2;

/*============================================================================*/


const MAX_MEM_LEVEL = 9;
/* Maximum value for memLevel in deflateInit2 */
const MAX_WBITS$1 = 15;
/* 32K LZ77 window */
const DEF_MEM_LEVEL = 8;


const LENGTH_CODES  = 29;
/* number of length codes, not counting the special END_BLOCK code */
const LITERALS      = 256;
/* number of literal bytes 0..255 */
const L_CODES       = LITERALS + 1 + LENGTH_CODES;
/* number of Literal or Length codes, including the END_BLOCK code */
const D_CODES       = 30;
/* number of distance codes */
const BL_CODES      = 19;
/* number of codes used to transfer the bit lengths */
const HEAP_SIZE     = 2 * L_CODES + 1;
/* maximum heap size */
const MAX_BITS  = 15;
/* All codes must not exceed MAX_BITS bits */

const MIN_MATCH = 3;
const MAX_MATCH = 258;
const MIN_LOOKAHEAD = (MAX_MATCH + MIN_MATCH + 1);

const PRESET_DICT = 0x20;

const INIT_STATE = 42;
const EXTRA_STATE = 69;
const NAME_STATE = 73;
const COMMENT_STATE = 91;
const HCRC_STATE = 103;
const BUSY_STATE = 113;
const FINISH_STATE = 666;

const BS_NEED_MORE      = 1; /* block not completed, need more input or more output */
const BS_BLOCK_DONE     = 2; /* block flush performed */
const BS_FINISH_STARTED = 3; /* finish started, need only more output at next deflate */
const BS_FINISH_DONE    = 4; /* finish done, accept no more input or output */

const OS_CODE = 0x03; // Unix :) . Don't detect, use this default.

const err = (strm, errorCode) => {
  strm.msg = messages[errorCode];
  return errorCode;
};

const rank = (f) => {
  return ((f) << 1) - ((f) > 4 ? 9 : 0);
};

const zero = (buf) => {
  let len = buf.length; while (--len >= 0) { buf[len] = 0; }
};


/* eslint-disable new-cap */
let HASH_ZLIB = (s, prev, data) => ((prev << s.hash_shift) ^ data) & s.hash_mask;
// This hash causes less collisions, https://github.com/nodeca/pako/issues/135
// But breaks binary compatibility
//let HASH_FAST = (s, prev, data) => ((prev << 8) + (prev >> 8) + (data << 4)) & s.hash_mask;
let HASH = HASH_ZLIB;

/* =========================================================================
 * Flush as much pending output as possible. All deflate() output goes
 * through this function so some applications may wish to modify it
 * to avoid allocating a large strm->output buffer and copying into it.
 * (See also read_buf()).
 */
const flush_pending = (strm) => {
  const s = strm.state;

  //_tr_flush_bits(s);
  let len = s.pending;
  if (len > strm.avail_out) {
    len = strm.avail_out;
  }
  if (len === 0) { return; }

  strm.output.set(s.pending_buf.subarray(s.pending_out, s.pending_out + len), strm.next_out);
  strm.next_out += len;
  s.pending_out += len;
  strm.total_out += len;
  strm.avail_out -= len;
  s.pending -= len;
  if (s.pending === 0) {
    s.pending_out = 0;
  }
};


const flush_block_only = (s, last) => {
  _tr_flush_block(s, (s.block_start >= 0 ? s.block_start : -1), s.strstart - s.block_start, last);
  s.block_start = s.strstart;
  flush_pending(s.strm);
};


const put_byte = (s, b) => {
  s.pending_buf[s.pending++] = b;
};


/* =========================================================================
 * Put a short in the pending buffer. The 16-bit value is put in MSB order.
 * IN assertion: the stream state is correct and there is enough room in
 * pending_buf.
 */
const putShortMSB = (s, b) => {

  //  put_byte(s, (Byte)(b >> 8));
//  put_byte(s, (Byte)(b & 0xff));
  s.pending_buf[s.pending++] = (b >>> 8) & 0xff;
  s.pending_buf[s.pending++] = b & 0xff;
};


/* ===========================================================================
 * Read a new buffer from the current input stream, update the adler32
 * and total number of bytes read.  All deflate() input goes through
 * this function so some applications may wish to modify it to avoid
 * allocating a large strm->input buffer and copying from it.
 * (See also flush_pending()).
 */
const read_buf = (strm, buf, start, size) => {

  let len = strm.avail_in;

  if (len > size) { len = size; }
  if (len === 0) { return 0; }

  strm.avail_in -= len;

  // zmemcpy(buf, strm->next_in, len);
  buf.set(strm.input.subarray(strm.next_in, strm.next_in + len), start);
  if (strm.state.wrap === 1) {
    strm.adler = adler32_1(strm.adler, buf, len, start);
  }

  else if (strm.state.wrap === 2) {
    strm.adler = crc32_1(strm.adler, buf, len, start);
  }

  strm.next_in += len;
  strm.total_in += len;

  return len;
};


/* ===========================================================================
 * Set match_start to the longest match starting at the given string and
 * return its length. Matches shorter or equal to prev_length are discarded,
 * in which case the result is equal to prev_length and match_start is
 * garbage.
 * IN assertions: cur_match is the head of the hash chain for the current
 *   string (strstart) and its distance is <= MAX_DIST, and prev_length >= 1
 * OUT assertion: the match length is not greater than s->lookahead.
 */
const longest_match = (s, cur_match) => {

  let chain_length = s.max_chain_length;      /* max hash chain length */
  let scan = s.strstart; /* current string */
  let match;                       /* matched string */
  let len;                           /* length of current match */
  let best_len = s.prev_length;              /* best match length so far */
  let nice_match = s.nice_match;             /* stop if match long enough */
  const limit = (s.strstart > (s.w_size - MIN_LOOKAHEAD)) ?
      s.strstart - (s.w_size - MIN_LOOKAHEAD) : 0/*NIL*/;

  const _win = s.window; // shortcut

  const wmask = s.w_mask;
  const prev  = s.prev;

  /* Stop when cur_match becomes <= limit. To simplify the code,
   * we prevent matches with the string of window index 0.
   */

  const strend = s.strstart + MAX_MATCH;
  let scan_end1  = _win[scan + best_len - 1];
  let scan_end   = _win[scan + best_len];

  /* The code is optimized for HASH_BITS >= 8 and MAX_MATCH-2 multiple of 16.
   * It is easy to get rid of this optimization if necessary.
   */
  // Assert(s->hash_bits >= 8 && MAX_MATCH == 258, "Code too clever");

  /* Do not waste too much time if we already have a good match: */
  if (s.prev_length >= s.good_match) {
    chain_length >>= 2;
  }
  /* Do not look for matches beyond the end of the input. This is necessary
   * to make deflate deterministic.
   */
  if (nice_match > s.lookahead) { nice_match = s.lookahead; }

  // Assert((ulg)s->strstart <= s->window_size-MIN_LOOKAHEAD, "need lookahead");

  do {
    // Assert(cur_match < s->strstart, "no future");
    match = cur_match;

    /* Skip to next match if the match length cannot increase
     * or if the match length is less than 2.  Note that the checks below
     * for insufficient lookahead only occur occasionally for performance
     * reasons.  Therefore uninitialized memory will be accessed, and
     * conditional jumps will be made that depend on those values.
     * However the length of the match is limited to the lookahead, so
     * the output of deflate is not affected by the uninitialized values.
     */

    if (_win[match + best_len]     !== scan_end  ||
        _win[match + best_len - 1] !== scan_end1 ||
        _win[match]                !== _win[scan] ||
        _win[++match]              !== _win[scan + 1]) {
      continue;
    }

    /* The check at best_len-1 can be removed because it will be made
     * again later. (This heuristic is not always a win.)
     * It is not necessary to compare scan[2] and match[2] since they
     * are always equal when the other bytes match, given that
     * the hash keys are equal and that HASH_BITS >= 8.
     */
    scan += 2;
    match++;
    // Assert(*scan == *match, "match[2]?");

    /* We check for insufficient lookahead only every 8th comparison;
     * the 256th check will be made at strstart+258.
     */
    do {
      /*jshint noempty:false*/
    } while (_win[++scan] === _win[++match] && _win[++scan] === _win[++match] &&
             _win[++scan] === _win[++match] && _win[++scan] === _win[++match] &&
             _win[++scan] === _win[++match] && _win[++scan] === _win[++match] &&
             _win[++scan] === _win[++match] && _win[++scan] === _win[++match] &&
             scan < strend);

    // Assert(scan <= s->window+(unsigned)(s->window_size-1), "wild scan");

    len = MAX_MATCH - (strend - scan);
    scan = strend - MAX_MATCH;

    if (len > best_len) {
      s.match_start = cur_match;
      best_len = len;
      if (len >= nice_match) {
        break;
      }
      scan_end1  = _win[scan + best_len - 1];
      scan_end   = _win[scan + best_len];
    }
  } while ((cur_match = prev[cur_match & wmask]) > limit && --chain_length !== 0);

  if (best_len <= s.lookahead) {
    return best_len;
  }
  return s.lookahead;
};


/* ===========================================================================
 * Fill the window when the lookahead becomes insufficient.
 * Updates strstart and lookahead.
 *
 * IN assertion: lookahead < MIN_LOOKAHEAD
 * OUT assertions: strstart <= window_size-MIN_LOOKAHEAD
 *    At least one byte has been read, or avail_in == 0; reads are
 *    performed for at least two bytes (required for the zip translate_eol
 *    option -- not supported here).
 */
const fill_window = (s) => {

  const _w_size = s.w_size;
  let p, n, m, more, str;

  //Assert(s->lookahead < MIN_LOOKAHEAD, "already enough lookahead");

  do {
    more = s.window_size - s.lookahead - s.strstart;

    // JS ints have 32 bit, block below not needed
    /* Deal with !@#$% 64K limit: */
    //if (sizeof(int) <= 2) {
    //    if (more == 0 && s->strstart == 0 && s->lookahead == 0) {
    //        more = wsize;
    //
    //  } else if (more == (unsigned)(-1)) {
    //        /* Very unlikely, but possible on 16 bit machine if
    //         * strstart == 0 && lookahead == 1 (input done a byte at time)
    //         */
    //        more--;
    //    }
    //}


    /* If the window is almost full and there is insufficient lookahead,
     * move the upper half to the lower one to make room in the upper half.
     */
    if (s.strstart >= _w_size + (_w_size - MIN_LOOKAHEAD)) {

      s.window.set(s.window.subarray(_w_size, _w_size + _w_size), 0);
      s.match_start -= _w_size;
      s.strstart -= _w_size;
      /* we now have strstart >= MAX_DIST */
      s.block_start -= _w_size;

      /* Slide the hash table (could be avoided with 32 bit values
       at the expense of memory usage). We slide even when level == 0
       to keep the hash table consistent if we switch back to level > 0
       later. (Using level 0 permanently is not an optimal usage of
       zlib, so we don't care about this pathological case.)
       */

      n = s.hash_size;
      p = n;

      do {
        m = s.head[--p];
        s.head[p] = (m >= _w_size ? m - _w_size : 0);
      } while (--n);

      n = _w_size;
      p = n;

      do {
        m = s.prev[--p];
        s.prev[p] = (m >= _w_size ? m - _w_size : 0);
        /* If n is not on any hash chain, prev[n] is garbage but
         * its value will never be used.
         */
      } while (--n);

      more += _w_size;
    }
    if (s.strm.avail_in === 0) {
      break;
    }

    /* If there was no sliding:
     *    strstart <= WSIZE+MAX_DIST-1 && lookahead <= MIN_LOOKAHEAD - 1 &&
     *    more == window_size - lookahead - strstart
     * => more >= window_size - (MIN_LOOKAHEAD-1 + WSIZE + MAX_DIST-1)
     * => more >= window_size - 2*WSIZE + 2
     * In the BIG_MEM or MMAP case (not yet supported),
     *   window_size == input_size + MIN_LOOKAHEAD  &&
     *   strstart + s->lookahead <= input_size => more >= MIN_LOOKAHEAD.
     * Otherwise, window_size == 2*WSIZE so more >= 2.
     * If there was sliding, more >= WSIZE. So in all cases, more >= 2.
     */
    //Assert(more >= 2, "more < 2");
    n = read_buf(s.strm, s.window, s.strstart + s.lookahead, more);
    s.lookahead += n;

    /* Initialize the hash value now that we have some input: */
    if (s.lookahead + s.insert >= MIN_MATCH) {
      str = s.strstart - s.insert;
      s.ins_h = s.window[str];

      /* UPDATE_HASH(s, s->ins_h, s->window[str + 1]); */
      s.ins_h = HASH(s, s.ins_h, s.window[str + 1]);
//#if MIN_MATCH != 3
//        Call update_hash() MIN_MATCH-3 more times
//#endif
      while (s.insert) {
        /* UPDATE_HASH(s, s->ins_h, s->window[str + MIN_MATCH-1]); */
        s.ins_h = HASH(s, s.ins_h, s.window[str + MIN_MATCH - 1]);

        s.prev[str & s.w_mask] = s.head[s.ins_h];
        s.head[s.ins_h] = str;
        str++;
        s.insert--;
        if (s.lookahead + s.insert < MIN_MATCH) {
          break;
        }
      }
    }
    /* If the whole input has less than MIN_MATCH bytes, ins_h is garbage,
     * but this is not important since only literal bytes will be emitted.
     */

  } while (s.lookahead < MIN_LOOKAHEAD && s.strm.avail_in !== 0);

  /* If the WIN_INIT bytes after the end of the current data have never been
   * written, then zero those bytes in order to avoid memory check reports of
   * the use of uninitialized (or uninitialised as Julian writes) bytes by
   * the longest match routines.  Update the high water mark for the next
   * time through here.  WIN_INIT is set to MAX_MATCH since the longest match
   * routines allow scanning to strstart + MAX_MATCH, ignoring lookahead.
   */
//  if (s.high_water < s.window_size) {
//    const curr = s.strstart + s.lookahead;
//    let init = 0;
//
//    if (s.high_water < curr) {
//      /* Previous high water mark below current data -- zero WIN_INIT
//       * bytes or up to end of window, whichever is less.
//       */
//      init = s.window_size - curr;
//      if (init > WIN_INIT)
//        init = WIN_INIT;
//      zmemzero(s->window + curr, (unsigned)init);
//      s->high_water = curr + init;
//    }
//    else if (s->high_water < (ulg)curr + WIN_INIT) {
//      /* High water mark at or above current data, but below current data
//       * plus WIN_INIT -- zero out to current data plus WIN_INIT, or up
//       * to end of window, whichever is less.
//       */
//      init = (ulg)curr + WIN_INIT - s->high_water;
//      if (init > s->window_size - s->high_water)
//        init = s->window_size - s->high_water;
//      zmemzero(s->window + s->high_water, (unsigned)init);
//      s->high_water += init;
//    }
//  }
//
//  Assert((ulg)s->strstart <= s->window_size - MIN_LOOKAHEAD,
//    "not enough room for search");
};

/* ===========================================================================
 * Copy without compression as much as possible from the input stream, return
 * the current block state.
 * This function does not insert new strings in the dictionary since
 * uncompressible data is probably not useful. This function is used
 * only for the level=0 compression option.
 * NOTE: this function should be optimized to avoid extra copying from
 * window to pending_buf.
 */
const deflate_stored = (s, flush) => {

  /* Stored blocks are limited to 0xffff bytes, pending_buf is limited
   * to pending_buf_size, and each stored block has a 5 byte header:
   */
  let max_block_size = 0xffff;

  if (max_block_size > s.pending_buf_size - 5) {
    max_block_size = s.pending_buf_size - 5;
  }

  /* Copy as much as possible from input to output: */
  for (;;) {
    /* Fill the window as much as possible: */
    if (s.lookahead <= 1) {

      //Assert(s->strstart < s->w_size+MAX_DIST(s) ||
      //  s->block_start >= (long)s->w_size, "slide too late");
//      if (!(s.strstart < s.w_size + (s.w_size - MIN_LOOKAHEAD) ||
//        s.block_start >= s.w_size)) {
//        throw  new Error("slide too late");
//      }

      fill_window(s);
      if (s.lookahead === 0 && flush === Z_NO_FLUSH$2) {
        return BS_NEED_MORE;
      }

      if (s.lookahead === 0) {
        break;
      }
      /* flush the current block */
    }
    //Assert(s->block_start >= 0L, "block gone");
//    if (s.block_start < 0) throw new Error("block gone");

    s.strstart += s.lookahead;
    s.lookahead = 0;

    /* Emit a stored block if pending_buf will be full: */
    const max_start = s.block_start + max_block_size;

    if (s.strstart === 0 || s.strstart >= max_start) {
      /* strstart == 0 is possible when wraparound on 16-bit machine */
      s.lookahead = s.strstart - max_start;
      s.strstart = max_start;
      /*** FLUSH_BLOCK(s, 0); ***/
      flush_block_only(s, false);
      if (s.strm.avail_out === 0) {
        return BS_NEED_MORE;
      }
      /***/


    }
    /* Flush if we may have to slide, otherwise block_start may become
     * negative and the data will be gone:
     */
    if (s.strstart - s.block_start >= (s.w_size - MIN_LOOKAHEAD)) {
      /*** FLUSH_BLOCK(s, 0); ***/
      flush_block_only(s, false);
      if (s.strm.avail_out === 0) {
        return BS_NEED_MORE;
      }
      /***/
    }
  }

  s.insert = 0;

  if (flush === Z_FINISH$3) {
    /*** FLUSH_BLOCK(s, 1); ***/
    flush_block_only(s, true);
    if (s.strm.avail_out === 0) {
      return BS_FINISH_STARTED;
    }
    /***/
    return BS_FINISH_DONE;
  }

  if (s.strstart > s.block_start) {
    /*** FLUSH_BLOCK(s, 0); ***/
    flush_block_only(s, false);
    if (s.strm.avail_out === 0) {
      return BS_NEED_MORE;
    }
    /***/
  }

  return BS_NEED_MORE;
};

/* ===========================================================================
 * Compress as much as possible from the input stream, return the current
 * block state.
 * This function does not perform lazy evaluation of matches and inserts
 * new strings in the dictionary only for unmatched strings or for short
 * matches. It is used only for the fast compression options.
 */
const deflate_fast = (s, flush) => {

  let hash_head;        /* head of the hash chain */
  let bflush;           /* set if current block must be flushed */

  for (;;) {
    /* Make sure that we always have enough lookahead, except
     * at the end of the input file. We need MAX_MATCH bytes
     * for the next match, plus MIN_MATCH bytes to insert the
     * string following the next match.
     */
    if (s.lookahead < MIN_LOOKAHEAD) {
      fill_window(s);
      if (s.lookahead < MIN_LOOKAHEAD && flush === Z_NO_FLUSH$2) {
        return BS_NEED_MORE;
      }
      if (s.lookahead === 0) {
        break; /* flush the current block */
      }
    }

    /* Insert the string window[strstart .. strstart+2] in the
     * dictionary, and set hash_head to the head of the hash chain:
     */
    hash_head = 0/*NIL*/;
    if (s.lookahead >= MIN_MATCH) {
      /*** INSERT_STRING(s, s.strstart, hash_head); ***/
      s.ins_h = HASH(s, s.ins_h, s.window[s.strstart + MIN_MATCH - 1]);
      hash_head = s.prev[s.strstart & s.w_mask] = s.head[s.ins_h];
      s.head[s.ins_h] = s.strstart;
      /***/
    }

    /* Find the longest match, discarding those <= prev_length.
     * At this point we have always match_length < MIN_MATCH
     */
    if (hash_head !== 0/*NIL*/ && ((s.strstart - hash_head) <= (s.w_size - MIN_LOOKAHEAD))) {
      /* To simplify the code, we prevent matches with the string
       * of window index 0 (in particular we have to avoid a match
       * of the string with itself at the start of the input file).
       */
      s.match_length = longest_match(s, hash_head);
      /* longest_match() sets match_start */
    }
    if (s.match_length >= MIN_MATCH) {
      // check_match(s, s.strstart, s.match_start, s.match_length); // for debug only

      /*** _tr_tally_dist(s, s.strstart - s.match_start,
                     s.match_length - MIN_MATCH, bflush); ***/
      bflush = _tr_tally(s, s.strstart - s.match_start, s.match_length - MIN_MATCH);

      s.lookahead -= s.match_length;

      /* Insert new strings in the hash table only if the match length
       * is not too large. This saves time but degrades compression.
       */
      if (s.match_length <= s.max_lazy_match/*max_insert_length*/ && s.lookahead >= MIN_MATCH) {
        s.match_length--; /* string at strstart already in table */
        do {
          s.strstart++;
          /*** INSERT_STRING(s, s.strstart, hash_head); ***/
          s.ins_h = HASH(s, s.ins_h, s.window[s.strstart + MIN_MATCH - 1]);
          hash_head = s.prev[s.strstart & s.w_mask] = s.head[s.ins_h];
          s.head[s.ins_h] = s.strstart;
          /***/
          /* strstart never exceeds WSIZE-MAX_MATCH, so there are
           * always MIN_MATCH bytes ahead.
           */
        } while (--s.match_length !== 0);
        s.strstart++;
      } else
      {
        s.strstart += s.match_length;
        s.match_length = 0;
        s.ins_h = s.window[s.strstart];
        /* UPDATE_HASH(s, s.ins_h, s.window[s.strstart+1]); */
        s.ins_h = HASH(s, s.ins_h, s.window[s.strstart + 1]);

//#if MIN_MATCH != 3
//                Call UPDATE_HASH() MIN_MATCH-3 more times
//#endif
        /* If lookahead < MIN_MATCH, ins_h is garbage, but it does not
         * matter since it will be recomputed at next deflate call.
         */
      }
    } else {
      /* No match, output a literal byte */
      //Tracevv((stderr,"%c", s.window[s.strstart]));
      /*** _tr_tally_lit(s, s.window[s.strstart], bflush); ***/
      bflush = _tr_tally(s, 0, s.window[s.strstart]);

      s.lookahead--;
      s.strstart++;
    }
    if (bflush) {
      /*** FLUSH_BLOCK(s, 0); ***/
      flush_block_only(s, false);
      if (s.strm.avail_out === 0) {
        return BS_NEED_MORE;
      }
      /***/
    }
  }
  s.insert = ((s.strstart < (MIN_MATCH - 1)) ? s.strstart : MIN_MATCH - 1);
  if (flush === Z_FINISH$3) {
    /*** FLUSH_BLOCK(s, 1); ***/
    flush_block_only(s, true);
    if (s.strm.avail_out === 0) {
      return BS_FINISH_STARTED;
    }
    /***/
    return BS_FINISH_DONE;
  }
  if (s.last_lit) {
    /*** FLUSH_BLOCK(s, 0); ***/
    flush_block_only(s, false);
    if (s.strm.avail_out === 0) {
      return BS_NEED_MORE;
    }
    /***/
  }
  return BS_BLOCK_DONE;
};

/* ===========================================================================
 * Same as above, but achieves better compression. We use a lazy
 * evaluation for matches: a match is finally adopted only if there is
 * no better match at the next window position.
 */
const deflate_slow = (s, flush) => {

  let hash_head;          /* head of hash chain */
  let bflush;              /* set if current block must be flushed */

  let max_insert;

  /* Process the input block. */
  for (;;) {
    /* Make sure that we always have enough lookahead, except
     * at the end of the input file. We need MAX_MATCH bytes
     * for the next match, plus MIN_MATCH bytes to insert the
     * string following the next match.
     */
    if (s.lookahead < MIN_LOOKAHEAD) {
      fill_window(s);
      if (s.lookahead < MIN_LOOKAHEAD && flush === Z_NO_FLUSH$2) {
        return BS_NEED_MORE;
      }
      if (s.lookahead === 0) { break; } /* flush the current block */
    }

    /* Insert the string window[strstart .. strstart+2] in the
     * dictionary, and set hash_head to the head of the hash chain:
     */
    hash_head = 0/*NIL*/;
    if (s.lookahead >= MIN_MATCH) {
      /*** INSERT_STRING(s, s.strstart, hash_head); ***/
      s.ins_h = HASH(s, s.ins_h, s.window[s.strstart + MIN_MATCH - 1]);
      hash_head = s.prev[s.strstart & s.w_mask] = s.head[s.ins_h];
      s.head[s.ins_h] = s.strstart;
      /***/
    }

    /* Find the longest match, discarding those <= prev_length.
     */
    s.prev_length = s.match_length;
    s.prev_match = s.match_start;
    s.match_length = MIN_MATCH - 1;

    if (hash_head !== 0/*NIL*/ && s.prev_length < s.max_lazy_match &&
        s.strstart - hash_head <= (s.w_size - MIN_LOOKAHEAD)/*MAX_DIST(s)*/) {
      /* To simplify the code, we prevent matches with the string
       * of window index 0 (in particular we have to avoid a match
       * of the string with itself at the start of the input file).
       */
      s.match_length = longest_match(s, hash_head);
      /* longest_match() sets match_start */

      if (s.match_length <= 5 &&
         (s.strategy === Z_FILTERED || (s.match_length === MIN_MATCH && s.strstart - s.match_start > 4096/*TOO_FAR*/))) {

        /* If prev_match is also MIN_MATCH, match_start is garbage
         * but we will ignore the current match anyway.
         */
        s.match_length = MIN_MATCH - 1;
      }
    }
    /* If there was a match at the previous step and the current
     * match is not better, output the previous match:
     */
    if (s.prev_length >= MIN_MATCH && s.match_length <= s.prev_length) {
      max_insert = s.strstart + s.lookahead - MIN_MATCH;
      /* Do not insert strings in hash table beyond this. */

      //check_match(s, s.strstart-1, s.prev_match, s.prev_length);

      /***_tr_tally_dist(s, s.strstart - 1 - s.prev_match,
                     s.prev_length - MIN_MATCH, bflush);***/
      bflush = _tr_tally(s, s.strstart - 1 - s.prev_match, s.prev_length - MIN_MATCH);
      /* Insert in hash table all strings up to the end of the match.
       * strstart-1 and strstart are already inserted. If there is not
       * enough lookahead, the last two strings are not inserted in
       * the hash table.
       */
      s.lookahead -= s.prev_length - 1;
      s.prev_length -= 2;
      do {
        if (++s.strstart <= max_insert) {
          /*** INSERT_STRING(s, s.strstart, hash_head); ***/
          s.ins_h = HASH(s, s.ins_h, s.window[s.strstart + MIN_MATCH - 1]);
          hash_head = s.prev[s.strstart & s.w_mask] = s.head[s.ins_h];
          s.head[s.ins_h] = s.strstart;
          /***/
        }
      } while (--s.prev_length !== 0);
      s.match_available = 0;
      s.match_length = MIN_MATCH - 1;
      s.strstart++;

      if (bflush) {
        /*** FLUSH_BLOCK(s, 0); ***/
        flush_block_only(s, false);
        if (s.strm.avail_out === 0) {
          return BS_NEED_MORE;
        }
        /***/
      }

    } else if (s.match_available) {
      /* If there was no match at the previous position, output a
       * single literal. If there was a match but the current match
       * is longer, truncate the previous match to a single literal.
       */
      //Tracevv((stderr,"%c", s->window[s->strstart-1]));
      /*** _tr_tally_lit(s, s.window[s.strstart-1], bflush); ***/
      bflush = _tr_tally(s, 0, s.window[s.strstart - 1]);

      if (bflush) {
        /*** FLUSH_BLOCK_ONLY(s, 0) ***/
        flush_block_only(s, false);
        /***/
      }
      s.strstart++;
      s.lookahead--;
      if (s.strm.avail_out === 0) {
        return BS_NEED_MORE;
      }
    } else {
      /* There is no previous match to compare with, wait for
       * the next step to decide.
       */
      s.match_available = 1;
      s.strstart++;
      s.lookahead--;
    }
  }
  //Assert (flush != Z_NO_FLUSH, "no flush?");
  if (s.match_available) {
    //Tracevv((stderr,"%c", s->window[s->strstart-1]));
    /*** _tr_tally_lit(s, s.window[s.strstart-1], bflush); ***/
    bflush = _tr_tally(s, 0, s.window[s.strstart - 1]);

    s.match_available = 0;
  }
  s.insert = s.strstart < MIN_MATCH - 1 ? s.strstart : MIN_MATCH - 1;
  if (flush === Z_FINISH$3) {
    /*** FLUSH_BLOCK(s, 1); ***/
    flush_block_only(s, true);
    if (s.strm.avail_out === 0) {
      return BS_FINISH_STARTED;
    }
    /***/
    return BS_FINISH_DONE;
  }
  if (s.last_lit) {
    /*** FLUSH_BLOCK(s, 0); ***/
    flush_block_only(s, false);
    if (s.strm.avail_out === 0) {
      return BS_NEED_MORE;
    }
    /***/
  }

  return BS_BLOCK_DONE;
};


/* ===========================================================================
 * For Z_RLE, simply look for runs of bytes, generate matches only of distance
 * one.  Do not maintain a hash table.  (It will be regenerated if this run of
 * deflate switches away from Z_RLE.)
 */
const deflate_rle = (s, flush) => {

  let bflush;            /* set if current block must be flushed */
  let prev;              /* byte at distance one to match */
  let scan, strend;      /* scan goes up to strend for length of run */

  const _win = s.window;

  for (;;) {
    /* Make sure that we always have enough lookahead, except
     * at the end of the input file. We need MAX_MATCH bytes
     * for the longest run, plus one for the unrolled loop.
     */
    if (s.lookahead <= MAX_MATCH) {
      fill_window(s);
      if (s.lookahead <= MAX_MATCH && flush === Z_NO_FLUSH$2) {
        return BS_NEED_MORE;
      }
      if (s.lookahead === 0) { break; } /* flush the current block */
    }

    /* See how many times the previous byte repeats */
    s.match_length = 0;
    if (s.lookahead >= MIN_MATCH && s.strstart > 0) {
      scan = s.strstart - 1;
      prev = _win[scan];
      if (prev === _win[++scan] && prev === _win[++scan] && prev === _win[++scan]) {
        strend = s.strstart + MAX_MATCH;
        do {
          /*jshint noempty:false*/
        } while (prev === _win[++scan] && prev === _win[++scan] &&
                 prev === _win[++scan] && prev === _win[++scan] &&
                 prev === _win[++scan] && prev === _win[++scan] &&
                 prev === _win[++scan] && prev === _win[++scan] &&
                 scan < strend);
        s.match_length = MAX_MATCH - (strend - scan);
        if (s.match_length > s.lookahead) {
          s.match_length = s.lookahead;
        }
      }
      //Assert(scan <= s->window+(uInt)(s->window_size-1), "wild scan");
    }

    /* Emit match if have run of MIN_MATCH or longer, else emit literal */
    if (s.match_length >= MIN_MATCH) {
      //check_match(s, s.strstart, s.strstart - 1, s.match_length);

      /*** _tr_tally_dist(s, 1, s.match_length - MIN_MATCH, bflush); ***/
      bflush = _tr_tally(s, 1, s.match_length - MIN_MATCH);

      s.lookahead -= s.match_length;
      s.strstart += s.match_length;
      s.match_length = 0;
    } else {
      /* No match, output a literal byte */
      //Tracevv((stderr,"%c", s->window[s->strstart]));
      /*** _tr_tally_lit(s, s.window[s.strstart], bflush); ***/
      bflush = _tr_tally(s, 0, s.window[s.strstart]);

      s.lookahead--;
      s.strstart++;
    }
    if (bflush) {
      /*** FLUSH_BLOCK(s, 0); ***/
      flush_block_only(s, false);
      if (s.strm.avail_out === 0) {
        return BS_NEED_MORE;
      }
      /***/
    }
  }
  s.insert = 0;
  if (flush === Z_FINISH$3) {
    /*** FLUSH_BLOCK(s, 1); ***/
    flush_block_only(s, true);
    if (s.strm.avail_out === 0) {
      return BS_FINISH_STARTED;
    }
    /***/
    return BS_FINISH_DONE;
  }
  if (s.last_lit) {
    /*** FLUSH_BLOCK(s, 0); ***/
    flush_block_only(s, false);
    if (s.strm.avail_out === 0) {
      return BS_NEED_MORE;
    }
    /***/
  }
  return BS_BLOCK_DONE;
};

/* ===========================================================================
 * For Z_HUFFMAN_ONLY, do not look for matches.  Do not maintain a hash table.
 * (It will be regenerated if this run of deflate switches away from Huffman.)
 */
const deflate_huff = (s, flush) => {

  let bflush;             /* set if current block must be flushed */

  for (;;) {
    /* Make sure that we have a literal to write. */
    if (s.lookahead === 0) {
      fill_window(s);
      if (s.lookahead === 0) {
        if (flush === Z_NO_FLUSH$2) {
          return BS_NEED_MORE;
        }
        break;      /* flush the current block */
      }
    }

    /* Output a literal byte */
    s.match_length = 0;
    //Tracevv((stderr,"%c", s->window[s->strstart]));
    /*** _tr_tally_lit(s, s.window[s.strstart], bflush); ***/
    bflush = _tr_tally(s, 0, s.window[s.strstart]);
    s.lookahead--;
    s.strstart++;
    if (bflush) {
      /*** FLUSH_BLOCK(s, 0); ***/
      flush_block_only(s, false);
      if (s.strm.avail_out === 0) {
        return BS_NEED_MORE;
      }
      /***/
    }
  }
  s.insert = 0;
  if (flush === Z_FINISH$3) {
    /*** FLUSH_BLOCK(s, 1); ***/
    flush_block_only(s, true);
    if (s.strm.avail_out === 0) {
      return BS_FINISH_STARTED;
    }
    /***/
    return BS_FINISH_DONE;
  }
  if (s.last_lit) {
    /*** FLUSH_BLOCK(s, 0); ***/
    flush_block_only(s, false);
    if (s.strm.avail_out === 0) {
      return BS_NEED_MORE;
    }
    /***/
  }
  return BS_BLOCK_DONE;
};

/* Values for max_lazy_match, good_match and max_chain_length, depending on
 * the desired pack level (0..9). The values given below have been tuned to
 * exclude worst case performance for pathological files. Better values may be
 * found for specific files.
 */
function Config(good_length, max_lazy, nice_length, max_chain, func) {

  this.good_length = good_length;
  this.max_lazy = max_lazy;
  this.nice_length = nice_length;
  this.max_chain = max_chain;
  this.func = func;
}

const configuration_table = [
  /*      good lazy nice chain */
  new Config(0, 0, 0, 0, deflate_stored),          /* 0 store only */
  new Config(4, 4, 8, 4, deflate_fast),            /* 1 max speed, no lazy matches */
  new Config(4, 5, 16, 8, deflate_fast),           /* 2 */
  new Config(4, 6, 32, 32, deflate_fast),          /* 3 */

  new Config(4, 4, 16, 16, deflate_slow),          /* 4 lazy matches */
  new Config(8, 16, 32, 32, deflate_slow),         /* 5 */
  new Config(8, 16, 128, 128, deflate_slow),       /* 6 */
  new Config(8, 32, 128, 256, deflate_slow),       /* 7 */
  new Config(32, 128, 258, 1024, deflate_slow),    /* 8 */
  new Config(32, 258, 258, 4096, deflate_slow)     /* 9 max compression */
];


/* ===========================================================================
 * Initialize the "longest match" routines for a new zlib stream
 */
const lm_init = (s) => {

  s.window_size = 2 * s.w_size;

  /*** CLEAR_HASH(s); ***/
  zero(s.head); // Fill with NIL (= 0);

  /* Set the default configuration parameters:
   */
  s.max_lazy_match = configuration_table[s.level].max_lazy;
  s.good_match = configuration_table[s.level].good_length;
  s.nice_match = configuration_table[s.level].nice_length;
  s.max_chain_length = configuration_table[s.level].max_chain;

  s.strstart = 0;
  s.block_start = 0;
  s.lookahead = 0;
  s.insert = 0;
  s.match_length = s.prev_length = MIN_MATCH - 1;
  s.match_available = 0;
  s.ins_h = 0;
};


function DeflateState() {
  this.strm = null;            /* pointer back to this zlib stream */
  this.status = 0;            /* as the name implies */
  this.pending_buf = null;      /* output still pending */
  this.pending_buf_size = 0;  /* size of pending_buf */
  this.pending_out = 0;       /* next pending byte to output to the stream */
  this.pending = 0;           /* nb of bytes in the pending buffer */
  this.wrap = 0;              /* bit 0 true for zlib, bit 1 true for gzip */
  this.gzhead = null;         /* gzip header information to write */
  this.gzindex = 0;           /* where in extra, name, or comment */
  this.method = Z_DEFLATED$2; /* can only be DEFLATED */
  this.last_flush = -1;   /* value of flush param for previous deflate call */

  this.w_size = 0;  /* LZ77 window size (32K by default) */
  this.w_bits = 0;  /* log2(w_size)  (8..16) */
  this.w_mask = 0;  /* w_size - 1 */

  this.window = null;
  /* Sliding window. Input bytes are read into the second half of the window,
   * and move to the first half later to keep a dictionary of at least wSize
   * bytes. With this organization, matches are limited to a distance of
   * wSize-MAX_MATCH bytes, but this ensures that IO is always
   * performed with a length multiple of the block size.
   */

  this.window_size = 0;
  /* Actual size of window: 2*wSize, except when the user input buffer
   * is directly used as sliding window.
   */

  this.prev = null;
  /* Link to older string with same hash index. To limit the size of this
   * array to 64K, this link is maintained only for the last 32K strings.
   * An index in this array is thus a window index modulo 32K.
   */

  this.head = null;   /* Heads of the hash chains or NIL. */

  this.ins_h = 0;       /* hash index of string to be inserted */
  this.hash_size = 0;   /* number of elements in hash table */
  this.hash_bits = 0;   /* log2(hash_size) */
  this.hash_mask = 0;   /* hash_size-1 */

  this.hash_shift = 0;
  /* Number of bits by which ins_h must be shifted at each input
   * step. It must be such that after MIN_MATCH steps, the oldest
   * byte no longer takes part in the hash key, that is:
   *   hash_shift * MIN_MATCH >= hash_bits
   */

  this.block_start = 0;
  /* Window position at the beginning of the current output block. Gets
   * negative when the window is moved backwards.
   */

  this.match_length = 0;      /* length of best match */
  this.prev_match = 0;        /* previous match */
  this.match_available = 0;   /* set if previous match exists */
  this.strstart = 0;          /* start of string to insert */
  this.match_start = 0;       /* start of matching string */
  this.lookahead = 0;         /* number of valid bytes ahead in window */

  this.prev_length = 0;
  /* Length of the best match at previous step. Matches not greater than this
   * are discarded. This is used in the lazy match evaluation.
   */

  this.max_chain_length = 0;
  /* To speed up deflation, hash chains are never searched beyond this
   * length.  A higher limit improves compression ratio but degrades the
   * speed.
   */

  this.max_lazy_match = 0;
  /* Attempt to find a better match only when the current match is strictly
   * smaller than this value. This mechanism is used only for compression
   * levels >= 4.
   */
  // That's alias to max_lazy_match, don't use directly
  //this.max_insert_length = 0;
  /* Insert new strings in the hash table only if the match length is not
   * greater than this length. This saves time but degrades compression.
   * max_insert_length is used only for compression levels <= 3.
   */

  this.level = 0;     /* compression level (1..9) */
  this.strategy = 0;  /* favor or force Huffman coding*/

  this.good_match = 0;
  /* Use a faster search when the previous match is longer than this */

  this.nice_match = 0; /* Stop searching when current match exceeds this */

              /* used by trees.c: */

  /* Didn't use ct_data typedef below to suppress compiler warning */

  // struct ct_data_s dyn_ltree[HEAP_SIZE];   /* literal and length tree */
  // struct ct_data_s dyn_dtree[2*D_CODES+1]; /* distance tree */
  // struct ct_data_s bl_tree[2*BL_CODES+1];  /* Huffman tree for bit lengths */

  // Use flat array of DOUBLE size, with interleaved fata,
  // because JS does not support effective
  this.dyn_ltree  = new Uint16Array(HEAP_SIZE * 2);
  this.dyn_dtree  = new Uint16Array((2 * D_CODES + 1) * 2);
  this.bl_tree    = new Uint16Array((2 * BL_CODES + 1) * 2);
  zero(this.dyn_ltree);
  zero(this.dyn_dtree);
  zero(this.bl_tree);

  this.l_desc   = null;         /* desc. for literal tree */
  this.d_desc   = null;         /* desc. for distance tree */
  this.bl_desc  = null;         /* desc. for bit length tree */

  //ush bl_count[MAX_BITS+1];
  this.bl_count = new Uint16Array(MAX_BITS + 1);
  /* number of codes at each bit length for an optimal tree */

  //int heap[2*L_CODES+1];      /* heap used to build the Huffman trees */
  this.heap = new Uint16Array(2 * L_CODES + 1);  /* heap used to build the Huffman trees */
  zero(this.heap);

  this.heap_len = 0;               /* number of elements in the heap */
  this.heap_max = 0;               /* element of largest frequency */
  /* The sons of heap[n] are heap[2*n] and heap[2*n+1]. heap[0] is not used.
   * The same heap array is used to build all trees.
   */

  this.depth = new Uint16Array(2 * L_CODES + 1); //uch depth[2*L_CODES+1];
  zero(this.depth);
  /* Depth of each subtree used as tie breaker for trees of equal frequency
   */

  this.l_buf = 0;          /* buffer index for literals or lengths */

  this.lit_bufsize = 0;
  /* Size of match buffer for literals/lengths.  There are 4 reasons for
   * limiting lit_bufsize to 64K:
   *   - frequencies can be kept in 16 bit counters
   *   - if compression is not successful for the first block, all input
   *     data is still in the window so we can still emit a stored block even
   *     when input comes from standard input.  (This can also be done for
   *     all blocks if lit_bufsize is not greater than 32K.)
   *   - if compression is not successful for a file smaller than 64K, we can
   *     even emit a stored file instead of a stored block (saving 5 bytes).
   *     This is applicable only for zip (not gzip or zlib).
   *   - creating new Huffman trees less frequently may not provide fast
   *     adaptation to changes in the input data statistics. (Take for
   *     example a binary file with poorly compressible code followed by
   *     a highly compressible string table.) Smaller buffer sizes give
   *     fast adaptation but have of course the overhead of transmitting
   *     trees more frequently.
   *   - I can't count above 4
   */

  this.last_lit = 0;      /* running index in l_buf */

  this.d_buf = 0;
  /* Buffer index for distances. To simplify the code, d_buf and l_buf have
   * the same number of elements. To use different lengths, an extra flag
   * array would be necessary.
   */

  this.opt_len = 0;       /* bit length of current block with optimal trees */
  this.static_len = 0;    /* bit length of current block with static trees */
  this.matches = 0;       /* number of string matches in current block */
  this.insert = 0;        /* bytes at end of window left to insert */


  this.bi_buf = 0;
  /* Output buffer. bits are inserted starting at the bottom (least
   * significant bits).
   */
  this.bi_valid = 0;
  /* Number of valid bits in bi_buf.  All bits above the last valid bit
   * are always zero.
   */

  // Used for window memory init. We safely ignore it for JS. That makes
  // sense only for pointers and memory check tools.
  //this.high_water = 0;
  /* High water mark offset in window for initialized bytes -- bytes above
   * this are set to zero in order to avoid memory check warnings when
   * longest match routines access bytes past the input.  This is then
   * updated to the new high water mark.
   */
}


const deflateResetKeep = (strm) => {

  if (!strm || !strm.state) {
    return err(strm, Z_STREAM_ERROR$2);
  }

  strm.total_in = strm.total_out = 0;
  strm.data_type = Z_UNKNOWN;

  const s = strm.state;
  s.pending = 0;
  s.pending_out = 0;

  if (s.wrap < 0) {
    s.wrap = -s.wrap;
    /* was made negative by deflate(..., Z_FINISH); */
  }
  s.status = (s.wrap ? INIT_STATE : BUSY_STATE);
  strm.adler = (s.wrap === 2) ?
    0  // crc32(0, Z_NULL, 0)
  :
    1; // adler32(0, Z_NULL, 0)
  s.last_flush = Z_NO_FLUSH$2;
  _tr_init(s);
  return Z_OK$3;
};


const deflateReset = (strm) => {

  const ret = deflateResetKeep(strm);
  if (ret === Z_OK$3) {
    lm_init(strm.state);
  }
  return ret;
};


const deflateSetHeader = (strm, head) => {

  if (!strm || !strm.state) { return Z_STREAM_ERROR$2; }
  if (strm.state.wrap !== 2) { return Z_STREAM_ERROR$2; }
  strm.state.gzhead = head;
  return Z_OK$3;
};


const deflateInit2 = (strm, level, method, windowBits, memLevel, strategy) => {

  if (!strm) { // === Z_NULL
    return Z_STREAM_ERROR$2;
  }
  let wrap = 1;

  if (level === Z_DEFAULT_COMPRESSION$1) {
    level = 6;
  }

  if (windowBits < 0) { /* suppress zlib wrapper */
    wrap = 0;
    windowBits = -windowBits;
  }

  else if (windowBits > 15) {
    wrap = 2;           /* write gzip wrapper instead */
    windowBits -= 16;
  }


  if (memLevel < 1 || memLevel > MAX_MEM_LEVEL || method !== Z_DEFLATED$2 ||
    windowBits < 8 || windowBits > 15 || level < 0 || level > 9 ||
    strategy < 0 || strategy > Z_FIXED) {
    return err(strm, Z_STREAM_ERROR$2);
  }


  if (windowBits === 8) {
    windowBits = 9;
  }
  /* until 256-byte window bug fixed */

  const s = new DeflateState();

  strm.state = s;
  s.strm = strm;

  s.wrap = wrap;
  s.gzhead = null;
  s.w_bits = windowBits;
  s.w_size = 1 << s.w_bits;
  s.w_mask = s.w_size - 1;

  s.hash_bits = memLevel + 7;
  s.hash_size = 1 << s.hash_bits;
  s.hash_mask = s.hash_size - 1;
  s.hash_shift = ~~((s.hash_bits + MIN_MATCH - 1) / MIN_MATCH);

  s.window = new Uint8Array(s.w_size * 2);
  s.head = new Uint16Array(s.hash_size);
  s.prev = new Uint16Array(s.w_size);

  // Don't need mem init magic for JS.
  //s.high_water = 0;  /* nothing written to s->window yet */

  s.lit_bufsize = 1 << (memLevel + 6); /* 16K elements by default */

  s.pending_buf_size = s.lit_bufsize * 4;

  //overlay = (ushf *) ZALLOC(strm, s->lit_bufsize, sizeof(ush)+2);
  //s->pending_buf = (uchf *) overlay;
  s.pending_buf = new Uint8Array(s.pending_buf_size);

  // It is offset from `s.pending_buf` (size is `s.lit_bufsize * 2`)
  //s->d_buf = overlay + s->lit_bufsize/sizeof(ush);
  s.d_buf = 1 * s.lit_bufsize;

  //s->l_buf = s->pending_buf + (1+sizeof(ush))*s->lit_bufsize;
  s.l_buf = (1 + 2) * s.lit_bufsize;

  s.level = level;
  s.strategy = strategy;
  s.method = method;

  return deflateReset(strm);
};

const deflateInit = (strm, level) => {

  return deflateInit2(strm, level, Z_DEFLATED$2, MAX_WBITS$1, DEF_MEM_LEVEL, Z_DEFAULT_STRATEGY$1);
};


const deflate$2 = (strm, flush) => {

  let beg, val; // for gzip header write only

  if (!strm || !strm.state ||
    flush > Z_BLOCK$1 || flush < 0) {
    return strm ? err(strm, Z_STREAM_ERROR$2) : Z_STREAM_ERROR$2;
  }

  const s = strm.state;

  if (!strm.output ||
      (!strm.input && strm.avail_in !== 0) ||
      (s.status === FINISH_STATE && flush !== Z_FINISH$3)) {
    return err(strm, (strm.avail_out === 0) ? Z_BUF_ERROR$1 : Z_STREAM_ERROR$2);
  }

  s.strm = strm; /* just in case */
  const old_flush = s.last_flush;
  s.last_flush = flush;

  /* Write the header */
  if (s.status === INIT_STATE) {

    if (s.wrap === 2) { // GZIP header
      strm.adler = 0;  //crc32(0L, Z_NULL, 0);
      put_byte(s, 31);
      put_byte(s, 139);
      put_byte(s, 8);
      if (!s.gzhead) { // s->gzhead == Z_NULL
        put_byte(s, 0);
        put_byte(s, 0);
        put_byte(s, 0);
        put_byte(s, 0);
        put_byte(s, 0);
        put_byte(s, s.level === 9 ? 2 :
                    (s.strategy >= Z_HUFFMAN_ONLY || s.level < 2 ?
                     4 : 0));
        put_byte(s, OS_CODE);
        s.status = BUSY_STATE;
      }
      else {
        put_byte(s, (s.gzhead.text ? 1 : 0) +
                    (s.gzhead.hcrc ? 2 : 0) +
                    (!s.gzhead.extra ? 0 : 4) +
                    (!s.gzhead.name ? 0 : 8) +
                    (!s.gzhead.comment ? 0 : 16)
        );
        put_byte(s, s.gzhead.time & 0xff);
        put_byte(s, (s.gzhead.time >> 8) & 0xff);
        put_byte(s, (s.gzhead.time >> 16) & 0xff);
        put_byte(s, (s.gzhead.time >> 24) & 0xff);
        put_byte(s, s.level === 9 ? 2 :
                    (s.strategy >= Z_HUFFMAN_ONLY || s.level < 2 ?
                     4 : 0));
        put_byte(s, s.gzhead.os & 0xff);
        if (s.gzhead.extra && s.gzhead.extra.length) {
          put_byte(s, s.gzhead.extra.length & 0xff);
          put_byte(s, (s.gzhead.extra.length >> 8) & 0xff);
        }
        if (s.gzhead.hcrc) {
          strm.adler = crc32_1(strm.adler, s.pending_buf, s.pending, 0);
        }
        s.gzindex = 0;
        s.status = EXTRA_STATE;
      }
    }
    else // DEFLATE header
    {
      let header = (Z_DEFLATED$2 + ((s.w_bits - 8) << 4)) << 8;
      let level_flags = -1;

      if (s.strategy >= Z_HUFFMAN_ONLY || s.level < 2) {
        level_flags = 0;
      } else if (s.level < 6) {
        level_flags = 1;
      } else if (s.level === 6) {
        level_flags = 2;
      } else {
        level_flags = 3;
      }
      header |= (level_flags << 6);
      if (s.strstart !== 0) { header |= PRESET_DICT; }
      header += 31 - (header % 31);

      s.status = BUSY_STATE;
      putShortMSB(s, header);

      /* Save the adler32 of the preset dictionary: */
      if (s.strstart !== 0) {
        putShortMSB(s, strm.adler >>> 16);
        putShortMSB(s, strm.adler & 0xffff);
      }
      strm.adler = 1; // adler32(0L, Z_NULL, 0);
    }
  }

//#ifdef GZIP
  if (s.status === EXTRA_STATE) {
    if (s.gzhead.extra/* != Z_NULL*/) {
      beg = s.pending;  /* start of bytes to update crc */

      while (s.gzindex < (s.gzhead.extra.length & 0xffff)) {
        if (s.pending === s.pending_buf_size) {
          if (s.gzhead.hcrc && s.pending > beg) {
            strm.adler = crc32_1(strm.adler, s.pending_buf, s.pending - beg, beg);
          }
          flush_pending(strm);
          beg = s.pending;
          if (s.pending === s.pending_buf_size) {
            break;
          }
        }
        put_byte(s, s.gzhead.extra[s.gzindex] & 0xff);
        s.gzindex++;
      }
      if (s.gzhead.hcrc && s.pending > beg) {
        strm.adler = crc32_1(strm.adler, s.pending_buf, s.pending - beg, beg);
      }
      if (s.gzindex === s.gzhead.extra.length) {
        s.gzindex = 0;
        s.status = NAME_STATE;
      }
    }
    else {
      s.status = NAME_STATE;
    }
  }
  if (s.status === NAME_STATE) {
    if (s.gzhead.name/* != Z_NULL*/) {
      beg = s.pending;  /* start of bytes to update crc */
      //int val;

      do {
        if (s.pending === s.pending_buf_size) {
          if (s.gzhead.hcrc && s.pending > beg) {
            strm.adler = crc32_1(strm.adler, s.pending_buf, s.pending - beg, beg);
          }
          flush_pending(strm);
          beg = s.pending;
          if (s.pending === s.pending_buf_size) {
            val = 1;
            break;
          }
        }
        // JS specific: little magic to add zero terminator to end of string
        if (s.gzindex < s.gzhead.name.length) {
          val = s.gzhead.name.charCodeAt(s.gzindex++) & 0xff;
        } else {
          val = 0;
        }
        put_byte(s, val);
      } while (val !== 0);

      if (s.gzhead.hcrc && s.pending > beg) {
        strm.adler = crc32_1(strm.adler, s.pending_buf, s.pending - beg, beg);
      }
      if (val === 0) {
        s.gzindex = 0;
        s.status = COMMENT_STATE;
      }
    }
    else {
      s.status = COMMENT_STATE;
    }
  }
  if (s.status === COMMENT_STATE) {
    if (s.gzhead.comment/* != Z_NULL*/) {
      beg = s.pending;  /* start of bytes to update crc */
      //int val;

      do {
        if (s.pending === s.pending_buf_size) {
          if (s.gzhead.hcrc && s.pending > beg) {
            strm.adler = crc32_1(strm.adler, s.pending_buf, s.pending - beg, beg);
          }
          flush_pending(strm);
          beg = s.pending;
          if (s.pending === s.pending_buf_size) {
            val = 1;
            break;
          }
        }
        // JS specific: little magic to add zero terminator to end of string
        if (s.gzindex < s.gzhead.comment.length) {
          val = s.gzhead.comment.charCodeAt(s.gzindex++) & 0xff;
        } else {
          val = 0;
        }
        put_byte(s, val);
      } while (val !== 0);

      if (s.gzhead.hcrc && s.pending > beg) {
        strm.adler = crc32_1(strm.adler, s.pending_buf, s.pending - beg, beg);
      }
      if (val === 0) {
        s.status = HCRC_STATE;
      }
    }
    else {
      s.status = HCRC_STATE;
    }
  }
  if (s.status === HCRC_STATE) {
    if (s.gzhead.hcrc) {
      if (s.pending + 2 > s.pending_buf_size) {
        flush_pending(strm);
      }
      if (s.pending + 2 <= s.pending_buf_size) {
        put_byte(s, strm.adler & 0xff);
        put_byte(s, (strm.adler >> 8) & 0xff);
        strm.adler = 0; //crc32(0L, Z_NULL, 0);
        s.status = BUSY_STATE;
      }
    }
    else {
      s.status = BUSY_STATE;
    }
  }
//#endif

  /* Flush as much pending output as possible */
  if (s.pending !== 0) {
    flush_pending(strm);
    if (strm.avail_out === 0) {
      /* Since avail_out is 0, deflate will be called again with
       * more output space, but possibly with both pending and
       * avail_in equal to zero. There won't be anything to do,
       * but this is not an error situation so make sure we
       * return OK instead of BUF_ERROR at next call of deflate:
       */
      s.last_flush = -1;
      return Z_OK$3;
    }

    /* Make sure there is something to do and avoid duplicate consecutive
     * flushes. For repeated and useless calls with Z_FINISH, we keep
     * returning Z_STREAM_END instead of Z_BUF_ERROR.
     */
  } else if (strm.avail_in === 0 && rank(flush) <= rank(old_flush) &&
    flush !== Z_FINISH$3) {
    return err(strm, Z_BUF_ERROR$1);
  }

  /* User must not provide more input after the first FINISH: */
  if (s.status === FINISH_STATE && strm.avail_in !== 0) {
    return err(strm, Z_BUF_ERROR$1);
  }

  /* Start a new block or continue the current one.
   */
  if (strm.avail_in !== 0 || s.lookahead !== 0 ||
    (flush !== Z_NO_FLUSH$2 && s.status !== FINISH_STATE)) {
    let bstate = (s.strategy === Z_HUFFMAN_ONLY) ? deflate_huff(s, flush) :
      (s.strategy === Z_RLE ? deflate_rle(s, flush) :
        configuration_table[s.level].func(s, flush));

    if (bstate === BS_FINISH_STARTED || bstate === BS_FINISH_DONE) {
      s.status = FINISH_STATE;
    }
    if (bstate === BS_NEED_MORE || bstate === BS_FINISH_STARTED) {
      if (strm.avail_out === 0) {
        s.last_flush = -1;
        /* avoid BUF_ERROR next call, see above */
      }
      return Z_OK$3;
      /* If flush != Z_NO_FLUSH && avail_out == 0, the next call
       * of deflate should use the same flush parameter to make sure
       * that the flush is complete. So we don't have to output an
       * empty block here, this will be done at next call. This also
       * ensures that for a very small output buffer, we emit at most
       * one empty block.
       */
    }
    if (bstate === BS_BLOCK_DONE) {
      if (flush === Z_PARTIAL_FLUSH) {
        _tr_align(s);
      }
      else if (flush !== Z_BLOCK$1) { /* FULL_FLUSH or SYNC_FLUSH */

        _tr_stored_block(s, 0, 0, false);
        /* For a full flush, this empty block will be recognized
         * as a special marker by inflate_sync().
         */
        if (flush === Z_FULL_FLUSH$1) {
          /*** CLEAR_HASH(s); ***/             /* forget history */
          zero(s.head); // Fill with NIL (= 0);

          if (s.lookahead === 0) {
            s.strstart = 0;
            s.block_start = 0;
            s.insert = 0;
          }
        }
      }
      flush_pending(strm);
      if (strm.avail_out === 0) {
        s.last_flush = -1; /* avoid BUF_ERROR at next call, see above */
        return Z_OK$3;
      }
    }
  }
  //Assert(strm->avail_out > 0, "bug2");
  //if (strm.avail_out <= 0) { throw new Error("bug2");}

  if (flush !== Z_FINISH$3) { return Z_OK$3; }
  if (s.wrap <= 0) { return Z_STREAM_END$3; }

  /* Write the trailer */
  if (s.wrap === 2) {
    put_byte(s, strm.adler & 0xff);
    put_byte(s, (strm.adler >> 8) & 0xff);
    put_byte(s, (strm.adler >> 16) & 0xff);
    put_byte(s, (strm.adler >> 24) & 0xff);
    put_byte(s, strm.total_in & 0xff);
    put_byte(s, (strm.total_in >> 8) & 0xff);
    put_byte(s, (strm.total_in >> 16) & 0xff);
    put_byte(s, (strm.total_in >> 24) & 0xff);
  }
  else
  {
    putShortMSB(s, strm.adler >>> 16);
    putShortMSB(s, strm.adler & 0xffff);
  }

  flush_pending(strm);
  /* If avail_out is zero, the application will call deflate again
   * to flush the rest.
   */
  if (s.wrap > 0) { s.wrap = -s.wrap; }
  /* write the trailer only once! */
  return s.pending !== 0 ? Z_OK$3 : Z_STREAM_END$3;
};


const deflateEnd = (strm) => {

  if (!strm/*== Z_NULL*/ || !strm.state/*== Z_NULL*/) {
    return Z_STREAM_ERROR$2;
  }

  const status = strm.state.status;
  if (status !== INIT_STATE &&
    status !== EXTRA_STATE &&
    status !== NAME_STATE &&
    status !== COMMENT_STATE &&
    status !== HCRC_STATE &&
    status !== BUSY_STATE &&
    status !== FINISH_STATE
  ) {
    return err(strm, Z_STREAM_ERROR$2);
  }

  strm.state = null;

  return status === BUSY_STATE ? err(strm, Z_DATA_ERROR$2) : Z_OK$3;
};


/* =========================================================================
 * Initializes the compression dictionary from the given byte
 * sequence without producing any compressed output.
 */
const deflateSetDictionary = (strm, dictionary) => {

  let dictLength = dictionary.length;

  if (!strm/*== Z_NULL*/ || !strm.state/*== Z_NULL*/) {
    return Z_STREAM_ERROR$2;
  }

  const s = strm.state;
  const wrap = s.wrap;

  if (wrap === 2 || (wrap === 1 && s.status !== INIT_STATE) || s.lookahead) {
    return Z_STREAM_ERROR$2;
  }

  /* when using zlib wrappers, compute Adler-32 for provided dictionary */
  if (wrap === 1) {
    /* adler32(strm->adler, dictionary, dictLength); */
    strm.adler = adler32_1(strm.adler, dictionary, dictLength, 0);
  }

  s.wrap = 0;   /* avoid computing Adler-32 in read_buf */

  /* if dictionary would fill window, just replace the history */
  if (dictLength >= s.w_size) {
    if (wrap === 0) {            /* already empty otherwise */
      /*** CLEAR_HASH(s); ***/
      zero(s.head); // Fill with NIL (= 0);
      s.strstart = 0;
      s.block_start = 0;
      s.insert = 0;
    }
    /* use the tail */
    // dictionary = dictionary.slice(dictLength - s.w_size);
    let tmpDict = new Uint8Array(s.w_size);
    tmpDict.set(dictionary.subarray(dictLength - s.w_size, dictLength), 0);
    dictionary = tmpDict;
    dictLength = s.w_size;
  }
  /* insert dictionary into window and hash */
  const avail = strm.avail_in;
  const next = strm.next_in;
  const input = strm.input;
  strm.avail_in = dictLength;
  strm.next_in = 0;
  strm.input = dictionary;
  fill_window(s);
  while (s.lookahead >= MIN_MATCH) {
    let str = s.strstart;
    let n = s.lookahead - (MIN_MATCH - 1);
    do {
      /* UPDATE_HASH(s, s->ins_h, s->window[str + MIN_MATCH-1]); */
      s.ins_h = HASH(s, s.ins_h, s.window[str + MIN_MATCH - 1]);

      s.prev[str & s.w_mask] = s.head[s.ins_h];

      s.head[s.ins_h] = str;
      str++;
    } while (--n);
    s.strstart = str;
    s.lookahead = MIN_MATCH - 1;
    fill_window(s);
  }
  s.strstart += s.lookahead;
  s.block_start = s.strstart;
  s.insert = s.lookahead;
  s.lookahead = 0;
  s.match_length = s.prev_length = MIN_MATCH - 1;
  s.match_available = 0;
  strm.next_in = next;
  strm.input = input;
  strm.avail_in = avail;
  s.wrap = wrap;
  return Z_OK$3;
};


var deflateInit_1 = deflateInit;
var deflateInit2_1 = deflateInit2;
var deflateReset_1 = deflateReset;
var deflateResetKeep_1 = deflateResetKeep;
var deflateSetHeader_1 = deflateSetHeader;
var deflate_2$1 = deflate$2;
var deflateEnd_1 = deflateEnd;
var deflateSetDictionary_1 = deflateSetDictionary;
var deflateInfo = 'pako deflate (from Nodeca project)';

/* Not implemented
module.exports.deflateBound = deflateBound;
module.exports.deflateCopy = deflateCopy;
module.exports.deflateParams = deflateParams;
module.exports.deflatePending = deflatePending;
module.exports.deflatePrime = deflatePrime;
module.exports.deflateTune = deflateTune;
*/

var deflate_1$2 = {
	deflateInit: deflateInit_1,
	deflateInit2: deflateInit2_1,
	deflateReset: deflateReset_1,
	deflateResetKeep: deflateResetKeep_1,
	deflateSetHeader: deflateSetHeader_1,
	deflate: deflate_2$1,
	deflateEnd: deflateEnd_1,
	deflateSetDictionary: deflateSetDictionary_1,
	deflateInfo: deflateInfo
};

const _has = (obj, key) => {
  return Object.prototype.hasOwnProperty.call(obj, key);
};

var assign = function (obj /*from1, from2, from3, ...*/) {
  const sources = Array.prototype.slice.call(arguments, 1);
  while (sources.length) {
    const source = sources.shift();
    if (!source) { continue; }

    if (typeof source !== 'object') {
      throw new TypeError(source + 'must be non-object');
    }

    for (const p in source) {
      if (_has(source, p)) {
        obj[p] = source[p];
      }
    }
  }

  return obj;
};


// Join array of chunks to single array.
var flattenChunks = (chunks) => {
  // calculate data length
  let len = 0;

  for (let i = 0, l = chunks.length; i < l; i++) {
    len += chunks[i].length;
  }

  // join chunks
  const result = new Uint8Array(len);

  for (let i = 0, pos = 0, l = chunks.length; i < l; i++) {
    let chunk = chunks[i];
    result.set(chunk, pos);
    pos += chunk.length;
  }

  return result;
};

var common = {
	assign: assign,
	flattenChunks: flattenChunks
};

// String encode/decode helpers


// Quick check if we can use fast array to bin string conversion
//
// - apply(Array) can fail on Android 2.2
// - apply(Uint8Array) can fail on iOS 5.1 Safari
//
let STR_APPLY_UIA_OK = true;

try { String.fromCharCode.apply(null, new Uint8Array(1)); } catch (__) { STR_APPLY_UIA_OK = false; }


// Table with utf8 lengths (calculated by first byte of sequence)
// Note, that 5 & 6-byte values and some 4-byte values can not be represented in JS,
// because max possible codepoint is 0x10ffff
const _utf8len = new Uint8Array(256);
for (let q = 0; q < 256; q++) {
  _utf8len[q] = (q >= 252 ? 6 : q >= 248 ? 5 : q >= 240 ? 4 : q >= 224 ? 3 : q >= 192 ? 2 : 1);
}
_utf8len[254] = _utf8len[254] = 1; // Invalid sequence start


// convert string to array (typed, when possible)
var string2buf = (str) => {
  if (typeof TextEncoder === 'function' && TextEncoder.prototype.encode) {
    return new TextEncoder().encode(str);
  }

  let buf, c, c2, m_pos, i, str_len = str.length, buf_len = 0;

  // count binary size
  for (m_pos = 0; m_pos < str_len; m_pos++) {
    c = str.charCodeAt(m_pos);
    if ((c & 0xfc00) === 0xd800 && (m_pos + 1 < str_len)) {
      c2 = str.charCodeAt(m_pos + 1);
      if ((c2 & 0xfc00) === 0xdc00) {
        c = 0x10000 + ((c - 0xd800) << 10) + (c2 - 0xdc00);
        m_pos++;
      }
    }
    buf_len += c < 0x80 ? 1 : c < 0x800 ? 2 : c < 0x10000 ? 3 : 4;
  }

  // allocate buffer
  buf = new Uint8Array(buf_len);

  // convert
  for (i = 0, m_pos = 0; i < buf_len; m_pos++) {
    c = str.charCodeAt(m_pos);
    if ((c & 0xfc00) === 0xd800 && (m_pos + 1 < str_len)) {
      c2 = str.charCodeAt(m_pos + 1);
      if ((c2 & 0xfc00) === 0xdc00) {
        c = 0x10000 + ((c - 0xd800) << 10) + (c2 - 0xdc00);
        m_pos++;
      }
    }
    if (c < 0x80) {
      /* one byte */
      buf[i++] = c;
    } else if (c < 0x800) {
      /* two bytes */
      buf[i++] = 0xC0 | (c >>> 6);
      buf[i++] = 0x80 | (c & 0x3f);
    } else if (c < 0x10000) {
      /* three bytes */
      buf[i++] = 0xE0 | (c >>> 12);
      buf[i++] = 0x80 | (c >>> 6 & 0x3f);
      buf[i++] = 0x80 | (c & 0x3f);
    } else {
      /* four bytes */
      buf[i++] = 0xf0 | (c >>> 18);
      buf[i++] = 0x80 | (c >>> 12 & 0x3f);
      buf[i++] = 0x80 | (c >>> 6 & 0x3f);
      buf[i++] = 0x80 | (c & 0x3f);
    }
  }

  return buf;
};

// Helper
const buf2binstring = (buf, len) => {
  // On Chrome, the arguments in a function call that are allowed is `65534`.
  // If the length of the buffer is smaller than that, we can use this optimization,
  // otherwise we will take a slower path.
  if (len < 65534) {
    if (buf.subarray && STR_APPLY_UIA_OK) {
      return String.fromCharCode.apply(null, buf.length === len ? buf : buf.subarray(0, len));
    }
  }

  let result = '';
  for (let i = 0; i < len; i++) {
    result += String.fromCharCode(buf[i]);
  }
  return result;
};


// convert array to string
var buf2string = (buf, max) => {
  const len = max || buf.length;

  if (typeof TextDecoder === 'function' && TextDecoder.prototype.decode) {
    return new TextDecoder().decode(buf.subarray(0, max));
  }

  let i, out;

  // Reserve max possible length (2 words per char)
  // NB: by unknown reasons, Array is significantly faster for
  //     String.fromCharCode.apply than Uint16Array.
  const utf16buf = new Array(len * 2);

  for (out = 0, i = 0; i < len;) {
    let c = buf[i++];
    // quick process ascii
    if (c < 0x80) { utf16buf[out++] = c; continue; }

    let c_len = _utf8len[c];
    // skip 5 & 6 byte codes
    if (c_len > 4) { utf16buf[out++] = 0xfffd; i += c_len - 1; continue; }

    // apply mask on first byte
    c &= c_len === 2 ? 0x1f : c_len === 3 ? 0x0f : 0x07;
    // join the rest
    while (c_len > 1 && i < len) {
      c = (c << 6) | (buf[i++] & 0x3f);
      c_len--;
    }

    // terminated by end of string?
    if (c_len > 1) { utf16buf[out++] = 0xfffd; continue; }

    if (c < 0x10000) {
      utf16buf[out++] = c;
    } else {
      c -= 0x10000;
      utf16buf[out++] = 0xd800 | ((c >> 10) & 0x3ff);
      utf16buf[out++] = 0xdc00 | (c & 0x3ff);
    }
  }

  return buf2binstring(utf16buf, out);
};


// Calculate max possible position in utf8 buffer,
// that will not break sequence. If that's not possible
// - (very small limits) return max size as is.
//
// buf[] - utf8 bytes array
// max   - length limit (mandatory);
var utf8border = (buf, max) => {

  max = max || buf.length;
  if (max > buf.length) { max = buf.length; }

  // go back from last position, until start of sequence found
  let pos = max - 1;
  while (pos >= 0 && (buf[pos] & 0xC0) === 0x80) { pos--; }

  // Very small and broken sequence,
  // return max, because we should return something anyway.
  if (pos < 0) { return max; }

  // If we came to start of buffer - that means buffer is too small,
  // return max too.
  if (pos === 0) { return max; }

  return (pos + _utf8len[buf[pos]] > max) ? pos : max;
};

var strings = {
	string2buf: string2buf,
	buf2string: buf2string,
	utf8border: utf8border
};

// (C) 1995-2013 Jean-loup Gailly and Mark Adler
// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin
//
// This software is provided 'as-is', without any express or implied
// warranty. In no event will the authors be held liable for any damages
// arising from the use of this software.
//
// Permission is granted to anyone to use this software for any purpose,
// including commercial applications, and to alter it and redistribute it
// freely, subject to the following restrictions:
//
// 1. The origin of this software must not be misrepresented; you must not
//   claim that you wrote the original software. If you use this software
//   in a product, an acknowledgment in the product documentation would be
//   appreciated but is not required.
// 2. Altered source versions must be plainly marked as such, and must not be
//   misrepresented as being the original software.
// 3. This notice may not be removed or altered from any source distribution.

function ZStream() {
  /* next input byte */
  this.input = null; // JS specific, because we have no pointers
  this.next_in = 0;
  /* number of bytes available at input */
  this.avail_in = 0;
  /* total number of input bytes read so far */
  this.total_in = 0;
  /* next output byte should be put there */
  this.output = null; // JS specific, because we have no pointers
  this.next_out = 0;
  /* remaining free space at output */
  this.avail_out = 0;
  /* total number of bytes output so far */
  this.total_out = 0;
  /* last error message, NULL if no error */
  this.msg = ''/*Z_NULL*/;
  /* not visible by applications */
  this.state = null;
  /* best guess about the data type: binary or text */
  this.data_type = 2/*Z_UNKNOWN*/;
  /* adler32 value of the uncompressed data */
  this.adler = 0;
}

var zstream = ZStream;

const toString$1 = Object.prototype.toString;

/* Public constants ==========================================================*/
/* ===========================================================================*/

const {
  Z_NO_FLUSH: Z_NO_FLUSH$1, Z_SYNC_FLUSH, Z_FULL_FLUSH, Z_FINISH: Z_FINISH$2,
  Z_OK: Z_OK$2, Z_STREAM_END: Z_STREAM_END$2,
  Z_DEFAULT_COMPRESSION,
  Z_DEFAULT_STRATEGY,
  Z_DEFLATED: Z_DEFLATED$1
} = constants$2;

/* ===========================================================================*/


/**
 * class Deflate
 *
 * Generic JS-style wrapper for zlib calls. If you don't need
 * streaming behaviour - use more simple functions: [[deflate]],
 * [[deflateRaw]] and [[gzip]].
 **/

/* internal
 * Deflate.chunks -> Array
 *
 * Chunks of output data, if [[Deflate#onData]] not overridden.
 **/

/**
 * Deflate.result -> Uint8Array
 *
 * Compressed result, generated by default [[Deflate#onData]]
 * and [[Deflate#onEnd]] handlers. Filled after you push last chunk
 * (call [[Deflate#push]] with `Z_FINISH` / `true` param).
 **/

/**
 * Deflate.err -> Number
 *
 * Error code after deflate finished. 0 (Z_OK) on success.
 * You will not need it in real life, because deflate errors
 * are possible only on wrong options or bad `onData` / `onEnd`
 * custom handlers.
 **/

/**
 * Deflate.msg -> String
 *
 * Error message, if [[Deflate.err]] != 0
 **/


/**
 * new Deflate(options)
 * - options (Object): zlib deflate options.
 *
 * Creates new deflator instance with specified params. Throws exception
 * on bad params. Supported options:
 *
 * - `level`
 * - `windowBits`
 * - `memLevel`
 * - `strategy`
 * - `dictionary`
 *
 * [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced)
 * for more information on these.
 *
 * Additional options, for internal needs:
 *
 * - `chunkSize` - size of generated data chunks (16K by default)
 * - `raw` (Boolean) - do raw deflate
 * - `gzip` (Boolean) - create gzip wrapper
 * - `header` (Object) - custom header for gzip
 *   - `text` (Boolean) - true if compressed data believed to be text
 *   - `time` (Number) - modification time, unix timestamp
 *   - `os` (Number) - operation system code
 *   - `extra` (Array) - array of bytes with extra data (max 65536)
 *   - `name` (String) - file name (binary string)
 *   - `comment` (String) - comment (binary string)
 *   - `hcrc` (Boolean) - true if header crc should be added
 *
 * ##### Example:
 *
 * ```javascript
 * const pako = require('pako')
 *   , chunk1 = new Uint8Array([1,2,3,4,5,6,7,8,9])
 *   , chunk2 = new Uint8Array([10,11,12,13,14,15,16,17,18,19]);
 *
 * const deflate = new pako.Deflate({ level: 3});
 *
 * deflate.push(chunk1, false);
 * deflate.push(chunk2, true);  // true -> last chunk
 *
 * if (deflate.err) { throw new Error(deflate.err); }
 *
 * console.log(deflate.result);
 * ```
 **/
function Deflate$1(options) {
  this.options = common.assign({
    level: Z_DEFAULT_COMPRESSION,
    method: Z_DEFLATED$1,
    chunkSize: 16384,
    windowBits: 15,
    memLevel: 8,
    strategy: Z_DEFAULT_STRATEGY
  }, options || {});

  let opt = this.options;

  if (opt.raw && (opt.windowBits > 0)) {
    opt.windowBits = -opt.windowBits;
  }

  else if (opt.gzip && (opt.windowBits > 0) && (opt.windowBits < 16)) {
    opt.windowBits += 16;
  }

  this.err    = 0;      // error code, if happens (0 = Z_OK)
  this.msg    = '';     // error message
  this.ended  = false;  // used to avoid multiple onEnd() calls
  this.chunks = [];     // chunks of compressed data

  this.strm = new zstream();
  this.strm.avail_out = 0;

  let status = deflate_1$2.deflateInit2(
    this.strm,
    opt.level,
    opt.method,
    opt.windowBits,
    opt.memLevel,
    opt.strategy
  );

  if (status !== Z_OK$2) {
    throw new Error(messages[status]);
  }

  if (opt.header) {
    deflate_1$2.deflateSetHeader(this.strm, opt.header);
  }

  if (opt.dictionary) {
    let dict;
    // Convert data if needed
    if (typeof opt.dictionary === 'string') {
      // If we need to compress text, change encoding to utf8.
      dict = strings.string2buf(opt.dictionary);
    } else if (toString$1.call(opt.dictionary) === '[object ArrayBuffer]') {
      dict = new Uint8Array(opt.dictionary);
    } else {
      dict = opt.dictionary;
    }

    status = deflate_1$2.deflateSetDictionary(this.strm, dict);

    if (status !== Z_OK$2) {
      throw new Error(messages[status]);
    }

    this._dict_set = true;
  }
}

/**
 * Deflate#push(data[, flush_mode]) -> Boolean
 * - data (Uint8Array|ArrayBuffer|String): input data. Strings will be
 *   converted to utf8 byte sequence.
 * - flush_mode (Number|Boolean): 0..6 for corresponding Z_NO_FLUSH..Z_TREE modes.
 *   See constants. Skipped or `false` means Z_NO_FLUSH, `true` means Z_FINISH.
 *
 * Sends input data to deflate pipe, generating [[Deflate#onData]] calls with
 * new compressed chunks. Returns `true` on success. The last data block must
 * have `flush_mode` Z_FINISH (or `true`). That will flush internal pending
 * buffers and call [[Deflate#onEnd]].
 *
 * On fail call [[Deflate#onEnd]] with error code and return false.
 *
 * ##### Example
 *
 * ```javascript
 * push(chunk, false); // push one of data chunks
 * ...
 * push(chunk, true);  // push last chunk
 * ```
 **/
Deflate$1.prototype.push = function (data, flush_mode) {
  const strm = this.strm;
  const chunkSize = this.options.chunkSize;
  let status, _flush_mode;

  if (this.ended) { return false; }

  if (flush_mode === ~~flush_mode) _flush_mode = flush_mode;
  else _flush_mode = flush_mode === true ? Z_FINISH$2 : Z_NO_FLUSH$1;

  // Convert data if needed
  if (typeof data === 'string') {
    // If we need to compress text, change encoding to utf8.
    strm.input = strings.string2buf(data);
  } else if (toString$1.call(data) === '[object ArrayBuffer]') {
    strm.input = new Uint8Array(data);
  } else {
    strm.input = data;
  }

  strm.next_in = 0;
  strm.avail_in = strm.input.length;

  for (;;) {
    if (strm.avail_out === 0) {
      strm.output = new Uint8Array(chunkSize);
      strm.next_out = 0;
      strm.avail_out = chunkSize;
    }

    // Make sure avail_out > 6 to avoid repeating markers
    if ((_flush_mode === Z_SYNC_FLUSH || _flush_mode === Z_FULL_FLUSH) && strm.avail_out <= 6) {
      this.onData(strm.output.subarray(0, strm.next_out));
      strm.avail_out = 0;
      continue;
    }

    status = deflate_1$2.deflate(strm, _flush_mode);

    // Ended => flush and finish
    if (status === Z_STREAM_END$2) {
      if (strm.next_out > 0) {
        this.onData(strm.output.subarray(0, strm.next_out));
      }
      status = deflate_1$2.deflateEnd(this.strm);
      this.onEnd(status);
      this.ended = true;
      return status === Z_OK$2;
    }

    // Flush if out buffer full
    if (strm.avail_out === 0) {
      this.onData(strm.output);
      continue;
    }

    // Flush if requested and has data
    if (_flush_mode > 0 && strm.next_out > 0) {
      this.onData(strm.output.subarray(0, strm.next_out));
      strm.avail_out = 0;
      continue;
    }

    if (strm.avail_in === 0) break;
  }

  return true;
};


/**
 * Deflate#onData(chunk) -> Void
 * - chunk (Uint8Array): output data.
 *
 * By default, stores data blocks in `chunks[]` property and glue
 * those in `onEnd`. Override this handler, if you need another behaviour.
 **/
Deflate$1.prototype.onData = function (chunk) {
  this.chunks.push(chunk);
};


/**
 * Deflate#onEnd(status) -> Void
 * - status (Number): deflate status. 0 (Z_OK) on success,
 *   other if not.
 *
 * Called once after you tell deflate that the input stream is
 * complete (Z_FINISH). By default - join collected chunks,
 * free memory and fill `results` / `err` properties.
 **/
Deflate$1.prototype.onEnd = function (status) {
  // On success - join
  if (status === Z_OK$2) {
    this.result = common.flattenChunks(this.chunks);
  }
  this.chunks = [];
  this.err = status;
  this.msg = this.strm.msg;
};


/**
 * deflate(data[, options]) -> Uint8Array
 * - data (Uint8Array|String): input data to compress.
 * - options (Object): zlib deflate options.
 *
 * Compress `data` with deflate algorithm and `options`.
 *
 * Supported options are:
 *
 * - level
 * - windowBits
 * - memLevel
 * - strategy
 * - dictionary
 *
 * [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced)
 * for more information on these.
 *
 * Sugar (options):
 *
 * - `raw` (Boolean) - say that we work with raw stream, if you don't wish to specify
 *   negative windowBits implicitly.
 *
 * ##### Example:
 *
 * ```javascript
 * const pako = require('pako')
 * const data = new Uint8Array([1,2,3,4,5,6,7,8,9]);
 *
 * console.log(pako.deflate(data));
 * ```
 **/
function deflate$1(input, options) {
  const deflator = new Deflate$1(options);

  deflator.push(input, true);

  // That will never happens, if you don't cheat with options :)
  if (deflator.err) { throw deflator.msg || messages[deflator.err]; }

  return deflator.result;
}


/**
 * deflateRaw(data[, options]) -> Uint8Array
 * - data (Uint8Array|String): input data to compress.
 * - options (Object): zlib deflate options.
 *
 * The same as [[deflate]], but creates raw data, without wrapper
 * (header and adler32 crc).
 **/
function deflateRaw$1(input, options) {
  options = options || {};
  options.raw = true;
  return deflate$1(input, options);
}


/**
 * gzip(data[, options]) -> Uint8Array
 * - data (Uint8Array|String): input data to compress.
 * - options (Object): zlib deflate options.
 *
 * The same as [[deflate]], but create gzip wrapper instead of
 * deflate one.
 **/
function gzip$1(input, options) {
  options = options || {};
  options.gzip = true;
  return deflate$1(input, options);
}


var Deflate_1$1 = Deflate$1;
var deflate_2 = deflate$1;
var deflateRaw_1$1 = deflateRaw$1;
var gzip_1$1 = gzip$1;
var constants$1 = constants$2;

var deflate_1$1 = {
	Deflate: Deflate_1$1,
	deflate: deflate_2,
	deflateRaw: deflateRaw_1$1,
	gzip: gzip_1$1,
	constants: constants$1
};

// (C) 1995-2013 Jean-loup Gailly and Mark Adler
// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin
//
// This software is provided 'as-is', without any express or implied
// warranty. In no event will the authors be held liable for any damages
// arising from the use of this software.
//
// Permission is granted to anyone to use this software for any purpose,
// including commercial applications, and to alter it and redistribute it
// freely, subject to the following restrictions:
//
// 1. The origin of this software must not be misrepresented; you must not
//   claim that you wrote the original software. If you use this software
//   in a product, an acknowledgment in the product documentation would be
//   appreciated but is not required.
// 2. Altered source versions must be plainly marked as such, and must not be
//   misrepresented as being the original software.
// 3. This notice may not be removed or altered from any source distribution.

// See state defs from inflate.js
const BAD$1 = 30;       /* got a data error -- remain here until reset */
const TYPE$1 = 12;      /* i: waiting for type bits, including last-flag bit */

/*
   Decode literal, length, and distance codes and write out the resulting
   literal and match bytes until either not enough input or output is
   available, an end-of-block is encountered, or a data error is encountered.
   When large enough input and output buffers are supplied to inflate(), for
   example, a 16K input buffer and a 64K output buffer, more than 95% of the
   inflate execution time is spent in this routine.

   Entry assumptions:

        state.mode === LEN
        strm.avail_in >= 6
        strm.avail_out >= 258
        start >= strm.avail_out
        state.bits < 8

   On return, state.mode is one of:

        LEN -- ran out of enough output space or enough available input
        TYPE -- reached end of block code, inflate() to interpret next block
        BAD -- error in block data

   Notes:

    - The maximum input bits used by a length/distance pair is 15 bits for the
      length code, 5 bits for the length extra, 15 bits for the distance code,
      and 13 bits for the distance extra.  This totals 48 bits, or six bytes.
      Therefore if strm.avail_in >= 6, then there is enough input to avoid
      checking for available input while decoding.

    - The maximum bytes that a single length/distance pair can output is 258
      bytes, which is the maximum length that can be coded.  inflate_fast()
      requires strm.avail_out >= 258 for each loop to avoid checking for
      output space.
 */
var inffast = function inflate_fast(strm, start) {
  let _in;                    /* local strm.input */
  let last;                   /* have enough input while in < last */
  let _out;                   /* local strm.output */
  let beg;                    /* inflate()'s initial strm.output */
  let end;                    /* while out < end, enough space available */
//#ifdef INFLATE_STRICT
  let dmax;                   /* maximum distance from zlib header */
//#endif
  let wsize;                  /* window size or zero if not using window */
  let whave;                  /* valid bytes in the window */
  let wnext;                  /* window write index */
  // Use `s_window` instead `window`, avoid conflict with instrumentation tools
  let s_window;               /* allocated sliding window, if wsize != 0 */
  let hold;                   /* local strm.hold */
  let bits;                   /* local strm.bits */
  let lcode;                  /* local strm.lencode */
  let dcode;                  /* local strm.distcode */
  let lmask;                  /* mask for first level of length codes */
  let dmask;                  /* mask for first level of distance codes */
  let here;                   /* retrieved table entry */
  let op;                     /* code bits, operation, extra bits, or */
                              /*  window position, window bytes to copy */
  let len;                    /* match length, unused bytes */
  let dist;                   /* match distance */
  let from;                   /* where to copy match from */
  let from_source;


  let input, output; // JS specific, because we have no pointers

  /* copy state to local variables */
  const state = strm.state;
  //here = state.here;
  _in = strm.next_in;
  input = strm.input;
  last = _in + (strm.avail_in - 5);
  _out = strm.next_out;
  output = strm.output;
  beg = _out - (start - strm.avail_out);
  end = _out + (strm.avail_out - 257);
//#ifdef INFLATE_STRICT
  dmax = state.dmax;
//#endif
  wsize = state.wsize;
  whave = state.whave;
  wnext = state.wnext;
  s_window = state.window;
  hold = state.hold;
  bits = state.bits;
  lcode = state.lencode;
  dcode = state.distcode;
  lmask = (1 << state.lenbits) - 1;
  dmask = (1 << state.distbits) - 1;


  /* decode literals and length/distances until end-of-block or not enough
     input data or output space */

  top:
  do {
    if (bits < 15) {
      hold += input[_in++] << bits;
      bits += 8;
      hold += input[_in++] << bits;
      bits += 8;
    }

    here = lcode[hold & lmask];

    dolen:
    for (;;) { // Goto emulation
      op = here >>> 24/*here.bits*/;
      hold >>>= op;
      bits -= op;
      op = (here >>> 16) & 0xff/*here.op*/;
      if (op === 0) {                          /* literal */
        //Tracevv((stderr, here.val >= 0x20 && here.val < 0x7f ?
        //        "inflate:         literal '%c'\n" :
        //        "inflate:         literal 0x%02x\n", here.val));
        output[_out++] = here & 0xffff/*here.val*/;
      }
      else if (op & 16) {                     /* length base */
        len = here & 0xffff/*here.val*/;
        op &= 15;                           /* number of extra bits */
        if (op) {
          if (bits < op) {
            hold += input[_in++] << bits;
            bits += 8;
          }
          len += hold & ((1 << op) - 1);
          hold >>>= op;
          bits -= op;
        }
        //Tracevv((stderr, "inflate:         length %u\n", len));
        if (bits < 15) {
          hold += input[_in++] << bits;
          bits += 8;
          hold += input[_in++] << bits;
          bits += 8;
        }
        here = dcode[hold & dmask];

        dodist:
        for (;;) { // goto emulation
          op = here >>> 24/*here.bits*/;
          hold >>>= op;
          bits -= op;
          op = (here >>> 16) & 0xff/*here.op*/;

          if (op & 16) {                      /* distance base */
            dist = here & 0xffff/*here.val*/;
            op &= 15;                       /* number of extra bits */
            if (bits < op) {
              hold += input[_in++] << bits;
              bits += 8;
              if (bits < op) {
                hold += input[_in++] << bits;
                bits += 8;
              }
            }
            dist += hold & ((1 << op) - 1);
//#ifdef INFLATE_STRICT
            if (dist > dmax) {
              strm.msg = 'invalid distance too far back';
              state.mode = BAD$1;
              break top;
            }
//#endif
            hold >>>= op;
            bits -= op;
            //Tracevv((stderr, "inflate:         distance %u\n", dist));
            op = _out - beg;                /* max distance in output */
            if (dist > op) {                /* see if copy from window */
              op = dist - op;               /* distance back in window */
              if (op > whave) {
                if (state.sane) {
                  strm.msg = 'invalid distance too far back';
                  state.mode = BAD$1;
                  break top;
                }

// (!) This block is disabled in zlib defaults,
// don't enable it for binary compatibility
//#ifdef INFLATE_ALLOW_INVALID_DISTANCE_TOOFAR_ARRR
//                if (len <= op - whave) {
//                  do {
//                    output[_out++] = 0;
//                  } while (--len);
//                  continue top;
//                }
//                len -= op - whave;
//                do {
//                  output[_out++] = 0;
//                } while (--op > whave);
//                if (op === 0) {
//                  from = _out - dist;
//                  do {
//                    output[_out++] = output[from++];
//                  } while (--len);
//                  continue top;
//                }
//#endif
              }
              from = 0; // window index
              from_source = s_window;
              if (wnext === 0) {           /* very common case */
                from += wsize - op;
                if (op < len) {         /* some from window */
                  len -= op;
                  do {
                    output[_out++] = s_window[from++];
                  } while (--op);
                  from = _out - dist;  /* rest from output */
                  from_source = output;
                }
              }
              else if (wnext < op) {      /* wrap around window */
                from += wsize + wnext - op;
                op -= wnext;
                if (op < len) {         /* some from end of window */
                  len -= op;
                  do {
                    output[_out++] = s_window[from++];
                  } while (--op);
                  from = 0;
                  if (wnext < len) {  /* some from start of window */
                    op = wnext;
                    len -= op;
                    do {
                      output[_out++] = s_window[from++];
                    } while (--op);
                    from = _out - dist;      /* rest from output */
                    from_source = output;
                  }
                }
              }
              else {                      /* contiguous in window */
                from += wnext - op;
                if (op < len) {         /* some from window */
                  len -= op;
                  do {
                    output[_out++] = s_window[from++];
                  } while (--op);
                  from = _out - dist;  /* rest from output */
                  from_source = output;
                }
              }
              while (len > 2) {
                output[_out++] = from_source[from++];
                output[_out++] = from_source[from++];
                output[_out++] = from_source[from++];
                len -= 3;
              }
              if (len) {
                output[_out++] = from_source[from++];
                if (len > 1) {
                  output[_out++] = from_source[from++];
                }
              }
            }
            else {
              from = _out - dist;          /* copy direct from output */
              do {                        /* minimum length is three */
                output[_out++] = output[from++];
                output[_out++] = output[from++];
                output[_out++] = output[from++];
                len -= 3;
              } while (len > 2);
              if (len) {
                output[_out++] = output[from++];
                if (len > 1) {
                  output[_out++] = output[from++];
                }
              }
            }
          }
          else if ((op & 64) === 0) {          /* 2nd level distance code */
            here = dcode[(here & 0xffff)/*here.val*/ + (hold & ((1 << op) - 1))];
            continue dodist;
          }
          else {
            strm.msg = 'invalid distance code';
            state.mode = BAD$1;
            break top;
          }

          break; // need to emulate goto via "continue"
        }
      }
      else if ((op & 64) === 0) {              /* 2nd level length code */
        here = lcode[(here & 0xffff)/*here.val*/ + (hold & ((1 << op) - 1))];
        continue dolen;
      }
      else if (op & 32) {                     /* end-of-block */
        //Tracevv((stderr, "inflate:         end of block\n"));
        state.mode = TYPE$1;
        break top;
      }
      else {
        strm.msg = 'invalid literal/length code';
        state.mode = BAD$1;
        break top;
      }

      break; // need to emulate goto via "continue"
    }
  } while (_in < last && _out < end);

  /* return unused bytes (on entry, bits < 8, so in won't go too far back) */
  len = bits >> 3;
  _in -= len;
  bits -= len << 3;
  hold &= (1 << bits) - 1;

  /* update state and return */
  strm.next_in = _in;
  strm.next_out = _out;
  strm.avail_in = (_in < last ? 5 + (last - _in) : 5 - (_in - last));
  strm.avail_out = (_out < end ? 257 + (end - _out) : 257 - (_out - end));
  state.hold = hold;
  state.bits = bits;
  return;
};

// (C) 1995-2013 Jean-loup Gailly and Mark Adler
// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin
//
// This software is provided 'as-is', without any express or implied
// warranty. In no event will the authors be held liable for any damages
// arising from the use of this software.
//
// Permission is granted to anyone to use this software for any purpose,
// including commercial applications, and to alter it and redistribute it
// freely, subject to the following restrictions:
//
// 1. The origin of this software must not be misrepresented; you must not
//   claim that you wrote the original software. If you use this software
//   in a product, an acknowledgment in the product documentation would be
//   appreciated but is not required.
// 2. Altered source versions must be plainly marked as such, and must not be
//   misrepresented as being the original software.
// 3. This notice may not be removed or altered from any source distribution.

const MAXBITS = 15;
const ENOUGH_LENS$1 = 852;
const ENOUGH_DISTS$1 = 592;
//const ENOUGH = (ENOUGH_LENS+ENOUGH_DISTS);

const CODES$1 = 0;
const LENS$1 = 1;
const DISTS$1 = 2;

const lbase = new Uint16Array([ /* Length codes 257..285 base */
  3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31,
  35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0
]);

const lext = new Uint8Array([ /* Length codes 257..285 extra */
  16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18,
  19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 72, 78
]);

const dbase = new Uint16Array([ /* Distance codes 0..29 base */
  1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193,
  257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145,
  8193, 12289, 16385, 24577, 0, 0
]);

const dext = new Uint8Array([ /* Distance codes 0..29 extra */
  16, 16, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22,
  23, 23, 24, 24, 25, 25, 26, 26, 27, 27,
  28, 28, 29, 29, 64, 64
]);

const inflate_table = (type, lens, lens_index, codes, table, table_index, work, opts) =>
{
  const bits = opts.bits;
      //here = opts.here; /* table entry for duplication */

  let len = 0;               /* a code's length in bits */
  let sym = 0;               /* index of code symbols */
  let min = 0, max = 0;          /* minimum and maximum code lengths */
  let root = 0;              /* number of index bits for root table */
  let curr = 0;              /* number of index bits for current table */
  let drop = 0;              /* code bits to drop for sub-table */
  let left = 0;                   /* number of prefix codes available */
  let used = 0;              /* code entries in table used */
  let huff = 0;              /* Huffman code */
  let incr;              /* for incrementing code, index */
  let fill;              /* index for replicating entries */
  let low;               /* low bits for current root entry */
  let mask;              /* mask for low root bits */
  let next;             /* next available space in table */
  let base = null;     /* base value table to use */
  let base_index = 0;
//  let shoextra;    /* extra bits table to use */
  let end;                    /* use base and extra for symbol > end */
  const count = new Uint16Array(MAXBITS + 1); //[MAXBITS+1];    /* number of codes of each length */
  const offs = new Uint16Array(MAXBITS + 1); //[MAXBITS+1];     /* offsets in table for each length */
  let extra = null;
  let extra_index = 0;

  let here_bits, here_op, here_val;

  /*
   Process a set of code lengths to create a canonical Huffman code.  The
   code lengths are lens[0..codes-1].  Each length corresponds to the
   symbols 0..codes-1.  The Huffman code is generated by first sorting the
   symbols by length from short to long, and retaining the symbol order
   for codes with equal lengths.  Then the code starts with all zero bits
   for the first code of the shortest length, and the codes are integer
   increments for the same length, and zeros are appended as the length
   increases.  For the deflate format, these bits are stored backwards
   from their more natural integer increment ordering, and so when the
   decoding tables are built in the large loop below, the integer codes
   are incremented backwards.

   This routine assumes, but does not check, that all of the entries in
   lens[] are in the range 0..MAXBITS.  The caller must assure this.
   1..MAXBITS is interpreted as that code length.  zero means that that
   symbol does not occur in this code.

   The codes are sorted by computing a count of codes for each length,
   creating from that a table of starting indices for each length in the
   sorted table, and then entering the symbols in order in the sorted
   table.  The sorted table is work[], with that space being provided by
   the caller.

   The length counts are used for other purposes as well, i.e. finding
   the minimum and maximum length codes, determining if there are any
   codes at all, checking for a valid set of lengths, and looking ahead
   at length counts to determine sub-table sizes when building the
   decoding tables.
   */

  /* accumulate lengths for codes (assumes lens[] all in 0..MAXBITS) */
  for (len = 0; len <= MAXBITS; len++) {
    count[len] = 0;
  }
  for (sym = 0; sym < codes; sym++) {
    count[lens[lens_index + sym]]++;
  }

  /* bound code lengths, force root to be within code lengths */
  root = bits;
  for (max = MAXBITS; max >= 1; max--) {
    if (count[max] !== 0) { break; }
  }
  if (root > max) {
    root = max;
  }
  if (max === 0) {                     /* no symbols to code at all */
    //table.op[opts.table_index] = 64;  //here.op = (var char)64;    /* invalid code marker */
    //table.bits[opts.table_index] = 1;   //here.bits = (var char)1;
    //table.val[opts.table_index++] = 0;   //here.val = (var short)0;
    table[table_index++] = (1 << 24) | (64 << 16) | 0;


    //table.op[opts.table_index] = 64;
    //table.bits[opts.table_index] = 1;
    //table.val[opts.table_index++] = 0;
    table[table_index++] = (1 << 24) | (64 << 16) | 0;

    opts.bits = 1;
    return 0;     /* no symbols, but wait for decoding to report error */
  }
  for (min = 1; min < max; min++) {
    if (count[min] !== 0) { break; }
  }
  if (root < min) {
    root = min;
  }

  /* check for an over-subscribed or incomplete set of lengths */
  left = 1;
  for (len = 1; len <= MAXBITS; len++) {
    left <<= 1;
    left -= count[len];
    if (left < 0) {
      return -1;
    }        /* over-subscribed */
  }
  if (left > 0 && (type === CODES$1 || max !== 1)) {
    return -1;                      /* incomplete set */
  }

  /* generate offsets into symbol table for each length for sorting */
  offs[1] = 0;
  for (len = 1; len < MAXBITS; len++) {
    offs[len + 1] = offs[len] + count[len];
  }

  /* sort symbols by length, by symbol order within each length */
  for (sym = 0; sym < codes; sym++) {
    if (lens[lens_index + sym] !== 0) {
      work[offs[lens[lens_index + sym]]++] = sym;
    }
  }

  /*
   Create and fill in decoding tables.  In this loop, the table being
   filled is at next and has curr index bits.  The code being used is huff
   with length len.  That code is converted to an index by dropping drop
   bits off of the bottom.  For codes where len is less than drop + curr,
   those top drop + curr - len bits are incremented through all values to
   fill the table with replicated entries.

   root is the number of index bits for the root table.  When len exceeds
   root, sub-tables are created pointed to by the root entry with an index
   of the low root bits of huff.  This is saved in low to check for when a
   new sub-table should be started.  drop is zero when the root table is
   being filled, and drop is root when sub-tables are being filled.

   When a new sub-table is needed, it is necessary to look ahead in the
   code lengths to determine what size sub-table is needed.  The length
   counts are used for this, and so count[] is decremented as codes are
   entered in the tables.

   used keeps track of how many table entries have been allocated from the
   provided *table space.  It is checked for LENS and DIST tables against
   the constants ENOUGH_LENS and ENOUGH_DISTS to guard against changes in
   the initial root table size constants.  See the comments in inftrees.h
   for more information.

   sym increments through all symbols, and the loop terminates when
   all codes of length max, i.e. all codes, have been processed.  This
   routine permits incomplete codes, so another loop after this one fills
   in the rest of the decoding tables with invalid code markers.
   */

  /* set up for code type */
  // poor man optimization - use if-else instead of switch,
  // to avoid deopts in old v8
  if (type === CODES$1) {
    base = extra = work;    /* dummy value--not used */
    end = 19;

  } else if (type === LENS$1) {
    base = lbase;
    base_index -= 257;
    extra = lext;
    extra_index -= 257;
    end = 256;

  } else {                    /* DISTS */
    base = dbase;
    extra = dext;
    end = -1;
  }

  /* initialize opts for loop */
  huff = 0;                   /* starting code */
  sym = 0;                    /* starting code symbol */
  len = min;                  /* starting code length */
  next = table_index;              /* current table to fill in */
  curr = root;                /* current table index bits */
  drop = 0;                   /* current bits to drop from code for index */
  low = -1;                   /* trigger new sub-table when len > root */
  used = 1 << root;          /* use root table entries */
  mask = used - 1;            /* mask for comparing low */

  /* check available table space */
  if ((type === LENS$1 && used > ENOUGH_LENS$1) ||
    (type === DISTS$1 && used > ENOUGH_DISTS$1)) {
    return 1;
  }

  /* process all codes and make table entries */
  for (;;) {
    /* create table entry */
    here_bits = len - drop;
    if (work[sym] < end) {
      here_op = 0;
      here_val = work[sym];
    }
    else if (work[sym] > end) {
      here_op = extra[extra_index + work[sym]];
      here_val = base[base_index + work[sym]];
    }
    else {
      here_op = 32 + 64;         /* end of block */
      here_val = 0;
    }

    /* replicate for those indices with low len bits equal to huff */
    incr = 1 << (len - drop);
    fill = 1 << curr;
    min = fill;                 /* save offset to next table */
    do {
      fill -= incr;
      table[next + (huff >> drop) + fill] = (here_bits << 24) | (here_op << 16) | here_val |0;
    } while (fill !== 0);

    /* backwards increment the len-bit code huff */
    incr = 1 << (len - 1);
    while (huff & incr) {
      incr >>= 1;
    }
    if (incr !== 0) {
      huff &= incr - 1;
      huff += incr;
    } else {
      huff = 0;
    }

    /* go to next symbol, update count, len */
    sym++;
    if (--count[len] === 0) {
      if (len === max) { break; }
      len = lens[lens_index + work[sym]];
    }

    /* create new sub-table if needed */
    if (len > root && (huff & mask) !== low) {
      /* if first time, transition to sub-tables */
      if (drop === 0) {
        drop = root;
      }

      /* increment past last table */
      next += min;            /* here min is 1 << curr */

      /* determine length of next table */
      curr = len - drop;
      left = 1 << curr;
      while (curr + drop < max) {
        left -= count[curr + drop];
        if (left <= 0) { break; }
        curr++;
        left <<= 1;
      }

      /* check for enough space */
      used += 1 << curr;
      if ((type === LENS$1 && used > ENOUGH_LENS$1) ||
        (type === DISTS$1 && used > ENOUGH_DISTS$1)) {
        return 1;
      }

      /* point entry in root table to sub-table */
      low = huff & mask;
      /*table.op[low] = curr;
      table.bits[low] = root;
      table.val[low] = next - opts.table_index;*/
      table[low] = (root << 24) | (curr << 16) | (next - table_index) |0;
    }
  }

  /* fill in remaining table entry if code is incomplete (guaranteed to have
   at most one remaining entry, since if the code is incomplete, the
   maximum code length that was allowed to get this far is one bit) */
  if (huff !== 0) {
    //table.op[next + huff] = 64;            /* invalid code marker */
    //table.bits[next + huff] = len - drop;
    //table.val[next + huff] = 0;
    table[next + huff] = ((len - drop) << 24) | (64 << 16) |0;
  }

  /* set return parameters */
  //opts.table_index += used;
  opts.bits = root;
  return 0;
};


var inftrees = inflate_table;

// (C) 1995-2013 Jean-loup Gailly and Mark Adler
// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin
//
// This software is provided 'as-is', without any express or implied
// warranty. In no event will the authors be held liable for any damages
// arising from the use of this software.
//
// Permission is granted to anyone to use this software for any purpose,
// including commercial applications, and to alter it and redistribute it
// freely, subject to the following restrictions:
//
// 1. The origin of this software must not be misrepresented; you must not
//   claim that you wrote the original software. If you use this software
//   in a product, an acknowledgment in the product documentation would be
//   appreciated but is not required.
// 2. Altered source versions must be plainly marked as such, and must not be
//   misrepresented as being the original software.
// 3. This notice may not be removed or altered from any source distribution.






const CODES = 0;
const LENS = 1;
const DISTS = 2;

/* Public constants ==========================================================*/
/* ===========================================================================*/

const {
  Z_FINISH: Z_FINISH$1, Z_BLOCK, Z_TREES,
  Z_OK: Z_OK$1, Z_STREAM_END: Z_STREAM_END$1, Z_NEED_DICT: Z_NEED_DICT$1, Z_STREAM_ERROR: Z_STREAM_ERROR$1, Z_DATA_ERROR: Z_DATA_ERROR$1, Z_MEM_ERROR: Z_MEM_ERROR$1, Z_BUF_ERROR,
  Z_DEFLATED
} = constants$2;


/* STATES ====================================================================*/
/* ===========================================================================*/


const    HEAD = 1;       /* i: waiting for magic header */
const    FLAGS = 2;      /* i: waiting for method and flags (gzip) */
const    TIME = 3;       /* i: waiting for modification time (gzip) */
const    OS = 4;         /* i: waiting for extra flags and operating system (gzip) */
const    EXLEN = 5;      /* i: waiting for extra length (gzip) */
const    EXTRA = 6;      /* i: waiting for extra bytes (gzip) */
const    NAME = 7;       /* i: waiting for end of file name (gzip) */
const    COMMENT = 8;    /* i: waiting for end of comment (gzip) */
const    HCRC = 9;       /* i: waiting for header crc (gzip) */
const    DICTID = 10;    /* i: waiting for dictionary check value */
const    DICT = 11;      /* waiting for inflateSetDictionary() call */
const        TYPE = 12;      /* i: waiting for type bits, including last-flag bit */
const        TYPEDO = 13;    /* i: same, but skip check to exit inflate on new block */
const        STORED = 14;    /* i: waiting for stored size (length and complement) */
const        COPY_ = 15;     /* i/o: same as COPY below, but only first time in */
const        COPY = 16;      /* i/o: waiting for input or output to copy stored block */
const        TABLE = 17;     /* i: waiting for dynamic block table lengths */
const        LENLENS = 18;   /* i: waiting for code length code lengths */
const        CODELENS = 19;  /* i: waiting for length/lit and distance code lengths */
const            LEN_ = 20;      /* i: same as LEN below, but only first time in */
const            LEN = 21;       /* i: waiting for length/lit/eob code */
const            LENEXT = 22;    /* i: waiting for length extra bits */
const            DIST = 23;      /* i: waiting for distance code */
const            DISTEXT = 24;   /* i: waiting for distance extra bits */
const            MATCH = 25;     /* o: waiting for output space to copy string */
const            LIT = 26;       /* o: waiting for output space to write literal */
const    CHECK = 27;     /* i: waiting for 32-bit check value */
const    LENGTH = 28;    /* i: waiting for 32-bit length (gzip) */
const    DONE = 29;      /* finished check, done -- remain here until reset */
const    BAD = 30;       /* got a data error -- remain here until reset */
const    MEM = 31;       /* got an inflate() memory error -- remain here until reset */
const    SYNC = 32;      /* looking for synchronization bytes to restart inflate() */

/* ===========================================================================*/



const ENOUGH_LENS = 852;
const ENOUGH_DISTS = 592;
//const ENOUGH =  (ENOUGH_LENS+ENOUGH_DISTS);

const MAX_WBITS = 15;
/* 32K LZ77 window */
const DEF_WBITS = MAX_WBITS;


const zswap32 = (q) => {

  return  (((q >>> 24) & 0xff) +
          ((q >>> 8) & 0xff00) +
          ((q & 0xff00) << 8) +
          ((q & 0xff) << 24));
};


function InflateState() {
  this.mode = 0;             /* current inflate mode */
  this.last = false;          /* true if processing last block */
  this.wrap = 0;              /* bit 0 true for zlib, bit 1 true for gzip */
  this.havedict = false;      /* true if dictionary provided */
  this.flags = 0;             /* gzip header method and flags (0 if zlib) */
  this.dmax = 0;              /* zlib header max distance (INFLATE_STRICT) */
  this.check = 0;             /* protected copy of check value */
  this.total = 0;             /* protected copy of output count */
  // TODO: may be {}
  this.head = null;           /* where to save gzip header information */

  /* sliding window */
  this.wbits = 0;             /* log base 2 of requested window size */
  this.wsize = 0;             /* window size or zero if not using window */
  this.whave = 0;             /* valid bytes in the window */
  this.wnext = 0;             /* window write index */
  this.window = null;         /* allocated sliding window, if needed */

  /* bit accumulator */
  this.hold = 0;              /* input bit accumulator */
  this.bits = 0;              /* number of bits in "in" */

  /* for string and stored block copying */
  this.length = 0;            /* literal or length of data to copy */
  this.offset = 0;            /* distance back to copy string from */

  /* for table and code decoding */
  this.extra = 0;             /* extra bits needed */

  /* fixed and dynamic code tables */
  this.lencode = null;          /* starting table for length/literal codes */
  this.distcode = null;         /* starting table for distance codes */
  this.lenbits = 0;           /* index bits for lencode */
  this.distbits = 0;          /* index bits for distcode */

  /* dynamic table building */
  this.ncode = 0;             /* number of code length code lengths */
  this.nlen = 0;              /* number of length code lengths */
  this.ndist = 0;             /* number of distance code lengths */
  this.have = 0;              /* number of code lengths in lens[] */
  this.next = null;              /* next available space in codes[] */

  this.lens = new Uint16Array(320); /* temporary storage for code lengths */
  this.work = new Uint16Array(288); /* work area for code table building */

  /*
   because we don't have pointers in js, we use lencode and distcode directly
   as buffers so we don't need codes
  */
  //this.codes = new Int32Array(ENOUGH);       /* space for code tables */
  this.lendyn = null;              /* dynamic table for length/literal codes (JS specific) */
  this.distdyn = null;             /* dynamic table for distance codes (JS specific) */
  this.sane = 0;                   /* if false, allow invalid distance too far */
  this.back = 0;                   /* bits back of last unprocessed length/lit */
  this.was = 0;                    /* initial length of match */
}


const inflateResetKeep = (strm) => {

  if (!strm || !strm.state) { return Z_STREAM_ERROR$1; }
  const state = strm.state;
  strm.total_in = strm.total_out = state.total = 0;
  strm.msg = ''; /*Z_NULL*/
  if (state.wrap) {       /* to support ill-conceived Java test suite */
    strm.adler = state.wrap & 1;
  }
  state.mode = HEAD;
  state.last = 0;
  state.havedict = 0;
  state.dmax = 32768;
  state.head = null/*Z_NULL*/;
  state.hold = 0;
  state.bits = 0;
  //state.lencode = state.distcode = state.next = state.codes;
  state.lencode = state.lendyn = new Int32Array(ENOUGH_LENS);
  state.distcode = state.distdyn = new Int32Array(ENOUGH_DISTS);

  state.sane = 1;
  state.back = -1;
  //Tracev((stderr, "inflate: reset\n"));
  return Z_OK$1;
};


const inflateReset = (strm) => {

  if (!strm || !strm.state) { return Z_STREAM_ERROR$1; }
  const state = strm.state;
  state.wsize = 0;
  state.whave = 0;
  state.wnext = 0;
  return inflateResetKeep(strm);

};


const inflateReset2 = (strm, windowBits) => {
  let wrap;

  /* get the state */
  if (!strm || !strm.state) { return Z_STREAM_ERROR$1; }
  const state = strm.state;

  /* extract wrap request from windowBits parameter */
  if (windowBits < 0) {
    wrap = 0;
    windowBits = -windowBits;
  }
  else {
    wrap = (windowBits >> 4) + 1;
    if (windowBits < 48) {
      windowBits &= 15;
    }
  }

  /* set number of window bits, free window if different */
  if (windowBits && (windowBits < 8 || windowBits > 15)) {
    return Z_STREAM_ERROR$1;
  }
  if (state.window !== null && state.wbits !== windowBits) {
    state.window = null;
  }

  /* update state and reset the rest of it */
  state.wrap = wrap;
  state.wbits = windowBits;
  return inflateReset(strm);
};


const inflateInit2 = (strm, windowBits) => {

  if (!strm) { return Z_STREAM_ERROR$1; }
  //strm.msg = Z_NULL;                 /* in case we return an error */

  const state = new InflateState();

  //if (state === Z_NULL) return Z_MEM_ERROR;
  //Tracev((stderr, "inflate: allocated\n"));
  strm.state = state;
  state.window = null/*Z_NULL*/;
  const ret = inflateReset2(strm, windowBits);
  if (ret !== Z_OK$1) {
    strm.state = null/*Z_NULL*/;
  }
  return ret;
};


const inflateInit = (strm) => {

  return inflateInit2(strm, DEF_WBITS);
};


/*
 Return state with length and distance decoding tables and index sizes set to
 fixed code decoding.  Normally this returns fixed tables from inffixed.h.
 If BUILDFIXED is defined, then instead this routine builds the tables the
 first time it's called, and returns those tables the first time and
 thereafter.  This reduces the size of the code by about 2K bytes, in
 exchange for a little execution time.  However, BUILDFIXED should not be
 used for threaded applications, since the rewriting of the tables and virgin
 may not be thread-safe.
 */
let virgin = true;

let lenfix, distfix; // We have no pointers in JS, so keep tables separate


const fixedtables = (state) => {

  /* build fixed huffman tables if first call (may not be thread safe) */
  if (virgin) {
    lenfix = new Int32Array(512);
    distfix = new Int32Array(32);

    /* literal/length table */
    let sym = 0;
    while (sym < 144) { state.lens[sym++] = 8; }
    while (sym < 256) { state.lens[sym++] = 9; }
    while (sym < 280) { state.lens[sym++] = 7; }
    while (sym < 288) { state.lens[sym++] = 8; }

    inftrees(LENS,  state.lens, 0, 288, lenfix,   0, state.work, { bits: 9 });

    /* distance table */
    sym = 0;
    while (sym < 32) { state.lens[sym++] = 5; }

    inftrees(DISTS, state.lens, 0, 32,   distfix, 0, state.work, { bits: 5 });

    /* do this just once */
    virgin = false;
  }

  state.lencode = lenfix;
  state.lenbits = 9;
  state.distcode = distfix;
  state.distbits = 5;
};


/*
 Update the window with the last wsize (normally 32K) bytes written before
 returning.  If window does not exist yet, create it.  This is only called
 when a window is already in use, or when output has been written during this
 inflate call, but the end of the deflate stream has not been reached yet.
 It is also called to create a window for dictionary data when a dictionary
 is loaded.

 Providing output buffers larger than 32K to inflate() should provide a speed
 advantage, since only the last 32K of output is copied to the sliding window
 upon return from inflate(), and since all distances after the first 32K of
 output will fall in the output data, making match copies simpler and faster.
 The advantage may be dependent on the size of the processor's data caches.
 */
const updatewindow = (strm, src, end, copy) => {

  let dist;
  const state = strm.state;

  /* if it hasn't been done already, allocate space for the window */
  if (state.window === null) {
    state.wsize = 1 << state.wbits;
    state.wnext = 0;
    state.whave = 0;

    state.window = new Uint8Array(state.wsize);
  }

  /* copy state->wsize or less output bytes into the circular window */
  if (copy >= state.wsize) {
    state.window.set(src.subarray(end - state.wsize, end), 0);
    state.wnext = 0;
    state.whave = state.wsize;
  }
  else {
    dist = state.wsize - state.wnext;
    if (dist > copy) {
      dist = copy;
    }
    //zmemcpy(state->window + state->wnext, end - copy, dist);
    state.window.set(src.subarray(end - copy, end - copy + dist), state.wnext);
    copy -= dist;
    if (copy) {
      //zmemcpy(state->window, end - copy, copy);
      state.window.set(src.subarray(end - copy, end), 0);
      state.wnext = copy;
      state.whave = state.wsize;
    }
    else {
      state.wnext += dist;
      if (state.wnext === state.wsize) { state.wnext = 0; }
      if (state.whave < state.wsize) { state.whave += dist; }
    }
  }
  return 0;
};


const inflate$2 = (strm, flush) => {

  let state;
  let input, output;          // input/output buffers
  let next;                   /* next input INDEX */
  let put;                    /* next output INDEX */
  let have, left;             /* available input and output */
  let hold;                   /* bit buffer */
  let bits;                   /* bits in bit buffer */
  let _in, _out;              /* save starting available input and output */
  let copy;                   /* number of stored or match bytes to copy */
  let from;                   /* where to copy match bytes from */
  let from_source;
  let here = 0;               /* current decoding table entry */
  let here_bits, here_op, here_val; // paked "here" denormalized (JS specific)
  //let last;                   /* parent table entry */
  let last_bits, last_op, last_val; // paked "last" denormalized (JS specific)
  let len;                    /* length to copy for repeats, bits to drop */
  let ret;                    /* return code */
  const hbuf = new Uint8Array(4);    /* buffer for gzip header crc calculation */
  let opts;

  let n; // temporary variable for NEED_BITS

  const order = /* permutation of code lengths */
    new Uint8Array([ 16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15 ]);


  if (!strm || !strm.state || !strm.output ||
      (!strm.input && strm.avail_in !== 0)) {
    return Z_STREAM_ERROR$1;
  }

  state = strm.state;
  if (state.mode === TYPE) { state.mode = TYPEDO; }    /* skip check */


  //--- LOAD() ---
  put = strm.next_out;
  output = strm.output;
  left = strm.avail_out;
  next = strm.next_in;
  input = strm.input;
  have = strm.avail_in;
  hold = state.hold;
  bits = state.bits;
  //---

  _in = have;
  _out = left;
  ret = Z_OK$1;

  inf_leave: // goto emulation
  for (;;) {
    switch (state.mode) {
      case HEAD:
        if (state.wrap === 0) {
          state.mode = TYPEDO;
          break;
        }
        //=== NEEDBITS(16);
        while (bits < 16) {
          if (have === 0) { break inf_leave; }
          have--;
          hold += input[next++] << bits;
          bits += 8;
        }
        //===//
        if ((state.wrap & 2) && hold === 0x8b1f) {  /* gzip header */
          state.check = 0/*crc32(0L, Z_NULL, 0)*/;
          //=== CRC2(state.check, hold);
          hbuf[0] = hold & 0xff;
          hbuf[1] = (hold >>> 8) & 0xff;
          state.check = crc32_1(state.check, hbuf, 2, 0);
          //===//

          //=== INITBITS();
          hold = 0;
          bits = 0;
          //===//
          state.mode = FLAGS;
          break;
        }
        state.flags = 0;           /* expect zlib header */
        if (state.head) {
          state.head.done = false;
        }
        if (!(state.wrap & 1) ||   /* check if zlib header allowed */
          (((hold & 0xff)/*BITS(8)*/ << 8) + (hold >> 8)) % 31) {
          strm.msg = 'incorrect header check';
          state.mode = BAD;
          break;
        }
        if ((hold & 0x0f)/*BITS(4)*/ !== Z_DEFLATED) {
          strm.msg = 'unknown compression method';
          state.mode = BAD;
          break;
        }
        //--- DROPBITS(4) ---//
        hold >>>= 4;
        bits -= 4;
        //---//
        len = (hold & 0x0f)/*BITS(4)*/ + 8;
        if (state.wbits === 0) {
          state.wbits = len;
        }
        else if (len > state.wbits) {
          strm.msg = 'invalid window size';
          state.mode = BAD;
          break;
        }

        // !!! pako patch. Force use `options.windowBits` if passed.
        // Required to always use max window size by default.
        state.dmax = 1 << state.wbits;
        //state.dmax = 1 << len;

        //Tracev((stderr, "inflate:   zlib header ok\n"));
        strm.adler = state.check = 1/*adler32(0L, Z_NULL, 0)*/;
        state.mode = hold & 0x200 ? DICTID : TYPE;
        //=== INITBITS();
        hold = 0;
        bits = 0;
        //===//
        break;
      case FLAGS:
        //=== NEEDBITS(16); */
        while (bits < 16) {
          if (have === 0) { break inf_leave; }
          have--;
          hold += input[next++] << bits;
          bits += 8;
        }
        //===//
        state.flags = hold;
        if ((state.flags & 0xff) !== Z_DEFLATED) {
          strm.msg = 'unknown compression method';
          state.mode = BAD;
          break;
        }
        if (state.flags & 0xe000) {
          strm.msg = 'unknown header flags set';
          state.mode = BAD;
          break;
        }
        if (state.head) {
          state.head.text = ((hold >> 8) & 1);
        }
        if (state.flags & 0x0200) {
          //=== CRC2(state.check, hold);
          hbuf[0] = hold & 0xff;
          hbuf[1] = (hold >>> 8) & 0xff;
          state.check = crc32_1(state.check, hbuf, 2, 0);
          //===//
        }
        //=== INITBITS();
        hold = 0;
        bits = 0;
        //===//
        state.mode = TIME;
        /* falls through */
      case TIME:
        //=== NEEDBITS(32); */
        while (bits < 32) {
          if (have === 0) { break inf_leave; }
          have--;
          hold += input[next++] << bits;
          bits += 8;
        }
        //===//
        if (state.head) {
          state.head.time = hold;
        }
        if (state.flags & 0x0200) {
          //=== CRC4(state.check, hold)
          hbuf[0] = hold & 0xff;
          hbuf[1] = (hold >>> 8) & 0xff;
          hbuf[2] = (hold >>> 16) & 0xff;
          hbuf[3] = (hold >>> 24) & 0xff;
          state.check = crc32_1(state.check, hbuf, 4, 0);
          //===
        }
        //=== INITBITS();
        hold = 0;
        bits = 0;
        //===//
        state.mode = OS;
        /* falls through */
      case OS:
        //=== NEEDBITS(16); */
        while (bits < 16) {
          if (have === 0) { break inf_leave; }
          have--;
          hold += input[next++] << bits;
          bits += 8;
        }
        //===//
        if (state.head) {
          state.head.xflags = (hold & 0xff);
          state.head.os = (hold >> 8);
        }
        if (state.flags & 0x0200) {
          //=== CRC2(state.check, hold);
          hbuf[0] = hold & 0xff;
          hbuf[1] = (hold >>> 8) & 0xff;
          state.check = crc32_1(state.check, hbuf, 2, 0);
          //===//
        }
        //=== INITBITS();
        hold = 0;
        bits = 0;
        //===//
        state.mode = EXLEN;
        /* falls through */
      case EXLEN:
        if (state.flags & 0x0400) {
          //=== NEEDBITS(16); */
          while (bits < 16) {
            if (have === 0) { break inf_leave; }
            have--;
            hold += input[next++] << bits;
            bits += 8;
          }
          //===//
          state.length = hold;
          if (state.head) {
            state.head.extra_len = hold;
          }
          if (state.flags & 0x0200) {
            //=== CRC2(state.check, hold);
            hbuf[0] = hold & 0xff;
            hbuf[1] = (hold >>> 8) & 0xff;
            state.check = crc32_1(state.check, hbuf, 2, 0);
            //===//
          }
          //=== INITBITS();
          hold = 0;
          bits = 0;
          //===//
        }
        else if (state.head) {
          state.head.extra = null/*Z_NULL*/;
        }
        state.mode = EXTRA;
        /* falls through */
      case EXTRA:
        if (state.flags & 0x0400) {
          copy = state.length;
          if (copy > have) { copy = have; }
          if (copy) {
            if (state.head) {
              len = state.head.extra_len - state.length;
              if (!state.head.extra) {
                // Use untyped array for more convenient processing later
                state.head.extra = new Uint8Array(state.head.extra_len);
              }
              state.head.extra.set(
                input.subarray(
                  next,
                  // extra field is limited to 65536 bytes
                  // - no need for additional size check
                  next + copy
                ),
                /*len + copy > state.head.extra_max - len ? state.head.extra_max : copy,*/
                len
              );
              //zmemcpy(state.head.extra + len, next,
              //        len + copy > state.head.extra_max ?
              //        state.head.extra_max - len : copy);
            }
            if (state.flags & 0x0200) {
              state.check = crc32_1(state.check, input, copy, next);
            }
            have -= copy;
            next += copy;
            state.length -= copy;
          }
          if (state.length) { break inf_leave; }
        }
        state.length = 0;
        state.mode = NAME;
        /* falls through */
      case NAME:
        if (state.flags & 0x0800) {
          if (have === 0) { break inf_leave; }
          copy = 0;
          do {
            // TODO: 2 or 1 bytes?
            len = input[next + copy++];
            /* use constant limit because in js we should not preallocate memory */
            if (state.head && len &&
                (state.length < 65536 /*state.head.name_max*/)) {
              state.head.name += String.fromCharCode(len);
            }
          } while (len && copy < have);

          if (state.flags & 0x0200) {
            state.check = crc32_1(state.check, input, copy, next);
          }
          have -= copy;
          next += copy;
          if (len) { break inf_leave; }
        }
        else if (state.head) {
          state.head.name = null;
        }
        state.length = 0;
        state.mode = COMMENT;
        /* falls through */
      case COMMENT:
        if (state.flags & 0x1000) {
          if (have === 0) { break inf_leave; }
          copy = 0;
          do {
            len = input[next + copy++];
            /* use constant limit because in js we should not preallocate memory */
            if (state.head && len &&
                (state.length < 65536 /*state.head.comm_max*/)) {
              state.head.comment += String.fromCharCode(len);
            }
          } while (len && copy < have);
          if (state.flags & 0x0200) {
            state.check = crc32_1(state.check, input, copy, next);
          }
          have -= copy;
          next += copy;
          if (len) { break inf_leave; }
        }
        else if (state.head) {
          state.head.comment = null;
        }
        state.mode = HCRC;
        /* falls through */
      case HCRC:
        if (state.flags & 0x0200) {
          //=== NEEDBITS(16); */
          while (bits < 16) {
            if (have === 0) { break inf_leave; }
            have--;
            hold += input[next++] << bits;
            bits += 8;
          }
          //===//
          if (hold !== (state.check & 0xffff)) {
            strm.msg = 'header crc mismatch';
            state.mode = BAD;
            break;
          }
          //=== INITBITS();
          hold = 0;
          bits = 0;
          //===//
        }
        if (state.head) {
          state.head.hcrc = ((state.flags >> 9) & 1);
          state.head.done = true;
        }
        strm.adler = state.check = 0;
        state.mode = TYPE;
        break;
      case DICTID:
        //=== NEEDBITS(32); */
        while (bits < 32) {
          if (have === 0) { break inf_leave; }
          have--;
          hold += input[next++] << bits;
          bits += 8;
        }
        //===//
        strm.adler = state.check = zswap32(hold);
        //=== INITBITS();
        hold = 0;
        bits = 0;
        //===//
        state.mode = DICT;
        /* falls through */
      case DICT:
        if (state.havedict === 0) {
          //--- RESTORE() ---
          strm.next_out = put;
          strm.avail_out = left;
          strm.next_in = next;
          strm.avail_in = have;
          state.hold = hold;
          state.bits = bits;
          //---
          return Z_NEED_DICT$1;
        }
        strm.adler = state.check = 1/*adler32(0L, Z_NULL, 0)*/;
        state.mode = TYPE;
        /* falls through */
      case TYPE:
        if (flush === Z_BLOCK || flush === Z_TREES) { break inf_leave; }
        /* falls through */
      case TYPEDO:
        if (state.last) {
          //--- BYTEBITS() ---//
          hold >>>= bits & 7;
          bits -= bits & 7;
          //---//
          state.mode = CHECK;
          break;
        }
        //=== NEEDBITS(3); */
        while (bits < 3) {
          if (have === 0) { break inf_leave; }
          have--;
          hold += input[next++] << bits;
          bits += 8;
        }
        //===//
        state.last = (hold & 0x01)/*BITS(1)*/;
        //--- DROPBITS(1) ---//
        hold >>>= 1;
        bits -= 1;
        //---//

        switch ((hold & 0x03)/*BITS(2)*/) {
          case 0:                             /* stored block */
            //Tracev((stderr, "inflate:     stored block%s\n",
            //        state.last ? " (last)" : ""));
            state.mode = STORED;
            break;
          case 1:                             /* fixed block */
            fixedtables(state);
            //Tracev((stderr, "inflate:     fixed codes block%s\n",
            //        state.last ? " (last)" : ""));
            state.mode = LEN_;             /* decode codes */
            if (flush === Z_TREES) {
              //--- DROPBITS(2) ---//
              hold >>>= 2;
              bits -= 2;
              //---//
              break inf_leave;
            }
            break;
          case 2:                             /* dynamic block */
            //Tracev((stderr, "inflate:     dynamic codes block%s\n",
            //        state.last ? " (last)" : ""));
            state.mode = TABLE;
            break;
          case 3:
            strm.msg = 'invalid block type';
            state.mode = BAD;
        }
        //--- DROPBITS(2) ---//
        hold >>>= 2;
        bits -= 2;
        //---//
        break;
      case STORED:
        //--- BYTEBITS() ---// /* go to byte boundary */
        hold >>>= bits & 7;
        bits -= bits & 7;
        //---//
        //=== NEEDBITS(32); */
        while (bits < 32) {
          if (have === 0) { break inf_leave; }
          have--;
          hold += input[next++] << bits;
          bits += 8;
        }
        //===//
        if ((hold & 0xffff) !== ((hold >>> 16) ^ 0xffff)) {
          strm.msg = 'invalid stored block lengths';
          state.mode = BAD;
          break;
        }
        state.length = hold & 0xffff;
        //Tracev((stderr, "inflate:       stored length %u\n",
        //        state.length));
        //=== INITBITS();
        hold = 0;
        bits = 0;
        //===//
        state.mode = COPY_;
        if (flush === Z_TREES) { break inf_leave; }
        /* falls through */
      case COPY_:
        state.mode = COPY;
        /* falls through */
      case COPY:
        copy = state.length;
        if (copy) {
          if (copy > have) { copy = have; }
          if (copy > left) { copy = left; }
          if (copy === 0) { break inf_leave; }
          //--- zmemcpy(put, next, copy); ---
          output.set(input.subarray(next, next + copy), put);
          //---//
          have -= copy;
          next += copy;
          left -= copy;
          put += copy;
          state.length -= copy;
          break;
        }
        //Tracev((stderr, "inflate:       stored end\n"));
        state.mode = TYPE;
        break;
      case TABLE:
        //=== NEEDBITS(14); */
        while (bits < 14) {
          if (have === 0) { break inf_leave; }
          have--;
          hold += input[next++] << bits;
          bits += 8;
        }
        //===//
        state.nlen = (hold & 0x1f)/*BITS(5)*/ + 257;
        //--- DROPBITS(5) ---//
        hold >>>= 5;
        bits -= 5;
        //---//
        state.ndist = (hold & 0x1f)/*BITS(5)*/ + 1;
        //--- DROPBITS(5) ---//
        hold >>>= 5;
        bits -= 5;
        //---//
        state.ncode = (hold & 0x0f)/*BITS(4)*/ + 4;
        //--- DROPBITS(4) ---//
        hold >>>= 4;
        bits -= 4;
        //---//
//#ifndef PKZIP_BUG_WORKAROUND
        if (state.nlen > 286 || state.ndist > 30) {
          strm.msg = 'too many length or distance symbols';
          state.mode = BAD;
          break;
        }
//#endif
        //Tracev((stderr, "inflate:       table sizes ok\n"));
        state.have = 0;
        state.mode = LENLENS;
        /* falls through */
      case LENLENS:
        while (state.have < state.ncode) {
          //=== NEEDBITS(3);
          while (bits < 3) {
            if (have === 0) { break inf_leave; }
            have--;
            hold += input[next++] << bits;
            bits += 8;
          }
          //===//
          state.lens[order[state.have++]] = (hold & 0x07);//BITS(3);
          //--- DROPBITS(3) ---//
          hold >>>= 3;
          bits -= 3;
          //---//
        }
        while (state.have < 19) {
          state.lens[order[state.have++]] = 0;
        }
        // We have separate tables & no pointers. 2 commented lines below not needed.
        //state.next = state.codes;
        //state.lencode = state.next;
        // Switch to use dynamic table
        state.lencode = state.lendyn;
        state.lenbits = 7;

        opts = { bits: state.lenbits };
        ret = inftrees(CODES, state.lens, 0, 19, state.lencode, 0, state.work, opts);
        state.lenbits = opts.bits;

        if (ret) {
          strm.msg = 'invalid code lengths set';
          state.mode = BAD;
          break;
        }
        //Tracev((stderr, "inflate:       code lengths ok\n"));
        state.have = 0;
        state.mode = CODELENS;
        /* falls through */
      case CODELENS:
        while (state.have < state.nlen + state.ndist) {
          for (;;) {
            here = state.lencode[hold & ((1 << state.lenbits) - 1)];/*BITS(state.lenbits)*/
            here_bits = here >>> 24;
            here_op = (here >>> 16) & 0xff;
            here_val = here & 0xffff;

            if ((here_bits) <= bits) { break; }
            //--- PULLBYTE() ---//
            if (have === 0) { break inf_leave; }
            have--;
            hold += input[next++] << bits;
            bits += 8;
            //---//
          }
          if (here_val < 16) {
            //--- DROPBITS(here.bits) ---//
            hold >>>= here_bits;
            bits -= here_bits;
            //---//
            state.lens[state.have++] = here_val;
          }
          else {
            if (here_val === 16) {
              //=== NEEDBITS(here.bits + 2);
              n = here_bits + 2;
              while (bits < n) {
                if (have === 0) { break inf_leave; }
                have--;
                hold += input[next++] << bits;
                bits += 8;
              }
              //===//
              //--- DROPBITS(here.bits) ---//
              hold >>>= here_bits;
              bits -= here_bits;
              //---//
              if (state.have === 0) {
                strm.msg = 'invalid bit length repeat';
                state.mode = BAD;
                break;
              }
              len = state.lens[state.have - 1];
              copy = 3 + (hold & 0x03);//BITS(2);
              //--- DROPBITS(2) ---//
              hold >>>= 2;
              bits -= 2;
              //---//
            }
            else if (here_val === 17) {
              //=== NEEDBITS(here.bits + 3);
              n = here_bits + 3;
              while (bits < n) {
                if (have === 0) { break inf_leave; }
                have--;
                hold += input[next++] << bits;
                bits += 8;
              }
              //===//
              //--- DROPBITS(here.bits) ---//
              hold >>>= here_bits;
              bits -= here_bits;
              //---//
              len = 0;
              copy = 3 + (hold & 0x07);//BITS(3);
              //--- DROPBITS(3) ---//
              hold >>>= 3;
              bits -= 3;
              //---//
            }
            else {
              //=== NEEDBITS(here.bits + 7);
              n = here_bits + 7;
              while (bits < n) {
                if (have === 0) { break inf_leave; }
                have--;
                hold += input[next++] << bits;
                bits += 8;
              }
              //===//
              //--- DROPBITS(here.bits) ---//
              hold >>>= here_bits;
              bits -= here_bits;
              //---//
              len = 0;
              copy = 11 + (hold & 0x7f);//BITS(7);
              //--- DROPBITS(7) ---//
              hold >>>= 7;
              bits -= 7;
              //---//
            }
            if (state.have + copy > state.nlen + state.ndist) {
              strm.msg = 'invalid bit length repeat';
              state.mode = BAD;
              break;
            }
            while (copy--) {
              state.lens[state.have++] = len;
            }
          }
        }

        /* handle error breaks in while */
        if (state.mode === BAD) { break; }

        /* check for end-of-block code (better have one) */
        if (state.lens[256] === 0) {
          strm.msg = 'invalid code -- missing end-of-block';
          state.mode = BAD;
          break;
        }

        /* build code tables -- note: do not change the lenbits or distbits
           values here (9 and 6) without reading the comments in inftrees.h
           concerning the ENOUGH constants, which depend on those values */
        state.lenbits = 9;

        opts = { bits: state.lenbits };
        ret = inftrees(LENS, state.lens, 0, state.nlen, state.lencode, 0, state.work, opts);
        // We have separate tables & no pointers. 2 commented lines below not needed.
        // state.next_index = opts.table_index;
        state.lenbits = opts.bits;
        // state.lencode = state.next;

        if (ret) {
          strm.msg = 'invalid literal/lengths set';
          state.mode = BAD;
          break;
        }

        state.distbits = 6;
        //state.distcode.copy(state.codes);
        // Switch to use dynamic table
        state.distcode = state.distdyn;
        opts = { bits: state.distbits };
        ret = inftrees(DISTS, state.lens, state.nlen, state.ndist, state.distcode, 0, state.work, opts);
        // We have separate tables & no pointers. 2 commented lines below not needed.
        // state.next_index = opts.table_index;
        state.distbits = opts.bits;
        // state.distcode = state.next;

        if (ret) {
          strm.msg = 'invalid distances set';
          state.mode = BAD;
          break;
        }
        //Tracev((stderr, 'inflate:       codes ok\n'));
        state.mode = LEN_;
        if (flush === Z_TREES) { break inf_leave; }
        /* falls through */
      case LEN_:
        state.mode = LEN;
        /* falls through */
      case LEN:
        if (have >= 6 && left >= 258) {
          //--- RESTORE() ---
          strm.next_out = put;
          strm.avail_out = left;
          strm.next_in = next;
          strm.avail_in = have;
          state.hold = hold;
          state.bits = bits;
          //---
          inffast(strm, _out);
          //--- LOAD() ---
          put = strm.next_out;
          output = strm.output;
          left = strm.avail_out;
          next = strm.next_in;
          input = strm.input;
          have = strm.avail_in;
          hold = state.hold;
          bits = state.bits;
          //---

          if (state.mode === TYPE) {
            state.back = -1;
          }
          break;
        }
        state.back = 0;
        for (;;) {
          here = state.lencode[hold & ((1 << state.lenbits) - 1)];  /*BITS(state.lenbits)*/
          here_bits = here >>> 24;
          here_op = (here >>> 16) & 0xff;
          here_val = here & 0xffff;

          if (here_bits <= bits) { break; }
          //--- PULLBYTE() ---//
          if (have === 0) { break inf_leave; }
          have--;
          hold += input[next++] << bits;
          bits += 8;
          //---//
        }
        if (here_op && (here_op & 0xf0) === 0) {
          last_bits = here_bits;
          last_op = here_op;
          last_val = here_val;
          for (;;) {
            here = state.lencode[last_val +
                    ((hold & ((1 << (last_bits + last_op)) - 1))/*BITS(last.bits + last.op)*/ >> last_bits)];
            here_bits = here >>> 24;
            here_op = (here >>> 16) & 0xff;
            here_val = here & 0xffff;

            if ((last_bits + here_bits) <= bits) { break; }
            //--- PULLBYTE() ---//
            if (have === 0) { break inf_leave; }
            have--;
            hold += input[next++] << bits;
            bits += 8;
            //---//
          }
          //--- DROPBITS(last.bits) ---//
          hold >>>= last_bits;
          bits -= last_bits;
          //---//
          state.back += last_bits;
        }
        //--- DROPBITS(here.bits) ---//
        hold >>>= here_bits;
        bits -= here_bits;
        //---//
        state.back += here_bits;
        state.length = here_val;
        if (here_op === 0) {
          //Tracevv((stderr, here.val >= 0x20 && here.val < 0x7f ?
          //        "inflate:         literal '%c'\n" :
          //        "inflate:         literal 0x%02x\n", here.val));
          state.mode = LIT;
          break;
        }
        if (here_op & 32) {
          //Tracevv((stderr, "inflate:         end of block\n"));
          state.back = -1;
          state.mode = TYPE;
          break;
        }
        if (here_op & 64) {
          strm.msg = 'invalid literal/length code';
          state.mode = BAD;
          break;
        }
        state.extra = here_op & 15;
        state.mode = LENEXT;
        /* falls through */
      case LENEXT:
        if (state.extra) {
          //=== NEEDBITS(state.extra);
          n = state.extra;
          while (bits < n) {
            if (have === 0) { break inf_leave; }
            have--;
            hold += input[next++] << bits;
            bits += 8;
          }
          //===//
          state.length += hold & ((1 << state.extra) - 1)/*BITS(state.extra)*/;
          //--- DROPBITS(state.extra) ---//
          hold >>>= state.extra;
          bits -= state.extra;
          //---//
          state.back += state.extra;
        }
        //Tracevv((stderr, "inflate:         length %u\n", state.length));
        state.was = state.length;
        state.mode = DIST;
        /* falls through */
      case DIST:
        for (;;) {
          here = state.distcode[hold & ((1 << state.distbits) - 1)];/*BITS(state.distbits)*/
          here_bits = here >>> 24;
          here_op = (here >>> 16) & 0xff;
          here_val = here & 0xffff;

          if ((here_bits) <= bits) { break; }
          //--- PULLBYTE() ---//
          if (have === 0) { break inf_leave; }
          have--;
          hold += input[next++] << bits;
          bits += 8;
          //---//
        }
        if ((here_op & 0xf0) === 0) {
          last_bits = here_bits;
          last_op = here_op;
          last_val = here_val;
          for (;;) {
            here = state.distcode[last_val +
                    ((hold & ((1 << (last_bits + last_op)) - 1))/*BITS(last.bits + last.op)*/ >> last_bits)];
            here_bits = here >>> 24;
            here_op = (here >>> 16) & 0xff;
            here_val = here & 0xffff;

            if ((last_bits + here_bits) <= bits) { break; }
            //--- PULLBYTE() ---//
            if (have === 0) { break inf_leave; }
            have--;
            hold += input[next++] << bits;
            bits += 8;
            //---//
          }
          //--- DROPBITS(last.bits) ---//
          hold >>>= last_bits;
          bits -= last_bits;
          //---//
          state.back += last_bits;
        }
        //--- DROPBITS(here.bits) ---//
        hold >>>= here_bits;
        bits -= here_bits;
        //---//
        state.back += here_bits;
        if (here_op & 64) {
          strm.msg = 'invalid distance code';
          state.mode = BAD;
          break;
        }
        state.offset = here_val;
        state.extra = (here_op) & 15;
        state.mode = DISTEXT;
        /* falls through */
      case DISTEXT:
        if (state.extra) {
          //=== NEEDBITS(state.extra);
          n = state.extra;
          while (bits < n) {
            if (have === 0) { break inf_leave; }
            have--;
            hold += input[next++] << bits;
            bits += 8;
          }
          //===//
          state.offset += hold & ((1 << state.extra) - 1)/*BITS(state.extra)*/;
          //--- DROPBITS(state.extra) ---//
          hold >>>= state.extra;
          bits -= state.extra;
          //---//
          state.back += state.extra;
        }
//#ifdef INFLATE_STRICT
        if (state.offset > state.dmax) {
          strm.msg = 'invalid distance too far back';
          state.mode = BAD;
          break;
        }
//#endif
        //Tracevv((stderr, "inflate:         distance %u\n", state.offset));
        state.mode = MATCH;
        /* falls through */
      case MATCH:
        if (left === 0) { break inf_leave; }
        copy = _out - left;
        if (state.offset > copy) {         /* copy from window */
          copy = state.offset - copy;
          if (copy > state.whave) {
            if (state.sane) {
              strm.msg = 'invalid distance too far back';
              state.mode = BAD;
              break;
            }
// (!) This block is disabled in zlib defaults,
// don't enable it for binary compatibility
//#ifdef INFLATE_ALLOW_INVALID_DISTANCE_TOOFAR_ARRR
//          Trace((stderr, "inflate.c too far\n"));
//          copy -= state.whave;
//          if (copy > state.length) { copy = state.length; }
//          if (copy > left) { copy = left; }
//          left -= copy;
//          state.length -= copy;
//          do {
//            output[put++] = 0;
//          } while (--copy);
//          if (state.length === 0) { state.mode = LEN; }
//          break;
//#endif
          }
          if (copy > state.wnext) {
            copy -= state.wnext;
            from = state.wsize - copy;
          }
          else {
            from = state.wnext - copy;
          }
          if (copy > state.length) { copy = state.length; }
          from_source = state.window;
        }
        else {                              /* copy from output */
          from_source = output;
          from = put - state.offset;
          copy = state.length;
        }
        if (copy > left) { copy = left; }
        left -= copy;
        state.length -= copy;
        do {
          output[put++] = from_source[from++];
        } while (--copy);
        if (state.length === 0) { state.mode = LEN; }
        break;
      case LIT:
        if (left === 0) { break inf_leave; }
        output[put++] = state.length;
        left--;
        state.mode = LEN;
        break;
      case CHECK:
        if (state.wrap) {
          //=== NEEDBITS(32);
          while (bits < 32) {
            if (have === 0) { break inf_leave; }
            have--;
            // Use '|' instead of '+' to make sure that result is signed
            hold |= input[next++] << bits;
            bits += 8;
          }
          //===//
          _out -= left;
          strm.total_out += _out;
          state.total += _out;
          if (_out) {
            strm.adler = state.check =
                /*UPDATE(state.check, put - _out, _out);*/
                (state.flags ? crc32_1(state.check, output, _out, put - _out) : adler32_1(state.check, output, _out, put - _out));

          }
          _out = left;
          // NB: crc32 stored as signed 32-bit int, zswap32 returns signed too
          if ((state.flags ? hold : zswap32(hold)) !== state.check) {
            strm.msg = 'incorrect data check';
            state.mode = BAD;
            break;
          }
          //=== INITBITS();
          hold = 0;
          bits = 0;
          //===//
          //Tracev((stderr, "inflate:   check matches trailer\n"));
        }
        state.mode = LENGTH;
        /* falls through */
      case LENGTH:
        if (state.wrap && state.flags) {
          //=== NEEDBITS(32);
          while (bits < 32) {
            if (have === 0) { break inf_leave; }
            have--;
            hold += input[next++] << bits;
            bits += 8;
          }
          //===//
          if (hold !== (state.total & 0xffffffff)) {
            strm.msg = 'incorrect length check';
            state.mode = BAD;
            break;
          }
          //=== INITBITS();
          hold = 0;
          bits = 0;
          //===//
          //Tracev((stderr, "inflate:   length matches trailer\n"));
        }
        state.mode = DONE;
        /* falls through */
      case DONE:
        ret = Z_STREAM_END$1;
        break inf_leave;
      case BAD:
        ret = Z_DATA_ERROR$1;
        break inf_leave;
      case MEM:
        return Z_MEM_ERROR$1;
      case SYNC:
        /* falls through */
      default:
        return Z_STREAM_ERROR$1;
    }
  }

  // inf_leave <- here is real place for "goto inf_leave", emulated via "break inf_leave"

  /*
     Return from inflate(), updating the total counts and the check value.
     If there was no progress during the inflate() call, return a buffer
     error.  Call updatewindow() to create and/or update the window state.
     Note: a memory error from inflate() is non-recoverable.
   */

  //--- RESTORE() ---
  strm.next_out = put;
  strm.avail_out = left;
  strm.next_in = next;
  strm.avail_in = have;
  state.hold = hold;
  state.bits = bits;
  //---

  if (state.wsize || (_out !== strm.avail_out && state.mode < BAD &&
                      (state.mode < CHECK || flush !== Z_FINISH$1))) {
    if (updatewindow(strm, strm.output, strm.next_out, _out - strm.avail_out)) ;
  }
  _in -= strm.avail_in;
  _out -= strm.avail_out;
  strm.total_in += _in;
  strm.total_out += _out;
  state.total += _out;
  if (state.wrap && _out) {
    strm.adler = state.check = /*UPDATE(state.check, strm.next_out - _out, _out);*/
      (state.flags ? crc32_1(state.check, output, _out, strm.next_out - _out) : adler32_1(state.check, output, _out, strm.next_out - _out));
  }
  strm.data_type = state.bits + (state.last ? 64 : 0) +
                    (state.mode === TYPE ? 128 : 0) +
                    (state.mode === LEN_ || state.mode === COPY_ ? 256 : 0);
  if (((_in === 0 && _out === 0) || flush === Z_FINISH$1) && ret === Z_OK$1) {
    ret = Z_BUF_ERROR;
  }
  return ret;
};


const inflateEnd = (strm) => {

  if (!strm || !strm.state /*|| strm->zfree == (free_func)0*/) {
    return Z_STREAM_ERROR$1;
  }

  let state = strm.state;
  if (state.window) {
    state.window = null;
  }
  strm.state = null;
  return Z_OK$1;
};


const inflateGetHeader = (strm, head) => {

  /* check state */
  if (!strm || !strm.state) { return Z_STREAM_ERROR$1; }
  const state = strm.state;
  if ((state.wrap & 2) === 0) { return Z_STREAM_ERROR$1; }

  /* save header structure */
  state.head = head;
  head.done = false;
  return Z_OK$1;
};


const inflateSetDictionary = (strm, dictionary) => {
  const dictLength = dictionary.length;

  let state;
  let dictid;
  let ret;

  /* check state */
  if (!strm /* == Z_NULL */ || !strm.state /* == Z_NULL */) { return Z_STREAM_ERROR$1; }
  state = strm.state;

  if (state.wrap !== 0 && state.mode !== DICT) {
    return Z_STREAM_ERROR$1;
  }

  /* check for correct dictionary identifier */
  if (state.mode === DICT) {
    dictid = 1; /* adler32(0, null, 0)*/
    /* dictid = adler32(dictid, dictionary, dictLength); */
    dictid = adler32_1(dictid, dictionary, dictLength, 0);
    if (dictid !== state.check) {
      return Z_DATA_ERROR$1;
    }
  }
  /* copy dictionary to window using updatewindow(), which will amend the
   existing dictionary if appropriate */
  ret = updatewindow(strm, dictionary, dictLength, dictLength);
  if (ret) {
    state.mode = MEM;
    return Z_MEM_ERROR$1;
  }
  state.havedict = 1;
  // Tracev((stderr, "inflate:   dictionary set\n"));
  return Z_OK$1;
};


var inflateReset_1 = inflateReset;
var inflateReset2_1 = inflateReset2;
var inflateResetKeep_1 = inflateResetKeep;
var inflateInit_1 = inflateInit;
var inflateInit2_1 = inflateInit2;
var inflate_2$1 = inflate$2;
var inflateEnd_1 = inflateEnd;
var inflateGetHeader_1 = inflateGetHeader;
var inflateSetDictionary_1 = inflateSetDictionary;
var inflateInfo = 'pako inflate (from Nodeca project)';

/* Not implemented
module.exports.inflateCopy = inflateCopy;
module.exports.inflateGetDictionary = inflateGetDictionary;
module.exports.inflateMark = inflateMark;
module.exports.inflatePrime = inflatePrime;
module.exports.inflateSync = inflateSync;
module.exports.inflateSyncPoint = inflateSyncPoint;
module.exports.inflateUndermine = inflateUndermine;
*/

var inflate_1$2 = {
	inflateReset: inflateReset_1,
	inflateReset2: inflateReset2_1,
	inflateResetKeep: inflateResetKeep_1,
	inflateInit: inflateInit_1,
	inflateInit2: inflateInit2_1,
	inflate: inflate_2$1,
	inflateEnd: inflateEnd_1,
	inflateGetHeader: inflateGetHeader_1,
	inflateSetDictionary: inflateSetDictionary_1,
	inflateInfo: inflateInfo
};

// (C) 1995-2013 Jean-loup Gailly and Mark Adler
// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin
//
// This software is provided 'as-is', without any express or implied
// warranty. In no event will the authors be held liable for any damages
// arising from the use of this software.
//
// Permission is granted to anyone to use this software for any purpose,
// including commercial applications, and to alter it and redistribute it
// freely, subject to the following restrictions:
//
// 1. The origin of this software must not be misrepresented; you must not
//   claim that you wrote the original software. If you use this software
//   in a product, an acknowledgment in the product documentation would be
//   appreciated but is not required.
// 2. Altered source versions must be plainly marked as such, and must not be
//   misrepresented as being the original software.
// 3. This notice may not be removed or altered from any source distribution.

function GZheader() {
  /* true if compressed data believed to be text */
  this.text       = 0;
  /* modification time */
  this.time       = 0;
  /* extra flags (not used when writing a gzip file) */
  this.xflags     = 0;
  /* operating system */
  this.os         = 0;
  /* pointer to extra field or Z_NULL if none */
  this.extra      = null;
  /* extra field length (valid if extra != Z_NULL) */
  this.extra_len  = 0; // Actually, we don't need it in JS,
                       // but leave for few code modifications

  //
  // Setup limits is not necessary because in js we should not preallocate memory
  // for inflate use constant limit in 65536 bytes
  //

  /* space at extra (only when reading header) */
  // this.extra_max  = 0;
  /* pointer to zero-terminated file name or Z_NULL */
  this.name       = '';
  /* space at name (only when reading header) */
  // this.name_max   = 0;
  /* pointer to zero-terminated comment or Z_NULL */
  this.comment    = '';
  /* space at comment (only when reading header) */
  // this.comm_max   = 0;
  /* true if there was or will be a header crc */
  this.hcrc       = 0;
  /* true when done reading gzip header (not used when writing a gzip file) */
  this.done       = false;
}

var gzheader = GZheader;

const toString = Object.prototype.toString;

/* Public constants ==========================================================*/
/* ===========================================================================*/

const {
  Z_NO_FLUSH, Z_FINISH,
  Z_OK, Z_STREAM_END, Z_NEED_DICT, Z_STREAM_ERROR, Z_DATA_ERROR, Z_MEM_ERROR
} = constants$2;

/* ===========================================================================*/


/**
 * class Inflate
 *
 * Generic JS-style wrapper for zlib calls. If you don't need
 * streaming behaviour - use more simple functions: [[inflate]]
 * and [[inflateRaw]].
 **/

/* internal
 * inflate.chunks -> Array
 *
 * Chunks of output data, if [[Inflate#onData]] not overridden.
 **/

/**
 * Inflate.result -> Uint8Array|String
 *
 * Uncompressed result, generated by default [[Inflate#onData]]
 * and [[Inflate#onEnd]] handlers. Filled after you push last chunk
 * (call [[Inflate#push]] with `Z_FINISH` / `true` param).
 **/

/**
 * Inflate.err -> Number
 *
 * Error code after inflate finished. 0 (Z_OK) on success.
 * Should be checked if broken data possible.
 **/

/**
 * Inflate.msg -> String
 *
 * Error message, if [[Inflate.err]] != 0
 **/


/**
 * new Inflate(options)
 * - options (Object): zlib inflate options.
 *
 * Creates new inflator instance with specified params. Throws exception
 * on bad params. Supported options:
 *
 * - `windowBits`
 * - `dictionary`
 *
 * [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced)
 * for more information on these.
 *
 * Additional options, for internal needs:
 *
 * - `chunkSize` - size of generated data chunks (16K by default)
 * - `raw` (Boolean) - do raw inflate
 * - `to` (String) - if equal to 'string', then result will be converted
 *   from utf8 to utf16 (javascript) string. When string output requested,
 *   chunk length can differ from `chunkSize`, depending on content.
 *
 * By default, when no options set, autodetect deflate/gzip data format via
 * wrapper header.
 *
 * ##### Example:
 *
 * ```javascript
 * const pako = require('pako')
 * const chunk1 = new Uint8Array([1,2,3,4,5,6,7,8,9])
 * const chunk2 = new Uint8Array([10,11,12,13,14,15,16,17,18,19]);
 *
 * const inflate = new pako.Inflate({ level: 3});
 *
 * inflate.push(chunk1, false);
 * inflate.push(chunk2, true);  // true -> last chunk
 *
 * if (inflate.err) { throw new Error(inflate.err); }
 *
 * console.log(inflate.result);
 * ```
 **/
function Inflate$1(options) {
  this.options = common.assign({
    chunkSize: 1024 * 64,
    windowBits: 15,
    to: ''
  }, options || {});

  const opt = this.options;

  // Force window size for `raw` data, if not set directly,
  // because we have no header for autodetect.
  if (opt.raw && (opt.windowBits >= 0) && (opt.windowBits < 16)) {
    opt.windowBits = -opt.windowBits;
    if (opt.windowBits === 0) { opt.windowBits = -15; }
  }

  // If `windowBits` not defined (and mode not raw) - set autodetect flag for gzip/deflate
  if ((opt.windowBits >= 0) && (opt.windowBits < 16) &&
      !(options && options.windowBits)) {
    opt.windowBits += 32;
  }

  // Gzip header has no info about windows size, we can do autodetect only
  // for deflate. So, if window size not set, force it to max when gzip possible
  if ((opt.windowBits > 15) && (opt.windowBits < 48)) {
    // bit 3 (16) -> gzipped data
    // bit 4 (32) -> autodetect gzip/deflate
    if ((opt.windowBits & 15) === 0) {
      opt.windowBits |= 15;
    }
  }

  this.err    = 0;      // error code, if happens (0 = Z_OK)
  this.msg    = '';     // error message
  this.ended  = false;  // used to avoid multiple onEnd() calls
  this.chunks = [];     // chunks of compressed data

  this.strm   = new zstream();
  this.strm.avail_out = 0;

  let status  = inflate_1$2.inflateInit2(
    this.strm,
    opt.windowBits
  );

  if (status !== Z_OK) {
    throw new Error(messages[status]);
  }

  this.header = new gzheader();

  inflate_1$2.inflateGetHeader(this.strm, this.header);

  // Setup dictionary
  if (opt.dictionary) {
    // Convert data if needed
    if (typeof opt.dictionary === 'string') {
      opt.dictionary = strings.string2buf(opt.dictionary);
    } else if (toString.call(opt.dictionary) === '[object ArrayBuffer]') {
      opt.dictionary = new Uint8Array(opt.dictionary);
    }
    if (opt.raw) { //In raw mode we need to set the dictionary early
      status = inflate_1$2.inflateSetDictionary(this.strm, opt.dictionary);
      if (status !== Z_OK) {
        throw new Error(messages[status]);
      }
    }
  }
}

/**
 * Inflate#push(data[, flush_mode]) -> Boolean
 * - data (Uint8Array|ArrayBuffer): input data
 * - flush_mode (Number|Boolean): 0..6 for corresponding Z_NO_FLUSH..Z_TREE
 *   flush modes. See constants. Skipped or `false` means Z_NO_FLUSH,
 *   `true` means Z_FINISH.
 *
 * Sends input data to inflate pipe, generating [[Inflate#onData]] calls with
 * new output chunks. Returns `true` on success. If end of stream detected,
 * [[Inflate#onEnd]] will be called.
 *
 * `flush_mode` is not needed for normal operation, because end of stream
 * detected automatically. You may try to use it for advanced things, but
 * this functionality was not tested.
 *
 * On fail call [[Inflate#onEnd]] with error code and return false.
 *
 * ##### Example
 *
 * ```javascript
 * push(chunk, false); // push one of data chunks
 * ...
 * push(chunk, true);  // push last chunk
 * ```
 **/
Inflate$1.prototype.push = function (data, flush_mode) {
  const strm = this.strm;
  const chunkSize = this.options.chunkSize;
  const dictionary = this.options.dictionary;
  let status, _flush_mode, last_avail_out;

  if (this.ended) return false;

  if (flush_mode === ~~flush_mode) _flush_mode = flush_mode;
  else _flush_mode = flush_mode === true ? Z_FINISH : Z_NO_FLUSH;

  // Convert data if needed
  if (toString.call(data) === '[object ArrayBuffer]') {
    strm.input = new Uint8Array(data);
  } else {
    strm.input = data;
  }

  strm.next_in = 0;
  strm.avail_in = strm.input.length;

  for (;;) {
    if (strm.avail_out === 0) {
      strm.output = new Uint8Array(chunkSize);
      strm.next_out = 0;
      strm.avail_out = chunkSize;
    }

    status = inflate_1$2.inflate(strm, _flush_mode);

    if (status === Z_NEED_DICT && dictionary) {
      status = inflate_1$2.inflateSetDictionary(strm, dictionary);

      if (status === Z_OK) {
        status = inflate_1$2.inflate(strm, _flush_mode);
      } else if (status === Z_DATA_ERROR) {
        // Replace code with more verbose
        status = Z_NEED_DICT;
      }
    }

    // Skip snyc markers if more data follows and not raw mode
    while (strm.avail_in > 0 &&
           status === Z_STREAM_END &&
           strm.state.wrap > 0 &&
           data[strm.next_in] !== 0)
    {
      inflate_1$2.inflateReset(strm);
      status = inflate_1$2.inflate(strm, _flush_mode);
    }

    switch (status) {
      case Z_STREAM_ERROR:
      case Z_DATA_ERROR:
      case Z_NEED_DICT:
      case Z_MEM_ERROR:
        this.onEnd(status);
        this.ended = true;
        return false;
    }

    // Remember real `avail_out` value, because we may patch out buffer content
    // to align utf8 strings boundaries.
    last_avail_out = strm.avail_out;

    if (strm.next_out) {
      if (strm.avail_out === 0 || status === Z_STREAM_END) {

        if (this.options.to === 'string') {

          let next_out_utf8 = strings.utf8border(strm.output, strm.next_out);

          let tail = strm.next_out - next_out_utf8;
          let utf8str = strings.buf2string(strm.output, next_out_utf8);

          // move tail & realign counters
          strm.next_out = tail;
          strm.avail_out = chunkSize - tail;
          if (tail) strm.output.set(strm.output.subarray(next_out_utf8, next_out_utf8 + tail), 0);

          this.onData(utf8str);

        } else {
          this.onData(strm.output.length === strm.next_out ? strm.output : strm.output.subarray(0, strm.next_out));
        }
      }
    }

    // Must repeat iteration if out buffer is full
    if (status === Z_OK && last_avail_out === 0) continue;

    // Finalize if end of stream reached.
    if (status === Z_STREAM_END) {
      status = inflate_1$2.inflateEnd(this.strm);
      this.onEnd(status);
      this.ended = true;
      return true;
    }

    if (strm.avail_in === 0) break;
  }

  return true;
};


/**
 * Inflate#onData(chunk) -> Void
 * - chunk (Uint8Array|String): output data. When string output requested,
 *   each chunk will be string.
 *
 * By default, stores data blocks in `chunks[]` property and glue
 * those in `onEnd`. Override this handler, if you need another behaviour.
 **/
Inflate$1.prototype.onData = function (chunk) {
  this.chunks.push(chunk);
};


/**
 * Inflate#onEnd(status) -> Void
 * - status (Number): inflate status. 0 (Z_OK) on success,
 *   other if not.
 *
 * Called either after you tell inflate that the input stream is
 * complete (Z_FINISH). By default - join collected chunks,
 * free memory and fill `results` / `err` properties.
 **/
Inflate$1.prototype.onEnd = function (status) {
  // On success - join
  if (status === Z_OK) {
    if (this.options.to === 'string') {
      this.result = this.chunks.join('');
    } else {
      this.result = common.flattenChunks(this.chunks);
    }
  }
  this.chunks = [];
  this.err = status;
  this.msg = this.strm.msg;
};


/**
 * inflate(data[, options]) -> Uint8Array|String
 * - data (Uint8Array): input data to decompress.
 * - options (Object): zlib inflate options.
 *
 * Decompress `data` with inflate/ungzip and `options`. Autodetect
 * format via wrapper header by default. That's why we don't provide
 * separate `ungzip` method.
 *
 * Supported options are:
 *
 * - windowBits
 *
 * [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced)
 * for more information.
 *
 * Sugar (options):
 *
 * - `raw` (Boolean) - say that we work with raw stream, if you don't wish to specify
 *   negative windowBits implicitly.
 * - `to` (String) - if equal to 'string', then result will be converted
 *   from utf8 to utf16 (javascript) string. When string output requested,
 *   chunk length can differ from `chunkSize`, depending on content.
 *
 *
 * ##### Example:
 *
 * ```javascript
 * const pako = require('pako');
 * const input = pako.deflate(new Uint8Array([1,2,3,4,5,6,7,8,9]));
 * let output;
 *
 * try {
 *   output = pako.inflate(input);
 * } catch (err) {
 *   console.log(err);
 * }
 * ```
 **/
function inflate$1(input, options) {
  const inflator = new Inflate$1(options);

  inflator.push(input);

  // That will never happens, if you don't cheat with options :)
  if (inflator.err) throw inflator.msg || messages[inflator.err];

  return inflator.result;
}


/**
 * inflateRaw(data[, options]) -> Uint8Array|String
 * - data (Uint8Array): input data to decompress.
 * - options (Object): zlib inflate options.
 *
 * The same as [[inflate]], but creates raw data, without wrapper
 * (header and adler32 crc).
 **/
function inflateRaw$1(input, options) {
  options = options || {};
  options.raw = true;
  return inflate$1(input, options);
}


/**
 * ungzip(data[, options]) -> Uint8Array|String
 * - data (Uint8Array): input data to decompress.
 * - options (Object): zlib inflate options.
 *
 * Just shortcut to [[inflate]], because it autodetects format
 * by header.content. Done for convenience.
 **/


var Inflate_1$1 = Inflate$1;
var inflate_2 = inflate$1;
var inflateRaw_1$1 = inflateRaw$1;
var ungzip$1 = inflate$1;
var constants = constants$2;

var inflate_1$1 = {
	Inflate: Inflate_1$1,
	inflate: inflate_2,
	inflateRaw: inflateRaw_1$1,
	ungzip: ungzip$1,
	constants: constants
};

const { Deflate, deflate, deflateRaw, gzip } = deflate_1$1;

const { Inflate, inflate, inflateRaw, ungzip } = inflate_1$1;



var Deflate_1 = Deflate;
var deflate_1 = deflate;
var deflateRaw_1 = deflateRaw;
var gzip_1 = gzip;
var Inflate_1 = Inflate;
var inflate_1 = inflate;
var inflateRaw_1 = inflateRaw;
var ungzip_1 = ungzip;
var constants_1 = constants$2;

var pako = {
	Deflate: Deflate_1,
	deflate: deflate_1,
	deflateRaw: deflateRaw_1,
	gzip: gzip_1,
	Inflate: Inflate_1,
	inflate: inflate_1,
	inflateRaw: inflateRaw_1,
	ungzip: ungzip_1,
	constants: constants_1
};




/***/ }),

/***/ "YC/o":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__("Zrlr");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_createClass__ = __webpack_require__("wxAW");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_createClass___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_createClass__);


/* harmony default export */ __webpack_exports__["a"] = (new (function () {
    function VueLogger() {
        __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, VueLogger);

        this.debug = false;
        this.prefix = '%cVue-Log: ';
    }

    __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_createClass___default()(VueLogger, [{
        key: 'info',
        value: function info(text) {
            var data = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';

            if (this.debug) window.console.info(this.prefix + ('%c' + text), 'color: blue; font-weight: 600', 'color: #333333', data);
        }
    }, {
        key: 'error',
        value: function error() {
            var _window$console;

            if (this.debug) (_window$console = window.console).error.apply(_window$console, [this.prefix].concat(Array.prototype.slice.call(arguments)));
        }
    }, {
        key: 'warn',
        value: function warn() {
            var _window$console2;

            if (this.debug) (_window$console2 = window.console).warn.apply(_window$console2, [this.prefix].concat(Array.prototype.slice.call(arguments)));
        }
    }, {
        key: 'event',
        value: function event(text) {
            var data = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';

            if (this.debug) window.console.info(this.prefix + ('%c' + text), 'color: blue; font-weight: 600', 'color: #333333', data);
        }
    }]);

    return VueLogger;
}())());

/***/ }),

/***/ "YaEn":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/vue-router/dist/vue-router.esm.js
var vue_router_esm = __webpack_require__("/ocq");

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/toConsumableArray.js
var toConsumableArray = __webpack_require__("Gu7T");
var toConsumableArray_default = /*#__PURE__*/__webpack_require__.n(toConsumableArray);

// EXTERNAL MODULE: ./node_modules/babel-runtime/core-js/map.js
var core_js_map = __webpack_require__("ifoU");
var map_default = /*#__PURE__*/__webpack_require__.n(core_js_map);

// EXTERNAL MODULE: ./node_modules/babel-runtime/core-js/json/stringify.js
var stringify = __webpack_require__("mvHQ");
var stringify_default = /*#__PURE__*/__webpack_require__.n(stringify);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/views/doorMagnetism/common/deviceLi1.vue
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//

/* harmony default export */ var deviceLi1 = ({
    name: "deviceLiT",
    props: ['data'],
    methods: {}
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-44ebb980","hasScoped":true,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/views/doorMagnetism/common/deviceLi1.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"lock-item contred"},[_c('div',{staticClass:"lock-content"},[_c('img',{staticClass:"avator",attrs:{"src":__webpack_require__("0UaI"),"alt":""}}),_vm._v(" "),_c('div',{staticClass:"lock"},[(_vm.data.name)?_c('div',{staticClass:"lock-name",attrs:{"title":_vm.data.name}},[_vm._v(_vm._s(_vm.data.name))]):_c('div',{staticClass:"lock-name",attrs:{"title":_vm.data.deviceNum}},[_vm._v(_vm._s(_vm.data.deviceNum))]),_vm._v(" "),_c('div',{staticClass:"lock-line"}),_vm._v(" "),_vm._m(0),_vm._v(" "),_c('div',{staticClass:"lock-row"},[_c('div',{staticClass:"row-title"},[_vm._v("开门时间：")]),_vm._v(" "),_c('div',{staticClass:"row-ime"},[_vm._v(_vm._s(_vm.data.createAt))])])])])])}
var staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"lock-row"},[_c('div',{staticClass:"row-title"},[_vm._v("报警类型：")]),_vm._v(" "),_c('div',{staticClass:"row-ime red"},[_vm._v("开门报警")])])}]
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var common_deviceLi1 = (esExports);
// CONCATENATED MODULE: ./src/views/doorMagnetism/common/deviceLi1.vue
function injectStyle (ssrContext) {
  __webpack_require__("Ficw")
}
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = injectStyle
/* scopeId */
var __vue_scopeId__ = "data-v-44ebb980"
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  deviceLi1,
  common_deviceLi1,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var doorMagnetism_common_deviceLi1 = (Component.exports);

// EXTERNAL MODULE: ./src/api/index.js + 5 modules
var api = __webpack_require__("gyMJ");

// EXTERNAL MODULE: ./node_modules/axios/index.js
var axios = __webpack_require__("mtWM");
var axios_default = /*#__PURE__*/__webpack_require__.n(axios);

// EXTERNAL MODULE: ./node_modules/moment/moment.js
var moment = __webpack_require__("PJh5");
var moment_default = /*#__PURE__*/__webpack_require__.n(moment);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/Header.vue



//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//





/* harmony default export */ var Header = ({
  inject: ['reload'],
  data: function data() {
    return {
      checked: false,
      fullscreen: false,
      name: "linxin",
      message: 1,
      isrouterview: true,
      language: "English",
      currentpath: "",
      tagsList: [],
      weather: "",
      time: "00:00",
      date: "2021年11月17日 星期三",
      city: "",
      timer: "",
      timeStatus: true,
      options: [],
      value: '',
      tenantId: '',
      userinfo: {
        type: '1'
      },
      collapse: false,
      unlinedeviceSum: 0,
      activeiconfont: true,
      tableData: [],
      audiosrc: __webpack_require__("8R8w"),
      pageSize: 10,
      vocieStatus: true,
      pageTotal: 0,
      currentPage: 1,
      drawer: false,
      prelist: [],
      settime2: null,
      hiddenslderstatus: true,
      visibleMessage: false
    };
  },

  components: {
    deviceLiT: doorMagnetism_common_deviceLi1
  },
  beforeCreate: function beforeCreate() {
    this.$store.commit('getselectoption');
  },
  activated: function activated() {
    var _this = this;
    if (this.tenantId == 400) {
      this.settime2 = setInterval(function () {
        _this.getalertDevice();
      }, 3000);
    }
  },
  beforeRouteLeave: function beforeRouteLeave(to, from, next) {
    clearInterval(this.settime2);
    next();
  },
  beforeDestroy: function beforeDestroy() {
    clearInterval(this.settime2);
  },

  watch: {
    $route: {
      // val是改变之后的路由，oldVal是改变之前的val
      handler: function handler(val, oldVal) {
        this.currentpath = val.meta.title;
      },
      // 深度观察监听
      deep: true
    }
  },
  created: function created() {
    this.$store.commit('settenantid');
    this.tagsList = this.$store.state.tagsList;
    this.currentpath = this.$route.meta.title;
    // var lan = JSON.parse(sessionStorage.getItem("lange"));
    var userinfo = JSON.parse(localStorage.getItem("info")) || '';
    var tenantId = 1200; // JSON.parse(localStorage.getItem("tenantId"))
    this.tenantId = tenantId;
    this.value = stringify_default()(tenantId);
    // if (lan) {
    //   this.language = "English";
    // } else {
    //   this.language = "中文";
    // }
    // this.getTime1();
    // this.city=returnCitySN['cname']
    // this.getTianQi()
    // if (userinfo) {
    //   if (userinfo.type == 0) {
    // httpGet('', this.$api.getConfig).then(res => {
    //   if (res.success) {
    //     this.options = res.data.list
    //     this.$store.commit('getselectoption',res.data.list)
    //   } else {
    //     this.$message.error("获取失败")
    //   }
    // })
    // this.$store.commit('getselectoption')
    //   }
    // }
    this.options = this.$store.state.selectoption;
    this.userinfo = userinfo;
  },

  computed: {
    username: function username() {
      var username = localStorage.getItem("ms_username");
      return username ? username : this.name;
    }
  },
  mounted: function mounted() {
    var _this2 = this;

    if (document.body.clientWidth < 1500) {
      this.collapseChage();
    }
    var Week = ["日", "一", "二", "三", "四", "五", "六"];
    this.timer = setInterval(function () {
      var myDate = new Date();
      var hours = myDate.getHours() > 9 ? myDate.getHours() : "0" + myDate.getHours();
      var minutes = myDate.getMinutes() > 9 ? myDate.getMinutes() : "0" + myDate.getMinutes();
      var year = myDate.getFullYear();
      var month = myDate.getMonth() + 1;
      var day = myDate.getDate();
      var xq = myDate.getDay();
      var datas = moment_default()().format("YYYY-MM-DD HH:mm:ss").split(" ")[1];
      // this.time = hours + ":" + minutes;
      _this2.time = datas;
      _this2.date = year + "年" + month + "月" + day + "日" + " 星期" + Week[xq];
    }, 1000);
    if (this.tenantId == 400) {
      var _this = this;
      // this.$refs.audio.play()
      this.getalertDevice();
      this.settime2 = setInterval(function () {
        _this.getalertDevice();
      }, 3000);
    }
  },


  methods: {
    validate: function validate(arr1, arr2) {
      if (!arr1 instanceof Array || !arr2 instanceof Array) {
        return true;
      }
      if (arr1.length != arr2.length) {
        return false;
      }
      var arr1Str = stringify_default()(arr1);
      for (var i = 0; i < arr2.length; i++) {
        if (arr1Str.indexOf(stringify_default()(arr2[i])) == -1) {
          return false;
        }
      }
      return true;
    },
    unique: function unique(arr, u_key) {
      var map = new map_default.a();
      arr.forEach(function (item, index) {
        if (!map.has(item[u_key])) {
          map.set(item[u_key], item);
        }
      });
      return [].concat(toConsumableArray_default()(map.values()));
    },
    poplist: function poplist(list) {
      var _this3 = this;

      var list1 = this.unique(list, 'imei');
      var tt = this.validate(this.prelist, list1);

      if (tt) {} else {
        this.prelist = list1;
        if (list1.length == 0) {
          this.$refs.audio.pause();
        } else {
          if (!this.vocieStatus) {
            this.$refs.audio.play();
            this.vocieStatus = false;
            setTimeout(function () {
              _this3.$refs.audio.pause();
            }, 10000);
          }
        }
        list1.map(function (li) {
          setTimeout(function () {
            _this3.$notify({
              title: li.name,
              offset: 200,
              duration: 2000,
              message: li.createAt + ' 开门警报',
              type: 'warning'
            });
          }, 3000);
        });
      }
    },
    showbar: function showbar() {
      this.drawer = true;
    },
    voicfun: function voicfun() {
      this.$refs.audio.pause();
      this.vocieStatus = true;
    },
    voicfun1: function voicfun1() {
      this.$refs.audio.play();
      this.vocieStatus = false;
    },
    selectTenantId: function selectTenantId(e) {
      this.tenantId = e;
      localStorage.setItem('tenantId', this.tenantId);
      this.$tenantId = e;
      // localStorage.removeItem("statisticsDate")
      if (e == 400) {
        this.$store.commit("clearTags");
        this.$router.push(this.$route.path);
      } else {
        this.$store.commit("clearTags");
        this.$router.push(this.$route.path);
      }
      this.reload();
    },
    getTianQi: function getTianQi() {
      var data = {
        city: "深圳市"
      };
      Object(api["c" /* httgetaxio */])(data, "http://wthrcdn.etouch.cn/weather_mini").then(function (res) {
        console.log(res);
      });
    },
    getTime1: function getTime1() {
      var Week = ["日", "一", "二", "三", "四", "五", "六"];
      var myDate = new Date();
      var hours = myDate.getHours() > 9 ? myDate.getHours() : "0" + myDate.getHours();
      var minutes = myDate.getMinutes() > 9 ? myDate.getMinutes() : "0" + myDate.getMinutes();
      var year = myDate.getFullYear();
      var month = myDate.getMonth();
      var day = myDate.getDate();
      var xq = myDate.getDay();
      this.time = hours + ":" + minutes;
      this.date = year + "年" + month + "月" + day + "日" + " 星期" + Week[xq];
      this.getTime();
    },

    // 获取当前时间
    getTime: function getTime() {
      var Week = ["日", "一", "二", "三", "四", "五", "六"];
      this.timeStatus = false;
      this.timer = setInterval(function () {
        var myDate = new Date();
        var hours = myDate.getHours() > 9 ? myDate.getHours() : "0" + myDate.getHours();
        var minutes = myDate.getMinutes() > 9 ? myDate.getMinutes() : "0" + myDate.getMinutes();
        var year = myDate.getFullYear();
        var month = myDate.getMonth();
        var day = myDate.getDate();
        var xq = myDate.getDay();
        this.time = hours + ":" + minutes;
        this.date = year + "年" + month + "月" + day + "日" + " 星期" + Week[xq];
        this.timeStatus = true;
      }, 1000);
    },
    selectlang: function selectlang() {
      this.$store.commit("selectlanguage", !this.$store.state.lange);
    },
    selectlang1: function selectlang1() {
      var data = {
        client_id: "iot-client",
        client_secret: "iot-client",
        grant_type: "refresh_token",
        scope: "all",
        refresh_token: JSON.parse(localStorage.getItem("token")).refresh_token
      };
      Object(api["d" /* httpGet */])(data, "/oauth/token").then(function (res) {
        if (res.access_token) {
          localStorage.setItem("token", stringify_default()(res));
        }
      });
    },
    getalertDevice: function getalertDevice() {
      var _this4 = this;

      // if (this.currentPage > this.carouselPage) {
      // 	this.currentPage = 1
      // }
      var data = {
        pageNum: 1,
        pageSize: 1,
        orderType: 'desc',
        orderBy: "createAt",
        q: stringify_default()({
          lockStatus: 1
        })
      };
      Object(api["i" /* httpPostno */])(data, this.$api.getList).then(function (res) {
        if (res.success) {
          _this4.$store.commit('updatedata', res.data.total);
        }
      });
      var data = {
        pageNum: this.currentPage,
        pageSize: this.pageSize,
        orderType: 'desc',
        orderBy: "createAt",
        q: stringify_default()({
          operateCode: 1,
          startTime: moment_default()().subtract('days', 0).format('YYYY-MM-DD 00:00:00'),
          endTime: moment_default()().format('YYYY-MM-DD HH:mm:ss')
        })
      };
      Object(api["i" /* httpPostno */])(data, this.$api.getReportList).then(function (res) {
        if (res.success) {
          // if (res.data.total > 0) {

          // } else {
          // 	this.$refs.audio.pause()
          // 	this.vocieStatus = true
          // }
          res.data.list.map(function (li) {
            li.createAt = moment_default()(li.createAt).format('YYYY/MM/DD HH:mm:ss');
          });
          var time = new Date();
          var list = [];
          res.data.list.map(function (li) {
            var time = moment_default()(time).valueOf();
            var time1 = moment_default()(li.createAt).valueOf();
            li['sharkFlag'] = false;
            if (time - time1 < 6000) {
              list.push(li);
              li['sharkFlag'] = true;
            }
          });
          _this4.poplist(list);
          // this.alarmList = res.data.list
          _this4.unlinedeviceSum = res.data.total;
          _this4.tableData = res.data.list;
          _this4.pageTotal = res.data.total;
        } else {
          _this4.$message.error(res.msg);
        }
      });
    },
    handleClose: function handleClose(done) {
      this.drawer = false;
      this.visibleMessage = false;
    },
    handleSizeChange: function handleSizeChange(val) {
      this.pageSize = val;
      this.getalertDevice();
      console.log("\u6BCF\u9875 " + val + " \u6761");
    },
    handleCurrentChange: function handleCurrentChange(val) {
      this.currentPage = val;
      this.getalertDevice();
      console.log("\u5F53\u524D\u9875: " + val);
    },

    // 用户名下拉菜单选择事件
    handleCommand: function handleCommand(command) {
      if (command == "loginout") {
        // localStorage.removeItem("ms_username");
        // this.$router.push("/login");
        this.loginoutfun();
      }
    },
    fullScreen: function fullScreen() {
      var full = document.fullscreenElement;
      //切换为全屏模式
      if (!full) {
        //文档根节点的方法requestFullscreen,实现全屏模式
        document.documentElement.requestFullscreen();
      } else {
        //变为不是全屏模式->退出全屏模式
        document.exitFullscreen();
      }
    },
    loginoutfun: function loginoutfun() {
      var data = {};
      Object(api["d" /* httpGet */])({}, '/oauth/revoke').then(function (res4) {});
      this.$router.push("/login");
    },

    // 侧边栏折叠
    collapseChage: function collapseChage() {
      this.$store.commit("hadndleCollapse", !this.collapse);
      if (this.hiddenslderstatus) {
        document.documentElement.style.setProperty("--sldebarLeft", "0");
        this.hiddenslderstatus = false;
      } else {
        document.documentElement.style.setProperty("--sldebarLeft", "180px");
        this.hiddenslderstatus = true;
      }
    }
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-6194b4aa","hasScoped":true,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/Header.vue
var Header_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:"header",class:_vm.collapse ? 'header1' : ''},[_c('div',{staticClass:"collapse-btn logotitle",on:{"click":_vm.collapseChage}},[_c('i',{staticClass:"el-icon-s-fold s-fold",class:_vm.hiddenslderstatus ? '' : 'foldfalse'})]),_vm._v(" "),_c('div',{staticClass:"logo"}),_vm._v(" "),(_vm.isrouterview)?_c('div',{staticClass:"header-right"},[_c('div',{staticClass:"header-user-con"},[(_vm.tenantId == 400)?_c('div',{staticClass:"btn-info voiceimg"},[(!_vm.vocieStatus)?_c('img',{attrs:{"src":__webpack_require__("xYoE"),"alt":""},on:{"click":_vm.voicfun}}):_c('img',{attrs:{"src":__webpack_require__("nb0U"),"alt":""},on:{"click":_vm.voicfun1}})]):_vm._e(),_vm._v(" "),(_vm.tenantId == 400)?_c('div',{staticClass:"btn-info"},[_c('el-tooltip',{attrs:{"placement":"bottom"}},[_c('span',{attrs:{"slot":"content"},slot:"content"},[_vm._v("正在开门报警")]),_vm._v(" "),_c('i',{staticClass:"el-icon-message-solid",on:{"click":_vm.showbar}})]),_vm._v(" "),(_vm.message)?_c('span',{staticClass:"btn-info-tip"}):_vm._e()],1):_vm._e(),_vm._v(" "),_c('div',{staticClass:"ddatetime"},[_c('div',{staticClass:"rightLine rightspan"},[_c('span',{staticClass:"iconfont httpicon-shijian"}),_vm._v(" "),_c('span',[_vm._v(_vm._s(_vm.time))])]),_vm._v(" "),_c('div',{staticClass:"rightspan"},[_c('span',[_vm._v(_vm._s(_vm.date))])])]),_vm._v(" "),_c('el-badge',{staticClass:"item hand-type",attrs:{"is-dot":""}},[_c('el-popover',{attrs:{"placement":"bottom","width":"200","trigger":"click"}},[_c('div',{staticClass:"hand-type",on:{"click":function($event){_vm.visibleMessage = true}}},[_c('p',{staticClass:"font-size-18"},[_vm._v("更新系统信息")])]),_vm._v(" "),_c('i',{staticClass:"el-icon-bell font-size-20 color-59adf7",attrs:{"slot":"reference"},slot:"reference"})]),_vm._v(" "),_c('el-dialog',{attrs:{"title":"版本更新说明","visible":_vm.visibleMessage,"width":"50%","before-close":_vm.handleClose,"custom-class":"py-1"},on:{"update:visible":function($event){_vm.visibleMessage=$event}}},[_c('div',{staticClass:"box-sizing-border-box height-400px overflow-y-auto border-box-1"},[_c('div',{staticClass:"ma-2"},[_c('div',{staticClass:"pa-2 line-height-30 bg-f6f6f6 border-radius-1 mb-2"},[_c('p',{staticClass:"font-size-20 color-666",staticStyle:{"margin-top":"10px"}},[_vm._v("20230705版本更新")]),_vm._v(" "),_c('p',{staticClass:"font-size-14 color-666",staticStyle:{"margin-top":"10px"}},[_vm._v("1、添加租约模板；")]),_vm._v(" "),_c('p',{staticClass:"font-size-14 color-666",staticStyle:{"margin-top":"10px"}},[_vm._v("2、添加房源筛选；")])])])]),_vm._v(" "),_c('span',{staticClass:"dialog-footer text-right",attrs:{"slot":"footer"},slot:"footer"},[_c('el-checkbox',{model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:"checked"}},[_vm._v("不再提醒")])],1)])],1),_vm._v(" "),_c('div',{staticClass:"quanping",on:{"click":_vm.fullScreen}},[_c('i',{staticClass:"gongyu gy-quanping1"})]),_vm._v(" "),_vm._m(0),_vm._v(" "),_c('el-dropdown',{staticClass:"user-name",attrs:{"trigger":"click"},on:{"command":_vm.handleCommand}},[_c('span',{staticClass:"el-dropdown-link"},[_vm._v("\n            "+_vm._s(_vm.username)),_c('i',{staticClass:"el-icon-arrow-down arrow-down"})]),_vm._v(" "),_c('el-dropdown-menu',{attrs:{"slot":"dropdown"},slot:"dropdown"},[_c('el-dropdown-item',{attrs:{"command":"loginout"}},[_vm._v("退出登录")])],1)],1)],1)]):_vm._e()]),_vm._v(" "),_c('audio',{ref:"audio",staticClass:"voice",attrs:{"muted":"","src":_vm.audiosrc,"controls":"controls","autoplay":false,"loop":""}}),_vm._v(" "),_c('el-drawer',{attrs:{"title":"","visible":_vm.drawer,"custom-class":"drawlist","size":"100%","before-close":_vm.handleClose,"show-close":false},on:{"update:visible":function($event){_vm.drawer=$event}}},[_c('el-row',{staticClass:"marginTop"},[_c('div',{staticClass:"tablecell"},[(!_vm.activeiconfont)?_c('el-table',{ref:"multipleTable",staticStyle:{"width":"100%"},attrs:{"data":_vm.tableData,"border":true,"tooltip-effect":"dark","header-cell-style":_vm.rowClass,"cell-style":{ fontSize: '12px' },"stripe":"","height":"590"}},[_c('el-table-column',{attrs:{"prop":"name","label":"房间名称"}}),_vm._v(" "),_c('el-table-column',{attrs:{"prop":"deviceNum","label":"设备名称"}}),_vm._v(" "),_c('el-table-column',{attrs:{"prop":"createAt","label":"开门时间"}})],1):_c('div',{staticClass:"roomcontent"},_vm._l((_vm.tableData),function(item,index){return _c('div',{key:index,staticClass:"roomconli roomconlinomar"},[_c('deviceLiT',{class:item.sharkFlag ? 'my-shark' : '',attrs:{"data":item}})],1)}),0)],1),_vm._v(" "),_c('div',{staticClass:"page pagebtn"},[_c('el-button',{staticClass:"btn",attrs:{"type":"primary","size":"mini"},on:{"click":_vm.handleClose}},[_vm._v("关闭")]),_vm._v(" "),_c('el-pagination',{attrs:{"popper-class":"headselect","current-page":_vm.currentPage,"page-sizes":[10, 20, 30, 50, 100, 200],"page-size":_vm.pageSize,"layout":"total,sizes, prev, pager, next, jumper","total":_vm.pageTotal},on:{"size-change":_vm.handleSizeChange,"current-change":_vm.handleCurrentChange}})],1)])],1)],1)}
var Header_staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"user-avator"},[_c('img',{attrs:{"src":__webpack_require__("Tp5f")}})])}]
var Header_esExports = { render: Header_render, staticRenderFns: Header_staticRenderFns }
/* harmony default export */ var components_Header = (Header_esExports);
// CONCATENATED MODULE: ./src/components/Header.vue
function Header_injectStyle (ssrContext) {
  __webpack_require__("V7yy")
}
var Header_normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var Header___vue_template_functional__ = false
/* styles */
var Header___vue_styles__ = Header_injectStyle
/* scopeId */
var Header___vue_scopeId__ = "data-v-6194b4aa"
/* moduleIdentifier (server only) */
var Header___vue_module_identifier__ = null
var Header_Component = Header_normalizeComponent(
  Header,
  components_Header,
  Header___vue_template_functional__,
  Header___vue_styles__,
  Header___vue_scopeId__,
  Header___vue_module_identifier__
)

/* harmony default export */ var src_components_Header = (Header_Component.exports);

// EXTERNAL MODULE: ./src/utils/util.js
var util = __webpack_require__("oFuF");

// EXTERNAL MODULE: ./src/utils/index.js
var utils = __webpack_require__("0xDb");

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/Sidebar.vue

//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//

// import bus from "../common/bus";



/* harmony default export */ var Sidebar = ({
  data: function data() {
    return {
      hiddenslderstatus: true,
      slideShow: false,
      slideShowOne: false,
      i18n: { items: [{ subs: null }] },
      selectindex: 0,
      activeindex: 0,
      activeid: '',
      isrouterview: true,
      isCollapse: true,
      sq: true,
      items: [],
      tenantId: '',
      clientWidth: 0
    };
  },
  created: function created() {
    // this.i18n = this.$language.cn.i18n
    this.tenantId = 1200; //JSON.parse(localStorage.getItem("tenantId"))
    // if (this.tenantId == 400) {
    //   this.getmenu1()
    // } else {
    //   this.getmenu()
    // }
    this.getmenu();
    if (document.documentElement.clientWidth < 1080) {
      this.slideShow = false;
      this.slideShowOne = true;
    } else {
      this.slideShow = true;
      this.slideShowOne = false;
    }
  },
  mounted: function mounted() {
    var _this = this;

    window.onresize = function () {
      return function () {
        if (document.documentElement.clientWidth < 1080) {
          _this.slideShow = false;
        } else {
          _this.slideShow = true;
        }
      }();
    };
    console.log('数据', this.i18n);
  },

  methods: {
    hiddenslder: function hiddenslder() {
      if (this.hiddenslderstatus) {
        document.documentElement.style.setProperty("--sldebarLeft", "0");
        this.hiddenslderstatus = false;
      } else {
        document.documentElement.style.setProperty("--sldebarLeft", "180px");
        this.hiddenslderstatus = true;
      }
    },

    //
    getmenu: function getmenu() {
      var _this2 = this;

      var items = this.$language.cn.i18n.items;
      var delayerData = util["a" /* default */].treeToArray(items);
      Object(api["d" /* httpGet */])('', this.$api.userInfo).then(function (res3) {
        var authorities = res3.data.authorities;
        localStorage.setItem('info', stringify_default()(res3.data));
        var arr3 = [];
        if (res3.data.type == 0) {
          arr3 = delayerData;
        } else {
          authorities.forEach(function (item) {
            delayerData.forEach(function (element) {
              if (item == element.key) {
                arr3.push(element);
              }
            });
          });
        }
        var itemsData = Object(utils["q" /* ztreeToElementTree2 */])(arr3, []);
        var idItemsData = itemsData.sort(function (a, b) {
          return a.id - b.id;
        });
        var arr = [];
        if (res3.data.type == 0) {
          idItemsData.map(function (li) {
            if (li.index != 'bluetoothInput' && li.index != 'NormallyOpenPermission' && li.index != 'FreezePermission' && li.index != 'RemoteControlPermission') {
              arr.push(li);
            }
          });
          _this2.i18n.items = arr;
        } else {
          idItemsData.map(function (li) {
            if (li.index != 'bluetoothInput' && li.index != 'NormallyOpenPermission' && li.index != 'FreezePermission' && li.index != 'RemoteControlPermission') {
              arr.push(li);
            }
          });
          var i18n = arr;
          _this2.$nextTick(function () {
            _this2.i18n.items = i18n;
          });
        }
      });
    },
    getmenu1: function getmenu1() {
      var _this3 = this;

      Object(api["d" /* httpGet */])('', this.$api.userInfo).then(function (res3) {
        var authorities = res3.data.authorities;
        localStorage.setItem('info', stringify_default()(res3.data));
        _this3.i18n = _this3.$language.cn.i18n1;
      });
    },
    gopath: function gopath(path) {
      this.$router.push({
        path: "/" + path
      });
      this.sq = true;
    },
    mouseLeave: function mouseLeave() {
      this.sq = true;
    },
    clicktab: function clicktab(id) {
      if (this.activeid == id) {
        this.activeid = '';
      } else {
        this.activeid = id;
      }
    },
    selectindexfun: function selectindexfun(index, i) {
      this.activeindex = i;
      this.selectindex = index;
      if (this.activeindex == i && this.i18n.items[i].subs) {
        this.sq = false;
      } else {
        this.$router.push("/" + index);
        this.sq = true;
      }
    },
    sqfun: function sqfun() {
      this.slideShow = false;
    },
    handleOpen: function handleOpen(key, keyPath) {
      // console.log(key, keyPath);
    },
    handleClose: function handleClose(key, keyPath) {
      // console.log(key, keyPath);
    },
    reload: function reload() {
      this.isrouterview = false;
      this.$nextTick(function () {
        this.isrouterview = true;
      });
    },
    backhome: function backhome() {}
  },
  computed: {
    contractFile: function contractFile() {
      return this.$store.state.user.contractFile;
    },
    onRoutes: function onRoutes() {
      return this.$route.path.replace("/", "");
    },
    collapse: function collapse() {
      return this.$store.state.collapse;
    }
  }

});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-66cbc32e","hasScoped":true,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/Sidebar.vue
var Sidebar_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"sidebar"},[_c('div',{staticClass:"logo",on:{"click":_vm.backhome}},[_c('img',{attrs:{"src":__webpack_require__("LJ2z"),"alt":""}})]),_vm._v(" "),_c('el-menu',{staticClass:"el-menu-vertical-demo",attrs:{"unique-opened":true,"collapse-transition":true,"background-color":"#ffffff","text-color":"#333333","active-text-color":"#333333"},on:{"open":_vm.handleOpen,"close":_vm.handleClose}},_vm._l((_vm.i18n.items),function(item,index){return _c('div',{key:index},[(item.ChildrenStatus && item.status!=-1)?_c('el-submenu',{attrs:{"index":item.index}},[_c('template',{slot:"title"},[_c('i',{class:item.icon}),_vm._v(" "),_c('span',[_vm._v(_vm._s(item.title))])]),_vm._v(" "),(item.ChildrenStatus && item.status!=-1)?_c('el-menu-item-group',_vm._l((item.children),function(item1,index1){return _c('div',{key:index1},[(item1.ChildrenStatus && item1.status!=-1)?_c('el-submenu',{attrs:{"index":item1.index}},[_c('template',{slot:"title"},[_vm._v(_vm._s(item1.title))]),_vm._v(" "),_vm._l((item1.children),function(item2,index2){return (item2.status!=-1)?_c('el-menu-item',{key:index2,attrs:{"index":item2.index},on:{"click":function($event){return _vm.gopath(item2.index)}}},[_vm._v(_vm._s(item2.title)+"\n              ")]):_vm._e()})],2):(item1.status!=-1)?_c('el-menu-item',{attrs:{"index":item1.index},on:{"click":function($event){return _vm.gopath(item1.index)}}},[_vm._v(_vm._s(item1.title))]):_vm._e()],1)}),0):_vm._e()],2):(item.status!=-1)?_c('el-menu-item',{attrs:{"index":item.index},on:{"click":function($event){return _vm.gopath(item.index)}}},[_c('i',{class:item.icon}),_vm._v(" "),_c('span',[_vm._v(_vm._s(item.title))])]):_vm._e()],1)}),0)],1)}
var Sidebar_staticRenderFns = []
var Sidebar_esExports = { render: Sidebar_render, staticRenderFns: Sidebar_staticRenderFns }
/* harmony default export */ var components_Sidebar = (Sidebar_esExports);
// CONCATENATED MODULE: ./src/components/Sidebar.vue
function Sidebar_injectStyle (ssrContext) {
  __webpack_require__("TNdk")
}
var Sidebar_normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var Sidebar___vue_template_functional__ = false
/* styles */
var Sidebar___vue_styles__ = Sidebar_injectStyle
/* scopeId */
var Sidebar___vue_scopeId__ = "data-v-66cbc32e"
/* moduleIdentifier (server only) */
var Sidebar___vue_module_identifier__ = null
var Sidebar_Component = Sidebar_normalizeComponent(
  Sidebar,
  components_Sidebar,
  Sidebar___vue_template_functional__,
  Sidebar___vue_styles__,
  Sidebar___vue_scopeId__,
  Sidebar___vue_module_identifier__
)

/* harmony default export */ var src_components_Sidebar = (Sidebar_Component.exports);

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/defineProperty.js
var defineProperty = __webpack_require__("bOdI");
var defineProperty_default = /*#__PURE__*/__webpack_require__.n(defineProperty);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/Tags.vue

//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//

/* harmony default export */ var Tags = (defineProperty_default()({
    computed: {
        tagsList: function tagsList() {
            return this.$store.state.tagsList;
        },
        showTags: function showTags() {
            return this.tagsList.length > 0;
        }
    },
    created: function created() {},

    methods: {
        isActive: function isActive(path) {
            return path === this.$route.fullPath;
        },
        hangleTags: function hangleTags() {
            console.log("111");
        },

        // 关闭单个标签
        closeTags: function closeTags(index) {
            var delItem = this.tagsList[index];
            this.$store.commit("delTagsItem", { index: index });
            var item = this.tagsList[index] ? this.tagsList[index] : this.tagsList[index - 1];
            if (item) {
                delItem.path === this.$route.fullPath && this.$router.push(item.path);
            } else {
                this.$router.push("/");
            }
        },

        // 关闭全部标签
        closeAll: function closeAll() {
            this.$store.commit("clearTags");
            this.$router.push("/");
        },

        // 关闭其他标签
        closeOther: function closeOther() {
            var _this = this;

            var curItem = this.tagsList.filter(function (item) {
                return item.path === _this.$route.fullPath;
            });
            this.$store.commit("closeTagsOther", curItem);
        },

        // 设置标签
        setTags: function setTags(route) {
            var isExist = this.tagsList.some(function (item) {
                return item.path === route.fullPath;
            });
            if (!isExist) {
                if (this.tagsList.length >= 8) {
                    this.$store.commit("delTagsItem", { index: 0 });
                }
                this.$store.commit("setTagsItem", {
                    name: route.name,
                    title: route.meta.title,
                    path: route.fullPath
                });
            }
        },
        handleTags: function handleTags(command) {
            command === "other" ? this.closeOther() : this.closeAll();
        }
    },
    watch: {
        $route: function $route(newValue) {
            this.setTags(newValue);
        }
    }
}, "created", function created() {
    this.setTags(this.$route);
    // 关闭当前页面的标签页
    // this.$store.commit("closeCurrentTag", {
    //     $router: this.$router,
    //     $route: this.$route
    // });
}));
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-16439664","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/components/Tags.vue
var Tags_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.showTags)?_c('div',{staticClass:"tags"},[_c('ul',_vm._l((_vm.tagsList),function(item,index){return _c('li',{key:index,staticClass:"tags-li",class:{'active': _vm.isActive(item.path)}},[_c('router-link',{staticClass:"tags-li-title",attrs:{"to":item.path}},[_vm._v(_vm._s(item.title))]),_vm._v(" "),_c('span',{staticClass:"tags-li-icon",on:{"click":function($event){return _vm.closeTags(index)}}},[_c('i',{staticClass:"el-icon-close"})])],1)}),0),_vm._v(" "),_c('div',{staticClass:"tags-close-box"},[_c('el-dropdown',{on:{"command":_vm.handleTags},scopedSlots:_vm._u([{key:"dropdown",fn:function(){return [_c('el-dropdown-menu',{attrs:{"size":"small"}},[_c('el-dropdown-item',{attrs:{"command":"other"}},[_vm._v("关闭其他")]),_vm._v(" "),_c('el-dropdown-item',{attrs:{"command":"all"}},[_vm._v("关闭所有")])],1)]},proxy:true}],null,false,718496503)},[_c('el-button',{attrs:{"size":"mini","type":"success"}},[_vm._v("\n                标签选项\n                "),_c('i',{staticClass:"el-icon-arrow-down el-icon--right"})])],1)],1)]):_vm._e()}
var Tags_staticRenderFns = []
var Tags_esExports = { render: Tags_render, staticRenderFns: Tags_staticRenderFns }
/* harmony default export */ var components_Tags = (Tags_esExports);
// CONCATENATED MODULE: ./src/components/Tags.vue
function Tags_injectStyle (ssrContext) {
  __webpack_require__("rsK/")
}
var Tags_normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var Tags___vue_template_functional__ = false
/* styles */
var Tags___vue_styles__ = Tags_injectStyle
/* scopeId */
var Tags___vue_scopeId__ = null
/* moduleIdentifier (server only) */
var Tags___vue_module_identifier__ = null
var Tags_Component = Tags_normalizeComponent(
  Tags,
  components_Tags,
  Tags___vue_template_functional__,
  Tags___vue_styles__,
  Tags___vue_scopeId__,
  Tags___vue_module_identifier__
)

/* harmony default export */ var src_components_Tags = (Tags_Component.exports);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/views/Home.vue
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//




/* harmony default export */ var Home = ({
  inject: ['reload'],
  components: {
    vHeader: src_components_Header,
    vSidebar: src_components_Sidebar,
    vTags: src_components_Tags
  },
  data: function data() {
    return {
      themeStatus: false,
      themesCss: ''
    };
  },
  mounted: function mounted() {
    var themesCss = localStorage.getItem('cssStyle') || 'primary';
    this.themesCss = themesCss;
  },

  methods: {
    showThemeMethods: function showThemeMethods() {
      this.themeStatus = !this.themeStatus;
    },
    hiddenThemeMethods: function hiddenThemeMethods() {
      this.themeStatus = false;
    },
    selectThemeMethods: function selectThemeMethods(name) {
      localStorage.setItem('cssStyle', name);
      this.themesCss = name;
      this.reload();
    }
  },
  computed: {
    tagsList: function tagsList() {
      return this.$store.state.tagsList.map(function (item) {
        return item.name;
      });
    },
    collapse: function collapse() {
      return this.$store.state.collapse;
    }
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-fc70ebba","hasScoped":true,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/views/Home.vue
var Home_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"about",on:{"click":_vm.hiddenThemeMethods}},[_c('v-header'),_vm._v(" "),_c('v-sidebar'),_vm._v(" "),_c('div',{staticClass:"content-box",class:{ 'content-collapse': _vm.collapse }},[_c('v-tags'),_vm._v(" "),_c('div',{staticClass:"content"},[_c('router-view',{scopedSlots:_vm._u([{key:"default",fn:function(ref){
var Component = ref.Component;
return [_c('transition',{attrs:{"name":"move","mode":"out-in"}},[_c('keep-alive',{attrs:{"include":_vm.tagsList}},[_c(Component,{tag:"component"})],1)],1)]}}])})],1)],1)],1)}
var Home_staticRenderFns = []
var Home_esExports = { render: Home_render, staticRenderFns: Home_staticRenderFns }
/* harmony default export */ var views_Home = (Home_esExports);
// CONCATENATED MODULE: ./src/views/Home.vue
function Home_injectStyle (ssrContext) {
  __webpack_require__("7dP5")
}
var Home_normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var Home___vue_template_functional__ = false
/* styles */
var Home___vue_styles__ = Home_injectStyle
/* scopeId */
var Home___vue_scopeId__ = "data-v-fc70ebba"
/* moduleIdentifier (server only) */
var Home___vue_module_identifier__ = null
var Home_Component = Home_normalizeComponent(
  Home,
  views_Home,
  Home___vue_template_functional__,
  Home___vue_styles__,
  Home___vue_scopeId__,
  Home___vue_module_identifier__
)

/* harmony default export */ var src_views_Home = (Home_Component.exports);

// EXTERNAL MODULE: ./node_modules/vue/dist/vue.esm.js
var vue_esm = __webpack_require__("7+uW");

// EXTERNAL MODULE: ./src/store/index.js
var store = __webpack_require__("IcnI");

// EXTERNAL MODULE: ./src/utils/i18n.js
var utils_i18n = __webpack_require__("ivlf");

// CONCATENATED MODULE: ./src/router/index.js




vue_esm["default"].use(vue_router_esm["a" /* default */]);
var HOME = "/home";
var userInfo = localStorage.getItem('info');

function getChidlren(data, key, value) {
  var hasFound = false,


  // 表示是否有找到id值
  result = null;
  var fn = function fn(data) {
    if (!hasFound) {
      // 判断是否是数组并且没有的情况下，
      data.forEach(function (item) {
        if (item[key] === value) {
          // 数据循环每个子项，并且判断子项下边是否有id值
          result = item; // 返回的结果等于每一项
          hasFound = true; // 并且找到id值
        } else if (item.subs) {
          fn(item.subs); // 递归调用下边的子项
        }
      });
    }
  };
  fn(data); // 调用一下
  return result;
}
if (userInfo) {
  if (JSON.parse(userInfo).type != 0) {
    var router_authorities = JSON.parse(userInfo);
    var authoritiesList = router_authorities.authorities.filter(function (item) {
      return item != 'BLUETOOTH_INPUT' && item != 'NORMALLY_OPEN_PERMISSION' && item != 'FREEZE_PERMISSION' && item != 'REMOTE_CONTROL_PERMISSION';
    });

    var router_data = '';
    if (authoritiesList[0] == 'BLUETOOTH_INPUT') {
      router_data = getChidlren(utils_i18n["a" /* default */].cn.i18n.items, 'key', authoritiesList[1]);
    } else {
      router_data = getChidlren(utils_i18n["a" /* default */].cn.i18n.items, 'key', authoritiesList[0]);
    }
    HOME = router_data.index;
  }
}
var routes = [{
  path: '/',
  redirect: HOME
}, {
  path: '/screen',
  name: 'Screen',
  meta: {
    title: '数据大屏'
  },
  component: function component() {
    return __webpack_require__.e/* import() */(2).then(__webpack_require__.bind(null, "3Kca"));
  }
}, {
  path: "/login",
  name: "Login",
  meta: {
    title: '登录'
  },
  component: function component() {
    return __webpack_require__.e/* import() */(32).then(__webpack_require__.bind(null, "lmfZ"));
  }
}, {
  path: "/",
  name: "Home",
  component: src_views_Home,
  children: [
  // {
  //   path: "/home",
  //   name: "home",
  //   meta: {
  //     title: '首页'
  //   },
  //   component: () => import("../views/visualization/home.vue")
  // },
  {
    path: "/home",
    name: "home",
    meta: {
      title: '首页'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(19)]).then(__webpack_require__.bind(null, "2vAJ"));
    }
  }, {
    path: "/getFinger",
    name: "getFinger",
    meta: {
      title: '首页'
    },
    component: function component() {
      return __webpack_require__.e/* import() */(56).then(__webpack_require__.bind(null, "BXO0"));
    }
  }, {
    path: '/datascreen',
    name: 'Datascreen',
    meta: {
      title: '数据大屏'
    },
    component: function component() {
      return __webpack_require__.e/* import() */(3).then(__webpack_require__.bind(null, "sJZa"));
    }
  },
  // {
  //   path: "/homepage",//"/homepage",
  //   name: "homepage",//"homepage",
  //   meta: {
  //     title: '门锁首页'
  //   },
  //   component: () => import("../views/visualization/flatsIndex.vue")
  // },
  {
    path: "/dashboard",
    name: "dashboard",
    meta: {
      title: '宿舍管理'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(10)]).then(__webpack_require__.bind(null, "npFY"));
    }
  }, {
    path: "/studentsRoom",
    name: "studentsRoom",
    meta: {
      title: '教室管理'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(53)]).then(__webpack_require__.bind(null, "ud+D"));
    }
  }, {
    path: "/books",
    name: "books",
    meta: {
      title: '图书馆'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(92)]).then(__webpack_require__.bind(null, "OdYA"));
    }
  }, {
    path: "/academicBuilding",
    name: "academicBuilding",
    meta: {
      title: '教学楼'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(52)]).then(__webpack_require__.bind(null, "sdFg"));
    }
  }, {
    path: "/tabs",
    name: "basetable",
    meta: {
      title: '设备管理'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(90)]).then(__webpack_require__.bind(null, "jOr5"));
    }
  }, {
    path: "/doorLock",
    name: "doorLock",
    meta: {
      title: '门锁管理'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(29)]).then(__webpack_require__.bind(null, "KDEK"));
    }
  }, {
    path: "/aNormEquip",
    name: "aNormEquip",
    meta: {
      title: '异常设备'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(43)]).then(__webpack_require__.bind(null, "NqiF"));
    }
  }, {
    path: "/airSwitchDevice",
    name: "airSwitchDevice",
    meta: {
      title: '空开设备'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(17)]).then(__webpack_require__.bind(null, "/wWu"));
    }
  }, {
    path: "/smokeSensationDevice",
    name: "smokeSensationDevice",
    meta: {
      title: '烟感设备'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(23)]).then(__webpack_require__.bind(null, "maRP"));
    }
  }, {
    path: "/AirCleaningDevice",
    name: "AirCleaningDevice",
    meta: {
      title: '空气清洁'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(45)]).then(__webpack_require__.bind(null, "WF02"));
    }
  }, {
    path: "/humanMotionSensorDevice",
    name: "humanMotionSensorDevice",
    meta: {
      title: '红外传感器'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(25)]).then(__webpack_require__.bind(null, "TTKD"));
    }
  }, {
    path: "/smartButtonDevice",
    name: "smartButtonDevice",
    meta: {
      title: '智能按钮'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(20)]).then(__webpack_require__.bind(null, "SYr+"));
    }
  }, {
    path: "/manholeCoverDevice",
    name: "manholeCoverDevice",
    meta: {
      title: '井盖'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(27)]).then(__webpack_require__.bind(null, "vIma"));
    }
  }, {
    path: "/trashCanDevice",
    name: "trashCanDevice",
    meta: {
      title: '垃圾桶'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(18)]).then(__webpack_require__.bind(null, "XMIL"));
    }
  }, {
    path: "/airDetectionDevice",
    name: "airDetectionDevice",
    meta: {
      title: '空气检测传感器'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(28)]).then(__webpack_require__.bind(null, "g3gy"));
    }
  }, {
    path: "/gatewayDevice",
    name: "gatewayDevice",
    meta: {
      title: '网关'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(21)]).then(__webpack_require__.bind(null, "Jwsf"));
    }
  }, {
    path: "/acoustoopticAlarm",
    name: "acoustoopticAlarm",
    meta: {
      title: '声光报警'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(24)]).then(__webpack_require__.bind(null, "Weha"));
    }
  }, {
    path: "/userManagement",
    name: "userManagement",
    meta: {
      title: '租客信息'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(9)]).then(__webpack_require__.bind(null, "I0e3"));
    }
  }, {
    path: "/voucher",
    name: "voucher",
    meta: {
      title: '教师信息'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(12)]).then(__webpack_require__.bind(null, "Yx/X"));
    }
  }, {
    path: "/agreement",
    name: "agreement",
    meta: {
      title: '合同管理'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(14)]).then(__webpack_require__.bind(null, "CQIJ"));
    }
  },
  // {
  //   path: "/tenantExportTemplate",
  //   name: "tenantExportTemplate",
  //   meta: {
  //     title: '租客导出模板'
  //   },
  //   component: () =>
  //     import("../views/template/tenantExportTemplate.vue")
  // },
  {
    path: "/contractExportTemplate",
    name: "contractExportTemplate",
    meta: {
      title: '合同导出模板'
    },
    component: function component() {
      return __webpack_require__.e/* import() */(8).then(__webpack_require__.bind(null, "Aba5"));
    }
  }, {
    path: "/CheckIn",
    name: "CheckIn",
    meta: {
      title: '入住办理'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(15)]).then(__webpack_require__.bind(null, "sSoz"));
    }
  }, {
    path: "/concat",
    name: "concat",
    meta: {
      title: '报警联系人'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(69)]).then(__webpack_require__.bind(null, "f2vC"));
    }
  }, {
    path: "/offInCardOver",
    name: "offInCardOver",
    meta: {
      title: '离线卡操作'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(55)]).then(__webpack_require__.bind(null, "YC1C"));
    }
  }, {
    path: "/offInCardList",
    name: "offInCardList",
    meta: {
      title: '离线卡列表'
    },
    component: function component() {
      return __webpack_require__.e/* import() */(40).then(__webpack_require__.bind(null, "KDLS"));
    }
  }, {
    path: "/RoomInquiry",
    name: "RoomInquiry",
    meta: {
      title: '房间查询'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(11)]).then(__webpack_require__.bind(null, "9OeH"));
    }
  }, {
    path: "/CheckInStaff",
    name: "CheckInStaff",
    meta: {
      title: '入住租客'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(22)]).then(__webpack_require__.bind(null, "Wh9S"));
    }
  }, {
    path: "/Refund",
    name: "Refund",
    meta: {
      title: '退住办理'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(87)]).then(__webpack_require__.bind(null, "Fj1z"));
    }
  }, {
    path: "/Freeze",
    name: "Freeze",
    meta: {
      title: '冻结管理'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(88)]).then(__webpack_require__.bind(null, "pztB"));
    }
  }, {
    path: "/renewalHandling",
    name: "renewalHandling",
    meta: {
      title: '续住办理'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(83)]).then(__webpack_require__.bind(null, "8eXg"));
    }
  }, {
    path: "/VoucherList",
    name: "VoucherList",
    meta: {
      title: '租约列表'
    },
    component: function component() {
      return __webpack_require__.e/* import() */(34).then(__webpack_require__.bind(null, "EsnQ"));
    }
  }, {
    path: "/InformationBase",
    name: "InformationBase",
    meta: {
      title: '信息库'
    },
    component: function component() {
      return __webpack_require__.e/* import() */(84).then(__webpack_require__.bind(null, "gZMX"));
    }
  }, {
    path: "/dueRoom",
    name: "dueRoom",
    meta: {
      title: '到期房间'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(58)]).then(__webpack_require__.bind(null, "zkUY"));
    }
  }, {
    path: "/duePerson",
    name: "duePerson",
    meta: {
      title: '到期租客'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(82)]).then(__webpack_require__.bind(null, "zyEe"));
    }
  }, {
    path: "/loginAccount",
    name: "loginAccount",
    meta: {
      title: '登录账号'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(26)]).then(__webpack_require__.bind(null, "xKmd"));
    }
  }, {
    path: "/rolePermissions",
    name: "rolePermissions",
    meta: {
      title: '角色权限'
    },
    component: function component() {
      return __webpack_require__.e/* import() */(80).then(__webpack_require__.bind(null, "MblA"));
    }
  }, {
    path: "/bindingRoles",
    name: "bindingRoles",
    meta: {
      title: '绑定角色'
    },
    component: function component() {
      return __webpack_require__.e/* import() */(30).then(__webpack_require__.bind(null, "wgqa"));
    }
  }, {
    path: "/administrativeDepartment",
    name: "administrativeDepartment",
    meta: {
      title: '部门管理'
    },
    component: function component() {
      return __webpack_require__.e/* import() */(79).then(__webpack_require__.bind(null, "sZ3M"));
    }
  }, {
    path: "/campus",
    name: "campus",
    meta: {
      title: '办公楼'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(7)]).then(__webpack_require__.bind(null, "OdIJ"));
    }
  }, {
    path: "/order",
    name: "order",
    meta: {
      title: '工单管理'
    },
    component: function component() {
      return __webpack_require__.e/* import() */(42).then(__webpack_require__.bind(null, "vF69"));
    }
  }, {
    path: "/permission",
    name: "permission",
    meta: {
      title: '权限管理',
      permission: true
    },
    component: function component() {
      return __webpack_require__.e/* import() */(85).then(__webpack_require__.bind(null, "4vgy"));
    }
  }, {
    path: "/systemConfiguration",
    name: "systemConfiguration",
    meta: {
      title: '系统配置',
      permission: true
    },
    component: function component() {
      return __webpack_require__.e/* import() */(72).then(__webpack_require__.bind(null, "rFFW"));
    }
  }, {
    path: "/room",
    name: "room",
    meta: {
      title: '房态图'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(6)]).then(__webpack_require__.bind(null, "mk2m"));
    }
  }, {
    path: '/404',
    name: '404',
    meta: {
      title: '找不到页面'
    },
    component: function component() {
      return __webpack_require__.e/* import() */(33).then(__webpack_require__.bind(null, "+H76"));
    }
  }, {
    path: '/403',
    name: '403',
    meta: {
      title: '没有权限'
    },
    component: function component() {
      return __webpack_require__.e/* import() */(39).then(__webpack_require__.bind(null, "k6uz"));
    }
  }, {
    path: '/Upload',
    name: 'upload',
    meta: {
      title: '管理logo'
    },
    component: function component() {
      return __webpack_require__.e/* import() */(31).then(__webpack_require__.bind(null, "H3ra"));
    }
  }, {
    path: '/journal',
    name: 'journal',
    meta: {
      title: '系统日志'
    },
    component: function component() {
      return __webpack_require__.e/* import() */(61).then(__webpack_require__.bind(null, "eJd/"));
    }
  }, {
    path: '/warningLog',
    name: 'warningLog',
    meta: {
      title: '警告日志'
    },
    component: function component() {
      return __webpack_require__.e/* import() */(48).then(__webpack_require__.bind(null, "vWK8"));
    }
  }, {
    path: '/UnlockRecord',
    name: 'UnlockRecord',
    meta: {
      title: '开锁记录'
    },
    component: function component() {
      return __webpack_require__.e/* import() */(41).then(__webpack_require__.bind(null, "JF1I"));
    }
  }, {
    path: '/bluetoothUnlockRecord',
    name: 'bluetoothUnlockRecord',
    meta: {
      title: '蓝牙开锁记录'
    },
    component: function component() {
      return __webpack_require__.e/* import() */(73).then(__webpack_require__.bind(null, "bL+H"));
    }
  }, {
    path: '/configPage',
    name: 'configPage',
    meta: {
      title: '配置'
    },
    component: function component() {
      return __webpack_require__.e/* import() */(54).then(__webpack_require__.bind(null, "Iq79"));
    }
  }, {
    path: '/quantityConfiguration',
    name: 'quantityConfiguration',
    meta: {
      title: '设备数量配置'
    },
    component: function component() {
      return __webpack_require__.e/* import() */(74).then(__webpack_require__.bind(null, "Sp/M"));
    }
  }, {
    path: '/allDevice',
    name: 'allDevice',
    meta: {
      title: '设备总列表'
    },
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(38)]).then(__webpack_require__.bind(null, "4SPr"));
    }
  }, {
    path: '/DeviceFeedbackLog',
    name: 'DeviceFeedbackLog',
    meta: {
      title: '操作日志'
    },
    component: function component() {
      return __webpack_require__.e/* import() */(46).then(__webpack_require__.bind(null, "mavR"));
    }
  },
  // 设备日志
  {
    path: '/humanMotionSensorLog',
    name: 'humanMotionSensorLog',
    meta: {
      title: '红外传感器日志'
    },
    component: function component() {
      return __webpack_require__.e/* import() */(67).then(__webpack_require__.bind(null, "WbCw"));
    }
  }, {
    path: '/airDetectionSensorLog',
    name: 'airDetectionSensorLog',
    meta: {
      title: '空气检测传感器日志'
    },
    component: function component() {
      return __webpack_require__.e/* import() */(86).then(__webpack_require__.bind(null, "Z4lN"));
    }
  }, {
    path: '/gatewayLog',
    name: 'gatewayLog',
    meta: {
      title: '网关日志'
    },
    component: function component() {
      return __webpack_require__.e/* import() */(94).then(__webpack_require__.bind(null, "6POf"));
    }
  }, {
    path: '/trashLog',
    name: 'trashLog',
    meta: {
      title: '垃圾桶日志'
    },
    component: function component() {
      return __webpack_require__.e/* import() */(71).then(__webpack_require__.bind(null, "84kZ"));
    }
  }, {
    path: '/manholeCoverLog',
    name: 'manholeCoverLog',
    meta: {
      title: '井盖日志'
    },
    component: function component() {
      return __webpack_require__.e/* import() */(77).then(__webpack_require__.bind(null, "wmJC"));
    }
  }, {
    path: '/smartButtonLog',
    name: 'smartButtonLog',
    meta: {
      title: '智能按钮日志'
    },
    component: function component() {
      return __webpack_require__.e/* import() */(51).then(__webpack_require__.bind(null, "05Il"));
    }
  }, {
    path: '/airCleaningLog',
    name: 'airCleaningLog',
    meta: {
      title: '空气清洁日志'
    },
    component: function component() {
      return __webpack_require__.e/* import() */(76).then(__webpack_require__.bind(null, "pbwQ"));
    }
  }, {
    path: '/smokeLog',
    name: 'smokeLog',
    meta: {
      title: '烟感日志'
    },
    component: function component() {
      return __webpack_require__.e/* import() */(62).then(__webpack_require__.bind(null, "eV9u"));
    }
  }, {
    path: '/emptyLog',
    name: 'emptyLog',
    meta: {
      title: '空开日志'
    },
    component: function component() {
      return __webpack_require__.e/* import() */(47).then(__webpack_require__.bind(null, "/Z10"));
    }
  }, {
    path: '/acoustoopticAlarmLog',
    name: 'acoustoopticAlarmLog',
    meta: {
      title: '声光报警日志'
    },
    component: function component() {
      return __webpack_require__.e/* import() */(65).then(__webpack_require__.bind(null, "++gD"));
    }
  },

  // 智能家具首页页面
  {
    path: '/trashMonitorHomePage',
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(75)]).then(__webpack_require__.bind(null, "TjGU"));
    },
    meta: {
      title: '垃圾桶监测器首页'
    }
  },
  // 空气检测传感器首页
  {
    path: '/airQualityMonitorHomePage',
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(89)]).then(__webpack_require__.bind(null, "tPny"));
    },
    meta: {
      title: '空气检测传感器首页'
    }
  },
  // 环境质量监测器首页
  {
    path: '/homePageEnvironmentalQualityMonitor',
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(37)]).then(__webpack_require__.bind(null, "VhAs"));
    },
    meta: {
      title: '环境质量监测器首页'
    }
  },
  // 井盖监测器首页
  {
    path: '/manholeCoverMonitorHomePage',
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(81)]).then(__webpack_require__.bind(null, "mHv0"));
    },
    meta: {
      title: '井盖监测器首页'
    }
  },
  // 智能按钮首页
  {
    path: '/smartButtonHomePage',
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(36)]).then(__webpack_require__.bind(null, "k8eR"));
    },
    meta: {
      title: '智能按钮首页'
    }
  },
  // 声光报警器首页
  {
    path: '/acoustoopticAlarmHomePage',
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(60)]).then(__webpack_require__.bind(null, "whVn"));
    },
    meta: {
      title: '声光报警器首页'
    }
  },
  // 红外报警首页
  {
    path: '/infraredAlarmHomePage',
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(50)]).then(__webpack_require__.bind(null, "rQSZ"));
    },
    meta: {
      title: '红外报警首页'
    }
  },
  // 配电柜空开首页
  {
    path: '/homePageDistributionCabinetIsEmpty',
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(91)]).then(__webpack_require__.bind(null, "VPE/"));
    },
    meta: {
      title: '配电柜空开首页'
    }
  },
  // 水电表首页
  {
    path: '/homePageWaterAndElectricityMeter',
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(66)]).then(__webpack_require__.bind(null, "1O3W"));
    },
    meta: {
      title: '水电表首页'
    }
  },
  // 共享热水首页
  {
    path: '/sharedHotWaterHomePage',
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(49)]).then(__webpack_require__.bind(null, "jms7"));
    },
    meta: {
      title: '共享热水首页'
    }
  },
  // 烟感首页
  {
    path: '/smokeSensationDeviceHomePage',
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(70)]).then(__webpack_require__.bind(null, "BHWL"));
    },
    meta: {
      title: '烟感首页'
    }
  },

  // 门磁页面
  {
    path: '/index',
    component: function component() {
      return __webpack_require__.e/* import() */(5).then(__webpack_require__.bind(null, "tjHi"));
    },
    meta: {
      title: '门磁首页'
    }
  }, {
    path: '/alarmRecord',
    component: function component() {
      return __webpack_require__.e/* import() */(35).then(__webpack_require__.bind(null, "KwGp"));
    },
    meta: {
      title: '报警记录'
    }
  }, {
    path: '/Architecture',
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(13)]).then(__webpack_require__.bind(null, "mg21"));
    },
    meta: {
      title: '建筑物管理'
    }
  }, {
    path: '/Linkman',
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(68)]).then(__webpack_require__.bind(null, "sW1j"));
    },
    meta: {
      title: '通知管理'
    }
  }, {
    path: '/EquipmentList',
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(16)]).then(__webpack_require__.bind(null, "N15m"));
    },
    meta: {
      title: '门磁列表'
    }
  }, {
    path: '/subordinateUnit',
    component: function component() {
      return __webpack_require__.e/* import() */(44).then(__webpack_require__.bind(null, "ZQgO"));
    },
    meta: {
      title: '下级单位管理'
    }
  }, {
    path: '/userManagementHouse',
    component: function component() {
      return __webpack_require__.e/* import() */(93).then(__webpack_require__.bind(null, "wEa3"));
    },
    meta: {
      title: '用户管理'
    }
  }, {
    path: '/bluetoothButtonManage',
    component: function component() {
      return __webpack_require__.e/* import() */(59).then(__webpack_require__.bind(null, "lbtW"));
    },
    meta: {
      title: '蓝牙扣管理'
    }
  }, {
    path: '/rechargeManagement',
    component: function component() {
      return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(57)]).then(__webpack_require__.bind(null, "qf+m"));
    },
    meta: {
      title: '充值'
    }
  }, {
    path: '/bill',
    component: function component() {
      return __webpack_require__.e/* import() */(78).then(__webpack_require__.bind(null, "0hOQ"));
    },
    meta: {
      title: '账单'
    }
  }, {
    path: '/linkperson',
    component: function component() {
      return __webpack_require__.e/* import() */(64).then(__webpack_require__.bind(null, "FJRY"));
    },
    meta: {
      title: '通知管理'
    }
  }, {
    path: '/byRoom',
    component: function component() {
      return __webpack_require__.e/* import() */(63).then(__webpack_require__.bind(null, "/LsX"));
    },
    meta: {
      title: '泊寓房源'
    }
  }]
}, {
  path: "/Datavisualization",
  name: "Datavisualization",
  meta: {
    title: '数据可视化'
  },
  // component: () => import(
  //     /* webpackChunkName: "login" */
  //     "../views/LargeScreen.vue")
  component: function component() {
    return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(4)]).then(__webpack_require__.bind(null, "Kxl7"));
  }
}, {
  path: '/visualization',
  name: "visualization",
  meta: {
    title: '全屏'
  },
  component: function component() {
    return Promise.all/* import() */([__webpack_require__.e(0), __webpack_require__.e(1)]).then(__webpack_require__.bind(null, "pdlS"));
  }
}];

var originalPush = vue_router_esm["a" /* default */].prototype.push;
vue_router_esm["a" /* default */].prototype.push = function push(location) {
  return originalPush.call(this, location).catch(function (err) {
    return err;
  });
};
var router = new vue_router_esm["a" /* default */]({
  mode: 'hash',
  // base:"/iot",
  routes: routes
});

router.beforeEach(function (to, from, next) {
  document.title = "\u667A\u6167\u516C\u5BD3\u7BA1\u7406\u7CFB\u7EDF"; //${to.meta.title} |
  var role = localStorage.getItem('ms_username');
  var info = JSON.parse(localStorage.getItem('info'));
  if (!role && to.path !== '/login') {
    next('/login');
  } else {
    next();
  }
});

/* harmony default export */ var src_router = __webpack_exports__["a"] = (router);

/***/ }),

/***/ "ZcjC":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(module) {/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_define_property__ = __webpack_require__("C4MV");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_define_property___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_define_property__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_symbol_iterator__ = __webpack_require__("Zzip");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_symbol_iterator___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_symbol_iterator__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_core_js_symbol__ = __webpack_require__("5QVw");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_core_js_symbol___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_core_js_symbol__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_core_js_object_get_prototype_of__ = __webpack_require__("Zx67");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_core_js_object_get_prototype_of___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_core_js_object_get_prototype_of__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_typeof__ = __webpack_require__("pFYg");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_typeof___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_typeof__);





/*! jQuery v3.3.1 | (c) JS Foundation and other contributors | jquery.org/license */
!function (e, t) {
  "use strict";

  "object" == ( false ? "undefined" : __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_typeof___default()(module)) && "object" == __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_typeof___default()(module.exports) ? module.exports = e.document ? t(e, !0) : function (e) {
    if (!e.document) throw new Error("jQuery requires a window with a document");return t(e);
  } : t(e);
}("undefined" != typeof window ? window : this, function (e, t) {
  "use strict";

  var n = [],
      r = e.document,
      i = __WEBPACK_IMPORTED_MODULE_3_babel_runtime_core_js_object_get_prototype_of___default.a,
      o = n.slice,
      a = n.concat,
      s = n.push,
      u = n.indexOf,
      l = {},
      c = l.toString,
      f = l.hasOwnProperty,
      p = f.toString,
      d = p.call(Object),
      h = {},
      g = function e(t) {
    return "function" == typeof t && "number" != typeof t.nodeType;
  },
      y = function e(t) {
    return null != t && t === t.window;
  },
      v = { type: !0, src: !0, noModule: !0 };function m(e, t, n) {
    var i,
        o = (t = t || r).createElement("script");if (o.text = e, n) for (i in v) {
      n[i] && (o[i] = n[i]);
    }t.head.appendChild(o).parentNode.removeChild(o);
  }function x(e) {
    return null == e ? e + "" : "object" == (typeof e === "undefined" ? "undefined" : __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_typeof___default()(e)) || "function" == typeof e ? l[c.call(e)] || "object" : typeof e === "undefined" ? "undefined" : __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_typeof___default()(e);
  }var b = "3.3.1",
      w = function w(e, t) {
    return new w.fn.init(e, t);
  },
      T = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;w.fn = w.prototype = { jquery: "3.3.1", constructor: w, length: 0, toArray: function toArray() {
      return o.call(this);
    }, get: function get(e) {
      return null == e ? o.call(this) : e < 0 ? this[e + this.length] : this[e];
    }, pushStack: function pushStack(e) {
      var t = w.merge(this.constructor(), e);return t.prevObject = this, t;
    }, each: function each(e) {
      return w.each(this, e);
    }, map: function map(e) {
      return this.pushStack(w.map(this, function (t, n) {
        return e.call(t, n, t);
      }));
    }, slice: function slice() {
      return this.pushStack(o.apply(this, arguments));
    }, first: function first() {
      return this.eq(0);
    }, last: function last() {
      return this.eq(-1);
    }, eq: function eq(e) {
      var t = this.length,
          n = +e + (e < 0 ? t : 0);return this.pushStack(n >= 0 && n < t ? [this[n]] : []);
    }, end: function end() {
      return this.prevObject || this.constructor();
    }, push: s, sort: n.sort, splice: n.splice }, w.extend = w.fn.extend = function () {
    var e,
        t,
        n,
        r,
        i,
        o,
        a = arguments[0] || {},
        s = 1,
        u = arguments.length,
        l = !1;for ("boolean" == typeof a && (l = a, a = arguments[s] || {}, s++), "object" == (typeof a === "undefined" ? "undefined" : __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_typeof___default()(a)) || g(a) || (a = {}), s === u && (a = this, s--); s < u; s++) {
      if (null != (e = arguments[s])) for (t in e) {
        n = a[t], a !== (r = e[t]) && (l && r && (w.isPlainObject(r) || (i = Array.isArray(r))) ? (i ? (i = !1, o = n && Array.isArray(n) ? n : []) : o = n && w.isPlainObject(n) ? n : {}, a[t] = w.extend(l, o, r)) : void 0 !== r && (a[t] = r));
      }
    }return a;
  }, w.extend({ expando: "jQuery" + ("3.3.1" + Math.random()).replace(/\D/g, ""), isReady: !0, error: function error(e) {
      throw new Error(e);
    }, noop: function noop() {}, isPlainObject: function isPlainObject(e) {
      var t, n;return !(!e || "[object Object]" !== c.call(e)) && (!(t = i(e)) || "function" == typeof (n = f.call(t, "constructor") && t.constructor) && p.call(n) === d);
    }, isEmptyObject: function isEmptyObject(e) {
      var t;for (t in e) {
        return !1;
      }return !0;
    }, globalEval: function globalEval(e) {
      m(e);
    }, each: function each(e, t) {
      var n,
          r = 0;if (C(e)) {
        for (n = e.length; r < n; r++) {
          if (!1 === t.call(e[r], r, e[r])) break;
        }
      } else for (r in e) {
        if (!1 === t.call(e[r], r, e[r])) break;
      }return e;
    }, trim: function trim(e) {
      return null == e ? "" : (e + "").replace(T, "");
    }, makeArray: function makeArray(e, t) {
      var n = t || [];return null != e && (C(Object(e)) ? w.merge(n, "string" == typeof e ? [e] : e) : s.call(n, e)), n;
    }, inArray: function inArray(e, t, n) {
      return null == t ? -1 : u.call(t, e, n);
    }, merge: function merge(e, t) {
      for (var n = +t.length, r = 0, i = e.length; r < n; r++) {
        e[i++] = t[r];
      }return e.length = i, e;
    }, grep: function grep(e, t, n) {
      for (var r, i = [], o = 0, a = e.length, s = !n; o < a; o++) {
        (r = !t(e[o], o)) !== s && i.push(e[o]);
      }return i;
    }, map: function map(e, t, n) {
      var r,
          i,
          o = 0,
          s = [];if (C(e)) for (r = e.length; o < r; o++) {
        null != (i = t(e[o], o, n)) && s.push(i);
      } else for (o in e) {
        null != (i = t(e[o], o, n)) && s.push(i);
      }return a.apply([], s);
    }, guid: 1, support: h }), "function" == typeof __WEBPACK_IMPORTED_MODULE_2_babel_runtime_core_js_symbol___default.a && (w.fn[__WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_symbol_iterator___default.a] = n[__WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_symbol_iterator___default.a]), w.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "), function (e, t) {
    l["[object " + t + "]"] = t.toLowerCase();
  });function C(e) {
    var t = !!e && "length" in e && e.length,
        n = x(e);return !g(e) && !y(e) && ("array" === n || 0 === t || "number" == typeof t && t > 0 && t - 1 in e);
  }var E = function (e) {
    var t,
        n,
        r,
        i,
        o,
        a,
        s,
        u,
        l,
        c,
        f,
        p,
        d,
        h,
        g,
        y,
        v,
        m,
        x,
        b = "sizzle" + 1 * new Date(),
        w = e.document,
        T = 0,
        C = 0,
        E = ae(),
        k = ae(),
        S = ae(),
        D = function D(e, t) {
      return e === t && (f = !0), 0;
    },
        N = {}.hasOwnProperty,
        A = [],
        j = A.pop,
        q = A.push,
        L = A.push,
        H = A.slice,
        O = function O(e, t) {
      for (var n = 0, r = e.length; n < r; n++) {
        if (e[n] === t) return n;
      }return -1;
    },
        P = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",
        M = "[\\x20\\t\\r\\n\\f]",
        R = "(?:\\\\.|[\\w-]|[^\0-\\xa0])+",
        I = "\\[" + M + "*(" + R + ")(?:" + M + "*([*^$|!~]?=)" + M + "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + R + "))|)" + M + "*\\]",
        W = ":(" + R + ")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|" + I + ")*)|.*)\\)|)",
        $ = new RegExp(M + "+", "g"),
        B = new RegExp("^" + M + "+|((?:^|[^\\\\])(?:\\\\.)*)" + M + "+$", "g"),
        F = new RegExp("^" + M + "*," + M + "*"),
        _ = new RegExp("^" + M + "*([>+~]|" + M + ")" + M + "*"),
        z = new RegExp("=" + M + "*([^\\]'\"]*?)" + M + "*\\]", "g"),
        X = new RegExp(W),
        U = new RegExp("^" + R + "$"),
        V = { ID: new RegExp("^#(" + R + ")"), CLASS: new RegExp("^\\.(" + R + ")"), TAG: new RegExp("^(" + R + "|[*])"), ATTR: new RegExp("^" + I), PSEUDO: new RegExp("^" + W), CHILD: new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + M + "*(even|odd|(([+-]|)(\\d*)n|)" + M + "*(?:([+-]|)" + M + "*(\\d+)|))" + M + "*\\)|)", "i"), bool: new RegExp("^(?:" + P + ")$", "i"), needsContext: new RegExp("^" + M + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + M + "*((?:-\\d)?\\d*)" + M + "*\\)|)(?=[^-]|$)", "i") },
        G = /^(?:input|select|textarea|button)$/i,
        Y = /^h\d$/i,
        Q = /^[^{]+\{\s*\[native \w/,
        J = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,
        K = /[+~]/,
        Z = new RegExp("\\\\([\\da-f]{1,6}" + M + "?|(" + M + ")|.)", "ig"),
        ee = function ee(e, t, n) {
      var r = "0x" + t - 65536;return r !== r || n ? t : r < 0 ? String.fromCharCode(r + 65536) : String.fromCharCode(r >> 10 | 55296, 1023 & r | 56320);
    },
        te = /([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,
        ne = function ne(e, t) {
      return t ? "\0" === e ? "\uFFFD" : e.slice(0, -1) + "\\" + e.charCodeAt(e.length - 1).toString(16) + " " : "\\" + e;
    },
        re = function re() {
      p();
    },
        ie = me(function (e) {
      return !0 === e.disabled && ("form" in e || "label" in e);
    }, { dir: "parentNode", next: "legend" });try {
      L.apply(A = H.call(w.childNodes), w.childNodes), A[w.childNodes.length].nodeType;
    } catch (e) {
      L = { apply: A.length ? function (e, t) {
          q.apply(e, H.call(t));
        } : function (e, t) {
          var n = e.length,
              r = 0;while (e[n++] = t[r++]) {}e.length = n - 1;
        } };
    }function oe(e, t, r, i) {
      var o,
          s,
          l,
          c,
          f,
          h,
          v,
          m = t && t.ownerDocument,
          T = t ? t.nodeType : 9;if (r = r || [], "string" != typeof e || !e || 1 !== T && 9 !== T && 11 !== T) return r;if (!i && ((t ? t.ownerDocument || t : w) !== d && p(t), t = t || d, g)) {
        if (11 !== T && (f = J.exec(e))) if (o = f[1]) {
          if (9 === T) {
            if (!(l = t.getElementById(o))) return r;if (l.id === o) return r.push(l), r;
          } else if (m && (l = m.getElementById(o)) && x(t, l) && l.id === o) return r.push(l), r;
        } else {
          if (f[2]) return L.apply(r, t.getElementsByTagName(e)), r;if ((o = f[3]) && n.getElementsByClassName && t.getElementsByClassName) return L.apply(r, t.getElementsByClassName(o)), r;
        }if (n.qsa && !S[e + " "] && (!y || !y.test(e))) {
          if (1 !== T) m = t, v = e;else if ("object" !== t.nodeName.toLowerCase()) {
            (c = t.getAttribute("id")) ? c = c.replace(te, ne) : t.setAttribute("id", c = b), s = (h = a(e)).length;while (s--) {
              h[s] = "#" + c + " " + ve(h[s]);
            }v = h.join(","), m = K.test(e) && ge(t.parentNode) || t;
          }if (v) try {
            return L.apply(r, m.querySelectorAll(v)), r;
          } catch (e) {} finally {
            c === b && t.removeAttribute("id");
          }
        }
      }return u(e.replace(B, "$1"), t, r, i);
    }function ae() {
      var e = [];function t(n, i) {
        return e.push(n + " ") > r.cacheLength && delete t[e.shift()], t[n + " "] = i;
      }return t;
    }function se(e) {
      return e[b] = !0, e;
    }function ue(e) {
      var t = d.createElement("fieldset");try {
        return !!e(t);
      } catch (e) {
        return !1;
      } finally {
        t.parentNode && t.parentNode.removeChild(t), t = null;
      }
    }function le(e, t) {
      var n = e.split("|"),
          i = n.length;while (i--) {
        r.attrHandle[n[i]] = t;
      }
    }function ce(e, t) {
      var n = t && e,
          r = n && 1 === e.nodeType && 1 === t.nodeType && e.sourceIndex - t.sourceIndex;if (r) return r;if (n) while (n = n.nextSibling) {
        if (n === t) return -1;
      }return e ? 1 : -1;
    }function fe(e) {
      return function (t) {
        return "input" === t.nodeName.toLowerCase() && t.type === e;
      };
    }function pe(e) {
      return function (t) {
        var n = t.nodeName.toLowerCase();return ("input" === n || "button" === n) && t.type === e;
      };
    }function de(e) {
      return function (t) {
        return "form" in t ? t.parentNode && !1 === t.disabled ? "label" in t ? "label" in t.parentNode ? t.parentNode.disabled === e : t.disabled === e : t.isDisabled === e || t.isDisabled !== !e && ie(t) === e : t.disabled === e : "label" in t && t.disabled === e;
      };
    }function he(e) {
      return se(function (t) {
        return t = +t, se(function (n, r) {
          var i,
              o = e([], n.length, t),
              a = o.length;while (a--) {
            n[i = o[a]] && (n[i] = !(r[i] = n[i]));
          }
        });
      });
    }function ge(e) {
      return e && "undefined" != typeof e.getElementsByTagName && e;
    }n = oe.support = {}, o = oe.isXML = function (e) {
      var t = e && (e.ownerDocument || e).documentElement;return !!t && "HTML" !== t.nodeName;
    }, p = oe.setDocument = function (e) {
      var t,
          i,
          a = e ? e.ownerDocument || e : w;return a !== d && 9 === a.nodeType && a.documentElement ? (d = a, h = d.documentElement, g = !o(d), w !== d && (i = d.defaultView) && i.top !== i && (i.addEventListener ? i.addEventListener("unload", re, !1) : i.attachEvent && i.attachEvent("onunload", re)), n.attributes = ue(function (e) {
        return e.className = "i", !e.getAttribute("className");
      }), n.getElementsByTagName = ue(function (e) {
        return e.appendChild(d.createComment("")), !e.getElementsByTagName("*").length;
      }), n.getElementsByClassName = Q.test(d.getElementsByClassName), n.getById = ue(function (e) {
        return h.appendChild(e).id = b, !d.getElementsByName || !d.getElementsByName(b).length;
      }), n.getById ? (r.filter.ID = function (e) {
        var t = e.replace(Z, ee);return function (e) {
          return e.getAttribute("id") === t;
        };
      }, r.find.ID = function (e, t) {
        if ("undefined" != typeof t.getElementById && g) {
          var n = t.getElementById(e);return n ? [n] : [];
        }
      }) : (r.filter.ID = function (e) {
        var t = e.replace(Z, ee);return function (e) {
          var n = "undefined" != typeof e.getAttributeNode && e.getAttributeNode("id");return n && n.value === t;
        };
      }, r.find.ID = function (e, t) {
        if ("undefined" != typeof t.getElementById && g) {
          var n,
              r,
              i,
              o = t.getElementById(e);if (o) {
            if ((n = o.getAttributeNode("id")) && n.value === e) return [o];i = t.getElementsByName(e), r = 0;while (o = i[r++]) {
              if ((n = o.getAttributeNode("id")) && n.value === e) return [o];
            }
          }return [];
        }
      }), r.find.TAG = n.getElementsByTagName ? function (e, t) {
        return "undefined" != typeof t.getElementsByTagName ? t.getElementsByTagName(e) : n.qsa ? t.querySelectorAll(e) : void 0;
      } : function (e, t) {
        var n,
            r = [],
            i = 0,
            o = t.getElementsByTagName(e);if ("*" === e) {
          while (n = o[i++]) {
            1 === n.nodeType && r.push(n);
          }return r;
        }return o;
      }, r.find.CLASS = n.getElementsByClassName && function (e, t) {
        if ("undefined" != typeof t.getElementsByClassName && g) return t.getElementsByClassName(e);
      }, v = [], y = [], (n.qsa = Q.test(d.querySelectorAll)) && (ue(function (e) {
        h.appendChild(e).innerHTML = "<a id='" + b + "'></a><select id='" + b + "-\r\\' msallowcapture=''><option selected=''></option></select>", e.querySelectorAll("[msallowcapture^='']").length && y.push("[*^$]=" + M + "*(?:''|\"\")"), e.querySelectorAll("[selected]").length || y.push("\\[" + M + "*(?:value|" + P + ")"), e.querySelectorAll("[id~=" + b + "-]").length || y.push("~="), e.querySelectorAll(":checked").length || y.push(":checked"), e.querySelectorAll("a#" + b + "+*").length || y.push(".#.+[+~]");
      }), ue(function (e) {
        e.innerHTML = "<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var t = d.createElement("input");t.setAttribute("type", "hidden"), e.appendChild(t).setAttribute("name", "D"), e.querySelectorAll("[name=d]").length && y.push("name" + M + "*[*^$|!~]?="), 2 !== e.querySelectorAll(":enabled").length && y.push(":enabled", ":disabled"), h.appendChild(e).disabled = !0, 2 !== e.querySelectorAll(":disabled").length && y.push(":enabled", ":disabled"), e.querySelectorAll("*,:x"), y.push(",.*:");
      })), (n.matchesSelector = Q.test(m = h.matches || h.webkitMatchesSelector || h.mozMatchesSelector || h.oMatchesSelector || h.msMatchesSelector)) && ue(function (e) {
        n.disconnectedMatch = m.call(e, "*"), m.call(e, "[s!='']:x"), v.push("!=", W);
      }), y = y.length && new RegExp(y.join("|")), v = v.length && new RegExp(v.join("|")), t = Q.test(h.compareDocumentPosition), x = t || Q.test(h.contains) ? function (e, t) {
        var n = 9 === e.nodeType ? e.documentElement : e,
            r = t && t.parentNode;return e === r || !(!r || 1 !== r.nodeType || !(n.contains ? n.contains(r) : e.compareDocumentPosition && 16 & e.compareDocumentPosition(r)));
      } : function (e, t) {
        if (t) while (t = t.parentNode) {
          if (t === e) return !0;
        }return !1;
      }, D = t ? function (e, t) {
        if (e === t) return f = !0, 0;var r = !e.compareDocumentPosition - !t.compareDocumentPosition;return r || (1 & (r = (e.ownerDocument || e) === (t.ownerDocument || t) ? e.compareDocumentPosition(t) : 1) || !n.sortDetached && t.compareDocumentPosition(e) === r ? e === d || e.ownerDocument === w && x(w, e) ? -1 : t === d || t.ownerDocument === w && x(w, t) ? 1 : c ? O(c, e) - O(c, t) : 0 : 4 & r ? -1 : 1);
      } : function (e, t) {
        if (e === t) return f = !0, 0;var n,
            r = 0,
            i = e.parentNode,
            o = t.parentNode,
            a = [e],
            s = [t];if (!i || !o) return e === d ? -1 : t === d ? 1 : i ? -1 : o ? 1 : c ? O(c, e) - O(c, t) : 0;if (i === o) return ce(e, t);n = e;while (n = n.parentNode) {
          a.unshift(n);
        }n = t;while (n = n.parentNode) {
          s.unshift(n);
        }while (a[r] === s[r]) {
          r++;
        }return r ? ce(a[r], s[r]) : a[r] === w ? -1 : s[r] === w ? 1 : 0;
      }, d) : d;
    }, oe.matches = function (e, t) {
      return oe(e, null, null, t);
    }, oe.matchesSelector = function (e, t) {
      if ((e.ownerDocument || e) !== d && p(e), t = t.replace(z, "='$1']"), n.matchesSelector && g && !S[t + " "] && (!v || !v.test(t)) && (!y || !y.test(t))) try {
        var r = m.call(e, t);if (r || n.disconnectedMatch || e.document && 11 !== e.document.nodeType) return r;
      } catch (e) {}return oe(t, d, null, [e]).length > 0;
    }, oe.contains = function (e, t) {
      return (e.ownerDocument || e) !== d && p(e), x(e, t);
    }, oe.attr = function (e, t) {
      (e.ownerDocument || e) !== d && p(e);var i = r.attrHandle[t.toLowerCase()],
          o = i && N.call(r.attrHandle, t.toLowerCase()) ? i(e, t, !g) : void 0;return void 0 !== o ? o : n.attributes || !g ? e.getAttribute(t) : (o = e.getAttributeNode(t)) && o.specified ? o.value : null;
    }, oe.escape = function (e) {
      return (e + "").replace(te, ne);
    }, oe.error = function (e) {
      throw new Error("Syntax error, unrecognized expression: " + e);
    }, oe.uniqueSort = function (e) {
      var t,
          r = [],
          i = 0,
          o = 0;if (f = !n.detectDuplicates, c = !n.sortStable && e.slice(0), e.sort(D), f) {
        while (t = e[o++]) {
          t === e[o] && (i = r.push(o));
        }while (i--) {
          e.splice(r[i], 1);
        }
      }return c = null, e;
    }, i = oe.getText = function (e) {
      var t,
          n = "",
          r = 0,
          o = e.nodeType;if (o) {
        if (1 === o || 9 === o || 11 === o) {
          if ("string" == typeof e.textContent) return e.textContent;for (e = e.firstChild; e; e = e.nextSibling) {
            n += i(e);
          }
        } else if (3 === o || 4 === o) return e.nodeValue;
      } else while (t = e[r++]) {
        n += i(t);
      }return n;
    }, (r = oe.selectors = { cacheLength: 50, createPseudo: se, match: V, attrHandle: {}, find: {}, relative: { ">": { dir: "parentNode", first: !0 }, " ": { dir: "parentNode" }, "+": { dir: "previousSibling", first: !0 }, "~": { dir: "previousSibling" } }, preFilter: { ATTR: function ATTR(e) {
          return e[1] = e[1].replace(Z, ee), e[3] = (e[3] || e[4] || e[5] || "").replace(Z, ee), "~=" === e[2] && (e[3] = " " + e[3] + " "), e.slice(0, 4);
        }, CHILD: function CHILD(e) {
          return e[1] = e[1].toLowerCase(), "nth" === e[1].slice(0, 3) ? (e[3] || oe.error(e[0]), e[4] = +(e[4] ? e[5] + (e[6] || 1) : 2 * ("even" === e[3] || "odd" === e[3])), e[5] = +(e[7] + e[8] || "odd" === e[3])) : e[3] && oe.error(e[0]), e;
        }, PSEUDO: function PSEUDO(e) {
          var t,
              n = !e[6] && e[2];return V.CHILD.test(e[0]) ? null : (e[3] ? e[2] = e[4] || e[5] || "" : n && X.test(n) && (t = a(n, !0)) && (t = n.indexOf(")", n.length - t) - n.length) && (e[0] = e[0].slice(0, t), e[2] = n.slice(0, t)), e.slice(0, 3));
        } }, filter: { TAG: function TAG(e) {
          var t = e.replace(Z, ee).toLowerCase();return "*" === e ? function () {
            return !0;
          } : function (e) {
            return e.nodeName && e.nodeName.toLowerCase() === t;
          };
        }, CLASS: function CLASS(e) {
          var t = E[e + " "];return t || (t = new RegExp("(^|" + M + ")" + e + "(" + M + "|$)")) && E(e, function (e) {
            return t.test("string" == typeof e.className && e.className || "undefined" != typeof e.getAttribute && e.getAttribute("class") || "");
          });
        }, ATTR: function ATTR(e, t, n) {
          return function (r) {
            var i = oe.attr(r, e);return null == i ? "!=" === t : !t || (i += "", "=" === t ? i === n : "!=" === t ? i !== n : "^=" === t ? n && 0 === i.indexOf(n) : "*=" === t ? n && i.indexOf(n) > -1 : "$=" === t ? n && i.slice(-n.length) === n : "~=" === t ? (" " + i.replace($, " ") + " ").indexOf(n) > -1 : "|=" === t && (i === n || i.slice(0, n.length + 1) === n + "-"));
          };
        }, CHILD: function CHILD(e, t, n, r, i) {
          var o = "nth" !== e.slice(0, 3),
              a = "last" !== e.slice(-4),
              s = "of-type" === t;return 1 === r && 0 === i ? function (e) {
            return !!e.parentNode;
          } : function (t, n, u) {
            var l,
                c,
                f,
                p,
                d,
                h,
                g = o !== a ? "nextSibling" : "previousSibling",
                y = t.parentNode,
                v = s && t.nodeName.toLowerCase(),
                m = !u && !s,
                x = !1;if (y) {
              if (o) {
                while (g) {
                  p = t;while (p = p[g]) {
                    if (s ? p.nodeName.toLowerCase() === v : 1 === p.nodeType) return !1;
                  }h = g = "only" === e && !h && "nextSibling";
                }return !0;
              }if (h = [a ? y.firstChild : y.lastChild], a && m) {
                x = (d = (l = (c = (f = (p = y)[b] || (p[b] = {}))[p.uniqueID] || (f[p.uniqueID] = {}))[e] || [])[0] === T && l[1]) && l[2], p = d && y.childNodes[d];while (p = ++d && p && p[g] || (x = d = 0) || h.pop()) {
                  if (1 === p.nodeType && ++x && p === t) {
                    c[e] = [T, d, x];break;
                  }
                }
              } else if (m && (x = d = (l = (c = (f = (p = t)[b] || (p[b] = {}))[p.uniqueID] || (f[p.uniqueID] = {}))[e] || [])[0] === T && l[1]), !1 === x) while (p = ++d && p && p[g] || (x = d = 0) || h.pop()) {
                if ((s ? p.nodeName.toLowerCase() === v : 1 === p.nodeType) && ++x && (m && ((c = (f = p[b] || (p[b] = {}))[p.uniqueID] || (f[p.uniqueID] = {}))[e] = [T, x]), p === t)) break;
              }return (x -= i) === r || x % r == 0 && x / r >= 0;
            }
          };
        }, PSEUDO: function PSEUDO(e, t) {
          var n,
              i = r.pseudos[e] || r.setFilters[e.toLowerCase()] || oe.error("unsupported pseudo: " + e);return i[b] ? i(t) : i.length > 1 ? (n = [e, e, "", t], r.setFilters.hasOwnProperty(e.toLowerCase()) ? se(function (e, n) {
            var r,
                o = i(e, t),
                a = o.length;while (a--) {
              e[r = O(e, o[a])] = !(n[r] = o[a]);
            }
          }) : function (e) {
            return i(e, 0, n);
          }) : i;
        } }, pseudos: { not: se(function (e) {
          var t = [],
              n = [],
              r = s(e.replace(B, "$1"));return r[b] ? se(function (e, t, n, i) {
            var o,
                a = r(e, null, i, []),
                s = e.length;while (s--) {
              (o = a[s]) && (e[s] = !(t[s] = o));
            }
          }) : function (e, i, o) {
            return t[0] = e, r(t, null, o, n), t[0] = null, !n.pop();
          };
        }), has: se(function (e) {
          return function (t) {
            return oe(e, t).length > 0;
          };
        }), contains: se(function (e) {
          return e = e.replace(Z, ee), function (t) {
            return (t.textContent || t.innerText || i(t)).indexOf(e) > -1;
          };
        }), lang: se(function (e) {
          return U.test(e || "") || oe.error("unsupported lang: " + e), e = e.replace(Z, ee).toLowerCase(), function (t) {
            var n;do {
              if (n = g ? t.lang : t.getAttribute("xml:lang") || t.getAttribute("lang")) return (n = n.toLowerCase()) === e || 0 === n.indexOf(e + "-");
            } while ((t = t.parentNode) && 1 === t.nodeType);return !1;
          };
        }), target: function target(t) {
          var n = e.location && e.location.hash;return n && n.slice(1) === t.id;
        }, root: function root(e) {
          return e === h;
        }, focus: function focus(e) {
          return e === d.activeElement && (!d.hasFocus || d.hasFocus()) && !!(e.type || e.href || ~e.tabIndex);
        }, enabled: de(!1), disabled: de(!0), checked: function checked(e) {
          var t = e.nodeName.toLowerCase();return "input" === t && !!e.checked || "option" === t && !!e.selected;
        }, selected: function selected(e) {
          return e.parentNode && e.parentNode.selectedIndex, !0 === e.selected;
        }, empty: function empty(e) {
          for (e = e.firstChild; e; e = e.nextSibling) {
            if (e.nodeType < 6) return !1;
          }return !0;
        }, parent: function parent(e) {
          return !r.pseudos.empty(e);
        }, header: function header(e) {
          return Y.test(e.nodeName);
        }, input: function input(e) {
          return G.test(e.nodeName);
        }, button: function button(e) {
          var t = e.nodeName.toLowerCase();return "input" === t && "button" === e.type || "button" === t;
        }, text: function text(e) {
          var t;return "input" === e.nodeName.toLowerCase() && "text" === e.type && (null == (t = e.getAttribute("type")) || "text" === t.toLowerCase());
        }, first: he(function () {
          return [0];
        }), last: he(function (e, t) {
          return [t - 1];
        }), eq: he(function (e, t, n) {
          return [n < 0 ? n + t : n];
        }), even: he(function (e, t) {
          for (var n = 0; n < t; n += 2) {
            e.push(n);
          }return e;
        }), odd: he(function (e, t) {
          for (var n = 1; n < t; n += 2) {
            e.push(n);
          }return e;
        }), lt: he(function (e, t, n) {
          for (var r = n < 0 ? n + t : n; --r >= 0;) {
            e.push(r);
          }return e;
        }), gt: he(function (e, t, n) {
          for (var r = n < 0 ? n + t : n; ++r < t;) {
            e.push(r);
          }return e;
        }) } }).pseudos.nth = r.pseudos.eq;for (t in { radio: !0, checkbox: !0, file: !0, password: !0, image: !0 }) {
      r.pseudos[t] = fe(t);
    }for (t in { submit: !0, reset: !0 }) {
      r.pseudos[t] = pe(t);
    }function ye() {}ye.prototype = r.filters = r.pseudos, r.setFilters = new ye(), a = oe.tokenize = function (e, t) {
      var n,
          i,
          o,
          a,
          s,
          u,
          l,
          c = k[e + " "];if (c) return t ? 0 : c.slice(0);s = e, u = [], l = r.preFilter;while (s) {
        n && !(i = F.exec(s)) || (i && (s = s.slice(i[0].length) || s), u.push(o = [])), n = !1, (i = _.exec(s)) && (n = i.shift(), o.push({ value: n, type: i[0].replace(B, " ") }), s = s.slice(n.length));for (a in r.filter) {
          !(i = V[a].exec(s)) || l[a] && !(i = l[a](i)) || (n = i.shift(), o.push({ value: n, type: a, matches: i }), s = s.slice(n.length));
        }if (!n) break;
      }return t ? s.length : s ? oe.error(e) : k(e, u).slice(0);
    };function ve(e) {
      for (var t = 0, n = e.length, r = ""; t < n; t++) {
        r += e[t].value;
      }return r;
    }function me(e, t, n) {
      var r = t.dir,
          i = t.next,
          o = i || r,
          a = n && "parentNode" === o,
          s = C++;return t.first ? function (t, n, i) {
        while (t = t[r]) {
          if (1 === t.nodeType || a) return e(t, n, i);
        }return !1;
      } : function (t, n, u) {
        var l,
            c,
            f,
            p = [T, s];if (u) {
          while (t = t[r]) {
            if ((1 === t.nodeType || a) && e(t, n, u)) return !0;
          }
        } else while (t = t[r]) {
          if (1 === t.nodeType || a) if (f = t[b] || (t[b] = {}), c = f[t.uniqueID] || (f[t.uniqueID] = {}), i && i === t.nodeName.toLowerCase()) t = t[r] || t;else {
            if ((l = c[o]) && l[0] === T && l[1] === s) return p[2] = l[2];if (c[o] = p, p[2] = e(t, n, u)) return !0;
          }
        }return !1;
      };
    }function xe(e) {
      return e.length > 1 ? function (t, n, r) {
        var i = e.length;while (i--) {
          if (!e[i](t, n, r)) return !1;
        }return !0;
      } : e[0];
    }function be(e, t, n) {
      for (var r = 0, i = t.length; r < i; r++) {
        oe(e, t[r], n);
      }return n;
    }function we(e, t, n, r, i) {
      for (var o, a = [], s = 0, u = e.length, l = null != t; s < u; s++) {
        (o = e[s]) && (n && !n(o, r, i) || (a.push(o), l && t.push(s)));
      }return a;
    }function Te(e, t, n, r, i, o) {
      return r && !r[b] && (r = Te(r)), i && !i[b] && (i = Te(i, o)), se(function (o, a, s, u) {
        var l,
            c,
            f,
            p = [],
            d = [],
            h = a.length,
            g = o || be(t || "*", s.nodeType ? [s] : s, []),
            y = !e || !o && t ? g : we(g, p, e, s, u),
            v = n ? i || (o ? e : h || r) ? [] : a : y;if (n && n(y, v, s, u), r) {
          l = we(v, d), r(l, [], s, u), c = l.length;while (c--) {
            (f = l[c]) && (v[d[c]] = !(y[d[c]] = f));
          }
        }if (o) {
          if (i || e) {
            if (i) {
              l = [], c = v.length;while (c--) {
                (f = v[c]) && l.push(y[c] = f);
              }i(null, v = [], l, u);
            }c = v.length;while (c--) {
              (f = v[c]) && (l = i ? O(o, f) : p[c]) > -1 && (o[l] = !(a[l] = f));
            }
          }
        } else v = we(v === a ? v.splice(h, v.length) : v), i ? i(null, a, v, u) : L.apply(a, v);
      });
    }function Ce(e) {
      for (var t, n, i, o = e.length, a = r.relative[e[0].type], s = a || r.relative[" "], u = a ? 1 : 0, c = me(function (e) {
        return e === t;
      }, s, !0), f = me(function (e) {
        return O(t, e) > -1;
      }, s, !0), p = [function (e, n, r) {
        var i = !a && (r || n !== l) || ((t = n).nodeType ? c(e, n, r) : f(e, n, r));return t = null, i;
      }]; u < o; u++) {
        if (n = r.relative[e[u].type]) p = [me(xe(p), n)];else {
          if ((n = r.filter[e[u].type].apply(null, e[u].matches))[b]) {
            for (i = ++u; i < o; i++) {
              if (r.relative[e[i].type]) break;
            }return Te(u > 1 && xe(p), u > 1 && ve(e.slice(0, u - 1).concat({ value: " " === e[u - 2].type ? "*" : "" })).replace(B, "$1"), n, u < i && Ce(e.slice(u, i)), i < o && Ce(e = e.slice(i)), i < o && ve(e));
          }p.push(n);
        }
      }return xe(p);
    }function Ee(e, t) {
      var n = t.length > 0,
          i = e.length > 0,
          o = function o(_o, a, s, u, c) {
        var f,
            h,
            y,
            v = 0,
            m = "0",
            x = _o && [],
            b = [],
            w = l,
            C = _o || i && r.find.TAG("*", c),
            E = T += null == w ? 1 : Math.random() || .1,
            k = C.length;for (c && (l = a === d || a || c); m !== k && null != (f = C[m]); m++) {
          if (i && f) {
            h = 0, a || f.ownerDocument === d || (p(f), s = !g);while (y = e[h++]) {
              if (y(f, a || d, s)) {
                u.push(f);break;
              }
            }c && (T = E);
          }n && ((f = !y && f) && v--, _o && x.push(f));
        }if (v += m, n && m !== v) {
          h = 0;while (y = t[h++]) {
            y(x, b, a, s);
          }if (_o) {
            if (v > 0) while (m--) {
              x[m] || b[m] || (b[m] = j.call(u));
            }b = we(b);
          }L.apply(u, b), c && !_o && b.length > 0 && v + t.length > 1 && oe.uniqueSort(u);
        }return c && (T = E, l = w), x;
      };return n ? se(o) : o;
    }return s = oe.compile = function (e, t) {
      var n,
          r = [],
          i = [],
          o = S[e + " "];if (!o) {
        t || (t = a(e)), n = t.length;while (n--) {
          (o = Ce(t[n]))[b] ? r.push(o) : i.push(o);
        }(o = S(e, Ee(i, r))).selector = e;
      }return o;
    }, u = oe.select = function (e, t, n, i) {
      var o,
          u,
          l,
          c,
          f,
          p = "function" == typeof e && e,
          d = !i && a(e = p.selector || e);if (n = n || [], 1 === d.length) {
        if ((u = d[0] = d[0].slice(0)).length > 2 && "ID" === (l = u[0]).type && 9 === t.nodeType && g && r.relative[u[1].type]) {
          if (!(t = (r.find.ID(l.matches[0].replace(Z, ee), t) || [])[0])) return n;p && (t = t.parentNode), e = e.slice(u.shift().value.length);
        }o = V.needsContext.test(e) ? 0 : u.length;while (o--) {
          if (l = u[o], r.relative[c = l.type]) break;if ((f = r.find[c]) && (i = f(l.matches[0].replace(Z, ee), K.test(u[0].type) && ge(t.parentNode) || t))) {
            if (u.splice(o, 1), !(e = i.length && ve(u))) return L.apply(n, i), n;break;
          }
        }
      }return (p || s(e, d))(i, t, !g, n, !t || K.test(e) && ge(t.parentNode) || t), n;
    }, n.sortStable = b.split("").sort(D).join("") === b, n.detectDuplicates = !!f, p(), n.sortDetached = ue(function (e) {
      return 1 & e.compareDocumentPosition(d.createElement("fieldset"));
    }), ue(function (e) {
      return e.innerHTML = "<a href='#'></a>", "#" === e.firstChild.getAttribute("href");
    }) || le("type|href|height|width", function (e, t, n) {
      if (!n) return e.getAttribute(t, "type" === t.toLowerCase() ? 1 : 2);
    }), n.attributes && ue(function (e) {
      return e.innerHTML = "<input/>", e.firstChild.setAttribute("value", ""), "" === e.firstChild.getAttribute("value");
    }) || le("value", function (e, t, n) {
      if (!n && "input" === e.nodeName.toLowerCase()) return e.defaultValue;
    }), ue(function (e) {
      return null == e.getAttribute("disabled");
    }) || le(P, function (e, t, n) {
      var r;if (!n) return !0 === e[t] ? t.toLowerCase() : (r = e.getAttributeNode(t)) && r.specified ? r.value : null;
    }), oe;
  }(e);w.find = E, w.expr = E.selectors, w.expr[":"] = w.expr.pseudos, w.uniqueSort = w.unique = E.uniqueSort, w.text = E.getText, w.isXMLDoc = E.isXML, w.contains = E.contains, w.escapeSelector = E.escape;var k = function k(e, t, n) {
    var r = [],
        i = void 0 !== n;while ((e = e[t]) && 9 !== e.nodeType) {
      if (1 === e.nodeType) {
        if (i && w(e).is(n)) break;r.push(e);
      }
    }return r;
  },
      S = function S(e, t) {
    for (var n = []; e; e = e.nextSibling) {
      1 === e.nodeType && e !== t && n.push(e);
    }return n;
  },
      D = w.expr.match.needsContext;function N(e, t) {
    return e.nodeName && e.nodeName.toLowerCase() === t.toLowerCase();
  }var A = /^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e, t, n) {
    return g(t) ? w.grep(e, function (e, r) {
      return !!t.call(e, r, e) !== n;
    }) : t.nodeType ? w.grep(e, function (e) {
      return e === t !== n;
    }) : "string" != typeof t ? w.grep(e, function (e) {
      return u.call(t, e) > -1 !== n;
    }) : w.filter(t, e, n);
  }w.filter = function (e, t, n) {
    var r = t[0];return n && (e = ":not(" + e + ")"), 1 === t.length && 1 === r.nodeType ? w.find.matchesSelector(r, e) ? [r] : [] : w.find.matches(e, w.grep(t, function (e) {
      return 1 === e.nodeType;
    }));
  }, w.fn.extend({ find: function find(e) {
      var t,
          n,
          r = this.length,
          i = this;if ("string" != typeof e) return this.pushStack(w(e).filter(function () {
        for (t = 0; t < r; t++) {
          if (w.contains(i[t], this)) return !0;
        }
      }));for (n = this.pushStack([]), t = 0; t < r; t++) {
        w.find(e, i[t], n);
      }return r > 1 ? w.uniqueSort(n) : n;
    }, filter: function filter(e) {
      return this.pushStack(j(this, e || [], !1));
    }, not: function not(e) {
      return this.pushStack(j(this, e || [], !0));
    }, is: function is(e) {
      return !!j(this, "string" == typeof e && D.test(e) ? w(e) : e || [], !1).length;
    } });var q,
      L = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(w.fn.init = function (e, t, n) {
    var i, o;if (!e) return this;if (n = n || q, "string" == typeof e) {
      if (!(i = "<" === e[0] && ">" === e[e.length - 1] && e.length >= 3 ? [null, e, null] : L.exec(e)) || !i[1] && t) return !t || t.jquery ? (t || n).find(e) : this.constructor(t).find(e);if (i[1]) {
        if (t = t instanceof w ? t[0] : t, w.merge(this, w.parseHTML(i[1], t && t.nodeType ? t.ownerDocument || t : r, !0)), A.test(i[1]) && w.isPlainObject(t)) for (i in t) {
          g(this[i]) ? this[i](t[i]) : this.attr(i, t[i]);
        }return this;
      }return (o = r.getElementById(i[2])) && (this[0] = o, this.length = 1), this;
    }return e.nodeType ? (this[0] = e, this.length = 1, this) : g(e) ? void 0 !== n.ready ? n.ready(e) : e(w) : w.makeArray(e, this);
  }).prototype = w.fn, q = w(r);var H = /^(?:parents|prev(?:Until|All))/,
      O = { children: !0, contents: !0, next: !0, prev: !0 };w.fn.extend({ has: function has(e) {
      var t = w(e, this),
          n = t.length;return this.filter(function () {
        for (var e = 0; e < n; e++) {
          if (w.contains(this, t[e])) return !0;
        }
      });
    }, closest: function closest(e, t) {
      var n,
          r = 0,
          i = this.length,
          o = [],
          a = "string" != typeof e && w(e);if (!D.test(e)) for (; r < i; r++) {
        for (n = this[r]; n && n !== t; n = n.parentNode) {
          if (n.nodeType < 11 && (a ? a.index(n) > -1 : 1 === n.nodeType && w.find.matchesSelector(n, e))) {
            o.push(n);break;
          }
        }
      }return this.pushStack(o.length > 1 ? w.uniqueSort(o) : o);
    }, index: function index(e) {
      return e ? "string" == typeof e ? u.call(w(e), this[0]) : u.call(this, e.jquery ? e[0] : e) : this[0] && this[0].parentNode ? this.first().prevAll().length : -1;
    }, add: function add(e, t) {
      return this.pushStack(w.uniqueSort(w.merge(this.get(), w(e, t))));
    }, addBack: function addBack(e) {
      return this.add(null == e ? this.prevObject : this.prevObject.filter(e));
    } });function P(e, t) {
    while ((e = e[t]) && 1 !== e.nodeType) {}return e;
  }w.each({ parent: function parent(e) {
      var t = e.parentNode;return t && 11 !== t.nodeType ? t : null;
    }, parents: function parents(e) {
      return k(e, "parentNode");
    }, parentsUntil: function parentsUntil(e, t, n) {
      return k(e, "parentNode", n);
    }, next: function next(e) {
      return P(e, "nextSibling");
    }, prev: function prev(e) {
      return P(e, "previousSibling");
    }, nextAll: function nextAll(e) {
      return k(e, "nextSibling");
    }, prevAll: function prevAll(e) {
      return k(e, "previousSibling");
    }, nextUntil: function nextUntil(e, t, n) {
      return k(e, "nextSibling", n);
    }, prevUntil: function prevUntil(e, t, n) {
      return k(e, "previousSibling", n);
    }, siblings: function siblings(e) {
      return S((e.parentNode || {}).firstChild, e);
    }, children: function children(e) {
      return S(e.firstChild);
    }, contents: function contents(e) {
      return N(e, "iframe") ? e.contentDocument : (N(e, "template") && (e = e.content || e), w.merge([], e.childNodes));
    } }, function (e, t) {
    w.fn[e] = function (n, r) {
      var i = w.map(this, t, n);return "Until" !== e.slice(-5) && (r = n), r && "string" == typeof r && (i = w.filter(r, i)), this.length > 1 && (O[e] || w.uniqueSort(i), H.test(e) && i.reverse()), this.pushStack(i);
    };
  });var M = /[^\x20\t\r\n\f]+/g;function R(e) {
    var t = {};return w.each(e.match(M) || [], function (e, n) {
      t[n] = !0;
    }), t;
  }w.Callbacks = function (e) {
    e = "string" == typeof e ? R(e) : w.extend({}, e);var t,
        n,
        r,
        i,
        o = [],
        a = [],
        s = -1,
        u = function u() {
      for (i = i || e.once, r = t = !0; a.length; s = -1) {
        n = a.shift();while (++s < o.length) {
          !1 === o[s].apply(n[0], n[1]) && e.stopOnFalse && (s = o.length, n = !1);
        }
      }e.memory || (n = !1), t = !1, i && (o = n ? [] : "");
    },
        l = { add: function add() {
        return o && (n && !t && (s = o.length - 1, a.push(n)), function t(n) {
          w.each(n, function (n, r) {
            g(r) ? e.unique && l.has(r) || o.push(r) : r && r.length && "string" !== x(r) && t(r);
          });
        }(arguments), n && !t && u()), this;
      }, remove: function remove() {
        return w.each(arguments, function (e, t) {
          var n;while ((n = w.inArray(t, o, n)) > -1) {
            o.splice(n, 1), n <= s && s--;
          }
        }), this;
      }, has: function has(e) {
        return e ? w.inArray(e, o) > -1 : o.length > 0;
      }, empty: function empty() {
        return o && (o = []), this;
      }, disable: function disable() {
        return i = a = [], o = n = "", this;
      }, disabled: function disabled() {
        return !o;
      }, lock: function lock() {
        return i = a = [], n || t || (o = n = ""), this;
      }, locked: function locked() {
        return !!i;
      }, fireWith: function fireWith(e, n) {
        return i || (n = [e, (n = n || []).slice ? n.slice() : n], a.push(n), t || u()), this;
      }, fire: function fire() {
        return l.fireWith(this, arguments), this;
      }, fired: function fired() {
        return !!r;
      } };return l;
  };function I(e) {
    return e;
  }function W(e) {
    throw e;
  }function $(e, t, n, r) {
    var i;try {
      e && g(i = e.promise) ? i.call(e).done(t).fail(n) : e && g(i = e.then) ? i.call(e, t, n) : t.apply(void 0, [e].slice(r));
    } catch (e) {
      n.apply(void 0, [e]);
    }
  }w.extend({ Deferred: function Deferred(t) {
      var n = [["notify", "progress", w.Callbacks("memory"), w.Callbacks("memory"), 2], ["resolve", "done", w.Callbacks("once memory"), w.Callbacks("once memory"), 0, "resolved"], ["reject", "fail", w.Callbacks("once memory"), w.Callbacks("once memory"), 1, "rejected"]],
          r = "pending",
          i = { state: function state() {
          return r;
        }, always: function always() {
          return o.done(arguments).fail(arguments), this;
        }, "catch": function _catch(e) {
          return i.then(null, e);
        }, pipe: function pipe() {
          var e = arguments;return w.Deferred(function (t) {
            w.each(n, function (n, r) {
              var i = g(e[r[4]]) && e[r[4]];o[r[1]](function () {
                var e = i && i.apply(this, arguments);e && g(e.promise) ? e.promise().progress(t.notify).done(t.resolve).fail(t.reject) : t[r[0] + "With"](this, i ? [e] : arguments);
              });
            }), e = null;
          }).promise();
        }, then: function then(t, r, i) {
          var o = 0;function a(t, n, r, i) {
            return function () {
              var s = this,
                  u = arguments,
                  l = function l() {
                var e, l;if (!(t < o)) {
                  if ((e = r.apply(s, u)) === n.promise()) throw new TypeError("Thenable self-resolution");l = e && ("object" == (typeof e === "undefined" ? "undefined" : __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_typeof___default()(e)) || "function" == typeof e) && e.then, g(l) ? i ? l.call(e, a(o, n, I, i), a(o, n, W, i)) : (o++, l.call(e, a(o, n, I, i), a(o, n, W, i), a(o, n, I, n.notifyWith))) : (r !== I && (s = void 0, u = [e]), (i || n.resolveWith)(s, u));
                }
              },
                  c = i ? l : function () {
                try {
                  l();
                } catch (e) {
                  w.Deferred.exceptionHook && w.Deferred.exceptionHook(e, c.stackTrace), t + 1 >= o && (r !== W && (s = void 0, u = [e]), n.rejectWith(s, u));
                }
              };t ? c() : (w.Deferred.getStackHook && (c.stackTrace = w.Deferred.getStackHook()), e.setTimeout(c));
            };
          }return w.Deferred(function (e) {
            n[0][3].add(a(0, e, g(i) ? i : I, e.notifyWith)), n[1][3].add(a(0, e, g(t) ? t : I)), n[2][3].add(a(0, e, g(r) ? r : W));
          }).promise();
        }, promise: function promise(e) {
          return null != e ? w.extend(e, i) : i;
        } },
          o = {};return w.each(n, function (e, t) {
        var a = t[2],
            s = t[5];i[t[1]] = a.add, s && a.add(function () {
          r = s;
        }, n[3 - e][2].disable, n[3 - e][3].disable, n[0][2].lock, n[0][3].lock), a.add(t[3].fire), o[t[0]] = function () {
          return o[t[0] + "With"](this === o ? void 0 : this, arguments), this;
        }, o[t[0] + "With"] = a.fireWith;
      }), i.promise(o), t && t.call(o, o), o;
    }, when: function when(e) {
      var t = arguments.length,
          n = t,
          r = Array(n),
          i = o.call(arguments),
          a = w.Deferred(),
          s = function s(e) {
        return function (n) {
          r[e] = this, i[e] = arguments.length > 1 ? o.call(arguments) : n, --t || a.resolveWith(r, i);
        };
      };if (t <= 1 && ($(e, a.done(s(n)).resolve, a.reject, !t), "pending" === a.state() || g(i[n] && i[n].then))) return a.then();while (n--) {
        $(i[n], s(n), a.reject);
      }return a.promise();
    } });var B = /^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;w.Deferred.exceptionHook = function (t, n) {
    e.console && e.console.warn && t && B.test(t.name) && e.console.warn("jQuery.Deferred exception: " + t.message, t.stack, n);
  }, w.readyException = function (t) {
    e.setTimeout(function () {
      throw t;
    });
  };var F = w.Deferred();w.fn.ready = function (e) {
    return F.then(e)["catch"](function (e) {
      w.readyException(e);
    }), this;
  }, w.extend({ isReady: !1, readyWait: 1, ready: function ready(e) {
      (!0 === e ? --w.readyWait : w.isReady) || (w.isReady = !0, !0 !== e && --w.readyWait > 0 || F.resolveWith(r, [w]));
    } }), w.ready.then = F.then;function _() {
    r.removeEventListener("DOMContentLoaded", _), e.removeEventListener("load", _), w.ready();
  }"complete" === r.readyState || "loading" !== r.readyState && !r.documentElement.doScroll ? e.setTimeout(w.ready) : (r.addEventListener("DOMContentLoaded", _), e.addEventListener("load", _));var z = function z(e, t, n, r, i, o, a) {
    var s = 0,
        u = e.length,
        l = null == n;if ("object" === x(n)) {
      i = !0;for (s in n) {
        z(e, t, s, n[s], !0, o, a);
      }
    } else if (void 0 !== r && (i = !0, g(r) || (a = !0), l && (a ? (t.call(e, r), t = null) : (l = t, t = function t(e, _t2, n) {
      return l.call(w(e), n);
    })), t)) for (; s < u; s++) {
      t(e[s], n, a ? r : r.call(e[s], s, t(e[s], n)));
    }return i ? e : l ? t.call(e) : u ? t(e[0], n) : o;
  },
      X = /^-ms-/,
      U = /-([a-z])/g;function V(e, t) {
    return t.toUpperCase();
  }function G(e) {
    return e.replace(X, "ms-").replace(U, V);
  }var Y = function Y(e) {
    return 1 === e.nodeType || 9 === e.nodeType || !+e.nodeType;
  };function Q() {
    this.expando = w.expando + Q.uid++;
  }Q.uid = 1, Q.prototype = { cache: function cache(e) {
      var t = e[this.expando];return t || (t = {}, Y(e) && (e.nodeType ? e[this.expando] = t : __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_define_property___default()(e, this.expando, { value: t, configurable: !0 }))), t;
    }, set: function set(e, t, n) {
      var r,
          i = this.cache(e);if ("string" == typeof t) i[G(t)] = n;else for (r in t) {
        i[G(r)] = t[r];
      }return i;
    }, get: function get(e, t) {
      return void 0 === t ? this.cache(e) : e[this.expando] && e[this.expando][G(t)];
    }, access: function access(e, t, n) {
      return void 0 === t || t && "string" == typeof t && void 0 === n ? this.get(e, t) : (this.set(e, t, n), void 0 !== n ? n : t);
    }, remove: function remove(e, t) {
      var n,
          r = e[this.expando];if (void 0 !== r) {
        if (void 0 !== t) {
          n = (t = Array.isArray(t) ? t.map(G) : (t = G(t)) in r ? [t] : t.match(M) || []).length;while (n--) {
            delete r[t[n]];
          }
        }(void 0 === t || w.isEmptyObject(r)) && (e.nodeType ? e[this.expando] = void 0 : delete e[this.expando]);
      }
    }, hasData: function hasData(e) {
      var t = e[this.expando];return void 0 !== t && !w.isEmptyObject(t);
    } };var J = new Q(),
      K = new Q(),
      Z = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,
      ee = /[A-Z]/g;function te(e) {
    return "true" === e || "false" !== e && ("null" === e ? null : e === +e + "" ? +e : Z.test(e) ? JSON.parse(e) : e);
  }function ne(e, t, n) {
    var r;if (void 0 === n && 1 === e.nodeType) if (r = "data-" + t.replace(ee, "-$&").toLowerCase(), "string" == typeof (n = e.getAttribute(r))) {
      try {
        n = te(n);
      } catch (e) {}K.set(e, t, n);
    } else n = void 0;return n;
  }w.extend({ hasData: function hasData(e) {
      return K.hasData(e) || J.hasData(e);
    }, data: function data(e, t, n) {
      return K.access(e, t, n);
    }, removeData: function removeData(e, t) {
      K.remove(e, t);
    }, _data: function _data(e, t, n) {
      return J.access(e, t, n);
    }, _removeData: function _removeData(e, t) {
      J.remove(e, t);
    } }), w.fn.extend({ data: function data(e, t) {
      var n,
          r,
          i,
          o = this[0],
          a = o && o.attributes;if (void 0 === e) {
        if (this.length && (i = K.get(o), 1 === o.nodeType && !J.get(o, "hasDataAttrs"))) {
          n = a.length;while (n--) {
            a[n] && 0 === (r = a[n].name).indexOf("data-") && (r = G(r.slice(5)), ne(o, r, i[r]));
          }J.set(o, "hasDataAttrs", !0);
        }return i;
      }return "object" == (typeof e === "undefined" ? "undefined" : __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_typeof___default()(e)) ? this.each(function () {
        K.set(this, e);
      }) : z(this, function (t) {
        var n;if (o && void 0 === t) {
          if (void 0 !== (n = K.get(o, e))) return n;if (void 0 !== (n = ne(o, e))) return n;
        } else this.each(function () {
          K.set(this, e, t);
        });
      }, null, t, arguments.length > 1, null, !0);
    }, removeData: function removeData(e) {
      return this.each(function () {
        K.remove(this, e);
      });
    } }), w.extend({ queue: function queue(e, t, n) {
      var r;if (e) return t = (t || "fx") + "queue", r = J.get(e, t), n && (!r || Array.isArray(n) ? r = J.access(e, t, w.makeArray(n)) : r.push(n)), r || [];
    }, dequeue: function dequeue(e, t) {
      t = t || "fx";var n = w.queue(e, t),
          r = n.length,
          i = n.shift(),
          o = w._queueHooks(e, t),
          a = function a() {
        w.dequeue(e, t);
      };"inprogress" === i && (i = n.shift(), r--), i && ("fx" === t && n.unshift("inprogress"), delete o.stop, i.call(e, a, o)), !r && o && o.empty.fire();
    }, _queueHooks: function _queueHooks(e, t) {
      var n = t + "queueHooks";return J.get(e, n) || J.access(e, n, { empty: w.Callbacks("once memory").add(function () {
          J.remove(e, [t + "queue", n]);
        }) });
    } }), w.fn.extend({ queue: function queue(e, t) {
      var n = 2;return "string" != typeof e && (t = e, e = "fx", n--), arguments.length < n ? w.queue(this[0], e) : void 0 === t ? this : this.each(function () {
        var n = w.queue(this, e, t);w._queueHooks(this, e), "fx" === e && "inprogress" !== n[0] && w.dequeue(this, e);
      });
    }, dequeue: function dequeue(e) {
      return this.each(function () {
        w.dequeue(this, e);
      });
    }, clearQueue: function clearQueue(e) {
      return this.queue(e || "fx", []);
    }, promise: function promise(e, t) {
      var n,
          r = 1,
          i = w.Deferred(),
          o = this,
          a = this.length,
          s = function s() {
        --r || i.resolveWith(o, [o]);
      };"string" != typeof e && (t = e, e = void 0), e = e || "fx";while (a--) {
        (n = J.get(o[a], e + "queueHooks")) && n.empty && (r++, n.empty.add(s));
      }return s(), i.promise(t);
    } });var re = /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,
      ie = new RegExp("^(?:([+-])=|)(" + re + ")([a-z%]*)$", "i"),
      oe = ["Top", "Right", "Bottom", "Left"],
      ae = function ae(e, t) {
    return "none" === (e = t || e).style.display || "" === e.style.display && w.contains(e.ownerDocument, e) && "none" === w.css(e, "display");
  },
      se = function se(e, t, n, r) {
    var i,
        o,
        a = {};for (o in t) {
      a[o] = e.style[o], e.style[o] = t[o];
    }i = n.apply(e, r || []);for (o in t) {
      e.style[o] = a[o];
    }return i;
  };function ue(e, t, n, r) {
    var i,
        o,
        a = 20,
        s = r ? function () {
      return r.cur();
    } : function () {
      return w.css(e, t, "");
    },
        u = s(),
        l = n && n[3] || (w.cssNumber[t] ? "" : "px"),
        c = (w.cssNumber[t] || "px" !== l && +u) && ie.exec(w.css(e, t));if (c && c[3] !== l) {
      u /= 2, l = l || c[3], c = +u || 1;while (a--) {
        w.style(e, t, c + l), (1 - o) * (1 - (o = s() / u || .5)) <= 0 && (a = 0), c /= o;
      }c *= 2, w.style(e, t, c + l), n = n || [];
    }return n && (c = +c || +u || 0, i = n[1] ? c + (n[1] + 1) * n[2] : +n[2], r && (r.unit = l, r.start = c, r.end = i)), i;
  }var le = {};function ce(e) {
    var t,
        n = e.ownerDocument,
        r = e.nodeName,
        i = le[r];return i || (t = n.body.appendChild(n.createElement(r)), i = w.css(t, "display"), t.parentNode.removeChild(t), "none" === i && (i = "block"), le[r] = i, i);
  }function fe(e, t) {
    for (var n, r, i = [], o = 0, a = e.length; o < a; o++) {
      (r = e[o]).style && (n = r.style.display, t ? ("none" === n && (i[o] = J.get(r, "display") || null, i[o] || (r.style.display = "")), "" === r.style.display && ae(r) && (i[o] = ce(r))) : "none" !== n && (i[o] = "none", J.set(r, "display", n)));
    }for (o = 0; o < a; o++) {
      null != i[o] && (e[o].style.display = i[o]);
    }return e;
  }w.fn.extend({ show: function show() {
      return fe(this, !0);
    }, hide: function hide() {
      return fe(this);
    }, toggle: function toggle(e) {
      return "boolean" == typeof e ? e ? this.show() : this.hide() : this.each(function () {
        ae(this) ? w(this).show() : w(this).hide();
      });
    } });var pe = /^(?:checkbox|radio)$/i,
      de = /<([a-z][^\/\0>\x20\t\r\n\f]+)/i,
      he = /^$|^module$|\/(?:java|ecma)script/i,
      ge = { 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, "", ""] };ge.optgroup = ge.option, ge.tbody = ge.tfoot = ge.colgroup = ge.caption = ge.thead, ge.th = ge.td;function ye(e, t) {
    var n;return n = "undefined" != typeof e.getElementsByTagName ? e.getElementsByTagName(t || "*") : "undefined" != typeof e.querySelectorAll ? e.querySelectorAll(t || "*") : [], void 0 === t || t && N(e, t) ? w.merge([e], n) : n;
  }function ve(e, t) {
    for (var n = 0, r = e.length; n < r; n++) {
      J.set(e[n], "globalEval", !t || J.get(t[n], "globalEval"));
    }
  }var me = /<|&#?\w+;/;function xe(e, t, n, r, i) {
    for (var o, a, s, u, l, c, f = t.createDocumentFragment(), p = [], d = 0, h = e.length; d < h; d++) {
      if ((o = e[d]) || 0 === o) if ("object" === x(o)) w.merge(p, o.nodeType ? [o] : o);else if (me.test(o)) {
        a = a || f.appendChild(t.createElement("div")), s = (de.exec(o) || ["", ""])[1].toLowerCase(), u = ge[s] || ge._default, a.innerHTML = u[1] + w.htmlPrefilter(o) + u[2], c = u[0];while (c--) {
          a = a.lastChild;
        }w.merge(p, a.childNodes), (a = f.firstChild).textContent = "";
      } else p.push(t.createTextNode(o));
    }f.textContent = "", d = 0;while (o = p[d++]) {
      if (r && w.inArray(o, r) > -1) i && i.push(o);else if (l = w.contains(o.ownerDocument, o), a = ye(f.appendChild(o), "script"), l && ve(a), n) {
        c = 0;while (o = a[c++]) {
          he.test(o.type || "") && n.push(o);
        }
      }
    }return f;
  }!function () {
    var e = r.createDocumentFragment().appendChild(r.createElement("div")),
        t = r.createElement("input");t.setAttribute("type", "radio"), t.setAttribute("checked", "checked"), t.setAttribute("name", "t"), e.appendChild(t), h.checkClone = e.cloneNode(!0).cloneNode(!0).lastChild.checked, e.innerHTML = "<textarea>x</textarea>", h.noCloneChecked = !!e.cloneNode(!0).lastChild.defaultValue;
  }();var be = r.documentElement,
      we = /^key/,
      Te = /^(?:mouse|pointer|contextmenu|drag|drop)|click/,
      Ce = /^([^.]*)(?:\.(.+)|)/;function Ee() {
    return !0;
  }function ke() {
    return !1;
  }function Se() {
    try {
      return r.activeElement;
    } catch (e) {}
  }function De(e, t, n, r, i, o) {
    var a, s;if ("object" == (typeof t === "undefined" ? "undefined" : __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_typeof___default()(t))) {
      "string" != typeof n && (r = r || n, n = void 0);for (s in t) {
        De(e, s, n, r, t[s], o);
      }return e;
    }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 = ke;else if (!i) return e;return 1 === o && (a = i, (i = function i(e) {
      return w().off(e), a.apply(this, arguments);
    }).guid = a.guid || (a.guid = w.guid++)), e.each(function () {
      w.event.add(this, t, i, r, n);
    });
  }w.event = { global: {}, add: function add(e, t, n, r, i) {
      var o,
          a,
          s,
          u,
          l,
          c,
          f,
          p,
          d,
          h,
          g,
          y = J.get(e);if (y) {
        n.handler && (n = (o = n).handler, i = o.selector), i && w.find.matchesSelector(be, i), n.guid || (n.guid = w.guid++), (u = y.events) || (u = y.events = {}), (a = y.handle) || (a = y.handle = function (t) {
          return "undefined" != typeof w && w.event.triggered !== t.type ? w.event.dispatch.apply(e, arguments) : void 0;
        }), l = (t = (t || "").match(M) || [""]).length;while (l--) {
          d = g = (s = Ce.exec(t[l]) || [])[1], h = (s[2] || "").split(".").sort(), d && (f = w.event.special[d] || {}, d = (i ? f.delegateType : f.bindType) || d, f = w.event.special[d] || {}, c = w.extend({ type: d, origType: g, data: r, handler: n, guid: n.guid, selector: i, needsContext: i && w.expr.match.needsContext.test(i), namespace: h.join(".") }, o), (p = u[d]) || ((p = u[d] = []).delegateCount = 0, f.setup && !1 !== f.setup.call(e, r, h, a) || e.addEventListener && e.addEventListener(d, a)), f.add && (f.add.call(e, c), c.handler.guid || (c.handler.guid = n.guid)), i ? p.splice(p.delegateCount++, 0, c) : p.push(c), w.event.global[d] = !0);
        }
      }
    }, remove: function remove(e, t, n, r, i) {
      var o,
          a,
          s,
          u,
          l,
          c,
          f,
          p,
          d,
          h,
          g,
          y = J.hasData(e) && J.get(e);if (y && (u = y.events)) {
        l = (t = (t || "").match(M) || [""]).length;while (l--) {
          if (s = Ce.exec(t[l]) || [], d = g = s[1], h = (s[2] || "").split(".").sort(), d) {
            f = w.event.special[d] || {}, p = u[d = (r ? f.delegateType : f.bindType) || d] || [], s = s[2] && new RegExp("(^|\\.)" + h.join("\\.(?:.*\\.|)") + "(\\.|$)"), a = o = p.length;while (o--) {
              c = p[o], !i && g !== c.origType || n && n.guid !== c.guid || s && !s.test(c.namespace) || r && r !== c.selector && ("**" !== r || !c.selector) || (p.splice(o, 1), c.selector && p.delegateCount--, f.remove && f.remove.call(e, c));
            }a && !p.length && (f.teardown && !1 !== f.teardown.call(e, h, y.handle) || w.removeEvent(e, d, y.handle), delete u[d]);
          } else for (d in u) {
            w.event.remove(e, d + t[l], n, r, !0);
          }
        }w.isEmptyObject(u) && J.remove(e, "handle events");
      }
    }, dispatch: function dispatch(e) {
      var t = w.event.fix(e),
          n,
          r,
          i,
          o,
          a,
          s,
          u = new Array(arguments.length),
          l = (J.get(this, "events") || {})[t.type] || [],
          c = w.event.special[t.type] || {};for (u[0] = t, n = 1; n < arguments.length; n++) {
        u[n] = arguments[n];
      }if (t.delegateTarget = this, !c.preDispatch || !1 !== c.preDispatch.call(this, t)) {
        s = w.event.handlers.call(this, t, l), n = 0;while ((o = s[n++]) && !t.isPropagationStopped()) {
          t.currentTarget = o.elem, r = 0;while ((a = o.handlers[r++]) && !t.isImmediatePropagationStopped()) {
            t.rnamespace && !t.rnamespace.test(a.namespace) || (t.handleObj = a, t.data = a.data, void 0 !== (i = ((w.event.special[a.origType] || {}).handle || a.handler).apply(o.elem, u)) && !1 === (t.result = i) && (t.preventDefault(), t.stopPropagation()));
          }
        }return c.postDispatch && c.postDispatch.call(this, t), t.result;
      }
    }, handlers: function handlers(e, t) {
      var n,
          r,
          i,
          o,
          a,
          s = [],
          u = t.delegateCount,
          l = e.target;if (u && l.nodeType && !("click" === e.type && e.button >= 1)) for (; l !== this; l = l.parentNode || this) {
        if (1 === l.nodeType && ("click" !== e.type || !0 !== l.disabled)) {
          for (o = [], a = {}, n = 0; n < u; n++) {
            void 0 === a[i = (r = t[n]).selector + " "] && (a[i] = r.needsContext ? w(i, this).index(l) > -1 : w.find(i, this, null, [l]).length), a[i] && o.push(r);
          }o.length && s.push({ elem: l, handlers: o });
        }
      }return l = this, u < t.length && s.push({ elem: l, handlers: t.slice(u) }), s;
    }, addProp: function addProp(e, t) {
      __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_define_property___default()(w.Event.prototype, e, { enumerable: !0, configurable: !0, get: g(t) ? function () {
          if (this.originalEvent) return t(this.originalEvent);
        } : function () {
          if (this.originalEvent) return this.originalEvent[e];
        }, set: function set(t) {
          __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_define_property___default()(this, e, { enumerable: !0, configurable: !0, writable: !0, value: t });
        } });
    }, fix: function fix(e) {
      return e[w.expando] ? e : new w.Event(e);
    }, special: { load: { noBubble: !0 }, focus: { trigger: function trigger() {
          if (this !== Se() && this.focus) return this.focus(), !1;
        }, delegateType: "focusin" }, blur: { trigger: function trigger() {
          if (this === Se() && this.blur) return this.blur(), !1;
        }, delegateType: "focusout" }, click: { trigger: function trigger() {
          if ("checkbox" === this.type && this.click && N(this, "input")) return this.click(), !1;
        }, _default: function _default(e) {
          return N(e.target, "a");
        } }, beforeunload: { postDispatch: function postDispatch(e) {
          void 0 !== e.result && e.originalEvent && (e.originalEvent.returnValue = e.result);
        } } } }, w.removeEvent = function (e, t, n) {
    e.removeEventListener && e.removeEventListener(t, n);
  }, w.Event = function (e, t) {
    if (!(this instanceof w.Event)) return new w.Event(e, t);e && e.type ? (this.originalEvent = e, this.type = e.type, this.isDefaultPrevented = e.defaultPrevented || void 0 === e.defaultPrevented && !1 === e.returnValue ? Ee : ke, this.target = e.target && 3 === e.target.nodeType ? e.target.parentNode : e.target, this.currentTarget = e.currentTarget, this.relatedTarget = e.relatedTarget) : this.type = e, t && w.extend(this, t), this.timeStamp = e && e.timeStamp || Date.now(), this[w.expando] = !0;
  }, w.Event.prototype = { constructor: w.Event, isDefaultPrevented: ke, isPropagationStopped: ke, isImmediatePropagationStopped: ke, isSimulated: !1, preventDefault: function preventDefault() {
      var e = this.originalEvent;this.isDefaultPrevented = Ee, e && !this.isSimulated && e.preventDefault();
    }, stopPropagation: function stopPropagation() {
      var e = this.originalEvent;this.isPropagationStopped = Ee, e && !this.isSimulated && e.stopPropagation();
    }, stopImmediatePropagation: function stopImmediatePropagation() {
      var e = this.originalEvent;this.isImmediatePropagationStopped = Ee, e && !this.isSimulated && e.stopImmediatePropagation(), this.stopPropagation();
    } }, w.each({ altKey: !0, bubbles: !0, cancelable: !0, changedTouches: !0, ctrlKey: !0, detail: !0, eventPhase: !0, metaKey: !0, pageX: !0, pageY: !0, shiftKey: !0, view: !0, "char": !0, charCode: !0, key: !0, keyCode: !0, button: !0, buttons: !0, clientX: !0, clientY: !0, offsetX: !0, offsetY: !0, pointerId: !0, pointerType: !0, screenX: !0, screenY: !0, targetTouches: !0, toElement: !0, touches: !0, which: function which(e) {
      var t = e.button;return null == e.which && we.test(e.type) ? null != e.charCode ? e.charCode : e.keyCode : !e.which && void 0 !== t && Te.test(e.type) ? 1 & t ? 1 : 2 & t ? 3 : 4 & t ? 2 : 0 : e.which;
    } }, w.event.addProp), w.each({ mouseenter: "mouseover", mouseleave: "mouseout", pointerenter: "pointerover", pointerleave: "pointerout" }, function (e, t) {
    w.event.special[e] = { delegateType: t, bindType: t, handle: function handle(e) {
        var n,
            r = this,
            i = e.relatedTarget,
            o = e.handleObj;return i && (i === r || w.contains(r, i)) || (e.type = o.origType, n = o.handler.apply(this, arguments), e.type = t), n;
      } };
  }), w.fn.extend({ on: function on(e, t, n, r) {
      return De(this, e, t, n, r);
    }, one: function one(e, t, n, r) {
      return De(this, e, t, n, r, 1);
    }, off: function off(e, t, n) {
      var r, i;if (e && e.preventDefault && e.handleObj) return r = e.handleObj, w(e.delegateTarget).off(r.namespace ? r.origType + "." + r.namespace : r.origType, r.selector, r.handler), this;if ("object" == (typeof e === "undefined" ? "undefined" : __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_typeof___default()(e))) {
        for (i in e) {
          this.off(i, t, e[i]);
        }return this;
      }return !1 !== t && "function" != typeof t || (n = t, t = void 0), !1 === n && (n = ke), this.each(function () {
        w.event.remove(this, e, n, t);
      });
    } });var Ne = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi,
      Ae = /<script|<style|<link/i,
      je = /checked\s*(?:[^=]|=\s*.checked.)/i,
      qe = /^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function Le(e, t) {
    return N(e, "table") && N(11 !== t.nodeType ? t : t.firstChild, "tr") ? w(e).children("tbody")[0] || e : e;
  }function He(e) {
    return e.type = (null !== e.getAttribute("type")) + "/" + e.type, e;
  }function Oe(e) {
    return "true/" === (e.type || "").slice(0, 5) ? e.type = e.type.slice(5) : e.removeAttribute("type"), e;
  }function Pe(e, t) {
    var n, r, i, o, a, s, u, l;if (1 === t.nodeType) {
      if (J.hasData(e) && (o = J.access(e), a = J.set(t, o), l = o.events)) {
        delete a.handle, a.events = {};for (i in l) {
          for (n = 0, r = l[i].length; n < r; n++) {
            w.event.add(t, i, l[i][n]);
          }
        }
      }K.hasData(e) && (s = K.access(e), u = w.extend({}, s), K.set(t, u));
    }
  }function Me(e, t) {
    var n = t.nodeName.toLowerCase();"input" === n && pe.test(e.type) ? t.checked = e.checked : "input" !== n && "textarea" !== n || (t.defaultValue = e.defaultValue);
  }function Re(e, t, n, r) {
    t = a.apply([], t);var i,
        o,
        s,
        u,
        l,
        c,
        f = 0,
        p = e.length,
        d = p - 1,
        y = t[0],
        v = g(y);if (v || p > 1 && "string" == typeof y && !h.checkClone && je.test(y)) return e.each(function (i) {
      var o = e.eq(i);v && (t[0] = y.call(this, i, o.html())), Re(o, t, n, r);
    });if (p && (i = xe(t, e[0].ownerDocument, !1, e, r), o = i.firstChild, 1 === i.childNodes.length && (i = o), o || r)) {
      for (u = (s = w.map(ye(i, "script"), He)).length; f < p; f++) {
        l = i, f !== d && (l = w.clone(l, !0, !0), u && w.merge(s, ye(l, "script"))), n.call(e[f], l, f);
      }if (u) for (c = s[s.length - 1].ownerDocument, w.map(s, Oe), f = 0; f < u; f++) {
        l = s[f], he.test(l.type || "") && !J.access(l, "globalEval") && w.contains(c, l) && (l.src && "module" !== (l.type || "").toLowerCase() ? w._evalUrl && w._evalUrl(l.src) : m(l.textContent.replace(qe, ""), c, l));
      }
    }return e;
  }function Ie(e, t, n) {
    for (var r, i = t ? w.filter(t, e) : e, o = 0; null != (r = i[o]); o++) {
      n || 1 !== r.nodeType || w.cleanData(ye(r)), r.parentNode && (n && w.contains(r.ownerDocument, r) && ve(ye(r, "script")), r.parentNode.removeChild(r));
    }return e;
  }w.extend({ htmlPrefilter: function htmlPrefilter(e) {
      return e.replace(Ne, "<$1></$2>");
    }, clone: function clone(e, t, n) {
      var r,
          i,
          o,
          a,
          s = e.cloneNode(!0),
          u = w.contains(e.ownerDocument, e);if (!(h.noCloneChecked || 1 !== e.nodeType && 11 !== e.nodeType || w.isXMLDoc(e))) for (a = ye(s), r = 0, i = (o = ye(e)).length; r < i; r++) {
        Me(o[r], a[r]);
      }if (t) if (n) for (o = o || ye(e), a = a || ye(s), r = 0, i = o.length; r < i; r++) {
        Pe(o[r], a[r]);
      } else Pe(e, s);return (a = ye(s, "script")).length > 0 && ve(a, !u && ye(e, "script")), s;
    }, cleanData: function cleanData(e) {
      for (var t, n, r, i = w.event.special, o = 0; void 0 !== (n = e[o]); o++) {
        if (Y(n)) {
          if (t = n[J.expando]) {
            if (t.events) for (r in t.events) {
              i[r] ? w.event.remove(n, r) : w.removeEvent(n, r, t.handle);
            }n[J.expando] = void 0;
          }n[K.expando] && (n[K.expando] = void 0);
        }
      }
    } }), w.fn.extend({ detach: function detach(e) {
      return Ie(this, e, !0);
    }, remove: function remove(e) {
      return Ie(this, e);
    }, text: function text(e) {
      return z(this, function (e) {
        return void 0 === e ? w.text(this) : this.empty().each(function () {
          1 !== this.nodeType && 11 !== this.nodeType && 9 !== this.nodeType || (this.textContent = e);
        });
      }, null, e, arguments.length);
    }, append: function append() {
      return Re(this, arguments, function (e) {
        1 !== this.nodeType && 11 !== this.nodeType && 9 !== this.nodeType || Le(this, e).appendChild(e);
      });
    }, prepend: function prepend() {
      return Re(this, arguments, function (e) {
        if (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) {
          var t = Le(this, e);t.insertBefore(e, t.firstChild);
        }
      });
    }, before: function before() {
      return Re(this, arguments, function (e) {
        this.parentNode && this.parentNode.insertBefore(e, this);
      });
    }, after: function after() {
      return Re(this, arguments, function (e) {
        this.parentNode && this.parentNode.insertBefore(e, this.nextSibling);
      });
    }, empty: function empty() {
      for (var e, t = 0; null != (e = this[t]); t++) {
        1 === e.nodeType && (w.cleanData(ye(e, !1)), e.textContent = "");
      }return this;
    }, clone: function clone(e, t) {
      return e = null != e && e, t = null == t ? e : t, this.map(function () {
        return w.clone(this, e, t);
      });
    }, html: function html(e) {
      return z(this, function (e) {
        var t = this[0] || {},
            n = 0,
            r = this.length;if (void 0 === e && 1 === t.nodeType) return t.innerHTML;if ("string" == typeof e && !Ae.test(e) && !ge[(de.exec(e) || ["", ""])[1].toLowerCase()]) {
          e = w.htmlPrefilter(e);try {
            for (; n < r; n++) {
              1 === (t = this[n] || {}).nodeType && (w.cleanData(ye(t, !1)), t.innerHTML = e);
            }t = 0;
          } catch (e) {}
        }t && this.empty().append(e);
      }, null, e, arguments.length);
    }, replaceWith: function replaceWith() {
      var e = [];return Re(this, arguments, function (t) {
        var n = this.parentNode;w.inArray(this, e) < 0 && (w.cleanData(ye(this)), n && n.replaceChild(t, this));
      }, e);
    } }), w.each({ appendTo: "append", prependTo: "prepend", insertBefore: "before", insertAfter: "after", replaceAll: "replaceWith" }, function (e, t) {
    w.fn[e] = function (e) {
      for (var n, r = [], i = w(e), o = i.length - 1, a = 0; a <= o; a++) {
        n = a === o ? this : this.clone(!0), w(i[a])[t](n), s.apply(r, n.get());
      }return this.pushStack(r);
    };
  });var We = new RegExp("^(" + re + ")(?!px)[a-z%]+$", "i"),
      $e = function $e(t) {
    var n = t.ownerDocument.defaultView;return n && n.opener || (n = e), n.getComputedStyle(t);
  },
      Be = new RegExp(oe.join("|"), "i");!function () {
    function t() {
      if (c) {
        l.style.cssText = "position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0", c.style.cssText = "position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%", be.appendChild(l).appendChild(c);var t = e.getComputedStyle(c);i = "1%" !== t.top, u = 12 === n(t.marginLeft), c.style.right = "60%", s = 36 === n(t.right), o = 36 === n(t.width), c.style.position = "absolute", a = 36 === c.offsetWidth || "absolute", be.removeChild(l), c = null;
      }
    }function n(e) {
      return Math.round(parseFloat(e));
    }var i,
        o,
        a,
        s,
        u,
        l = r.createElement("div"),
        c = r.createElement("div");c.style && (c.style.backgroundClip = "content-box", c.cloneNode(!0).style.backgroundClip = "", h.clearCloneStyle = "content-box" === c.style.backgroundClip, w.extend(h, { boxSizingReliable: function boxSizingReliable() {
        return t(), o;
      }, pixelBoxStyles: function pixelBoxStyles() {
        return t(), s;
      }, pixelPosition: function pixelPosition() {
        return t(), i;
      }, reliableMarginLeft: function reliableMarginLeft() {
        return t(), u;
      }, scrollboxSize: function scrollboxSize() {
        return t(), a;
      } }));
  }();function Fe(e, t, n) {
    var r,
        i,
        o,
        a,
        s = e.style;return (n = n || $e(e)) && ("" !== (a = n.getPropertyValue(t) || n[t]) || w.contains(e.ownerDocument, e) || (a = w.style(e, t)), !h.pixelBoxStyles() && We.test(a) && Be.test(t) && (r = s.width, i = s.minWidth, o = s.maxWidth, s.minWidth = s.maxWidth = s.width = a, a = n.width, s.width = r, s.minWidth = i, s.maxWidth = o)), void 0 !== a ? a + "" : a;
  }function _e(e, t) {
    return { get: function get() {
        if (!e()) return (this.get = t).apply(this, arguments);delete this.get;
      } };
  }var ze = /^(none|table(?!-c[ea]).+)/,
      Xe = /^--/,
      Ue = { position: "absolute", visibility: "hidden", display: "block" },
      Ve = { letterSpacing: "0", fontWeight: "400" },
      Ge = ["Webkit", "Moz", "ms"],
      Ye = r.createElement("div").style;function Qe(e) {
    if (e in Ye) return e;var t = e[0].toUpperCase() + e.slice(1),
        n = Ge.length;while (n--) {
      if ((e = Ge[n] + t) in Ye) return e;
    }
  }function Je(e) {
    var t = w.cssProps[e];return t || (t = w.cssProps[e] = Qe(e) || e), t;
  }function Ke(e, t, n) {
    var r = ie.exec(t);return r ? Math.max(0, r[2] - (n || 0)) + (r[3] || "px") : t;
  }function Ze(e, t, n, r, i, o) {
    var a = "width" === t ? 1 : 0,
        s = 0,
        u = 0;if (n === (r ? "border" : "content")) return 0;for (; a < 4; a += 2) {
      "margin" === n && (u += w.css(e, n + oe[a], !0, i)), r ? ("content" === n && (u -= w.css(e, "padding" + oe[a], !0, i)), "margin" !== n && (u -= w.css(e, "border" + oe[a] + "Width", !0, i))) : (u += w.css(e, "padding" + oe[a], !0, i), "padding" !== n ? u += w.css(e, "border" + oe[a] + "Width", !0, i) : s += w.css(e, "border" + oe[a] + "Width", !0, i));
    }return !r && o >= 0 && (u += Math.max(0, Math.ceil(e["offset" + t[0].toUpperCase() + t.slice(1)] - o - u - s - .5))), u;
  }function et(e, t, n) {
    var r = $e(e),
        i = Fe(e, t, r),
        o = "border-box" === w.css(e, "boxSizing", !1, r),
        a = o;if (We.test(i)) {
      if (!n) return i;i = "auto";
    }return a = a && (h.boxSizingReliable() || i === e.style[t]), ("auto" === i || !parseFloat(i) && "inline" === w.css(e, "display", !1, r)) && (i = e["offset" + t[0].toUpperCase() + t.slice(1)], a = !0), (i = parseFloat(i) || 0) + Ze(e, t, n || (o ? "border" : "content"), a, r, i) + "px";
  }w.extend({ cssHooks: { opacity: { get: function get(e, t) {
          if (t) {
            var n = Fe(e, "opacity");return "" === n ? "1" : n;
          }
        } } }, 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: {}, style: function style(e, t, n, r) {
      if (e && 3 !== e.nodeType && 8 !== e.nodeType && e.style) {
        var i,
            o,
            a,
            s = G(t),
            u = Xe.test(t),
            l = e.style;if (u || (t = Je(s)), a = w.cssHooks[t] || w.cssHooks[s], void 0 === n) return a && "get" in a && void 0 !== (i = a.get(e, !1, r)) ? i : l[t];"string" == (o = typeof n === "undefined" ? "undefined" : __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_typeof___default()(n)) && (i = ie.exec(n)) && i[1] && (n = ue(e, t, i), o = "number"), null != n && n === n && ("number" === o && (n += i && i[3] || (w.cssNumber[s] ? "" : "px")), h.clearCloneStyle || "" !== n || 0 !== t.indexOf("background") || (l[t] = "inherit"), a && "set" in a && void 0 === (n = a.set(e, n, r)) || (u ? l.setProperty(t, n) : l[t] = n));
      }
    }, css: function css(e, t, n, r) {
      var i,
          o,
          a,
          s = G(t);return Xe.test(t) || (t = Je(s)), (a = w.cssHooks[t] || w.cssHooks[s]) && "get" in a && (i = a.get(e, !0, n)), void 0 === i && (i = Fe(e, t, r)), "normal" === i && t in Ve && (i = Ve[t]), "" === n || n ? (o = parseFloat(i), !0 === n || isFinite(o) ? o || 0 : i) : i;
    } }), w.each(["height", "width"], function (e, t) {
    w.cssHooks[t] = { get: function get(e, n, r) {
        if (n) return !ze.test(w.css(e, "display")) || e.getClientRects().length && e.getBoundingClientRect().width ? et(e, t, r) : se(e, Ue, function () {
          return et(e, t, r);
        });
      }, set: function set(e, n, r) {
        var i,
            o = $e(e),
            a = "border-box" === w.css(e, "boxSizing", !1, o),
            s = r && Ze(e, t, r, a, o);return a && h.scrollboxSize() === o.position && (s -= Math.ceil(e["offset" + t[0].toUpperCase() + t.slice(1)] - parseFloat(o[t]) - Ze(e, t, "border", !1, o) - .5)), s && (i = ie.exec(n)) && "px" !== (i[3] || "px") && (e.style[t] = n, n = w.css(e, t)), Ke(e, n, s);
      } };
  }), w.cssHooks.marginLeft = _e(h.reliableMarginLeft, function (e, t) {
    if (t) return (parseFloat(Fe(e, "marginLeft")) || e.getBoundingClientRect().left - se(e, { marginLeft: 0 }, function () {
      return e.getBoundingClientRect().left;
    })) + "px";
  }), w.each({ margin: "", padding: "", border: "Width" }, function (e, t) {
    w.cssHooks[e + t] = { expand: function expand(n) {
        for (var r = 0, i = {}, o = "string" == typeof n ? n.split(" ") : [n]; r < 4; r++) {
          i[e + oe[r] + t] = o[r] || o[r - 2] || o[0];
        }return i;
      } }, "margin" !== e && (w.cssHooks[e + t].set = Ke);
  }), w.fn.extend({ css: function css(e, t) {
      return z(this, function (e, t, n) {
        var r,
            i,
            o = {},
            a = 0;if (Array.isArray(t)) {
          for (r = $e(e), i = t.length; a < i; a++) {
            o[t[a]] = w.css(e, t[a], !1, r);
          }return o;
        }return void 0 !== n ? w.style(e, t, n) : w.css(e, t);
      }, e, t, arguments.length > 1);
    } });function tt(e, t, n, r, i) {
    return new tt.prototype.init(e, t, n, r, i);
  }w.Tween = tt, tt.prototype = { constructor: tt, init: function init(e, t, n, r, i, o) {
      this.elem = e, this.prop = n, this.easing = i || w.easing._default, this.options = t, this.start = this.now = this.cur(), this.end = r, this.unit = o || (w.cssNumber[n] ? "" : "px");
    }, cur: function cur() {
      var e = tt.propHooks[this.prop];return e && e.get ? e.get(this) : tt.propHooks._default.get(this);
    }, run: function run(e) {
      var t,
          n = tt.propHooks[this.prop];return this.options.duration ? this.pos = t = w.easing[this.easing](e, this.options.duration * e, 0, 1, this.options.duration) : this.pos = t = e, this.now = (this.end - this.start) * t + this.start, this.options.step && this.options.step.call(this.elem, this.now, this), n && n.set ? n.set(this) : tt.propHooks._default.set(this), this;
    } }, tt.prototype.init.prototype = tt.prototype, tt.propHooks = { _default: { get: function get(e) {
        var t;return 1 !== e.elem.nodeType || null != e.elem[e.prop] && null == e.elem.style[e.prop] ? e.elem[e.prop] : (t = w.css(e.elem, e.prop, "")) && "auto" !== t ? t : 0;
      }, set: function set(e) {
        w.fx.step[e.prop] ? w.fx.step[e.prop](e) : 1 !== e.elem.nodeType || null == e.elem.style[w.cssProps[e.prop]] && !w.cssHooks[e.prop] ? e.elem[e.prop] = e.now : w.style(e.elem, e.prop, e.now + e.unit);
      } } }, tt.propHooks.scrollTop = tt.propHooks.scrollLeft = { set: function set(e) {
      e.elem.nodeType && e.elem.parentNode && (e.elem[e.prop] = e.now);
    } }, w.easing = { linear: function linear(e) {
      return e;
    }, swing: function swing(e) {
      return .5 - Math.cos(e * Math.PI) / 2;
    }, _default: "swing" }, w.fx = tt.prototype.init, w.fx.step = {};var nt,
      rt,
      it = /^(?:toggle|show|hide)$/,
      ot = /queueHooks$/;function at() {
    rt && (!1 === r.hidden && e.requestAnimationFrame ? e.requestAnimationFrame(at) : e.setTimeout(at, w.fx.interval), w.fx.tick());
  }function st() {
    return e.setTimeout(function () {
      nt = void 0;
    }), nt = Date.now();
  }function ut(e, t) {
    var n,
        r = 0,
        i = { height: e };for (t = t ? 1 : 0; r < 4; r += 2 - t) {
      i["margin" + (n = oe[r])] = i["padding" + n] = e;
    }return t && (i.opacity = i.width = e), i;
  }function lt(e, t, n) {
    for (var r, i = (pt.tweeners[t] || []).concat(pt.tweeners["*"]), o = 0, a = i.length; o < a; o++) {
      if (r = i[o].call(n, t, e)) return r;
    }
  }function ct(e, t, n) {
    var r,
        i,
        o,
        a,
        s,
        u,
        l,
        c,
        f = "width" in t || "height" in t,
        p = this,
        d = {},
        h = e.style,
        g = e.nodeType && ae(e),
        y = J.get(e, "fxshow");n.queue || (null == (a = w._queueHooks(e, "fx")).unqueued && (a.unqueued = 0, s = a.empty.fire, a.empty.fire = function () {
      a.unqueued || s();
    }), a.unqueued++, p.always(function () {
      p.always(function () {
        a.unqueued--, w.queue(e, "fx").length || a.empty.fire();
      });
    }));for (r in t) {
      if (i = t[r], it.test(i)) {
        if (delete t[r], o = o || "toggle" === i, i === (g ? "hide" : "show")) {
          if ("show" !== i || !y || void 0 === y[r]) continue;g = !0;
        }d[r] = y && y[r] || w.style(e, r);
      }
    }if ((u = !w.isEmptyObject(t)) || !w.isEmptyObject(d)) {
      f && 1 === e.nodeType && (n.overflow = [h.overflow, h.overflowX, h.overflowY], null == (l = y && y.display) && (l = J.get(e, "display")), "none" === (c = w.css(e, "display")) && (l ? c = l : (fe([e], !0), l = e.style.display || l, c = w.css(e, "display"), fe([e]))), ("inline" === c || "inline-block" === c && null != l) && "none" === w.css(e, "float") && (u || (p.done(function () {
        h.display = l;
      }), null == l && (c = h.display, l = "none" === c ? "" : c)), h.display = "inline-block")), n.overflow && (h.overflow = "hidden", p.always(function () {
        h.overflow = n.overflow[0], h.overflowX = n.overflow[1], h.overflowY = n.overflow[2];
      })), u = !1;for (r in d) {
        u || (y ? "hidden" in y && (g = y.hidden) : y = J.access(e, "fxshow", { display: l }), o && (y.hidden = !g), g && fe([e], !0), p.done(function () {
          g || fe([e]), J.remove(e, "fxshow");for (r in d) {
            w.style(e, r, d[r]);
          }
        })), u = lt(g ? y[r] : 0, r, p), r in y || (y[r] = u.start, g && (u.end = u.start, u.start = 0));
      }
    }
  }function ft(e, t) {
    var n, r, i, o, a;for (n in e) {
      if (r = G(n), i = t[r], o = e[n], Array.isArray(o) && (i = o[1], o = e[n] = o[0]), n !== r && (e[r] = o, delete e[n]), (a = w.cssHooks[r]) && "expand" in a) {
        o = a.expand(o), delete e[r];for (n in o) {
          n in e || (e[n] = o[n], t[n] = i);
        }
      } else t[r] = i;
    }
  }function pt(e, t, n) {
    var r,
        i,
        o = 0,
        a = pt.prefilters.length,
        s = w.Deferred().always(function () {
      delete u.elem;
    }),
        u = function u() {
      if (i) return !1;for (var t = nt || st(), n = Math.max(0, l.startTime + l.duration - t), r = 1 - (n / l.duration || 0), o = 0, a = l.tweens.length; o < a; o++) {
        l.tweens[o].run(r);
      }return s.notifyWith(e, [l, r, n]), r < 1 && a ? n : (a || s.notifyWith(e, [l, 1, 0]), s.resolveWith(e, [l]), !1);
    },
        l = s.promise({ elem: e, props: w.extend({}, t), opts: w.extend(!0, { specialEasing: {}, easing: w.easing._default }, n), originalProperties: t, originalOptions: n, startTime: nt || st(), duration: n.duration, tweens: [], createTween: function createTween(t, n) {
        var r = w.Tween(e, l.opts, t, n, l.opts.specialEasing[t] || l.opts.easing);return l.tweens.push(r), r;
      }, stop: function stop(t) {
        var n = 0,
            r = t ? l.tweens.length : 0;if (i) return this;for (i = !0; n < r; n++) {
          l.tweens[n].run(1);
        }return t ? (s.notifyWith(e, [l, 1, 0]), s.resolveWith(e, [l, t])) : s.rejectWith(e, [l, t]), this;
      } }),
        c = l.props;for (ft(c, l.opts.specialEasing); o < a; o++) {
      if (r = pt.prefilters[o].call(l, e, c, l.opts)) return g(r.stop) && (w._queueHooks(l.elem, l.opts.queue).stop = r.stop.bind(r)), r;
    }return w.map(c, lt, l), g(l.opts.start) && l.opts.start.call(e, l), l.progress(l.opts.progress).done(l.opts.done, l.opts.complete).fail(l.opts.fail).always(l.opts.always), w.fx.timer(w.extend(u, { elem: e, anim: l, queue: l.opts.queue })), l;
  }w.Animation = w.extend(pt, { tweeners: { "*": [function (e, t) {
        var n = this.createTween(e, t);return ue(n.elem, e, ie.exec(t), n), n;
      }] }, tweener: function tweener(e, t) {
      g(e) ? (t = e, e = ["*"]) : e = e.match(M);for (var n, r = 0, i = e.length; r < i; r++) {
        n = e[r], pt.tweeners[n] = pt.tweeners[n] || [], pt.tweeners[n].unshift(t);
      }
    }, prefilters: [ct], prefilter: function prefilter(e, t) {
      t ? pt.prefilters.unshift(e) : pt.prefilters.push(e);
    } }), w.speed = function (e, t, n) {
    var r = e && "object" == (typeof e === "undefined" ? "undefined" : __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_typeof___default()(e)) ? w.extend({}, e) : { complete: n || !n && t || g(e) && e, duration: e, easing: n && t || t && !g(t) && t };return w.fx.off ? r.duration = 0 : "number" != typeof r.duration && (r.duration in w.fx.speeds ? r.duration = w.fx.speeds[r.duration] : r.duration = w.fx.speeds._default), null != r.queue && !0 !== r.queue || (r.queue = "fx"), r.old = r.complete, r.complete = function () {
      g(r.old) && r.old.call(this), r.queue && w.dequeue(this, r.queue);
    }, r;
  }, w.fn.extend({ fadeTo: function fadeTo(e, t, n, r) {
      return this.filter(ae).css("opacity", 0).show().end().animate({ opacity: t }, e, n, r);
    }, animate: function animate(e, t, n, r) {
      var i = w.isEmptyObject(e),
          o = w.speed(t, n, r),
          a = function a() {
        var t = pt(this, w.extend({}, e), o);(i || J.get(this, "finish")) && t.stop(!0);
      };return a.finish = a, i || !1 === o.queue ? this.each(a) : this.queue(o.queue, a);
    }, stop: function stop(e, t, n) {
      var r = function r(e) {
        var t = e.stop;delete e.stop, t(n);
      };return "string" != typeof e && (n = t, t = e, e = void 0), t && !1 !== e && this.queue(e || "fx", []), this.each(function () {
        var t = !0,
            i = null != e && e + "queueHooks",
            o = w.timers,
            a = J.get(this);if (i) a[i] && a[i].stop && r(a[i]);else for (i in a) {
          a[i] && a[i].stop && ot.test(i) && r(a[i]);
        }for (i = o.length; i--;) {
          o[i].elem !== this || null != e && o[i].queue !== e || (o[i].anim.stop(n), t = !1, o.splice(i, 1));
        }!t && n || w.dequeue(this, e);
      });
    }, finish: function finish(e) {
      return !1 !== e && (e = e || "fx"), this.each(function () {
        var t,
            n = J.get(this),
            r = n[e + "queue"],
            i = n[e + "queueHooks"],
            o = w.timers,
            a = r ? r.length : 0;for (n.finish = !0, w.queue(this, e, []), i && i.stop && i.stop.call(this, !0), t = o.length; t--;) {
          o[t].elem === this && o[t].queue === e && (o[t].anim.stop(!0), o.splice(t, 1));
        }for (t = 0; t < a; t++) {
          r[t] && r[t].finish && r[t].finish.call(this);
        }delete n.finish;
      });
    } }), w.each(["toggle", "show", "hide"], function (e, t) {
    var n = w.fn[t];w.fn[t] = function (e, r, i) {
      return null == e || "boolean" == typeof e ? n.apply(this, arguments) : this.animate(ut(t, !0), e, r, i);
    };
  }), w.each({ slideDown: ut("show"), slideUp: ut("hide"), slideToggle: ut("toggle"), fadeIn: { opacity: "show" }, fadeOut: { opacity: "hide" }, fadeToggle: { opacity: "toggle" } }, function (e, t) {
    w.fn[e] = function (e, n, r) {
      return this.animate(t, e, n, r);
    };
  }), w.timers = [], w.fx.tick = function () {
    var e,
        t = 0,
        n = w.timers;for (nt = Date.now(); t < n.length; t++) {
      (e = n[t])() || n[t] !== e || n.splice(t--, 1);
    }n.length || w.fx.stop(), nt = void 0;
  }, w.fx.timer = function (e) {
    w.timers.push(e), w.fx.start();
  }, w.fx.interval = 13, w.fx.start = function () {
    rt || (rt = !0, at());
  }, w.fx.stop = function () {
    rt = null;
  }, w.fx.speeds = { slow: 600, fast: 200, _default: 400 }, w.fn.delay = function (t, n) {
    return t = w.fx ? w.fx.speeds[t] || t : t, n = n || "fx", this.queue(n, function (n, r) {
      var i = e.setTimeout(n, t);r.stop = function () {
        e.clearTimeout(i);
      };
    });
  }, function () {
    var e = r.createElement("input"),
        t = r.createElement("select").appendChild(r.createElement("option"));e.type = "checkbox", h.checkOn = "" !== e.value, h.optSelected = t.selected, (e = r.createElement("input")).value = "t", e.type = "radio", h.radioValue = "t" === e.value;
  }();var dt,
      ht = w.expr.attrHandle;w.fn.extend({ attr: function attr(e, t) {
      return z(this, w.attr, e, t, arguments.length > 1);
    }, removeAttr: function removeAttr(e) {
      return this.each(function () {
        w.removeAttr(this, e);
      });
    } }), w.extend({ attr: function attr(e, t, n) {
      var r,
          i,
          o = e.nodeType;if (3 !== o && 8 !== o && 2 !== o) return "undefined" == typeof e.getAttribute ? w.prop(e, t, n) : (1 === o && w.isXMLDoc(e) || (i = w.attrHooks[t.toLowerCase()] || (w.expr.match.bool.test(t) ? dt : void 0)), void 0 !== n ? null === n ? void w.removeAttr(e, t) : i && "set" in i && void 0 !== (r = i.set(e, n, t)) ? r : (e.setAttribute(t, n + ""), n) : i && "get" in i && null !== (r = i.get(e, t)) ? r : null == (r = w.find.attr(e, t)) ? void 0 : r);
    }, attrHooks: { type: { set: function set(e, t) {
          if (!h.radioValue && "radio" === t && N(e, "input")) {
            var n = e.value;return e.setAttribute("type", t), n && (e.value = n), t;
          }
        } } }, removeAttr: function removeAttr(e, t) {
      var n,
          r = 0,
          i = t && t.match(M);if (i && 1 === e.nodeType) while (n = i[r++]) {
        e.removeAttribute(n);
      }
    } }), dt = { set: function set(e, t, n) {
      return !1 === t ? w.removeAttr(e, n) : e.setAttribute(n, n), n;
    } }, w.each(w.expr.match.bool.source.match(/\w+/g), function (e, t) {
    var n = ht[t] || w.find.attr;ht[t] = function (e, t, r) {
      var i,
          o,
          a = t.toLowerCase();return r || (o = ht[a], ht[a] = i, i = null != n(e, t, r) ? a : null, ht[a] = o), i;
    };
  });var gt = /^(?:input|select|textarea|button)$/i,
      yt = /^(?:a|area)$/i;w.fn.extend({ prop: function prop(e, t) {
      return z(this, w.prop, e, t, arguments.length > 1);
    }, removeProp: function removeProp(e) {
      return this.each(function () {
        delete this[w.propFix[e] || e];
      });
    } }), w.extend({ prop: function prop(e, t, n) {
      var r,
          i,
          o = e.nodeType;if (3 !== o && 8 !== o && 2 !== o) return 1 === o && w.isXMLDoc(e) || (t = w.propFix[t] || t, i = w.propHooks[t]), void 0 !== n ? i && "set" in i && void 0 !== (r = i.set(e, n, t)) ? r : e[t] = n : i && "get" in i && null !== (r = i.get(e, t)) ? r : e[t];
    }, propHooks: { tabIndex: { get: function get(e) {
          var t = w.find.attr(e, "tabindex");return t ? parseInt(t, 10) : gt.test(e.nodeName) || yt.test(e.nodeName) && e.href ? 0 : -1;
        } } }, propFix: { "for": "htmlFor", "class": "className" } }), h.optSelected || (w.propHooks.selected = { get: function get(e) {
      var t = e.parentNode;return t && t.parentNode && t.parentNode.selectedIndex, null;
    }, set: function set(e) {
      var t = e.parentNode;t && (t.selectedIndex, t.parentNode && t.parentNode.selectedIndex);
    } }), w.each(["tabIndex", "readOnly", "maxLength", "cellSpacing", "cellPadding", "rowSpan", "colSpan", "useMap", "frameBorder", "contentEditable"], function () {
    w.propFix[this.toLowerCase()] = this;
  });function vt(e) {
    return (e.match(M) || []).join(" ");
  }function mt(e) {
    return e.getAttribute && e.getAttribute("class") || "";
  }function xt(e) {
    return Array.isArray(e) ? e : "string" == typeof e ? e.match(M) || [] : [];
  }w.fn.extend({ addClass: function addClass(e) {
      var t,
          n,
          r,
          i,
          o,
          a,
          s,
          u = 0;if (g(e)) return this.each(function (t) {
        w(this).addClass(e.call(this, t, mt(this)));
      });if ((t = xt(e)).length) while (n = this[u++]) {
        if (i = mt(n), r = 1 === n.nodeType && " " + vt(i) + " ") {
          a = 0;while (o = t[a++]) {
            r.indexOf(" " + o + " ") < 0 && (r += o + " ");
          }i !== (s = vt(r)) && n.setAttribute("class", s);
        }
      }return this;
    }, removeClass: function removeClass(e) {
      var t,
          n,
          r,
          i,
          o,
          a,
          s,
          u = 0;if (g(e)) return this.each(function (t) {
        w(this).removeClass(e.call(this, t, mt(this)));
      });if (!arguments.length) return this.attr("class", "");if ((t = xt(e)).length) while (n = this[u++]) {
        if (i = mt(n), r = 1 === n.nodeType && " " + vt(i) + " ") {
          a = 0;while (o = t[a++]) {
            while (r.indexOf(" " + o + " ") > -1) {
              r = r.replace(" " + o + " ", " ");
            }
          }i !== (s = vt(r)) && n.setAttribute("class", s);
        }
      }return this;
    }, toggleClass: function toggleClass(e, t) {
      var n = typeof e === "undefined" ? "undefined" : __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_typeof___default()(e),
          r = "string" === n || Array.isArray(e);return "boolean" == typeof t && r ? t ? this.addClass(e) : this.removeClass(e) : g(e) ? this.each(function (n) {
        w(this).toggleClass(e.call(this, n, mt(this), t), t);
      }) : this.each(function () {
        var t, i, o, a;if (r) {
          i = 0, o = w(this), a = xt(e);while (t = a[i++]) {
            o.hasClass(t) ? o.removeClass(t) : o.addClass(t);
          }
        } else void 0 !== e && "boolean" !== n || ((t = mt(this)) && J.set(this, "__className__", t), this.setAttribute && this.setAttribute("class", t || !1 === e ? "" : J.get(this, "__className__") || ""));
      });
    }, hasClass: function hasClass(e) {
      var t,
          n,
          r = 0;t = " " + e + " ";while (n = this[r++]) {
        if (1 === n.nodeType && (" " + vt(mt(n)) + " ").indexOf(t) > -1) return !0;
      }return !1;
    } });var bt = /\r/g;w.fn.extend({ val: function val(e) {
      var t,
          n,
          r,
          i = this[0];{
        if (arguments.length) return r = g(e), this.each(function (n) {
          var i;1 === this.nodeType && (null == (i = r ? e.call(this, n, w(this).val()) : e) ? i = "" : "number" == typeof i ? i += "" : Array.isArray(i) && (i = w.map(i, function (e) {
            return null == e ? "" : e + "";
          })), (t = w.valHooks[this.type] || w.valHooks[this.nodeName.toLowerCase()]) && "set" in t && void 0 !== t.set(this, i, "value") || (this.value = i));
        });if (i) return (t = w.valHooks[i.type] || w.valHooks[i.nodeName.toLowerCase()]) && "get" in t && void 0 !== (n = t.get(i, "value")) ? n : "string" == typeof (n = i.value) ? n.replace(bt, "") : null == n ? "" : n;
      }
    } }), w.extend({ valHooks: { option: { get: function get(e) {
          var t = w.find.attr(e, "value");return null != t ? t : vt(w.text(e));
        } }, select: { get: function get(e) {
          var t,
              n,
              r,
              i = e.options,
              o = e.selectedIndex,
              a = "select-one" === e.type,
              s = a ? null : [],
              u = a ? o + 1 : i.length;for (r = o < 0 ? u : a ? o : 0; r < u; r++) {
            if (((n = i[r]).selected || r === o) && !n.disabled && (!n.parentNode.disabled || !N(n.parentNode, "optgroup"))) {
              if (t = w(n).val(), a) return t;s.push(t);
            }
          }return s;
        }, set: function set(e, t) {
          var n,
              r,
              i = e.options,
              o = w.makeArray(t),
              a = i.length;while (a--) {
            ((r = i[a]).selected = w.inArray(w.valHooks.option.get(r), o) > -1) && (n = !0);
          }return n || (e.selectedIndex = -1), o;
        } } } }), w.each(["radio", "checkbox"], function () {
    w.valHooks[this] = { set: function set(e, t) {
        if (Array.isArray(t)) return e.checked = w.inArray(w(e).val(), t) > -1;
      } }, h.checkOn || (w.valHooks[this].get = function (e) {
      return null === e.getAttribute("value") ? "on" : e.value;
    });
  }), h.focusin = "onfocusin" in e;var wt = /^(?:focusinfocus|focusoutblur)$/,
      Tt = function Tt(e) {
    e.stopPropagation();
  };w.extend(w.event, { trigger: function trigger(t, n, i, o) {
      var a,
          s,
          u,
          l,
          c,
          p,
          d,
          h,
          v = [i || r],
          m = f.call(t, "type") ? t.type : t,
          x = f.call(t, "namespace") ? t.namespace.split(".") : [];if (s = h = u = i = i || r, 3 !== i.nodeType && 8 !== i.nodeType && !wt.test(m + w.event.triggered) && (m.indexOf(".") > -1 && (m = (x = m.split(".")).shift(), x.sort()), c = m.indexOf(":") < 0 && "on" + m, t = t[w.expando] ? t : new w.Event(m, "object" == (typeof t === "undefined" ? "undefined" : __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_typeof___default()(t)) && t), t.isTrigger = o ? 2 : 3, t.namespace = x.join("."), t.rnamespace = t.namespace ? new RegExp("(^|\\.)" + x.join("\\.(?:.*\\.|)") + "(\\.|$)") : null, t.result = void 0, t.target || (t.target = i), n = null == n ? [t] : w.makeArray(n, [t]), d = w.event.special[m] || {}, o || !d.trigger || !1 !== d.trigger.apply(i, n))) {
        if (!o && !d.noBubble && !y(i)) {
          for (l = d.delegateType || m, wt.test(l + m) || (s = s.parentNode); s; s = s.parentNode) {
            v.push(s), u = s;
          }u === (i.ownerDocument || r) && v.push(u.defaultView || u.parentWindow || e);
        }a = 0;while ((s = v[a++]) && !t.isPropagationStopped()) {
          h = s, t.type = a > 1 ? l : d.bindType || m, (p = (J.get(s, "events") || {})[t.type] && J.get(s, "handle")) && p.apply(s, n), (p = c && s[c]) && p.apply && Y(s) && (t.result = p.apply(s, n), !1 === t.result && t.preventDefault());
        }return t.type = m, o || t.isDefaultPrevented() || d._default && !1 !== d._default.apply(v.pop(), n) || !Y(i) || c && g(i[m]) && !y(i) && ((u = i[c]) && (i[c] = null), w.event.triggered = m, t.isPropagationStopped() && h.addEventListener(m, Tt), i[m](), t.isPropagationStopped() && h.removeEventListener(m, Tt), w.event.triggered = void 0, u && (i[c] = u)), t.result;
      }
    }, simulate: function simulate(e, t, n) {
      var r = w.extend(new w.Event(), n, { type: e, isSimulated: !0 });w.event.trigger(r, null, t);
    } }), w.fn.extend({ trigger: function trigger(e, t) {
      return this.each(function () {
        w.event.trigger(e, t, this);
      });
    }, triggerHandler: function triggerHandler(e, t) {
      var n = this[0];if (n) return w.event.trigger(e, t, n, !0);
    } }), h.focusin || w.each({ focus: "focusin", blur: "focusout" }, function (e, t) {
    var n = function n(e) {
      w.event.simulate(t, e.target, w.event.fix(e));
    };w.event.special[t] = { setup: function setup() {
        var r = this.ownerDocument || this,
            i = J.access(r, t);i || r.addEventListener(e, n, !0), J.access(r, t, (i || 0) + 1);
      }, teardown: function teardown() {
        var r = this.ownerDocument || this,
            i = J.access(r, t) - 1;i ? J.access(r, t, i) : (r.removeEventListener(e, n, !0), J.remove(r, t));
      } };
  });var Ct = e.location,
      Et = Date.now(),
      kt = /\?/;w.parseXML = function (t) {
    var n;if (!t || "string" != typeof t) return null;try {
      n = new e.DOMParser().parseFromString(t, "text/xml");
    } catch (e) {
      n = void 0;
    }return n && !n.getElementsByTagName("parsererror").length || w.error("Invalid XML: " + t), n;
  };var St = /\[\]$/,
      Dt = /\r?\n/g,
      Nt = /^(?:submit|button|image|reset|file)$/i,
      At = /^(?:input|select|textarea|keygen)/i;function jt(e, t, n, r) {
    var i;if (Array.isArray(t)) w.each(t, function (t, i) {
      n || St.test(e) ? r(e, i) : jt(e + "[" + ("object" == (typeof i === "undefined" ? "undefined" : __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_typeof___default()(i)) && null != i ? t : "") + "]", i, n, r);
    });else if (n || "object" !== x(t)) r(e, t);else for (i in t) {
      jt(e + "[" + i + "]", t[i], n, r);
    }
  }w.param = function (e, t) {
    var n,
        r = [],
        i = function i(e, t) {
      var n = g(t) ? t() : t;r[r.length] = encodeURIComponent(e) + "=" + encodeURIComponent(null == n ? "" : n);
    };if (Array.isArray(e) || e.jquery && !w.isPlainObject(e)) w.each(e, function () {
      i(this.name, this.value);
    });else for (n in e) {
      jt(n, e[n], t, i);
    }return r.join("&");
  }, w.fn.extend({ serialize: function serialize() {
      return w.param(this.serializeArray());
    }, serializeArray: function serializeArray() {
      return this.map(function () {
        var e = w.prop(this, "elements");return e ? w.makeArray(e) : this;
      }).filter(function () {
        var e = this.type;return this.name && !w(this).is(":disabled") && At.test(this.nodeName) && !Nt.test(e) && (this.checked || !pe.test(e));
      }).map(function (e, t) {
        var n = w(this).val();return null == n ? null : Array.isArray(n) ? w.map(n, function (e) {
          return { name: t.name, value: e.replace(Dt, "\r\n") };
        }) : { name: t.name, value: n.replace(Dt, "\r\n") };
      }).get();
    } });var qt = /%20/g,
      Lt = /#.*$/,
      Ht = /([?&])_=[^&]*/,
      Ot = /^(.*?):[ \t]*([^\r\n]*)$/gm,
      Pt = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/,
      Mt = /^(?:GET|HEAD)$/,
      Rt = /^\/\//,
      It = {},
      Wt = {},
      $t = "*/".concat("*"),
      Bt = r.createElement("a");Bt.href = Ct.href;function Ft(e) {
    return function (t, n) {
      "string" != typeof t && (n = t, t = "*");var r,
          i = 0,
          o = t.toLowerCase().match(M) || [];if (g(n)) while (r = o[i++]) {
        "+" === r[0] ? (r = r.slice(1) || "*", (e[r] = e[r] || []).unshift(n)) : (e[r] = e[r] || []).push(n);
      }
    };
  }function _t(e, t, n, r) {
    var i = {},
        o = e === Wt;function a(s) {
      var u;return i[s] = !0, w.each(e[s] || [], function (e, s) {
        var l = s(t, n, r);return "string" != typeof l || o || i[l] ? o ? !(u = l) : void 0 : (t.dataTypes.unshift(l), a(l), !1);
      }), u;
    }return a(t.dataTypes[0]) || !i["*"] && a("*");
  }function zt(e, t) {
    var n,
        r,
        i = w.ajaxSettings.flatOptions || {};for (n in t) {
      void 0 !== t[n] && ((i[n] ? e : r || (r = {}))[n] = t[n]);
    }return r && w.extend(!0, e, r), e;
  }function Xt(e, t, n) {
    var r,
        i,
        o,
        a,
        s = e.contents,
        u = e.dataTypes;while ("*" === u[0]) {
      u.shift(), void 0 === r && (r = e.mimeType || t.getResponseHeader("Content-Type"));
    }if (r) for (i in s) {
      if (s[i] && s[i].test(r)) {
        u.unshift(i);break;
      }
    }if (u[0] in n) o = u[0];else {
      for (i in n) {
        if (!u[0] || e.converters[i + " " + u[0]]) {
          o = i;break;
        }a || (a = i);
      }o = o || a;
    }if (o) return o !== u[0] && u.unshift(o), n[o];
  }function Ut(e, t, n, r) {
    var i,
        o,
        a,
        s,
        u,
        l = {},
        c = e.dataTypes.slice();if (c[1]) for (a in e.converters) {
      l[a.toLowerCase()] = e.converters[a];
    }o = c.shift();while (o) {
      if (e.responseFields[o] && (n[e.responseFields[o]] = t), !u && r && e.dataFilter && (t = e.dataFilter(t, e.dataType)), u = o, o = c.shift()) if ("*" === o) o = u;else if ("*" !== u && u !== o) {
        if (!(a = l[u + " " + o] || l["* " + o])) for (i in l) {
          if ((s = i.split(" "))[1] === o && (a = l[u + " " + s[0]] || l["* " + s[0]])) {
            !0 === a ? a = l[i] : !0 !== l[i] && (o = s[0], c.unshift(s[1]));break;
          }
        }if (!0 !== a) if (a && e["throws"]) t = a(t);else try {
          t = a(t);
        } catch (e) {
          return { state: "parsererror", error: a ? e : "No conversion from " + u + " to " + o };
        }
      }
    }return { state: "success", data: t };
  }w.extend({ active: 0, lastModified: {}, etag: {}, ajaxSettings: { url: Ct.href, type: "GET", isLocal: Pt.test(Ct.protocol), global: !0, processData: !0, async: !0, contentType: "application/x-www-form-urlencoded; charset=UTF-8", accepts: { "*": $t, 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": JSON.parse, "text xml": w.parseXML }, flatOptions: { url: !0, context: !0 } }, ajaxSetup: function ajaxSetup(e, t) {
      return t ? zt(zt(e, w.ajaxSettings), t) : zt(w.ajaxSettings, e);
    }, ajaxPrefilter: Ft(It), ajaxTransport: Ft(Wt), ajax: function ajax(t, n) {
      "object" == (typeof t === "undefined" ? "undefined" : __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_typeof___default()(t)) && (n = t, t = void 0), n = n || {};var i,
          o,
          a,
          s,
          u,
          l,
          c,
          f,
          p,
          d,
          h = w.ajaxSetup({}, n),
          g = h.context || h,
          y = h.context && (g.nodeType || g.jquery) ? w(g) : w.event,
          v = w.Deferred(),
          m = w.Callbacks("once memory"),
          x = h.statusCode || {},
          b = {},
          T = {},
          C = "canceled",
          E = { readyState: 0, getResponseHeader: function getResponseHeader(e) {
          var t;if (c) {
            if (!s) {
              s = {};while (t = Ot.exec(a)) {
                s[t[1].toLowerCase()] = t[2];
              }
            }t = s[e.toLowerCase()];
          }return null == t ? null : t;
        }, getAllResponseHeaders: function getAllResponseHeaders() {
          return c ? a : null;
        }, setRequestHeader: function setRequestHeader(e, t) {
          return null == c && (e = T[e.toLowerCase()] = T[e.toLowerCase()] || e, b[e] = t), this;
        }, overrideMimeType: function overrideMimeType(e) {
          return null == c && (h.mimeType = e), this;
        }, statusCode: function statusCode(e) {
          var t;if (e) if (c) E.always(e[E.status]);else for (t in e) {
            x[t] = [x[t], e[t]];
          }return this;
        }, abort: function abort(e) {
          var t = e || C;return i && i.abort(t), k(0, t), this;
        } };if (v.promise(E), h.url = ((t || h.url || Ct.href) + "").replace(Rt, Ct.protocol + "//"), h.type = n.method || n.type || h.method || h.type, h.dataTypes = (h.dataType || "*").toLowerCase().match(M) || [""], null == h.crossDomain) {
        l = r.createElement("a");try {
          l.href = h.url, l.href = l.href, h.crossDomain = Bt.protocol + "//" + Bt.host != l.protocol + "//" + l.host;
        } catch (e) {
          h.crossDomain = !0;
        }
      }if (h.data && h.processData && "string" != typeof h.data && (h.data = w.param(h.data, h.traditional)), _t(It, h, n, E), c) return E;(f = w.event && h.global) && 0 == w.active++ && w.event.trigger("ajaxStart"), h.type = h.type.toUpperCase(), h.hasContent = !Mt.test(h.type), o = h.url.replace(Lt, ""), h.hasContent ? h.data && h.processData && 0 === (h.contentType || "").indexOf("application/x-www-form-urlencoded") && (h.data = h.data.replace(qt, "+")) : (d = h.url.slice(o.length), h.data && (h.processData || "string" == typeof h.data) && (o += (kt.test(o) ? "&" : "?") + h.data, delete h.data), !1 === h.cache && (o = o.replace(Ht, "$1"), d = (kt.test(o) ? "&" : "?") + "_=" + Et++ + d), h.url = o + d), h.ifModified && (w.lastModified[o] && E.setRequestHeader("If-Modified-Since", w.lastModified[o]), w.etag[o] && E.setRequestHeader("If-None-Match", w.etag[o])), (h.data && h.hasContent && !1 !== h.contentType || n.contentType) && E.setRequestHeader("Content-Type", h.contentType), E.setRequestHeader("Accept", h.dataTypes[0] && h.accepts[h.dataTypes[0]] ? h.accepts[h.dataTypes[0]] + ("*" !== h.dataTypes[0] ? ", " + $t + "; q=0.01" : "") : h.accepts["*"]);for (p in h.headers) {
        E.setRequestHeader(p, h.headers[p]);
      }if (h.beforeSend && (!1 === h.beforeSend.call(g, E, h) || c)) return E.abort();if (C = "abort", m.add(h.complete), E.done(h.success), E.fail(h.error), i = _t(Wt, h, n, E)) {
        if (E.readyState = 1, f && y.trigger("ajaxSend", [E, h]), c) return E;h.async && h.timeout > 0 && (u = e.setTimeout(function () {
          E.abort("timeout");
        }, h.timeout));try {
          c = !1, i.send(b, k);
        } catch (e) {
          if (c) throw e;k(-1, e);
        }
      } else k(-1, "No Transport");function k(t, n, r, s) {
        var l,
            p,
            d,
            b,
            T,
            C = n;c || (c = !0, u && e.clearTimeout(u), i = void 0, a = s || "", E.readyState = t > 0 ? 4 : 0, l = t >= 200 && t < 300 || 304 === t, r && (b = Xt(h, E, r)), b = Ut(h, b, E, l), l ? (h.ifModified && ((T = E.getResponseHeader("Last-Modified")) && (w.lastModified[o] = T), (T = E.getResponseHeader("etag")) && (w.etag[o] = T)), 204 === t || "HEAD" === h.type ? C = "nocontent" : 304 === t ? C = "notmodified" : (C = b.state, p = b.data, l = !(d = b.error))) : (d = C, !t && C || (C = "error", t < 0 && (t = 0))), E.status = t, E.statusText = (n || C) + "", l ? v.resolveWith(g, [p, C, E]) : v.rejectWith(g, [E, C, d]), E.statusCode(x), x = void 0, f && y.trigger(l ? "ajaxSuccess" : "ajaxError", [E, h, l ? p : d]), m.fireWith(g, [E, C]), f && (y.trigger("ajaxComplete", [E, h]), --w.active || w.event.trigger("ajaxStop")));
      }return E;
    }, getJSON: function getJSON(e, t, n) {
      return w.get(e, t, n, "json");
    }, getScript: function getScript(e, t) {
      return w.get(e, void 0, t, "script");
    } }), w.each(["get", "post"], function (e, t) {
    w[t] = function (e, n, r, i) {
      return g(n) && (i = i || r, r = n, n = void 0), w.ajax(w.extend({ url: e, type: t, dataType: i, data: n, success: r }, w.isPlainObject(e) && e));
    };
  }), w._evalUrl = function (e) {
    return w.ajax({ url: e, type: "GET", dataType: "script", cache: !0, async: !1, global: !1, "throws": !0 });
  }, w.fn.extend({ wrapAll: function wrapAll(e) {
      var t;return this[0] && (g(e) && (e = e.call(this[0])), t = w(e, this[0].ownerDocument).eq(0).clone(!0), this[0].parentNode && t.insertBefore(this[0]), t.map(function () {
        var e = this;while (e.firstElementChild) {
          e = e.firstElementChild;
        }return e;
      }).append(this)), this;
    }, wrapInner: function wrapInner(e) {
      return g(e) ? this.each(function (t) {
        w(this).wrapInner(e.call(this, t));
      }) : this.each(function () {
        var t = w(this),
            n = t.contents();n.length ? n.wrapAll(e) : t.append(e);
      });
    }, wrap: function wrap(e) {
      var t = g(e);return this.each(function (n) {
        w(this).wrapAll(t ? e.call(this, n) : e);
      });
    }, unwrap: function unwrap(e) {
      return this.parent(e).not("body").each(function () {
        w(this).replaceWith(this.childNodes);
      }), this;
    } }), w.expr.pseudos.hidden = function (e) {
    return !w.expr.pseudos.visible(e);
  }, w.expr.pseudos.visible = function (e) {
    return !!(e.offsetWidth || e.offsetHeight || e.getClientRects().length);
  }, w.ajaxSettings.xhr = function () {
    try {
      return new e.XMLHttpRequest();
    } catch (e) {}
  };var Vt = { 0: 200, 1223: 204 },
      Gt = w.ajaxSettings.xhr();h.cors = !!Gt && "withCredentials" in Gt, h.ajax = Gt = !!Gt, w.ajaxTransport(function (t) {
    var _n, r;if (h.cors || Gt && !t.crossDomain) return { send: function send(i, o) {
        var a,
            s = t.xhr();if (s.open(t.type, t.url, t.async, t.username, t.password), t.xhrFields) for (a in t.xhrFields) {
          s[a] = t.xhrFields[a];
        }t.mimeType && s.overrideMimeType && s.overrideMimeType(t.mimeType), t.crossDomain || i["X-Requested-With"] || (i["X-Requested-With"] = "XMLHttpRequest");for (a in i) {
          s.setRequestHeader(a, i[a]);
        }_n = function n(e) {
          return function () {
            _n && (_n = r = s.onload = s.onerror = s.onabort = s.ontimeout = s.onreadystatechange = null, "abort" === e ? s.abort() : "error" === e ? "number" != typeof s.status ? o(0, "error") : o(s.status, s.statusText) : o(Vt[s.status] || s.status, s.statusText, "text" !== (s.responseType || "text") || "string" != typeof s.responseText ? { binary: s.response } : { text: s.responseText }, s.getAllResponseHeaders()));
          };
        }, s.onload = _n(), r = s.onerror = s.ontimeout = _n("error"), void 0 !== s.onabort ? s.onabort = r : s.onreadystatechange = function () {
          4 === s.readyState && e.setTimeout(function () {
            _n && r();
          });
        }, _n = _n("abort");try {
          s.send(t.hasContent && t.data || null);
        } catch (e) {
          if (_n) throw e;
        }
      }, abort: function abort() {
        _n && _n();
      } };
  }), w.ajaxPrefilter(function (e) {
    e.crossDomain && (e.contents.script = !1);
  }), w.ajaxSetup({ accepts: { script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript" }, contents: { script: /\b(?:java|ecma)script\b/ }, converters: { "text script": function textScript(e) {
        return w.globalEval(e), e;
      } } }), w.ajaxPrefilter("script", function (e) {
    void 0 === e.cache && (e.cache = !1), e.crossDomain && (e.type = "GET");
  }), w.ajaxTransport("script", function (e) {
    if (e.crossDomain) {
      var t, _n2;return { send: function send(i, o) {
          t = w("<script>").prop({ charset: e.scriptCharset, src: e.url }).on("load error", _n2 = function n(e) {
            t.remove(), _n2 = null, e && o("error" === e.type ? 404 : 200, e.type);
          }), r.head.appendChild(t[0]);
        }, abort: function abort() {
          _n2 && _n2();
        } };
    }
  });var Yt = [],
      Qt = /(=)\?(?=&|$)|\?\?/;w.ajaxSetup({ jsonp: "callback", jsonpCallback: function jsonpCallback() {
      var e = Yt.pop() || w.expando + "_" + Et++;return this[e] = !0, e;
    } }), w.ajaxPrefilter("json jsonp", function (t, n, r) {
    var i,
        o,
        a,
        s = !1 !== t.jsonp && (Qt.test(t.url) ? "url" : "string" == typeof t.data && 0 === (t.contentType || "").indexOf("application/x-www-form-urlencoded") && Qt.test(t.data) && "data");if (s || "jsonp" === t.dataTypes[0]) return i = t.jsonpCallback = g(t.jsonpCallback) ? t.jsonpCallback() : t.jsonpCallback, s ? t[s] = t[s].replace(Qt, "$1" + i) : !1 !== t.jsonp && (t.url += (kt.test(t.url) ? "&" : "?") + t.jsonp + "=" + i), t.converters["script json"] = function () {
      return a || w.error(i + " was not called"), a[0];
    }, t.dataTypes[0] = "json", o = e[i], e[i] = function () {
      a = arguments;
    }, r.always(function () {
      void 0 === o ? w(e).removeProp(i) : e[i] = o, t[i] && (t.jsonpCallback = n.jsonpCallback, Yt.push(i)), a && g(o) && o(a[0]), a = o = void 0;
    }), "script";
  }), h.createHTMLDocument = function () {
    var e = r.implementation.createHTMLDocument("").body;return e.innerHTML = "<form></form><form></form>", 2 === e.childNodes.length;
  }(), w.parseHTML = function (e, t, n) {
    if ("string" != typeof e) return [];"boolean" == typeof t && (n = t, t = !1);var i, o, a;return t || (h.createHTMLDocument ? ((i = (t = r.implementation.createHTMLDocument("")).createElement("base")).href = r.location.href, t.head.appendChild(i)) : t = r), o = A.exec(e), a = !n && [], o ? [t.createElement(o[1])] : (o = xe([e], t, a), a && a.length && w(a).remove(), w.merge([], o.childNodes));
  }, w.fn.load = function (e, t, n) {
    var r,
        i,
        o,
        a = this,
        s = e.indexOf(" ");return s > -1 && (r = vt(e.slice(s)), e = e.slice(0, s)), g(t) ? (n = t, t = void 0) : t && "object" == (typeof t === "undefined" ? "undefined" : __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_typeof___default()(t)) && (i = "POST"), a.length > 0 && w.ajax({ url: e, type: i || "GET", dataType: "html", data: t }).done(function (e) {
      o = arguments, a.html(r ? w("<div>").append(w.parseHTML(e)).find(r) : e);
    }).always(n && function (e, t) {
      a.each(function () {
        n.apply(this, o || [e.responseText, t, e]);
      });
    }), this;
  }, w.each(["ajaxStart", "ajaxStop", "ajaxComplete", "ajaxError", "ajaxSuccess", "ajaxSend"], function (e, t) {
    w.fn[t] = function (e) {
      return this.on(t, e);
    };
  }), w.expr.pseudos.animated = function (e) {
    return w.grep(w.timers, function (t) {
      return e === t.elem;
    }).length;
  }, w.offset = { setOffset: function setOffset(e, t, n) {
      var r,
          i,
          o,
          a,
          s,
          u,
          l,
          c = w.css(e, "position"),
          f = w(e),
          p = {};"static" === c && (e.style.position = "relative"), s = f.offset(), o = w.css(e, "top"), u = w.css(e, "left"), (l = ("absolute" === c || "fixed" === c) && (o + u).indexOf("auto") > -1) ? (a = (r = f.position()).top, i = r.left) : (a = parseFloat(o) || 0, i = parseFloat(u) || 0), g(t) && (t = t.call(e, n, w.extend({}, s))), null != t.top && (p.top = t.top - s.top + a), null != t.left && (p.left = t.left - s.left + i), "using" in t ? t.using.call(e, p) : f.css(p);
    } }, w.fn.extend({ offset: function offset(e) {
      if (arguments.length) return void 0 === e ? this : this.each(function (t) {
        w.offset.setOffset(this, e, t);
      });var t,
          n,
          r = this[0];if (r) return r.getClientRects().length ? (t = r.getBoundingClientRect(), n = r.ownerDocument.defaultView, { top: t.top + n.pageYOffset, left: t.left + n.pageXOffset }) : { top: 0, left: 0 };
    }, position: function position() {
      if (this[0]) {
        var e,
            t,
            n,
            r = this[0],
            i = { top: 0, left: 0 };if ("fixed" === w.css(r, "position")) t = r.getBoundingClientRect();else {
          t = this.offset(), n = r.ownerDocument, e = r.offsetParent || n.documentElement;while (e && (e === n.body || e === n.documentElement) && "static" === w.css(e, "position")) {
            e = e.parentNode;
          }e && e !== r && 1 === e.nodeType && ((i = w(e).offset()).top += w.css(e, "borderTopWidth", !0), i.left += w.css(e, "borderLeftWidth", !0));
        }return { top: t.top - i.top - w.css(r, "marginTop", !0), left: t.left - i.left - w.css(r, "marginLeft", !0) };
      }
    }, offsetParent: function offsetParent() {
      return this.map(function () {
        var e = this.offsetParent;while (e && "static" === w.css(e, "position")) {
          e = e.offsetParent;
        }return e || be;
      });
    } }), w.each({ scrollLeft: "pageXOffset", scrollTop: "pageYOffset" }, function (e, t) {
    var n = "pageYOffset" === t;w.fn[e] = function (r) {
      return z(this, function (e, r, i) {
        var o;if (y(e) ? o = e : 9 === e.nodeType && (o = e.defaultView), void 0 === i) return o ? o[t] : e[r];o ? o.scrollTo(n ? o.pageXOffset : i, n ? i : o.pageYOffset) : e[r] = i;
      }, e, r, arguments.length);
    };
  }), w.each(["top", "left"], function (e, t) {
    w.cssHooks[t] = _e(h.pixelPosition, function (e, n) {
      if (n) return n = Fe(e, t), We.test(n) ? w(e).position()[t] + "px" : n;
    });
  }), w.each({ Height: "height", Width: "width" }, function (e, t) {
    w.each({ padding: "inner" + e, content: t, "": "outer" + e }, function (n, r) {
      w.fn[r] = function (i, o) {
        var a = arguments.length && (n || "boolean" != typeof i),
            s = n || (!0 === i || !0 === o ? "margin" : "border");return z(this, function (t, n, i) {
          var o;return y(t) ? 0 === r.indexOf("outer") ? t["inner" + e] : t.document.documentElement["client" + e] : 9 === t.nodeType ? (o = t.documentElement, Math.max(t.body["scroll" + e], o["scroll" + e], t.body["offset" + e], o["offset" + e], o["client" + e])) : void 0 === i ? w.css(t, n, s) : w.style(t, n, i, s);
        }, t, a ? i : void 0, a);
      };
    });
  }), w.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "), function (e, t) {
    w.fn[t] = function (e, n) {
      return arguments.length > 0 ? this.on(t, null, e, n) : this.trigger(t);
    };
  }), w.fn.extend({ hover: function hover(e, t) {
      return this.mouseenter(e).mouseleave(t || e);
    } }), w.fn.extend({ bind: function bind(e, t, n) {
      return this.on(e, null, t, n);
    }, unbind: function unbind(e, t) {
      return this.off(e, null, t);
    }, delegate: function delegate(e, t, n, r) {
      return this.on(t, e, n, r);
    }, undelegate: function undelegate(e, t, n) {
      return 1 === arguments.length ? this.off(e, "**") : this.off(t, e || "**", n);
    } }), w.proxy = function (e, t) {
    var n, r, i;if ("string" == typeof t && (n = e[t], t = e, e = n), g(e)) return r = o.call(arguments, 2), i = function i() {
      return e.apply(t || this, r.concat(o.call(arguments)));
    }, i.guid = e.guid = e.guid || w.guid++, i;
  }, w.holdReady = function (e) {
    e ? w.readyWait++ : w.ready(!0);
  }, w.isArray = Array.isArray, w.parseJSON = JSON.parse, w.nodeName = N, w.isFunction = g, w.isWindow = y, w.camelCase = G, w.type = x, w.now = Date.now, w.isNumeric = function (e) {
    var t = w.type(e);return ("number" === t || "string" === t) && !isNaN(e - parseFloat(e));
  }, "function" == typeof define && __webpack_require__("nErl") && define("jquery", [], function () {
    return w;
  });var Jt = e.jQuery,
      Kt = e.$;return w.noConflict = function (t) {
    return e.$ === w && (e.$ = Kt), t && e.jQuery === w && (e.jQuery = Jt), w;
  }, t || (e.jQuery = e.$ = w), w;
});
/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__("f1Eh")(module)))

/***/ }),

/***/ "Zf4G":
/***/ (function(module, exports) {

!function (e) {
  var t = { event: { CHECK: "ztree_check" }, id: { CHECK: "_check" }, checkbox: { STYLE: "checkbox", DEFAULT: "chk", DISABLED: "disable", FALSE: "false", TRUE: "true", FULL: "full", PART: "part", FOCUS: "focus" }, radio: { STYLE: "radio", TYPE_ALL: "all", TYPE_LEVEL: "level" } },
      c = { check: { enable: !1, autoCheckTrigger: !1, chkStyle: t.checkbox.STYLE, nocheckInherit: !1, chkDisabledInherit: !1, radioType: t.radio.TYPE_LEVEL, chkboxType: { Y: "ps", N: "ps" } }, data: { key: { checked: "checked" } }, callback: { beforeCheck: null, onCheck: null } },
      r = { onCheckNode: function onCheckNode(e, t) {
      if (!0 === t.chkDisabled) return !1;var c = C.getSetting(e.data.treeId);if (0 == o.apply(c.callback.beforeCheck, [c.treeId, t], !0)) return !0;var h = C.nodeChecked(c, t);C.nodeChecked(c, t, !h), l.checkNodeRelation(c, t);var a = f(t, s.id.CHECK, c);return l.setChkClass(c, a, t), l.repairParentChkClassWithSelf(c, t), c.treeObj.trigger(s.event.CHECK, [e, c.treeId, t]), !0;
    }, onMouseoverCheck: function onMouseoverCheck(e, t) {
      if (!0 === t.chkDisabled) return !1;var c = C.getSetting(e.data.treeId),
          h = f(t, s.id.CHECK, c);return t.check_Focus = !0, l.setChkClass(c, h, t), !0;
    }, onMouseoutCheck: function onMouseoutCheck(e, t) {
      if (!0 === t.chkDisabled) return !1;var c = C.getSetting(e.data.treeId),
          h = f(t, s.id.CHECK, c);return t.check_Focus = !1, l.setChkClass(c, h, t), !0;
    } },
      h = { tools: {}, view: { checkNodeRelation: function checkNodeRelation(e, t) {
        var c,
            h,
            a,
            n = s.radio,
            i = C.nodeChecked(e, t);if (e.check.chkStyle == n.STYLE) {
          var r = C.getRadioCheckedList(e);if (i) {
            if (e.check.radioType == n.TYPE_ALL) {
              for (h = r.length - 1; 0 <= h; h--) {
                c = r[h], C.nodeChecked(e, c) && c != t && (C.nodeChecked(e, c, !1), r.splice(h, 1), l.setChkClass(e, f(c, s.id.CHECK, e), c), c.parentTId != t.parentTId && l.repairParentChkClassWithSelf(e, c));
              }r.push(t);
            } else {
              var o = t.parentTId ? t.getParentNode() : C.getRoot(e);for (h = 0, a = (d = C.nodeChildren(e, o)).length; h < a; h++) {
                c = d[h], C.nodeChecked(e, c) && c != t && (C.nodeChecked(e, c, !1), l.setChkClass(e, f(c, s.id.CHECK, e), c));
              }
            }
          } else if (e.check.radioType == n.TYPE_ALL) for (h = 0, a = r.length; h < a; h++) {
            if (t == r[h]) {
              r.splice(h, 1);break;
            }
          }
        } else {
          var d = C.nodeChildren(e, t);i && (!d || 0 == d.length || -1 < e.check.chkboxType.Y.indexOf("s")) && l.setSonNodeCheckBox(e, t, !0), i || d && 0 != d.length && !(-1 < e.check.chkboxType.N.indexOf("s")) || l.setSonNodeCheckBox(e, t, !1), i && -1 < e.check.chkboxType.Y.indexOf("p") && l.setParentNodeCheckBox(e, t, !0), !i && -1 < e.check.chkboxType.N.indexOf("p") && l.setParentNodeCheckBox(e, t, !1);
        }
      }, makeChkClass: function makeChkClass(e, t) {
        var c = s.checkbox,
            h = s.radio,
            a = "",
            n = C.nodeChecked(e, t);a = !0 === t.chkDisabled ? c.DISABLED : t.halfCheck ? c.PART : e.check.chkStyle == h.STYLE ? t.check_Child_State < 1 ? c.FULL : c.PART : n ? 2 === t.check_Child_State || -1 === t.check_Child_State ? c.FULL : c.PART : t.check_Child_State < 1 ? c.FULL : c.PART;var i = e.check.chkStyle + "_" + (n ? c.TRUE : c.FALSE) + "_" + a;return i = t.check_Focus && !0 !== t.chkDisabled ? i + "_" + c.FOCUS : i, s.className.BUTTON + " " + c.DEFAULT + " " + i;
      }, repairAllChk: function repairAllChk(e, t) {
        if (e.check.enable && e.check.chkStyle === s.checkbox.STYLE) for (var c = C.getRoot(e), h = C.nodeChildren(e, c), a = 0, n = h.length; a < n; a++) {
          var i = h[a];!0 !== i.nocheck && !0 !== i.chkDisabled && C.nodeChecked(e, i, t), l.setSonNodeCheckBox(e, i, t);
        }
      }, repairChkClass: function repairChkClass(e, t) {
        if (t && (C.makeChkFlag(e, t), !0 !== t.nocheck)) {
          var c = f(t, s.id.CHECK, e);l.setChkClass(e, c, t);
        }
      }, repairParentChkClass: function repairParentChkClass(e, t) {
        if (t && t.parentTId) {
          var c = t.getParentNode();l.repairChkClass(e, c), l.repairParentChkClass(e, c);
        }
      }, repairParentChkClassWithSelf: function repairParentChkClassWithSelf(e, t) {
        if (t) {
          var c = C.nodeChildren(e, t);c && 0 < c.length ? l.repairParentChkClass(e, c[0]) : l.repairParentChkClass(e, t);
        }
      }, repairSonChkDisabled: function repairSonChkDisabled(e, t, c, h) {
        if (t) {
          t.chkDisabled != c && (t.chkDisabled = c), l.repairChkClass(e, t);var a = C.nodeChildren(e, t);if (a && h) for (var n = 0, i = a.length; n < i; n++) {
            var r = a[n];l.repairSonChkDisabled(e, r, c, h);
          }
        }
      }, repairParentChkDisabled: function repairParentChkDisabled(e, t, c, h) {
        t && (t.chkDisabled != c && h && (t.chkDisabled = c), l.repairChkClass(e, t), l.repairParentChkDisabled(e, t.getParentNode(), c, h));
      }, setChkClass: function setChkClass(e, t, c) {
        t && (!0 === c.nocheck ? t.hide() : t.show(), t.attr("class", l.makeChkClass(e, c)));
      }, setParentNodeCheckBox: function setParentNodeCheckBox(e, t, c, h) {
        var a = f(t, s.id.CHECK, e);if (h = h || t, C.makeChkFlag(e, t), !0 !== t.nocheck && !0 !== t.chkDisabled && (C.nodeChecked(e, t, c), l.setChkClass(e, a, t), e.check.autoCheckTrigger && t != h && e.treeObj.trigger(s.event.CHECK, [null, e.treeId, t])), t.parentTId) {
          var n = !0;if (!c) for (var i = C.nodeChildren(e, t.getParentNode()), r = 0, o = i.length; r < o; r++) {
            var d = i[r],
                k = C.nodeChecked(e, d);if (!0 !== d.nocheck && !0 !== d.chkDisabled && k || (!0 === d.nocheck || !0 === d.chkDisabled) && 0 < d.check_Child_State) {
              n = !1;break;
            }
          }n && l.setParentNodeCheckBox(e, t.getParentNode(), c, h);
        }
      }, setSonNodeCheckBox: function setSonNodeCheckBox(e, t, c, h) {
        if (t) {
          var a = f(t, s.id.CHECK, e);h = h || t;var n = !1,
              i = C.nodeChildren(e, t);if (i) for (var r = 0, o = i.length; r < o; r++) {
            var d = i[r];l.setSonNodeCheckBox(e, d, c, h), !0 === d.chkDisabled && (n = !0);
          }t != C.getRoot(e) && !0 !== t.chkDisabled && (n && !0 !== t.nocheck && C.makeChkFlag(e, t), !0 !== t.nocheck && !0 !== t.chkDisabled ? (C.nodeChecked(e, t, c), n || (t.check_Child_State = i && 0 < i.length ? c ? 2 : 0 : -1)) : t.check_Child_State = -1, l.setChkClass(e, a, t), e.check.autoCheckTrigger && t != h && !0 !== t.nocheck && !0 !== t.chkDisabled && e.treeObj.trigger(s.event.CHECK, [null, e.treeId, t]));
        }
      } }, event: {}, data: { getRadioCheckedList: function getRadioCheckedList(e) {
        for (var t = C.getRoot(e).radioCheckedList, c = 0, h = t.length; c < h; c++) {
          C.getNodeCache(e, t[c].tId) || (t.splice(c, 1), c--, h--);
        }return t;
      }, getCheckStatus: function getCheckStatus(e, t) {
        if (!e.check.enable || t.nocheck || t.chkDisabled) return null;var c = C.nodeChecked(e, t);return { checked: c, half: t.halfCheck ? t.halfCheck : e.check.chkStyle == s.radio.STYLE ? 2 === t.check_Child_State : c ? -1 < t.check_Child_State && t.check_Child_State < 2 : 0 < t.check_Child_State };
      }, getTreeCheckedNodes: function getTreeCheckedNodes(e, t, c, h) {
        if (!t) return [];var a = c && e.check.chkStyle == s.radio.STYLE && e.check.radioType == s.radio.TYPE_ALL;h = h || [];for (var n = 0, i = t.length; n < i; n++) {
          var r = t[n],
              o = C.nodeChildren(e, r),
              d = C.nodeChecked(e, r);if (!0 !== r.nocheck && !0 !== r.chkDisabled && d == c && (h.push(r), a)) break;if (C.getTreeCheckedNodes(e, o, c, h), a && 0 < h.length) break;
        }return h;
      }, getTreeChangeCheckedNodes: function getTreeChangeCheckedNodes(e, t, c) {
        if (!t) return [];c = c || [];for (var h = 0, a = t.length; h < a; h++) {
          var n = t[h],
              i = C.nodeChildren(e, n),
              r = C.nodeChecked(e, n);!0 !== n.nocheck && !0 !== n.chkDisabled && r != n.checkedOld && c.push(n), C.getTreeChangeCheckedNodes(e, i, c);
        }return c;
      }, makeChkFlag: function makeChkFlag(e, t) {
        if (t) {
          var c = -1,
              h = C.nodeChildren(e, t);if (h) for (var a = 0, n = h.length; a < n; a++) {
            var i = h[a],
                r = C.nodeChecked(e, i),
                o = -1;if (e.check.chkStyle == s.radio.STYLE) {
              if (2 == (o = !0 === i.nocheck || !0 === i.chkDisabled ? i.check_Child_State : !0 === i.halfCheck || r || 0 < i.check_Child_State ? 2 : 0)) {
                c = 2;break;
              }0 == o && (c = 0);
            } else if (e.check.chkStyle == s.checkbox.STYLE) {
              if (1 === (o = !0 === i.nocheck || !0 === i.chkDisabled ? i.check_Child_State : !0 === i.halfCheck ? 1 : r ? -1 === i.check_Child_State || 2 === i.check_Child_State ? 2 : 1 : 0 < i.check_Child_State ? 1 : 0)) {
                c = 1;break;
              }if (2 === o && -1 < c && 0 < a && o !== c) {
                c = 1;break;
              }if (2 === c && -1 < o && o < 2) {
                c = 1;break;
              }-1 < o && (c = o);
            }
          }t.check_Child_State = c;
        }
      } } };e.extend(!0, e.fn.zTree.consts, t), e.extend(!0, e.fn.zTree._z, h);var a = e.fn.zTree,
      o = a._z.tools,
      s = a.consts,
      l = a._z.view,
      C = a._z.data,
      f = (a._z.event, o.$);C.nodeChecked = function (e, t, c) {
    if (!t) return !1;var h = e.data.key.checked;return void 0 !== c ? ("string" == typeof c && (c = o.eqs(c, "true")), c = !!c, t[h] = c) : "string" == typeof t[h] ? t[h] = o.eqs(t[h], "true") : t[h] = !!t[h], t[h];
  }, C.exSetting(c), C.addInitBind(function (a) {
    var e = a.treeObj,
        t = s.event;e.bind(t.CHECK, function (e, t, c, h) {
      e.srcEvent = t, o.apply(a.callback.onCheck, [e, c, h]);
    });
  }), C.addInitUnBind(function (e) {
    var t = e.treeObj,
        c = s.event;t.unbind(c.CHECK);
  }), C.addInitCache(function (e) {}), C.addInitNode(function (e, t, c, h, a, n, i) {
    if (c) {
      var r = C.nodeChecked(e, c);if (c.checkedOld = r, "string" == typeof c.nocheck && (c.nocheck = o.eqs(c.nocheck, "true")), c.nocheck = !!c.nocheck || e.check.nocheckInherit && h && !!h.nocheck, "string" == typeof c.chkDisabled && (c.chkDisabled = o.eqs(c.chkDisabled, "true")), c.chkDisabled = !!c.chkDisabled || e.check.chkDisabledInherit && h && !!h.chkDisabled, "string" == typeof c.halfCheck && (c.halfCheck = o.eqs(c.halfCheck, "true")), c.halfCheck = !!c.halfCheck, c.check_Child_State = -1, c.check_Focus = !1, c.getCheckStatus = function () {
        return C.getCheckStatus(e, c);
      }, e.check.chkStyle == s.radio.STYLE && e.check.radioType == s.radio.TYPE_ALL && r) C.getRoot(e).radioCheckedList.push(c);
    }
  }), C.addInitProxy(function (e) {
    var t = e.target,
        c = C.getSetting(e.data.treeId),
        h = "",
        a = null,
        n = "",
        i = null;if (o.eqs(e.type, "mouseover") ? c.check.enable && o.eqs(t.tagName, "span") && null !== t.getAttribute("treeNode" + s.id.CHECK) && (h = o.getNodeMainDom(t).id, n = "mouseoverCheck") : o.eqs(e.type, "mouseout") ? c.check.enable && o.eqs(t.tagName, "span") && null !== t.getAttribute("treeNode" + s.id.CHECK) && (h = o.getNodeMainDom(t).id, n = "mouseoutCheck") : o.eqs(e.type, "click") && c.check.enable && o.eqs(t.tagName, "span") && null !== t.getAttribute("treeNode" + s.id.CHECK) && (h = o.getNodeMainDom(t).id, n = "checkNode"), 0 < h.length) switch (a = C.getNodeCache(c, h), n) {case "checkNode":
        i = r.onCheckNode;break;case "mouseoverCheck":
        i = r.onMouseoverCheck;break;case "mouseoutCheck":
        i = r.onMouseoutCheck;}return { stop: "checkNode" === n, node: a, nodeEventType: n, nodeEventCallback: i, treeEventType: "", treeEventCallback: null };
  }, !0), C.addInitRoot(function (e) {
    C.getRoot(e).radioCheckedList = [];
  }), C.addBeforeA(function (e, t, c) {
    e.check.enable && (C.makeChkFlag(e, t), c.push("<span ID='", t.tId, s.id.CHECK, "' class='", l.makeChkClass(e, t), "' treeNode", s.id.CHECK, !0 === t.nocheck ? " style='display:none;'" : "", "></span>"));
  }), C.addZTreeTools(function (i, h) {
    h.checkNode = function (e, t, c, h) {
      var a = C.nodeChecked(i, e);if (!0 !== e.chkDisabled && (!0 !== t && !1 !== t && (t = !a), h = !!h, (a !== t || c) && (!h || 0 != o.apply(this.setting.callback.beforeCheck, [this.setting.treeId, e], !0)) && o.uCanDo(this.setting) && this.setting.check.enable && !0 !== e.nocheck)) {
        C.nodeChecked(i, e, t);var n = f(e, s.id.CHECK, this.setting);!c && this.setting.check.chkStyle !== s.radio.STYLE || l.checkNodeRelation(this.setting, e), l.setChkClass(this.setting, n, e), l.repairParentChkClassWithSelf(this.setting, e), h && this.setting.treeObj.trigger(s.event.CHECK, [null, this.setting.treeId, e]);
      }
    }, h.checkAllNodes = function (e) {
      l.repairAllChk(this.setting, !!e);
    }, h.getCheckedNodes = function (e) {
      e = !1 !== e;var t = C.nodeChildren(i, C.getRoot(this.setting));return C.getTreeCheckedNodes(this.setting, t, e);
    }, h.getChangeCheckedNodes = function () {
      var e = C.nodeChildren(i, C.getRoot(this.setting));return C.getTreeChangeCheckedNodes(this.setting, e);
    }, h.setChkDisabled = function (e, t, c, h) {
      t = !!t, c = !!c, h = !!h, l.repairSonChkDisabled(this.setting, e, t, h), l.repairParentChkDisabled(this.setting, e.getParentNode(), t, c);
    };var a = h.updateNode;h.updateNode = function (e, t) {
      if ((a && a.apply(h, arguments), e && this.setting.check.enable) && f(e, this.setting).get(0) && o.uCanDo(this.setting)) {
        var c = f(e, s.id.CHECK, this.setting);1 != t && this.setting.check.chkStyle !== s.radio.STYLE || l.checkNodeRelation(this.setting, e), l.setChkClass(this.setting, c, e), l.repairParentChkClassWithSelf(this.setting, e);
      }
    };
  });var n = l.createNodes;l.createNodes = function (e, t, c, h, a) {
    n && n.apply(l, arguments), c && l.repairParentChkClassWithSelf(e, h);
  };var i = l.removeNode;l.removeNode = function (e, t) {
    var c = t.getParentNode();i && i.apply(l, arguments), t && c && (l.repairChkClass(e, c), l.repairParentChkClass(e, c));
  };var d = l.appendNodes;l.appendNodes = function (e, t, c, h, a, n, i) {
    var r = "";return d && (r = d.apply(l, arguments)), h && C.makeChkFlag(e, h), r;
  };
}(jQuery);

/***/ }),

/***/ "Zilr":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "Zy5R":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/mixin/autoResize.js
var autoResize = __webpack_require__("kN6d");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/util/index.js
var util = __webpack_require__("3e7c");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var lib_util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(lib_util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/color/lib/index.js
var lib = __webpack_require__("glc7");
var lib_default = /*#__PURE__*/__webpack_require__.n(lib);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/borderBox12/src/main.vue
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//










/* harmony default export */ var main = ({
  name: 'DvBorderBox12',
  mixins: [autoResize["a" /* default */]],
  props: {
    color: {
      type: Array,
      default: function _default() {
        return [];
      }
    },
    backgroundColor: {
      type: String,
      default: 'transparent'
    }
  },
  data: function data() {
    var id = Object(util["e" /* uuid */])();
    return {
      ref: 'border-box-12',
      filterId: 'borderr-box-12-filterId-' + id,

      defaultColor: ['#2e6099', '#7ce7fd'],

      mergedColor: []
    };
  },

  watch: {
    color: function color() {
      var mergeColor = this.mergeColor;


      mergeColor();
    }
  },
  methods: {
    mergeColor: function mergeColor() {
      var color = this.color,
          defaultColor = this.defaultColor;


      this.mergedColor = Object(lib_util["deepMerge"])(Object(plugin_util["deepClone"])(defaultColor, true), color || []);
    },

    fade: lib["fade"]
  },
  mounted: function mounted() {
    var mergeColor = this.mergeColor;


    mergeColor();
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-460c1118","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/borderBox12/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:_vm.ref,staticClass:"dv-border-box-12"},[_c('svg',{staticClass:"dv-border-svg-container",attrs:{"width":_vm.width,"height":_vm.height}},[_c('defs',[_c('filter',{attrs:{"id":_vm.filterId,"height":"150%","width":"150%","x":"-25%","y":"-25%"}},[_c('feMorphology',{attrs:{"operator":"dilate","radius":"1","in":"SourceAlpha","result":"thicken"}}),_vm._v(" "),_c('feGaussianBlur',{attrs:{"in":"thicken","stdDeviation":"2","result":"blurred"}}),_vm._v(" "),_c('feFlood',{attrs:{"flood-color":_vm.fade(_vm.mergedColor[1] || _vm.defaultColor[1], 70),"result":"glowColor"}},[_c('animate',{attrs:{"attributeName":"flood-color","values":("\n              " + (_vm.fade(_vm.mergedColor[1] || _vm.defaultColor[1], 70)) + ";\n              " + (_vm.fade(_vm.mergedColor[1] || _vm.defaultColor[1], 30)) + ";\n              " + (_vm.fade(_vm.mergedColor[1] || _vm.defaultColor[1], 70)) + ";\n            "),"dur":"3s","begin":"0s","repeatCount":"indefinite"}})]),_vm._v(" "),_c('feComposite',{attrs:{"in":"glowColor","in2":"blurred","operator":"in","result":"softGlowColored"}}),_vm._v(" "),_c('feMerge',[_c('feMergeNode',{attrs:{"in":"softGlowColored"}}),_vm._v(" "),_c('feMergeNode',{attrs:{"in":"SourceGraphic"}})],1)],1)]),_vm._v(" "),(_vm.width && _vm.height)?_c('path',{attrs:{"fill":_vm.backgroundColor,"stroke-width":"2","stroke":_vm.mergedColor[0],"d":("\n        M15 5 L " + (_vm.width - 15) + " 5 Q " + (_vm.width - 5) + " 5, " + (_vm.width - 5) + " 15\n        L " + (_vm.width - 5) + " " + (_vm.height - 15) + " Q " + (_vm.width - 5) + " " + (_vm.height - 5) + ", " + (_vm.width - 15) + " " + (_vm.height - 5) + "\n        L 15, " + (_vm.height - 5) + " Q 5 " + (_vm.height - 5) + " 5 " + (_vm.height - 15) + " L 5 15\n        Q 5 5 15 5\n      ")}}):_vm._e(),_vm._v(" "),_c('path',{attrs:{"stroke-width":"2","fill":"transparent","stroke-linecap":"round","filter":("url(#" + _vm.filterId + ")"),"stroke":_vm.mergedColor[1],"d":"M 20 5 L 15 5 Q 5 5 5 15 L 5 20"}}),_vm._v(" "),_c('path',{attrs:{"stroke-width":"2","fill":"transparent","stroke-linecap":"round","filter":("url(#" + _vm.filterId + ")"),"stroke":_vm.mergedColor[1],"d":("M " + (_vm.width - 20) + " 5 L " + (_vm.width - 15) + " 5 Q " + (_vm.width - 5) + " 5 " + (_vm.width - 5) + " 15 L " + (_vm.width - 5) + " 20")}}),_vm._v(" "),_c('path',{attrs:{"stroke-width":"2","fill":"transparent","stroke-linecap":"round","filter":("url(#" + _vm.filterId + ")"),"stroke":_vm.mergedColor[1],"d":("\n        M " + (_vm.width - 20) + " " + (_vm.height - 5) + " L " + (_vm.width - 15) + " " + (_vm.height - 5) + "\n        Q " + (_vm.width - 5) + " " + (_vm.height - 5) + " " + (_vm.width - 5) + " " + (_vm.height - 15) + "\n        L " + (_vm.width - 5) + " " + (_vm.height - 20) + "\n      ")}}),_vm._v(" "),_c('path',{attrs:{"stroke-width":"2","fill":"transparent","stroke-linecap":"round","filter":("url(#" + _vm.filterId + ")"),"stroke":_vm.mergedColor[1],"d":("\n        M 20 " + (_vm.height - 5) + " L 15 " + (_vm.height - 5) + "\n        Q 5 " + (_vm.height - 5) + " 5 " + (_vm.height - 15) + "\n        L 5 " + (_vm.height - 20) + "\n      ")}})]),_vm._v(" "),_c('div',{staticClass:"border-box-content"},[_vm._t("default")],2)])}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/borderBox12/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var borderBox12_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "aBM5":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/mixin/autoResize.js
var autoResize = __webpack_require__("kN6d");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/color/lib/index.js
var lib = __webpack_require__("glc7");
var lib_default = /*#__PURE__*/__webpack_require__.n(lib);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/decoration11/src/main.vue
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//









/* harmony default export */ var main = ({
  name: 'DvDecoration11',
  mixins: [autoResize["a" /* default */]],
  props: {
    color: {
      type: Array,
      default: function _default() {
        return [];
      }
    }
  },
  data: function data() {
    return {
      ref: 'decoration-11',

      defaultColor: ['#1a98fc', '#2cf7fe'],

      mergedColor: []
    };
  },

  watch: {
    color: function color() {
      var mergeColor = this.mergeColor;


      mergeColor();
    }
  },
  methods: {
    mergeColor: function mergeColor() {
      var color = this.color,
          defaultColor = this.defaultColor;


      this.mergedColor = Object(util["deepMerge"])(Object(plugin_util["deepClone"])(defaultColor, true), color || []);
    },

    fade: lib["fade"]
  },
  mounted: function mounted() {
    var mergeColor = this.mergeColor;


    mergeColor();
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-c3e466e8","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/decoration11/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:_vm.ref,staticClass:"dv-decoration-11"},[_c('svg',{attrs:{"width":_vm.width,"height":_vm.height}},[_c('polygon',{attrs:{"fill":_vm.fade(_vm.mergedColor[1] || _vm.defaultColor[1], 10),"stroke":_vm.mergedColor[1],"points":"20 10, 25 4, 55 4 60 10"}}),_vm._v(" "),_c('polygon',{attrs:{"fill":_vm.fade(_vm.mergedColor[1] || _vm.defaultColor[1], 10),"stroke":_vm.mergedColor[1],"points":("20 " + (_vm.height - 10) + ", 25 " + (_vm.height - 4) + ", 55 " + (_vm.height - 4) + " 60 " + (_vm.height - 10))}}),_vm._v(" "),_c('polygon',{attrs:{"fill":_vm.fade(_vm.mergedColor[1] || _vm.defaultColor[1], 10),"stroke":_vm.mergedColor[1],"points":((_vm.width - 20) + " 10, " + (_vm.width - 25) + " 4, " + (_vm.width - 55) + " 4 " + (_vm.width - 60) + " 10")}}),_vm._v(" "),_c('polygon',{attrs:{"fill":_vm.fade(_vm.mergedColor[1] || _vm.defaultColor[1], 10),"stroke":_vm.mergedColor[1],"points":((_vm.width - 20) + " " + (_vm.height - 10) + ", " + (_vm.width - 25) + " " + (_vm.height - 4) + ", " + (_vm.width - 55) + " " + (_vm.height - 4) + " " + (_vm.width - 60) + " " + (_vm.height - 10))}}),_vm._v(" "),_c('polygon',{attrs:{"fill":_vm.fade(_vm.mergedColor[0] || _vm.defaultColor[0], 20),"stroke":_vm.mergedColor[0],"points":("\n        20 10, 5 " + (_vm.height / 2) + " 20 " + (_vm.height - 10) + "\n        " + (_vm.width - 20) + " " + (_vm.height - 10) + " " + (_vm.width - 5) + " " + (_vm.height / 2) + " " + (_vm.width - 20) + " 10\n      ")}}),_vm._v(" "),_c('polyline',{attrs:{"fill":"transparent","stroke":_vm.fade(_vm.mergedColor[0] || _vm.defaultColor[0], 70),"points":("25 18, 15 " + (_vm.height / 2) + " 25 " + (_vm.height - 18))}}),_vm._v(" "),_c('polyline',{attrs:{"fill":"transparent","stroke":_vm.fade(_vm.mergedColor[0] || _vm.defaultColor[0], 70),"points":((_vm.width - 25) + " 18, " + (_vm.width - 15) + " " + (_vm.height / 2) + " " + (_vm.width - 25) + " " + (_vm.height - 18))}})]),_vm._v(" "),_c('div',{staticClass:"decoration-content"},[_vm._t("default")],2)])}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/decoration11/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var decoration11_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "abaV":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "acHp":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/mixin/autoResize.js
var autoResize = __webpack_require__("kN6d");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/borderBox3/src/main.vue
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//







/* harmony default export */ var main = ({
  name: 'DvBorderBox3',
  mixins: [autoResize["a" /* default */]],
  props: {
    color: {
      type: Array,
      default: function _default() {
        return [];
      }
    },
    backgroundColor: {
      type: String,
      default: 'transparent'
    }
  },
  data: function data() {
    return {
      ref: 'border-box-3',

      defaultColor: ['#2862b7', '#2862b7'],

      mergedColor: []
    };
  },

  watch: {
    color: function color() {
      var mergeColor = this.mergeColor;


      mergeColor();
    }
  },
  methods: {
    mergeColor: function mergeColor() {
      var color = this.color,
          defaultColor = this.defaultColor;


      this.mergedColor = Object(util["deepMerge"])(Object(plugin_util["deepClone"])(defaultColor, true), color || []);
    }
  },
  mounted: function mounted() {
    var mergeColor = this.mergeColor;


    mergeColor();
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-580afe41","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/borderBox3/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:_vm.ref,staticClass:"dv-border-box-3"},[_c('svg',{staticClass:"dv-border-svg-container",attrs:{"width":_vm.width,"height":_vm.height}},[_c('polygon',{attrs:{"fill":_vm.backgroundColor,"points":("\n      23, 23 " + (_vm.width - 24) + ", 23 " + (_vm.width - 24) + ", " + (_vm.height - 24) + " 23, " + (_vm.height - 24) + "\n    ")}}),_vm._v(" "),_c('polyline',{staticClass:"dv-bb3-line1",attrs:{"stroke":_vm.mergedColor[0],"points":("4, 4 " + (_vm.width - 22) + " ,4 " + (_vm.width - 22) + ", " + (_vm.height - 22) + " 4, " + (_vm.height - 22) + " 4, 4")}}),_vm._v(" "),_c('polyline',{staticClass:"dv-bb3-line2",attrs:{"stroke":_vm.mergedColor[1],"points":("10, 10 " + (_vm.width - 16) + ", 10 " + (_vm.width - 16) + ", " + (_vm.height - 16) + " 10, " + (_vm.height - 16) + " 10, 10")}}),_vm._v(" "),_c('polyline',{staticClass:"dv-bb3-line2",attrs:{"stroke":_vm.mergedColor[1],"points":("16, 16 " + (_vm.width - 10) + ", 16 " + (_vm.width - 10) + ", " + (_vm.height - 10) + " 16, " + (_vm.height - 10) + " 16, 16")}}),_vm._v(" "),_c('polyline',{staticClass:"dv-bb3-line2",attrs:{"stroke":_vm.mergedColor[1],"points":("22, 22 " + (_vm.width - 4) + ", 22 " + (_vm.width - 4) + ", " + (_vm.height - 4) + " 22, " + (_vm.height - 4) + " 22, 22")}})]),_vm._v(" "),_c('div',{staticClass:"border-box-content"},[_vm._t("default")],2)])}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/borderBox3/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var borderBox3_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "bQSR":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "bX3P":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/babel-runtime/regenerator/index.js
var regenerator = __webpack_require__("Xxa5");
var regenerator_default = /*#__PURE__*/__webpack_require__.n(regenerator);

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/asyncToGenerator.js
var asyncToGenerator = __webpack_require__("exGp");
var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/slicedToArray.js
var slicedToArray = __webpack_require__("d7EF");
var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/toConsumableArray.js
var toConsumableArray = __webpack_require__("Gu7T");
var toConsumableArray_default = /*#__PURE__*/__webpack_require__.n(toConsumableArray);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/util/index.js
var util = __webpack_require__("3e7c");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var lib_util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(lib_util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/index.js
var lib = __webpack_require__("TzJp");
var lib_default = /*#__PURE__*/__webpack_require__.n(lib);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/waterLevelPond/src/main.vue




//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//









/* harmony default export */ var main = ({
  name: 'DvWaterLevelPond',
  props: {
    config: Object,
    default: function _default() {
      return {};
    }
  },
  data: function data() {
    var id = Object(util["e" /* uuid */])();
    return {
      gradientId: 'water-level-pond-' + id,

      defaultConfig: {
        /**
         * @description Data
         * @type {Array<Number>}
         * @default data = []
         * @example data = [60, 40]
         */
        data: [],
        /**
         * @description Shape of wanter level pond
         * @type {String}
         * @default shape = 'rect'
         * @example shape = 'rect' | 'roundRect' | 'round'
         */
        shape: 'rect',
        /**
         * @description Water wave number
         * @type {Number}
         * @default waveNum = 3
         */
        waveNum: 3,
        /**
         * @description Water wave height (px)
         * @type {Number}
         * @default waveHeight = 40
         */
        waveHeight: 40,
        /**
         * @description Wave opacity
         * @type {Number}
         * @default waveOpacity = 0.4
         */
        waveOpacity: 0.4,
        /**
         * @description Colors (hex|rgb|rgba|color keywords)
         * @type {Array<String>}
         * @default colors = ['#00BAFF', '#3DE7C9']
         * @example colors = ['#000', 'rgb(0, 0, 0)', 'rgba(0, 0, 0, 1)', 'red']
         */
        colors: ['#3DE7C9', '#00BAFF'],
        /**
         * @description Formatter
         * @type {String}
         * @default formatter = '{value}%'
         */
        formatter: '{value}%'
      },

      mergedConfig: {},

      renderer: null,

      svgBorderGradient: [],

      details: '',

      waves: [],

      animation: false
    };
  },

  computed: {
    radius: function radius() {
      var shape = this.mergedConfig.shape;


      if (shape === 'round') return '50%';

      if (shape === 'rect') return '0';

      if (shape === 'roundRect') return '10px';

      return '0';
    },
    shape: function shape() {
      var shape = this.mergedConfig.shape;


      if (!shape) return 'rect';

      return shape;
    }
  },
  watch: {
    config: function config() {
      var calcData = this.calcData,
          renderer = this.renderer;


      renderer.delAllGraph();

      this.waves = [];

      setTimeout(calcData, 0);
    }
  },
  methods: {
    init: function init() {
      var initRender = this.initRender,
          config = this.config,
          calcData = this.calcData;


      initRender();

      if (!config) return;

      calcData();
    },
    initRender: function initRender() {
      var $refs = this.$refs;


      this.renderer = new lib_default.a($refs['water-pond-level']);
    },
    calcData: function calcData() {
      var mergeConfig = this.mergeConfig,
          calcSvgBorderGradient = this.calcSvgBorderGradient,
          calcDetails = this.calcDetails;


      mergeConfig();

      calcSvgBorderGradient();

      calcDetails();

      var addWave = this.addWave,
          animationWave = this.animationWave;


      addWave();

      animationWave();
    },
    mergeConfig: function mergeConfig() {
      var config = this.config,
          defaultConfig = this.defaultConfig;


      this.mergedConfig = Object(lib_util["deepMerge"])(Object(plugin_util["deepClone"])(defaultConfig, true), config);
    },
    calcSvgBorderGradient: function calcSvgBorderGradient() {
      var colors = this.mergedConfig.colors;


      var colorNum = colors.length;

      var colorOffsetGap = 100 / (colorNum - 1);

      this.svgBorderGradient = colors.map(function (c, i) {
        return [colorOffsetGap * i, c];
      });
    },
    calcDetails: function calcDetails() {
      var _mergedConfig = this.mergedConfig,
          data = _mergedConfig.data,
          formatter = _mergedConfig.formatter;


      if (!data.length) {
        this.details = '';

        return;
      }

      var maxValue = Math.max.apply(Math, toConsumableArray_default()(data));

      this.details = formatter.replace('{value}', maxValue);
    },
    addWave: function addWave() {
      var renderer = this.renderer,
          getWaveShapes = this.getWaveShapes,
          getWaveStyle = this.getWaveStyle,
          drawed = this.drawed;


      var shapes = getWaveShapes();
      var style = getWaveStyle();

      this.waves = shapes.map(function (shape) {
        return renderer.add({
          name: 'smoothline',
          animationFrame: 300,
          shape: shape,
          style: style,
          drawed: drawed
        });
      });
    },
    getWaveShapes: function getWaveShapes() {
      var mergedConfig = this.mergedConfig,
          renderer = this.renderer,
          mergeOffset = this.mergeOffset;
      var waveNum = mergedConfig.waveNum,
          waveHeight = mergedConfig.waveHeight,
          data = mergedConfig.data;

      var _renderer$area = slicedToArray_default()(renderer.area, 2),
          w = _renderer$area[0],
          h = _renderer$area[1];

      var pointsNum = waveNum * 4 + 4;

      var pointXGap = w / waveNum / 2;

      return data.map(function (v) {
        var points = new Array(pointsNum).fill(0).map(function (foo, j) {
          var x = w - pointXGap * j;

          var startY = (1 - v / 100) * h;

          var y = j % 2 === 0 ? startY : startY - waveHeight;

          return [x, y];
        });

        points = points.map(function (p) {
          return mergeOffset(p, [pointXGap * 2, 0]);
        });

        return { points: points };
      });
    },
    mergeOffset: function mergeOffset(_ref, _ref2) {
      var _ref4 = slicedToArray_default()(_ref, 2),
          x = _ref4[0],
          y = _ref4[1];

      var _ref3 = slicedToArray_default()(_ref2, 2),
          ox = _ref3[0],
          oy = _ref3[1];

      return [x + ox, y + oy];
    },
    getWaveStyle: function getWaveStyle() {
      var renderer = this.renderer,
          mergedConfig = this.mergedConfig;


      var h = renderer.area[1];

      return {
        gradientColor: mergedConfig.colors,
        gradientType: 'linear',
        gradientParams: [0, 0, 0, h],
        gradientWith: 'fill',
        opacity: mergedConfig.waveOpacity,
        translate: [0, 0]
      };
    },
    drawed: function drawed(_ref5, _ref6) {
      var points = _ref5.shape.points;
      var ctx = _ref6.ctx,
          area = _ref6.area;

      var firstPoint = points[0];
      var lastPoint = points.slice(-1)[0];

      var h = area[1];

      ctx.lineTo(lastPoint[0], h);
      ctx.lineTo(firstPoint[0], h);

      ctx.closePath();

      ctx.fill();
    },
    animationWave: function animationWave() {
      var _this = this;

      var repeat = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;
      return asyncToGenerator_default()( /*#__PURE__*/regenerator_default.a.mark(function _callee() {
        var waves, renderer, animation, w;
        return regenerator_default.a.wrap(function _callee$(_context) {
          while (1) {
            switch (_context.prev = _context.next) {
              case 0:
                waves = _this.waves, renderer = _this.renderer, animation = _this.animation;

                if (!animation) {
                  _context.next = 3;
                  break;
                }

                return _context.abrupt('return');

              case 3:

                _this.animation = true;

                w = renderer.area[0];


                waves.forEach(function (graph) {
                  graph.attr('style', { translate: [0, 0] });

                  graph.animation('style', {
                    translate: [w, 0]
                  }, true);
                });

                _context.next = 8;
                return renderer.launchAnimation();

              case 8:

                _this.animation = false;

                if (renderer.graphs.length) {
                  _context.next = 11;
                  break;
                }

                return _context.abrupt('return');

              case 11:

                _this.animationWave(repeat + 1);

              case 12:
              case 'end':
                return _context.stop();
            }
          }
        }, _callee, _this);
      }))();
    }
  },
  mounted: function mounted() {
    var init = this.init;


    init();
  },
  beforeDestroy: function beforeDestroy() {
    var renderer = this.renderer;


    renderer.delAllGraph();

    this.waves = [];
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-fde64310","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/waterLevelPond/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"dv-water-pond-level"},[(_vm.renderer)?_c('svg',[_c('defs',[_c('linearGradient',{attrs:{"id":_vm.gradientId,"x1":"0%","y1":"0%","x2":"0%","y2":"100%"}},_vm._l((_vm.svgBorderGradient),function(lc){return _c('stop',{key:lc[0],attrs:{"offset":lc[0],"stop-color":lc[1]}})}),1)],1),_vm._v(" "),(_vm.renderer)?_c('text',{attrs:{"stroke":("url(#" + _vm.gradientId + ")"),"fill":("url(#" + _vm.gradientId + ")"),"x":_vm.renderer.area[0] / 2 + 8,"y":_vm.renderer.area[1] / 2 + 8}},[_vm._v("\n      "+_vm._s(_vm.details)+"\n    ")]):_vm._e(),_vm._v(" "),(!_vm.shape || _vm.shape === 'round')?_c('ellipse',{attrs:{"cx":_vm.renderer.area[0] / 2 + 8,"cy":_vm.renderer.area[1] / 2 + 8,"rx":_vm.renderer.area[0] / 2 + 5,"ry":_vm.renderer.area[1] / 2 + 5,"stroke":("url(#" + _vm.gradientId + ")")}}):_c('rect',{attrs:{"x":"2","y":"2","rx":_vm.shape === 'roundRect' ? 10 : 0,"ry":_vm.shape === 'roundRect' ? 10 : 0,"width":_vm.renderer.area[0] + 12,"height":_vm.renderer.area[1] + 12,"stroke":("url(#" + _vm.gradientId + ")")}})]):_vm._e(),_vm._v(" "),_c('canvas',{ref:"water-pond-level",style:(("border-radius: " + _vm.radius + ";"))})])}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/waterLevelPond/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var waterLevelPond_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "bxTc":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "cEED":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "cQII":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/mixin/autoResize.js
var autoResize = __webpack_require__("kN6d");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/decoration4/src/main.vue
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//







/* harmony default export */ var main = ({
  name: 'DvDecoration4',
  mixins: [autoResize["a" /* default */]],
  props: {
    color: {
      type: Array,
      default: function _default() {
        return [];
      }
    },
    reverse: {
      type: Boolean,
      default: false
    },
    dur: {
      type: Number,
      default: 3
    }
  },
  data: function data() {
    return {
      ref: 'decoration-4',

      defaultColor: ['rgba(255, 255, 255, 0.3)', 'rgba(255, 255, 255, 0.3)'],

      mergedColor: []
    };
  },

  watch: {
    color: function color() {
      var mergeColor = this.mergeColor;


      mergeColor();
    }
  },
  methods: {
    mergeColor: function mergeColor() {
      var color = this.color,
          defaultColor = this.defaultColor;


      this.mergedColor = Object(util["deepMerge"])(Object(plugin_util["deepClone"])(defaultColor, true), color || []);
    }
  },
  mounted: function mounted() {
    var mergeColor = this.mergeColor;


    mergeColor();
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-29f329c8","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/decoration4/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:_vm.ref,staticClass:"dv-decoration-4"},[_c('div',{class:("container " + (_vm.reverse ? 'reverse' : 'normal')),style:(_vm.reverse ? ("width:" + _vm.width + "px;height:5px;animation-duration:" + _vm.dur + "s") : ("width:5px;height:" + _vm.height + "px;animation-duration:" + _vm.dur + "s"))},[_c('svg',{attrs:{"width":_vm.reverse ? _vm.width : 5,"height":_vm.reverse ? 5 : _vm.height}},[_c('polyline',{attrs:{"stroke":_vm.mergedColor[0],"points":_vm.reverse ? ("0, 2.5 " + _vm.width + ", 2.5") : ("2.5, 0 2.5, " + _vm.height)}}),_vm._v(" "),_c('polyline',{staticClass:"bold-line",attrs:{"stroke":_vm.mergedColor[1],"stroke-width":"3","stroke-dasharray":"20, 80","stroke-dashoffset":"-30","points":_vm.reverse ? ("0, 2.5 " + _vm.width + ", 2.5") : ("2.5, 0 2.5, " + _vm.height)}})])])])}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/decoration4/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var decoration4_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "cgqx":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/babel-runtime/regenerator/index.js
var regenerator = __webpack_require__("Xxa5");
var regenerator_default = /*#__PURE__*/__webpack_require__.n(regenerator);

// EXTERNAL MODULE: ./node_modules/babel-runtime/core-js/promise.js
var promise = __webpack_require__("//Fk");
var promise_default = /*#__PURE__*/__webpack_require__.n(promise);

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/asyncToGenerator.js
var asyncToGenerator = __webpack_require__("exGp");
var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/extends.js
var helpers_extends = __webpack_require__("Dd8w");
var extends_default = /*#__PURE__*/__webpack_require__.n(helpers_extends);

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/toConsumableArray.js
var toConsumableArray = __webpack_require__("Gu7T");
var toConsumableArray_default = /*#__PURE__*/__webpack_require__.n(toConsumableArray);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/mixin/autoResize.js
var autoResize = __webpack_require__("kN6d");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/scrollRankingBoard/src/main.vue





//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//







/* harmony default export */ var main = ({
  name: 'DvScrollRankingBoard',
  mixins: [autoResize["a" /* default */]],
  props: {
    config: {
      type: Object,
      default: function _default() {
        return {};
      }
    }
  },
  data: function data() {
    return {
      ref: 'scroll-ranking-board',

      defaultConfig: {
        /**
         * @description Board data
         * @type {Array<Object>}
         * @default data = []
         */
        data: [],
        /**
         * @description Row num
         * @type {Number}
         * @default rowNum = 5
         */
        rowNum: 5,
        /**
         * @description Scroll wait time
         * @type {Number}
         * @default waitTime = 2000
         */
        waitTime: 2000,
        /**
         * @description Carousel type
         * @type {String}
         * @default carousel = 'single'
         * @example carousel = 'single' | 'page'
         */
        carousel: 'single',
        /**
         * @description Value unit
         * @type {String}
         * @default unit = ''
         * @example unit = 'ton'
         */
        unit: '',
        /**
         * @description Auto sort by value
         * @type {Boolean}
         * @default sort = true
         */
        sort: true,
        /**
         * @description Value formatter
         * @type {Function}
         * @default valueFormatter = null
         */
        valueFormatter: null
      },

      mergedConfig: null,

      rowsData: [],

      rows: [],

      heights: [],

      animationIndex: 0,

      animationHandler: '',

      updater: 0
    };
  },

  watch: {
    config: function config() {
      var stopAnimation = this.stopAnimation,
          calcData = this.calcData;


      stopAnimation();

      calcData();
    }
  },
  methods: {
    afterAutoResizeMixinInit: function afterAutoResizeMixinInit() {
      var calcData = this.calcData;


      calcData();
    },
    onResize: function onResize() {
      var mergedConfig = this.mergedConfig,
          calcHeights = this.calcHeights;


      if (!mergedConfig) return;

      calcHeights(true);
    },
    calcData: function calcData() {
      var mergeConfig = this.mergeConfig,
          calcRowsData = this.calcRowsData;


      mergeConfig();

      calcRowsData();

      var calcHeights = this.calcHeights;


      calcHeights();

      var animation = this.animation;


      animation(true);
    },
    mergeConfig: function mergeConfig() {
      var config = this.config,
          defaultConfig = this.defaultConfig;


      this.mergedConfig = Object(util["deepMerge"])(Object(plugin_util["deepClone"])(defaultConfig, true), config || {});
    },
    calcRowsData: function calcRowsData() {
      var _mergedConfig = this.mergedConfig,
          data = _mergedConfig.data,
          rowNum = _mergedConfig.rowNum,
          sort = _mergedConfig.sort;


      sort && data.sort(function (_ref, _ref2) {
        var a = _ref.value;
        var b = _ref2.value;

        if (a > b) return -1;
        if (a < b) return 1;
        if (a === b) return 0;
      });

      var value = data.map(function (_ref3) {
        var value = _ref3.value;
        return value;
      });

      var min = Math.min.apply(Math, toConsumableArray_default()(value)) || 0;

      // abs of min
      var minAbs = Math.abs(min);

      var max = Math.max.apply(Math, toConsumableArray_default()(value)) || 0;

      // abs of max
      var maxAbs = Math.abs(max);

      var total = max + minAbs;

      data = data.map(function (row, i) {
        return extends_default()({}, row, { ranking: i + 1, percent: (row.value + minAbs) / total * 100 });
      });

      var rowLength = data.length;

      if (rowLength > rowNum && rowLength < 2 * rowNum) {
        data = [].concat(toConsumableArray_default()(data), toConsumableArray_default()(data));
      }

      data = data.map(function (d, i) {
        return extends_default()({}, d, { scroll: i });
      });

      this.rowsData = data;
      this.rows = data;
    },
    calcHeights: function calcHeights() {
      var onresize = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
      var height = this.height,
          mergedConfig = this.mergedConfig;
      var rowNum = mergedConfig.rowNum,
          data = mergedConfig.data;


      var avgHeight = height / rowNum;

      this.avgHeight = avgHeight;

      if (!onresize) this.heights = new Array(data.length).fill(avgHeight);
    },
    animation: function animation() {
      var _this = this;

      var start = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
      return asyncToGenerator_default()( /*#__PURE__*/regenerator_default.a.mark(function _callee() {
        var _heights;

        var avgHeight, animationIndex, mergedConfig, rowsData, animation, updater, waitTime, carousel, rowNum, rowLength, animationNum, rows, back;
        return regenerator_default.a.wrap(function _callee$(_context) {
          while (1) {
            switch (_context.prev = _context.next) {
              case 0:
                avgHeight = _this.avgHeight, animationIndex = _this.animationIndex, mergedConfig = _this.mergedConfig, rowsData = _this.rowsData, animation = _this.animation, updater = _this.updater;
                waitTime = mergedConfig.waitTime, carousel = mergedConfig.carousel, rowNum = mergedConfig.rowNum;
                rowLength = rowsData.length;

                if (!(rowNum >= rowLength)) {
                  _context.next = 5;
                  break;
                }

                return _context.abrupt('return');

              case 5:
                if (!start) {
                  _context.next = 10;
                  break;
                }

                _context.next = 8;
                return new promise_default.a(function (resolve) {
                  return setTimeout(resolve, waitTime);
                });

              case 8:
                if (!(updater !== _this.updater)) {
                  _context.next = 10;
                  break;
                }

                return _context.abrupt('return');

              case 10:
                animationNum = carousel === 'single' ? 1 : rowNum;
                rows = rowsData.slice(animationIndex);

                rows.push.apply(rows, toConsumableArray_default()(rowsData.slice(0, animationIndex)));

                _this.rows = rows.slice(0, rowNum + 1);
                _this.heights = new Array(rowLength).fill(avgHeight);

                _context.next = 17;
                return new promise_default.a(function (resolve) {
                  return setTimeout(resolve, 300);
                });

              case 17:
                if (!(updater !== _this.updater)) {
                  _context.next = 19;
                  break;
                }

                return _context.abrupt('return');

              case 19:

                (_heights = _this.heights).splice.apply(_heights, [0, animationNum].concat(toConsumableArray_default()(new Array(animationNum).fill(0))));

                animationIndex += animationNum;

                back = animationIndex - rowLength;

                if (back >= 0) animationIndex = back;

                _this.animationIndex = animationIndex;
                _this.animationHandler = setTimeout(animation, waitTime - 300);

              case 25:
              case 'end':
                return _context.stop();
            }
          }
        }, _callee, _this);
      }))();
    },
    stopAnimation: function stopAnimation() {
      var animationHandler = this.animationHandler,
          updater = this.updater;


      this.updater = (updater + 1) % 999999;

      if (!animationHandler) return;

      clearTimeout(animationHandler);
    }
  },
  destroyed: function destroyed() {
    var stopAnimation = this.stopAnimation;


    stopAnimation();
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-045d0900","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/scrollRankingBoard/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:_vm.ref,staticClass:"dv-scroll-ranking-board"},_vm._l((_vm.rows),function(item,i){return _c('div',{key:item.toString() + item.scroll,staticClass:"row-item",style:(("height: " + (_vm.heights[i]) + "px;"))},[_c('div',{staticClass:"ranking-info"},[_c('div',{staticClass:"rank"},[_vm._v("No."+_vm._s(item.ranking))]),_vm._v(" "),_c('div',{staticClass:"info-name",domProps:{"innerHTML":_vm._s(item.name)}}),_vm._v(" "),_c('div',{staticClass:"ranking-value"},[_vm._v(_vm._s(_vm.mergedConfig.valueFormatter ? _vm.mergedConfig.valueFormatter(item) : item.value + _vm.mergedConfig.unit))])]),_vm._v(" "),_c('div',{staticClass:"ranking-column"},[_c('div',{staticClass:"inside-column",style:(("width: " + (item.percent) + "%;"))},[_c('div',{staticClass:"shine"})])])])}),0)}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/scrollRankingBoard/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var scrollRankingBoard_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "ctr7":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "d5Tr":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/mixin/autoResize.js
var autoResize = __webpack_require__("kN6d");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/decoration2/src/main.vue
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//







/* harmony default export */ var main = ({
  name: 'DvDecoration2',
  mixins: [autoResize["a" /* default */]],
  props: {
    color: {
      type: Array,
      default: function _default() {
        return [];
      }
    },
    reverse: {
      type: Boolean,
      default: false
    },
    dur: {
      type: Number,
      default: 6
    }
  },
  data: function data() {
    return {
      ref: 'decoration-2',

      x: 0,
      y: 0,

      w: 0,
      h: 0,

      defaultColor: ['#3faacb', '#fff'],

      mergedColor: []
    };
  },

  watch: {
    color: function color() {
      var mergeColor = this.mergeColor;


      mergeColor();
    },
    reverse: function reverse() {
      var calcSVGData = this.calcSVGData;


      calcSVGData();
    }
  },
  methods: {
    afterAutoResizeMixinInit: function afterAutoResizeMixinInit() {
      var calcSVGData = this.calcSVGData;


      calcSVGData();
    },
    calcSVGData: function calcSVGData() {
      var reverse = this.reverse,
          width = this.width,
          height = this.height;


      if (reverse) {
        this.w = 1;
        this.h = height;
        this.x = width / 2;
        this.y = 0;
      } else {
        this.w = width;
        this.h = 1;
        this.x = 0;
        this.y = height / 2;
      }
    },
    onResize: function onResize() {
      var calcSVGData = this.calcSVGData;


      calcSVGData();
    },
    mergeColor: function mergeColor() {
      var color = this.color,
          defaultColor = this.defaultColor;


      this.mergedColor = Object(util["deepMerge"])(Object(plugin_util["deepClone"])(defaultColor, true), color || []);
    }
  },
  mounted: function mounted() {
    var mergeColor = this.mergeColor;


    mergeColor();
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-dc7f366c","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/decoration2/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:_vm.ref,staticClass:"dv-decoration-2"},[_c('svg',{attrs:{"width":(_vm.width + "px"),"height":(_vm.height + "px")}},[_c('rect',{attrs:{"x":_vm.x,"y":_vm.y,"width":_vm.w,"height":_vm.h,"fill":_vm.mergedColor[0]}},[_c('animate',{attrs:{"attributeName":_vm.reverse ? 'height' : 'width',"from":"0","to":_vm.reverse ? _vm.height : _vm.width,"dur":(_vm.dur + "s"),"calcMode":"spline","keyTimes":"0;1","keySplines":".42,0,.58,1","repeatCount":"indefinite"}})]),_vm._v(" "),_c('rect',{attrs:{"x":_vm.x,"y":_vm.y,"width":"1","height":"1","fill":_vm.mergedColor[1]}},[_c('animate',{attrs:{"attributeName":_vm.reverse ? 'y' : 'x',"from":"0","to":_vm.reverse ? _vm.height : _vm.width,"dur":(_vm.dur + "s"),"calcMode":"spline","keyTimes":"0;1","keySplines":"0.42,0,0.58,1","repeatCount":"indefinite"}})])])])}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/decoration2/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var decoration2_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "dCKE":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/loading/src/main.vue
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//

/* harmony default export */ var main = ({
  name: 'DvLoading'
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-05f6cd58","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/loading/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"dv-loading"},[_c('svg',{attrs:{"width":"50px","height":"50px"}},[_c('circle',{attrs:{"cx":"25","cy":"25","r":"20","fill":"transparent","stroke-width":"3","stroke-dasharray":"31.415, 31.415","stroke":"#02bcfe","stroke-linecap":"round"}},[_c('animateTransform',{attrs:{"attributeName":"transform","type":"rotate","values":"0, 25 25;360, 25 25","dur":"1.5s","repeatCount":"indefinite"}}),_vm._v(" "),_c('animate',{attrs:{"attributeName":"stroke","values":"#02bcfe;#3be6cb;#02bcfe","dur":"3s","repeatCount":"indefinite"}})],1),_vm._v(" "),_c('circle',{attrs:{"cx":"25","cy":"25","r":"10","fill":"transparent","stroke-width":"3","stroke-dasharray":"15.7, 15.7","stroke":"#3be6cb","stroke-linecap":"round"}},[_c('animateTransform',{attrs:{"attributeName":"transform","type":"rotate","values":"360, 25 25;0, 25 25","dur":"1.5s","repeatCount":"indefinite"}}),_vm._v(" "),_c('animate',{attrs:{"attributeName":"stroke","values":"#3be6cb;#02bcfe;#3be6cb","dur":"3s","repeatCount":"indefinite"}})],1)]),_vm._v(" "),_c('div',{staticClass:"loading-tip"},[_vm._t("default")],2)])}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/loading/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var loading_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "f2hL":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "fKJ/":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/mixin/autoResize.js
var autoResize = __webpack_require__("kN6d");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/borderBox6/src/main.vue
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//







/* harmony default export */ var main = ({
  name: 'DvBorderBox6',
  mixins: [autoResize["a" /* default */]],
  props: {
    color: {
      type: Array,
      default: function _default() {
        return [];
      }
    },
    backgroundColor: {
      type: String,
      default: 'transparent'
    }
  },
  data: function data() {
    return {
      ref: 'border-box-6',

      defaultColor: ['rgba(255, 255, 255, 0.35)', 'gray'],

      mergedColor: []
    };
  },

  watch: {
    color: function color() {
      var mergeColor = this.mergeColor;


      mergeColor();
    }
  },
  methods: {
    mergeColor: function mergeColor() {
      var color = this.color,
          defaultColor = this.defaultColor;


      this.mergedColor = Object(util["deepMerge"])(Object(plugin_util["deepClone"])(defaultColor, true), color || []);
    }
  },
  mounted: function mounted() {
    var mergeColor = this.mergeColor;


    mergeColor();
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-7de3177e","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/borderBox6/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:_vm.ref,staticClass:"dv-border-box-6"},[_c('svg',{staticClass:"dv-border-svg-container",attrs:{"width":_vm.width,"height":_vm.height}},[_c('polygon',{attrs:{"fill":_vm.backgroundColor,"points":("\n      9, 7 " + (_vm.width - 9) + ", 7 " + (_vm.width - 9) + ", " + (_vm.height - 7) + " 9, " + (_vm.height - 7) + "\n    ")}}),_vm._v(" "),_c('circle',{attrs:{"fill":_vm.mergedColor[1],"cx":"5","cy":"5","r":"2"}}),_vm._v(" "),_c('circle',{attrs:{"fill":_vm.mergedColor[1],"cx":_vm.width - 5,"cy":"5","r":"2"}}),_vm._v(" "),_c('circle',{attrs:{"fill":_vm.mergedColor[1],"cx":_vm.width - 5,"cy":_vm.height - 5,"r":"2"}}),_vm._v(" "),_c('circle',{attrs:{"fill":_vm.mergedColor[1],"cx":"5","cy":_vm.height - 5,"r":"2"}}),_vm._v(" "),_c('polyline',{attrs:{"stroke":_vm.mergedColor[0],"points":("10, 4 " + (_vm.width - 10) + ", 4")}}),_vm._v(" "),_c('polyline',{attrs:{"stroke":_vm.mergedColor[0],"points":("10, " + (_vm.height - 4) + " " + (_vm.width - 10) + ", " + (_vm.height - 4))}}),_vm._v(" "),_c('polyline',{attrs:{"stroke":_vm.mergedColor[0],"points":("5, 70 5, " + (_vm.height - 70))}}),_vm._v(" "),_c('polyline',{attrs:{"stroke":_vm.mergedColor[0],"points":((_vm.width - 5) + ", 70 " + (_vm.width - 5) + ", " + (_vm.height - 70))}}),_vm._v(" "),_c('polyline',{attrs:{"stroke":_vm.mergedColor[0],"points":"3, 10, 3, 50"}}),_vm._v(" "),_c('polyline',{attrs:{"stroke":_vm.mergedColor[0],"points":"7, 30 7, 80"}}),_vm._v(" "),_c('polyline',{attrs:{"stroke":_vm.mergedColor[0],"points":((_vm.width - 3) + ", 10 " + (_vm.width - 3) + ", 50")}}),_vm._v(" "),_c('polyline',{attrs:{"stroke":_vm.mergedColor[0],"points":((_vm.width - 7) + ", 30 " + (_vm.width - 7) + ", 80")}}),_vm._v(" "),_c('polyline',{attrs:{"stroke":_vm.mergedColor[0],"points":("3, " + (_vm.height - 10) + " 3, " + (_vm.height - 50))}}),_vm._v(" "),_c('polyline',{attrs:{"stroke":_vm.mergedColor[0],"points":("7, " + (_vm.height - 30) + " 7, " + (_vm.height - 80))}}),_vm._v(" "),_c('polyline',{attrs:{"stroke":_vm.mergedColor[0],"points":((_vm.width - 3) + ", " + (_vm.height - 10) + " " + (_vm.width - 3) + ", " + (_vm.height - 50))}}),_vm._v(" "),_c('polyline',{attrs:{"stroke":_vm.mergedColor[0],"points":((_vm.width - 7) + ", " + (_vm.height - 30) + " " + (_vm.width - 7) + ", " + (_vm.height - 80))}})]),_vm._v(" "),_c('div',{staticClass:"border-box-content"},[_vm._t("default")],2)])}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/borderBox6/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var borderBox6_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "fli6":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "g3jD":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "gUFK":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "gyMJ":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/axios/index.js
var axios = __webpack_require__("mtWM");
var axios_default = /*#__PURE__*/__webpack_require__.n(axios);

// EXTERNAL MODULE: ./node_modules/element-ui/lib/element-ui.common.js
var element_ui_common = __webpack_require__("zL8q");
var element_ui_common_default = /*#__PURE__*/__webpack_require__.n(element_ui_common);

// EXTERNAL MODULE: ./src/utils/resetMessage.js
var resetMessage = __webpack_require__("46Yo");

// EXTERNAL MODULE: ./node_modules/lodash/lodash.js
var lodash = __webpack_require__("M4fF");
var lodash_default = /*#__PURE__*/__webpack_require__.n(lodash);

// EXTERNAL MODULE: ./src/router/index.js + 15 modules
var router = __webpack_require__("YaEn");

// EXTERNAL MODULE: ./node_modules/es6-promise/dist/es6-promise.js
var es6_promise = __webpack_require__("hKoQ");
var es6_promise_default = /*#__PURE__*/__webpack_require__.n(es6_promise);

// EXTERNAL MODULE: ./src/store/index.js
var store = __webpack_require__("IcnI");

// EXTERNAL MODULE: ./node_modules/jquery/src/jquery.js
var jquery = __webpack_require__("4kSj");
var jquery_default = /*#__PURE__*/__webpack_require__.n(jquery);

// CONCATENATED MODULE: ./src/utils/request.js









// let doms = document.getElementsByClassName('el-message')[0]
var service = axios_default.a.create({
  // process.env.NODE_ENV === 'development' 来判断是否开发环境
  // easy-mock服务挂了，暂时不使用了
  // baseURL: 'http://192.168.1.112:8600',
  timeout: 100000
});
var loading = void 0;
var needLoadingRequestCount = 0;
//显示loading
function showLoading(target) {
  // 后面这个判断很重要，因为关闭时加了抖动，此时loading对象可能还存在，
  // 但needLoadingRequestCount已经变成0.避免这种情况下会重新创建个loading
  if (needLoadingRequestCount === 0 && !loading) {
    loading = element_ui_common["Loading"].service({
      lock: true,
      text: "Loading...",
      background: 'rgba(255, 255, 255, 0.5)',
      target: target || "body"
    });
  }
  needLoadingRequestCount++;
}

//隐藏loading
function hideLoading() {
  needLoadingRequestCount--;
  needLoadingRequestCount = Math.max(needLoadingRequestCount, 0); //做个保护
  if (needLoadingRequestCount === 0) {
    //关闭loading
    toHideLoading();
  }
}
//防抖：将 300ms 间隔内的关闭 loading 便合并为一次。防止连续请求时， loading闪烁的问题。
var toHideLoading = lodash_default.a.debounce(function () {
  loading.close();
  loading = null;
}, 300);

service.interceptors.request.use(function (config) {
  showLoading();
  var access_token = '';
  if (JSON.parse(localStorage.getItem("tokenkey"))) {
    access_token = JSON.parse(localStorage.getItem("tokenkey")).access_token;
  }
  var tenantId = store["a" /* default */].state.tenantId;
  if (tenantId) {
    config.headers = {
      'content-type': 'application/json;charset=utf-8',
      'Authorization': 'bearer' + access_token,
      'tenantId': tenantId
    };
  } else {
    config.headers = {
      'content-type': 'application/json;charset=utf-8',
      'Authorization': 'bearer' + access_token
    };
  }
  return config;
}, function (error) {
  // hideLoading();
  return es6_promise_default.a.reject(error.response.data);
});
service.interceptors.response.use(function (response) {
  hideLoading();
  if (response.status === 200) {
    return response.data;
  } else {
    es6_promise_default.a.reject(response.data);
  }
}, function (error) {
  hideLoading();
  if (error.response.status === 401) {
    Object(resetMessage["a" /* message */])({
      type: "error",
      message: "您的token已过期，请重新登录！"
    });
    setTimeout(function () {
      redirectLogin();
    }, 500);
  } else {
    if (error.response.data.message == 'Insufficient balance') {
      Object(resetMessage["a" /* message */])({
        type: "error",
        message: '余额不足'
      });
    } else {
      Object(resetMessage["a" /* message */])({
        type: "error",
        message: error.response.data.message
      });
    }
  }
  return es6_promise_default.a.reject(error.response.data);
});

function redirectLogin() {
  localStorage.setItem("ms_username", '');
  router["a" /* default */].push({
    name: '/login',
    query: {}
  });
}

function refreshTokenRequst(data, Callback) {
  var refresh_token = JSON.parse(localStorage.getItem('token')).refresh_token;
  var fd = new FormData();
  fd.append("client_id", "iot-client");
  fd.append("client_secret", "iot-client");
  fd.append("grant_type", "refresh_token");
  fd.append("refresh_token", refresh_token);
  api_httpPost(fd, 'oauth/token').then(function (res) {
    Callback(res);
  });
}

/* harmony default export */ var request = (service);
// CONCATENATED MODULE: ./src/utils/request1.js







// let doms = document.getElementsByClassName('el-message')[0]
var service1 = axios_default.a.create({
  // process.env.NODE_ENV === 'development' 来判断是否开发环境
  // easy-mock服务挂了，暂时不使用了
  // baseURL: 'http://192.168.1.112:8600',
  timeout: 100000
});
var request1_loading = void 0;
var request1_needLoadingRequestCount = 0;
//显示loading
function request1_showLoading(target) {
  // 后面这个判断很重要，因为关闭时加了抖动，此时loading对象可能还存在，
  // 但needLoadingRequestCount已经变成0.避免这种情况下会重新创建个loading
  if (request1_needLoadingRequestCount === 0 && !request1_loading) {
    request1_loading = element_ui_common["Loading"].service({
      lock: true,
      text: "Loading...",
      background: 'rgba(255, 255, 255, 0.5)',
      target: target || "body"
    });
  }
  request1_needLoadingRequestCount++;
}

//隐藏loading
function request1_hideLoading() {
  request1_needLoadingRequestCount--;
  request1_needLoadingRequestCount = Math.max(request1_needLoadingRequestCount, 0); //做个保护
  if (request1_needLoadingRequestCount === 0) {
    //关闭loading
    request1_toHideLoading();
  }
}

//防抖：将 300ms 间隔内的关闭 loading 便合并为一次。防止连续请求时， loading闪烁的问题。
var request1_toHideLoading = lodash_default.a.debounce(function () {
  request1_loading.close();
  request1_loading = null;
}, 500);

service1.interceptors.request.use(function (config) {
  request1_showLoading();
  var tenantId = store["a" /* default */].state.tenantId;
  if (tenantId) {
    config.headers = {
      'content-type': 'application/json;charset=utf-8',
      'tenantId': tenantId
    };
  } else {
    config.headers = {
      'content-type': 'application/json;charset=utf-8'
    };
  }
  return config;
}, function (error) {
  if (error.response.status === 401) {
    // if(doms == undefined){
    Object(resetMessage["a" /* message */])({
      type: "error",
      message: "您的token已过期，请重新登录！"
    });
    setTimeout(function () {
      request1_redirectLogin();
    }, 500);
    // }
  } else {
    Object(resetMessage["a" /* message */])({
      type: "error",
      message: error.response.data.message
    });
  }
  return es6_promise_default.a.reject(error.response.data);
});

service1.interceptors.response.use(function (response) {
  request1_hideLoading();
  if (response.status === 200) {
    return response.data;
  } else {
    es6_promise_default.a.reject();
  }
}, function (error) {
  request1_hideLoading();
  return es6_promise_default.a.reject(error);
});

function request1_redirectLogin() {
  localStorage.setItem("ms_username", '');
  router["a" /* default */].push({
    name: '/login',
    query: {
      redirect: router["a" /* default */].currentRoute.fullPath
    }
  });
}

/* harmony default export */ var request1 = (service1);
// CONCATENATED MODULE: ./src/utils/request2.js







// let doms = document.getElementsByClassName('el-message')[0]
var request2_service = axios_default.a.create({
  // process.env.NODE_ENV === 'development' 来判断是否开发环境
  // easy-mock服务挂了，暂时不使用了
  // baseURL: 'http://192.168.1.112:8600',
  timeout: 100000
});
var request2_loading = void 0;
var request2_needLoadingRequestCount = 0;
//显示loading
function request2_showLoading(target) {
  // 后面这个判断很重要，因为关闭时加了抖动，此时loading对象可能还存在，
  // 但needLoadingRequestCount已经变成0.避免这种情况下会重新创建个loading
  if (request2_needLoadingRequestCount === 0 && !request2_loading) {
    request2_loading = element_ui_common["Loading"].service({
      lock: true,
      text: "Loading...",
      background: 'rgba(255, 255, 255, 0.5)',
      target: target || "body"
    });
  }
  request2_needLoadingRequestCount++;
}

//隐藏loading
function request2_hideLoading() {
  request2_needLoadingRequestCount--;
  request2_needLoadingRequestCount = Math.max(request2_needLoadingRequestCount, 0); //做个保护
  if (request2_needLoadingRequestCount === 0) {
    //关闭loading
    request2_toHideLoading();
  }
}
//防抖：将 300ms 间隔内的关闭 loading 便合并为一次。防止连续请求时， loading闪烁的问题。
var request2_toHideLoading = lodash_default.a.debounce(function () {
  request2_loading.close();
  request2_loading = null;
}, 300);

request2_service.interceptors.request.use(function (config) {
  request2_showLoading();
  var tenantId = store["a" /* default */].state.tenantId;
  if (tenantId) {
    config.headers = {
      'content-type': 'application/json;charset=utf-8',
      'tenantId': tenantId
    };
  } else {
    config.headers = {
      'content-type': 'application/json;charset=utf-8'
    };
  }
  return config;
}, function (error) {
  if (error.response.status === 401) {
    // if(doms == undefined){
    Object(resetMessage["a" /* message */])({
      type: "error",
      message: "您的token已过期，请重新登录！"
    });
    setTimeout(function () {
      request2_redirectLogin();
    }, 500);
    // }
  }
  request2_hideLoading();
  return es6_promise_default.a.reject(error);
});

request2_service.interceptors.response.use(function (response) {
  request2_hideLoading();
  if (response.status === 200) {
    return response.data;
  } else {
    es6_promise_default.a.reject();
  }
}, function (error) {
  request2_hideLoading();
  Object(resetMessage["a" /* message */])({
    type: "error",
    message: error.response.data.message
  });
  return es6_promise_default.a.reject(error.response.data);
});

function request2_redirectLogin() {
  localStorage.setItem("ms_username", '');
  router["a" /* default */].push({
    name: '/login',
    query: {
      redirect: router["a" /* default */].currentRoute.fullPath
    }
  });
}

/* harmony default export */ var request2 = (request2_service);
// CONCATENATED MODULE: ./src/utils/requsetThree.js







// let doms = document.getElementsByClassName('el-message')[0]
var requsetThree_service = axios_default.a.create({
  // process.env.NODE_ENV === 'development' 来判断是否开发环境
  // easy-mock服务挂了，暂时不使用了
  // baseURL: 'http://192.168.1.112:8600',
  timeout: 100000
});
var requsetThree_loading = void 0;
var requsetThree_needLoadingRequestCount = 0;
//显示loading
function requsetThree_showLoading(target) {
  // 后面这个判断很重要，因为关闭时加了抖动，此时loading对象可能还存在，
  // 但needLoadingRequestCount已经变成0.避免这种情况下会重新创建个loading
  if (requsetThree_needLoadingRequestCount === 0 && !requsetThree_loading) {
    requsetThree_loading = element_ui_common["Loading"].service({
      lock: true,
      text: "Loading...",
      background: 'rgba(255, 255, 255, 0.5)',
      target: target || "body"
    });
  }
  requsetThree_needLoadingRequestCount++;
}

//隐藏loading
function requsetThree_hideLoading() {
  requsetThree_needLoadingRequestCount--;
  requsetThree_needLoadingRequestCount = Math.max(requsetThree_needLoadingRequestCount, 0); //做个保护
  if (requsetThree_needLoadingRequestCount === 0) {
    //关闭loading
    requsetThree_toHideLoading();
  }
}
//防抖：将 300ms 间隔内的关闭 loading 便合并为一次。防止连续请求时， loading闪烁的问题。
var requsetThree_toHideLoading = lodash_default.a.debounce(function () {
  // loading.close();
  requsetThree_loading = null;
}, 300);

requsetThree_service.interceptors.request.use(function (config) {
  // showLoading()
  var access_token = '';
  if (JSON.parse(localStorage.getItem("tokenkey"))) {
    access_token = JSON.parse(localStorage.getItem("tokenkey")).access_token;
  }
  var tenantId = store["a" /* default */].state.tenantId;
  if (tenantId) {
    config.headers = {
      'content-type': 'application/json;charset=utf-8',
      'Authorization': 'bearer' + access_token,
      'tenantId': tenantId
    };
  } else {
    config.headers = {
      'content-type': 'application/json;charset=utf-8',
      'Authorization': 'bearer' + access_token
    };
  }
  return config;
}, function (error) {
  if (error.response.status === 401) {
    // if(doms == undefined){
    Object(resetMessage["a" /* message */])({
      type: "error",
      message: "您的token已过期，请重新登录！"
    });
    setTimeout(function () {
      requsetThree_redirectLogin();
    }, 500);
    // }
  } else {
    Object(resetMessage["a" /* message */])({
      type: "error",
      message: error.response.data.message
    });
  }
  requsetThree_hideLoading();
  return es6_promise_default.a.reject(error.response.data);
});

requsetThree_service.interceptors.response.use(function (response) {
  requsetThree_hideLoading();
  if (response.status === 200) {
    return response.data;
  } else {
    es6_promise_default.a.reject(response.data);
  }
}, function (error) {
  requsetThree_hideLoading();
  return es6_promise_default.a.reject(error.response.data);
});

function requsetThree_redirectLogin() {
  localStorage.setItem("ms_username", '');
  router["a" /* default */].push({
    name: '/login',
    query: {
      redirect: router["a" /* default */].currentRoute.fullPath
    }
  });
}

/* harmony default export */ var requsetThree = (requsetThree_service);
// EXTERNAL MODULE: ./node_modules/jsencrypt/lib/index.js + 14 modules
var lib = __webpack_require__("NMjF");

// CONCATENATED MODULE: ./src/utils/url.js
var url_url = '';
if (false) {
    url_url = '/api';
} else {
    url_url = '';
}
/* harmony default export */ var utils_url = (url_url);
// CONCATENATED MODULE: ./src/api/index.js
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return api_httpGet; });
/* unused harmony export RefreshToken */
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "g", function() { return api_httpPost; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "j", function() { return setCode; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return api_httpGet1; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "h", function() { return api_httpPost1; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return api_download; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return api_httgetaxio; });
/* unused harmony export httgetaxio1 */
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return api_downloadPost; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "i", function() { return api_httpPostno; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return api_httpGetno; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "k", function() { return api_silentRequest; });






var api_httpGet = function httpGet(query, url) {
    return request({
        url: utils_url + url,
        method: "GET",
        params: query
    });
};
// const httpGet2 = (query,url) => {
//     return request4({
//         url:url1 +url,
//         method: "GET",
//         params: query
//     });
// };
var api_httpPost = function httpPost(query, url) {
    return request({
        url: utils_url + url,
        method: "POST",
        data: query
    });
};
var api_download = function download(query, url) {
    return request({
        url: utils_url + url,
        method: "GET",
        params: query,
        responseType: 'blob'
    });
};
var api_downloadPost = function downloadPost(query, url) {
    return request({
        url: utils_url + url,
        method: "POST",
        data: query,
        responseType: 'blob'
    });
};
function setCode(str, text) {
    // 注册方法
    var pubKey = str; // ES6 模板字符串 引用 rsa 公钥
    var encryptStr = new lib["a" /* default */]();
    encryptStr.setPublicKey(pubKey); // 设置 加密公钥
    var data = encryptStr.encrypt(text.toString()); // 进行加密
    return data;
}
var api_httpGet1 = function httpGet1(query, url) {
    return request1({
        url: utils_url + url,
        method: "GET",
        params: query
    });
};
var api_httpPost1 = function httpPost1(query, url) {
    return request2({
        url: utils_url + url,
        method: "POST",
        data: query
    });
};

var api_httgetaxio = function httgetaxio(query, url) {
    return request1({
        url: url,
        method: "GET",
        params: query
    });
};
var api_httgetaxio1 = function httgetaxio1(query, url) {
    return request2({
        url: utils_url + url,
        method: "POST",
        data: query
    });
};
var api_httpPostno = function httpPostno(query, url) {
    return requsetThree({
        url: utils_url + url,
        method: "POST",
        data: query
    });
};
var api_httpGetno = function httpGetno(query, url) {
    return requsetThree({
        url: utils_url + url,
        method: "GET",
        data: query
    });
};
var api_silentRequest = function silentRequest(query, url) {
    return requsetThree({
        url: utils_url + url,
        method: "GET",
        params: query
    });
};


/***/ }),

/***/ "hi57":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "ivlf":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony default export */ __webpack_exports__["a"] = ({
  'cn': {
    i18n: {
      breadcrumb: '智慧公寓管理系统',
      items: [{
        icon: "iconfont httpicon-rizhiguanli",
        index: "bluetoothInput",
        title: "蓝牙录入权限",
        key: 'BLUETOOTH_INPUT',
        status: 0,
        ChildrenStatus: false,
        pid: 0,
        id: 0
      }, {
        icon: "iconfont httpicon-rizhiguanli",
        index: "NormallyOpenPermission",
        title: "常开权限",
        key: 'NORMALLY_OPEN_PERMISSION',
        status: 0,
        ChildrenStatus: false,
        pid: 1,
        id: 1
      }, {
        icon: "iconfont httpicon-rizhiguanli",
        index: "FreezePermission",
        title: "冻结权限",
        key: 'FREEZE_PERMISSION',
        status: 0,
        ChildrenStatus: false,
        pid: 2,
        id: 2
      }, {
        icon: "iconfont httpicon-rizhiguanli",
        index: "RemoteControlPermission",
        title: "遥控器权限",
        key: 'REMOTE_CONTROL_PERMISSION',
        status: 0,
        ChildrenStatus: false,
        pid: 3,
        id: 3
      }, {
        icon: "iconfont httpicon-tongjifenxi",
        index: "home",
        key: 'STATISTICAL_ANALYSIS',
        status: 0,
        title: "数据汇总",
        ChildrenStatus: true,
        pid: 4,
        id: 4,
        subs: [{
          icon: "iconfont httpicon-shouye",
          index: "home",
          title: "首页",
          key: 'ALLHOME',
          status: 0,
          ChildrenStatus: false,
          pid: 4,
          id: 5
        }, {
          icon: "gongyu gy-shujudaping",
          index: "Datascreen",
          title: "数据大屏",
          key: 'DATASCREEN',
          status: 0,
          ChildrenStatus: false,
          pid: 4,
          id: 34
        }]
      }, {
        icon: "iconfont httpicon-loufang01",
        index: "room",
        title: "房源管理",
        key: 'AREA_MANAGEMENT',
        status: 0,
        ChildrenStatus: true,
        pid: 6,
        id: 6,
        subs: [{
          index: "room",
          title: "房态图",
          key: 'STUDENT_DORMITORY',
          status: 0,
          ChildrenStatus: false,
          pid: 6,
          id: 7
        }]
      }, {
        icon: "iconfont httpicon-yewuguanli",
        index: "CheckIn",
        title: "租约管理",
        key: 'OPERATIONS_MANAGEMENT',
        status: 0,
        ChildrenStatus: true,
        pid: 8,
        id: 8,
        subs: [{
          icon: "el-icon-lx-copy",
          index: "agreement",
          title: "合同管理",
          key: 'AGREEMENT',
          status: 0,
          pid: 8,
          id: 9,
          ChildrenStatus: false
          // subs: [{
          //     index: "CheckIn",
          //     title: "入住办理",
          //     key: 'ACCOMMODATION_REGISTER',
          //     status: 0,
          //     Children: false,
          //   },
          //   {
          //     index: "Refund",
          //     title: "退住管理",
          //     key: 'CHECK_OUT_MANAGEMENT',
          //     status: 0,
          //     Children: false,
          //   },
          //   {
          //     index: "renewalHandling",
          //     title: "续住管理",
          //     key: 'RENEWAL_HANDLING',
          //     status: 0,
          //     Children: false,
          //   },
          //   {
          //     index: "Freeze",
          //     title: "冻结管理",
          //     key: 'FREEZE_MANAGEMENT',
          //     status: 0,
          //     Children: false,
          //   },
          //   {
          //     index: "linkperson",
          //     title: "通知管理",
          //     key: 'LINKPERSON',
          //     status: 0,
          //     Children: false,
          //   },
          // ],
        }, {
          index: "contractExportTemplate",
          title: "合同导出模板",
          key: 'CONTRACT_EXPORT_TEMPLATE',
          status: 0,
          pid: 8,
          id: 14,
          ChildrenStatus: false
        }, {
          index: "offInCardManage",
          title: "离线卡管理",
          key: 'OFF_IN_CARD_MANAGE',
          status: 0,
          pid: 8,
          id: 10,
          ChildrenStatus: true,
          subs: [{
            index: "offInCardOver",
            title: "离线卡操作",
            key: 'OFF_IN_CARD_OVER',
            status: 0,
            pid: 10,
            id: 11,
            ChildrenStatus: false
          }, {
            index: "offInCardList",
            title: "离线卡列表",
            key: 'OFF_IN_CARD_LIST',
            status: 0,
            pid: 10,
            id: 12,
            ChildrenStatus: false
          }]
        }]
      }, {
        icon: "iconfont httpicon-yiqiatong",
        index: "userManagement",
        title: "租客管理",
        key: 'PERSONNEL_MANAGEMENT',
        status: 0,
        ChildrenStatus: true,
        pid: 13,
        id: 13,
        subs: [{
          index: "userManagement",
          title: "租客列表",
          key: 'STUDENT_INFORMATION',
          status: 0,
          ChildrenStatus: false,
          pid: 13,
          id: 14
        }]
      }, {
        icon: "iconfont httpicon-shebei",
        index: "doorLock",
        title: "设备管理",
        key: 'DEVICE_MANAGEMENT',
        status: 0,
        pid: 15,
        id: 15,
        ChildrenStatus: true,
        subs: [{
          icon: "el-icon-lx-copy",
          index: "doorLock",
          title: "门锁设备",
          key: 'DOOR_LOCK_DEVICE',
          status: 0,
          pid: 15,
          id: 16,
          ChildrenStatus: false
        }]
      }, {
        icon: "iconfont httpicon-yonghuguanli",
        index: "loginAccount",
        title: "用户管理",
        key: 'USER_MANAGEMENT',
        status: 0,
        pid: 17,
        id: 17,
        ChildrenStatus: true,
        subs: [{
          index: "loginAccount",
          title: "登录账号",
          key: 'ACCOUNT_MANAGEMENT',
          status: 0,
          pid: 17,
          id: 18,
          ChildrenStatus: false
        }, {
          index: "rolePermissions",
          title: "角色权限",
          key: 'ROLE_PERMISSIONS',
          status: 0,
          pid: 17,
          id: 19,
          ChildrenStatus: false
        }, {
          index: "bindingRoles",
          title: "绑定角色",
          key: 'BOUND_ROLE',
          status: 0,
          pid: 17,
          id: 20,
          ChildrenStatus: false
        }, {
          index: "configPage",
          title: "配置",
          key: 'CONFIGPAGE',
          status: 0,
          pid: 17,
          id: 21,
          ChildrenStatus: false
        }]
      }, {
        icon: "iconfont httpicon-pingzhengguanli",
        index: "rechargeManagement",
        title: "财务管理",
        key: 'RECHARGE_MANAGEMENT',
        status: 0,
        pid: 22,
        id: 22,
        ChildrenStatus: true,
        subs: [{
          icon: "iconfont httpicon-pingzhengguanli",
          index: "bill",
          title: "账单",
          key: 'BILL',
          status: 0,
          pid: 22,
          id: 23,
          ChildrenStatus: false
        }, {
          icon: "iconfont httpicon-pingzhengguanli",
          index: "rechargeManagement",
          title: "充值",
          key: 'RECHARGE_MANAGEMENT',
          status: 0,
          pid: 22,
          id: 24,
          ChildrenStatus: false
        }]
      }, {
        icon: "iconfont httpicon-rizhiguanli",
        index: "journal",
        title: "日志管理",
        key: 'LOG_MANAGEMENT',
        status: 0,
        pid: 25,
        id: 25,
        ChildrenStatus: true,
        subs: [{
          index: "journal",
          title: "系统日志",
          key: 'journal',
          status: 0,
          pid: 25,
          id: 26,
          ChildrenStatus: false
        }, {
          index: "doorLockLlog",
          title: "门锁日志",
          key: 'DOORLOCKLOG',
          status: 0,
          pid: 25,
          id: 27,
          ChildrenStatus: true,
          subs: [{
            index: "warningLog",
            title: "警告日志",
            key: 'warningLog',
            status: 0,
            pid: 27,
            id: 28,
            ChildrenStatus: false
          }, {
            index: "UnlockRecord",
            title: "开锁记录",
            key: 'UnlockRecord',
            status: 0,
            pid: 27,
            id: 29,
            ChildrenStatus: false
          }, {
            index: "bluetoothUnlockRecord",
            title: "蓝牙NB开锁记录",
            key: 'bluetoothUnlockRecord',
            status: 0,
            pid: 27,
            id: 30,
            ChildrenStatus: false
          }, {
            index: "DeviceFeedbackLog",
            title: "操作日志",
            key: 'DeviceFeedbackLog',
            status: 0,
            pid: 27,
            id: 31,
            ChildrenStatus: false
          }]
        }]
      }, {
        icon: "iconfont httpicon-xitongguanli",
        index: "systemConfiguration",
        title: "系统配置",
        pid: 32,
        id: 32,
        key: 'SYSTEM_CONFIGURATION',
        status: 0,
        ChildrenStatus: false
      }, {
        icon: "iconfont httpicon-xitongguanli",
        index: "byRoom",
        title: "泊寓对接",
        pid: 33,
        id: 33,
        key: 'BOYU_Room',
        status: 0,
        ChildrenStatus: false
      }]
    },
    i18n1: {
      breadcrumb: '智慧公寓管理系统',
      items: [{
        icon: "iconfont httpicon-tongjifenxi",
        index: "homepage",
        key: 'STATISTICAL_ANALYSIS',
        status: 0,
        title: "数据汇总",
        subs: [{
          icon: "iconfont httpicon-shouye",
          index: "index",
          title: "门磁首页",
          key: 'INDEX',
          status: 0
        }]
      }, {
        icon: "iconfont httpicon-shebei",
        index: "fygl",
        title: "设备管理",
        key: 'AREA_MANAGEMENT',
        status: 0,
        subs: [{
          index: "EquipmentList",
          title: "设备列表",
          key: 'STUDENT_DORMITORY',
          status: 0
        }]
      }, {
        icon: "iconfont httpicon-rizhiguanli",
        index: "business",
        title: "报警管理",
        key: 'OPERATIONS_MANAGEMENT',
        status: 0,
        subs: [{
          icon: "el-icon-lx-copy",
          index: "alarmRecord",
          title: "报警记录",
          key: 'ACCOMMODATION_OPERATION',
          status: 0
        }]
      }, {
        icon: "iconfont httpicon-yiqiatong",
        index: "rygl",
        title: "安装管理",
        key: 'PERSONNEL_MANAGEMENT',
        status: 0,
        subs: [{
          index: "Architecture",
          title: "建筑物管理",
          key: 'STUDENT_INFORMATION',
          status: 0
        }, {
          index: "Linkman",
          title: "接警联系人管理",
          key: 'RENT_SURRENDER_MANAGEMENT',
          status: 0
        }]
      }, {
        icon: "iconfont httpicon-yonghuguanli",
        index: "tabs",
        title: "用户与单位",
        key: 'DEVICE_MANAGEMENT',
        status: 0,
        subs: [{
          icon: "el-icon-lx-copy",
          index: "subordinateUnit",
          title: "下级单位管理",
          key: 'DOOR_LOCK_DEVICE',
          status: 0
        }, {
          icon: "el-icon-lx-copy",
          index: "userManagementHouse",
          title: "用户管理",
          key: 'DOOR_LOCK_DEVICE',
          status: 0
        }]
      }]
    }
  },
  'en': {
    i18n: {
      breadcrumb: 'Smart campus management system',
      items: [{
        icon: "el-icon-lx-home",
        index: "statistics",
        title: "statistical analysis",
        subs: [{
          icon: "el-icon-lx-copy",
          index: "homepage",
          title: "home"
        }, {
          icon: "el-icon-lx-copy",
          index: "dashboard",
          title: "Dormitory management"
        }, {
          icon: "el-icon-lx-copy",
          index: "studentsRoom",
          title: "Classroom management"
        }]
      }, {
        icon: "el-icon-lx-copy",
        index: "business",
        title: "Business management",
        subs: [{
          icon: "el-icon-lx-copy",
          index: "RoomInquiry",
          title: "Accommodation business",
          subs: [{
            index: "CheckIn",
            title: "Check in"
          }, {
            index: "dueRoom",
            title: "Room inquiry"
          }, {
            index: "Refund",
            title: "Exit management"
          }]
        }, {
          icon: "el-icon-lx-calendar",
          index: "dueRoom",
          title: "Teaching business"
        }, {
          icon: "el-icon-lx-calendar",
          index: "CheckInStaff",
          title: "Extracurricular activities"
        }, {
          icon: "el-icon-lx-calendar",
          index: "CheckInStaff",
          title: "Warranty service"
        }]
      }, {
        icon: "el-icon-lx-copy",
        index: "fygl",
        title: "Housing supply management",
        subs: [{
          index: "room",
          title: "Student dormitory"
        }, {
          index: "campus",
          title: "Office building?"
        }, {
          index: "campus",
          title: "Academic Building"
        }]
      }, {
        icon: "el-icon-lx-copy",
        index: "rygl",
        title: "Personnel management",
        subs: [{
          index: "userManagement",
          title: "Student information"
        }, {
          index: "voucher",
          title: "Teacher information"
        }, {
          index: "userManagement",
          title: "Property information"
        }]
      }, {
        icon: "el-icon-lx-copy",
        index: "tabs",
        title: "device management",
        subs: [{
          icon: "el-icon-lx-copy",
          index: "doorLock",
          title: "Door lock equipment"
        }, {
          icon: "el-icon-lx-copy",
          index: "table1",
          title: "Air switch equipment"
        }, {
          icon: "el-icon-lx-copy",
          index: "table1",
          title: "Smoke sensing equipment"
        }]
      }, {
        icon: "el-icon-lx-rank",
        index: "7",
        title: "system management",
        subs: [{
          index: "upload",
          title: "Manage logo"
        }]
      }, {
        icon: "el-icon-rank",
        index: "6",
        title: "user management",
        subs: [{
          index: "loginAccount",
          title: "Login account"
        }, {
          index: "rolePermissions",
          title: "Role permissions"
        }, {
          index: "bindingRoles",
          title: "Binding roles"
        }]
      }, {
        icon: "el-icon-lx-rank",
        index: "permission",
        title: "Log management"
      }]
    }
  }
});

/***/ }),

/***/ "jC93":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "jWDM":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "mwHJ":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/util/index.js
var util = __webpack_require__("3e7c");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/mixin/autoResize.js
var autoResize = __webpack_require__("kN6d");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/index.js
var lib = __webpack_require__("z0b2");
var lib_default = /*#__PURE__*/__webpack_require__.n(lib);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/charts/src/main.vue
//
//
//
//
//
//







/* harmony default export */ var main = ({
  name: 'DvCharts',
  mixins: [autoResize["a" /* default */]],
  props: {
    option: {
      type: Object,
      default: function _default() {
        return {};
      }
    }
  },
  data: function data() {
    var id = Object(util["e" /* uuid */])();
    return {
      ref: 'charts-container-' + id,
      chartRef: 'chart-' + id,

      chart: null
    };
  },

  watch: {
    option: function option() {
      var chart = this.chart,
          option = this.option;


      if (!chart) return;

      if (!option) option = {};

      chart.setOption(option, true);
    }
  },
  methods: {
    afterAutoResizeMixinInit: function afterAutoResizeMixinInit() {
      var initChart = this.initChart;


      initChart();
    },
    initChart: function initChart() {
      var $refs = this.$refs,
          chartRef = this.chartRef,
          option = this.option;


      var chart = this.chart = new lib_default.a($refs[chartRef]);

      if (!option) return;

      chart.setOption(option);
    },
    onResize: function onResize() {
      var chart = this.chart;


      if (!chart) return;

      chart.resize();
    }
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-d283f50a","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/charts/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:_vm.ref,staticClass:"dv-charts-container"},[_c('div',{ref:_vm.chartRef,staticClass:"charts-canvas-container"})])}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/charts/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var charts_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "n4oI":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "n4z2":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/mixin/autoResize.js
var autoResize = __webpack_require__("kN6d");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/util/index.js
var util = __webpack_require__("3e7c");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var lib_util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(lib_util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/borderBox9/src/main.vue
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//








/* harmony default export */ var main = ({
  name: 'DvBorderBox9',
  mixins: [autoResize["a" /* default */]],
  props: {
    color: {
      type: Array,
      default: function _default() {
        return [];
      }
    },
    backgroundColor: {
      type: String,
      default: 'transparent'
    }
  },
  data: function data() {
    var id = Object(util["e" /* uuid */])();
    return {
      ref: 'border-box-9',

      gradientId: 'border-box-9-gradient-' + id,
      maskId: 'border-box-9-mask-' + id,

      defaultColor: ['#11eefd', '#0078d2'],

      mergedColor: []
    };
  },

  watch: {
    color: function color() {
      var mergeColor = this.mergeColor;


      mergeColor();
    }
  },
  methods: {
    mergeColor: function mergeColor() {
      var color = this.color,
          defaultColor = this.defaultColor;


      this.mergedColor = Object(lib_util["deepMerge"])(Object(plugin_util["deepClone"])(defaultColor, true), color || []);
    }
  },
  mounted: function mounted() {
    var mergeColor = this.mergeColor;


    mergeColor();
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-e8ec3610","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/borderBox9/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:_vm.ref,staticClass:"dv-border-box-9"},[_c('svg',{staticClass:"dv-border-svg-container",attrs:{"width":_vm.width,"height":_vm.height}},[_c('defs',[_c('linearGradient',{attrs:{"id":_vm.gradientId,"x1":"0%","y1":"0%","x2":"100%","y2":"100%"}},[_c('animate',{attrs:{"attributeName":"x1","values":"0%;100%;0%","dur":"10s","begin":"0s","repeatCount":"indefinite"}}),_vm._v(" "),_c('animate',{attrs:{"attributeName":"x2","values":"100%;0%;100%","dur":"10s","begin":"0s","repeatCount":"indefinite"}}),_vm._v(" "),_c('stop',{attrs:{"offset":"0%","stop-color":_vm.mergedColor[0]}},[_c('animate',{attrs:{"attributeName":"stop-color","values":((_vm.mergedColor[0]) + ";" + (_vm.mergedColor[1]) + ";" + (_vm.mergedColor[0])),"dur":"10s","begin":"0s","repeatCount":"indefinite"}})]),_vm._v(" "),_c('stop',{attrs:{"offset":"100%","stop-color":_vm.mergedColor[1]}},[_c('animate',{attrs:{"attributeName":"stop-color","values":((_vm.mergedColor[1]) + ";" + (_vm.mergedColor[0]) + ";" + (_vm.mergedColor[1])),"dur":"10s","begin":"0s","repeatCount":"indefinite"}})])],1),_vm._v(" "),_c('mask',{attrs:{"id":_vm.maskId}},[_c('polyline',{attrs:{"stroke":"#fff","stroke-width":"3","fill":"transparent","points":("8, " + (_vm.height * 0.4) + " 8, 3, " + (_vm.width * 0.4 + 7) + ", 3")}}),_vm._v(" "),_c('polyline',{attrs:{"fill":"#fff","points":("8, " + (_vm.height * 0.15) + " 8, 3, " + (_vm.width * 0.1 + 7) + ", 3\n            " + (_vm.width * 0.1) + ", 8 14, 8 14, " + (_vm.height * 0.15 - 7) + "\n          ")}}),_vm._v(" "),_c('polyline',{attrs:{"stroke":"#fff","stroke-width":"3","fill":"transparent","points":((_vm.width * 0.5) + ", 3 " + (_vm.width - 3) + ", 3, " + (_vm.width - 3) + ", " + (_vm.height * 0.25))}}),_vm._v(" "),_c('polyline',{attrs:{"fill":"#fff","points":("\n            " + (_vm.width * 0.52) + ", 3 " + (_vm.width * 0.58) + ", 3\n            " + (_vm.width * 0.58 - 7) + ", 9 " + (_vm.width * 0.52 + 7) + ", 9\n          ")}}),_vm._v(" "),_c('polyline',{attrs:{"fill":"#fff","points":("\n            " + (_vm.width * 0.9) + ", 3 " + (_vm.width - 3) + ", 3 " + (_vm.width - 3) + ", " + (_vm.height * 0.1) + "\n            " + (_vm.width - 9) + ", " + (_vm.height * 0.1 - 7) + " " + (_vm.width - 9) + ", 9 " + (_vm.width * 0.9 + 7) + ", 9\n          ")}}),_vm._v(" "),_c('polyline',{attrs:{"stroke":"#fff","stroke-width":"3","fill":"transparent","points":("8, " + (_vm.height * 0.5) + " 8, " + (_vm.height - 3) + " " + (_vm.width * 0.3 + 7) + ", " + (_vm.height - 3))}}),_vm._v(" "),_c('polyline',{attrs:{"fill":"#fff","points":("\n            8, " + (_vm.height * 0.55) + " 8, " + (_vm.height * 0.7) + "\n            2, " + (_vm.height * 0.7 - 7) + " 2, " + (_vm.height * 0.55 + 7) + "\n          ")}}),_vm._v(" "),_c('polyline',{attrs:{"stroke":"#fff","stroke-width":"3","fill":"transparent","points":((_vm.width * 0.35) + ", " + (_vm.height - 3) + " " + (_vm.width - 3) + ", " + (_vm.height - 3) + " " + (_vm.width - 3) + ", " + (_vm.height * 0.35))}}),_vm._v(" "),_c('polyline',{attrs:{"fill":"#fff","points":("\n            " + (_vm.width * 0.92) + ", " + (_vm.height - 3) + " " + (_vm.width - 3) + ", " + (_vm.height - 3) + " " + (_vm.width - 3) + ", " + (_vm.height * 0.8) + "\n            " + (_vm.width - 9) + ", " + (_vm.height * 0.8 + 7) + " " + (_vm.width - 9) + ", " + (_vm.height - 9) + " " + (_vm.width * 0.92 + 7) + ", " + (_vm.height - 9) + "\n          ")}})])],1),_vm._v(" "),_c('polygon',{attrs:{"fill":_vm.backgroundColor,"points":("\n      15, 9 " + (_vm.width * 0.1 + 1) + ", 9 " + (_vm.width * 0.1 + 4) + ", 6 " + (_vm.width * 0.52 + 2) + ", 6\n      " + (_vm.width * 0.52 + 6) + ", 10 " + (_vm.width * 0.58 - 7) + ", 10 " + (_vm.width * 0.58 - 2) + ", 6\n      " + (_vm.width * 0.9 + 2) + ", 6 " + (_vm.width * 0.9 + 6) + ", 10 " + (_vm.width - 10) + ", 10 " + (_vm.width - 10) + ", " + (_vm.height * 0.1 - 6) + "\n      " + (_vm.width - 6) + ", " + (_vm.height * 0.1 - 1) + " " + (_vm.width - 6) + ", " + (_vm.height * 0.8 + 1) + " " + (_vm.width - 10) + ", " + (_vm.height * 0.8 + 6) + "\n      " + (_vm.width - 10) + ", " + (_vm.height - 10) + " " + (_vm.width * 0.92 + 7) + ", " + (_vm.height - 10) + "  " + (_vm.width * 0.92 + 2) + ", " + (_vm.height - 6) + "\n      11, " + (_vm.height - 6) + " 11, " + (_vm.height * 0.15 - 2) + " 15, " + (_vm.height * 0.15 - 7) + "\n    ")}}),_vm._v(" "),_c('rect',{attrs:{"x":"0","y":"0","width":_vm.width,"height":_vm.height,"fill":("url(#" + _vm.gradientId + ")"),"mask":("url(#" + _vm.maskId + ")")}})]),_vm._v(" "),_c('div',{staticClass:"border-box-content"},[_vm._t("default")],2)])}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/borderBox9/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var borderBox9_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "nHoh":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/mixin/autoResize.js
var autoResize = __webpack_require__("kN6d");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/util/index.js
var util = __webpack_require__("3e7c");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var lib_util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(lib_util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/color/lib/index.js
var lib = __webpack_require__("glc7");
var lib_default = /*#__PURE__*/__webpack_require__.n(lib);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/borderBox11/src/main.vue
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//










/* harmony default export */ var main = ({
  name: 'DvBorderBox11',
  mixins: [autoResize["a" /* default */]],
  props: {
    color: {
      type: Array,
      default: function _default() {
        return [];
      }
    },
    titleWidth: {
      type: Number,
      default: 250
    },
    title: {
      type: String,
      default: ''
    },
    backgroundColor: {
      type: String,
      default: 'transparent'
    }
  },
  data: function data() {
    var id = Object(util["e" /* uuid */])();
    return {
      ref: 'border-box-11',
      filterId: 'border-box-11-filterId-' + id,

      defaultColor: ['#8aaafb', '#1f33a2'],

      mergedColor: []
    };
  },

  watch: {
    color: function color() {
      var mergeColor = this.mergeColor;


      mergeColor();
    }
  },
  methods: {
    mergeColor: function mergeColor() {
      var color = this.color,
          defaultColor = this.defaultColor;


      this.mergedColor = Object(lib_util["deepMerge"])(Object(plugin_util["deepClone"])(defaultColor, true), color || []);
    },

    fade: lib["fade"]
  },
  mounted: function mounted() {
    var mergeColor = this.mergeColor;


    mergeColor();
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-c3ee2428","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/borderBox11/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:_vm.ref,staticClass:"dv-border-box-11"},[_c('svg',{staticClass:"dv-border-svg-container",attrs:{"width":_vm.width,"height":_vm.height}},[_c('defs',[_c('filter',{attrs:{"id":_vm.filterId,"height":"150%","width":"150%","x":"-25%","y":"-25%"}},[_c('feMorphology',{attrs:{"operator":"dilate","radius":"2","in":"SourceAlpha","result":"thicken"}}),_vm._v(" "),_c('feGaussianBlur',{attrs:{"in":"thicken","stdDeviation":"3","result":"blurred"}}),_vm._v(" "),_c('feFlood',{attrs:{"flood-color":_vm.mergedColor[1],"result":"glowColor"}}),_vm._v(" "),_c('feComposite',{attrs:{"in":"glowColor","in2":"blurred","operator":"in","result":"softGlowColored"}}),_vm._v(" "),_c('feMerge',[_c('feMergeNode',{attrs:{"in":"softGlowColored"}}),_vm._v(" "),_c('feMergeNode',{attrs:{"in":"SourceGraphic"}})],1)],1)]),_vm._v(" "),_c('polygon',{attrs:{"fill":_vm.backgroundColor,"points":("\n      20, 32 " + (_vm.width * 0.5 - _vm.titleWidth / 2) + ", 32 " + (_vm.width * 0.5 - _vm.titleWidth / 2 + 20) + ", 53\n      " + (_vm.width * 0.5 + _vm.titleWidth / 2 - 20) + ", 53 " + (_vm.width * 0.5 + _vm.titleWidth / 2) + ", 32\n      " + (_vm.width - 20) + ", 32 " + (_vm.width - 8) + ", 48 " + (_vm.width - 8) + ", " + (_vm.height - 25) + " " + (_vm.width - 20) + ", " + (_vm.height - 8) + "\n      20, " + (_vm.height - 8) + " 8, " + (_vm.height - 25) + " 8, 50\n    ")}}),_vm._v(" "),_c('polyline',{attrs:{"stroke":_vm.mergedColor[0],"filter":("url(#" + _vm.filterId + ")"),"points":("\n        " + ((_vm.width - _vm.titleWidth) / 2) + ", 30\n        20, 30 7, 50 7, " + (50 + (_vm.height - 167) / 2) + "\n        13, " + (55 + (_vm.height - 167) / 2) + " 13, " + (135 + (_vm.height - 167) / 2) + "\n        7, " + (140 + (_vm.height - 167) / 2) + " 7, " + (_vm.height - 27) + "\n        20, " + (_vm.height - 7) + " " + (_vm.width - 20) + ", " + (_vm.height - 7) + " " + (_vm.width - 7) + ", " + (_vm.height - 27) + "\n        " + (_vm.width - 7) + ", " + (140 + (_vm.height - 167) / 2) + " " + (_vm.width - 13) + ", " + (135 + (_vm.height - 167) / 2) + "\n        " + (_vm.width - 13) + ", " + (55 + (_vm.height - 167) / 2) + " " + (_vm.width - 7) + ", " + (50 + (_vm.height - 167) / 2) + "\n        " + (_vm.width - 7) + ", 50 " + (_vm.width - 20) + ", 30 " + ((_vm.width + _vm.titleWidth) / 2) + ", 30\n        " + ((_vm.width + _vm.titleWidth) / 2 - 20) + ", 7 " + ((_vm.width - _vm.titleWidth) / 2 + 20) + ", 7\n        " + ((_vm.width - _vm.titleWidth) / 2) + ", 30 " + ((_vm.width - _vm.titleWidth) / 2 + 20) + ", 52\n        " + ((_vm.width + _vm.titleWidth) / 2 - 20) + ", 52 " + ((_vm.width + _vm.titleWidth) / 2) + ", 30\n      ")}}),_vm._v(" "),_c('polygon',{attrs:{"stroke":_vm.mergedColor[0],"fill":"transparent","points":("\n        " + ((_vm.width + _vm.titleWidth) / 2 - 5) + ", 30 " + ((_vm.width + _vm.titleWidth) / 2 - 21) + ", 11\n        " + ((_vm.width + _vm.titleWidth) / 2 - 27) + ", 11 " + ((_vm.width + _vm.titleWidth) / 2 - 8) + ", 34\n      ")}}),_vm._v(" "),_c('polygon',{attrs:{"stroke":_vm.mergedColor[0],"fill":"transparent","points":("\n        " + ((_vm.width - _vm.titleWidth) / 2 + 5) + ", 30 " + ((_vm.width - _vm.titleWidth) / 2 + 22) + ", 49\n        " + ((_vm.width - _vm.titleWidth) / 2 + 28) + ", 49 " + ((_vm.width - _vm.titleWidth) / 2 + 8) + ", 26\n      ")}}),_vm._v(" "),_c('polygon',{attrs:{"stroke":_vm.mergedColor[0],"fill":_vm.fade(_vm.mergedColor[1] || _vm.defaultColor[1], 30),"filter":("url(#" + _vm.filterId + ")"),"points":("\n        " + ((_vm.width + _vm.titleWidth) / 2 - 11) + ", 37 " + ((_vm.width + _vm.titleWidth) / 2 - 32) + ", 11\n        " + ((_vm.width - _vm.titleWidth) / 2 + 23) + ", 11 " + ((_vm.width - _vm.titleWidth) / 2 + 11) + ", 23\n        " + ((_vm.width - _vm.titleWidth) / 2 + 33) + ", 49 " + ((_vm.width + _vm.titleWidth) / 2 - 22) + ", 49\n      ")}}),_vm._v(" "),_c('polygon',{attrs:{"filter":("url(#" + _vm.filterId + ")"),"fill":_vm.mergedColor[0],"opacity":"1","points":("\n        " + ((_vm.width - _vm.titleWidth) / 2 - 10) + ", 37 " + ((_vm.width - _vm.titleWidth) / 2 - 31) + ", 37\n        " + ((_vm.width - _vm.titleWidth) / 2 - 25) + ", 46 " + ((_vm.width - _vm.titleWidth) / 2 - 4) + ", 46\n      ")}},[_c('animate',{attrs:{"attributeName":"opacity","values":"1;0.7;1","dur":"2s","begin":"0s","repeatCount":"indefinite"}})]),_vm._v(" "),_c('polygon',{attrs:{"filter":("url(#" + _vm.filterId + ")"),"fill":_vm.mergedColor[0],"opacity":"0.7","points":("\n        " + ((_vm.width - _vm.titleWidth) / 2 - 40) + ", 37 " + ((_vm.width - _vm.titleWidth) / 2 - 61) + ", 37\n        " + ((_vm.width - _vm.titleWidth) / 2 - 55) + ", 46 " + ((_vm.width - _vm.titleWidth) / 2 - 34) + ", 46\n      ")}},[_c('animate',{attrs:{"attributeName":"opacity","values":"0.7;0.4;0.7","dur":"2s","begin":"0s","repeatCount":"indefinite"}})]),_vm._v(" "),_c('polygon',{attrs:{"filter":("url(#" + _vm.filterId + ")"),"fill":_vm.mergedColor[0],"opacity":"0.5","points":("\n        " + ((_vm.width - _vm.titleWidth) / 2 - 70) + ", 37 " + ((_vm.width - _vm.titleWidth) / 2 - 91) + ", 37\n        " + ((_vm.width - _vm.titleWidth) / 2 - 85) + ", 46 " + ((_vm.width - _vm.titleWidth) / 2 - 64) + ", 46\n      ")}},[_c('animate',{attrs:{"attributeName":"opacity","values":"0.5;0.2;0.5","dur":"2s","begin":"0s","repeatCount":"indefinite"}})]),_vm._v(" "),_c('polygon',{attrs:{"filter":("url(#" + _vm.filterId + ")"),"fill":_vm.mergedColor[0],"opacity":"1","points":("\n        " + ((_vm.width + _vm.titleWidth) / 2 + 30) + ", 37 " + ((_vm.width + _vm.titleWidth) / 2 + 9) + ", 37\n        " + ((_vm.width + _vm.titleWidth) / 2 + 3) + ", 46 " + ((_vm.width + _vm.titleWidth) / 2 + 24) + ", 46\n      ")}},[_c('animate',{attrs:{"attributeName":"opacity","values":"1;0.7;1","dur":"2s","begin":"0s","repeatCount":"indefinite"}})]),_vm._v(" "),_c('polygon',{attrs:{"filter":("url(#" + _vm.filterId + ")"),"fill":_vm.mergedColor[0],"opacity":"0.7","points":("\n        " + ((_vm.width + _vm.titleWidth) / 2 + 60) + ", 37 " + ((_vm.width + _vm.titleWidth) / 2 + 39) + ", 37\n        " + ((_vm.width + _vm.titleWidth) / 2 + 33) + ", 46 " + ((_vm.width + _vm.titleWidth) / 2 + 54) + ", 46\n      ")}},[_c('animate',{attrs:{"attributeName":"opacity","values":"0.7;0.4;0.7","dur":"2s","begin":"0s","repeatCount":"indefinite"}})]),_vm._v(" "),_c('polygon',{attrs:{"filter":("url(#" + _vm.filterId + ")"),"fill":_vm.mergedColor[0],"opacity":"0.5","points":("\n        " + ((_vm.width + _vm.titleWidth) / 2 + 90) + ", 37 " + ((_vm.width + _vm.titleWidth) / 2 + 69) + ", 37\n        " + ((_vm.width + _vm.titleWidth) / 2 + 63) + ", 46 " + ((_vm.width + _vm.titleWidth) / 2 + 84) + ", 46\n      ")}},[_c('animate',{attrs:{"attributeName":"opacity","values":"0.5;0.2;0.5","dur":"2s","begin":"0s","repeatCount":"indefinite"}})]),_vm._v(" "),_c('text',{staticClass:"dv-border-box-11-title",attrs:{"x":("" + (_vm.width / 2)),"y":"32","fill":"#fff","font-size":"18","text-anchor":"middle","dominant-baseline":"middle"}},[_vm._v("\n      "+_vm._s(_vm.title)+"\n    ")]),_vm._v(" "),_c('polygon',{attrs:{"fill":_vm.mergedColor[0],"filter":("url(#" + _vm.filterId + ")"),"points":("\n        7, " + (53 + (_vm.height - 167) / 2) + " 11, " + (57 + (_vm.height - 167) / 2) + "\n        11, " + (133 + (_vm.height - 167) / 2) + " 7, " + (137 + (_vm.height - 167) / 2) + "\n      ")}}),_vm._v(" "),_c('polygon',{attrs:{"fill":_vm.mergedColor[0],"filter":("url(#" + _vm.filterId + ")"),"points":("\n        " + (_vm.width - 7) + ", " + (53 + (_vm.height - 167) / 2) + " " + (_vm.width - 11) + ", " + (57 + (_vm.height - 167) / 2) + "\n        " + (_vm.width - 11) + ", " + (133 + (_vm.height - 167) / 2) + " " + (_vm.width - 7) + ", " + (137 + (_vm.height - 167) / 2) + "\n      ")}})]),_vm._v(" "),_c('div',{staticClass:"border-box-content"},[_vm._t("default")],2)])}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/borderBox11/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var borderBox11_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "nb0U":
/***/ (function(module, exports) {

module.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFu2lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNy4xLWMwMDAgNzkuYjBmOGJlOSwgMjAyMS8xMi8wOC0xOToxMToyMiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIzLjIgKFdpbmRvd3MpIiB4bXA6Q3JlYXRlRGF0ZT0iMjAyMi0wNC0yNFQxMTozMTo0MiswODowMCIgeG1wOk1vZGlmeURhdGU9IjIwMjItMDUtMDlUMTA6MzQ6NDcrMDg6MDAiIHhtcDpNZXRhZGF0YURhdGU9IjIwMjItMDUtMDlUMTA6MzQ6NDcrMDg6MDAiIGRjOmZvcm1hdD0iaW1hZ2UvcG5nIiBwaG90b3Nob3A6Q29sb3JNb2RlPSIzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjg3NDRlOWU4LWZhYzQtMDY0ZC05MjVhLTkwNzE0MjIyMTlhMSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDphYTgzYzdlZS02MjdkLTFlNDktOWYxMS0wZjRjMmRiMmUxYTEiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDphYTgzYzdlZS02MjdkLTFlNDktOWYxMS0wZjRjMmRiMmUxYTEiPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmFhODNjN2VlLTYyN2QtMWU0OS05ZjExLTBmNGMyZGIyZTFhMSIgc3RFdnQ6d2hlbj0iMjAyMi0wNC0yNFQxMTozMTo0MiswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIzLjIgKFdpbmRvd3MpIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo4NzQ0ZTllOC1mYWM0LTA2NGQtOTI1YS05MDcxNDIyMjE5YTEiIHN0RXZ0OndoZW49IjIwMjItMDUtMDlUMTA6MzQ6NDcrMDg6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMy4yIChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz7fdxJRAAAFd0lEQVRoge3aW4xeVRUH8N+IBonGxERNQGPG4LUY2kQq8ZbUQCU2PmB0KtALvdCOY4FW2lJEoFNBxYDiBbTcyrWKtSa8CJSQwIMQjSbekkbRKIkQb01UFPFtfFj79Kxz+p3v+6ZzaZr4T77MWvvsvc9/7b322mvvMyNTU1OOZ7zkWBOYKY57A17a0M45t5JG8cwsv2shXo0nZtzTgQcPi71mYAp/wOSMX1RjLR7F47PYJ9ozwFuTvBMj5e9M8A1cPKDOEpyEh6fbeXsGnsaupF+Dz02304J34UmDyS8SM/MQbpruS3q50KQm6atx7TT7/RR+iPcOUfc/Sd6Cn4k1OBS6otBOTdJX4boh+7wHt+DlQ9Z/GuNJXyTW4JphGvcLo9dokv4sPt+n/un4FVansoM4Zwget2F9q+wufHxQw0H7wNWapK/EF3vU24Bf4J2pbA/OEtGnF9qE9+D9rbLv4dR+BIfZyK7CF5J+Ba5P+h1iBCv8HhsLwT939HlLaTeFZan8Sby2VXc/Tugi18uAM7FOLOZJjAn3yaR34EtFPpDKH8C5uL3rhQV/S/IPhLtUOITTkr4IN3d11N4HFuBHPeotx2fEvrCjlF1e9MvL89fjqwOIV5jEm7Gi6GvwoohexNrZpd6DPokf4+5BBtzR8cJ9heQViTRsL/r2IYlnrMTrsLToE/gldhd9EicLdyQ84e52J20D3pPk2/CnpFfTuqNFelvRt02PP/iQ5k79LfwLe4s+jveVdy/DYvyknwEZ432eVe5Tkd5a9K3Dcz+MS/BKddy/XkSuap3sVw/emJYBM0mnt+PLSb/MUaQCBbvU2e8bNDexfUkewytyw5meB7bhK0nfYviFnPGMOqoR2euJRT4o0hIixfhgbjgbB5qtmiO/GV87in7uEWkFvENzFh5K8ptyo9k6kV2mOfKX4uvT7ONF3Jv0hUl+LsmjudFsHik/rUn6EhFhiBA8DB5L8huTnA2YkxmosFlNmgiPN4ucZhgj/prkLgNGc4N+YfRocakIqVVs31T0TQYbMYwBjRmYCwMI96lIEynCiDpV6MJJSR5Jck7mTkzynF6rXIxvJn1CnSZ04W1J/mOS86j/PTeY63uhTSI9qDCOW/vUzwY8m+TRJM+rAYTb5JHfqHl+yDgzydmAYzYDFSY0SW9w5JlhVJ150j0DT+VG82XAmHCfTPoizfQ9L/BncWPS8ww07o7my4B9woiNmqTX484iP5HKr8S/i/wBfKTIv2vVm9fL3cqIDWrSxPF1j8h31pay+9LzzUn+frvT9j7wPF5V5OfUyVU/3KCZbPXDPhHfLyp/15XytWIw1+CFVH8JPpb0B9odtg04IEYJTim/QVgi8vnJIepmrBdGVKN+YdEvTHXyvex+/LzdSduFlgs/my52ituFhYMqFiwQBq/TPOeuVmekS8qvQs/DUq9U4i1iQzl5CCLXqi+jluHdYgEOula5SZyH/6J2n+pGb5WYiVU4T7jNhFb47GcA/Kb8BmGpuKnbUvTXiHi/WBhyqKPdvcWA9fit2n1Wlecri74SL8P9XQRmGoX+K84BqzQ3ng0it1/Wq5G4dXg7zlCfAVa3iK4o9TrJM3th9H4xGw+msoViXXR9X2jP8KQYiL2p7AJ8u9+LZ3Mf+DU+Ki6EM9p6GwvwiAgE48JtMunz8Z2uxnOxkV2HD+sR8jpwu/oKfrcgvEKTdLWYj8Bc7cSPCJfquqqssFjzK84uNfELNEl/QvOOCHObShwSi3kC/+ioc1CEx70425Gb4fn4btLHxLe3w5irI2XGbvxUhNuzW89eEHef/XCeGOgqQ/hnfjgfBhAGLDXc5tgLy8UnrOe1PsCP/P+fPY4xjnsD/gelvwP9ThdVEgAAAABJRU5ErkJggg=="

/***/ }),

/***/ "oFuF":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(Buffer) {/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_json_stringify__ = __webpack_require__("mvHQ");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_json_stringify___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_json_stringify__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_array_from__ = __webpack_require__("c/Tr");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_array_from___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_array_from__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_core_js_map__ = __webpack_require__("ifoU");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_core_js_map___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_core_js_map__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_objectWithoutProperties__ = __webpack_require__("+6Bu");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_objectWithoutProperties___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_objectWithoutProperties__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_core_js_get_iterator__ = __webpack_require__("BO1k");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_core_js_get_iterator___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_core_js_get_iterator__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_classCallCheck__ = __webpack_require__("Zrlr");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_classCallCheck__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_babel_runtime_helpers_createClass__ = __webpack_require__("wxAW");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_babel_runtime_helpers_createClass___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_babel_runtime_helpers_createClass__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__api__ = __webpack_require__("gyMJ");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_moment__ = __webpack_require__("PJh5");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_moment___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_moment__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__api_all__ = __webpack_require__("+iPQ");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__utils_equipment_js__ = __webpack_require__("ObZk");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__resetMessage__ = __webpack_require__("46Yo");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_pako__ = __webpack_require__("Y7uo");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_js_md5__ = __webpack_require__("NC6I");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13_js_md5___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_13_js_md5__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_crypto_js__ = __webpack_require__("Av7u");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_crypto_js___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_14_crypto_js__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__index_js__ = __webpack_require__("0xDb");
















var Base64 = __webpack_require__("PXCl");


/**
 * @param {Function} fn 防抖函数
 * @param {Number} delay 延迟时间
 */

var utils = function () {
  function utils() {
    __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_classCallCheck___default()(this, utils);
  }

  __WEBPACK_IMPORTED_MODULE_6_babel_runtime_helpers_createClass___default()(utils, null, [{
    key: "treeToArray",

    // 扁平化树形数据
    value: function treeToArray(tree) {
      var res = [];
      var _iteratorNormalCompletion = true;
      var _didIteratorError = false;
      var _iteratorError = undefined;

      try {
        for (var _iterator = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_core_js_get_iterator___default()(tree), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
          var item = _step.value;

          var subs = item.subs,
              i = __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_objectWithoutProperties___default()(item, ["subs"]);

          if (subs && subs.length) {
            res = res.concat(this.treeToArray(subs));
          }
          res.push(i);
        }
      } catch (err) {
        _didIteratorError = true;
        _iteratorError = err;
      } finally {
        try {
          if (!_iteratorNormalCompletion && _iterator.return) {
            _iterator.return();
          }
        } finally {
          if (_didIteratorError) {
            throw _iteratorError;
          }
        }
      }

      return res;
    }
    // 检测入住人员数组对象中是否有重复值

  }, {
    key: "isRepeat",
    value: function isRepeat(arr) {
      var hash = {};
      for (var i in arr) {
        if (hash[arr[i].phone] || hash[arr[i].number]) {
          return true;
        } else {
          hash[arr[i].phone] = true;
          hash[arr[i].number] = true;
        }
      }
      return false;
    }
    // 校验手机号

  }, {
    key: "verificationPhone",
    value: function verificationPhone(str) {
      return (/^1[3|4|5|6|7|8|9][0-9]\d{8}$/.test(str)
      );
    }
  }, {
    key: "FromBase64",
    value: function FromBase64(base64) {
      return new Buffer.from(base64, "base64").toString();
    }
  }, {
    key: "decrypt",
    value: function decrypt(word, keyStr) {
      var key = __WEBPACK_IMPORTED_MODULE_14_crypto_js___default.a.enc.Utf8.parse(keyStr);
      var decrypt = __WEBPACK_IMPORTED_MODULE_14_crypto_js___default.a.AES.decrypt(word, key, {
        mode: __WEBPACK_IMPORTED_MODULE_14_crypto_js___default.a.mode.ECB,
        padding: __WEBPACK_IMPORTED_MODULE_14_crypto_js___default.a.pad.Pkcs7
      });
      return __WEBPACK_IMPORTED_MODULE_14_crypto_js___default.a.enc.Utf8.stringify(decrypt).toString();
    }
  }, {
    key: "zlib_unzip",
    value: function zlib_unzip(info) {
      var key = __WEBPACK_IMPORTED_MODULE_13_js_md5___default()(String(info.currentTime) + "mdmdmdmdmdvsololololol");
      var b = info.list.split(',').map(function (x) {
        return parseInt(x);
      });
      var c = __WEBPACK_IMPORTED_MODULE_12_pako__["a" /* default */].inflate(b, {
        to: "string"
      });
      var e = this.decrypt(c, key);
      return JSON.parse(e);
    }
  }, {
    key: "validObject",
    value: function validObject(obj) {
      var objectData = new Object();
      for (var i in obj) {
        if (obj[i] != '' && obj[i]) {
          objectData[i] = obj[i];
        }
      }
      return objectData;
    }
    /**
     * 树级列表排序
     * @param origList 列表
     * @param idName id字段名
     * @param pidName 上级id字段名
     * @returns {any[]}
     */

  }, {
    key: "getOrderList",
    value: function getOrderList(origList, idName, pidName) {
      //遍历获取MAP(pid->Object)
      var pidMap = new __WEBPACK_IMPORTED_MODULE_2_babel_runtime_core_js_map___default.a();
      for (var i = 0; i < origList.length; i++) {
        var item = origList[i];
        if (item[pidName] != null && item[pidName] != "") {
          if (pidMap.get(item[pidName]) != null) {
            pidMap.get(item[pidName]).push(item);
          } else {
            pidMap.set(item[pidName], [item]);
          }
        }
      }
      console.log(pidMap);
      //排序
      var rstList = new Array();
      for (var i = 0; i < origList.length; i++) {
        var item = origList[i];
        if (!item[pidName]) {
          rstList.push(item);
          this.pushChildList(rstList, item, pidMap, idName, pidName);
        }
      }
      return rstList;
    }

    //递归调用获取子节点的子节点

  }, {
    key: "pushChildList",
    value: function pushChildList(rstList, item, pidMap, idName, pidName) {
      if (pidMap.get(item[idName]) != null && pidMap.get(item[idName]).length > 0) {
        for (var i = 0; i < pidMap.get(item[idName]).length; i++) {
          rstList.push(pidMap.get(item[idName])[i]);
          this.pushChildList(rstList, pidMap.get(item[idName])[i], pidMap, idName, pidName);
        }
      }
    }

    // 递归根据子节点id拿到完整路径

  }, {
    key: "findIndexArray",
    value: function findIndexArray(data, id, indexArray) {
      var arr = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_array_from___default()(indexArray);
      for (var i = 0, len = data.length; i < len; i++) {
        arr.push(data[i].name);
        if (data[i].id === id) {
          return arr;
        }
        var children = data[i].children;
        if (children && children.length) {
          var result = this.findIndexArray(children, id, arr);
          if (result) return result;
        }
        arr.pop();
      }
      return false;
    }
    // 递归根据子节点id拿到完整路径

  }, {
    key: "findIndexArrayOne",
    value: function findIndexArrayOne(data, id, indexArray) {
      var arr = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_array_from___default()(indexArray);
      for (var i = 0, len = data.length; i < len; i++) {
        arr.push(data[i].id);
        if (data[i].id === id) {
          return arr;
        }
        var children = data[i].children;
        if (children && children.length) {
          var result = this.findIndexArrayOne(children, id, arr);
          if (result) return result;
        }
        arr.pop();
      }
      return false;
    }
    // 卡片转换

  }, {
    key: "cardFormatConversion",
    value: function cardFormatConversion(data) {
      var arr = data.split("");
      return arr[6] + arr[7] + arr[4] + arr[5] + arr[2] + arr[3] + arr[0] + arr[1];
    }
    // 锁用户凭证

  }, {
    key: "sendLockUser",
    value: function sendLockUser(data, callback) {
      var data = {
        deviceNum: data.deviceNum,
        imei: data.imei,
        cardId: data.cardId,
        content: data.content, //operateMode:NFC-10、把人员添加到凭证-1
        type: data.type,
        serial: data.serial,
        startTime: data.startTime,
        endTime: data.endTime
      };
      Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(data, __WEBPACK_IMPORTED_MODULE_9__api_all__["a" /* api */].addCertificates).then(function (res) {
        callback(res);
      });
    }
    // 设备反馈日志重新下发

  }, {
    key: "CommandReissue",
    value: function CommandReissue(voucer, code) {
      var data = {
        q: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_json_stringify___default()({
          deviceNum: code.deviceNum
        }),
        pageNum: 1,
        pageSize: 1
      };
      Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(data, __WEBPACK_IMPORTED_MODULE_9__api_all__["a" /* api */].getDeviceItems).then(function (res) {
        if (res.success) {
          if (res.data.total > 0) {
            var deviceInfo = res.data.list[0];
            if (deviceInfo.manufactureId == 101) {
              __WEBPACK_IMPORTED_MODULE_10__utils_equipment_js__["a" /* default */].LDAddCertificate(voucer, function (callback) {
                if (callback.success) {
                  var updatedata = {
                    id: voucer.id,
                    serial: callback.data.serialNumber
                  };
                  Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(updatedata, that.$api.updateCertificates).then(function (res2) {
                    if (res2.success) {
                      Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                        type: "success",
                        message: "更新凭证成功"
                      });
                    } else {
                      Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                        type: "error",
                        message: "更新凭证失败"
                      });
                    }
                  });
                  var data4 = {
                    result: 1,
                    serial: code.serial
                  };
                  Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(data4, __WEBPACK_IMPORTED_MODULE_9__api_all__["a" /* api */].updatePush).then(function (res3) {
                    if (res3.success) {
                      Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                        type: "success",
                        message: "更新日志成功"
                      });
                    } else {
                      Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                        type: "error",
                        message: "更新日志失败"
                      });
                    }
                  });
                } else {
                  Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                    type: "error",
                    message: "发送失败"
                  });
                }
              });
            } else if (deviceInfo.manufactureId == 201 || deviceInfo.manufactureId == 221) {
              __WEBPACK_IMPORTED_MODULE_10__utils_equipment_js__["a" /* default */].ZGAddCertificate(voucer, function (callback) {
                if (callback.success) {
                  var updatedata = {
                    id: voucer.id,
                    serial: callback.data.serialNumber
                  };
                  Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(updatedata, that.$api.updateCertificates).then(function (res2) {
                    if (res2.success) {
                      Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                        type: "success",
                        message: "更新凭证成功"
                      });
                    } else {
                      Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                        type: "error",
                        message: "更新凭证失败"
                      });
                    }
                  });
                  var data4 = {
                    result: 1,
                    serial: code.serial
                  };
                  Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(data4, __WEBPACK_IMPORTED_MODULE_9__api_all__["a" /* api */].updatePush).then(function (res3) {
                    if (res3.success) {
                      Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                        type: "success",
                        message: "更新日志成功"
                      });
                    } else {
                      Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                        type: "error",
                        message: "更新日志失败"
                      });
                    }
                  });
                } else {
                  Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                    type: "error",
                    message: "发送失败"
                  });
                }
              });
            }
          } else {
            Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
              type: "error",
              message: "未获取到命令对应设备信息"
            });
          }
        } else {
          Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
            type: "error",
            message: "获取设备内容失败"
          });
        }
      });
    }
    // 下发凭证

  }, {
    key: "putCarfidzgAdd",
    value: function putCarfidzgAdd(resultArr, row) {
      var data = {};
      var userTelephone = JSON.parse(row.content).userTelephone;
      var userPassword = JSON.parse(row.content).userPassword;
      var startTime = row.startTime;
      var endTime = row.endTime;
      var passwordStartTime = row.startTime;
      var passwordEndTime = row.endTime;

      if (row.type == 1) {
        var fpId = new Date();
        var fingerprint1 = JSON.parse(row.content).fingerprint;
        var str = {
          imei: resultArr.imei,
          deviceNum: resultArr.deviceNum,
          userTelephone: userTelephone,
          userPassword: userPassword,
          password: JSON.parse(row.content).password,
          length: fingerprint1.length / 2,
          fpTimeId: fpId.getTime(),
          operateMode: 16,
          order: 6216,
          fingerprint: fingerprint1,
          passwordStartTime: passwordStartTime,
          passwordEndTime: passwordEndTime,
          pzname: JSON.parse(row.content).pzname
        };
        var data3 = {
          lockerId: resultArr.deviceNum,
          imei: resultArr.imei,
          order: 6216,
          lockerUserId: userPassword,
          keyId: userPassword,
          fingerType: 0,
          file: fingerprint1,
          cardName: row.name + '-' + JSON.parse(row.content).pzname,
          roomName: resultArr.roomName,
          startTime: passwordStartTime,
          endTime: passwordEndTime
        };
        __WEBPACK_IMPORTED_MODULE_10__utils_equipment_js__["a" /* default */].addFingerPrints(data3.lockerId, data3.imei, data3.lockerUserId, data3.fingerType, data3.file, data3.startTime, data3.endTime, data3.cardName, data3.roomName, function (callback) {
          console.log(callback, 'callbackcallbackcallback');
          if (callback.success) {
            var data = {
              id: row.id,
              serial: callback.data.serialNumber
            };
            Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(data, __WEBPACK_IMPORTED_MODULE_9__api_all__["a" /* api */].updateCertificates).then(function (res) {
              Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                type: "success",
                message: "下发成功"
              });
            });
          } else {
            Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
              type: "error",
              message: callback.msg
            });
          }
        });
      } else if (row.type == 2) {
        if (JSON.parse(row.content).password.length != 16) {
          Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
            type: "error",
            message: "卡格式错误，请重新录入"
          });
          return;
        }
        var str = {
          imei: resultArr.imei,
          userTelephone: userTelephone,
          cardId: row.cardId,
          userPassword: userPassword,
          password: JSON.parse(row.content).password,
          operateMode: 13,
          order: 6213,
          passwordStartTime: passwordStartTime,
          passwordEndTime: passwordEndTime,
          pzname: JSON.parse(row.content).pzname,
          is: false
        };
        var data3 = {
          lockerId: resultArr.deviceNum,
          imei: resultArr.imei,
          lockerUserId: userPassword,
          keyId: userPassword,
          action: 1,
          taskStatus: 1,
          order: 6210,
          startTime: passwordStartTime,
          endTime: passwordEndTime,
          cardType: 36,
          cardName: row.name + '-' + JSON.parse(row.content).pzname,
          roomName: row.roomName,
          cardNo: JSON.parse(row.content).password
        };
        __WEBPACK_IMPORTED_MODULE_10__utils_equipment_js__["a" /* default */].RfCardRegister(data3.lockerId, data3.imei, data3.keyId, data3.action, data3.taskStatus, data3.cardNo, data3.cardType, data3.startTime, data3.endTime, data3.order, data3.cardName, data3.roomName, function (callback) {
          if (callback.success) {
            var data = {
              id: row.id,
              serial: callback.data.serialNumber
            };
            Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(data, __WEBPACK_IMPORTED_MODULE_9__api_all__["a" /* api */].updateCertificates).then(function (res) {
              Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                type: "success",
                message: "下发成功"
              });
            });
          } else {
            Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
              type: "error",
              message: callback.msg
            });
          }
        });
      } else if (row.type == 3) {
        if (JSON.parse(row.content).password.length != 8) {
          Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
            type: "error",
            message: "卡格式错误，请重新录入"
          });
          return;
        }
        var str = {
          imei: resultArr.imei,
          userTelephone: userTelephone,
          cardId: row.cardId,
          userPassword: userPassword,
          password: JSON.parse(row.content).password,
          operateMode: 10,
          order: 6210,
          passwordStartTime: passwordStartTime,
          passwordEndTime: passwordEndTime,
          pzname: JSON.parse(row.content).pzname,
          is: false
        };
        var data3 = {
          lockerId: resultArr.deviceNum,
          lockerUserId: userPassword,
          keyId: userPassword,
          imei: resultArr.imei,
          action: 1,
          taskStatus: 1,
          order: 6210,
          startTime: passwordStartTime,
          endTime: passwordEndTime,
          cardType: 50,
          cardName: row.name + '-' + JSON.parse(row.content).pzname,
          roomName: row.roomName,
          cardNo: JSON.parse(row.content).password
        };
        __WEBPACK_IMPORTED_MODULE_10__utils_equipment_js__["a" /* default */].RfCardRegister(data3.lockerId, data3.imei, data3.keyId, data3.action, data3.taskStatus, data3.cardNo, data3.cardType, data3.startTime, data3.endTime, data3.order, data3.cardName, data3.roomName, function (callback) {
          if (callback.success) {
            var data = {
              id: row.id,
              serial: callback.data.serialNumber
            };
            Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(data, __WEBPACK_IMPORTED_MODULE_9__api_all__["a" /* api */].updateCertificates).then(function (res) {
              Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                type: "success",
                message: "下发成功"
              });
            });
          } else {
            Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
              type: "error",
              message: callback.msg
            });
          }
        });
      } else if (row.type == 4) {
        str = {
          imei: resultArr.imei,
          userTelephone: userTelephone,
          cardId: row.cardId,
          userPassword: userPassword,
          password: JSON.parse(row.content).password,
          operateMode: 7,
          order: 6207,
          passwordStartTime: passwordStartTime,
          passwordEndTime: passwordEndTime,
          pzname: JSON.parse(row.content).pzname,
          is: false,
          cardName: row.name + '-' + JSON.parse(row.content).pzname,
          roomName: row.roomName
        };
        var data3 = {
          lockerId: resultArr.deviceNum,
          imei: resultArr.imei,
          order: 6207,
          passwordCount: 255,
          lockerUserId: userPassword,
          keyId: userPassword,
          startTime: passwordStartTime,
          endTime: passwordEndTime,
          action: 1,
          password: JSON.parse(row.content).password,
          cardName: row.name + '-' + JSON.parse(row.content).pzname,
          roomName: row.roomName
        };
        __WEBPACK_IMPORTED_MODULE_10__utils_equipment_js__["a" /* default */].addForeverPassword(data3.lockerId, data3.imei, data3.keyId, data3.action, data3.password, data3.passwordCount, data3.startTime, data3.endTime, data3.order, data3.cardName, data3.roomName, function (callback) {
          if (callback.success) {
            var data = {
              id: row.id,
              serial: callback.data.serialNumber
            };
            Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(data, __WEBPACK_IMPORTED_MODULE_9__api_all__["a" /* api */].updateCertificates).then(function (res) {
              Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                type: "success",
                message: "下发成功"
              });
            });
          } else {
            Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
              type: "error",
              message: callback.msg
            });
          }
        });
      }
    }
    // 下发凭证

  }, {
    key: "putCarfidAdd",
    value: function putCarfidAdd(resultArr, row) {
      var data = {};
      var userTelephone = JSON.parse(row.content).userTelephone;
      var userPassword = JSON.parse(row.content).userPassword;
      var startTime = row.startTime;
      var endTime = row.endTime;
      var passwordEndTime = __WEBPACK_IMPORTED_MODULE_8_moment___default()(endTime * 1000).format("YYYYMMDDHHmmss");
      var passwordStartTime = __WEBPACK_IMPORTED_MODULE_8_moment___default()(startTime * 1000).format("YYYYMMDDHHmmss");
      if (row.type == 1) {
        var fpId = new Date();
        var fingerprint = JSON.parse(row.content).fingerprint;
        var str = {
          imei: resultArr.imei,
          deviceNum: resultArr.deviceNum,
          userTelephone: userTelephone,
          userPassword: userPassword,
          password: JSON.parse(row.content).password,
          length: fingerprint.length / 2,
          fpTimeId: fpId.getTime(),
          operateMode: 16,
          order: 6216,
          fingerprint: fingerprint,
          passwordStartTime: passwordStartTime,
          passwordEndTime: passwordEndTime,
          cardName: row.name + '-' + JSON.parse(row.content).pzname,
          roomName: resultArr.roomName
        };
        __WEBPACK_IMPORTED_MODULE_10__utils_equipment_js__["a" /* default */].LDAddFingerPrints(str.deviceNum, str.imei, str.userTelephone, str.userPassword, str.password, str.passwordStartTime, str.passwordEndTime, str.operateMode, str.order, str.length, str.fpTimeId, str.fingerprint, str.cardName, str.roomName, function (callback) {
          if (callback.success) {
            var datafid = {
              id: row.id,
              serial: callback.data.serialNumber
            };
            Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(datafid, __WEBPACK_IMPORTED_MODULE_9__api_all__["a" /* api */].updateCertificates).then(function (res) {
              if (res.success) {
                Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                  type: "success",
                  message: "下发成功"
                });
              } else {
                Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                  type: "error",
                  message: "下发失败"
                });
              }
            });
          } else {
            Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
              type: "error",
              message: callback.msg
            });
          }
        });
        return false;
      } else if (row.type == 2) {
        data = {
          imei: resultArr.imei,
          deviceNum: resultArr.deviceNum,
          userTelephone: userTelephone,
          cardId: row.cardId,
          userPassword: userPassword,
          password: JSON.parse(row.content).password,
          operateMode: 13,
          order: 6213,
          passwordStartTime: passwordStartTime,
          passwordEndTime: passwordEndTime,
          is: false,
          cardName: row.name + '-' + JSON.parse(row.content).pzname,
          roomName: resultArr.roomName
        };
      } else if (row.type == 3) {
        data = {
          imei: resultArr.imei,
          deviceNum: resultArr.deviceNum,
          userTelephone: userTelephone,
          cardId: row.cardId,
          userPassword: userPassword,
          password: JSON.parse(row.content).password,
          operateMode: 10,
          order: 6210,
          passwordStartTime: passwordStartTime,
          passwordEndTime: passwordEndTime,
          is: false,
          cardName: row.name + '-' + JSON.parse(row.content).pzname,
          roomName: resultArr.roomName
        };
      } else if (row.type == 4) {
        data = {
          imei: resultArr.imei,
          deviceNum: resultArr.deviceNum,
          userTelephone: userTelephone,
          cardId: row.cardId,
          userPassword: userPassword,
          password: JSON.parse(row.content).password,
          operateMode: 7,
          order: 6207,
          passwordStartTime: passwordStartTime,
          passwordEndTime: passwordEndTime,
          is: false,
          cardName: row.name + '-' + JSON.parse(row.content).pzname,
          roomName: resultArr.roomName
        };
      }
      __WEBPACK_IMPORTED_MODULE_10__utils_equipment_js__["a" /* default */].LDRfCardRegister(data.deviceNum, data.imei, data.userTelephone, data.userPassword, data.password, data.passwordStartTime, data.passwordEndTime, data.operateMode, data.order, data.cardName, data.roomName, false, function (callback) {
        if (callback.success) {
          var datafid = {
            id: row.id,
            serial: callback.data.serialNumber
          };
          Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(datafid, __WEBPACK_IMPORTED_MODULE_9__api_all__["a" /* api */].updateCertificates).then(function (res) {
            if (res.success) {
              Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                type: "success",
                message: "下发成功"
              });
            } else {
              Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                type: "error",
                message: "下发失败"
              });
            }
          });
        } else {
          Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
            type: "error",
            message: callback.msg
          });
        }
      });
    }
  }, {
    key: "getfiId1",
    value: function getfiId1(row, callback) {
      var _this = this;

      var data = {
        q: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_json_stringify___default()({
          serial: row.serial
        }),
        pageNum: 1,
        pageSize: 10
      };
      Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(data, __WEBPACK_IMPORTED_MODULE_9__api_all__["a" /* api */].getDeviceResult).then(function (res) {
        var datalist = _this.zlib_unzip(res.data);
        callback(datalist);
      });
    }
  }, {
    key: "putCarfid",
    value: function putCarfid(resultArr, row, endTime, startTime) {
      var data = {};
      var userTelephone = JSON.parse(row.content).userTelephone;
      var userPassword = JSON.parse(row.content).userPassword;
      var content = JSON.parse(row.content);
      var passwordEndTime = __WEBPACK_IMPORTED_MODULE_8_moment___default()(endTime).format("YYYYMMDDHHmmss");
      var passwordStartTime = __WEBPACK_IMPORTED_MODULE_8_moment___default()(startTime).format("YYYYMMDDHHmmss");
      if (row.type == 1) {
        this.getfiId1(row, function (data) {
          if (data.length > 0) {
            if (data.length > 0) {
              var fpid = "";
              fpid = data[0].face.toString(16).length != 2 ? "0" + data[0].face.toString(16) : data[0].face.toString(16);
              var str = {
                imei: resultArr.imei,
                deviceNum: resultArr.deviceNum,
                password: fpid,
                operateMode: 17,
                order: 6217,
                userPassword: userPassword,
                userTelephone: userTelephone,
                passwordStartTime: passwordEndTime,
                passwordEndTime: passwordStartTime,
                is: false,
                cardName: row.name + '-' + content.pzname,
                roomName: resultArr.roomName
              };
              content['passwordStartTime'] = passwordStartTime;
              content['passwordEndTime'] = passwordEndTime;
              content['password'] = fpid;
              content['cardName'] = str.cardName;
              content['roomName'] = str.roomName;
              Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(str, __WEBPACK_IMPORTED_MODULE_9__api_all__["a" /* api */].getDeviceOperateUserInfo).then(function (res1) {
                if (res1.success) {
                  content.passwordStartTime = str.passwordStartTime;
                  content.passwordEndTime = str.passwordEndTime;
                  var updatedata = {
                    id: row.id,
                    content: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_json_stringify___default()(content),
                    serial: res1.data.serialNumber,
                    status: 0,
                    startTime: startTime / 1000,
                    endTime: endTime / 1000
                  };
                  Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(updatedata, __WEBPACK_IMPORTED_MODULE_9__api_all__["a" /* api */].updateCertificates).then(function (res2) {
                    that.$message.success("修改成功");
                  });
                } else {
                  that.$message.success("修改失败");
                }
              });
            }
          }
        });
        return false;
      } else if (row.type == 2) {
        data = {
          imei: resultArr.imei,
          deviceNum: resultArr.deviceNum,
          userTelephone: userTelephone,
          cardId: row.cardId,
          userPassword: userPassword,
          password: JSON.parse(row.content).password,
          operateMode: 14,
          order: 6214,
          passwordStartTime: passwordStartTime,
          passwordEndTime: passwordEndTime,
          is: false,
          cardName: row.name + '-' + content.pzname,
          roomName: row.roomName
        };
      } else if (row.type == 3) {
        data = {
          imei: resultArr.imei,
          deviceNum: resultArr.deviceNum,
          userTelephone: userTelephone,
          cardId: row.cardId,
          userPassword: userPassword,
          password: JSON.parse(row.content).password,
          operateMode: 11,
          order: 6211,
          passwordStartTime: passwordStartTime,
          passwordEndTime: passwordEndTime,
          is: false,
          cardName: row.name + '-' + content.pzname,
          roomName: row.roomName
        };
      } else if (row.type == 4) {
        data = {
          imei: resultArr.imei,
          deviceNum: resultArr.deviceNum,
          userTelephone: userTelephone,
          cardId: row.cardId,
          userPassword: userPassword,
          password: JSON.parse(row.content).password,
          operateMode: 8,
          order: 6208,
          passwordStartTime: passwordStartTime,
          passwordEndTime: passwordEndTime,
          is: false,
          cardName: row.name + '-' + content.pzname,
          pzname: content.pzname,
          roomName: row.roomName
        };
      }
      __WEBPACK_IMPORTED_MODULE_10__utils_equipment_js__["a" /* default */].LDRfCardRegister(data.deviceNum, data.imei, data.userTelephone, data.userPassword, data.password, data.passwordStartTime, data.passwordEndTime, data.operateMode, data.order, data.cardName, data.roomName, false, function (callback) {
        if (callback.success) {
          content['passwordStartTime'] = data.passwordStartTime;
          content['passwordEndTime'] = data.passwordEndTime;
          content['cardName'] = data.cardName;
          content['roomName'] = data.roomName;
          var datafid = {
            id: row.id,
            content: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_json_stringify___default()(content), //operateMode:NFC-10、把人员添加到凭证-1
            status: 0,
            serial: callback.data.serialNumber,
            startTime: __WEBPACK_IMPORTED_MODULE_8_moment___default()(startTime).valueOf() / 1000,
            endTime: __WEBPACK_IMPORTED_MODULE_8_moment___default()(endTime).valueOf() / 1000
          };
          Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(datafid, __WEBPACK_IMPORTED_MODULE_9__api_all__["a" /* api */].updateCertificates).then(function (res) {
            if (res.success) {
              Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                type: "success",
                message: "下发成功"
              });
            } else {
              Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                type: "error",
                message: "下发失败"
              });
            }
          });
        } else {
          Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
            type: "error",
            message: callback.msg
          });
        }
      });
    }
    // 下发凭证

  }, {
    key: "putCarfidzg",
    value: function putCarfidzg(resultArr, row, startTime, endTime) {
      var _this2 = this;

      var data = {};
      var userTelephone = JSON.parse(row.content).userTelephone;
      var userPassword = JSON.parse(row.content).userPassword;
      var content = JSON.parse(row.content);
      var passwordEndTime = __WEBPACK_IMPORTED_MODULE_8_moment___default()(endTime).valueOf() / 1000;
      var passwordStartTime = __WEBPACK_IMPORTED_MODULE_8_moment___default()(startTime).valueOf() / 1000;
      if (row.type == 1) {
        this.getfiId1(row, function (data) {
          if (data.length > 0) {
            var fpid = "";
            fpid = data[0].face.toString(16).length != 2 ? "0" + data[0].face.toString(16) : data[0].face;
            var pwd = JSON.parse(row.content).userPassword;
            var cardName = row.name + '-' + content.pzname;
            __WEBPACK_IMPORTED_MODULE_10__utils_equipment_js__["a" /* default */].modifyFingerPrints(resultArr.deviceNum, resultArr.imei, pwd, 3, fpid, 0, passwordStartTime, passwordEndTime, cardName, resultArr.roomName, function (callback) {
              if (callback.success) {
                var str1 = JSON.parse(row.content);
                str1.fpTimeId = callback.data.serialNumber;
                str1.passwordStartTime = passwordStartTime;
                str1.passwordEndTime = passwordEndTime;
                var updatedata = {
                  id: row.id,
                  content: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_json_stringify___default()(str1),
                  serial: callback.data.serialNumber,
                  status: 0,
                  startTime: passwordStartTime,
                  endTime: passwordEndTime
                };
                Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(updatedata, __WEBPACK_IMPORTED_MODULE_9__api_all__["a" /* api */].updateCertificates).then(function (res2) {
                  Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                    type: "success",
                    message: "下发成功"
                  });
                });
                that.$message.success(callback.msg);
              } else {
                that.$message.error(callback.msg);
              }
            });
          } else {
            that.$message.error("修改失败");
          }
        });
      } else if (row.type == 2) {
        var idcard = '';
        if (content.password.length == 16) {
          idcard = content.password;
        } else {
          idcard = Object(__WEBPACK_IMPORTED_MODULE_15__index_js__["d" /* dec2hex */])(content.password);
        }
        var userid = JSON.parse(row.content).userPassword;
        if (idcard.length != 16) {
          Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
            type: "error",
            message: "卡格式错误，请重新录入"
          });
          return;
        }
        var cardName = row.name + '-' + content.pzname;
        __WEBPACK_IMPORTED_MODULE_10__utils_equipment_js__["a" /* default */].RfCardRegister(resultArr.deviceNum, resultArr.imei, userid, 3, 1, idcard.toUpperCase(), 36, passwordStartTime, passwordEndTime, 6211, cardName, resultArr.roomName, function (callback) {
          if (callback.success) {
            var str = JSON.parse(row.content);
            str['password'] = idcard.toUpperCase();
            var updatedata = {
              id: row.id,
              content: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_json_stringify___default()(str),
              serial: callback.data.serialNumber,
              startTime: passwordStartTime,
              endTime: passwordEndTime
            };
            Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(updatedata, _this2.$api.updateCertificates).then(function (res) {
              Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                type: "success",
                message: "下发成功"
              });
            });
            Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
              type: "success",
              message: callback.msg
            });
          } else {
            Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
              type: "error",
              message: callback.msg
            });
          }
        });
      } else if (row.type == 3) {
        var nfc = "";
        if (content.password.length == 8) {
          nfc = content.password;
        } else {
          nfc = Object(__WEBPACK_IMPORTED_MODULE_15__index_js__["d" /* dec2hex */])(content.password);
        }
        var userid = JSON.parse(row.content).userPassword;
        if (nfc.length != 8) {
          Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
            type: "error",
            message: "卡格式错误，请重新录入"
          });
          return;
        }
        var cardName = row.name + '-' + content.pzname;
        __WEBPACK_IMPORTED_MODULE_10__utils_equipment_js__["a" /* default */].RfCardRegister(resultArr.deviceNum, resultArr.imei, userid, 3, 1, nfc.toUpperCase(), 50, passwordStartTime, passwordEndTime, 6211, cardName, resultArr.roomName, function (callback) {
          if (callback.success) {
            var str = JSON.parse(row.content);
            str['password'] = nfc.toUpperCase();
            str['pzname'] = JSON.parse(row.content).pzname;
            var updatedata = {
              id: row.id,
              content: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_json_stringify___default()(str),
              serial: callback.data.serialNumber,
              startTime: passwordStartTime,
              endTime: passwordEndTime
            };
            Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(updatedata, __WEBPACK_IMPORTED_MODULE_9__api_all__["a" /* api */].updateCertificates).then(function (res) {
              Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                type: "success",
                message: "下发成功"
              });
            });
            Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
              type: "success",
              message: callback.msg
            });
          } else {
            Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
              type: "error",
              message: callback.msg
            });
          }
        });
      } else if (row.type == 4) {
        var pwd = content.password;
        var userid = JSON.parse(row.content).userPassword;
        var cardName = row.name + '-' + content.pzname;
        __WEBPACK_IMPORTED_MODULE_10__utils_equipment_js__["a" /* default */].addForeverPassword(resultArr.deviceNum, resultArr.imei, userid, 3, pwd, 255, passwordStartTime, passwordEndTime, 6208, cardName, resultArr.roomName, function (callback) {
          if (callback.success) {
            var data1 = JSON.parse(row.content);
            data1['password'] = content.password;
            var updatedata = {
              id: row.id,
              content: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_json_stringify___default()(data1),
              serial: callback.data.serialNumber,
              startTime: passwordStartTime,
              endTime: passwordEndTime
            };
            Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(updatedata, __WEBPACK_IMPORTED_MODULE_9__api_all__["a" /* api */].updateCertificates).then(function (res) {
              Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                type: "success",
                message: "下发成功"
              });
            });
            Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
              type: "success",
              message: callback.msg
            });
          } else {
            Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
              type: "error",
              message: callback.msg
            });
          }
        });
      }
    }
  }, {
    key: "modifyPutCarfid",
    value: function modifyPutCarfid(resultArr, row, startTime, endTime) {
      var data = {};
      var userTelephone = JSON.parse(row.content).userTelephone;
      var userPassword = JSON.parse(row.content).userPassword;
      var content = JSON.parse(row.content);
      var passwordEndTime = __WEBPACK_IMPORTED_MODULE_8_moment___default()(endTime).format("YYYYMMDDHHmmss");
      var passwordStartTime = __WEBPACK_IMPORTED_MODULE_8_moment___default()(startTime).format("YYYYMMDDHHmmss");
      if (row.type == 1) {
        this.getfiId1(row, function (data) {
          if (data.length > 0) {
            if (data.length > 0) {
              var fpid = "";
              fpid = data[0].face.toString(16).length != 2 ? "0" + data[0].face.toString(16) : data[0].face.toString(16);
              var str = {
                imei: resultArr.imei,
                deviceNum: resultArr.deviceNum,
                password: fpid,
                operateMode: 17,
                order: 6217,
                userPassword: userPassword,
                userTelephone: userTelephone,
                passwordStartTime: passwordStartTime,
                passwordEndTime: passwordEndTime,
                is: false,
                cardName: row.name + '-' + (content.pzname ? content.pzname : ''),
                roomName: resultArr.roomName
              };
              content['passwordStartTime'] = passwordStartTime;
              content['passwordEndTime'] = passwordEndTime;
              content['password'] = fpid;
              content['cardName'] = str.cardName;
              content['roomName'] = str.roomName;
              Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(str, __WEBPACK_IMPORTED_MODULE_9__api_all__["a" /* api */].getDeviceOperateUserInfo).then(function (res1) {
                if (res1.success) {
                  content.passwordStartTime = str.passwordStartTime;
                  content.passwordEndTime = str.passwordEndTime;
                  var updatedata = {
                    cardId: resultArr.cardId,
                    deviceNum: resultArr.deviceNum,
                    type: row.type,
                    imei: resultArr.imei,
                    content: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_json_stringify___default()(content),
                    serial: res1.data.serialNumber,
                    startTime: startTime / 1000,
                    endTime: endTime / 1000
                  };
                  Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(updatedata, __WEBPACK_IMPORTED_MODULE_9__api_all__["a" /* api */].addCertificates).then(function (res2) {
                    Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                      type: "success",
                      message: "修改成功"
                    });
                  });
                  var updatestatus = {
                    id: row.id,
                    status: 703
                  };
                  Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(updatestatus, __WEBPACK_IMPORTED_MODULE_9__api_all__["a" /* api */].updateCertificates).then(function (res3) {
                    Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                      type: "success",
                      message: "更新成功"
                    });
                  });
                } else {
                  Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                    type: "error",
                    message: "修改失败"
                  });
                }
              });
            }
          }
        });
        return false;
      } else if (row.type == 2) {
        data = {
          imei: resultArr.imei,
          deviceNum: resultArr.deviceNum,
          userTelephone: userTelephone,
          cardId: row.cardId,
          userPassword: userPassword,
          password: JSON.parse(row.content).password,
          operateMode: 14,
          order: 6214,
          passwordStartTime: passwordStartTime,
          passwordEndTime: passwordEndTime,
          is: false,
          cardName: row.name + '-' + (content.pzname ? content.pzname : ''),
          roomName: row.roomName
        };
      } else if (row.type == 3) {
        data = {
          imei: resultArr.imei,
          deviceNum: resultArr.deviceNum,
          userTelephone: userTelephone,
          cardId: row.cardId,
          userPassword: userPassword,
          password: JSON.parse(row.content).password,
          operateMode: 11,
          order: 6211,
          passwordStartTime: passwordStartTime,
          passwordEndTime: passwordEndTime,
          is: false,
          cardName: row.name + '-' + (content.pzname ? content.pzname : ''),
          roomName: row.roomName
        };
      } else if (row.type == 4) {
        data = {
          imei: resultArr.imei,
          deviceNum: resultArr.deviceNum,
          userTelephone: userTelephone,
          cardId: row.cardId,
          userPassword: userPassword,
          password: JSON.parse(row.content).password,
          operateMode: 8,
          order: 6208,
          passwordStartTime: passwordStartTime,
          passwordEndTime: passwordEndTime,
          is: false,
          cardName: row.name + '-' + (content.pzname ? content.pzname : ''),
          pzname: content.pzname,
          roomName: row.roomName
        };
      }
      __WEBPACK_IMPORTED_MODULE_10__utils_equipment_js__["a" /* default */].LDRfCardRegister(data.deviceNum, data.imei, data.userTelephone, data.userPassword, data.password, data.passwordStartTime, data.passwordEndTime, data.operateMode, data.order, data.cardName, data.roomName, false, function (callback) {
        if (callback.success) {
          content['passwordStartTime'] = data.passwordStartTime;
          content['passwordEndTime'] = data.passwordEndTime;
          content['cardName'] = data.cardName;
          content['roomName'] = data.roomName;
          var datafid = {
            cardId: resultArr.cardId,
            deviceNum: resultArr.deviceNum,
            type: row.type,
            imei: resultArr.imei,
            content: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_json_stringify___default()(content), //operateMode:NFC-10、把人员添加到凭证-1
            serial: callback.data.serialNumber,
            startTime: __WEBPACK_IMPORTED_MODULE_8_moment___default()(startTime).valueOf() / 1000,
            endTime: __WEBPACK_IMPORTED_MODULE_8_moment___default()(endTime).valueOf() / 1000
          };
          Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(datafid, __WEBPACK_IMPORTED_MODULE_9__api_all__["a" /* api */].addCertificates).then(function (res) {
            if (res.success) {
              Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                type: "success",
                message: "发送成功"
              });
            } else {
              Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                type: "error",
                message: "发送失败"
              });
            }
          });
          var updatestatus = {
            id: row.id,
            status: 703
          };
          Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(updatestatus, __WEBPACK_IMPORTED_MODULE_9__api_all__["a" /* api */].updateCertificates).then(function (res3) {
            Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
              type: "success",
              message: "更新成功"
            });
          });
        } else {
          Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
            type: "error",
            message: callback.msg
          });
        }
      });
    }
    // 下发凭证

  }, {
    key: "modifyPutCarfidzg",
    value: function modifyPutCarfidzg(resultArr, row, startTime, endTime) {
      var _this3 = this;

      var data = {};
      var userTelephone = JSON.parse(row.content).userTelephone;
      var userPassword = JSON.parse(row.content).userPassword;
      var content = JSON.parse(row.content);
      var passwordEndTime = __WEBPACK_IMPORTED_MODULE_8_moment___default()(endTime).valueOf() / 1000;
      var passwordStartTime = __WEBPACK_IMPORTED_MODULE_8_moment___default()(startTime).valueOf() / 1000;
      if (row.type == 1) {
        this.getfiId1(row, function (data) {
          if (data.length > 0) {
            var fpid = "";
            fpid = data[0].face.toString(16).length != 2 ? "0" + data[0].face : data[0].face;
            var pwd = JSON.parse(row.content).userPassword;
            var cardName = row.name + '-' + content.pzname;
            __WEBPACK_IMPORTED_MODULE_10__utils_equipment_js__["a" /* default */].modifyFingerPrints(resultArr.deviceNum, resultArr.imei, pwd, 3, fpid, 0, passwordStartTime, passwordEndTime, cardName, resultArr.roomName, function (callback) {
              if (callback.success) {
                var str1 = JSON.parse(row.content);
                str1.fpTimeId = callback.data.serialNumber;
                str1.passwordStartTime = passwordStartTime;
                str1.passwordEndTime = passwordEndTime;
                str1['order'] = 6217;
                str1['operateMode'] = 17;
                var updatedata = {
                  cardId: resultArr.cardId,
                  deviceNum: resultArr.deviceNum,
                  type: row.type,
                  imei: resultArr.imei,
                  content: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_json_stringify___default()(str1),
                  serial: callback.data.serialNumber,
                  startTime: passwordStartTime,
                  endTime: passwordEndTime
                };
                Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(updatedata, __WEBPACK_IMPORTED_MODULE_9__api_all__["a" /* api */].addCertificates).then(function (res2) {
                  Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                    type: "success",
                    message: "下发成功"
                  });
                });
                var updatestatus = {
                  id: row.id,
                  status: 703
                };
                Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(updatestatus, __WEBPACK_IMPORTED_MODULE_9__api_all__["a" /* api */].updateCertificates).then(function (res3) {
                  Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                    type: "success",
                    message: "更新成功"
                  });
                });
                Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                  type: "success",
                  message: callback.msg
                });
              } else {
                Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                  type: "error",
                  message: callback.msg
                });
              }
            });
          } else {
            Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
              type: "error",
              message: "修改失败"
            });
          }
        });
      } else if (row.type == 2) {
        var idcard = '';
        if (content.password.length == 16) {
          idcard = content.password;
        } else {
          idcard = Object(__WEBPACK_IMPORTED_MODULE_15__index_js__["d" /* dec2hex */])(content.password);
        }
        var userid = JSON.parse(row.content).userPassword;
        if (idcard.length != 16) {
          Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
            type: "error",
            message: "卡格式错误，请重新录入"
          });
          return;
        }
        var cardName = row.name + '-' + content.pzname;
        __WEBPACK_IMPORTED_MODULE_10__utils_equipment_js__["a" /* default */].RfCardRegister(resultArr.deviceNum, resultArr.imei, userid, 3, 1, idcard.toUpperCase(), 36, passwordStartTime, passwordEndTime, 6214, cardName, resultArr.roomName, function (callback) {
          if (callback.success) {
            var str = JSON.parse(row.content);
            str['password'] = idcard.toUpperCase();
            str['order'] = 6214;
            str['operateMode'] = 14;
            var updatedata = {
              cardId: resultArr.cardId,
              deviceNum: resultArr.deviceNum,
              type: row.type,
              imei: resultArr.imei,
              content: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_json_stringify___default()(str),
              serial: callback.data.serialNumber,
              startTime: passwordStartTime,
              endTime: passwordEndTime
            };
            Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(updatedata, _this3.$api.addCertificates).then(function (res) {
              Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                type: "success",
                message: "下发成功"
              });
            });
            var updatestatus = {
              id: row.id,
              status: 703
            };
            Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(updatestatus, __WEBPACK_IMPORTED_MODULE_9__api_all__["a" /* api */].updateCertificates).then(function (res3) {
              Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                type: "success",
                message: "更新成功"
              });
            });
            Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
              type: "success",
              message: callback.msg
            });
          } else {
            Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
              type: "error",
              message: callback.msg
            });
          }
        });
      } else if (row.type == 3) {
        var nfc = "";
        if (content.password.length == 8) {
          nfc = content.password + '00000000';
        } else if (content.password.length == 16) {
          nfc = content.password;
        } else {
          Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
            type: "error",
            message: "卡格式错误，请重新录入"
          });
          return;
        }
        var userid = JSON.parse(row.content).userPassword;
        // if (nfc.length != 8) {
        //   message({
        //     type: "error",
        //     message: "卡格式错误，请重新录入"
        //   })
        //   return
        // }
        var cardName = row.name + '-' + content.pzname;
        __WEBPACK_IMPORTED_MODULE_10__utils_equipment_js__["a" /* default */].RfCardRegister(resultArr.deviceNum, resultArr.imei, userid, 3, 1, nfc.toUpperCase(), 50, passwordStartTime, passwordEndTime, 6211, cardName, resultArr.roomName, function (callback) {
          if (callback.success) {
            var str = JSON.parse(row.content);
            str['password'] = nfc.toUpperCase();
            str['pzname'] = JSON.parse(row.content).pzname;
            str['order'] = 6211;
            str['operateMode'] = 11;
            var updatedata = {
              cardId: resultArr.cardId,
              deviceNum: resultArr.deviceNum,
              type: row.type,
              imei: resultArr.imei,
              content: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_json_stringify___default()(str),
              serial: callback.data.serialNumber,
              startTime: passwordStartTime,
              endTime: passwordEndTime
            };
            Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(updatedata, __WEBPACK_IMPORTED_MODULE_9__api_all__["a" /* api */].addCertificates).then(function (res) {
              Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                type: "success",
                message: "下发成功"
              });
            });

            var updatestatus = {
              id: row.id,
              status: 703
            };
            Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(updatestatus, __WEBPACK_IMPORTED_MODULE_9__api_all__["a" /* api */].updateCertificates).then(function (res3) {
              Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                type: "success",
                message: "更新成功"
              });
            });
            Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
              type: "success",
              message: callback.msg
            });
          } else {
            Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
              type: "error",
              message: callback.msg
            });
          }
        });
      } else if (row.type == 4) {
        var pwd = content.password;
        var userid = JSON.parse(row.content).userPassword;
        var cardName = row.name + '-' + content.pzname;
        __WEBPACK_IMPORTED_MODULE_10__utils_equipment_js__["a" /* default */].addForeverPassword(resultArr.deviceNum, resultArr.imei, userid, 3, pwd, 255, passwordStartTime, passwordEndTime, 6208, cardName, resultArr.roomName, function (callback) {
          if (callback.success) {
            var str = JSON.parse(row.content);
            str['password'] = content.password;
            str['order'] = 6208;
            str['operateMode'] = 8;
            var updatedata = {
              cardId: resultArr.cardId,
              deviceNum: resultArr.deviceNum,
              type: row.type,
              imei: resultArr.imei,
              content: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_json_stringify___default()(str),
              serial: callback.data.serialNumber,
              startTime: passwordStartTime,
              endTime: passwordEndTime
            };
            Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(updatedata, __WEBPACK_IMPORTED_MODULE_9__api_all__["a" /* api */].addCertificates).then(function (res) {
              Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                type: "success",
                message: "下发成功"
              });
            });
            var updatestatus = {
              id: row.id,
              status: 703
            };
            Object(__WEBPACK_IMPORTED_MODULE_7__api__["g" /* httpPost */])(updatestatus, __WEBPACK_IMPORTED_MODULE_9__api_all__["a" /* api */].updateCertificates).then(function (res3) {
              Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
                type: "success",
                message: "更新成功"
              });
            });
            Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
              type: "success",
              message: callback.msg
            });
          } else {
            Object(__WEBPACK_IMPORTED_MODULE_11__resetMessage__["a" /* message */])({
              type: "error",
              message: callback.msg
            });
          }
        });
      }
    }
  }, {
    key: "timeTotimeimp",
    value: function timeTotimeimp(obj) {
      var year = obj.substr(0, 4);
      var month = obj.substr(4, 2);
      var day = obj.substr(6, 2);
      var hours = obj.substr(8, 2);
      var min = obj.substr(8, 2);
      var miao = obj.substr(10, 2);
      var hm = obj.substr(12, 2);
      var str = year + "-" + month + "-" + day + " " + hours + ":" + min + ":" + miao;
      var time = new Date(str);
      var time1 = time.getTime();
      return time1 / 1000;
    }
    // 格式化时间

  }, {
    key: "formatTime",
    value: function formatTime(time, key) {
      var time1 = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_json_stringify___default()(time);
      var text = '';
      if (time1.length == 14) {
        text = __WEBPACK_IMPORTED_MODULE_8_moment___default()(this.timeTotimeimp(time1) * 1000).format('YYYY年MM月DD日 HH:mm:ss');
      } else if (time1.length == 13) {
        text = __WEBPACK_IMPORTED_MODULE_8_moment___default()(time).format('YYYY年MM月DD日 HH:mm:ss');
      } else if (time1.length == 10) {
        text = __WEBPACK_IMPORTED_MODULE_8_moment___default()(time * 1000).format('YYYY年MM月DD日 HH:mm:ss');
      }
      return text;
    }
    // 去重

  }, {
    key: "uniqueArray",
    value: function uniqueArray(array, key) {
      var result = [array[0]];
      for (var i = 1; i < array.length; i++) {
        var item = array[i];
        var repeat = false;
        for (var j = 0; j < result.length; j++) {
          if (item[key] == result[j][key]) {
            repeat = true;
            break;
          }
        }
        if (!repeat) {
          result.push(item);
        }
      }
      return result;
    }
    // 生成树形数据结构

  }, {
    key: "ztreeToElementTree",
    value: function ztreeToElementTree(data, config) {
      var id = 'id'; // 定义ztree数据存储id（自身的id）的key值，可以自定义但一般都是id、pid这种
      var pid = 'pid'; // 定义ztree数据存储pid（父id）的key值
      var children = 'children'; // 定义生成的element tree存储子节点的key，可以在element中规定defaultProps: {children: 'children'}
      var idMap = {}; // 将原始数据转化为以id为key的map
      var elementTree = []; // 输出的element tree数据
      data.forEach(function (item) {
        item['value'] = item.id;
        item['label'] = item.name;
        idMap[item.id] = item;
      });
      data.forEach(function (item) {
        // debugger
        if (idMap[item.pid] != idMap[item.id] && idMap[item.pid]) {
          // 该item项有爸爸，放到对应的父节点下
          !idMap[item.pid].hasOwnProperty(children) && (idMap[item.pid][children] = []);
          idMap[item.pid][children].push(item);
        } else {
          // 根节点
          elementTree.push(item);
        }
      });
      return elementTree;
    }
    // 根据选择的父级id，获取所有子级id

  }, {
    key: "getChild",
    value: function getChild(nodes, item, arr) {
      var _iteratorNormalCompletion2 = true;
      var _didIteratorError2 = false;
      var _iteratorError2 = undefined;

      try {
        for (var _iterator2 = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_core_js_get_iterator___default()(nodes), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
          var el = _step2.value;

          if (el.id === item) {
            arr.push(el.id);
            if (el.children) {
              this.childNodesDeep(el.children, arr);
            }
          } else if (el.children) {
            this.getChild(el.children, item, arr);
          }
        }
      } catch (err) {
        _didIteratorError2 = true;
        _iteratorError2 = err;
      } finally {
        try {
          if (!_iteratorNormalCompletion2 && _iterator2.return) {
            _iterator2.return();
          }
        } finally {
          if (_didIteratorError2) {
            throw _iteratorError2;
          }
        }
      }

      return arr;
    }
  }, {
    key: "childNodesDeep",
    value: function childNodesDeep(nodes, arr) {
      var _this4 = this;

      if (nodes) nodes.forEach(function (ele) {
        arr.push(ele.id);
        if (ele.children) {
          _this4.childNodesDeep(ele.children, arr);
        }
      });
    }
    // 过滤两个数组对象相同id的数据

  }, {
    key: "filterObj",
    value: function filterObj(arr1, arr2) {
      var arr3 = arr1.filter(function (obj) {
        return !arr2.some(function (obj1) {
          return obj1 == obj.id;
        });
      });
      return arr3;
    }
    // 过滤两个数组对象相同id的数据

  }, {
    key: "filterObj1",
    value: function filterObj1(arr1, arr2) {
      var arr3 = arr1.filter(function (obj) {
        return arr2.some(function (obj1) {
          return obj1 == obj.id;
        });
      });
      return arr3;
    }
  }, {
    key: "loopDepName",
    value: function loopDepName(treeData, id, joinStr, result) {
      var res = [];
      var fn = function fn(source) {
        source.forEach(function (el) {
          res.push(el);
          el.children && el.children.length > 0 ? fn(el.children) : "";
        });
      };
    }
  }, {
    key: "statusCode",
    value: function statusCode(code) {
      var str = '';
      switch (code) {
        case 0:
          str = "下发中"; //已发送
          break;
        case 1:
          str = "下发成功";
          break;
        case 2:
          str = "下发中"; //"未下发";
          break;
        case 3:
          str = "下发失败";
          break;
        case 249:
          str = "未发现用户";
          break;
        case 700:
          str = "下发中"; //等待发送
          break;
        case 701:
          str = "下发中";
          break;
        case 702:
          str = "下发失败"; //发送失败
          break;
        case 703:
          str = "已作废-执行成功";
          break;
        case 704:
          str = "下发超时";
          break;
        //LD返回错误码
        case 101224:
          str = "系统已锁定";
          break;
        case 101225:
          str = "存储读写错误";
          break;
        case 101226:
          str = "管理员手机号比对失败";
          break;
        case 101227:
          str = "存储空间已满";
          break;
        case 101228:
          str = "本地未检测到该凭证";
          break;
        case 101229:
          str = "参数错误";
          break;
        case 101230:
          str = "绑定失败";
          break;
        case 101240:
          str = "设备未绑定";
          break;
        case 101241:
          str = "设备ID不匹配";
          break;
        case 101242:
          str = "未添加蓝牙密码";
          break;
        case 101243:
          str = "蓝牙密码鉴权失败";
          break;
        case 101244:
          str = "门已反锁";
          break;
        case 101245:
          str = "门已开启";
          break;
        case 101246:
          str = "密码长度异常";
          break;
        case 101247:
          str = "当前用户容量已满";
          break;
        case 101248:
          str = "密码已存在(卡片已存在)";
          break;
        case 101249:
          str = "用户不存在";
          break;
        case 101250:
          str = "用户ID匹配失败";
          break;
        case 101251:
          str = "数据错误";
          break;
        case 101252:
          str = "初始密码比对失败";
          break;
        case 101253:
          str = "凭证ID无效";
          break;
        //ZG返回错误码
        case 201002:
          str = "包格式错误";
          break;
        case 201003:
          str = "密码错误";
          break;
        case 201004:
          str = "网络中断";
          break;
        case 201005:
          str = "用户未登记";
          break;
        case 201006:
          str = "参数错误";
          break;
        case 201007:
          str = "需要鉴权";
          break;
        case 201008:
          str = "无权限";
          break;
        case 201009:
          str = "应答超时";
          break;
        case 201010:
          str = "权限校验错误";
          break;
        case 201011:
          str = "钥匙不存在";
          break;
        case 201012:
          str = "钥匙过期";
          break;
        case 201013:
          str = "钥匙数量已到上限";
          break;
        case 201014:
          str = "钥匙无效";
          break;
        case 201015:
          str = "钥匙已存在";
          break;
        case 201016:
          str = "用户已存在";
          break;
        case 201017:
          str = "密码失效";
          break;
        case 201018:
          str = "无效指令";
          break;
        case 201019:
          str = "门锁时间异常";
          break;
        case 201020:
          str = "门锁NB芯片故障";
          break;
        case 201021:
          str = "门锁无NB芯片";
          break;
        case 201022:
          str = "升级程序校验通过";
          break;
        case 201023:
          str = "升级程序项目不匹配";
          break;
        case 201024:
          str = "升级程序版本太低";
          break;
        case 201025:
          str = "升级程序长度超长";
          break;
        case 201026:
          str = "升级程序启动失败";
          break;
        case 201033:
          str = "升级程序进行中";
          break;
        case 201034:
          str = "升级数据写入错误";
          break;
        case 201035:
          str = "升级数据校验和错误";
          break;
        case 201049:
          str = "到达数目定义上限";
          break;
        case 201050:
          str = "密码已经存在";
          break;
        case 201051:
          str = "禁止删除超管";
          break;
        case 201052:
          str = "门禁卡故障";
          break;
        case 201053:
          str = "远程指纹录入进行中";
          break;
        case 201054:
          str = "远程指纹上次录入未完成";
          break;
        case 201055:
          str = "远程指纹录入后,重复添加该用户";
          break;
        case 201254:
          str = "设备没有被发现";
          break;
        case 201255:
          str = "异常，未知错误";
          break;
        default:
          str = "异常";
          break;
      }
      return str;
    }
  }]);

  return utils;
}();

/* harmony default export */ __webpack_exports__["a"] = (utils);
/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__("EuP9").Buffer))

/***/ }),

/***/ "oKBY":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "pOKD":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "phTY":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "rF/k":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/toConsumableArray.js
var toConsumableArray = __webpack_require__("Gu7T");
var toConsumableArray_default = /*#__PURE__*/__webpack_require__.n(toConsumableArray);

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/slicedToArray.js
var slicedToArray = __webpack_require__("d7EF");
var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);

// EXTERNAL MODULE: ./node_modules/babel-runtime/regenerator/index.js
var regenerator = __webpack_require__("Xxa5");
var regenerator_default = /*#__PURE__*/__webpack_require__.n(regenerator);

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/asyncToGenerator.js
var asyncToGenerator = __webpack_require__("exGp");
var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/util/index.js
var lib_util = __webpack_require__("3e7c");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/mixin/autoResize.js
var autoResize = __webpack_require__("kN6d");

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/flylineChart/src/main.vue




//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//









/* harmony default export */ var main = ({
  name: 'DvFlylineChart',
  mixins: [autoResize["a" /* default */]],
  props: {
    config: {
      type: Object,
      default: function _default() {
        return {};
      }
    },
    dev: {
      type: Boolean,
      default: false
    }
  },
  data: function data() {
    var id = Object(lib_util["e" /* uuid */])();
    return {
      ref: 'dv-flyline-chart',
      unique: Math.random(),
      maskId: 'flyline-mask-id-' + id,
      maskCircleId: 'mask-circle-id-' + id,
      gradientId: 'gradient-id-' + id,
      gradient2Id: 'gradient2-id-' + id,

      defaultConfig: {
        /**
         * @description Flyline chart center point
         * @type {Array<Number>}
         * @default centerPoint = [0, 0]
         */
        centerPoint: [0, 0],
        /**
         * @description Flyline start points
         * @type {Array<Array<Number>>}
         * @default points = []
         * @example points = [[10, 10], [100, 100]]
         */
        points: [],
        /**
         * @description Flyline width
         * @type {Number}
         * @default lineWidth = 1
         */
        lineWidth: 1,
        /**
         * @description Orbit color
         * @type {String}
         * @default orbitColor = 'rgba(103, 224, 227, .2)'
         */
        orbitColor: 'rgba(103, 224, 227, .2)',
        /**
         * @description Flyline color
         * @type {String}
         * @default orbitColor = '#ffde93'
         */
        flylineColor: '#ffde93',
        /**
         * @description K value
         * @type {Number}
         * @default k = -0.5
         * @example k = -1 ~ 1
         */
        k: -0.5,
        /**
         * @description Flyline curvature
         * @type {Number}
         * @default curvature = 5
         */
        curvature: 5,
        /**
         * @description Flyline radius
         * @type {Number}
         * @default flylineRadius = 100
         */
        flylineRadius: 100,
        /**
         * @description Flyline animation duration
         * @type {Array<Number>}
         * @default duration = [20, 30]
         */
        duration: [20, 30],
        /**
         * @description Relative points position
         * @type {Boolean}
         * @default relative = true
         */
        relative: true,
        /**
         * @description Back ground image url
         * @type {String}
         * @default bgImgUrl = ''
         * @example bgImgUrl = './img/bg.jpg'
         */
        bgImgUrl: '',
        /**
         * @description Text configuration
         * @type {Object}
         */
        text: {
          /**
           * @description Text offset
           * @type {Array<Number>}
           * @default offset = [0, 15]
           */
          offset: [0, 15],
          /**
           * @description Text color
           * @type {String}
           * @default color = '#ffdb5c'
           */
          color: '#ffdb5c',
          /**
           * @description Text font size
           * @type {Number}
           * @default fontSize = 12
           */
          fontSize: 12
        },
        /**
         * @description Halo configuration
         * @type {Object}
         */
        halo: {
          /**
           * @description Weather to show halo
           * @type {Boolean}
           * @default show = true
           * @example show = true | false
           */
          show: true,
          /**
           * @description Halo animation duration (10 = 1s)
           * @type {Number}
           * @default duration = 30
           */
          duration: 30,
          /**
           * @description Halo color
           * @type {String}
           * @default color = '#fb7293'
           */
          color: '#fb7293',
          /**
           * @description Halo max radius
           * @type {Number}
           * @default radius = 120
           */
          radius: 120
        },
        /**
         * @description Center point img configuration
         * @type {Object}
         */
        centerPointImg: {
          /**
           * @description Center point img width
           * @type {Number}
           * @default width = 40
           */
          width: 40,
          /**
           * @description Center point img height
           * @type {Number}
           * @default height = 40
           */
          height: 40,
          /**
           * @description Center point img url
           * @type {String}
           * @default url = ''
           */
          url: ''
        },
        /**
         * @description Points img configuration
         * @type {Object}
         * @default radius = 120
         */
        pointsImg: {
          /**
           * @description Points img width
           * @type {Number}
           * @default width = 15
           */
          width: 15,
          /**
           * @description Points img height
           * @type {Number}
           * @default height = 15
           */
          height: 15,
          /**
           * @description Points img url
           * @type {String}
           * @default url = ''
           */
          url: ''
        }
      },

      mergedConfig: null,

      paths: [],
      lengths: [],
      times: [],
      texts: []
    };
  },

  watch: {
    config: function config() {
      var calcData = this.calcData;


      calcData();
    }
  },
  methods: {
    afterAutoResizeMixinInit: function afterAutoResizeMixinInit() {
      var calcData = this.calcData;


      calcData();
    },
    onResize: function onResize() {
      var calcData = this.calcData;


      calcData();
    },
    calcData: function calcData() {
      var _this = this;

      return asyncToGenerator_default()( /*#__PURE__*/regenerator_default.a.mark(function _callee() {
        var mergeConfig, createFlylinePaths, calcLineLengths, calcTimes, calcTexts;
        return regenerator_default.a.wrap(function _callee$(_context) {
          while (1) {
            switch (_context.prev = _context.next) {
              case 0:
                mergeConfig = _this.mergeConfig, createFlylinePaths = _this.createFlylinePaths, calcLineLengths = _this.calcLineLengths;


                mergeConfig();

                createFlylinePaths();

                _context.next = 5;
                return calcLineLengths();

              case 5:
                calcTimes = _this.calcTimes, calcTexts = _this.calcTexts;


                calcTimes();

                calcTexts();

              case 8:
              case 'end':
                return _context.stop();
            }
          }
        }, _callee, _this);
      }))();
    },
    mergeConfig: function mergeConfig() {
      var config = this.config,
          defaultConfig = this.defaultConfig;


      var mergedConfig = Object(util["deepMerge"])(Object(plugin_util["deepClone"])(defaultConfig, true), config || {});

      var points = mergedConfig.points;


      mergedConfig.points = points.map(function (item) {
        if (item instanceof Array) {
          return { position: item, text: '' };
        }

        return item;
      });

      this.mergedConfig = mergedConfig;
    },
    createFlylinePaths: function createFlylinePaths() {
      var getPath = this.getPath,
          mergedConfig = this.mergedConfig,
          width = this.width,
          height = this.height;
      var centerPoint = mergedConfig.centerPoint,
          points = mergedConfig.points,
          relative = mergedConfig.relative;


      points = points.map(function (_ref) {
        var position = _ref.position;
        return position;
      });

      if (relative) {
        centerPoint = [width * centerPoint[0], height * centerPoint[1]];
        points = points.map(function (_ref2) {
          var _ref3 = slicedToArray_default()(_ref2, 2),
              x = _ref3[0],
              y = _ref3[1];

          return [width * x, height * y];
        });
      }

      this.paths = points.map(function (point) {
        return getPath(centerPoint, point);
      });
    },
    getPath: function getPath(center, point) {
      var getControlPoint = this.getControlPoint;


      var controlPoint = getControlPoint(center, point);

      return [point, controlPoint, center];
    },
    getControlPoint: function getControlPoint(_ref4, _ref5) {
      var _ref7 = slicedToArray_default()(_ref4, 2),
          sx = _ref7[0],
          sy = _ref7[1];

      var _ref6 = slicedToArray_default()(_ref5, 2),
          ex = _ref6[0],
          ey = _ref6[1];

      var getKLinePointByx = this.getKLinePointByx,
          mergedConfig = this.mergedConfig;
      var curvature = mergedConfig.curvature,
          k = mergedConfig.k;
      var mx = (sx + ex) / 2,
          my = (sy + ey) / 2;


      var distance = Object(lib_util["b" /* getPointDistance */])([sx, sy], [ex, ey]);

      var targetLength = distance / curvature;
      var disDived = targetLength / 2;

      var dx = mx,
          dy = my;


      do {
        dx += disDived;
        dy = getKLinePointByx(k, [mx, my], dx)[1];
      } while (Object(lib_util["b" /* getPointDistance */])([mx, my], [dx, dy]) < targetLength);

      return [dx, dy];
    },
    getKLinePointByx: function getKLinePointByx(k, _ref8, x) {
      var _ref9 = slicedToArray_default()(_ref8, 2),
          lx = _ref9[0],
          ly = _ref9[1];

      var y = ly - k * lx + k * x;

      return [x, y];
    },
    calcLineLengths: function calcLineLengths() {
      var _this2 = this;

      return asyncToGenerator_default()( /*#__PURE__*/regenerator_default.a.mark(function _callee2() {
        var $nextTick, paths, $refs;
        return regenerator_default.a.wrap(function _callee2$(_context2) {
          while (1) {
            switch (_context2.prev = _context2.next) {
              case 0:
                $nextTick = _this2.$nextTick, paths = _this2.paths, $refs = _this2.$refs;
                _context2.next = 3;
                return $nextTick();

              case 3:

                _this2.lengths = paths.map(function (foo, i) {
                  return $refs['path' + i][0].getTotalLength();
                });

              case 4:
              case 'end':
                return _context2.stop();
            }
          }
        }, _callee2, _this2);
      }))();
    },
    calcTimes: function calcTimes() {
      var _mergedConfig = this.mergedConfig,
          duration = _mergedConfig.duration,
          points = _mergedConfig.points;


      this.times = points.map(function (foo) {
        return lib_util["d" /* randomExtend */].apply(undefined, toConsumableArray_default()(duration)) / 10;
      });
    },
    calcTexts: function calcTexts() {
      var points = this.mergedConfig.points;


      this.texts = points.map(function (_ref10) {
        var text = _ref10.text;
        return text;
      });
    },
    consoleClickPos: function consoleClickPos(_ref11) {
      var offsetX = _ref11.offsetX,
          offsetY = _ref11.offsetY;
      var width = this.width,
          height = this.height,
          dev = this.dev;


      if (!dev) return;

      var relativeX = (offsetX / width).toFixed(2);
      var relativeY = (offsetY / height).toFixed(2);

      console.warn('dv-flyline-chart DEV: \n Click Position is [' + offsetX + ', ' + offsetY + '] \n Relative Position is [' + relativeX + ', ' + relativeY + ']');
    }
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-54f2d20f","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/flylineChart/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:"dv-flyline-chart",staticClass:"dv-flyline-chart",style:(("background-image: url(" + (_vm.mergedConfig ? _vm.mergedConfig.bgImgUrl : '') + ")")),on:{"click":_vm.consoleClickPos}},[(_vm.mergedConfig)?_c('svg',{attrs:{"width":_vm.width,"height":_vm.height}},[_c('defs',[_c('radialGradient',{attrs:{"id":_vm.gradientId,"cx":"50%","cy":"50%","r":"50%"}},[_c('stop',{attrs:{"offset":"0%","stop-color":"#fff","stop-opacity":"1"}}),_vm._v(" "),_c('stop',{attrs:{"offset":"100%","stop-color":"#fff","stop-opacity":"0"}})],1),_vm._v(" "),_c('radialGradient',{attrs:{"id":_vm.gradient2Id,"cx":"50%","cy":"50%","r":"50%"}},[_c('stop',{attrs:{"offset":"0%","stop-color":"#fff","stop-opacity":"0"}}),_vm._v(" "),_c('stop',{attrs:{"offset":"100%","stop-color":"#fff","stop-opacity":"1"}})],1),_vm._v(" "),(_vm.paths[0])?_c('circle',{attrs:{"id":("circle" + (_vm.paths[0].toString())),"cx":_vm.paths[0][2][0],"cy":_vm.paths[0][2][1]}},[_c('animate',{attrs:{"attributeName":"r","values":("1;" + (_vm.mergedConfig.halo.radius)),"dur":_vm.mergedConfig.halo.duration / 10 + 's',"repeatCount":"indefinite"}}),_vm._v(" "),_c('animate',{attrs:{"attributeName":"opacity","values":"1;0","dur":_vm.mergedConfig.halo.duration / 10 + 's',"repeatCount":"indefinite"}})]):_vm._e()],1),_vm._v(" "),(_vm.paths[0])?_c('image',{attrs:{"xlink:href":_vm.mergedConfig.centerPointImg.url,"width":_vm.mergedConfig.centerPointImg.width,"height":_vm.mergedConfig.centerPointImg.height,"x":_vm.paths[0][2][0] - _vm.mergedConfig.centerPointImg.width / 2,"y":_vm.paths[0][2][1] - _vm.mergedConfig.centerPointImg.height / 2}}):_vm._e(),_vm._v(" "),_c('mask',{attrs:{"id":("maskhalo" + (_vm.paths[0].toString()))}},[(_vm.paths[0])?_c('use',{attrs:{"xlink:href":("#circle" + (_vm.paths[0].toString())),"fill":("url(#" + _vm.gradient2Id + ")")}}):_vm._e()]),_vm._v(" "),(_vm.paths[0] && _vm.mergedConfig.halo.show)?_c('use',{attrs:{"xlink:href":("#circle" + (_vm.paths[0].toString())),"fill":_vm.mergedConfig.halo.color,"mask":("url(#maskhalo" + (_vm.paths[0].toString()) + ")")}}):_vm._e(),_vm._v(" "),_vm._l((_vm.paths),function(path,i){return _c('g',{key:i},[_c('defs',[_c('path',{ref:("path" + i),refInFor:true,attrs:{"id":("path" + (path.toString())),"d":("M" + (path[0].toString()) + " Q" + (path[1].toString()) + " " + (path[2].toString())),"fill":"transparent"}})]),_vm._v(" "),_c('use',{attrs:{"xlink:href":("#path" + (path.toString())),"stroke-width":_vm.mergedConfig.lineWidth,"stroke":_vm.mergedConfig.orbitColor}}),_vm._v(" "),(_vm.lengths[i])?_c('use',{attrs:{"xlink:href":("#path" + (path.toString())),"stroke-width":_vm.mergedConfig.lineWidth,"stroke":_vm.mergedConfig.flylineColor,"mask":("url(#mask" + _vm.unique + (path.toString()) + ")")}},[_c('animate',{attrs:{"attributeName":"stroke-dasharray","from":("0, " + (_vm.lengths[i])),"to":((_vm.lengths[i]) + ", 0"),"dur":_vm.times[i] || 0,"repeatCount":"indefinite"}})]):_vm._e(),_vm._v(" "),_c('mask',{attrs:{"id":("mask" + _vm.unique + (path.toString()))}},[_c('circle',{attrs:{"cx":"0","cy":"0","r":_vm.mergedConfig.flylineRadius,"fill":("url(#" + _vm.gradientId + ")")}},[_c('animateMotion',{attrs:{"dur":_vm.times[i] || 0,"path":("M" + (path[0].toString()) + " Q" + (path[1].toString()) + " " + (path[2].toString())),"rotate":"auto","repeatCount":"indefinite"}})],1)]),_vm._v(" "),_c('image',{attrs:{"xlink:href":_vm.mergedConfig.pointsImg.url,"width":_vm.mergedConfig.pointsImg.width,"height":_vm.mergedConfig.pointsImg.height,"x":path[0][0] - _vm.mergedConfig.pointsImg.width / 2,"y":path[0][1] - _vm.mergedConfig.pointsImg.height / 2}}),_vm._v(" "),_c('text',{style:(("fontSize:" + (_vm.mergedConfig.text.fontSize) + "px;")),attrs:{"fill":_vm.mergedConfig.text.color,"x":path[0][0] + _vm.mergedConfig.text.offset[0],"y":path[0][1] + _vm.mergedConfig.text.offset[1]}},[_vm._v("\n        "+_vm._s(_vm.texts[i])+"\n      ")])])})],2):_vm._e()])}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/flylineChart/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var flylineChart_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "rsK/":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "sSQA":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "tvR6":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "uslO":
/***/ (function(module, exports, __webpack_require__) {

var map = {
	"./af": "3CJN",
	"./af.js": "3CJN",
	"./ar": "3MVc",
	"./ar-dz": "tkWw",
	"./ar-dz.js": "tkWw",
	"./ar-kw": "j8cJ",
	"./ar-kw.js": "j8cJ",
	"./ar-ly": "wPpW",
	"./ar-ly.js": "wPpW",
	"./ar-ma": "dURR",
	"./ar-ma.js": "dURR",
	"./ar-sa": "7OnE",
	"./ar-sa.js": "7OnE",
	"./ar-tn": "BEem",
	"./ar-tn.js": "BEem",
	"./ar.js": "3MVc",
	"./az": "eHwN",
	"./az.js": "eHwN",
	"./be": "3hfc",
	"./be.js": "3hfc",
	"./bg": "lOED",
	"./bg.js": "lOED",
	"./bm": "hng5",
	"./bm.js": "hng5",
	"./bn": "aM0x",
	"./bn-bd": "1C9R",
	"./bn-bd.js": "1C9R",
	"./bn.js": "aM0x",
	"./bo": "w2Hs",
	"./bo.js": "w2Hs",
	"./br": "OSsP",
	"./br.js": "OSsP",
	"./bs": "aqvp",
	"./bs.js": "aqvp",
	"./ca": "wIgY",
	"./ca.js": "wIgY",
	"./cs": "ssxj",
	"./cs.js": "ssxj",
	"./cv": "N3vo",
	"./cv.js": "N3vo",
	"./cy": "ZFGz",
	"./cy.js": "ZFGz",
	"./da": "YBA/",
	"./da.js": "YBA/",
	"./de": "DOkx",
	"./de-at": "8v14",
	"./de-at.js": "8v14",
	"./de-ch": "Frex",
	"./de-ch.js": "Frex",
	"./de.js": "DOkx",
	"./dv": "rIuo",
	"./dv.js": "rIuo",
	"./el": "CFqe",
	"./el.js": "CFqe",
	"./en-au": "Sjoy",
	"./en-au.js": "Sjoy",
	"./en-ca": "Tqun",
	"./en-ca.js": "Tqun",
	"./en-gb": "hPuz",
	"./en-gb.js": "hPuz",
	"./en-ie": "ALEw",
	"./en-ie.js": "ALEw",
	"./en-il": "QZk1",
	"./en-il.js": "QZk1",
	"./en-in": "yJfC",
	"./en-in.js": "yJfC",
	"./en-nz": "dyB6",
	"./en-nz.js": "dyB6",
	"./en-sg": "NYST",
	"./en-sg.js": "NYST",
	"./eo": "Nd3h",
	"./eo.js": "Nd3h",
	"./es": "LT9G",
	"./es-do": "7MHZ",
	"./es-do.js": "7MHZ",
	"./es-mx": "USNP",
	"./es-mx.js": "USNP",
	"./es-us": "INcR",
	"./es-us.js": "INcR",
	"./es.js": "LT9G",
	"./et": "XlWM",
	"./et.js": "XlWM",
	"./eu": "sqLM",
	"./eu.js": "sqLM",
	"./fa": "2pmY",
	"./fa.js": "2pmY",
	"./fi": "nS2h",
	"./fi.js": "nS2h",
	"./fil": "rMbQ",
	"./fil.js": "rMbQ",
	"./fo": "OVPi",
	"./fo.js": "OVPi",
	"./fr": "tzHd",
	"./fr-ca": "bXQP",
	"./fr-ca.js": "bXQP",
	"./fr-ch": "VK9h",
	"./fr-ch.js": "VK9h",
	"./fr.js": "tzHd",
	"./fy": "g7KF",
	"./fy.js": "g7KF",
	"./ga": "U5Iz",
	"./ga.js": "U5Iz",
	"./gd": "nLOz",
	"./gd.js": "nLOz",
	"./gl": "FuaP",
	"./gl.js": "FuaP",
	"./gom-deva": "VGQH",
	"./gom-deva.js": "VGQH",
	"./gom-latn": "+27R",
	"./gom-latn.js": "+27R",
	"./gu": "rtsW",
	"./gu.js": "rtsW",
	"./he": "Nzt2",
	"./he.js": "Nzt2",
	"./hi": "ETHv",
	"./hi.js": "ETHv",
	"./hr": "V4qH",
	"./hr.js": "V4qH",
	"./hu": "xne+",
	"./hu.js": "xne+",
	"./hy-am": "GrS7",
	"./hy-am.js": "GrS7",
	"./id": "yRTJ",
	"./id.js": "yRTJ",
	"./is": "upln",
	"./is.js": "upln",
	"./it": "FKXc",
	"./it-ch": "/E8D",
	"./it-ch.js": "/E8D",
	"./it.js": "FKXc",
	"./ja": "ORgI",
	"./ja.js": "ORgI",
	"./jv": "JwiF",
	"./jv.js": "JwiF",
	"./ka": "RnJI",
	"./ka.js": "RnJI",
	"./kk": "j+vx",
	"./kk.js": "j+vx",
	"./km": "5j66",
	"./km.js": "5j66",
	"./kn": "gEQe",
	"./kn.js": "gEQe",
	"./ko": "eBB/",
	"./ko.js": "eBB/",
	"./ku": "kI9l",
	"./ku.js": "kI9l",
	"./ky": "6cf8",
	"./ky.js": "6cf8",
	"./lb": "z3hR",
	"./lb.js": "z3hR",
	"./lo": "nE8X",
	"./lo.js": "nE8X",
	"./lt": "/6P1",
	"./lt.js": "/6P1",
	"./lv": "jxEH",
	"./lv.js": "jxEH",
	"./me": "svD2",
	"./me.js": "svD2",
	"./mi": "gEU3",
	"./mi.js": "gEU3",
	"./mk": "Ab7C",
	"./mk.js": "Ab7C",
	"./ml": "oo1B",
	"./ml.js": "oo1B",
	"./mn": "CqHt",
	"./mn.js": "CqHt",
	"./mr": "5vPg",
	"./mr.js": "5vPg",
	"./ms": "ooba",
	"./ms-my": "G++c",
	"./ms-my.js": "G++c",
	"./ms.js": "ooba",
	"./mt": "oCzW",
	"./mt.js": "oCzW",
	"./my": "F+2e",
	"./my.js": "F+2e",
	"./nb": "FlzV",
	"./nb.js": "FlzV",
	"./ne": "/mhn",
	"./ne.js": "/mhn",
	"./nl": "3K28",
	"./nl-be": "Bp2f",
	"./nl-be.js": "Bp2f",
	"./nl.js": "3K28",
	"./nn": "C7av",
	"./nn.js": "C7av",
	"./oc-lnc": "KOFO",
	"./oc-lnc.js": "KOFO",
	"./pa-in": "pfs9",
	"./pa-in.js": "pfs9",
	"./pl": "7LV+",
	"./pl.js": "7LV+",
	"./pt": "ZoSI",
	"./pt-br": "AoDM",
	"./pt-br.js": "AoDM",
	"./pt.js": "ZoSI",
	"./ro": "wT5f",
	"./ro.js": "wT5f",
	"./ru": "ulq9",
	"./ru.js": "ulq9",
	"./sd": "fW1y",
	"./sd.js": "fW1y",
	"./se": "5Omq",
	"./se.js": "5Omq",
	"./si": "Lgqo",
	"./si.js": "Lgqo",
	"./sk": "OUMt",
	"./sk.js": "OUMt",
	"./sl": "2s1U",
	"./sl.js": "2s1U",
	"./sq": "V0td",
	"./sq.js": "V0td",
	"./sr": "f4W3",
	"./sr-cyrl": "c1x4",
	"./sr-cyrl.js": "c1x4",
	"./sr.js": "f4W3",
	"./ss": "7Q8x",
	"./ss.js": "7Q8x",
	"./sv": "Fpqq",
	"./sv.js": "Fpqq",
	"./sw": "DSXN",
	"./sw.js": "DSXN",
	"./ta": "+7/x",
	"./ta.js": "+7/x",
	"./te": "Nlnz",
	"./te.js": "Nlnz",
	"./tet": "gUgh",
	"./tet.js": "gUgh",
	"./tg": "5SNd",
	"./tg.js": "5SNd",
	"./th": "XzD+",
	"./th.js": "XzD+",
	"./tk": "+WRH",
	"./tk.js": "+WRH",
	"./tl-ph": "3LKG",
	"./tl-ph.js": "3LKG",
	"./tlh": "m7yE",
	"./tlh.js": "m7yE",
	"./tr": "k+5o",
	"./tr.js": "k+5o",
	"./tzl": "iNtv",
	"./tzl.js": "iNtv",
	"./tzm": "FRPF",
	"./tzm-latn": "krPU",
	"./tzm-latn.js": "krPU",
	"./tzm.js": "FRPF",
	"./ug-cn": "To0v",
	"./ug-cn.js": "To0v",
	"./uk": "ntHu",
	"./uk.js": "ntHu",
	"./ur": "uSe8",
	"./ur.js": "uSe8",
	"./uz": "XU1s",
	"./uz-latn": "/bsm",
	"./uz-latn.js": "/bsm",
	"./uz.js": "XU1s",
	"./vi": "0X8Q",
	"./vi.js": "0X8Q",
	"./x-pseudo": "e/KL",
	"./x-pseudo.js": "e/KL",
	"./yo": "YXlc",
	"./yo.js": "YXlc",
	"./zh-cn": "Vz2w",
	"./zh-cn.js": "Vz2w",
	"./zh-hk": "ZUyn",
	"./zh-hk.js": "ZUyn",
	"./zh-mo": "+WA1",
	"./zh-mo.js": "+WA1",
	"./zh-tw": "BbgG",
	"./zh-tw.js": "BbgG"
};
function webpackContext(req) {
	return __webpack_require__(webpackContextResolve(req));
};
function webpackContextResolve(req) {
	var id = map[req];
	if(!(id + 1)) // check for number or string
		throw new Error("Cannot find module '" + req + "'.");
	return id;
};
webpackContext.keys = function webpackContextKeys() {
	return Object.keys(map);
};
webpackContext.resolve = webpackContextResolve;
module.exports = webpackContext;
webpackContext.id = "uslO";

/***/ }),

/***/ "vA0W":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/mixin/autoResize.js
var autoResize = __webpack_require__("kN6d");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/util/index.js
var util = __webpack_require__("3e7c");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var lib_util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(lib_util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/decoration10/src/main.vue
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//








/* harmony default export */ var main = ({
  name: 'DvDecoration10',
  mixins: [autoResize["a" /* default */]],
  props: {
    color: {
      type: Array,
      default: function _default() {
        return [];
      }
    }
  },
  data: function data() {
    var id = Object(util["e" /* uuid */])();
    return {
      ref: 'decoration-10',

      animationId1: 'd10ani1' + id,
      animationId2: 'd10ani2' + id,
      animationId3: 'd10ani3' + id,
      animationId4: 'd10ani4' + id,
      animationId5: 'd10ani5' + id,
      animationId6: 'd10ani6' + id,
      animationId7: 'd10ani7' + id,

      defaultColor: ['#00c2ff', 'rgba(0, 194, 255, 0.3)'],

      mergedColor: []
    };
  },

  watch: {
    color: function color() {
      var mergeColor = this.mergeColor;


      mergeColor();
    }
  },
  methods: {
    mergeColor: function mergeColor() {
      var color = this.color,
          defaultColor = this.defaultColor;


      this.mergedColor = Object(lib_util["deepMerge"])(Object(plugin_util["deepClone"])(defaultColor, true), color || []);
    }
  },
  mounted: function mounted() {
    var mergeColor = this.mergeColor;


    mergeColor();
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-69543fb4","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/decoration10/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:_vm.ref,staticClass:"dv-decoration-10"},[_c('svg',{attrs:{"width":_vm.width,"height":_vm.height}},[_c('polyline',{attrs:{"stroke":_vm.mergedColor[1],"stroke-width":"2","points":("0, " + (_vm.height / 2) + " " + _vm.width + ", " + (_vm.height / 2))}}),_vm._v(" "),_c('polyline',{attrs:{"stroke":_vm.mergedColor[0],"stroke-width":"2","points":("5, " + (_vm.height / 2) + " " + (_vm.width * 0.2 - 3) + ", " + (_vm.height / 2)),"stroke-dasharray":("0, " + (_vm.width * 0.2)),"fill":"freeze"}},[_c('animate',{attrs:{"id":_vm.animationId2,"attributeName":"stroke-dasharray","values":("0, " + (_vm.width * 0.2) + ";" + (_vm.width * 0.2) + ", 0;"),"dur":"3s","begin":(_vm.animationId1 + ".end"),"fill":"freeze"}}),_vm._v(" "),_c('animate',{attrs:{"attributeName":"stroke-dasharray","values":((_vm.width * 0.2) + ", 0;0, " + (_vm.width * 0.2)),"dur":"0.01s","begin":(_vm.animationId7 + ".end"),"fill":"freeze"}})]),_vm._v(" "),_c('polyline',{attrs:{"stroke":_vm.mergedColor[0],"stroke-width":"2","points":((_vm.width * 0.2 + 3) + ", " + (_vm.height / 2) + " " + (_vm.width * 0.8 - 3) + ", " + (_vm.height / 2)),"stroke-dasharray":("0, " + (_vm.width * 0.6))}},[_c('animate',{attrs:{"id":_vm.animationId4,"attributeName":"stroke-dasharray","values":("0, " + (_vm.width * 0.6) + ";" + (_vm.width * 0.6) + ", 0"),"dur":"3s","begin":(_vm.animationId3 + ".end + 1s"),"fill":"freeze"}}),_vm._v(" "),_c('animate',{attrs:{"attributeName":"stroke-dasharray","values":((_vm.width * 0.6) + ", 0;0, " + (_vm.width * 0.6)),"dur":"0.01s","begin":(_vm.animationId7 + ".end"),"fill":"freeze"}})]),_vm._v(" "),_c('polyline',{attrs:{"stroke":_vm.mergedColor[0],"stroke-width":"2","points":((_vm.width * 0.8 + 3) + ", " + (_vm.height / 2) + " " + (_vm.width - 5) + ", " + (_vm.height / 2)),"stroke-dasharray":("0, " + (_vm.width * 0.2))}},[_c('animate',{attrs:{"id":_vm.animationId6,"attributeName":"stroke-dasharray","values":("0, " + (_vm.width * 0.2) + ";" + (_vm.width * 0.2) + ", 0"),"dur":"3s","begin":(_vm.animationId5 + ".end + 1s"),"fill":"freeze"}}),_vm._v(" "),_c('animate',{attrs:{"attributeName":"stroke-dasharray","values":((_vm.width * 0.2) + ", 0;0, " + (_vm.width * 0.3)),"dur":"0.01s","begin":(_vm.animationId7 + ".end"),"fill":"freeze"}})]),_vm._v(" "),_c('circle',{attrs:{"cx":"2","cy":_vm.height / 2,"r":"2","fill":_vm.mergedColor[1]}},[_c('animate',{attrs:{"id":_vm.animationId1,"attributeName":"fill","values":((_vm.mergedColor[1]) + ";" + (_vm.mergedColor[0])),"begin":("0s;" + _vm.animationId7 + ".end"),"dur":"0.3s","fill":"freeze"}})]),_vm._v(" "),_c('circle',{attrs:{"cx":_vm.width * 0.2,"cy":_vm.height / 2,"r":"2","fill":_vm.mergedColor[1]}},[_c('animate',{attrs:{"id":_vm.animationId3,"attributeName":"fill","values":((_vm.mergedColor[1]) + ";" + (_vm.mergedColor[0])),"begin":(_vm.animationId2 + ".end"),"dur":"0.3s","fill":"freeze"}}),_vm._v(" "),_c('animate',{attrs:{"attributeName":"fill","values":((_vm.mergedColor[1]) + ";" + (_vm.mergedColor[1])),"dur":"0.01s","begin":(_vm.animationId7 + ".end"),"fill":"freeze"}})]),_vm._v(" "),_c('circle',{attrs:{"cx":_vm.width * 0.8,"cy":_vm.height / 2,"r":"2","fill":_vm.mergedColor[1]}},[_c('animate',{attrs:{"id":_vm.animationId5,"attributeName":"fill","values":((_vm.mergedColor[1]) + ";" + (_vm.mergedColor[0])),"begin":(_vm.animationId4 + ".end"),"dur":"0.3s","fill":"freeze"}}),_vm._v(" "),_c('animate',{attrs:{"attributeName":"fill","values":((_vm.mergedColor[1]) + ";" + (_vm.mergedColor[1])),"dur":"0.01s","begin":(_vm.animationId7 + ".end"),"fill":"freeze"}})]),_vm._v(" "),_c('circle',{attrs:{"cx":_vm.width - 2,"cy":_vm.height / 2,"r":"2","fill":_vm.mergedColor[1]}},[_c('animate',{attrs:{"id":_vm.animationId7,"attributeName":"fill","values":((_vm.mergedColor[1]) + ";" + (_vm.mergedColor[0])),"begin":(_vm.animationId6 + ".end"),"dur":"0.3s","fill":"freeze"}}),_vm._v(" "),_c('animate',{attrs:{"attributeName":"fill","values":((_vm.mergedColor[1]) + ";" + (_vm.mergedColor[1])),"dur":"0.01s","begin":(_vm.animationId7 + ".end"),"fill":"freeze"}})])])])}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/decoration10/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var decoration10_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "vQuI":
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "vThT":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/mixin/autoResize.js
var autoResize = __webpack_require__("kN6d");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/borderBox1/src/main.vue
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//







/* harmony default export */ var main = ({
  name: 'DvBorderBox1',
  mixins: [autoResize["a" /* default */]],
  props: {
    color: {
      type: Array,
      default: function _default() {
        return [];
      }
    },
    backgroundColor: {
      type: String,
      default: 'transparent'
    }
  },
  data: function data() {
    return {
      ref: 'border-box-1',

      border: ['left-top', 'right-top', 'left-bottom', 'right-bottom'],

      defaultColor: ['#4fd2dd', '#235fa7'],

      mergedColor: []
    };
  },

  watch: {
    color: function color() {
      var mergeColor = this.mergeColor;


      mergeColor();
    }
  },
  methods: {
    mergeColor: function mergeColor() {
      var color = this.color,
          defaultColor = this.defaultColor;


      this.mergedColor = Object(util["deepMerge"])(Object(plugin_util["deepClone"])(defaultColor, true), color || []);
    }
  },
  mounted: function mounted() {
    var mergeColor = this.mergeColor;


    mergeColor();
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-205f0004","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/borderBox1/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:_vm.ref,staticClass:"dv-border-box-1"},[_c('svg',{staticClass:"border",attrs:{"width":_vm.width,"height":_vm.height}},[_c('polygon',{attrs:{"fill":_vm.backgroundColor,"points":("10, 27 10, " + (_vm.height - 27) + " 13, " + (_vm.height - 24) + " 13, " + (_vm.height - 21) + " 24, " + (_vm.height - 11) + "\n    38, " + (_vm.height - 11) + " 41, " + (_vm.height - 8) + " 73, " + (_vm.height - 8) + " 75, " + (_vm.height - 10) + " 81, " + (_vm.height - 10) + "\n    85, " + (_vm.height - 6) + " " + (_vm.width - 85) + ", " + (_vm.height - 6) + " " + (_vm.width - 81) + ", " + (_vm.height - 10) + " " + (_vm.width - 75) + ", " + (_vm.height - 10) + "\n    " + (_vm.width - 73) + ", " + (_vm.height - 8) + " " + (_vm.width - 41) + ", " + (_vm.height - 8) + " " + (_vm.width - 38) + ", " + (_vm.height - 11) + "\n    " + (_vm.width - 24) + ", " + (_vm.height - 11) + " " + (_vm.width - 13) + ", " + (_vm.height - 21) + " " + (_vm.width - 13) + ", " + (_vm.height - 24) + "\n    " + (_vm.width - 10) + ", " + (_vm.height - 27) + " " + (_vm.width - 10) + ", 27 " + (_vm.width - 13) + ", 25 " + (_vm.width - 13) + ", 21\n    " + (_vm.width - 24) + ", 11 " + (_vm.width - 38) + ", 11 " + (_vm.width - 41) + ", 8 " + (_vm.width - 73) + ", 8 " + (_vm.width - 75) + ", 10\n    " + (_vm.width - 81) + ", 10 " + (_vm.width - 85) + ", 6 85, 6 81, 10 75, 10 73, 8 41, 8 38, 11 24, 11 13, 21 13, 24")}})]),_vm._v(" "),_vm._l((_vm.border),function(item){return _c('svg',{key:item,class:(item + " border"),attrs:{"width":"150px","height":"150px"}},[_c('polygon',{attrs:{"fill":_vm.mergedColor[0],"points":"6,66 6,18 12,12 18,12 24,6 27,6 30,9 36,9 39,6 84,6 81,9 75,9 73.2,7 40.8,7 37.8,10.2 24,10.2 12,21 12,24 9,27 9,51 7.8,54 7.8,63"}},[_c('animate',{attrs:{"attributeName":"fill","values":((_vm.mergedColor[0]) + ";" + (_vm.mergedColor[1]) + ";" + (_vm.mergedColor[0])),"dur":"0.5s","begin":"0s","repeatCount":"indefinite"}})]),_vm._v(" "),_c('polygon',{attrs:{"fill":_vm.mergedColor[1],"points":"27.599999999999998,4.8 38.4,4.8 35.4,7.8 30.599999999999998,7.8"}},[_c('animate',{attrs:{"attributeName":"fill","values":((_vm.mergedColor[1]) + ";" + (_vm.mergedColor[0]) + ";" + (_vm.mergedColor[1])),"dur":"0.5s","begin":"0s","repeatCount":"indefinite"}})]),_vm._v(" "),_c('polygon',{attrs:{"fill":_vm.mergedColor[0],"points":"9,54 9,63 7.199999999999999,66 7.199999999999999,75 7.8,78 7.8,110 8.4,110 8.4,66 9.6,66 9.6,54"}},[_c('animate',{attrs:{"attributeName":"fill","values":((_vm.mergedColor[0]) + ";" + (_vm.mergedColor[1]) + ";transparent"),"dur":"1s","begin":"0s","repeatCount":"indefinite"}})])])}),_vm._v(" "),_c('div',{staticClass:"border-box-content"},[_vm._t("default")],2)],2)}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/borderBox1/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var borderBox1_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "xF9X":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/mixin/autoResize.js
var autoResize = __webpack_require__("kN6d");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/borderBox5/src/main.vue
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//







/* harmony default export */ var main = ({
  name: 'DvBorderBox5',
  mixins: [autoResize["a" /* default */]],
  props: {
    color: {
      type: Array,
      default: function _default() {
        return [];
      }
    },
    reverse: {
      type: Boolean,
      default: false
    },
    backgroundColor: {
      type: String,
      default: 'transparent'
    }
  },
  data: function data() {
    return {
      ref: 'border-box-5',

      defaultColor: ['rgba(255, 255, 255, 0.35)', 'rgba(255, 255, 255, 0.20)'],

      mergedColor: []
    };
  },

  watch: {
    color: function color() {
      var mergeColor = this.mergeColor;


      mergeColor();
    }
  },
  methods: {
    mergeColor: function mergeColor() {
      var color = this.color,
          defaultColor = this.defaultColor;


      this.mergedColor = Object(util["deepMerge"])(Object(plugin_util["deepClone"])(defaultColor, true), color || []);
    }
  },
  mounted: function mounted() {
    var mergeColor = this.mergeColor;


    mergeColor();
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-435731f8","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/borderBox5/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:_vm.ref,staticClass:"dv-border-box-5"},[_c('svg',{class:("dv-border-svg-container  " + (_vm.reverse && 'dv-reverse')),attrs:{"width":_vm.width,"height":_vm.height}},[_c('polygon',{attrs:{"fill":_vm.backgroundColor,"points":("\n      10, 22 " + (_vm.width - 22) + ", 22 " + (_vm.width - 22) + ", " + (_vm.height - 86) + " " + (_vm.width - 84) + ", " + (_vm.height - 24) + " 10, " + (_vm.height - 24) + "\n    ")}}),_vm._v(" "),_c('polyline',{staticClass:"dv-bb5-line-1",attrs:{"stroke":_vm.mergedColor[0],"points":("8, 5 " + (_vm.width - 5) + ", 5 " + (_vm.width - 5) + ", " + (_vm.height - 100) + "\n        " + (_vm.width - 100) + ", " + (_vm.height - 5) + " 8, " + (_vm.height - 5) + " 8, 5")}}),_vm._v(" "),_c('polyline',{staticClass:"dv-bb5-line-2",attrs:{"stroke":_vm.mergedColor[1],"points":("3, 5 " + (_vm.width - 20) + ", 5 " + (_vm.width - 20) + ", " + (_vm.height - 60) + "\n        " + (_vm.width - 74) + ", " + (_vm.height - 5) + " 3, " + (_vm.height - 5) + " 3, 5")}}),_vm._v(" "),_c('polyline',{staticClass:"dv-bb5-line-3",attrs:{"stroke":_vm.mergedColor[1],"points":("50, 13 " + (_vm.width - 35) + ", 13")}}),_vm._v(" "),_c('polyline',{staticClass:"dv-bb5-line-4",attrs:{"stroke":_vm.mergedColor[1],"points":("15, 20 " + (_vm.width - 35) + ", 20")}}),_vm._v(" "),_c('polyline',{staticClass:"dv-bb5-line-5",attrs:{"stroke":_vm.mergedColor[1],"points":("15, " + (_vm.height - 20) + " " + (_vm.width - 110) + ", " + (_vm.height - 20))}}),_vm._v(" "),_c('polyline',{staticClass:"dv-bb5-line-6",attrs:{"stroke":_vm.mergedColor[1],"points":("15, " + (_vm.height - 13) + " " + (_vm.width - 110) + ", " + (_vm.height - 13))}})]),_vm._v(" "),_c('div',{staticClass:"border-box-content"},[_vm._t("default")],2)])}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/borderBox5/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var borderBox5_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ }),

/***/ "xYoE":
/***/ (function(module, exports) {

module.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFu2lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNy4xLWMwMDAgNzkuYjBmOGJlOSwgMjAyMS8xMi8wOC0xOToxMToyMiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIzLjIgKFdpbmRvd3MpIiB4bXA6Q3JlYXRlRGF0ZT0iMjAyMi0wNC0yNFQxMTozMTo0MiswODowMCIgeG1wOk1vZGlmeURhdGU9IjIwMjItMDUtMDlUMTA6MzQ6NTgrMDg6MDAiIHhtcDpNZXRhZGF0YURhdGU9IjIwMjItMDUtMDlUMTA6MzQ6NTgrMDg6MDAiIGRjOmZvcm1hdD0iaW1hZ2UvcG5nIiBwaG90b3Nob3A6Q29sb3JNb2RlPSIzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjgxNmJlYzEwLWExNTYtZjA0ZC04MzM3LTk1YzRkYjRhMjQ1OSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpjMWZjOWUxNy1iODllLWU4NDktYTYwNS1iMDE3N2VkYzg0MWEiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDpjMWZjOWUxNy1iODllLWU4NDktYTYwNS1iMDE3N2VkYzg0MWEiPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmMxZmM5ZTE3LWI4OWUtZTg0OS1hNjA1LWIwMTc3ZWRjODQxYSIgc3RFdnQ6d2hlbj0iMjAyMi0wNC0yNFQxMTozMTo0MiswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIzLjIgKFdpbmRvd3MpIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo4MTZiZWMxMC1hMTU2LWYwNGQtODMzNy05NWM0ZGI0YTI0NTkiIHN0RXZ0OndoZW49IjIwMjItMDUtMDlUMTA6MzQ6NTgrMDg6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMy4yIChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4+fgVeAAAEKklEQVRoge3abYhVRRgH8J8lBGakFRUZFLVEhYjbC2pRrFRo0EZKhb1QbphUFGRhKL1omb0pWURRmS+lSKSVvZDplzaiqDCsBQsqY0tKoiCz6ENB24eZ4509nnv37t2z6xX6w2Gemee5M8//nJlnZp7dYT09PQ5kHLS/HRgoDngCw/dKUy4bjP4XYgG68CDWl9bz5o0YvC9wHN4SnIdxeAUXlD3QYBA4S3D+kljfkujGlD1Y2QQuFZw/I9bXYEqiP6nOfsbVO2CZBG7GGzg21ufiugb6eQ5fCFOuT5RFYBGeSepTsLTBvv6N5RXCF6yJgRIYjhW4J2lr1Xve9xcPYHuUr8W8WsYDIXCCMN9viPUuHI/PB9An7MJY7Ij1h4W1VYhGCUzCm5ga62twNn5ssL8iXJjIj6sSwYYXNUaMwviC9iPxLI5KOr+z3+71jW50YBVOxq2YnzcqItCGOWp8tgTz8UijHtaB1ZiOdoHAGnyZGuSn0O14T33Oz1Ke8zMxrYru+ViOxG15ZfoFWrE4ytuxAZ1VOu2OTxmYLcR+wtt+Pad/WwgW7UJUegg7M2VK4FyMiPJS4fMNBT5L5KeEaLYjZ7NSIDBSIPlkpkin0ORYdhs65wkEro/yGCwpsNmID6I8PVWkBI6IZXd5vtWNl/B0lKfhogKbF2N5Pk7JGpvpQrMYP0V5ZoH+o0Q+MxOaicAuLI/y1ZiQ03+FPVFuSgKEaJR9hfYC/dexbFoCu7AtyqMK9H/mG5qNAPwWy9H1GDcjgV9jeXg9xs1I4OBY/lOgOy2We3fiZiRwcSzfz7WfjmOivDekNhuBCWiJ8ic53aRE7sqEZiOQvf3dep+RqFyeftakBGaoJMI68XeiG4/Lo7xOEk6bhUArnojyL3onCQjkMqxLFSmBLJPQFp+hwgjB+WyB3q2SlSBEnllRfhVb0x+nBNI514YTy/OxJmYLJ0zCMX55Tj9PuIcr0PW60GzBWuHWsyA+nQUD7saj+Lgxf/fBD8K0+Q635HRXqmT3VmBz/sf5S/1CHKpyP22rMuhk4eK/qr/eFuC1+OTRgnujvEfIfuyDPIEdwo1nBs4TNo882oRtfqUwP+/qr8d14GjhAjM21pfJZSMyVMsLvRyfIswU3sZoIYF7Ku7At435ug8OEdbCOYkvC6sZNxJGVwubyoex3o5NKn8PGCiWqGxo23BTLeNG94FP4yAvxHqLkPqY22B/KQ6L5V9ChPq9lnGt1GJf+AM3CnMzW2CPCetiTl8D18A7+F44C23tw7aUnXiZMKWyRdaBdzGxwf7WC3N+Uz3GZR0lNgskNsT6RIFER0n9V0WZZ6Gdwl9VFsV6FmrXJjZlpt8xOIe5+3CVcEGHaxLdAUGAELunCinBDPcLC7RUDCQK9YUu4UjShm8MwtuHYf//t8p+xn9P/r3QG9dEeAAAAABJRU5ErkJggg=="

/***/ }),

/***/ "yFI5":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/extends.js
var helpers_extends = __webpack_require__("Dd8w");
var extends_default = /*#__PURE__*/__webpack_require__.n(helpers_extends);

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/toConsumableArray.js
var toConsumableArray = __webpack_require__("Gu7T");
var toConsumableArray_default = /*#__PURE__*/__webpack_require__.n(toConsumableArray);

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/slicedToArray.js
var slicedToArray = __webpack_require__("d7EF");
var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);

// EXTERNAL MODULE: ./node_modules/babel-runtime/regenerator/index.js
var regenerator = __webpack_require__("Xxa5");
var regenerator_default = /*#__PURE__*/__webpack_require__.n(regenerator);

// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/asyncToGenerator.js
var asyncToGenerator = __webpack_require__("exGp");
var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/charts/lib/util/index.js
var util = __webpack_require__("9A4f");
var util_default = /*#__PURE__*/__webpack_require__.n(util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/c-render/lib/plugin/util.js
var plugin_util = __webpack_require__("qf0b");
var plugin_util_default = /*#__PURE__*/__webpack_require__.n(plugin_util);

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/util/index.js
var lib_util = __webpack_require__("3e7c");

// EXTERNAL MODULE: ./node_modules/@jiaminghi/data-view/lib/mixin/autoResize.js
var autoResize = __webpack_require__("kN6d");

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./node_modules/@jiaminghi/data-view/lib/components/flylineChartEnhanced/src/main.vue





//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//









/* harmony default export */ var main = ({
  name: 'DvFlylineChartEnhanced',
  mixins: [autoResize["a" /* default */]],
  props: {
    config: {
      type: Object,
      default: function _default() {
        return {};
      }
    },
    dev: {
      type: Boolean,
      default: false
    }
  },
  data: function data() {
    var id = Object(lib_util["e" /* uuid */])();
    return {
      ref: 'dv-flyline-chart-enhanced',
      unique: Math.random(),
      flylineGradientId: 'flyline-gradient-id-' + id,
      haloGradientId: 'halo-gradient-id-' + id,
      /**
       * @description Type Declaration
       * 
       * interface Halo {
       *    show?: boolean
       *    duration?: [number, number]
       *    color?: string
       *    radius?: number
       * }
       * 
       * interface Text {
       *    show?: boolean
       *    offset?: [number, number]
       *    color?: string
       *    fontSize?: number
       * }
       * 
       * interface Icon {
       *    show?: boolean
       *    src?: string
       *    width?: number
       *    height?: number
       * }
       * 
       * interface Point {
       *    name: string
       *    coordinate: [number, number]
       *    halo?: Halo
       *    text?: Text
       *    icon?: Icon
       * }
       * 
       * interface Line {
       *    width?: number
       *    color?: string
       *    orbitColor?: string
       *    duration?: [number, number]
       *    radius?: string
       * }
       * 
       * interface Flyline extends Line {
       *    source: string
       *    target: string
       * }
       * 
       * interface FlylineWithPath extends Flyline {
       *    d: string
       *    path: [[number, number], [number, number], [number, number]]
       *    key: string
       * }
       */
      defaultConfig: {
        /**
         * @description Flyline chart points
         * @type {Point[]}
         * @default points = []
         */
        points: [],
        /**
         * @description Lines
         * @type {Flyline[]}
         * @default lines = []
         */
        lines: [],
        /**
         * @description Global halo configuration
         * @type {Halo}
         */
        halo: {
          /**
           * @description Whether to show halo
           * @type {Boolean}
           * @default show = false
           */
          show: false,
          /**
           * @description Halo animation duration (1s = 10)
           * @type {[number, number]}
           */
          duration: [20, 30],
          /**
           * @description Halo color
           * @type {String}
           * @default color = '#fb7293'
           */
          color: '#fb7293',
          /**
           * @description Halo radius
           * @type {Number}
           * @default radius = 120
           */
          radius: 120
        },
        /**
         * @description Global text configuration
         * @type {Text}
         */
        text: {
          /**
           * @description Whether to show text
           * @type {Boolean}
           * @default show = false
           */
          show: false,
          /**
           * @description Text offset
           * @type {[number, number]}
           * @default offset = [0, 15]
           */
          offset: [0, 15],
          /**
           * @description Text color
           * @type {String}
           * @default color = '#ffdb5c'
           */
          color: '#ffdb5c',
          /**
           * @description Text font size
           * @type {Number}
           * @default fontSize = 12
           */
          fontSize: 12
        },
        /**
         * @description Global icon configuration
         * @type {Icon}
         */
        icon: {
          /**
           * @description Whether to show icon
           * @type {Boolean}
           * @default show = false
           */
          show: false,
          /**
           * @description Icon src
           * @type {String}
           * @default src = ''
           */
          src: '',
          /**
           * @description Icon width
           * @type {Number}
           * @default width = 15
           */
          width: 15,
          /**
           * @description Icon height
           * @type {Number}
           * @default width = 15
           */
          height: 15
        },
        /**
         * @description Global line configuration
         * @type {Line}
         */
        line: {
          /**
           * @description Line width
           * @type {Number}
           * @default width = 1
           */
          width: 1,
          /**
           * @description Flyline color
           * @type {String}
           * @default color = '#ffde93'
           */
          color: '#ffde93',
          /**
           * @description Orbit color
           * @type {String}
           * @default orbitColor = 'rgba(103, 224, 227, .2)'
           */
          orbitColor: 'rgba(103, 224, 227, .2)',
          /**
           * @description Flyline animation duration
           * @type {[number, number]}
           * @default duration = [20, 30]
           */
          duration: [20, 30],
          /**
           * @description Flyline radius
           * @type {Number}
           * @default radius = 100
           */
          radius: 100
        },
        /**
         * @description Back ground image url
         * @type {String}
         * @default bgImgSrc = ''
         */
        bgImgSrc: '',
        /**
         * @description K value
         * @type {Number}
         * @default k = -0.5
         * @example k = -1 ~ 1
         */
        k: -0.5,
        /**
         * @description Flyline curvature
         * @type {Number}
         * @default curvature = 5
         */
        curvature: 5,
        /**
         * @description Relative points position
         * @type {Boolean}
         * @default relative = true
         */
        relative: true
      },
      /**
       * @description Fly line data
       * @type {FlylineWithPath[]}
       * @default flylines = []
       */
      flylines: [],
      /**
       * @description Fly line lengths
       * @type {Number[]}
       * @default flylineLengths = []
       */
      flylineLengths: [],
      /**
       * @description Fly line points
       * @default flylinePoints = []
       */
      flylinePoints: [],

      mergedConfig: null
    };
  },

  watch: {
    config: function config() {
      var calcData = this.calcData;


      calcData();
    }
  },
  methods: {
    afterAutoResizeMixinInit: function afterAutoResizeMixinInit() {
      var calcData = this.calcData;


      calcData();
    },
    onResize: function onResize() {
      var calcData = this.calcData;


      calcData();
    },
    calcData: function calcData() {
      var _this = this;

      return asyncToGenerator_default()( /*#__PURE__*/regenerator_default.a.mark(function _callee() {
        var mergeConfig, calcflylinePoints, calcLinePaths, calcLineLengths;
        return regenerator_default.a.wrap(function _callee$(_context) {
          while (1) {
            switch (_context.prev = _context.next) {
              case 0:
                mergeConfig = _this.mergeConfig, calcflylinePoints = _this.calcflylinePoints, calcLinePaths = _this.calcLinePaths;


                mergeConfig();

                calcflylinePoints();

                calcLinePaths();

                calcLineLengths = _this.calcLineLengths;
                _context.next = 7;
                return calcLineLengths();

              case 7:
              case 'end':
                return _context.stop();
            }
          }
        }, _callee, _this);
      }))();
    },
    mergeConfig: function mergeConfig() {
      var config = this.config,
          defaultConfig = this.defaultConfig;


      var mergedConfig = Object(util["deepMerge"])(Object(plugin_util["deepClone"])(defaultConfig, true), config || {});

      var points = mergedConfig.points,
          lines = mergedConfig.lines,
          halo = mergedConfig.halo,
          text = mergedConfig.text,
          icon = mergedConfig.icon,
          line = mergedConfig.line;


      mergedConfig.points = points.map(function (item) {
        item.halo = Object(util["deepMerge"])(Object(plugin_util["deepClone"])(halo, true), item.halo || {});
        item.text = Object(util["deepMerge"])(Object(plugin_util["deepClone"])(text, true), item.text || {});
        item.icon = Object(util["deepMerge"])(Object(plugin_util["deepClone"])(icon, true), item.icon || {});

        return item;
      });

      mergedConfig.lines = lines.map(function (item) {
        return Object(util["deepMerge"])(Object(plugin_util["deepClone"])(line, true), item);
      });

      this.mergedConfig = mergedConfig;
    },
    calcflylinePoints: function calcflylinePoints() {
      var mergedConfig = this.mergedConfig,
          width = this.width,
          height = this.height;
      var relative = mergedConfig.relative,
          points = mergedConfig.points;


      this.flylinePoints = points.map(function (item, i) {
        var _item$coordinate = slicedToArray_default()(item.coordinate, 2),
            x = _item$coordinate[0],
            y = _item$coordinate[1],
            halo = item.halo,
            icon = item.icon,
            text = item.text;

        if (relative) item.coordinate = [x * width, y * height];

        item.halo.time = lib_util["d" /* randomExtend */].apply(undefined, toConsumableArray_default()(halo.duration)) / 10;

        var iw = icon.width,
            ih = icon.height;

        item.icon.x = item.coordinate[0] - iw / 2;
        item.icon.y = item.coordinate[1] - ih / 2;

        var _text$offset = slicedToArray_default()(text.offset, 2),
            ox = _text$offset[0],
            oy = _text$offset[1];

        item.text.x = item.coordinate[0] + ox;
        item.text.y = item.coordinate[1] + oy;

        item.key = '' + item.coordinate.toString() + i;

        return item;
      });
    },
    calcLinePaths: function calcLinePaths() {
      var getPath = this.getPath,
          mergedConfig = this.mergedConfig;
      var points = mergedConfig.points,
          lines = mergedConfig.lines;


      this.flylines = lines.map(function (item) {
        var source = item.source,
            target = item.target,
            duration = item.duration;


        var sourcePoint = points.find(function (_ref) {
          var name = _ref.name;
          return name === source;
        }).coordinate;
        var targetPoint = points.find(function (_ref2) {
          var name = _ref2.name;
          return name === target;
        }).coordinate;

        var path = getPath(sourcePoint, targetPoint).map(function (item) {
          return item.map(function (v) {
            return parseFloat(v.toFixed(10));
          });
        });
        var d = 'M' + path[0].toString() + ' Q' + path[1].toString() + ' ' + path[2].toString();
        var key = 'path' + path.toString();
        var time = lib_util["d" /* randomExtend */].apply(undefined, toConsumableArray_default()(duration)) / 10;

        return extends_default()({}, item, { path: path, key: key, d: d, time: time });
      });
    },
    getPath: function getPath(start, end) {
      var getControlPoint = this.getControlPoint;


      var controlPoint = getControlPoint(start, end);

      return [start, controlPoint, end];
    },
    getControlPoint: function getControlPoint(_ref3, _ref4) {
      var _ref6 = slicedToArray_default()(_ref3, 2),
          sx = _ref6[0],
          sy = _ref6[1];

      var _ref5 = slicedToArray_default()(_ref4, 2),
          ex = _ref5[0],
          ey = _ref5[1];

      var getKLinePointByx = this.getKLinePointByx,
          mergedConfig = this.mergedConfig;
      var curvature = mergedConfig.curvature,
          k = mergedConfig.k;
      var mx = (sx + ex) / 2,
          my = (sy + ey) / 2;


      var distance = Object(lib_util["b" /* getPointDistance */])([sx, sy], [ex, ey]);

      var targetLength = distance / curvature;
      var disDived = targetLength / 2;

      var dx = mx,
          dy = my;


      do {
        dx += disDived;
        dy = getKLinePointByx(k, [mx, my], dx)[1];
      } while (Object(lib_util["b" /* getPointDistance */])([mx, my], [dx, dy]) < targetLength);

      return [dx, dy];
    },
    getKLinePointByx: function getKLinePointByx(k, _ref7, x) {
      var _ref8 = slicedToArray_default()(_ref7, 2),
          lx = _ref8[0],
          ly = _ref8[1];

      var y = ly - k * lx + k * x;

      return [x, y];
    },
    calcLineLengths: function calcLineLengths() {
      var _this2 = this;

      return asyncToGenerator_default()( /*#__PURE__*/regenerator_default.a.mark(function _callee2() {
        var $nextTick, flylines, $refs;
        return regenerator_default.a.wrap(function _callee2$(_context2) {
          while (1) {
            switch (_context2.prev = _context2.next) {
              case 0:
                $nextTick = _this2.$nextTick, flylines = _this2.flylines, $refs = _this2.$refs;
                _context2.next = 3;
                return $nextTick();

              case 3:

                _this2.flylineLengths = flylines.map(function (_ref9) {
                  var key = _ref9.key;
                  return $refs[key][0].getTotalLength();
                });

              case 4:
              case 'end':
                return _context2.stop();
            }
          }
        }, _callee2, _this2);
      }))();
    },
    consoleClickPos: function consoleClickPos(_ref10) {
      var offsetX = _ref10.offsetX,
          offsetY = _ref10.offsetY;
      var width = this.width,
          height = this.height,
          dev = this.dev;


      if (!dev) return;

      var relativeX = (offsetX / width).toFixed(2);
      var relativeY = (offsetY / height).toFixed(2);

      console.warn('dv-flyline-chart-enhanced DEV: \n Click Position is [' + offsetX + ', ' + offsetY + '] \n Relative Position is [' + relativeX + ', ' + relativeY + ']');
    }
  }
});
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-600be252","hasScoped":false,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./node_modules/@jiaminghi/data-view/lib/components/flylineChartEnhanced/src/main.vue
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:_vm.ref,staticClass:"dv-flyline-chart-enhanced",style:(("background-image: url(" + (_vm.mergedConfig ? _vm.mergedConfig.bgImgSrc : '') + ")")),on:{"click":_vm.consoleClickPos}},[(_vm.flylines.length)?_c('svg',{attrs:{"width":_vm.width,"height":_vm.height}},[_c('defs',[_c('radialGradient',{attrs:{"id":_vm.flylineGradientId,"cx":"50%","cy":"50%","r":"50%"}},[_c('stop',{attrs:{"offset":"0%","stop-color":"#fff","stop-opacity":"1"}}),_vm._v(" "),_c('stop',{attrs:{"offset":"100%","stop-color":"#fff","stop-opacity":"0"}})],1),_vm._v(" "),_c('radialGradient',{attrs:{"id":_vm.haloGradientId,"cx":"50%","cy":"50%","r":"50%"}},[_c('stop',{attrs:{"offset":"0%","stop-color":"#fff","stop-opacity":"0"}}),_vm._v(" "),_c('stop',{attrs:{"offset":"100%","stop-color":"#fff","stop-opacity":"1"}})],1)],1),_vm._v(" "),_vm._l((_vm.flylinePoints),function(point){return _c('g',{key:point.key + Math.random()},[_c('defs',[(point.halo.show)?_c('circle',{attrs:{"id":("halo" + _vm.unique + (point.key)),"cx":point.coordinate[0],"cy":point.coordinate[1]}},[_c('animate',{attrs:{"attributeName":"r","values":("1;" + (point.halo.radius)),"dur":((point.halo.time) + "s"),"repeatCount":"indefinite"}}),_vm._v(" "),_c('animate',{attrs:{"attributeName":"opacity","values":"1;0","dur":((point.halo.time) + "s"),"repeatCount":"indefinite"}})]):_vm._e()]),_vm._v(" "),_c('mask',{attrs:{"id":("mask" + _vm.unique + (point.key))}},[(point.halo.show)?_c('use',{attrs:{"xlink:href":("#halo" + _vm.unique + (point.key)),"fill":("url(#" + _vm.haloGradientId + ")")}}):_vm._e()]),_vm._v(" "),(point.halo.show)?_c('use',{attrs:{"xlink:href":("#halo" + _vm.unique + (point.key)),"fill":point.halo.color,"mask":("url(#mask" + _vm.unique + (point.key) + ")")}}):_vm._e(),_vm._v(" "),(point.icon.show)?_c('image',{attrs:{"xlink:href":point.icon.src,"width":point.icon.width,"height":point.icon.height,"x":point.icon.x,"y":point.icon.y}}):_vm._e(),_vm._v(" "),(point.text.show)?_c('text',{style:(("fontSize:" + (point.text.fontSize) + "px;color:" + (point.text.color))),attrs:{"fill":point.text.color,"x":point.text.x,"y":point.text.y}},[_vm._v("\n        "+_vm._s(point.name)+"\n      ")]):_vm._e()])}),_vm._v(" "),_vm._l((_vm.flylines),function(line,i){return _c('g',{key:line.key + Math.random()},[_c('defs',[_c('path',{ref:line.key,refInFor:true,attrs:{"id":line.key,"d":line.d,"fill":"transparent"}})]),_vm._v(" "),_c('use',{attrs:{"xlink:href":("#" + (line.key)),"stroke-width":line.width,"stroke":line.orbitColor}}),_vm._v(" "),_c('mask',{attrs:{"id":("mask" + _vm.unique + (line.key))}},[_c('circle',{attrs:{"cx":"0","cy":"0","r":line.radius,"fill":("url(#" + _vm.flylineGradientId + ")")}},[_c('animateMotion',{attrs:{"dur":line.time,"path":line.d,"rotate":"auto","repeatCount":"indefinite"}})],1)]),_vm._v(" "),(_vm.flylineLengths[i])?_c('use',{attrs:{"xlink:href":("#" + (line.key)),"stroke-width":line.width,"stroke":line.color,"mask":("url(#mask" + _vm.unique + (line.key) + ")")}},[_c('animate',{attrs:{"attributeName":"stroke-dasharray","from":("0, " + (_vm.flylineLengths[i])),"to":((_vm.flylineLengths[i]) + ", 0"),"dur":line.time,"repeatCount":"indefinite"}})]):_vm._e()])})],2):_vm._e()])}
var staticRenderFns = []
var esExports = { render: render, staticRenderFns: staticRenderFns }
/* harmony default export */ var src_main = (esExports);
// CONCATENATED MODULE: ./node_modules/@jiaminghi/data-view/lib/components/flylineChartEnhanced/src/main.vue
var normalizeComponent = __webpack_require__("VU/8")
/* script */


/* template */

/* template functional */
var __vue_template_functional__ = false
/* styles */
var __vue_styles__ = null
/* scopeId */
var __vue_scopeId__ = null
/* moduleIdentifier (server only) */
var __vue_module_identifier__ = null
var Component = normalizeComponent(
  main,
  src_main,
  __vue_template_functional__,
  __vue_styles__,
  __vue_scopeId__,
  __vue_module_identifier__
)

/* harmony default export */ var flylineChartEnhanced_src_main = __webpack_exports__["a"] = (Component.exports);


/***/ })

},[1]);