From 1f961641361128aafa21d23b70fa41466f02121e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=EA=B9=80=ED=98=84=EC=9A=B1?=
Date: Mon, 13 Apr 2026 14:29:40 +0900
Subject: [PATCH] =?UTF-8?q?=EB=A7=88=EC=9D=B4=ED=8E=98=EC=9D=B4=EC=A7=80?=
=?UTF-8?q?=20=EC=9D=BC=EB=B0=98=EB=AC=B8=EC=9D=98=20=EC=B6=94=EA=B0=80(PC?=
=?UTF-8?q?/=EB=AA=A8=EB=B0=94=EC=9D=BC)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../service/BOGnrlbbscttService.java | 3 +
.../mpage/act/controller/MyActController.java | 137 +++
.../bbs/gnrlbbsctt/BOGnrlbbscttMapper.xml | 2 +
.../static/login/sopmall/pc/css/default.css | 6 +
src/main/resources/static/pc/css/default.css | 6 +
.../static/sopmall/pc/css/default.css | 6 +
.../views/sopmal/csc/BbscttRegistPopupC.jsp | 4 +
.../views/sopmal/mpage/act/MyNormalQaR.jsp | 354 +++++++
.../sopmal/mpage/act/MyNormalQnaDtlUpdtU.jsp | 921 ++++++++++++++++
.../views/sopmal_m/csc/BbscttRegistPopupC.jsp | 13 +
.../views/sopmal_m/mpage/act/MyNormalQaR.jsp | 378 +++++++
.../mpage/act/MyNormalQnaDtlUpdtU.jsp | 990 ++++++++++++++++++
12 files changed, 2820 insertions(+)
create mode 100644 src/main/webapp/WEB-INF/views/sopmal/mpage/act/MyNormalQaR.jsp
create mode 100644 src/main/webapp/WEB-INF/views/sopmal/mpage/act/MyNormalQnaDtlUpdtU.jsp
create mode 100644 src/main/webapp/WEB-INF/views/sopmal_m/mpage/act/MyNormalQaR.jsp
create mode 100644 src/main/webapp/WEB-INF/views/sopmal_m/mpage/act/MyNormalQnaDtlUpdtU.jsp
diff --git a/src/main/java/com/wb/domainserver/domain/gcone/bbs/gnrlbbsctt/service/BOGnrlbbscttService.java b/src/main/java/com/wb/domainserver/domain/gcone/bbs/gnrlbbsctt/service/BOGnrlbbscttService.java
index 96bcbdee..20af3f2c 100644
--- a/src/main/java/com/wb/domainserver/domain/gcone/bbs/gnrlbbsctt/service/BOGnrlbbscttService.java
+++ b/src/main/java/com/wb/domainserver/domain/gcone/bbs/gnrlbbsctt/service/BOGnrlbbscttService.java
@@ -232,6 +232,9 @@ public class BOGnrlbbscttService {
BOGnrlbbscttVO resultCnt = new BOGnrlbbscttVO();
switch (bbsTyCd) {
case "01": //일반게시글 조회
+ log.debug("일반게시글 getServerDv : {}",bbsctt.getServerDv());
+ log.debug("일반게시글 getMbrDvCd : {}",bbsctt.getMbrDvCd());
+ log.debug("일반게시글 getSopmalCd : {}",bbsctt.getSopmalCd());
resultCnt = mapper.selectBOGnrlBbscttListCnt(bbsctt);
totCnt = resultCnt.getTotCnt();
if (StringUtil.isEmpty(bbsctt.getNtcAt())) {/*공지 제외 검색 조건*/
diff --git a/src/main/java/com/wb/domainserver/domain/sopmal/mpage/act/controller/MyActController.java b/src/main/java/com/wb/domainserver/domain/sopmal/mpage/act/controller/MyActController.java
index ee9311a9..6ad55c91 100644
--- a/src/main/java/com/wb/domainserver/domain/sopmal/mpage/act/controller/MyActController.java
+++ b/src/main/java/com/wb/domainserver/domain/sopmal/mpage/act/controller/MyActController.java
@@ -132,6 +132,143 @@ public class MyActController {
return Util.getDeviceType(request)+"/mpage/act/MyGoodsQaR";
}
+
+ /**
+ * 일반문의 조회
+ * @param bbsctt
+ * @return String
+ */
+ @Policy(AuthPolicy.PUBLIC)
+ @RequestMapping(value="/selectNormalQnaInqire")
+ public String selectNormalQnaInqire(HttpServletRequest request, ModelMap model, BOGnrlbbscttVO bbsctt, BOMbrVO vo){
+ bbsctt.setBbsTyCd("01");
+ bbsctt.setServerDv("sopmal");
+ bbsctt.setReqUrl("mpage");
+
+ DataMap content = selectBOBbscttListInqire(bbsctt);
+ model.addAttribute("resultMap", content);
+// responseHandler.handleResponse(
+// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/bbs/gnrlbbsctt/selectBOBbscttListInqire",bbsctt),
+// model,
+// "resultMap"
+// );
+
+ Map content2 = selectBOMpageInfoInqire(vo);
+ // 마이페이지 > 상단 회원 정보 ( 등금, 이름, 마일리지, 쿠폰, 위시리스트, 배송중, 등급산정기준 )
+ model.addAttribute("mpageResultMap", content2);
+// responseHandler.handleResponse(
+// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOMpageInfoInqire",bbsctt),
+// model,
+// "mpageResultMap"
+// );
+
+ return Util.getDeviceType(request)+"/mpage/act/MyNormalQaR";
+ }
+
+ /**
+ * 일반문의 수정 폼 이동
+ * @param bbsctt
+ * @return String
+ */
+ @Policy(AuthPolicy.PUBLIC)
+ @RequestMapping(value="/selectNormalQnaDtlUpdtForm")
+ public String selectNormalQnaDtlUpdtForm(HttpServletRequest request, ModelMap model,BOGnrlbbscttVO bbsctt, BOMbrVO vo){
+ bbsctt.setServerDv("sopmal");
+ bbsctt.setBbsTyCd("01");
+ AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
+ if ("01".equals(user.getSysDvCd())) {
+ bbsctt.setSopmalCd(user.getSopmalCd());
+ }
+ ;
+ if (user.getUserInnb() > 0) {
+ if ("mngr".equals(bbsctt.getServerDv())) {
+ bbsctt.setRegusrDvCd("02"); //관리자
+ } else {
+ bbsctt.setRegusrDvCd("01"); //회원
+ bbsctt.setAnswMbtlnb(user.getMbtlnb());
+ }
+ } else {
+ bbsctt.setRegusrDvCd("99");//비회원
+ }
+ bbsctt.setSecretKey(boCommonService.selectSecretkey());
+ // 게시판 설정 정보
+ BOBbsVO bbsVO = new BOBbsVO();
+ // bbsVO에 쇼핑몰코드, 해당 게시판 set
+ bbsVO.setSopmalCd(bbsctt.getSopmalCd());
+ bbsVO.setBbsId(bbsctt.getBbsId());
+ bbsVO.setBbsTyCd(bbsctt.getBbsTyCd());
+ DataMap bbsInfo = new DataMap();
+ bbsInfo = bbsService.selectBOBbsSetupInfo(bbsVO);
+
+ // 게시글 상세 조회
+ Map bbscttInfo = new HashMap();
+ bbscttInfo = service.selectBOBbscttUpdt(bbsctt);
+
+ // 분류 조회
+ List itmList = new ArrayList<>();
+ itmList = service.selectBOBbscttItmInqire(bbsctt);
+
+ //추가 항목 조회, 추가항목 항목 조회
+ Map qesitmList = new HashMap();
+ qesitmList = service.selectBOBbscttRegistPopupForm(bbsctt);
+
+ //리뷰항목 리스트, 리뷰항목 항목 리스트
+ Map rvwQesitmList = new HashMap();
+ rvwQesitmList = service.selectBOStarItm(bbsctt);
+
+ Map content = new HashMap();
+ content.put("bbsInfo", bbsInfo);
+ content.put("bbscttVO", bbsctt);
+ content.put("bbscttInfo", bbscttInfo);
+ content.put("itmList", itmList);
+ content.put("qesitmList", qesitmList);
+ content.put("rvwQesitmList", rvwQesitmList);
+
+ model.addAttribute("resultMap", content);
+// responseHandler.handleResponse(
+// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/bbs/gnrlbbsctt/selectBOBbscttUpdtPopupForm",bbsctt),
+// model,
+// "resultMap"
+// );
+ model.addAttribute("bbsctt", bbsctt);
+
+ // 마이페이지 > 상단 회원 정보 ( 등금, 이름, 마일리지, 쿠폰, 위시리스트, 배송중, 등급산정기준 )
+ Map content2 = selectBOMpageInfoInqire(vo);
+ model.addAttribute("mpageResultMap", content2);
+// responseHandler.handleResponse(
+// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOMpageInfoInqire",bbsctt),
+// model,
+// "mpageResultMap"
+// );
+
+ return Util.getDeviceType(request)+"/mpage/act/MyNormalQnaDtlUpdtU";
+ }
+
+ /**
+ * 일반문의 ajax 조회
+ * @param bbsctt
+ * @return String
+ */
+ @Policy(AuthPolicy.PUBLIC)
+ @RequestMapping(value="/selectNormalQnaInqireAjax", produces = MediaType.APPLICATION_JSON_VALUE)
+ public ResponseEntity> selectNormalQnaInqireAjax(BOGnrlbbscttVO bbsctt){
+ bbsctt.setBbsTyCd("01");
+ bbsctt.setServerDv("sopmal");
+ bbsctt.setReqUrl("mpage");
+ //게시글 노출 항목 설정값과 게시판 목록 조회
+
+ DataMap content = selectBOBbscttListInqire(bbsctt);
+ return ResponseEntity.ok(
+ WnbtResponse.builder()
+ .resBody(new WnbtResponseBody(content))
+ .build()
+ );
+// return responseHandler.handleResponse(
+// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/bbs/gnrlbbsctt/selectBOBbscttListInqire",bbsctt),
+// ReplyFromResrc::getReply
+// );
+ }
+
/**
* 상품 Q&A ajax 조회
* @param bbsctt
diff --git a/src/main/resources/mybatis/xml/mapper/gcone/bbs/gnrlbbsctt/BOGnrlbbscttMapper.xml b/src/main/resources/mybatis/xml/mapper/gcone/bbs/gnrlbbsctt/BOGnrlbbscttMapper.xml
index 61560826..f9a471a6 100644
--- a/src/main/resources/mybatis/xml/mapper/gcone/bbs/gnrlbbsctt/BOGnrlbbscttMapper.xml
+++ b/src/main/resources/mybatis/xml/mapper/gcone/bbs/gnrlbbsctt/BOGnrlbbscttMapper.xml
@@ -224,6 +224,7 @@
AND (FB.NTC_AT = 'N' OR (FB.NTC_AT = 'Y' AND FB.NTC_PD_SETUP_AT = 'N'))
+ AND FB.USE_AT = 'Y'
AND FB.SOPMAL_CD = #{sopmalCd}
AND FB.BBS_ID = #{bbsId}
@@ -460,6 +461,7 @@
+ AND FB.USE_AT = 'Y'
AND FB.DEPTH = 0
AND FB.SOPMAL_CD = #{sopmalCd}
diff --git a/src/main/resources/static/login/sopmall/pc/css/default.css b/src/main/resources/static/login/sopmall/pc/css/default.css
index 8add11f3..7dc7a4d1 100644
--- a/src/main/resources/static/login/sopmall/pc/css/default.css
+++ b/src/main/resources/static/login/sopmall/pc/css/default.css
@@ -4637,6 +4637,12 @@ CORE STYLES ABOVE - NO TOUCHY
position: relative;
margin-bottom: 56px;
}
+.sub-right-content__section__btn {
+ position: relative;
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+}
.sub-right-content__halfSection {
position: relative;
margin-bottom: 56px;
diff --git a/src/main/resources/static/pc/css/default.css b/src/main/resources/static/pc/css/default.css
index 688bf63f..9a91b828 100644
--- a/src/main/resources/static/pc/css/default.css
+++ b/src/main/resources/static/pc/css/default.css
@@ -4654,6 +4654,12 @@ CORE STYLES ABOVE - NO TOUCHY
position: relative;
margin-bottom: 56px;
}
+.sub-right-content__section__btn {
+ position: relative;
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+}
.sub-right-content__halfSection {
position: relative;
margin-bottom: 56px;
diff --git a/src/main/resources/static/sopmall/pc/css/default.css b/src/main/resources/static/sopmall/pc/css/default.css
index 8168da70..e8192195 100644
--- a/src/main/resources/static/sopmall/pc/css/default.css
+++ b/src/main/resources/static/sopmall/pc/css/default.css
@@ -4650,6 +4650,12 @@ CORE STYLES ABOVE - NO TOUCHY
position: relative;
margin-bottom: 56px;
}
+.sub-right-content__section__btn {
+ position: relative;
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+}
.sub-right-content__halfSection {
position: relative;
margin-bottom: 56px;
diff --git a/src/main/webapp/WEB-INF/views/sopmal/csc/BbscttRegistPopupC.jsp b/src/main/webapp/WEB-INF/views/sopmal/csc/BbscttRegistPopupC.jsp
index 429940af..5eaba8ab 100644
--- a/src/main/webapp/WEB-INF/views/sopmal/csc/BbscttRegistPopupC.jsp
+++ b/src/main/webapp/WEB-INF/views/sopmal/csc/BbscttRegistPopupC.jsp
@@ -195,6 +195,9 @@
}else if ($("#listAt").val() === 'm2m') {
/*1:1 문의*/
setMenuCode('39','/sopmal/mpage/act/selectM2mQnaInqire?bbsId=mbrqna');
+ }else if ($("#listAt").val() === 'nlist') {
+ /*일반 문의*/
+ setMenuCode('89','/sopmal/mpage/act/selectNormalQnaInqire?bbsId=normal_qna');
}
});
@@ -625,6 +628,7 @@
diff --git a/src/main/webapp/WEB-INF/views/sopmal/mpage/act/MyNormalQaR.jsp b/src/main/webapp/WEB-INF/views/sopmal/mpage/act/MyNormalQaR.jsp
new file mode 100644
index 00000000..66cd84bc
--- /dev/null
+++ b/src/main/webapp/WEB-INF/views/sopmal/mpage/act/MyNormalQaR.jsp
@@ -0,0 +1,354 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
+<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
+<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
+<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
+<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
+<%@ taglib prefix="ui" uri="http://www.winbit.kr/ctl/ui"%>
+<%@ taglib prefix="f" uri="/WEB-INF/tlds/f.tld"%>
+
+
+<%--
+ Class Name : MyNormalQaR.jsp
+ Description : 마이페이지 일반문의
+ Modification Information
+
+ 수정일 수정자 수정내용
+ ------- -------- ---------------------------
+ 2026-04-06 김현욱 최초 생성
+--%>
+
+
+
+
+<%-- 공통 include --%>
+
+
+
+
+
+ <%-- 공통 Header --%>
+
+
+
+
+
+
+
+ <%-- 마이페이지 Left 영역 --%>
+
+
+ <%-- 마이페이지 Right 영역 --%>
+
+
+
" id = "bbsId">
+
" id = "bbsTyCd">
+
">
+
+
+
+
+
+
+
+ 해당 테이블에 대한 설명
+
+
+
+
+
+
+
+
+
+ | 번호 |
+ 문의내용 |
+ 작성일 |
+ 답변유무 |
+
+
+
+
+
+
+
+ |
+
+
+ |
+ |
+
+
+
+ 답변완료
+
+
+ 답변대기
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 답변 등록 중 입니다.
+
+
+
+
+
+
+
+ 'Y'
+
+
+ 'N'
+
+ >
+ >
+
+
+
+
+
+
+ |
+
+
+
+
+
+
+
+ 
+
+
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <%-- 공통 Footer --%>
+
+
+
+
+
+ 삭제된 게시글은 복구할 수 없습니다.
+
+ 정말로 삭제 하시겠습니까?
+
+
+
+
+
+
+
+
+
+ 답변이 등록된 상태입니다.
+
+ 수정하실 수 없습니다.
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/views/sopmal/mpage/act/MyNormalQnaDtlUpdtU.jsp b/src/main/webapp/WEB-INF/views/sopmal/mpage/act/MyNormalQnaDtlUpdtU.jsp
new file mode 100644
index 00000000..12968188
--- /dev/null
+++ b/src/main/webapp/WEB-INF/views/sopmal/mpage/act/MyNormalQnaDtlUpdtU.jsp
@@ -0,0 +1,921 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
+<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
+<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
+<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
+<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
+<%@ taglib prefix="ui" uri="http://www.winbit.kr/ctl/ui"%>
+<%@ taglib prefix="f" uri="/WEB-INF/tlds/f.tld"%>
+
+
+<%--
+ Class Name : MyGoodsQaR.jsp
+ Description : 마이페이지 상품Q&A
+ Modification Information
+
+ 수정일 수정자 수정내용
+ ------- -------- ---------------------------
+ 2024-04-11 김혜인 최초 생성
+--%>
+
+
+
+
+<%-- 공통 include --%>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <%-- 공통 Header --%>
+
+
+
+
+
+ <%-- 공통 Footer --%>
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/views/sopmal_m/csc/BbscttRegistPopupC.jsp b/src/main/webapp/WEB-INF/views/sopmal_m/csc/BbscttRegistPopupC.jsp
index c72dbe78..414f7f19 100644
--- a/src/main/webapp/WEB-INF/views/sopmal_m/csc/BbscttRegistPopupC.jsp
+++ b/src/main/webapp/WEB-INF/views/sopmal_m/csc/BbscttRegistPopupC.jsp
@@ -191,6 +191,14 @@
, 'success_reg_alert'
, '#regSuccessBtn'
, fn_goM2mqna, '1');
+ }else if($("#reqDv").val() === 'nlist') {//일반문의
+ openConfirmModal(function (onSuccess) {
+ fn_regist_bbsctt(onSuccess);//등록함수
+ }, 'confirm_reg_alert'
+ , '#regCfrmBtn'
+ , 'success_reg_alert'
+ , '#regSuccessBtn'
+ , fn_goNormalQna, '1');
}else {
console.log("등록처리");
openConfirmModal(function (onSuccess) {
@@ -208,6 +216,11 @@
window.location.href = "/sopmal/mpage/act/selectM2mQnaInqire?bbsId=mbrqna";
}
}
+ if (typeof fn_goNormalQna === 'undefined') {
+ function fn_goNormalQna(curPage) {
+ window.location.href = "/sopmal/mpage/act/selectNormalQnaInqire?bbsId=normal_qna";
+ }
+ }
/*********************************************************
* 게시글 등록
*********************************************************/
diff --git a/src/main/webapp/WEB-INF/views/sopmal_m/mpage/act/MyNormalQaR.jsp b/src/main/webapp/WEB-INF/views/sopmal_m/mpage/act/MyNormalQaR.jsp
new file mode 100644
index 00000000..042d66fa
--- /dev/null
+++ b/src/main/webapp/WEB-INF/views/sopmal_m/mpage/act/MyNormalQaR.jsp
@@ -0,0 +1,378 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
+<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
+<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
+<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
+<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
+<%@ taglib prefix="ui" uri="http://www.winbit.kr/ctl/ui" %>
+<%@ taglib prefix="f" uri="/WEB-INF/tlds/f.tld" %>
+<%--
+ Class Name : MyNormalQaR.jsp
+ Description :마이페이지 일반문의 모바일
+ Modification Information
+
+ 수정일 수정자 수정내용
+ ------- -------- ---------------------------
+ 2026-04-06 김현욱 최초 생성
+--%>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
" id = "bbsId">
+
" id = "bbsTyCd">
+
">
+
" name = "pageIndx" id = "pageIndex">
+
<%--인피니티스크롤 이벤트 발생 여부--%>
+
+
+
+
+
+
+
+
+
+
+
+
+ []
+
+
+
+
+
+
+ 답변완료
+
+
+ 답변대기
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 답변
+
+
+
+
+
+ 답변 등록 중 입니다.
+
+
+
+
+
+ ">
+
+
+
+
+
+
+
+
+
+
+
+
+

+
+
등록된 상품 문의가 없습니다.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/views/sopmal_m/mpage/act/MyNormalQnaDtlUpdtU.jsp b/src/main/webapp/WEB-INF/views/sopmal_m/mpage/act/MyNormalQnaDtlUpdtU.jsp
new file mode 100644
index 00000000..fc1a6503
--- /dev/null
+++ b/src/main/webapp/WEB-INF/views/sopmal_m/mpage/act/MyNormalQnaDtlUpdtU.jsp
@@ -0,0 +1,990 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
+<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
+<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
+<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
+<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
+<%@ taglib prefix="ui" uri="http://www.winbit.kr/ctl/ui" %>
+<%@ taglib prefix="f" uri="/WEB-INF/tlds/f.tld" %>
+<%--
+ Class Name : BbscttUpdtU.jsp
+ Description :게시글 수정(모바일).jsp
+ Modification Information
+
+ 수정일 수정자 수정내용
+ ------- -------- ---------------------------
+ 2024-07-24 김혜인 최초 생성
+--%>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<%--수정 성공 모달--%>
+
+
+<%--수정 컨펌 모달--%>
+
+
+
+
\ No newline at end of file