Auto Submit

dev_local_v9_test5
autosubmit 2 years ago
parent 1d471c1c68
commit 23b82269bf

@ -27,7 +27,7 @@
display: block !important;
}
</style><script>if(document.domain !== "www.educoder.net") document.title = '';</script>
<script src="/react/build/umi.bec90d66.js"></script>
<script src="/react/build/umi.4cb0652d.js"></script>
<script src="/react/build/js/public.js"></script>
</body>
</html>

@ -320,7 +320,8 @@ var Navigation = function Navigation(_ref) {
use_status: useStatus,
status: status,
keyword: keyword,
classroom_id: laboratorySq
classroom_id: laboratorySq,
scrapped: 0
}).then(function (res) {
var _res$data3, _res$data4;
setTableData(res === null || res === void 0 || (_res$data3 = res.data) === null || _res$data3 === void 0 ? void 0 : _res$data3.list);

@ -97,7 +97,7 @@
top: 20px;
cursor: pointer;
}
.wrap___oFRcI .jbxx___aBQQs .jbxx_img_div___UQIZA {
.wrap___oFRcI .jbxx___aBQQs .jbxx_img_div1___BqgQX {
width: 190px;
height: 190px;
background: #FFEBEB;
@ -105,16 +105,52 @@
border: 1px solid #EE5D5D;
margin-left: 20px;
}
.wrap___oFRcI .jbxx___aBQQs .jbxx_img_text___VBqDS {
.wrap___oFRcI .jbxx___aBQQs .jbxx_img_div2___cZxdC {
width: 190px;
height: 190px;
border-radius: 8px;
margin-left: 20px;
background: #F7FFFD;
border: 1px solid #2EC25B;
}
.wrap___oFRcI .jbxx___aBQQs .jbxx_img_div3___D_loC {
width: 190px;
height: 190px;
border-radius: 8px;
margin-left: 20px;
background: #FCFCFC;
border: 1px solid #C7C7C7;
}
.wrap___oFRcI .jbxx___aBQQs .jbxx_img_text1___rtXDk {
width: 188px;
height: 32px;
line-height: 32px;
text-align: center;
background: linear-gradient(90deg, rgba(238, 93, 93, 0.3) 0%, #EE5D5D 50%, rgba(238, 93, 93, 0.3) 100%);
border-radius: 0px 0px 8px 8px;
margin-top: -32px;
margin-top: -34px;
color: #FFFFFF;
}
.wrap___oFRcI .jbxx___aBQQs .jbxx_img_text2___I_Hoa {
width: 188px;
height: 32px;
line-height: 32px;
text-align: center;
border-radius: 0px 0px 8px 8px;
margin-top: -34px;
color: #FFFFFF;
background: linear-gradient(90deg, rgba(91, 227, 148, 0.34) 0%, #2EC25B 46%, rgba(46, 194, 91, 0.5) 100%);
}
.wrap___oFRcI .jbxx___aBQQs .jbxx_img_text3___nGVmT {
width: 188px;
height: 32px;
line-height: 33px;
text-align: center;
border-radius: 0px 0px 8px 8px;
margin-top: -34px;
color: #FFFFFF;
background: linear-gradient(90deg, #F7F7F7 0%, #D6D6D6 51%, #F7F7F7 100%);
}
.wrap___oFRcI .jbxx___aBQQs .jbxx_content___uIUei .jbxx_content_list___CCMDz {
height: 24px;
line-height: 24px;
@ -239,6 +275,19 @@
margin-left: 10px;
font-style: normal;
}
.left_col___YRn_o {
margin-bottom: 20px;
display: flex;
}
.left_col___YRn_o .col_label___Xdrnh {
width: 130px;
}
.left_col___YRn_o .col_value___IAN3F {
width: 350px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
/*!*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** css ./node_modules/_css-loader@6.7.1@css-loader/dist/cjs.js??ruleSet[1].rules[5].oneOf[0].use[1]!./node_modules/_@umijs_bundler-webpack@4.2.3@@umijs/bundler-webpack/compiled/postcss-loader/index.js??ruleSet[1].rules[5].oneOf[0].use[2]!./node_modules/_@umijs_bundler-webpack@4.2.3@@umijs/bundler-webpack/compiled/less-loader/index.js??ruleSet[1].rules[5].oneOf[0].use[3]!./src/pages/Equipment/Working/GaugeChart/index.less?modules ***!

@ -147,10 +147,17 @@
}
.infoItem___PQAsa {
color: #666;
display: flex;
line-height: 38px;
padding-right: 5px;
text-align: right;
display: flex;
}
.infoItem___PQAsa .infoItem_value___wWkeC {
text-align: left;
width: 460px;
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
}
.file_list___vrG3f {
display: flex;

@ -75,7 +75,7 @@ var _react_17_0_2_react = __webpack_require__(59301);
var _umi_production_exports = __webpack_require__(28679);
;// CONCATENATED MODULE: ./src/pages/Equipment/Maintenance/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var Maintenancemodules = ({"header_div":"header_div___trzMW","header_title":"header_title___RyK0X","search":"search___lF9UC","searchIcon":"searchIcon___YY41x","search_params":"search_params___eBV0k","clear_Data":"clear_Data___Wcmtq","content_list":"content_list___AerAg","content":"content___o_c0H","content_img":"content_img___WYMwy","content_name":"content_name___xC0qQ","content_title":"content_title___pbhJR","content_params":"content_params___kppTt","redRow":"redRow___rM29n","infoItem":"infoItem___PQAsa","file_list":"file_list___vrG3f","file_list_title":"file_list_title___kjuva","file_list_size":"file_list_size___gMnGM"});
/* harmony default export */ var Maintenancemodules = ({"header_div":"header_div___trzMW","header_title":"header_title___RyK0X","search":"search___lF9UC","searchIcon":"searchIcon___YY41x","search_params":"search_params___eBV0k","clear_Data":"clear_Data___Wcmtq","content_list":"content_list___AerAg","content":"content___o_c0H","content_img":"content_img___WYMwy","content_name":"content_name___xC0qQ","content_title":"content_title___pbhJR","content_params":"content_params___kppTt","redRow":"redRow___rM29n","infoItem":"infoItem___PQAsa","infoItem_value":"infoItem_value___wWkeC","file_list":"file_list___vrG3f","file_list_title":"file_list_title___kjuva","file_list_size":"file_list_size___gMnGM"});
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tooltip/index.js + 3 modules
var tooltip = __webpack_require__(6848);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/form/index.js + 19 modules
@ -288,6 +288,13 @@ var EditModal = function EditModal(_ref) {
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
label: "\u6545\u969C\u63CF\u8FF0",
name: "description",
rules: [{
required: true,
message: "必填项"
}, {
max: 200,
message: '故障描述最大限制200个字符'
}],
children: /*#__PURE__*/(0,jsx_runtime.jsx)(markdown_editor/* default */.Z, {
height: 235,
defaultValue: (formValue === null || formValue === void 0 ? void 0 : formValue.description) || '',
@ -310,7 +317,9 @@ var EditModal = function EditModal(_ref) {
}],
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {
placeholder: "\u8BF7\u8F93\u5165\u7EF4\u4FEE\u4EBA\u5458",
size: "large"
size: "large",
showCount: true,
maxLength: 60
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
label: "\u7EF4\u4FEE\u65F6\u95F4",
@ -367,7 +376,7 @@ var RenderHtml = __webpack_require__(96540);
var Navigation = function Navigation(_ref) {
var _viewData$device, _viewData$device2, _viewData$device3, _viewData$device4, _viewData$device5, _viewData$device6, _viewData$attachments;
var _viewData$device, _viewData$device2, _viewData$device3, _viewData$device4, _viewData$device5, _viewData$device6, _viewData$device7, _viewData$device8, _viewData$device9, _viewData$device10, _viewData$device11, _viewData$device12, _viewData$attachments;
var loading = _ref.loading;
var _useState = (0,_react_17_0_2_react.useState)(),
_useState2 = slicedToArray_default()(_useState, 2),
@ -516,7 +525,7 @@ var Navigation = function Navigation(_ref) {
render: function render(text) {
return /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
placement: "bottomLeft",
title: text,
title: text ? dayjs_min_default()(text).format('YYYY-MM-DD') : '--',
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: text ? dayjs_min_default()(text).format('YYYY-MM-DD') : '--'
})
@ -643,7 +652,7 @@ var Navigation = function Navigation(_ref) {
value: "",
children: "\u5168\u90E8"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_select["default"].Option, {
value: "0",
value: "2",
children: "\u865A\u62DF\u673A"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_select["default"].Option, {
value: "1",
@ -730,16 +739,16 @@ var Navigation = function Navigation(_ref) {
centered: true,
open: viewVisible,
onOk: function onOk() {
return setViewVisible(false);
setViewVisible(false);
setCenterId(viewData === null || viewData === void 0 ? void 0 : viewData.id);
setEditVisible(true);
},
onCancel: function onCancel() {
return setViewVisible(false);
},
cancelButtonProps: {
style: {
display: 'none'
}
},
okText: "\u7F16\u8F91"
// cancelButtonProps={{ style: { display: 'none' } }}
,
width: 600,
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
style: {
@ -748,82 +757,108 @@ var Navigation = function Navigation(_ref) {
},
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: Maintenancemodules.infoItem,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
style: {
width: '85px'
},
children: "\u8BBE\u5907\u540D\u79F0\uFF1A"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: (viewData === null || viewData === void 0 || (_viewData$device = viewData.device) === null || _viewData$device === void 0 ? void 0 : _viewData$device.name) || '--'
}), /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
title: (viewData === null || viewData === void 0 || (_viewData$device = viewData.device) === null || _viewData$device === void 0 ? void 0 : _viewData$device.name) || '--',
children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: Maintenancemodules.infoItem_value,
children: (viewData === null || viewData === void 0 || (_viewData$device2 = viewData.device) === null || _viewData$device2 === void 0 ? void 0 : _viewData$device2.name) || '--'
})
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: Maintenancemodules.infoItem,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
style: {
width: '85px'
},
children: "\u8BBE\u5907\u7C7B\u578B\uFF1A"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: (viewData === null || viewData === void 0 || (_viewData$device2 = viewData.device) === null || _viewData$device2 === void 0 ? void 0 : _viewData$device2.category) == 'virtual' ? '虚拟机' : '物理机'
}), /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
title: (viewData === null || viewData === void 0 || (_viewData$device3 = viewData.device) === null || _viewData$device3 === void 0 ? void 0 : _viewData$device3.category) == 'virtual' ? '虚拟机' : '物理机',
children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: Maintenancemodules.infoItem_value,
children: (viewData === null || viewData === void 0 || (_viewData$device4 = viewData.device) === null || _viewData$device4 === void 0 ? void 0 : _viewData$device4.category) == 'virtual' ? '虚拟机' : '物理机'
})
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: Maintenancemodules.infoItem,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
style: {
width: '85px'
},
children: "IP\u5730\u5740\uFF1A"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: (viewData === null || viewData === void 0 || (_viewData$device3 = viewData.device) === null || _viewData$device3 === void 0 ? void 0 : _viewData$device3.ip) || '--'
}), /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
title: (viewData === null || viewData === void 0 || (_viewData$device5 = viewData.device) === null || _viewData$device5 === void 0 ? void 0 : _viewData$device5.ip) || '--',
children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: Maintenancemodules.infoItem_value,
children: (viewData === null || viewData === void 0 || (_viewData$device6 = viewData.device) === null || _viewData$device6 === void 0 ? void 0 : _viewData$device6.ip) || '--'
})
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: Maintenancemodules.infoItem,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
style: {
width: '85px'
},
children: "MAC\u5730\u5740\uFF1A"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: (viewData === null || viewData === void 0 || (_viewData$device4 = viewData.device) === null || _viewData$device4 === void 0 ? void 0 : _viewData$device4.mac_address) || '--'
}), /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
title: (viewData === null || viewData === void 0 || (_viewData$device7 = viewData.device) === null || _viewData$device7 === void 0 ? void 0 : _viewData$device7.mac_address) || '--',
children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: Maintenancemodules.infoItem_value,
children: (viewData === null || viewData === void 0 || (_viewData$device8 = viewData.device) === null || _viewData$device8 === void 0 ? void 0 : _viewData$device8.mac_address) || '--'
})
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: Maintenancemodules.infoItem,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
style: {
width: '85px'
},
children: "\u6240\u5C5E\u5B9E\u9A8C\u5BA4\uFF1A"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: (viewData === null || viewData === void 0 || (_viewData$device5 = viewData.device) === null || _viewData$device5 === void 0 ? void 0 : _viewData$device5.classroom_title) || '--'
}), /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
title: (viewData === null || viewData === void 0 || (_viewData$device9 = viewData.device) === null || _viewData$device9 === void 0 ? void 0 : _viewData$device9.classroom_title) || '--',
children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: Maintenancemodules.infoItem_value,
children: (viewData === null || viewData === void 0 || (_viewData$device10 = viewData.device) === null || _viewData$device10 === void 0 ? void 0 : _viewData$device10.classroom_title) || '--'
})
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: Maintenancemodules.infoItem,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
style: {
width: '85px'
},
children: "\u6240\u5C5E\u623F\u95F4\uFF1A"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: (viewData === null || viewData === void 0 || (_viewData$device6 = viewData.device) === null || _viewData$device6 === void 0 ? void 0 : _viewData$device6.classroom_room_title) || '--'
}), /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
title: (viewData === null || viewData === void 0 || (_viewData$device11 = viewData.device) === null || _viewData$device11 === void 0 ? void 0 : _viewData$device11.classroom_room_title) || '--',
children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: Maintenancemodules.infoItem_value,
children: (viewData === null || viewData === void 0 || (_viewData$device12 = viewData.device) === null || _viewData$device12 === void 0 ? void 0 : _viewData$device12.classroom_room_title) || '--'
})
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: Maintenancemodules.infoItem,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
style: {
width: '85px'
},
children: "\u7EF4\u4FEE\u65E5\u671F\uFF1A"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: Maintenancemodules.infoItem_value,
children: viewData !== null && viewData !== void 0 && viewData.date ? dayjs_min_default()(viewData === null || viewData === void 0 ? void 0 : viewData.date).format('YYYY-MM-DD HH:mm') : '--'
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: Maintenancemodules.infoItem,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
style: {
width: '85px'
},
children: "\u7EF4\u4FEE\u4EBA\u5458\uFF1A"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: Maintenancemodules.infoItem_value,
children: (viewData === null || viewData === void 0 ? void 0 : viewData.user_name) || '--'
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
@ -831,7 +866,7 @@ var Navigation = function Navigation(_ref) {
style: {
marginBottom: '20px'
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
style: {
width: '85px'
},
@ -851,7 +886,7 @@ var Navigation = function Navigation(_ref) {
style: {
marginBottom: '20px'
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
style: {
width: '85px'
},

@ -303,6 +303,7 @@ var Navigation = function Navigation(_ref) {
status: status,
keyword: keyword,
classroom_id: laboratorySq,
category: overdue,
scrapped: 1
}).then(function (res) {
var _res$data2, _res$data3;
@ -361,10 +362,10 @@ var Navigation = function Navigation(_ref) {
children: "\u5168\u90E8"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_select["default"].Option, {
value: "1",
children: "\u4E0A\u67B6"
children: "\u7269\u7406\u673A"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_select["default"].Option, {
value: "0",
children: "\u4E0B\u67B6"
value: "2",
children: "\u865A\u62DF\u673A"
})]
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z.Search, {

File diff suppressed because one or more lines are too long

@ -46,12 +46,7 @@
.content___aG3q2 {
display: flex;
}
.content___aG3q2 .content_left___PGL28 {
margin-left: 2vw;
margin-right: 1vw;
margin-top: 4vh;
}
.content___aG3q2 .content_left___PGL28 .content_title___l2d9f {
.content___aG3q2 .content_title___l2d9f {
font-family: Alibaba-PuHuiTi, Alibaba-PuHuiTi;
font-weight: bold;
font-size: 14px;
@ -62,6 +57,11 @@
height: 3.7vh;
line-height: 3.7vh;
}
.content___aG3q2 .content_left___PGL28 {
margin-left: 1.5vw;
margin-right: 1vw;
margin-top: 4vh;
}
.content___aG3q2 .content_left___PGL28 .sblxtj_legend___oPBrv {
position: absolute;
right: 2vw;
@ -129,4 +129,76 @@
width: 90%;
margin: auto;
}
.content___aG3q2 .content_center___R_uXQ {
margin-right: 1vw;
margin-top: 4vh;
width: 45vw;
}
.content___aG3q2 .content_center___R_uXQ .five_count___rbX0G {
height: 20vh;
display: flex;
justify-content: space-between;
}
.content___aG3q2 .content_center___R_uXQ .five_count___rbX0G .five_count_item___nI8Az {
width: 18%;
text-align: center;
}
.content___aG3q2 .content_center___R_uXQ .four_count___fubX9 {
height: 10vh;
display: flex;
margin-top: 2vh;
justify-content: space-between;
}
.content___aG3q2 .content_center___R_uXQ .four_count___fubX9 .four_count_item___ZIDFl {
width: 24%;
display: flex;
text-align: center;
align-items: center;
}
.content___aG3q2 .content_center___R_uXQ .shiyonglv_title___bUbRS {
width: 100%;
font-family: Alibaba-PuHuiTi, Alibaba-PuHuiTi;
font-weight: normal;
font-size: 14px;
text-align: center;
color: #FFFFFF;
text-shadow: 0px 4px 6px rgba(255, 255, 255, 0.5);
font-style: normal;
margin-top: 1vh;
}
.content___aG3q2 .content_center___R_uXQ .jinyizou___NzFKs {
position: absolute;
right: 1vw;
top: 1.5vh;
font-family: AlibabaPuHuiTiR;
font-size: 12px;
color: #41CEFF;
font-style: normal;
}
.content___aG3q2 .content_center___R_uXQ .messageList___HP034 {
height: 17vh;
width: 43vw;
margin: 1vh 1vw 0 1vw;
overflow-y: auto;
color: #fff;
}
.content___aG3q2 .content_center___R_uXQ .messageList___HP034 .messageList_title___aDd8w {
flex: 1 1;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.content___aG3q2 .content_center___R_uXQ .messageList___HP034 .messageList_time___fgA7g {
text-align: center;
width: 10vw;
}
.content___aG3q2 .content_right___UnKNC {
margin-right: 1.5vw;
margin-top: 4vh;
}
.content___aG3q2 .content_right___UnKNC .wztj_content___44q2Q {
color: #fff;
width: 90%;
margin: auto;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 237 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 841 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 228 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 241 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 399 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 236 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 242 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 342 KiB

File diff suppressed because one or more lines are too long
Loading…
Cancel
Save