{
- this.$nextTick(() => {
- var myChart = echarts.init(document.getElementById("nucleusThrough"));
+ methods: {
+ init(){
+ this.dateTime = new Date();
+ this.bindEventTypePublishManageMonth();
+ },
+ bindEventTypePublishManageMonth(){
+ request({
+ url: `/business/manage/eventTypePublishManageMonth`,
+ method: "post",
+ data: {publishTime:moment(this.dateTime).format('YYYY-MM-DD HH:mm:ss')},
+ })
+ .then((result) => {
+ if (result.code != 200) return;
+ const total = [0,0,0,0,0,0,0];
+ result.data.forEach(e => {
+ total[e.publishChannels-1] = total[e.publishChannels-1] + e.number
+ });
+ const data = [[],[],[],[],[],[],[]]
+ result.data.forEach(e => {
+ data[e.publishChannels-1].push(total[e.publishChannels-1] ? e.number/total[e.publishChannels-1]:0)
+ });
+ chartsStatistics.series.forEach((e,i) => {
+ e.data = data[i]
+ });
+ var myChart = echarts.init(document.getElementById("nucleusThrough"));
myChart.setOption(chartsStatistics);
- });
- });
+ // let sdata = [[],[],[],[],[],[],[]]
+ // for(let i of result.data){
+ // sdata[i.publishChannels-1].push(i.number)
+ // }
+ // chartsStatistics.series.forEach((e,i) => {
+ // e.data = sdata[i]
+ // });
+ // var myChart = echarts.init(document.getElementById("postTrendsMonth"));
+ // myChart.setOption(chartsStatistics);
+ })
+ },
+ },
+ mounted() {
+
+ this.init();
+ // setTimeout(() => {
+ // this.$nextTick(() => {
+ // var myChart = echarts.init(document.getElementById("nucleusThrough"));
+ // myChart.setOption(chartsStatistics);
+ // });
+ // });
},
};
@@ -147,7 +187,7 @@ export default {
}
.charts {
- height: 300px;
+ height: 100%;
width: 100%;
}
diff --git a/ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/components/nucleusThroughLine/assets/charts3.js b/ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/components/nucleusThroughLine/assets/charts3.js
new file mode 100644
index 00000000..9676e228
--- /dev/null
+++ b/ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/components/nucleusThroughLine/assets/charts3.js
@@ -0,0 +1,305 @@
+import * as echarts from "echarts";
+
+let xData = [
+ "1月",
+ "2月",
+ "3月",
+ "4月",
+ "5月",
+ "6月",
+ "7月",
+ "8月",
+ "9月",
+ "10月",
+ "11月",
+ "12月",
+];
+let data1 = [200, 530, 920, 400, 600, 700, 300, 800, 900, 120, 570, 800];
+let data2 = [120, 340, 750, 600, 400, 700, 900, 200, 540, 320, 370, 500];
+let data3 = [200, 530, 920, 400, 600, 700, 300, 800, 900, 120, 570, 800];
+let options = {
+ tooltip: {
+ show: true,
+ trigger: "axis",
+ valueFormatter: function (value) {
+ return value + " 起";
+ },
+ },
+ grid: {
+ left: "0",
+ right: "0",
+ top: "80px",
+ bottom: "25px",
+ containLabel: true,
+ },
+ xAxis: {
+ data: xData,
+ show: true,
+ axisTick: {
+ show: false,
+ lineStyle: {
+ color: "#fff",
+ },
+ },
+ axisLine: {
+ lineStyle: {
+ color: "#2CC9EC",
+ },
+ },
+ axisLabel: {
+ interval: 0,
+ align: "center",
+ rotate: "1",
+ margin: "20",
+ textStyle: {
+ fontSize: 10,
+ color: "#fff",
+ },
+ },
+ },
+ yAxis: [
+ {
+ name: "(起)",
+ nameTextStyle: {
+ color: "#fff",
+ fontSize: 10,
+ align: "right",
+ verticalAlign: "center",
+ },
+ axisLine: {
+ lineStyle: {
+ color: "#1D7B93",
+ },
+ },
+ splitLine: {
+ show: true,
+ lineStyle: {
+ color: "rgba(28, 130, 197, .3)",
+ type: "solid",
+ },
+ },
+ axisLabel: {
+ color: "#fff",
+ textStyle: {
+ fontSize: 10,
+ },
+ },
+ axisTick: {
+ show: false,
+ },
+ },
+ ],
+ legend: {
+ // orient: 'vertical',
+ icon: "circle",
+ itemHeight: 8,
+ itemWidth: 8,
+ top: "5%",
+ right: "10%",
+ textStyle: {
+ color: "#fff",
+ },
+
+ data: [
+ {
+ name: "审核通过",
+ itemStyle: {
+ color: "#08BAF4",
+ },
+ },
+ {
+ name: "待审核",
+ itemStyle: {
+ color: "#51BFA4",
+ },
+ },
+ {
+ name: "审核不通过",
+ itemStyle: {
+ color: "#E2BA74",
+ },
+ },
+ ],
+ },
+ series: [
+ {
+ name: "审核通过",
+ type: "bar",
+ barWidth: "10px",
+ selectedMode: false,
+ select: {
+ itemStyle: {
+ opacity: 1,
+ color: function (params) {
+ var a = params;
+
+ return new echarts.graphic.LinearGradient(
+ 0,
+ 0,
+ 0,
+ 1,
+ [
+ {
+ offset: 0,
+ color: "#1AC5FD", // 0% 处的颜色
+ },
+ {
+ offset: 1,
+ color: "#08BAF4", // 100% 处的颜色
+ },
+ ],
+ false
+ );
+ },
+ },
+ },
+ itemStyle: {
+ // lenged文本
+ opacity: 0.9,
+ color: function (params) {
+ var a = params.name;
+ // console.log("==========a=============",a);
+ return new echarts.graphic.LinearGradient(
+ 0,
+ 0,
+ 0,
+ 1,
+ [
+ {
+ offset: 0,
+ color: "#1AC5FD", // 0% 处的颜色
+ },
+ {
+ offset: 1,
+ color: "#003B4E", // 100% 处的颜色
+ },
+ ],
+ false
+ );
+ },
+ },
+ data: data2,
+ },
+ // 下半截柱状图linear-gradient(180deg, #61D8FF 0%, #003B4E 100%); linear-gradient(180deg, #06D7B1 0%, #003B4E 100%)
+ {
+ name: "待审核",
+ type: "bar",
+ barWidth: "10px",
+ barGap: "120%",
+ selectedMode: false,
+ select: {
+ itemStyle: {
+ opacity: 1,
+ color: function (params) {
+ var a = params;
+
+ return new echarts.graphic.LinearGradient(
+ 0,
+ 0,
+ 0,
+ 1,
+ [
+ {
+ offset: 0,
+ color: "#00E4BB53", // 0% 处的颜色
+ },
+ {
+ offset: 1,
+ color: "#51BFA4", // 100% 处的颜色
+ },
+ ],
+ false
+ );
+ },
+ },
+ },
+ itemStyle: {
+ // lenged文本
+ opacity: 0.9,
+ color: function (params) {
+ var a = params.name;
+ // console.log("==========a=============",a);
+ return new echarts.graphic.LinearGradient(
+ 0,
+ 0,
+ 0,
+ 1,
+ [
+ {
+ offset: 0,
+ color: "#00E4BB", // 0% 处的颜色
+ },
+ {
+ offset: 1,
+ color: "#00E4BB00", // 100% 处的颜色
+ },
+ ],
+ false
+ );
+ },
+ },
+ data: data1,
+ },
+
+ {
+ name: "审核不通过",
+ type: "bar",
+ barWidth: "10px",
+ selectedMode: false,
+ select: {
+ itemStyle: {
+ opacity: 1,
+ color: function (params) {
+ var a = params;
+
+ return new echarts.graphic.LinearGradient(
+ 0,
+ 0,
+ 0,
+ 1,
+ [
+ {
+ offset: 0,
+ color: "#1AC5FD", // 0% 处的颜色
+ },
+ {
+ offset: 1,
+ color: "#E2BA74", // 100% 处的颜色
+ },
+ ],
+ false
+ );
+ },
+ },
+ },
+ itemStyle: {
+ // lenged文本
+ opacity: 0.9,
+ color: function (params) {
+ var a = params.name;
+ // console.log("==========a=============",a);
+ return new echarts.graphic.LinearGradient(
+ 0,
+ 0,
+ 0,
+ 1,
+ [
+ {
+ offset: 0,
+ color: "#FCBE39", // 0% 处的颜色
+ },
+ {
+ offset: 1,
+ color: "#FCBE3900", // 100% 处的颜色
+ },
+ ],
+ false
+ );
+ },
+ },
+ data: data2,
+ },
+ ],
+};
+
+export default options;
diff --git a/ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/components/nucleusThroughLine/index.vue b/ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/components/nucleusThroughLine/index.vue
new file mode 100644
index 00000000..a2f5215d
--- /dev/null
+++ b/ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/components/nucleusThroughLine/index.vue
@@ -0,0 +1,153 @@
+
+
+
+
+
+
+
diff --git a/ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/components/postTrendsDay/assets/charts.js b/ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/components/postTrendsDay/assets/charts.js
index e33b1f3d..0f33f352 100644
--- a/ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/components/postTrendsDay/assets/charts.js
+++ b/ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/components/postTrendsDay/assets/charts.js
@@ -1,17 +1,29 @@
/* 数据 */
let nameList = [
"00:00",
+ "01:00",
"02:00",
+ "03:00",
"04:00",
+ "05:00",
"06:00",
+ "07:00",
"08:00",
+ "09:00",
"10:00",
+ "11:00",
"12:00",
+ "13:00",
"14:00",
+ "15:00",
"16:00",
+ "17:00",
"18:00",
+ "19:00",
"20:00",
+ "21:00",
"22:00",
+ "23:00",
]; // 类别
let valueList = [
800, 520, 650, 950, 420, 600, 450, 720, 303, 503, 203, 703, 903,
@@ -133,7 +145,7 @@ var options = {
],
series: [
{
- name: "情报板发布",
+ name: "手机短信",
type: "line",
symbol: "circle",
symbolSize: 0,
@@ -148,26 +160,23 @@ var options = {
x2: 0,
y2: 1,
colorStops: [
- { offset: 0.389, color: "#32BB8A90" },
- { offset: 1, color: "#32BB8A00" },
+ { offset: 0.389, color: "#51BFA490" },
+ { offset: 1, color: "#51BFA400" },
],
global: false,
},
},
// yAxisIndex: 1, // 与第二个 y 轴关联
itemStyle: {
- color: "#32BB8A",
+ color: "#51BFA4",
},
lineStyle: {
width: 2,
},
-
- data: [
- 1000, 800, 520, 600, 900, 700, 700, 1000, 800, 520, 600, 900, 700, 700,
- ], // 折线图的数据
+ data: [],
},
{
- name: "服务网站",
+ name: "微信公众号",
type: "line",
symbol: "circle",
symbolSize: 0,
@@ -196,12 +205,10 @@ var options = {
global: false,
},
},
- data: [
- 600, 700, 900, 400, 500, 800, 600, 600, 700, 900, 400, 500, 800, 600,
- ], // 折线图的数据
+ data: [],
},
{
- name: "微信发布",
+ name: "微博",
type: "line",
symbol: "circle",
symbolSize: 0,
@@ -229,20 +236,76 @@ var options = {
lineStyle: {
width: 2,
},
- data: [
- 850, 810, 712, 580, 480, 480, 780, 850, 810, 712, 580, 480, 480, 780,
- ], // 折线图的数据
+ data: [],
},
{
- name: "微博发布",
+ name: "情报板",
type: "line",
symbol: "circle",
symbolSize: 0,
// yAxisIndex: 1, // 与第二个 y 轴关联
itemStyle: {
- color: "#51BFA4",
+ color: "#FB6D07",
+ },
+ smooth: true,
+ areaStyle: {
+ width: 4,
+ opacity: 0.25,
+ color: {
+ type: "linear",
+ x: 0,
+ y: 0,
+ x2: 0,
+ y2: 1,
+ colorStops: [
+ { offset: 0.389, color: "#FB6D0799" },
+ { offset: 1, color: "#FB6D0700" },
+ ],
+ global: false,
+ },
+ },
+ lineStyle: {
+ width: 2,
+ },
+ data: [],
+ },
+ {
+ name: "服务网站",
+ type: "line",
+ symbol: "circle",
+ symbolSize: 0,
+ // yAxisIndex: 1, // 与第二个 y 轴关联
+ itemStyle: {
+ color: "#07DEFB",
},
smooth: true,
+ areaStyle: {
+ width: 4,
+ opacity: 0.25,
+ color: {
+ type: "linear",
+ x: 0,
+ y: 0,
+ x2: 0,
+ y2: 1,
+ colorStops: [
+ { offset: 0.389, color: "#07DEFB90" },
+ { offset: 1, color: "#07DEFB00" },
+ ],
+ global: false,
+ },
+ },
+ lineStyle: {
+ width: 2,
+ },
+ data: [],
+ },
+ {
+ name: "微信小程序",
+ type: "line",
+ symbol: "circle",
+ symbolSize: 0,
+ smooth: true,
areaStyle: {
width: 4,
opacity: 0.25,
@@ -259,22 +322,28 @@ var options = {
global: false,
},
},
+ // yAxisIndex: 1, // 与第二个 y 轴关联
+ itemStyle: {
+ color: "#51BFA4",
+ },
lineStyle: {
width: 2,
},
- data: [
- 850, 810, 712, 580, 480, 480, 780, 850, 810, 712, 580, 480, 480, 780,
- ], // 折线图的数据
+ data: [],
},
{
- name: "短信发布",
+ name: "语音广播",
type: "line",
symbol: "circle",
symbolSize: 0,
+
// yAxisIndex: 1, // 与第二个 y 轴关联
itemStyle: {
color: "#08BAF4",
},
+ lineStyle: {
+ width: 2,
+ },
smooth: true,
areaStyle: {
width: 4,
@@ -292,12 +361,7 @@ var options = {
global: false,
},
},
- lineStyle: {
- width: 2,
- },
- data: [
- 850, 410, 712, 680, 50, 280, 480, 850, 810, 712, 580, 480, 480, 780,
- ], // 折线图的数据
+ data: [],
},
],
};
diff --git a/ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/components/postTrendsDay/index.vue b/ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/components/postTrendsDay/index.vue
index 788cd6ed..2f4af1bc 100644
--- a/ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/components/postTrendsDay/index.vue
+++ b/ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/components/postTrendsDay/index.vue
@@ -11,6 +11,7 @@
import WgtTitle from "@screen/pages/perception/widgets/title";
import * as echarts from "echarts";
import chartsStatistics from "./assets/charts";
+import request from "@/utils/request";
export default {
name: 'RailWayDay',
components: {
@@ -26,15 +27,35 @@ export default {
},
methods: {
-
+ bindTrendsPublishManage(){
+ request({
+ url: `/business/manage/trendsPublishManage`,
+ method: "post",
+ data: {},
+ })
+ .then((result) => {
+ if (result.code != 200) return;
+ // console.log(result,'-----------------')
+ let sdata = [[],[],[],[],[],[],[]]
+ for(let i of result.data){
+ sdata[i.publishChannels-1].push(i.number)
+ }
+ chartsStatistics.series.forEach((e,i) => {
+ e.data = sdata[i]
+ });
+ var myChart = echarts.init(document.getElementById("postTrendsDay"));
+ myChart.setOption(chartsStatistics);
+ })
+ },
},
mounted() {
- setTimeout(() => {
- this.$nextTick(() => {
- var myChart = echarts.init(document.getElementById('postTrendsDay'));
- myChart.setOption(chartsStatistics);
- });
- });
+ this.bindTrendsPublishManage();
+ // setTimeout(() => {
+ // this.$nextTick(() => {
+ // var myChart = echarts.init(document.getElementById('postTrendsDay'));
+ // myChart.setOption(chartsStatistics);
+ // });
+ // });
},
}
diff --git a/ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/components/postTrendsMonth/assets/charts.js b/ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/components/postTrendsMonth/assets/charts.js
index 1b52e691..090f6794 100644
--- a/ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/components/postTrendsMonth/assets/charts.js
+++ b/ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/components/postTrendsMonth/assets/charts.js
@@ -1,22 +1,33 @@
/* 数据 */
let nameList = [
"00:00",
+ "01:00",
"02:00",
+ "03:00",
"04:00",
+ "05:00",
"06:00",
+ "07:00",
"08:00",
+ "09:00",
"10:00",
+ "11:00",
"12:00",
+ "13:00",
"14:00",
+ "15:00",
"16:00",
+ "17:00",
"18:00",
+ "19:00",
"20:00",
+ "21:00",
"22:00",
+ "23:00",
]; // 类别
let valueList = [
800, 520, 650, 950, 420, 600, 450, 720, 303, 503, 203, 703, 903, 903,
]; // 人数
-var yList = ["1000", "800", "轻度拥堵", "基本畅通", "畅通"];
/* 数据整合 */
let dataList = [];
nameList.map((item, index) => {
@@ -81,7 +92,7 @@ var options = {
top: "80px", //上边距
right: "0", //右边距
left: "0", //左边距
- bottom: "10px", //下边距
+ bottom: "20px", //下边距
containLabel: true,
},
xAxis: {
@@ -134,7 +145,7 @@ var options = {
],
series: [
{
- name: "情报板发布",
+ name: "手机短信",
type: "line",
symbol: "circle",
symbolSize: 0,
@@ -162,11 +173,10 @@ var options = {
lineStyle: {
width: 2,
},
-
- data: [1000, 800, 520, 600, 900, 700, 700, 1000, 800, 520, 600, 900], // 折线图的数据
+ data: [],
},
{
- name: "服务网站",
+ name: "微信公众号",
type: "line",
symbol: "circle",
symbolSize: 0,
@@ -195,10 +205,10 @@ var options = {
global: false,
},
},
- data: [600, 700, 900, 400, 500, 800, 600, 600, 700, 900, 400, 500], // 折线图的数据
+ data: [],
},
{
- name: "微信发布",
+ name: "微博",
type: "line",
symbol: "circle",
symbolSize: 0,
@@ -226,10 +236,10 @@ var options = {
lineStyle: {
width: 2,
},
- data: [850, 810, 712, 580, 480, 480, 780, 850, 810, 712, 580, 480], // 折线图的数据
+ data: [],
},
{
- name: "微博发布",
+ name: "情报板",
type: "line",
symbol: "circle",
symbolSize: 0,
@@ -257,10 +267,10 @@ var options = {
lineStyle: {
width: 2,
},
- data: [850, 810, 712, 580, 480, 480, 780, 850, 810, 712, 580, 480], // 折线图的数据
+ data: [],
},
{
- name: "短信发布",
+ name: "服务网站",
type: "line",
symbol: "circle",
symbolSize: 0,
@@ -288,7 +298,70 @@ var options = {
lineStyle: {
width: 2,
},
- data: [850, 410, 712, 680, 50, 280, 480, 850, 810, 712, 580, 480], // 折线图的数据
+ data: [],
+ },
+ {
+ name: "微信小程序",
+ type: "line",
+ symbol: "circle",
+ symbolSize: 0,
+ smooth: true,
+ areaStyle: {
+ width: 4,
+ opacity: 0.25,
+ color: {
+ type: "linear",
+ x: 0,
+ y: 0,
+ x2: 0,
+ y2: 1,
+ colorStops: [
+ { offset: 0.389, color: "#51BFA490" },
+ { offset: 1, color: "#51BFA400" },
+ ],
+ global: false,
+ },
+ },
+ // yAxisIndex: 1, // 与第二个 y 轴关联
+ itemStyle: {
+ color: "#51BFA4",
+ },
+ lineStyle: {
+ width: 2,
+ },
+ data: [],
+ },
+ {
+ name: "语音广播",
+ type: "line",
+ symbol: "circle",
+ symbolSize: 0,
+
+ // yAxisIndex: 1, // 与第二个 y 轴关联
+ itemStyle: {
+ color: "#08BAF4",
+ },
+ lineStyle: {
+ width: 2,
+ },
+ smooth: true,
+ areaStyle: {
+ width: 4,
+ opacity: 0.25,
+ color: {
+ type: "linear",
+ x: 0,
+ y: 0,
+ x2: 0,
+ y2: 1,
+ colorStops: [
+ { offset: 0.389, color: "#08BAF490" },
+ { offset: 1, color: "#08BAF400" },
+ ],
+ global: false,
+ },
+ },
+ data: [],
},
],
};
diff --git a/ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/components/postTrendsMonth/index.vue b/ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/components/postTrendsMonth/index.vue
index 1b058b2c..bdef0ab3 100644
--- a/ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/components/postTrendsMonth/index.vue
+++ b/ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/components/postTrendsMonth/index.vue
@@ -17,9 +17,10 @@
size="mini"
class="btnSearch"
icon="el-icon-search"
+ @click="bindMonthTrendsPublishManage()"
>查询
- 重置
@@ -32,6 +33,8 @@
import WgtTitle from "@screen/pages/perception/widgets/title";
import * as echarts from "echarts";
import chartsStatistics from "./assets/charts";
+import request from "@/utils/request";
+import moment from "moment";
export default {
name: "postTrendsMonth",
components: {
@@ -44,14 +47,33 @@ export default {
},
created() {},
- methods: {},
+ methods: {
+ bindMonthTrendsPublishManage(){
+ request({
+ url: `/business/manage/monthTrendsPublishManage`,
+ method: "post",
+ data: {publishTime:moment(this.dateTime).format('YYYY-MM-DD HH:mm:ss')},
+ })
+ .then((result) => {
+ if (result.code != 200) return;
+ let sdata = [[],[],[],[],[],[],[]]
+ for(let i of result.data){
+ sdata[i.publishChannels-1].push(i.number)
+ }
+ chartsStatistics.series.forEach((e,i) => {
+ e.data = sdata[i]
+ });
+ var myChart = echarts.init(document.getElementById("postTrendsMonth"));
+ myChart.setOption(chartsStatistics);
+ })
+ },
+ init(){
+ this.dateTime = new Date();
+ this.bindMonthTrendsPublishManage();
+ }
+ },
mounted() {
- setTimeout(() => {
- this.$nextTick(() => {
- var myChart = echarts.init(document.getElementById("postTrendsMonth"));
- myChart.setOption(chartsStatistics);
- });
- });
+ this.init();
},
};
@@ -139,7 +161,7 @@ export default {
}
.charts {
- height: 300px;
+ height: 100%;
width: 100%;
}
diff --git a/ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/components/topComponent/assets/设备设施隐患.png b/ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/components/topComponent/assets/设备设施隐患.png
new file mode 100644
index 0000000000000000000000000000000000000000..35d501d64c3132cda39544f12c455bb2e5271f82
GIT binary patch
literal 2513
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
bZ+-j^`?3jhhFwCj00000NkvXXu0mjfH<8sn
literal 0
HcmV?d00001
diff --git a/ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/components/topComponent/assets/非法上路.png b/ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/components/topComponent/assets/非法上路.png
new file mode 100644
index 0000000000000000000000000000000000000000..17c4bb9cf432b6dd0ac38e3db2d2f195ba307224
GIT binary patch
literal 2436
zcmV-~348X5P)Px;K1oDDRA@uZntO0m)g8w_zkBzQ#Jn&-KtN;hQERjeq&~*!pySjI1Ht;}v{=w~
zw6-|4ia63%ZIA+WL>b3FJ=aIOI7
z8=oogeg(9!w?3@HA#!XG=YqHCP|bFX-hN7gGhZLe1o0E3Q#IUhWq;Dh1>YQf8DTHT
zNz+um>yF{Pg{YoKZB1>T%mMHlqH|ICHOQ@}g}WT9b*9aD33V1Rf9C7<@c{Uy=oW+*
z5%C|KmP4`i=4xtdt{DKoF?uz6xWWJlYVQ+-t05t1ehTAUK2FyOuL`S{<>@MiO2t
zj&T`3X({4d#G!+C;AogcBF2PCbsRaooQer^aD!jqqy4K!rG)Aq(e$^4rsy(+OA-0i
zNs*7MsFI13>(q6tNv0au{h!DEccx5RNj%obp%1rk?)i1N?kslwYd&S=lPNnh!Y4-}
zeA0e^$|)C6R=yZFa2fILHSFHqfQ%ppj6MKt6Plwhg6u%pFeG?&U8YW1KtbVR5SL`^
z5%%sGnC}KdR8Cq+PplCMcoY;=(|)9dvT_SLLU(7bt4x`89pS>IcwQ^*Z5hReGgRjw
zdZEz#*4v1)3V1)~{ZLUcWyP1_24~>7Ul!Mys@9*4?j_mtLe5-OkM{N!#*M2ZnQSDP
zXr;I`LcBXdID83?TX7sV*R3KHx)C%T7E23UGIDfL1PXSjQdpeS`aT`^bm|e-#W)Hilp#Cl#%_(L$Y*UPBdMk;X!X)}ld8Xem5;%rp3(qB-VgE-EUR7~hXHNoM7XQ3<>
z(Go?TL`^f|)b*NmIqKEoI@P4p4-yFe6!q4FHI&w)8us1J?n1WviM&QpNeiVVMRar|
ziFJJiW4?OSR_|cAE2rPeviu=1-$dN@e#3g{D@Dy?8KZNAapNDBsptGi#W~w|6=U9`
zb=Ml=-4}t|0-jBe%Sol@A>5hSDR~3ed9c^ibv{MX+mK_@^*}h+MWm4nFFr`P@J<95
zB}qK?EW6$>7B#o{0VcdbF!aNIe5w_o&kmk#;;}h+=@tGWj`KL@Uwo}N&UE!W%N&&B
z@HNuuXK3C13Yv-#3`Xcl)`D69nd+MH={E=jA4I)6#A(Dc;HByX3Hk2hNSXrs=J9i0nk9rT<|nQBEv&52_^;
zp79)$r#ua2Gsd)G%wF7J6>T3i5bu6~U{Qp0PbHqWF!O$H4gt1Md`2_f@s$LeM$#Un
z(l=$4q>X9Q_Y-t~Ks>%o4(wa16Dog6acMoC_dE9NnubzAAlN{0=|B&a=`O1?6&7aV
z$S;P>vElG0jOj$}99t2^rR~rR3X2*Eh4U*gnhw#?`2eM5KhMc*!QdQ3R$$CJI@-5V
zT0To0ccH=~BonU=ib?f8ly`-uzh8j_{(#80h6L}W7GU(gtZWe@7?__ECwW$vWk>J>wM<>t2Xw
z&c$_iQdIN;j@vb;{G6`R&anNwN*4~#jTxX%O^{l4qcGFY+wtm~H8}2i(3?LM9)d
zQEkHEMoWtioMD@zn?N?7u)7>f5F?SLG8;8tXMW9pqsNG(-><
zol;tRs2H&BqUL!V9zHQw*(acRtL-&rf}92{vDSmWOKpw4_Q@G1;pYj0e1`nIu0R+j
zKX3KxzZt>ajGWpXP%Q*`6k!B6BYm6W-$|8N7n+Oel2a1Imd?gMd2L{8$C8oVNo9MN
z4Py8WuoiV1J{1<(o{p3Sh%7=_I{MqdYy~oDbagMyY_I3nAUZZ|vVWv==Ae2z!gkWB
zyR*~bi3)Lk_prIUFc-r^2xlWSV$Yu=y#e>Q7StY0{);-1KHfdw&SCiA`y^-10k`|#
z9yshrc?aa*86f%*X#2po2U>!-_PV|bD^Sb*
zPy>1%$RyD5Szmp$gYN59bcatZl75|S@#tv3`uIPHI2&`_2GK$Q0000