水位 水速 水向

描述:当前是关于Echarts图表中的 示例。
 
            
var zData = [
   "北", //348.75 ~ 11.25;
   "北北东", //11.25 ~ 33.75;
   "东北", //33.75 ~ 56.25;
   "东东北", //56.25 ~ 78.75;
   "东", //78.75 ~ 101.25;
   "东东南", //101.25 ~ 123.75;
   "东南", //123.75 ~ 146.25;
   "南南东", //146.25 ~ 168.75;
   "南", //168.75 ~ 191.25;
   "南南西", //191.25 ~ 213.75;
   "西南", //213.75 ~ 236.25;
   "西西南", //236.25 ~ 258.75;
   "西", //258.75 ~ 281.25;
   "西西北", //281.25 ~ 303.75;
   "西北", //303.75 ~ 326.25;
   "北北西" //326.25 ~ 348.75;
];
let {
   yUnit,
   yUnit2,
   xUnit,
   interval,
   showSymbol,
   xMaxVal,
   xInterval,
   showDataZoom,
   dataZoomEndVlaue,
   yInterval,
   yMax,
   yMin,
   yData,
   yData2,
   yData3
} = {
   "xUnit": "时间(小时)",
   "yUnit": "水\n位\n\n(m)",
   "yUnit2": "水\n速\n\n(m/s)",
   "yData": [
      [0, "0.218", "10-11 00"],
      [1, "0.361", "10-11 01"],
      [2, "0.405", "10-11 02"],
      [3, "0.339", "10-11 03"],
      [4, "0.180", "10-11 04"],
      [5, "-0.032", "10-11 05"],
      [6, "-0.242", "10-11 06"],
      [7, "-0.395", "10-11 07"],
      [8, "-0.451", "10-11 08"],
      [9, "-0.394", "10-11 09"],
      [10, "-0.238", "10-11 10"],
      [11, "-0.020", "10-11 11"],
      [12, "0.206", "10-11 12"],
      [13, "0.382", "10-11 13"],
      [14, "0.467", "10-11 14"],
      [15, "0.440", "10-11 15"],
      [16, "0.309", "10-11 16"],
      [17, "0.109", "10-11 17"],
      [18, "-0.110", "10-11 18"],
      [19, "-0.291", "10-11 19"],
      [20, "-0.391", "10-11 20"],
      [21, "-0.386", "10-11 21"],
      [22, "-0.282", "10-11 22"],
      [23, "-0.107", "10-11 23"]
   ],
   "yData2": [
      [-0.016666666666666666, "0.047", "10-10  23", true, "最大"],
      [2.9833333333333334, "0.007", "10-11  02", true, "最小"],
      [5.983333333333333, "0.050", "10-11  05", true, "最大"],
      [8.983333333333333, "0.002", "10-11  08", true, "最小"],
      [11.983333333333333, "0.050", "10-11  11", true, "最大"],
      [14.983333333333333, "0.005", "10-11  14", true, "最小"],
      [17.983333333333334, "0.046", "10-11  17", true, "最大"],
      [20.983333333333334, "0.008", "10-11  20", true, "最小"]
   ],
   "yData3": [
      [0, "0.047", "10-11 00", null, "11.4"],
      [1, "0.038", "10-11 01", null, "14.5"],
      [2, "0.019", "10-11 02", null, "22.6"],
      [3, "0.007", "10-11 03", null, "152.4"],
      [4, "0.029", "10-11 04", null, "182.1"],
      [5, "0.045", "10-11 05", null, "186.3"],
      [6, "0.050", "10-11 06", null, "188.3"],
      [7, "0.042", "10-11 07", null, "190.0"],
      [8, "0.023", "10-11 08", null, "192.4"],
      [9, "0.002", "10-11 09", null, "318.4"],
      [10, "0.025", "10-11 10", null, "7.1"],
      [11, "0.043", "10-11 11", null, "9.1"],
      [12, "0.050", "10-11 12", null, "10.2"],
      [13, "0.045", "10-11 13", null, "11.0"],
      [14, "0.029", "10-11 14", null, "12.0"],
      [15, "0.005", "10-11 15", null, "16.9"],
      [16, "0.019", "10-11 16", null, "190.8"],
      [17, "0.037", "10-11 17", null, "192.3"],
      [18, "0.046", "10-11 18", null, "193.5"],
      [19, "0.043", "10-11 19", null, "195.2"],
      [20, "0.028", "10-11 20", null, "198.6"],
      [21, "0.008", "10-11 21", null, "220.5"],
      [22, "0.016", "10-11 22", null, "359.9"],
      [23, "0.034", "10-11 23", null, "7.9"]
   ],
   "xMaxVal": 24,
   "xInterval": 6,
   "showSymbol": true,
   "showDataZoom": false,
   "dataZoomEndVlaue": 100
};
var max_speed = 0,
   min_speed = 0;
if (yData) {
   var sData = yData.map((el) => el[1]);
   var max_speed = Math.max(...sData);
   var min_speed = Math.min(...sData);
}
var ynames = yUnit ? yUnit.split("\n") : [];
var ynames2 = yUnit2 ? yUnit2.split("\n") : [];

// if (myChart.getAttribute("_echarts_instance_")) {
//    myChart.removeAttribute("_echarts_instance_");
// }
// 绘制图表
let option = {
   backgroundColor: '#081736',
   grid: {
      left: 80,
      right: 25,
      top: 45,
      bottom: 65
   },
   toolbox: {
      iconStyle: {
         borderColor: "#ffffff"
      },
      right: "18",
      feature: {
         saveAsImage: {
            show: true,
            backgroundColor: "#010313"
         }
      }
   },
   tooltip: {
      show: true,
      trigger: "axis", // item
      formatter: (params) => {
         let name = yUnit;
         name = name.replace(/\n/g, "");
         let i = name.indexOf("(");
         let str = "";
         if (yUnit2) {
            str = params[0].data[2] + "<br/>";
            params.forEach((el) => {
               var { seriesName, data, marker } = el;
               // marker = "";
               var current = seriesName == "水位";
               var unit = current ? ynames[3] : ynames2[3];
               var strC = marker + seriesName + ":" + data[current ? 1 : data.length - 1] + " " + unit;
               if (seriesName == "峰值") {
                  strC = marker + data[data.length - 2] + seriesName;
               }
               if (seriesName == "流速") {
                  var angle = data[4];
                  var NewAng = 11.25 + Number(angle);
                  var Angle = 360 / zData.length;
                  var count = Math.floor(NewAng / Angle);
                  var residue = angle % Angle;
                  var dirction = zData[count > zData.length - 1 ? 0 : count];
                  strC += "<br/>" + marker + "流向:" + dirction + angle + " °";
               }
               str += strC + "<br/>";
            });
            return str;
         } else {
            str = params[0].marker + params[0].data[2] + "<br/>" + name + ":" + params[0].data[1];
         }
         if (i != -1) {
            str =
               params[0].marker +
               params[0].data[2] +
               "<br/>" +
               name.slice(0, i) +
               ": " +
               params[0].data[1] +
               name.slice(i);
         }
         if (showSymbol && params[0].data[4]) {
            str += "<br/>" + "流向:" + params[0].data[4] + "(°)";
         }
         return str;
      }
   },
   xAxis: {
      type: "value",
      name: xUnit,
      nameGap: 22,
      min: 0,
      nameLocation: "center",
      boundaryGap: false,
      nameTextStyle: {
         fontSize: 14,
         color: "#ffffff"
      },
      axisLabel: {
         fontSize: 14,
         color: "#ffffff",
         interval: interval ? interval : "auto"
      },
      splitLine: {
         show: true,
         lineStyle: {
            color: "#707070"
         }
      },

      max: xMaxVal,
      interval: xInterval
   },
   dataZoom: [
      {
         type: "inside",
         zoomLock: true,
         start: 0,
         show: showDataZoom ? showDataZoom : false,
         end: dataZoomEndVlaue ? dataZoomEndVlaue : 100
      },
      {
         show: showDataZoom ? showDataZoom : false,
         start: 0,
         end: dataZoomEndVlaue ? dataZoomEndVlaue : 100,
         height: 12,
         bottom: 10,
         zoomLock: true,
         moveHandleSize: 0,
         brushSelect: false,
         textStyle: {
            fontSize: 0
         }
      }
   ],
   yAxis: [
      {
         type: "value",
         name: yUnit,
         nameGap: 58,
         nameRotate: 360,
         nameLocation: "middle",
         nameTextStyle: {
            fontSize: 14,
            color: "#ffffff",
            align: "center"
         },
         axisTick: {
            show: false
         },
         axisLabel: {
            fontSize: 14,
            color: "#ffffff"
         },
         splitLine: {
            show: true,
            lineStyle: {
               color: "#707070"
            }
         },
         axisLine: {
            lineStyle: {
               color: "#707070"
            }
         },
         scale: true
      }
   ],
   series: [
      {
         dimensions: ["distanceX", "valueY", "time", "showSymbol"],
         encode: {
            x: "distanceX", // 默认 x轴
            y: "valueY", // 默认 y 轴
            unit: "unit", // 单位 自定义的数据, 可用于 formatter
            time: "time",
            tooltip: ["time"]
         },
         data: yData,
         // data: [
         //     [0, '0.48', '2021-08-23 13:56'],
         //     [1, '0.42', '2021-08-23 13:56'],
         //     [1.5, '0.42',  '2021-08-23 13:32'],
         //     [2.5, '0.38582', '2021-08-23 13:56'],
         //     [3, '0.36861',  '2021-08-23 13:57'],
         //     [4, '0.35983',  '2021-08-23 13:57'],
         //     [5, '0.49812',  '2021-08-23 13:57'],
         //     [6, '0.49812',  '2021-08-23 13:57'],
         //     [7, '0.41282',  '2021-08-23 13:57'],
         //     [8, '0.42099',  '2021-08-23 13:57'],
         // ],
         type: "line",
         smooth: true,
         showSymbol: true,
         symbol: !showSymbol
            ? "image://data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAALJJREFUWEftlMENwjAMRZ/TBToKTAAbkBFgBBYoEV2AEWCDMAks1AS1UiUO4eBcIiTnbOU/PzsRGh9pnI8BmAEzYAbMQLWBHPyGxA7ocTwlxHfNt14FkAYfgcN3YM7cuzGetBBqgLnznHiVgsSx1ZpQA0yDDwKXIkDmLGO8aSz8H0DzEcx6i0sIj+4ajxr9c616BGvA8gwn9knonSNql2+9pxpA2+mvegMwA2bADJiB5gY+vcE0IYrxloQAAAAASUVORK5CYII="
            : "image://data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALkAAAC4CAYAAAC/8U35AAAACXBIWXMAAAsTAAALEwEAmpwYAAA7V2lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS41LWMwMTQgNzkuMTUxNDgxLCAyMDEzLzAzLzEzLTEyOjA5OjE1ICAgICAgICAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczpwaG90b3Nob3A9Imh0dHA6Ly9ucy5hZG9iZS5jb20vcGhvdG9zaG9wLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOnRpZmY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vdGlmZi8xLjAvIgogICAgICAgICAgICB4bWxuczpleGlmPSJodHRwOi8vbnMuYWRvYmUuY29tL2V4aWYvMS4wLyI+CiAgICAgICAgIDx4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+eG1wLmRpZDplMWUxZmI2OC0xOTZkLTE0NDMtOWViNi0yODY3NmY5OGE0ZTA8L3htcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDo0NTdFRThFQjU2N0IxMUVDOTg5NzgxRTAzQThEMUVFNDwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOkluc3RhbmNlSUQ+eG1wLmlpZDo4ZWJkN2YwNy0zMWQ2LTUzNGMtOTQyNi0yNTUxNDcyNGU5ZGY8L3htcE1NOkluc3RhbmNlSUQ+CiAgICAgICAgIDx4bXBNTTpEZXJpdmVkRnJvbSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgIDxzdFJlZjppbnN0YW5jZUlEPnhtcC5paWQ6ZTFlMWZiNjgtMTk2ZC0xNDQzLTllYjYtMjg2NzZmOThhNGUwPC9zdFJlZjppbnN0YW5jZUlEPgogICAgICAgICAgICA8c3RSZWY6ZG9jdW1lbnRJRD54bXAuZGlkOmUxZTFmYjY4LTE5NmQtMTQ0My05ZWI2LTI4Njc2Zjk4YTRlMDwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgPC94bXBNTTpEZXJpdmVkRnJvbT4KICAgICAgICAgPHhtcE1NOkhpc3Rvcnk+CiAgICAgICAgICAgIDxyZGY6U2VxPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjdjN2FjODljLTcxZWEtMDk0NS05ZDhmLWNiNTcxMGU2MTg0Nzwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAyMS0xMi0wN1QxMDoxMToyMyswODowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6OGViZDdmMDctMzFkNi01MzRjLTk0MjYtMjU1MTQ3MjRlOWRmPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDIxLTEyLTA3VDEwOjExOjM0KzA4OjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgPC9yZGY6U2VxPgogICAgICAgICA8L3htcE1NOkhpc3Rvcnk+CiAgICAgICAgIDx4bXA6Q3JlYXRvclRvb2w+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwveG1wOkNyZWF0b3JUb29sPgogICAgICAgICA8eG1wOkNyZWF0ZURhdGU+MjAyMS0xMi0wN1QxMDowODoyNiswODowMDwveG1wOkNyZWF0ZURhdGU+CiAgICAgICAgIDx4bXA6TW9kaWZ5RGF0ZT4yMDIxLTEyLTA3VDEwOjExOjM0KzA4OjAwPC94bXA6TW9kaWZ5RGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAyMS0xMi0wN1QxMDoxMTozNCswODowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9wbmc8L2RjOmZvcm1hdD4KICAgICAgICAgPHBob3Rvc2hvcDpDb2xvck1vZGU+MzwvcGhvdG9zaG9wOkNvbG9yTW9kZT4KICAgICAgICAgPHRpZmY6T3JpZW50YXRpb24+MTwvdGlmZjpPcmllbnRhdGlvbj4KICAgICAgICAgPHRpZmY6WFJlc29sdXRpb24+NzIwMDAwLzEwMDAwPC90aWZmOlhSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpZUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WVJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOlJlc29sdXRpb25Vbml0PjI8L3RpZmY6UmVzb2x1dGlvblVuaXQ+CiAgICAgICAgIDxleGlmOkNvbG9yU3BhY2U+NjU1MzU8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjE4NTwvZXhpZjpQaXhlbFhEaW1lbnNpb24+CiAgICAgICAgIDxleGlmOlBpeGVsWURpbWVuc2lvbj4xODQ8L2V4aWY6UGl4ZWxZRGltZW5zaW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKPD94cGFja2V0IGVuZD0idyI/PiCOb8YAAAAgY0hSTQAAeiUAAICDAAD5/wAAgOkAAHUwAADqYAAAOpgAABdvkl/F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",
         symbolKeepAspect: true,
         symbolSize: showSymbol ? ["56", "40"] : ["20", "20"],
         showAllSymbol: true,
         symbolRotate: (value, params) => 360 - value[4],
         lineStyle: {
            color: "#63f206",
            width: 3.5
         },
         emphasis: {
            lineStyle: {
               width: 3.5
            }
         }
      }
   ],
   color: ["#63f206"]
};
if (yMax && yMax == 360) {
   option.yAxis["interval"] = yInterval;
   option.yAxis["max"] = yMax;
   option.yAxis["min"] = yMin;
}
if (yData3 && yData3.length > 0) {
   option.series[0] = {
      dimensions: ["distanceX", "valueY", "time", "showSymbol"],
      encode: {
         x: "distanceX", // 默认 x轴
         y: "valueY", // 默认 y 轴
         unit: "unit", // 单位 自定义的数据, 可用于 formatter
         time: "time",
         tooltip: ["time"]
      },
      name: ynames[0] + ynames[1],
      unit: ynames[3],
      data: yData,
      type: "line",
      smooth: true,
      lineStyle: {
         width: 3.5
      },
      emphasis: {
         lineStyle: {
            width: 3.5
         }
      }
   };
   option.visualMap = {
      // yInterval: 0,
      show: false,
      type: "piecewise", // continuous
      dimension: 1,
      calculable: true,
      realtime: false,
      inRange: {
         color: ["#313695", "#a50026"]
      },
      pieces: [
         { gt: min_speed, lt: 0, color: "#F53137" },
         { gte: 0, lte: 0, color: "#409EFF" },
         { gt: 0, lt: max_speed, color: "#1E7EFB" }
      ]
   };
   option.yAxis.push({
      show: false,
      type: "value",
      name: yUnit2,
      nameGap: 58,
      nameRotate: 360,
      nameLocation: "middle",
      nameTextStyle: {
         fontSize: 14,
         color: "#ffffff",
         align: "left",
         padding: [0, 0, 0, 10]
      },
      axisTick: {
         show: false
      },
      axisLabel: {
         fontSize: 14,
         color: "#ffffff"
      },
      splitLine: {
         show: false
      },
      axisLine: {
         show: true
      }
   });
   option.series.push({
      name: ynames2[0] + ynames2[1],
      unit: ynames2[3],
      dimensions: ["distanceX", "valueY", "time", "showSymbol"],
      encode: {
         x: "distanceX", // 默认 x轴
         y: "valueY", // 默认 y 轴
         unit: "unit", // 单位 自定义的数据, 可用于 formatter
         time: "time",
         tooltip: ["time"]
      },
      data: yData3.map((el) => {
         var val = [...el];
         val.push(el[1]);
         val[1] = 0;
         return val;
      }),
      lineStyle: {
         width: 0
      },
      itemStyle: {
         color: "#ff7e4f"
      },
      emphasis: {
         lineStyle: {
            width: 0
         }
      },
      type: "line",
      smooth: true,
      showSymbol: true,
      symbolKeepAspect: true,
      symbolSize: (value, params) => {
         var sData = yData3.map((el) => el[1]);
         var max = Math.max(...sData);
         var idx = params.dataIndex;
         // var val = yData3[idx][1];
         var val = value[value.length - 1];
         var pre = val / max;
         var w = pre * 30,
            h = pre * 30;
         // return [50 + w, 40 + h];
         return [40, 40 + h];
      },
      showAllSymbol: true,
      symbolRotate: (value, params) => 360 - value[value.length - 2],
      symbol: "image://data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAYAAABw4pVUAAAABHNCSVQICAgIfAhkiAAAAxxJREFUeF7tmoFR40AMRc8VHB0AHUAFQAdcB1DB0QGhA6gAOoAO4CqADuA6uKsgaBmbWTILyMHRfIWXmUwyQbHk96yVN0P3Y00e8/n8vOu6k+yn02U/gVK/yTiyl0t7HpuUq8znlF6IydgwAY/2LK//7LltUsprysc6CDk38r8r+heZl67UQqw7dkzEfaMVdk3KQ8YWyS7kzqDvNcDfmZADhAQSqAb5kLUIuK1KSDngU3bIwiAvDs6sI2b2+czen/ZSUg74rELqQf7XBOyUO6teVJkdm72UdAM+nZDGIP9lMm6Gpcr+fmjvr6ulK9WAzyikHuR/TMb+4ugyKXVMqgGfSkhjkJdN4FNDyJZ9VjaLw+NNFwXee4xOlUZIPx/KnqPAfh3k751x+W3L/jZsGIu0snTJ7+AzCZkZ1OEO6n8R8xHgXmAR8dMjcPSlvKIvpBBicBeXINcew7vErYjtUofNIqQe0s1B/sHSVX9XfsDLC/nqbexnt8lLXcYr/JK0kMYgX2qjl2nAqwupB/mU1+XLTy1THnCqY8kKaQzyqc55OE5zDzN1krHHUxZSD+Ox5+WJlxzwskI8RIcY66b58N6WotTnlLp4hIy5bANj6ZBA2J5UCPFQCoxBSCBsTyqEeCgFxiAkELYnFUI8lAJjEBII25MKIR5KgTEICYTtSYUQD6XAGIQEwvakQoiHUmAMQgJhe1IhxEMpMAYhgbA9qRDioRQYg5BA2J5UCPFQCoxBSCBsTyqEeCgFxiAkELYnFUI8lAJjEBII25MKIR5KgTEICYTtSYUQD6XAGIQEwv5uqdbin63XSRpCxGwiBCFiBMTKoUMQIkZArBw6BCFiBMTKoUMQIkZArBw6BCFiBMTKoUMQIkZArBw6BCFiBMTKoUMQIkZArBw6BCFiBMTKoUMQIkZArBw6BCFiBMTKoUMQIkZArBw6BCFiBMTKoUMQIkZArBw6BCFiBMTKoUMQIkZArBw6BCFiBMTKoUMQIkZArBw6BCFiBMTKoUMQIkZArBw6BCFiBMTKoUMQIkZArBw6BCFiBMTKoUPEhDwDDggadEytsOUAAAAASUVORK5CYII="
      // symbol: img
   });
}
if (yData2 && yData2.length > 0) {
   //水速-单点信息-时段信息--最大最小值加点
   option.series.push({
      dimensions: ["distanceX", "valueY", "time", "showSymbol"],
      encode: {
         x: "distanceX", // 默认 x轴
         y: "valueY", // 默认 y 轴
         unit: "unit", // 单位 自定义的数据, 可用于 formatter
         time: "time",
         tooltip: ["time"]
      },
      name: "峰值",
      // yAxisIndex: yUnit2 ? 1 : 0,
      unit: yUnit2 ? ynames2[3] : ynames[3],
      data: yUnit2
         ? yData2.map((el) => {
            var val = [...el];
            val.push(el[1]);
            val[1] = 0;
            return val;
         })
         : yData2,
      type: "line",
      smooth: true,
      showSymbol: true,
      // symbolSize: function (value, params) {
      //     let size = 0;
      //     if (value[3]) {
      //         size = 4;
      //     }
      //     return size;
      // },
      symbolSize: (value, params) => {
         var sData = yData3.map((el) => el[1]);
         var max = Math.max(...sData);
         var min = Math.min(...sData);
         var idx = params.dataIndex;
         var val = yData3[idx][1];
         let size = 0;
         var pre = val / max;
         var w = pre * 20,
            h = pre * 20;
         // return [50 + w, 40 + h];
         if (value[3]) {
            size = 5;
         }
         return size;
      },
      itemStyle: {
         color: "#409EFF"
      },
      lineStyle: {
         color: "transparent",
         width: 0
      },
      emphasis: {
         lineStyle: {
            color: "transparent",
            width: 0
         }
      }
   });
}