From 4ddae8d6ebe265e5d721f013bc4179382d7a5cb1 Mon Sep 17 00:00:00 2001 From: hylee Date: Tue, 4 Jul 2023 12:53:02 +0900 Subject: [PATCH 1/7] =?UTF-8?q?feat:api=20=EC=9A=94=EC=B2=AD=EC=97=90=20?= =?UTF-8?q?=EC=9D=98=ED=95=9C=20=EB=AC=B8=EC=9E=90=EB=B0=9C=EC=86=A1?= =?UTF-8?q?=EB=B6=80=EB=B6=84=20=EC=B5=9C=EC=8B=A0=ED=99=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../itn/let/mjo/test/web/TestController.java | 60 +++++++++---------- 1 file changed, 28 insertions(+), 32 deletions(-) diff --git a/src/main/java/itn/let/mjo/test/web/TestController.java b/src/main/java/itn/let/mjo/test/web/TestController.java index f4641c14..591ce491 100644 --- a/src/main/java/itn/let/mjo/test/web/TestController.java +++ b/src/main/java/itn/let/mjo/test/web/TestController.java @@ -1157,21 +1157,10 @@ public class TestController { try { - LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; - userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId()); - - - // api인지 확인 - ApiKeyVO apiKeyVO = new ApiKeyVO(); - apiKeyVO.setAccessKey(mjonMsgVO.getAccessKey()); - List resultList = apiKeyMngService.selectCheckApiKeyDup(apiKeyVO); - - if(resultList.size() >= 1) { - userId = resultList.get(0).getMberId(); - } - - +// LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; +// userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId()); + userId = mjonMsgVO.getMberId(); if(userId.equals("")) { modelAndView.addObject("message", "로그인 후 이용이 가능합니다."); @@ -1388,6 +1377,9 @@ public class TestController { } + // 토탈금액 "," 리플레이스 처리 + mjonMsgVO.setTotPrice(mjonMsgVO.getTotPrice().replaceAll(",", "")); + float tmpOrgEachPrice = Float.parseFloat(mjonMsgVO.getEachPrice()); float tmpOrgTotPrice = Float.parseFloat(mjonMsgVO.getTotPrice()); @@ -1517,8 +1509,6 @@ public class TestController { shortMsgVO = mjonMsgVO; longMsgVO = mjonMsgVO; imgMsgVO = mjonMsgVO; - System.out.println("shortMsgVO :: "+ shortMsgVO.getsPrice()); - System.out.println("mjonMsgVO :: "+ mjonMsgVO.getsPrice()); int shortMsgCnt = Integer.parseInt(mjonMsgVO.getShortMsgCnt()); int longMsgCnt = Integer.parseInt(mjonMsgVO.getLongMsgCnt()); @@ -1768,7 +1758,14 @@ public class TestController { imgMsgVO.setRep4List(imgRep4); //개별단가 계산하기 - String eachPrice = shortMsgVO.getsPrice(); + String eachPrice = imgMsgVO.getpPrice(); + + //api 서버에서 pPrice 값이 없는 경우가 있어서 오류 방지를위해서 추가 + if(eachPrice == null) { + + eachPrice = imgMsgVO.getEachPrice(); + + } /** * 그림문자에 치환 내용이 포함되어 있는 경우 단가 계산하기. @@ -1813,9 +1810,12 @@ public class TestController { //개별단가 계산하기 String eachPrice = shortMsgVO.getsPrice(); - if(StringUtils.isEmpty(eachPrice)) - { + + //api 서버에서 sPrice 값이 없는 경우가 있어서 오류 방지를위해서 추가 + if(eachPrice == null) { + eachPrice = shortMsgVO.getEachPrice(); + } /** @@ -1845,7 +1845,6 @@ public class TestController { shortMsgVO.setMsgType("4"); } - System.out.println("shortMsgVO.getEachPrice() :: "+ shortMsgVO.getEachPrice()); //총금액 계산하기 Float sTotPrice = Float.parseFloat(shortMsgVO.getEachPrice()) * shortCnt; shortMsgVO.setTotPrice(sTotPrice.toString()); @@ -1871,6 +1870,13 @@ public class TestController { String eachPrice = longMsgVO.getmPrice(); + //api 서버에서 mPrice 값이 없는 경우가 있어서 오류 방지를위해서 추가 + if(eachPrice == null) { + + eachPrice = longMsgVO.getEachPrice(); + + } + if(fileCount > 2) {//그림 이미지가 3개 eachPrice = mjonMsgVO.getP3Price(); @@ -2001,9 +2007,7 @@ public class TestController { }else { //문자발송 함수 호출 - 일괄변환이 없거나, 그림문자 일괄변환의 경우 한번에 전송 처리 - System.out.println("???????"); modelAndView = fncSendMsg(mjonMsgVO); - System.out.println("!!!!!!!!!!!!"); } @@ -2060,16 +2064,13 @@ public class TestController { // 법인폰 알람여부 체크 JoinSettingVO joinSettingVO = new JoinSettingVO(); joinSettingVO = egovSiteManagerService.selectAdminNotiDetail(); - // SMS 체크 - if (joinSettingVO != null && joinSettingVO.getSmsNoti().equals("Y")) { -// getAdminPhoneSendMsgData(mjonMsgVO); - } // SLACK 체크 if (joinSettingVO != null && joinSettingVO.getSlackNoti().equals("Y")) { //Slack으로 메세지 전송 처리 MjonCommon comm = new MjonCommon(); - comm.getAdminSandSlack(mjonMsgVO); + System.out.println("slack noti"); +// comm.getAdminSandSlack(mjonMsgVO); } } @@ -2079,11 +2080,6 @@ public class TestController { } return modelAndView; - - - - - } /** * 문자발송시 치환문자가 있거나 단문, 장문 일경우 타는 로직 From d7cbc1b30158dc61a4f6c6e2f3b7bfeb4db4e3c1 Mon Sep 17 00:00:00 2001 From: itn Date: Fri, 7 Jul 2023 15:22:27 +0900 Subject: [PATCH 2/7] =?UTF-8?q?=EB=93=B1=EA=B8=89=EC=A0=9C=20=EA=B4=80?= =?UTF-8?q?=EB=A6=AC=20=EC=9D=BC=EA=B4=84=EB=93=B1=EB=A1=9D=20=EB=A1=9C?= =?UTF-8?q?=EC=A7=81=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../let/sym/grd/service/MberGrdService.java | 3 ++ .../let/sym/grd/service/impl/MberGrdDAO.java | 5 +++ .../grd/service/impl/MberGrdServiceImpl.java | 21 +++++++--- .../sqlmap/let/sym/grd/MberGrd_SQL_Mysql.xml | 39 +++++++++++++++++++ 4 files changed, 63 insertions(+), 5 deletions(-) diff --git a/src/main/java/itn/let/sym/grd/service/MberGrdService.java b/src/main/java/itn/let/sym/grd/service/MberGrdService.java index b86da814..915b211d 100644 --- a/src/main/java/itn/let/sym/grd/service/MberGrdService.java +++ b/src/main/java/itn/let/sym/grd/service/MberGrdService.java @@ -38,6 +38,9 @@ public interface MberGrdService { // 회원별 등급 일괄변경 public int updateMberGrdAll(MberGrdVO mberGrdVO) throws Exception; + // 문자할인, B선라인 대상자 초기화 + public int updateMberGrdEndBySale(MberGrdVO mberGrdVO) throws Exception; + // 회원별 등급 초기화 public int updateMberGrdEndAll(MberGrdVO mberGrdVO) throws Exception; diff --git a/src/main/java/itn/let/sym/grd/service/impl/MberGrdDAO.java b/src/main/java/itn/let/sym/grd/service/impl/MberGrdDAO.java index 3b4a8561..e2a97bb4 100644 --- a/src/main/java/itn/let/sym/grd/service/impl/MberGrdDAO.java +++ b/src/main/java/itn/let/sym/grd/service/impl/MberGrdDAO.java @@ -68,6 +68,11 @@ public class MberGrdDAO extends EgovAbstractDAO { return update("mberGrdDAO.updateMberGrdAll", mberGrdVO); } + // 문자할인, B선라인 대상자 초기화 + public int updateMberGrdEndBySale(MberGrdVO mberGrdVO) throws Exception { + return update("mberGrdDAO.updateMberGrdEndBySale", mberGrdVO); + } + // 회원별 등급 초기화 public int updateMberGrdEndAll(MberGrdVO mberGrdVO) throws Exception { return update("mberGrdDAO.updateMberGrdEndAll", mberGrdVO); diff --git a/src/main/java/itn/let/sym/grd/service/impl/MberGrdServiceImpl.java b/src/main/java/itn/let/sym/grd/service/impl/MberGrdServiceImpl.java index 0149c753..5605db67 100644 --- a/src/main/java/itn/let/sym/grd/service/impl/MberGrdServiceImpl.java +++ b/src/main/java/itn/let/sym/grd/service/impl/MberGrdServiceImpl.java @@ -106,27 +106,38 @@ public class MberGrdServiceImpl extends EgovAbstractServiceImpl implements MberG mberGrdDAO.updateMberGrd(mberGrdVO); } - // 회원별 등급 초기화 + // 회원별 등급 일괄변경 @Override public int updateMberGrdAll(MberGrdVO mberGrdVO) throws Exception { - int updateCnt = 0; + int updateCnt1 = 0; + int updateCnt2 = 0; // Step 1. 등급제 시행 ON 일경우 MberGrdVO mberGrdVO1 = new MberGrdVO(); mberGrdVO1 = selectMberSettingDetail(mberGrdVO); if (mberGrdVO1.getGrdNoti().equals("Y") && null != mberGrdVO1.getGrdDate()) { - updateCnt = mberGrdDAO.updateMberGrdAll(mberGrdVO); + // 문자할인, B선라인 대상자 초기화 + updateCnt1 = updateMberGrdEndBySale(mberGrdVO); + + // 회원별 등급 일괄변경 + updateCnt2 = mberGrdDAO.updateMberGrdAll(mberGrdVO); } - return updateCnt; + return updateCnt1 + updateCnt2; } - // 회원별 등급 일괄변경 + // 회원별 등급 초기화 @Override public int updateMberGrdEndAll(MberGrdVO mberGrdVO) throws Exception { return mberGrdDAO.updateMberGrdEndAll(mberGrdVO); } + // 문자할인, B선라인 대상자 초기화 + @Override + public int updateMberGrdEndBySale(MberGrdVO mberGrdVO) throws Exception { + return mberGrdDAO.updateMberGrdEndBySale(mberGrdVO); + } + // 회원별 등급 적용 @Override public void mberGrdSaveByUser(MberGrdVO mberGrdVO) throws Exception { diff --git a/src/main/resources/egovframework/sqlmap/let/sym/grd/MberGrd_SQL_Mysql.xml b/src/main/resources/egovframework/sqlmap/let/sym/grd/MberGrd_SQL_Mysql.xml index d8507540..722caa32 100644 --- a/src/main/resources/egovframework/sqlmap/let/sym/grd/MberGrd_SQL_Mysql.xml +++ b/src/main/resources/egovframework/sqlmap/let/sym/grd/MberGrd_SQL_Mysql.xml @@ -303,6 +303,45 @@ ]]> + + + 0 + AND (B.SHORT_PRICE > A.SHORT_PRICE + OR B.LONG_PRICE > A.LONG_PRICE + OR B.PICTURE_PRICE > A.PICTURE_PRICE + OR B.PICTURE2_PRICE > A.PICTURE2_PRICE + OR B.PICTURE3_PRICE > A.PICTURE3_PRICE) + ) + THEN 'Y' + ELSE 'N' + END isSalePrice + FROM LETTNGNRLMBER A + INNER JOIN MJ_MBER_GRD_INFO G + ON A.MBER_ID = G.MBER_ID + JOIN MJ_MBER_SETTING B + WHERE 1=1 + AND G.GRD_STATUS != 'E' + ) M + WHERE M.isSalePrice = 'Y' + OR M.BLINE_CODE != 'N' + ) + ]]> + + UPDATE MJ_MBER_GRD_INFO SET From 45d8771ba5ae33e5542ce778e1c7806e363b9a7d Mon Sep 17 00:00:00 2001 From: itn Date: Fri, 7 Jul 2023 16:05:25 +0900 Subject: [PATCH 3/7] =?UTF-8?q?=ED=9A=8C=EC=9B=90=20=EB=93=B1=EA=B8=89?= =?UTF-8?q?=EC=A0=9C=20=EB=8C=80=EC=83=81=EC=97=AC=EB=B6=80=20=EC=A0=95?= =?UTF-8?q?=EB=B3=B4(=EC=82=AC=EC=9A=A9=EC=9E=90=ED=99=94=EB=A9=B4?= =?UTF-8?q?=EC=9A=A9)=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../let/sym/grd/service/MberGrdService.java | 3 + .../let/sym/grd/service/impl/MberGrdDAO.java | 5 ++ .../grd/service/impl/MberGrdServiceImpl.java | 6 ++ .../sqlmap/let/sym/grd/MberGrd_SQL_Mysql.xml | 66 +++++++++++++++++-- 4 files changed, 73 insertions(+), 7 deletions(-) diff --git a/src/main/java/itn/let/sym/grd/service/MberGrdService.java b/src/main/java/itn/let/sym/grd/service/MberGrdService.java index 915b211d..2d67ea04 100644 --- a/src/main/java/itn/let/sym/grd/service/MberGrdService.java +++ b/src/main/java/itn/let/sym/grd/service/MberGrdService.java @@ -26,6 +26,9 @@ public interface MberGrdService { // 회원별 등급 상세 public MberGrdVO selectMberGrdDetail(MberGrdVO mberGrdVO) throws Exception; + // 회원 등급제 대상여부 정보(사용자화면용) + public MberGrdVO selectMberGrdInfo(MberGrdVO mberGrdVO) throws Exception; + // 회원별 등급 누적결제액 상세 public MberGrdVO selectMberGrdAmtDetail(MberGrdVO mberGrdVO) throws Exception; diff --git a/src/main/java/itn/let/sym/grd/service/impl/MberGrdDAO.java b/src/main/java/itn/let/sym/grd/service/impl/MberGrdDAO.java index e2a97bb4..e870d869 100644 --- a/src/main/java/itn/let/sym/grd/service/impl/MberGrdDAO.java +++ b/src/main/java/itn/let/sym/grd/service/impl/MberGrdDAO.java @@ -48,6 +48,11 @@ public class MberGrdDAO extends EgovAbstractDAO { return (MberGrdVO) select("mberGrdDAO.selectMberGrdDetail", mberGrdVO); } + // 회원 등급제 대상여부 정보(사용자화면용) + public MberGrdVO selectMberGrdInfo(MberGrdVO mberGrdVO) throws Exception{ + return (MberGrdVO) select("mberGrdDAO.selectMberGrdInfo", mberGrdVO); + } + // 회원별 등급 누적결제액 상세 public MberGrdVO selectMberGrdAmtDetail(MberGrdVO mberGrdVO) throws Exception{ return (MberGrdVO) select("mberGrdDAO.selectMberGrdAmtDetail", mberGrdVO); diff --git a/src/main/java/itn/let/sym/grd/service/impl/MberGrdServiceImpl.java b/src/main/java/itn/let/sym/grd/service/impl/MberGrdServiceImpl.java index 5605db67..0c8f38b3 100644 --- a/src/main/java/itn/let/sym/grd/service/impl/MberGrdServiceImpl.java +++ b/src/main/java/itn/let/sym/grd/service/impl/MberGrdServiceImpl.java @@ -88,6 +88,12 @@ public class MberGrdServiceImpl extends EgovAbstractServiceImpl implements MberG return mberGrdDAO.selectMberGrdDetail(mberGrdVO); } + // 회원 등급제 대상여부 정보(사용자화면용) + @Override + public MberGrdVO selectMberGrdInfo(MberGrdVO mberGrdVO) throws Exception { + return mberGrdDAO.selectMberGrdInfo(mberGrdVO); + } + // 회원별 등급 누적결제액 상세 @Override public MberGrdVO selectMberGrdAmtDetail(MberGrdVO mberGrdVO) throws Exception { diff --git a/src/main/resources/egovframework/sqlmap/let/sym/grd/MberGrd_SQL_Mysql.xml b/src/main/resources/egovframework/sqlmap/let/sym/grd/MberGrd_SQL_Mysql.xml index 722caa32..b11dd071 100644 --- a/src/main/resources/egovframework/sqlmap/let/sym/grd/MberGrd_SQL_Mysql.xml +++ b/src/main/resources/egovframework/sqlmap/let/sym/grd/MberGrd_SQL_Mysql.xml @@ -99,13 +99,13 @@ , DATE_FORMAT(A.GRD_END_DATE, '%Y-%m-%d') AS grdEndDate , A.GRD_STATUS AS grdStatus , CASE - WHEN A.GRD_STATUS = 'Y' + WHEN A.GRD_STATUS = 'Y' AND A.GRD_END_DATE >= NOW() THEN '진행중' WHEN A.GRD_STATUS = 'N' THEN '미진행' WHEN A.GRD_STATUS = 'E' - THEN '종료' - ELSE '' + THEN '종료' + ELSE '종료' END AS grdStatusNm , A.REG_ID AS regId , DATE_FORMAT(A.REG_DATE, '%Y-%m-%d %H:%i') AS regDate @@ -163,8 +163,60 @@ MJ_MBER_GRD_INFO WHERE MBER_ID = #mberId# + LIMIT 1 + + + From ae6034518342ba3c62f9532832a99160d19d39ba Mon Sep 17 00:00:00 2001 From: itn Date: Fri, 7 Jul 2023 16:57:41 +0900 Subject: [PATCH 4/7] =?UTF-8?q?=ED=9A=8C=EC=9B=90=20=EB=93=B1=EA=B8=89?= =?UTF-8?q?=EC=A0=9C=20=EB=8C=80=EC=83=81=EC=97=AC=EB=B6=80=20=EC=A0=95?= =?UTF-8?q?=EB=B3=B4(=EC=82=AC=EC=9A=A9=EC=9E=90=ED=99=94=EB=A9=B4?= =?UTF-8?q?=EC=9A=A9)=20=ED=85=8C=EC=8A=A4=ED=8A=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../let/sym/grd/service/MberGrdService.java | 2 +- .../let/sym/grd/service/impl/MberGrdDAO.java | 4 +- .../grd/service/impl/MberGrdServiceImpl.java | 4 +- .../let/sym/grd/web/MberGrdController.java | 42 +++++++++++++++++++ .../sqlmap/let/sym/grd/MberGrd_SQL_Mysql.xml | 2 +- .../WEB-INF/jsp/sym/grd/mberGrdList.jsp | 33 ++++++++++++++- 6 files changed, 79 insertions(+), 8 deletions(-) diff --git a/src/main/java/itn/let/sym/grd/service/MberGrdService.java b/src/main/java/itn/let/sym/grd/service/MberGrdService.java index 2d67ea04..2db6495a 100644 --- a/src/main/java/itn/let/sym/grd/service/MberGrdService.java +++ b/src/main/java/itn/let/sym/grd/service/MberGrdService.java @@ -27,7 +27,7 @@ public interface MberGrdService { public MberGrdVO selectMberGrdDetail(MberGrdVO mberGrdVO) throws Exception; // 회원 등급제 대상여부 정보(사용자화면용) - public MberGrdVO selectMberGrdInfo(MberGrdVO mberGrdVO) throws Exception; + public MberGrdVO selectMberGrdInfo(String userId) throws Exception; // 회원별 등급 누적결제액 상세 public MberGrdVO selectMberGrdAmtDetail(MberGrdVO mberGrdVO) throws Exception; diff --git a/src/main/java/itn/let/sym/grd/service/impl/MberGrdDAO.java b/src/main/java/itn/let/sym/grd/service/impl/MberGrdDAO.java index e870d869..f69921be 100644 --- a/src/main/java/itn/let/sym/grd/service/impl/MberGrdDAO.java +++ b/src/main/java/itn/let/sym/grd/service/impl/MberGrdDAO.java @@ -49,8 +49,8 @@ public class MberGrdDAO extends EgovAbstractDAO { } // 회원 등급제 대상여부 정보(사용자화면용) - public MberGrdVO selectMberGrdInfo(MberGrdVO mberGrdVO) throws Exception{ - return (MberGrdVO) select("mberGrdDAO.selectMberGrdInfo", mberGrdVO); + public MberGrdVO selectMberGrdInfo(String userId) throws Exception{ + return (MberGrdVO) select("mberGrdDAO.selectMberGrdInfo", userId); } // 회원별 등급 누적결제액 상세 diff --git a/src/main/java/itn/let/sym/grd/service/impl/MberGrdServiceImpl.java b/src/main/java/itn/let/sym/grd/service/impl/MberGrdServiceImpl.java index 0c8f38b3..cec6f5fd 100644 --- a/src/main/java/itn/let/sym/grd/service/impl/MberGrdServiceImpl.java +++ b/src/main/java/itn/let/sym/grd/service/impl/MberGrdServiceImpl.java @@ -90,8 +90,8 @@ public class MberGrdServiceImpl extends EgovAbstractServiceImpl implements MberG // 회원 등급제 대상여부 정보(사용자화면용) @Override - public MberGrdVO selectMberGrdInfo(MberGrdVO mberGrdVO) throws Exception { - return mberGrdDAO.selectMberGrdInfo(mberGrdVO); + public MberGrdVO selectMberGrdInfo(String userId) throws Exception { + return mberGrdDAO.selectMberGrdInfo(userId); } // 회원별 등급 누적결제액 상세 diff --git a/src/main/java/itn/let/sym/grd/web/MberGrdController.java b/src/main/java/itn/let/sym/grd/web/MberGrdController.java index 9c6886bf..39a953d9 100644 --- a/src/main/java/itn/let/sym/grd/web/MberGrdController.java +++ b/src/main/java/itn/let/sym/grd/web/MberGrdController.java @@ -197,4 +197,46 @@ public class MberGrdController { return "/sym/grd/mberGrdList"; } + // 등급제 적용여부 체크 + @RequestMapping(value = "/sym/grd/mberGrdChkAjax.do") + public ModelAndView mberGrdChkAjax( + @ModelAttribute("mberGrdVO") MberGrdVO mberGrdVO) throws Exception { + + ModelAndView modelAndView = new ModelAndView(); + modelAndView.setViewName("jsonView"); + + boolean isSuccess = true; + String msg = ""; + MberGrdVO rtnMberGrdVO = new MberGrdVO(); + + // 로그인VO에서 사용자 정보 가져오기 + LoginVO loginVO = (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser(); + String frstRegisterId = loginVO == null ? "" : loginVO.getId(); + mberGrdVO.setEditId(frstRegisterId); // 최초등록자ID + + try{ + // @@@@@ 등급제 적용여부 체크 + //MberGrdVO rtnMberGrdVO = new MberGrdVO(); + rtnMberGrdVO = mberGrdService.selectMberGrdInfo(mberGrdVO.getMberId()); + if (null != rtnMberGrdVO) { + // 등급제 적용 + + } + else { + isSuccess = false; + msg = "종료"; + } + } + catch(Exception e) { + isSuccess = false; + msg = e.getMessage(); + } + + modelAndView.addObject("rtnMberGrdVO", rtnMberGrdVO); + modelAndView.addObject("isSuccess", isSuccess); + modelAndView.addObject("msg", msg); + + return modelAndView; + } + } diff --git a/src/main/resources/egovframework/sqlmap/let/sym/grd/MberGrd_SQL_Mysql.xml b/src/main/resources/egovframework/sqlmap/let/sym/grd/MberGrd_SQL_Mysql.xml index b11dd071..e3a93dce 100644 --- a/src/main/resources/egovframework/sqlmap/let/sym/grd/MberGrd_SQL_Mysql.xml +++ b/src/main/resources/egovframework/sqlmap/let/sym/grd/MberGrd_SQL_Mysql.xml @@ -167,7 +167,7 @@ - SELECT M.mberId , blineCode diff --git a/src/main/webapp/WEB-INF/jsp/sym/grd/mberGrdList.jsp b/src/main/webapp/WEB-INF/jsp/sym/grd/mberGrdList.jsp index 7d2a7a25..90ae29dc 100644 --- a/src/main/webapp/WEB-INF/jsp/sym/grd/mberGrdList.jsp +++ b/src/main/webapp/WEB-INF/jsp/sym/grd/mberGrdList.jsp @@ -50,6 +50,36 @@ function fnSelectMber(mberId) { document.modiForm2.target = "popupSelectMber"; document.modiForm2.submit(); } + +// 등급제 적용 테스트 +function setMberGrdChk(mberId) { + $.ajax({ + type: "POST", + url: "/sym/grd/mberGrdChkAjax.do", + data: {"mberId" : mberId}, + dataType:'json', + async: false, + success: function (data) { + if (data.isSuccess) { + var sHtml = ""; + sHtml += "단문 : " + data.rtnMberGrdVO.shortPrice; + sHtml += ", 장문 : " + data.rtnMberGrdVO.longPrice; + sHtml += ", 그림1 : " + data.rtnMberGrdVO.picturePrice; + sHtml += ", 그림2 : " + data.rtnMberGrdVO.picture2Price; + sHtml += ", 그림3 : " + data.rtnMberGrdVO.picture3Price; + + alert(sHtml); + //$("#tr_"+data.rtnMberGrdVO.mberId).attr("title", sHtml); + } + else { + alert("Msg : " + data.msg); + } + }, + error: function (e) { + alert("ERROR : " + JSON.stringify(e)); + } + }); +} @@ -128,7 +158,7 @@ function fnSelectMber(mberId) { - + @@ -166,7 +196,6 @@ function fnSelectMber(mberId) { - From 8f40c2888810032a7256cd9688ab1d91bd64d336 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?ITN=5F=EB=94=94=EC=9E=90=EC=9D=B8=ED=8C=80?= Date: Fri, 7 Jul 2023 17:37:39 +0900 Subject: [PATCH 5/7] =?UTF-8?q?2023/07/07=20=EB=93=B1=EA=B8=89=EC=A0=9C=20?= =?UTF-8?q?=EC=BD=98=ED=85=90=EC=B8=A0=20=EC=B6=94=EA=B0=80,=20=EA=B0=84?= =?UTF-8?q?=ED=8E=B8=EA=B2=B0=EC=A0=9C=20=EC=BD=98=ED=85=90=EC=B8=A0=20?= =?UTF-8?q?=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/webapp/publish/css/common.css | 16 + src/main/webapp/publish/css/content.css | 72 +- src/main/webapp/publish/css/main.css | 3 + src/main/webapp/publish/css/mem.css | 28 +- src/main/webapp/publish/css/popupLayer.css | 9 + src/main/webapp/publish/firstpay_event.html | 218 +-- src/main/webapp/publish/guide_2022.html | 7 + .../webapp/publish/images/credit_small.png | Bin 0 -> 682 bytes .../webapp/publish/images/level/accrue.png | Bin 0 -> 822 bytes .../publish/images/level/level_btn_icon.png | Bin 0 -> 644 bytes .../images/level/level_icon/black_icon.png | Bin 0 -> 1670 bytes .../images/level/level_icon/blue_icon.png | Bin 0 -> 1673 bytes .../images/level/level_icon/gold_icon.png | Bin 0 -> 2348 bytes .../images/level/level_icon/green_icon.png | Bin 0 -> 1697 bytes .../level_small/black_small_icon.png | Bin 0 -> 1535 bytes .../level_small/blue_small_icon.png | Bin 0 -> 1397 bytes .../level_small/gold_small_icon.png | Bin 0 -> 2231 bytes .../level_small/green_small_icon.png | Bin 0 -> 1441 bytes .../level_small/orange_small_icon.png | Bin 0 -> 1369 bytes .../level_small/purple_small_icon.png | Bin 0 -> 1410 bytes .../level_icon/level_small/red_small_icon.png | Bin 0 -> 1485 bytes .../level_small/sliver_small_icon.png | Bin 0 -> 1963 bytes .../level_icon/level_small/vip_small_icon.png | Bin 0 -> 1646 bytes .../level_small/vvip_small_icon.png | Bin 0 -> 1543 bytes .../level_small/white_small_icon.png | Bin 0 -> 1665 bytes .../level_small/yellow_small_icon.png | Bin 0 -> 1271 bytes .../images/level/level_icon/orange_icon.png | Bin 0 -> 1625 bytes .../images/level/level_icon/purple_icon.png | Bin 0 -> 1544 bytes .../images/level/level_icon/red_icon.png | Bin 0 -> 1595 bytes .../images/level/level_icon/sliver_icon.png | Bin 0 -> 2057 bytes .../images/level/level_icon/vip_icon.png | Bin 0 -> 1729 bytes .../images/level/level_icon/vvip_icon.png | Bin 0 -> 1716 bytes .../images/level/level_icon/white_icon.png | Bin 0 -> 1784 bytes .../images/level/level_icon/yellow_icon.png | Bin 0 -> 1557 bytes .../webapp/publish/images/level/quick12.png | Bin 0 -> 703 bytes .../publish/images/level/quick12_hover.png | Bin 0 -> 665 bytes .../publish/images/level/top_banner.png | Bin 0 -> 50548 bytes src/main/webapp/publish/images/simple.png | Bin 0 -> 1544 bytes .../webapp/publish/images/simple_small.png | Bin 0 -> 791 bytes src/main/webapp/publish/index_2023.html | 97 +- .../webapp/publish/kakao_allimtalk_intro.html | 8 +- .../webapp/publish/mypage_index_2023.html | 152 +- src/main/webapp/publish/payment1.html | 157 +- src/main/webapp/publish/payment2.html | 1015 ++++++++---- src/main/webapp/publish/payment3.html | 1388 ++++++++++------- src/main/webapp/publish/sub1_2023.html | 24 + 46 files changed, 2170 insertions(+), 1024 deletions(-) create mode 100644 src/main/webapp/publish/images/credit_small.png create mode 100644 src/main/webapp/publish/images/level/accrue.png create mode 100644 src/main/webapp/publish/images/level/level_btn_icon.png create mode 100644 src/main/webapp/publish/images/level/level_icon/black_icon.png create mode 100644 src/main/webapp/publish/images/level/level_icon/blue_icon.png create mode 100644 src/main/webapp/publish/images/level/level_icon/gold_icon.png create mode 100644 src/main/webapp/publish/images/level/level_icon/green_icon.png create mode 100644 src/main/webapp/publish/images/level/level_icon/level_small/black_small_icon.png create mode 100644 src/main/webapp/publish/images/level/level_icon/level_small/blue_small_icon.png create mode 100644 src/main/webapp/publish/images/level/level_icon/level_small/gold_small_icon.png create mode 100644 src/main/webapp/publish/images/level/level_icon/level_small/green_small_icon.png create mode 100644 src/main/webapp/publish/images/level/level_icon/level_small/orange_small_icon.png create mode 100644 src/main/webapp/publish/images/level/level_icon/level_small/purple_small_icon.png create mode 100644 src/main/webapp/publish/images/level/level_icon/level_small/red_small_icon.png create mode 100644 src/main/webapp/publish/images/level/level_icon/level_small/sliver_small_icon.png create mode 100644 src/main/webapp/publish/images/level/level_icon/level_small/vip_small_icon.png create mode 100644 src/main/webapp/publish/images/level/level_icon/level_small/vvip_small_icon.png create mode 100644 src/main/webapp/publish/images/level/level_icon/level_small/white_small_icon.png create mode 100644 src/main/webapp/publish/images/level/level_icon/level_small/yellow_small_icon.png create mode 100644 src/main/webapp/publish/images/level/level_icon/orange_icon.png create mode 100644 src/main/webapp/publish/images/level/level_icon/purple_icon.png create mode 100644 src/main/webapp/publish/images/level/level_icon/red_icon.png create mode 100644 src/main/webapp/publish/images/level/level_icon/sliver_icon.png create mode 100644 src/main/webapp/publish/images/level/level_icon/vip_icon.png create mode 100644 src/main/webapp/publish/images/level/level_icon/vvip_icon.png create mode 100644 src/main/webapp/publish/images/level/level_icon/white_icon.png create mode 100644 src/main/webapp/publish/images/level/level_icon/yellow_icon.png create mode 100644 src/main/webapp/publish/images/level/quick12.png create mode 100644 src/main/webapp/publish/images/level/quick12_hover.png create mode 100644 src/main/webapp/publish/images/level/top_banner.png create mode 100644 src/main/webapp/publish/images/simple.png create mode 100644 src/main/webapp/publish/images/simple_small.png diff --git a/src/main/webapp/publish/css/common.css b/src/main/webapp/publish/css/common.css index 305b08ae..5cd826d4 100644 --- a/src/main/webapp/publish/css/common.css +++ b/src/main/webapp/publish/css/common.css @@ -99,6 +99,20 @@ caption, .label {position: absolute;width: 1px;height: 1px;margin: -1px;border: .login2 .login_info .login2_name p {color: #222; font-weight: 400; vertical-align: top; font-weight: 500; height: 16px; white-space:nowrap;} .login2 .login_info .login2_name span {width: 61px;padding:0 10px 0 0;margin: 0 0 0 -5px;} .login2 .login_info i {background-image: url(/publish/images/mypageIcon2.png);width: 34px;height: 34px;margin-right: 5px;} +/*등급별 아이콘*/ +.login2 .login_info i.vvip{background-image: url(/publish/images/level/level_icon/vvip_icon.png);} +.login2 .login_info i.vip{background-image: url(/publish/images/level/level_icon/vip_icon.png);} +.login2 .login_info i.gold{background-image: url(/publish/images/level/level_icon/gold_icon.png);} +.login2 .login_info i.sliver{background-image: url(/publish/images/level/level_icon/sliver_icon.png);} +.login2 .login_info i.black{background-image: url(/publish/images/level/level_icon/black_icon.png);} +.login2 .login_info i.red{background-image: url(/publish/images/level/level_icon/red_icon.png);} +.login2 .login_info i.purple{background-image: url(/publish/images/level/level_icon/purple_icon.png);} +.login2 .login_info i.blue{background-image: url(/publish/images/level/level_icon/blue_icon.png);} +.login2 .login_info i.orange{background-image: url(/publish/images/level/level_icon/orange_icon.png);} +.login2 .login_info i.green{background-image: url(/publish/images/level/level_icon/green_icon.png);} +.login2 .login_info i.yellow{background-image: url(/publish/images/level/level_icon/yellow_icon.png);} +.login2 .login_info i.white{background-image: url(/publish/images/level/level_icon/white_icon.png);} +/*등급별 아이콘 끝*/ .login2 .login_info button {margin-right: 2px;} .login2 .login_pay {display:flex;} .login2 .check_money p span, .login2 .point p span {padding-left: 4px;} @@ -220,6 +234,7 @@ caption, .label {position: absolute;width: 1px;height: 1px;margin: -1px;border: .quickMenu .quickMenuIn li i.quick9 {background-image: url(/publish/images/quick9.png);width: 24px; height:20px;} .quickMenu .quickMenuIn li i.quick10 {background-image: url(/publish/images/quick10.png);width: 21px; height:20px;} .quickMenu .quickMenuIn li i.quick11 {background-image: url(/publish/images/quick11.png);width: 20px; height:20px;} +.quickMenu .quickMenuIn li i.quick12 {background-image: url(/publish/images/level/quick12.png);width: 20px; height:20px;} .quickMenu .quickMenuIn li span {display: block;font-size: 12px;color: #555;padding-top: 8px;} .quickMenu .goTop {background-color: #929599;color: #fff;width: 90px;padding: 10px 0;border-radius: 0 0 8px 8px;font-size: 20px;} .quickMenu .goTop i {background-image: url(/publish/images/goTop.png);width: 12px;height: 10px;margin-left: 5px;margin-bottom: 5px;} @@ -234,6 +249,7 @@ caption, .label {position: absolute;width: 1px;height: 1px;margin: -1px;border: .quickMenu .quickMenuIn li:hover i.quick9 {background-image: url(/publish/images/quick9_hover.png);width: 24px; height:20px;} .quickMenu .quickMenuIn li:hover i.quick10 {background-image: url(/publish/images/quick10_hover.png);width: 21px; height:20px;} .quickMenu .quickMenuIn li:hover i.quick11 {background-image: url(/publish/images/quick11_hover.png);width: 20px; height:20px;} +.quickMenu .quickMenuIn li:hover i.quick12 {background-image: url(/publish/images/level/quick12_hover.png);width: 20px; height:20px;} .quickMenu .quickMenuIn li:hover span {color: #002c9a;font-weight: 500;} .quickMenu .quick_kakaobtn {position:absolute;right:0;bottom:-100px;width:90px;height:90px;font-size:0;text-indent:-9999em;background:url(/publish/images/content/icon_quick_kakao.png) no-repeat left top;z-index:15;} .quickMenu .quick_kakaobtn a {display:block;width:100%;height:100%;} diff --git a/src/main/webapp/publish/css/content.css b/src/main/webapp/publish/css/content.css index 1617b508..a10f0f11 100644 --- a/src/main/webapp/publish/css/content.css +++ b/src/main/webapp/publish/css/content.css @@ -90,7 +90,7 @@ input[type=text]::-ms-reveal, input[type=password]::-ms-reveal, input[type=email /* tabTpye1 */ .tabType1 {background-color: #fff;width: 100%;border-radius: 10px; display: flex;text-align: center;margin-bottom: 20px;border:2px solid #46484a;} .tabType1 li {flex-basis: calc(100%/2); position: relative;} -.tabType1 li button {width: 100%;padding: 13px 0;font-size: 18px;position:relative;z-index:1;} +.tabType1 li button {width: 100%;padding: 13px 0;font-size: 16px;position:relative;z-index:1;} .tabType1 li.active {background-color: #46484a;} .tabType1 li.active:after {content:'';position:absolute;left:-1px;top:-1px;width:100%;height:100%;border:1px solid #46484a;} .tabType1 li.active button {color: #fff;border:1px solid #46484a;background-color: #46484a;} @@ -427,7 +427,7 @@ input[type=text]::-ms-reveal, input[type=password]::-ms-reveal, input[type=email .tType1 tbody tr th.billingAmount button.cal_btn {position: absolute;right: 0; top: 50%;transform: translateY(-50%);background-color: #fbc72b;width: 88px;height: 32px;border-radius: 5px;} .tType1 tbody tr th.billingAmount button.cal_btn:hover {box-shadow: 0px 0px 5px 3px rgba(0,0,0,0.12);} .tType1 tbody tr th.billingAmount button.cal_btn i {background-image: url(/publish/images/content/calIcon.png);width: 12px;height: 16px;margin: 0 3px 2px 0;} -.tType1 tbody tr th.billingAmount .pay_type {background-color: #fff; border-radius: 5px; height: 60px; padding: 12px 13px; box-sizing: border-box;} +.tType1 tbody tr th.billingAmount .pay_type {background-color: #fff; border-radius: 5px 5px 0 0; height: 60px; padding: 12px 13px; box-sizing: border-box;} .tType1 tbody tr th.billingAmount .pay_type button.btn_event_cash{width: 100px;} .tType1 tbody tr th.billingAmount .pay_type:last-child {margin-top: 10px;} .tType1 tbody tr th.billingAmount .pay_type>div:first-child {float: left;margin:0 0 0 5px;} @@ -447,6 +447,21 @@ input[type=text]::-ms-reveal, input[type=password]::-ms-reveal, input[type=email .tType1 tbody select.sel_number {width: 340px; height: 40px; padding: 0 20px; background-color: #f2f2f2;border-radius: 5px; border: 0;color: #002c9a;font-weight: 400;font-size: 16px;background-image: url(/publish/images/select_search.png); background-repeat: no-repeat; background-position: 94% center;} .tType1 tbody input[type="text"]::placeholder {color: #a6a6a6;} .tType1 tbody input:disabled {background-color: #dedede;} + +/*발송금액 아래 등급별 가격안내 추가*/ +.my_price_wrap .center-line{width: 96%; height: 1px; background-color: #e5e5e5; margin: 0 auto;} +.my_price_wrap{letter-spacing: -0.5px; width: calc(100% - 100px); background-color: #fff; border-radius: 0 0 5px 5px; width: 100%;} +.my_price_wrap ul{display: flex; width: calc(100% - 20px); border-bottom: 1px dashed #d5d5d5; margin: 0 auto; padding: 15px 0px 15px 5px; align-items: center; flex-wrap: wrap; box-sizing: border-box;} +.my_price_wrap ul:last-child{border: 0; align-items: flex-start;} +.my_price_wrap ul:first-child li:last-child{margin: 0; padding: 0} +.my_price_wrap .title{font-size: 17px; font-weight: 400; color: #222; margin-top: 1px;} +.my_price_wrap .title span{font-size: 15px;} +.my_price_wrap .title img{margin: 0 8px 0 0; vertical-align: top;} +.my_price_wrap .type{border: 1px solid #46484a; border-radius: 3px; margin-right: 3px; color: #46484a; padding: 0 4px 1px 4px;} +.my_price_wrap .type, .price_line{font-size: 16px; font-weight: 400; color: #555;} +.my_price_wrap .price{color: #e40000; font-size: 18px; font-weight: 700;} +.my_price_wrap .line{font-size: 14px; color: #ababab;} + /*// tType1 */ /*// sub page 반복 */ @@ -916,6 +931,11 @@ button.check_validity:hover {border: 1px solid #a3a3a3;box-shadow: 0px 0px 5px .pay_cont .excel_middle {margin: 20px 0 10px 0;} .pay_cont .excel_middle .selType2 {width: 82px; height: 32px; margin-left: 0;} .pay_cont .select_btnWrap .add_text2 {font-size: 16px; padding-top: 7px; color: #666; font-weight: 300;} + +/*등급 및 누적결제액 확인 버튼 추가*/ +.pay_cont .excel_middle .level_btn{margin: 0 5px; border: 1px solid #002c9a; color: #002c9a;} +.pay_cont .excel_middle .level_btn img{margin-top: -3px;} + .pay_cont .excel_middle .print_btn {margin: 0 5px;} .pay_cont .pay_info {display: flex; justify-content: center; background-color: #efeff0; width: 100%; padding: 16px 0; border-radius: 5px; margin: 20px 0 50px 0; box-sizing: border-box; } .pay_cont .pay_info p:nth-child(1) {font-size: 18px;} @@ -1055,13 +1075,13 @@ button.check_validity:hover {border: 1px solid #a3a3a3;box-shadow: 0px 0px 5px .charg_cont.current {display: block;} .charg_cont .tab_tit{font-size: 24px; font-weight: bold; color: #222; margin-bottom: 20px; margin-top: 40px;} .charg_cont .area_tab{display: flex; width: 100%; justify-content: space-between;} -.charg_cont .area_tab li{ width: calc((100% - 80px)/4); border: 1px solid #ddd; border-radius: 5px; position: relative; box-sizing: border-box; text-align: center;} +.charg_cont .area_tab li{ width: calc((100% - 80px)/5); border: 1px solid #ddd; border-radius: 5px; position: relative; box-sizing: border-box; text-align: center;} .charg_cont .area_tab li button {font-size: 22px; font-weight: 400; width: 100%; height: 100%; padding: 60px 20px 40px 20px;position:relative;z-index:1;} .charg_cont .area_tab li.active {border: 3px solid #fbc72b;} .charg_cont .area_tab li.active::before{background-image: url(/publish/images/content/icon_chargeCheck2.png); background-color: #fbc72b; border: 2px solid #fbc72b;} .charg_cont .area_tab li::before{position: absolute; content: " "; width: 31px; height: 31px; border: 3px solid #ccc; right: 15px; top: 15px; border-radius: 100%; background-image: url(/publish/images/content/icon_chargeCheck1.png); background-repeat: no-repeat; background-position: center 58%;} .charg_cont .area_tab button i{width: 65px; height: 55px; display: block; margin: 0 auto 15px auto; background-position: center;} -.charg_cont .area_tab .btn_charge1 i{background-image: url(/publish/images/content/icon_charging1.png);} +.charg_cont .area_tab .btn_charge1 i{background-image: url(/publish/images/simple.png);} .charg_cont .area_tab .btn_charge2 i{background-image: url(/publish/images/content/icon_charging2.png);} .charg_cont .area_tab .btn_charge3 i{background-image: url(/publish/images/content/icon_charging3.png);} .charg_cont .area_tab .btn_charge4 i{background-image: url(/publish/images/content/icon_charging4.png);} @@ -1143,6 +1163,33 @@ button.check_validity:hover {border: 1px solid #a3a3a3;box-shadow: 0px 0px 5px .charg_cont .tType1 .box_input.flex input{border: 1px solid #ccc;} .charg_cont .tType1 .box_input.flex input[type="text"] {width: 200px;background-color: #fff;} .charg_cont .tType1 .box_input.flex button{background-color: #002c9a; color: #fff; border: 0; margin-left: 10px;} + + +/*누적결제액별 등급 및 단간 추가*/ +.accrue_price{width: 100%; height: 105px; border-radius: 5px; background-color: #f2f2f2;} +.accrue_price p{font-size: 22px; font-weight: 700; line-height: 105px; margin-left: 53px;} +.accrue_price p span{border-radius: 5px; background-color: #fff; padding: 10px 10px 10px 10px; font-size: 18px; font-weight: 400;} +.accrue_price p span img{margin-right: 5px; margin-top: -5px;} +.accrue_price p span span{padding: 0; font-size: 22px; font-weight: 700; color: #e40000;} +.accrue_level .tType1_title{margin-top: 40px;} +.accrue_level .tType1_title img{margin-top: -5px;} +.accrue_level .tType2{width: 100%; border-top: 1px solid #000; text-align: center;} +.accrue_level .tType2 thead tr{background-color: #f7f7f7; border-bottom: 1px solid #e5e5e5;} +.accrue_level .tType2 thead tr th{height: 46px; font-size: 16px; font-weight: 500; border-right: 1px solid #e5e5e5; vertical-align: middle;} +.accrue_level .tType2 thead tr th:last-child{border-right: 0;} +.accrue_level .tType2 tbody tr{border-bottom: 1px solid #e5e5e5;} +.accrue_level .tType2 tbody tr th{font-size: 16px; font-weight: 500; border-right: 1px solid #e5e5e5; height: 42px; vertical-align: middle;} +.accrue_level .tType2 tbody tr td{font-size: 16px; font-weight: 300; border-right: 1px solid #e5e5e5; vertical-align: middle; line-height: 1.4;} +.accrue_level .tType2 tbody tr td:last-child{border-right: 0;} +.accrue_level .tType2 tbody tr td:last-child>span {font-weight: 400;} + +.accrue_level .tType2_level tbody tr th{font-weight: 300;} +.accrue_level .tType2_level tbody tr .level_price{font-weight: 500;} +.accrue_level .level_first{font-weight: 400; font-size: 18px; color: #666;} +.accrue_level .level span{font-weight: 400; font-size: 18px; color: #666;} +.accrue_level .tType2 .th_second span{font-size: 15px; font-weight: 300;} +.accrue_level .reqTxt4_last{text-indent: -12px; margin: 0px 0px 0px 11px;} + /* //결제하기 */ /* 요금안내/견적내기 */ @@ -1153,11 +1200,15 @@ button.check_validity:hover {border: 1px solid #a3a3a3;box-shadow: 0px 0px 5px .fee_cont .tType2 thead tr th{height: 46px; font-size: 16px; font-weight: 500; border-right: 1px solid #e5e5e5; vertical-align: middle;} .fee_cont .tType2 thead tr th:last-child{border-right: 0;} .fee_cont .tType2 tbody tr{border-bottom: 1px solid #e5e5e5;} + .fee_cont .tType2 tbody tr th{font-size: 16px; font-weight: 500; border-right: 1px solid #e5e5e5; height: 50px; vertical-align: middle;} .fee_cont .tType2 tbody tr td{font-size: 16px; font-weight: 300; border-right: 1px solid #e5e5e5; vertical-align: middle; line-height: 1.4;} .fee_cont .tType2 tbody tr td:last-child{border-right: 0;} .fee_cont .tType2 tbody tr td:last-child>span {font-weight: 400;} +/*문자(등급별 요금 안내) 테이블 높이 수정*/ +.fee_cont .tType2 .level_table th{height: 42px;} + .fee_cont .tType1 select, .fee_cont .tType1 input{border: 0; background-color: #f2f2f2;} .fee_cont .btn_add{float: right;} .fee_cont .btn_add img{margin-left: 5px;} @@ -1189,6 +1240,14 @@ button.check_validity:hover {border: 1px solid #a3a3a3;box-shadow: 0px 0px 5px .tb_wrap.totalPrice_tb .tType4 tbody td {font-size: 18px; font-weight: 400; color: #222; height: 52px; line-height: 31px; position: relative;} .tb_wrap.totalPrice_tb .tType4 tbody td select {height: 36px; top: 8px; border: 2px solid; } + +/*문자(등급별 요금 안내)*/ +.fee_cont .tType2_level tbody tr th{font-weight: 300;} +.fee_cont .tType2_level tbody tr .level_price{font-weight: 500;} +.fee_cont .level_first{font-weight: 400; font-size: 18px; color: #666;} +.fee_cont .level span{font-weight: 400; font-size: 18px; color: #666;} +.fee_cont .tType2 .th_second span{font-size: 15px; font-weight: 300;} +.fee_cont .reqTxt4_last{text-indent: -12px; margin: 0px 0px 0px 11px;} /* //요금안내/견적내기 */ /* 예약관리 */ @@ -1559,7 +1618,7 @@ button.check_validity:hover {border: 1px solid #a3a3a3;box-shadow: 0px 0px 5px /* .fax_content .final_wrap .pay_type {border-radius: 5px; height: 60px; padding: 12px 13px; box-sizing: border-box;} */ .fax_content .final_wrap .pay_type:last-child {margin-top: 10px;} /* .fax_content .final_wrap .pay_type>div:first-child {float: left;margin:0 0 0 5px; background-color: #fff;} */ -.fax_content .final_wrap .pay_type>div:first-child {display:inline-block;width: calc(100% - 187px); background-color: #fff;padding: 8px 15px; border-radius: 5px;} +.fax_content .final_wrap .pay_type>div:first-child {display:inline-block;width: calc(100% - 187px); background-color: #fff; padding: 8px 15px; border-radius: 5px;} .fax_content .final_wrap .pay_type>div .won {display:inline-block;margin:9px 11px 0 -34px;font-size:16px;vertical-align:top;color:#9a9a9a;} .fax_content .final_wrap .pay_type>div:last-child {display:inline-block;max-width: 150px; width: 100%;} .fax_content .final_wrap .pay_type>div:last-child button{width: 100%;} @@ -1598,6 +1657,9 @@ button.check_validity:hover {border: 1px solid #a3a3a3;box-shadow: 0px 0px 5px .fax_content .qmMark:hover+.send_hover_cont{display: block;} .fax_content .qmMark+.send_hover_cont li{text-indent: -9px; margin: 0 0 0 9px;} + + + /* 카톡전송 > 알림톡 소개 */ .kakao_intro_cont{letter-spacing: -0.5px; /*word-break: keep-all;*/} .kakao_intro_cont .heading h2{letter-spacing: 0;} diff --git a/src/main/webapp/publish/css/main.css b/src/main/webapp/publish/css/main.css index aa085512..ae62cd9e 100644 --- a/src/main/webapp/publish/css/main.css +++ b/src/main/webapp/publish/css/main.css @@ -202,6 +202,9 @@ .btn_custom img{vertical-align: middle; margin-top: -4px; margin-right: 2px;} .btn_custom:hover {box-shadow: 0px 0px 5px 3px rgba(0,0,0,0.12);} +/*요금안내 top 배너 시작*/ +.price_top_banner{position: fixed; right: 4%; top: 160px; z-index: 20;} + /* media queries */ @media screen and (max-width: 1800px){ /* content2 문자샘플 영역 */ diff --git a/src/main/webapp/publish/css/mem.css b/src/main/webapp/publish/css/mem.css index c4a77d07..34ba0deb 100644 --- a/src/main/webapp/publish/css/mem.css +++ b/src/main/webapp/publish/css/mem.css @@ -293,7 +293,7 @@ input[type="password"].list_inputType1 {padding: 0px;background-color: transpare /* //join4 - 가입완료 */ -/* 마이페이지 */ + /* 메인화면 */ .my_dashboard {margin-top: 40px;} @@ -359,6 +359,7 @@ input[type="password"].list_inputType1 {padding: 0px;background-color: transpare .my_dashboard table tbody tr:last-child td {border-bottom: 1px solid transparent; } .my_dashboard table tbody tr:last-child td:first-child {border-bottom: 1px solid transparent; border-radius: 0 0 0 5px;} .my_dashboard table tbody tr:last-child td:last-child {border-bottom: 1px solid transparent; border-radius: 0 0 5px 0 ;} + /* mypage dashboard cont1 */ .my_dashboard .my_dashboard_cont1 {padding: 25px 30px;} .my_dashboard_cont1>div {display: flex; align-items: center;} @@ -367,6 +368,18 @@ input[type="password"].list_inputType1 {padding: 0px;background-color: transpare .my_dashboard .my_dashboard_cont1 button {font-size: 17px; height: 45px; padding: 0 15px; border: 1px solid #002c9a; border-radius: 5px; margin-left: 15px; color: #002c9a; background-color: #fff; position: relative; right: 5px; top: 3px;} .my_dashboard_cont1>span {background-color: #fff; height: 43px; padding: 0 30px; border-radius: 21.5px; align-items: center; display: flex; font-weight: 300;} .my_dashboard_cont1>span>span {font-weight: 500;} + +/* mypage dashboard cont1 등급제 기간 추가 - 기간 지나면 이부분 삭제 */ +.my_dashboard .my_dashboard_cont1 {padding: 25px 30px;} +.my_dashboard_cont1>div {display: flex; align-items: center;} +.my_dashboard_cont1 p {font-size: 16px; font-weight: 300;} +.my_dashboard_cont1 p span {font-size: 24px; font-weight: 600; padding-right: 3px; margin-left: -20px;} +.my_dashboard .my_dashboard_cont1 button {font-size: 17px; height: 45px; padding: 0 8px; border: 1px solid #002c9a; border-radius: 5px; margin-left: 15px; color: #002c9a; background-color: #fff; position: relative; right: 5px; top: 3px;} +.my_dashboard_cont1>span {background-color: #fff; height: 43px; padding: 0 30px; border-radius: 21.5px; align-items: center; display: flex; font-weight: 300;} +.my_dashboard_cont1>span>span {font-weight: 500;} +.my_dashboard .my_dashboard_cont1 .level_icon{margin: 0 7px 0 0; display: block; width: 46px; height: 80px; text-align: center; padding: 0; background-color: transparent; border: 0;} +.my_dashboard_cont1 .level_icon p{font-size: 14px; font-weight: 400; margin-top: 2px; color: #444;} + /* mypage dashboard cont2 */ .my_dashboard .my_dashboard_cont2 {width: 100%; flex-flow: wrap;} .dashboard_info {display: flex; flex-flow: wrap; width: 100%; justify-content: space-between;} @@ -642,6 +655,11 @@ input[type="password"].list_inputType1 {padding: 0px;background-color: transpare .limited_wrap .limited_button {margin:40px 0;} .limited_wrap .limited_button .btnType {width:160px;margin:0 3px;} +/* 마이페이지 */ +/*등급제 아이콘 추가*/ + + + /* media queries */ @@ -652,6 +670,14 @@ input[type="password"].list_inputType1 {padding: 0px;background-color: transpare .my_dashboard .send_price{width: calc(100% - 340px);} .send_top .send_price li{letter-spacing: -1px;} .send_top .send_price .title{padding: 0 4px 0 0;} + + /* mypage dashboard cont1 등급제 기간 추가 - 기간 지나면 이부분 삭제 */ + .my_dashboard_cont1 p {font-size: 17px;} + .my_dashboard_cont1 p span {font-size: 22px;} + .my_dashboard .my_dashboard_cont1 button {font-size: 16px; padding: 0 8px; margin: 0 0 0 13px; color: #002c9a;} + .my_dashboard_cont1 .level_icon{margin: 0 22px 0 0;} + .my_dashboard .send_price{margin: 0 -24px 0 0;} + .my_dashboard .send_price .price_title{width: 75px;} } @media only screen and (max-width:1380px){ diff --git a/src/main/webapp/publish/css/popupLayer.css b/src/main/webapp/publish/css/popupLayer.css index e7d9744a..43ade239 100644 --- a/src/main/webapp/publish/css/popupLayer.css +++ b/src/main/webapp/publish/css/popupLayer.css @@ -1114,6 +1114,15 @@ /* 결제완료 */ +/* 누적결제액 세부내역 팝업 */ +.level_popup .popup_heading p span{font-size: 18px; font-weight: 400;} +.level_popup .candidate_table .tb_wrap{min-height: auto;} +.level_popup .candidate_table table tr:first-child{border-top: 0;} +.level_popup .level_tx{margin: -20px 0 3px 0; font-size: 16px; font-weight: 300;} +.level_popup .layer_in .level_title th{ font-size: 15px; font-weight: 400; text-align: center;} +.level_popup .layer_in .level_text td{font-size: 15px; font-weight: 300; text-align: center; height: 40px;} +.level_popup .pagination{margin-top: 20px;} + /* ie */ @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) { /* 특수문자 */ diff --git a/src/main/webapp/publish/firstpay_event.html b/src/main/webapp/publish/firstpay_event.html index 4ad4c190..818b9738 100644 --- a/src/main/webapp/publish/firstpay_event.html +++ b/src/main/webapp/publish/firstpay_event.html @@ -286,26 +286,19 @@

충전수단 선택

    -
  • -
  • +
  • +
  • +
  • -
  • -
  • +
  • +
-
+
- +
-

신용카드

+

+ 간편결제 스몰 아이콘 간편결제

@@ -345,6 +338,7 @@ --%>

--> +

@@ -354,12 +348,86 @@
최종 결제금액 :
    -
  • 5,000원(공급가액) -
  • -
  • 500원(부가세) -
  • -
  • 5,500원(최종금액) -
  • +
  • 50,000원(공급가액)
  • +
  • 5,000원(부가세)
  • +
  • 55,000원(최종금액)
  • +
+
+ + + + + + + + + +
+
+ +

- 인터넷 익스플로러 이용 고객께서는 도구-팝업 차단 해제 후 충전이 가능합니다.

+

- 결제사별 정책상 충전금액 제한이 있을 수 있습니다.

+
+
+
+ + + +
+

신용카드

+ + + + + + + + + + + + + @@ -419,11 +477,12 @@

충전금액 + + + +

+
+
+
+
최종 결제금액 :
+
+
    +
  • 50,000원(공급가액)
  • +
  • 5,000원(부가세)
  • +
  • 55,000원(최종금액)
@@ -385,7 +453,7 @@ -
+

- - -

입금 즉시 자동 충전되는 나만의 전용계좌 개설(평생 사용가능, - 5천원 이상 입금 가능)

-
- -

1. 현재 발급받은 전용계좌가 없습니다.

-

2. 입금 즉시 자동 충전되는 나만의 전용계좌 개설(평생 사용가능, - 5천원 이상 입금 가능)

-
-
- +

1. 현재 발급받은 전용계좌가 없습니다.

+

2. 입금 즉시 자동 충전되는 나만의 전용계좌 개설(평생 사용가능, 5천원 이상 입금 가능)

@@ -444,59 +501,28 @@ - - - - - - - - - - - - - - - + + + @@ -540,6 +566,7 @@ --%>

--> +

@@ -549,12 +576,9 @@
최종 결제금액 :
    -
  • 5,000원(공급가액) -
  • -
  • 500원(부가세) -
  • -
  • 5,500원(최종금액) -
  • +
  • 50,000원(공급가액)
  • +
  • 5,000원(부가세)
  • +
  • 55,000원(최종금액)
@@ -623,6 +647,7 @@ --%>

--> +

@@ -632,12 +657,9 @@
최종 결제금액 :
    -
  • 5,000원(공급가액) -
  • -
  • 500원(부가세) -
  • -
  • 5,500원(최종금액) -
  • +
  • 50,000원(공급가액)
  • +
  • 5,000원(부가세)
  • +
  • 55,000원(최종금액)
diff --git a/src/main/webapp/publish/guide_2022.html b/src/main/webapp/publish/guide_2022.html index b043ed74..e1c6f35b 100644 --- a/src/main/webapp/publish/guide_2022.html +++ b/src/main/webapp/publish/guide_2022.html @@ -18,6 +18,13 @@
    +
  • index_2023.html로그인 바 > 등급별 아이콘 이미지 추가 + 홍길동(개인)으로 이름 변경 (님)자 제거 + 요금안내 페이지 이동 탑 배너 추가 + 퀵메뉴 > 맞춤제작을 요금안내로 변경
  • +
  • mypage_index_2023.html마이페이지 > 등급별 아이콘 버튼 추가 + 등급별 아이콘 버튼 클릭 > 팝업추가
  • +
  • firstpay_event.html고객센터 > 이벤트페이지 > 충전수단 선택 내용 추가
  • +
  • payment3.html결제관리 > 요금결제내역 > 간편결제 결제내역 tap추가 + 등급 및 누적결제액 확인 버튼 추가 + 등급 및 누적결제액 확인 버튼 클릭 > 팝업추가
  • +
  • sub1_2023.html문자발송 > 문자전송 > 발송금액 > 나의단가 금액 추가
  • +
  • payment2.html결제관리 > 결제하기 > 충전수단 선택 > 간편결제추가 + 등급별금액&누적결제액별 등급 및 단가(테이블 및 텍스트 추가)
  • +
  • payment1.html결제관리 > 요금안내/견적안내(테이블 및 텍스트 추가)
  • kakao_allimtalk_intro.html카카오톡 소개
  • popup_pay_complete.html결제완료 팝업
  • payment4.html요금사용내역(발송내역, 세부내역 타이틀 추가)
  • diff --git a/src/main/webapp/publish/images/credit_small.png b/src/main/webapp/publish/images/credit_small.png new file mode 100644 index 0000000000000000000000000000000000000000..087161fb6ffe58c420ee03f27443554607a90a79 GIT binary patch literal 682 zcmV;b0#*HqP)Sg70007UNklnnjrH*_-7x2|YQDI*_%@%< zw`*LjR*z(-sjB*uF%|@HcrLgepwMkI#%?N#@}3Y<7ee$@Vr)2L>;iy#! z1cO0ZsZ=c4Y}P;sdCnNS4d6)WJNO8|6##!Y=dXwGF9BHddcDHoa7-;PFT?Nmqt$8| z_V)I$v$La?N~J(9ms9#PzY5@%?7Gu#u)e-NH8V5Qu?ZnqT3TxB{{FtQva<4DSvCNq z^;_KN+dJZ%=S~aSE&Z+d3c%MPx;+TcXf)cR5CV}%1iQPtoxT3d9|M>gl8Dy7P^;At z2n3KwB(S-;DZgO2T&}@z&UtO*I|DGA&4|Tfh{xlw+wIue+QR(&ysUW-d`2$V_m&;{PN}C3&)jFpi7*!RM$#i*odfMpo`PwkI+YOt| z*2ycCO0|l`;%72qwmrfayF)4cxVpMZ!r`#Yvb`@KHJMCG__3yG{xiY#08c2TZx$97 zXebm?WY?tA>1L%;X*8S7hn(~6GsE=&4oc}WgTWAyH5Ni_Xqxttb6y63f8qqvp_8m- QvH$=807*qoM6N<$f{=<($N&HU literal 0 HcmV?d00001 diff --git a/src/main/webapp/publish/images/level/accrue.png b/src/main/webapp/publish/images/level/accrue.png new file mode 100644 index 0000000000000000000000000000000000000000..7ebdd0d9590d355ac7f79c205f11480f6c3a6116 GIT binary patch literal 822 zcmV-61Ihe}P)71Q{00090NklrAQC$O%O^^Dp>H8 zlZRprNdE=ViUgWsFDfQBAWDO*C2o=>yHjSno2H?gM9rZeJlJ6--!E_GyVS*@2my%OEnq+j;7Xk`q$cn$IqGCyv;HgKj=3#% zp#!*eUZ7B6t_Og-!n_6`RZrj#GwP~Jz)t{fmWd-WebGckl6y+{}FLr?Q_Tg=p%XJhC2J=fxOH`I+ zYAGI%)A8|f%JaNN2w5<1u}cA42_Zkj;jpf%Dz#HA7NgD0&1yqK!~07C8yg$f2L=WT zx~|*8EHS7c2&|&-UliCa2tpy1N>znfnwXfN9*<|U+^EY0eg}}W3!djs`}_Ni)DnpV z9UUDtY;(CB9T^#+CnqPycx-Hp?(gp#-`m^Ul;b$P{GwSfE9z0D@OV65r>Cb4qvPXa z>U28k+S(djUS2kCq`A2{qi7rs2R%GIEM_T+VgZ2Dg55Ct=U%n*^Z9(6v$L~?Nnc+d zGctmK8HDF~N(eE=y}i9fU{h054gj%ySkHZ~24j*W>Eq<&q+xP!a6luGND;QUxLEuH zGcz+ZnM@k%6h&cMO0B+U`4c{!iY2LYsOWt59^yWJmrKA*a}y86%FOQ+Lxcz9TI zI-RT-yRF}sKBCSI6-DutuIsPc+uP~j;Go#j(!wrmY;A4n(P&iXIBw_c?CddsZ}k9L zVmDKd-|z1tg!na0Q)F4*&15p`W?!@V_$>gx0I1y?rT=jrU;qFB07*qoM6N<$f<+>D A4FCWD literal 0 HcmV?d00001 diff --git a/src/main/webapp/publish/images/level/level_btn_icon.png b/src/main/webapp/publish/images/level/level_btn_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..c3754030b12989922754a2e5878451901bcdc31e GIT binary patch literal 644 zcmV-~0(0lFh0Xu({e64w^{%zvZ;%(imKuh6n2k}dZwuJU|23E%2Dfu{ z^)Y2{n7y6-BiaErrVPbsyoteh1{1^dZ~U37lYNPLEU_@zI?!O38;dJC^(ei)8U%U#)1TK*ij7h_`xtj?ZZ{dxjk2|tQucnMF3 z$+H11O=o58IlPP)G5{wqreRpE-c2hPa5;`&3($g0&J6t3PqN>#ehQysZ7VI;h`o=g z3HZf4D+V*een;4JCO)lzeSq~?Rh~4abSD~>!-KdK<~4FxF%3teS9S7XvB5j|HTQRF ztpGdH%7%zLGatB~XcWs$__SS2;z1oKr_01vZ*=}|@7stzK2EPq=Kc%2#_`hojewnt zWOswnGbCg89nNECfX`+ms}^A$mSR`jtTdd=2~}0=#~Q$@%3q259zIDMHv(D!W3d$< zN874b^ZOCrZSMOXuuWBHD|<~2OYF(`0>9%MT#4H&lgpa#?*{@LsETQIGB-NcxYj{j ehsMp`m+%M`LXJW9>v%l?0000#wS1k literal 0 HcmV?d00001 diff --git a/src/main/webapp/publish/images/level/level_icon/black_icon.png b/src/main/webapp/publish/images/level/level_icon/black_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..0aa26ea863f9d0a0b404c9d72e79fb07a4f6cf1e GIT binary patch literal 1670 zcmV;126_33P)9UWQ`?&UFs9YCYHGw?z^Zjk>JreZ}BEs|hGyrQjPM$L| z(jeDGL_(v{L7`M(#0Z6GWAU!MyOdk?z1I?&Z=bGzN{G5~uRV?VtR5uWE$0UT7R z)U#uZCPW!x!EszjZzu=?p4c9t&Dsc;%Rz)bVvPM0HW8lZ7t1*A3uAneE+#G!GMOwS z0{$TXkK3AIZEmm&g77h8?3<8@@H}6lRH?Tlo714y=>8W0e>k0XG}PUO%jMh-U^8P( zGVq81B#P7;-4^rM@!t6RqN(vA%FE8<`n77**Vn<;{#eu+qDR4OPQk=UQ;U5&q%$;LFYjbzV?VfC&>ONMu!2Rj8<_2-;_EUOqN#+Ujl7qQ7?|TOUaiqel-I9a z2|AEJjvhUV)YMe0UAxw+nK*G`Q2VP_ewVZdvvdOOtY)Q3Em79h20fdGz+$mr_3G6~ zOH1>rT3T9y+TX9QleCpeaqMIw5+V0lq=b$RTgXH*Gc(1<1H0Xhl9H03_Wr&(xj6Pn zPRuTU>;HMu60}+^ii(QD?ngwr1i>v48lns#JMgTLtgI}wwY7<|88c?UWHJS`kMi>^ zxW%zMDKz!HE@zzYA!kk*E7^R8Ltf>xo3kvU7$l2`eir z#YGti)z#Hlwrp8Iom?&#efwf?>`OEwXS+H(`UJtP@NDtM_ylCnoQ;bY&INRMepV;~VoD=I2p65@Ql2Y=cW1bZ; zR0u6zl#lN2?x2ptfnKl2@snpTDkj$3tNpPRjSaPD8DsN2^S`&v+Ju3DXWKeeRz+KP zhFrA|2lBDGc!z`pO#oH+0CvMu1~A5c>+N-(CNjQwW9l@l`efY;k)h*$#i})UGwUsh z{84KYm5b*XV^#30&{np#Ja|GEBwrLPT!h{G4nn8XhfRX|6mQ*$g>SznkyEBvTOM=) zSm7n?S3ECJC{-s?Eg3R}LMiD?Yv#+t`^6f??UrtU{-7Dmo|TIam#-YIcz%~L_I*Gi zgJjmJ)!NU*>x3T}3|4NH6=k?~^)l+}YSCe9heDx1Y^)Ipi6-$nF@wz#GtVFWeSN6E zS3||~CdSxyUv;nx)&_-AwJq74Cevuc4@n?UIR34_Lo-pt7~AS^GTfDOflS67F(!;2 z8RJ*ah66D>S{u>Y^00G25I$gx{Sc`8^Dg03itSe_RrBc*ZiuE!xIC!6FKDysXn%SM z@9lN|NXft$s}E)$>Su}9snX{-Zf?X#gF>f|ghs0a6;z(orZTYC<%Gl0BW~MWogHpL zaF+tuN!!Eo#t8RAO$>n9RAU0jpo5ySbWlxsPj5^gYAyk|z!+-{$uWTc0H$l0w#&5b Q4FCWD07*qoM6N<$g6uIU4*&oF literal 0 HcmV?d00001 diff --git a/src/main/webapp/publish/images/level/level_icon/blue_icon.png b/src/main/webapp/publish/images/level/level_icon/blue_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..ca9cce4099e00f57dda9bffa7ffd67be0004821f GIT binary patch literal 1673 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 S44ggy0000XnY_uO;u zxla>~Mv*Q=Q7i^913*21(Ex@5$m>&g0k8u&58w!Z1B|iebZw_aL=?p-0G4x{_WA4_ zv({+Jfx%#ePR}DFLnn`kgu@7h0`T>E(c^K$)9s2xB9VgtHZ#T!KNJyB6srJi<#}Pc z#ae<~a{)MxOKXObB%#aIjyA^~1Oh%H^d@8M>Y#~;qPR%Iaoem#WkyTk5NI@-vo}@AQ^stFYMPZArSCy0PsFzOyM{q z1&OtS!MLVk_^5dN6Vd5w!CA)<*j#7e^xi~I&?Wa~>CGrKmZLJa7PUq7$Ttj8=m|n5 zDywU7!*=mKUvG~Vz$(=h5k+xmiRoC1{qRZa~v1up%X*r02HaLZGeDO4}ikFci z6e#+_;Sg+B&LJ4^zrq;Xc^?r`6e~0wcXoJnjVU=C7urr@_xXbar;jSIfcnu zJd_-L5tGS8L{Y5M^TJHZjzpYw9LD}DUm=S054~iN?ypz3qY5U+WxQZO zM|(@9&1Tz9={wt$W6t0>ZG3>s??9vTs49uai>G1n#CIU*G8OU{@hZMNz8-(K989T4 z;dyr0LYNIja+^-+>}<2v?P{M%OHh}Um7`E-bR1Dl(Nfchlq6!P$Q!9T0VyioH^D5E z?E7h2kx_y{Y4p15tg5j|LmT2GY;BjY_2epa2ih<)e*!A=M&ZEKZ&h^(*E&yQO8NYF zyDv+}(27*(c|kF_wdaPap?qUe{P*eGCu9<|UwVRWG`61XmjuD-wJX|sz3jW3R>Y)D z*dGLM$UUIJ7>LBi8N1@EgWa?QbEXB=dE*AH zM?^f56j2C`x*S!7WYEk%6qn+!8^_WbZ`9=~+EPUJ-AzQAf&ssx)0#C*)sWqFueO<7 z@tnL#v-G*hHx|a_J;5$j{h}n>fuQXB1`)a7^LZ7WRc7_2{nNe={!p*{dr0n3teE<# z{8v?QH*K5Uc3kQ>rK(?Pu2r=CcYXgyM2>qs${CEcP64M$T@uDZK@O8avQ0;qsgmF{ zTGU$W6|z3xM=5LedAi*pNs8!Vr)#cIh_TjsoN4_drNP^t%UFGILHz6>ID77>o~SX5 zAJTwa!5VMV-t6vjg#qlB>k&~D_mq@X&dsyjJ0qwN`ux=E@Q1zXmInbL!-%&heghMq z7gy@+aNv&JwvRD3JGTCxv^km)jY{!BR9Vd*y;3zqg8|uiY4i#O30eTE@BwT>tPEg` zoeT#3dx=aUMp`CdR`nYXMTX9#8ILT%qn1eudAqZj%EkSRvExXp(3Uw{Z*|cFDG`%O z=U~y;b>K5nUvm9{bmos)iKoiuDn?PJI9hLc0K63^oK!r|)9Lx$Rn;{boldV%rakk! zZHHXJOVLO_?(c@8*7^(@suuTGJTGL7eV>v@ADNYckol4PoJb;rzRK;K^B8QMr{VD4 zgg4j)Eti38-hwJ5R;)YR1@x#BQ|**1I}A|3P`h2#p~# zYoG|E1q#Q_rpvSvYZ+tflXd!ga?aCexUa3nrP-FGdUi07v%`4@&eq%AQAt|D82cfW z`aqBHasXTOdVUT)!p(W~2-m8PPXrxS?#{c9@LYJ zS!c}3fg#ffDyU*#2k7-rmnYp@bZmRN-4RKO900J9j)#GK4E95f1;BKwF#*(2bw@XQ rUpM7F&6qyaP+|HTW6YVBVF3RF=e?)y?yus&00000NkvXXu0mjf;!Z!b literal 0 HcmV?d00001 diff --git a/src/main/webapp/publish/images/level/level_icon/level_small/black_small_icon.png b/src/main/webapp/publish/images/level/level_icon/level_small/black_small_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..8d6ef200b9f160440a495e1f7d933e8d91a75a05 GIT binary patch literal 1535 zcmVIHNeqz1Km0I+i;nCl_@HFCiX}FF9+KN`>0G9e8K|VXRtZk=rN61Nisv`+iXrs~KZ|Jt82n<~MAmu)B`+x{!M=U_q!0aG3gm-) z(LN#&htX^!qE;ya4u?a}ah&hj^;-&)=e*-s3$9$gl+o?gt5;E0R+iQ_Gc$vMfdMo% zHDP#oIHTRRx*h2F@Z@|Hq7nRY=hn0+idKriPJIzCll#0L>8ND_&3G|6p`f4uRaI5E zaN$DMSddThEk!}21#tq{K?3YW20m?|l6CLx?L}v2C%U@2;P?BbHWIgM*RG7?$!F@s z5}bAt@Vu@-FLzLqQ39XOhx6ypCU-ao?<*2e zU0scvH*ZS6&1SRoJv1~ViOPml-wDpuB*36f+-ij2L{O1{Bxx#odU}?$2?odI-)c2c z!=Rb}%PovjSRc@A`}_N0u~<-1Q6ULxXlQ`j?Orkpi$Qx}G8T)<%{;$cks*;cHa23< zo;_)VcDp^RO{(t%=OjhIIXC;zlstyz6_xP&M{)|FnbWacOd1MhPut`>iMd(nDi|aI z{o$F=3k8KmQrDKPFQTvamz)CV+|y?<`ueh;BJ!O?ct#TXJ1xPr(A0$7VP|zx{>}sn zHLZOnP&?&>Z0k=xYijEkA~nx>og&aZH5m*?qY)h~gUwa~d(F12*|4UjCTDaqfqYu6 zHmN5Tjbdsl7zS`j#Tc6q#rVasfKN8tf8agnbh;-Z$^`O7K9d*?cp=8)UlMmR)+YiZ z-UwY11dG*%=A-T4I8HH1Hjt0z);7r}5*JZm#7jru1pSu;Fvjl3V$ri6_d*3-SHBa7 z-fj9{BFOf@p(Ci<{<_>o9K^*KyC(}spkrb@FhFHf5^wEpKh*fi^~o7rzvfU>l)h%K#r}hh@}?t921oJF z(7o(MX^M!=9LIHAOUunhlO?Us;~9oU z9=bw3^78VNSE_We%+1Y8>6IR*l-MY@064`M`*SJ(kMle)rW%ftAyrXSfdN>N=pLhN lO!o@at(4&?$>ekj;6Dc;ij)O)dAa}q002ovPDHLkV1jLl-zfk9 literal 0 HcmV?d00001 diff --git a/src/main/webapp/publish/images/level/level_icon/level_small/blue_small_icon.png b/src/main/webapp/publish/images/level/level_icon/level_small/blue_small_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..3349825b97e6d3f196ff293638c4d72092c3918f GIT binary patch literal 1397 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 literal 0 HcmV?d00001 diff --git a/src/main/webapp/publish/images/level/level_icon/level_small/orange_small_icon.png b/src/main/webapp/publish/images/level/level_icon/level_small/orange_small_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..af27d77ae2f5a6b62a7e9c7ccf8254867bfa3253 GIT binary patch literal 1369 zcmV-f1*ZCmP)I>`R9F;=MM*)Ks5>emXiHQIPl>lbN&s0i?S?_JQ4v#QHlU`OOo?! zAQ&nL1S{Zlx@>tXlSyM?ZW;@7(UhuYdH{6EvYfC@Kv9%h0M|?Xfg_dGPr&K22fTww zI*qA`hggm+(AK=Qn>Th4P!#1DW2`q+RZ~t@o5isng)7nvX>I_H_$VC7C2)rm++B{W zrxI%LIi#ywku9#;vW~nFogACtoVUrce8-Xi?KflW=kTG1V5vV~j1zF-{T{d`egt@S zZ?l<0kVrOmAnOSk!^^P+M8=2aIOi>9PZ$IgMR5bTU0GdoI1t=i=#1Wid*Cy$%-Y_- z+k`tkNF3`zI^1URL=;mKV}k&mmt}cF7-w46UFr{P0WTQ&8lKx7d4mhfGV5>;oJYa% zRbz~Fm+mWTBCIVQphG7~&OaNTI_lC79J$;5ODEZqH~2Ox*f?=XYzwpq8G3Lxt*V)) zX)AOOoDT#;1~~0`(QjRk0USaH=^~vZ6v~7}n1WtkU!RvT7Jahuc(ESm?tydSv|HL# zR0XO29WZb1v}flZKpncWCyjLYG&Y(q8D9A7{;zadg`5D|=!Vn59qUuM({3SBLpxk8 zpMVv3OcTz4A8$vp_hazb-CY;DCVtW)qf&T*FjwMBZL|d^>3TILMyx}P`HyY^=c)D0 zcO^j-wtZpk0-nw3) z%3eJiUO7+^{-`_@7859O6!*O@QtIOnstwj&`Q9i{W~U>ViAKJZWw~AV^@WAGXquP_ zi##DDj&+Mv`rm~KT{<{n%+E#%=%O%|z9=uNYUc7(0Vx%AKXz9 z>9TiGdRe4YdqwFfBpc7>SCpDa*ec7V_y|~XF=uVzesO_OoQu<5T)kzT?XukL2>{9qznavu#A^0`Fvu zy;tJ%d%RwAbDB%zlvs@BbR~w>cx;1neobpmtqTl01WZJzgn4aSd#wEZ`3+m` bIe>ovZDfD&B$^lA00000NkvXXu0mjfP}6ZZ literal 0 HcmV?d00001 diff --git a/src/main/webapp/publish/images/level/level_icon/level_small/purple_small_icon.png b/src/main/webapp/publish/images/level/level_icon/level_small/purple_small_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..775fb7089d6b934555eea8860c349cb5bbff4bcf GIT binary patch literal 1410 zcmV-|1%3L7P)H3$uUL=53&RkV`7XizUTu+;)6OfXe`W0q_Io{EijgRSi&8wFAHr#@KUi zPm9~_@xtkH!{Km3lBMF9LcV}(HiOJU8tGI5=~OZ;g!lr$2b}X8>oP!9RR@4KB}snG z9|+ogn}SdjngQfTAD$U1)979 zPM?6kr-0xd9nRKj&e(JmQ<3p0A;jaH^WnM%sH)n<7(0FUmTh;nZ1h(NU-{04$v+f` zLgQ64321*nN6*taG;J(%C+A}L_vUpn;t|gI=n4Z=Rc!)rCKT@2?F*DwK7ConpP$>I zFS5qU%b+v~^gXX3xF>IR#Al+2Ox(BtU~lP6NEOqLHhX?2N!3<^=wBF)tN+DA8}SL%(JBV z7#Yy#a=Fb8x@4^4!uPrbxab}ni5QA@Yo(PVbe4YyWIUjnqu(j>dH z{^Uw-L$jNF;*sTYm}n{MG4I<7+&cjHJIcc8+4|!vxn;Sy9nJKg75~)q(@4Td``S47J}2afjKaQi{d`SleZYfzfG0K6;9%FF&uA;lMHE4^T= zg6?_R@7Q!i&*$||0KCCDU#Kgre|oSIW3C?qc}|^ z6B!{2-vD@zbAGiE|60oP761o~^89`PTPP(ky5j(D0=Q(9=O^icTa^^Rf66IT%jq3E Q{Qv*}07*qoM6N<$f`xdu*8l(j literal 0 HcmV?d00001 diff --git a/src/main/webapp/publish/images/level/level_icon/level_small/red_small_icon.png b/src/main/webapp/publish/images/level/level_icon/level_small/red_small_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..f916b1c910a1826eb30e6a442e394effc0dc5e57 GIT binary patch literal 1485 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 literal 0 HcmV?d00001 diff --git a/src/main/webapp/publish/images/level/level_icon/level_small/vip_small_icon.png b/src/main/webapp/publish/images/level/level_icon/level_small/vip_small_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..a88cbce9ee30ec3a8e6f3e04a34f73348b27de53 GIT binary patch literal 1646 zcmV-!29f!RP)fW5-3FP9aQ(G0|i`hPdH2n2)K6W)EXz;z-mb zGg;I{<8&xKHm)<-!^O?F0)mPUkOFO$mq4MV%YSK0%WV<-(xmsE|Np=5yXSH5Ih@&S z#!$fX{0IOk01^Sj0Eh&ju#~m~xDVhKfZqX}W{f=_3hxUI@H`&@AfMy7B?@m}g~D42 zPcH@Ja!*L45+SG8)C+^56P+FHXm4vqds|Dp*=#-p;2Xx+gO@VE^Sm6u7ZQo|Gqr!P zyDA_UGMU?uddq0+fxbxtomSJ`+iThhU>jqsYsdz8o*xU~XCI~Cv{9jBA#-ydlCa1~ zPdA>_)u6Tc>2&}ZjIo**8sK?8hU2)hppY>^>VV*v5*`R$lLig-4;##8^IXQ*ZI=dk zo*&0?+}~lN#|Qe3R10nQYaZZa=^30leQsEyX({uNo|=qtV|IXVgp(o=_J;Ka#Nlvh?EZ*7jPO|R9UzV5*_014JP zA+f93;-geKh?kwefa>adcsDI&SmFe#p<3dwg1CK^s#wx;=mF|_iBwt<6&>qtop997 zlICN7aUrI}OdhrY!p+;|Sdo(l{%i?2juYC9Jw2$ZyxP-iGDXu+SbHF!mYV%+KX~{E z=FLrfX>kJ85(jZvA#-zs+CPNWb3Qdmc%D~q9G7k1^$m?pICAU+)~sIPK=`<}7H7`= zD*O+`AAkNO#5y`V9U{a*T*PUG%0GyDB%8El0Fo8n$`ST2nPbO)!Sbc=L#^_2Aj{1w zK%@340{#6^a_q3J{Z3UC@;7Z4uG`z6BP(;EEk+!~MV!_LA}!KvYkihNLy)NOQQ8VF z{&NYJuUy08tPIgps{BR@|73zh?Q5(E3Jeg{5f^dV=Xv*OzC{M6dU+{qfs>_Yv2N{$ zkjZ2sqRfTqPDM*f``;09aWh19#6_IMZG~r_=2S8e=`Q!M1xzLrq*AGfgb+V7P9#b_ zK|MlPl#vE6Pfw?{#7W#%STrNafVaJ1dRh`TY}tk<^%@b0N~J>bJ9C6<>oDBBRc?#F zK0CpwIB^jtarYY%df0~yaKg_@GAjYui?WcvaVxsI3?i~QZ_Kt`llZyc&I{KxF=tGV z73C8LaS_M8BWZ*)3TZ_}Au+ULhpT7

    z8ojfM90K=N}a5I z!oi=8;?lqWVc(uYxViP^==FMNb$zD7!^3UMucya|mAQF{e`O|?EY5PuXEGX5S$?_8 z+}j&${Tlud7#y}NASldf0ik&B_rf|}|LMmra|mDU{8m`=IjcT!nbXuzi$+cD0mj&J z>(}sWU6aO0n@Lw7LW7}u(47&*C}%Kn(jYC;q?%U# zooZ2x+9*ajgMlrSqPeAi;?gy>QH*k2 zfw)P7w)@tUft%7uj^i$dkD1`_qg1&hI`HEmR8-u-cZEA>?}RmZ1(-BxB9<-9c3IQf ztjFVr)mpRJO#8umP7PR0%-}fgY)EK?zn?nDC1FwVUW~BJ{O6rrSevubW$sg5BkJpF zNIZ!#cEvvC>R>|scw9MB9TOZH;q*jgFc?r$dPcaOpPCH0TrSF?2}fgY>Gp+;vAY9v z20NO00oX2;%5v2KAu`%VS-xN|1ij~Jymd|WMw7|72f!xASckK^p&U-50DR7IlJ~rQ zm7a7sr45XmyWG|@^rSuA26R{sr)@3Gon~|IQF<*f#`?ETFJr*Yh%X&@EXVUH07lam s!4lR3ctl@l%klgaW6b&c-5vn`2PtQ^BLdBe@&Et;07*qoM6N<$g78QgQ~&?~ literal 0 HcmV?d00001 diff --git a/src/main/webapp/publish/images/level/level_icon/level_small/vvip_small_icon.png b/src/main/webapp/publish/images/level/level_icon/level_small/vvip_small_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..c52e8b656dfd74ea629fffc9789541de65c41b4e GIT binary patch literal 1543 zcmV+i2Kf1jP)&G#Y_-*aPpddrDEFrvMz6BxxdR2V_~U25_#Z*tx2F;bK^<*$JmO z5{Y2oelPq!FH^HCT{Kc0kY#y|5TdiJqNbm$ynBv6q81}M? z${BHj;vJnoKnU}kew@R(F_4qo0L~j)i4L&fii(}jI9+8khOTSZarw&k4AdheLTGcz z5d*o4=9R3Z*32lTfJJ9ETW&2|zSQ&yLmS>s&gxl&M8c8ceb* zJGjZjSG;F%2&cdJ%J_O6gGgNwV%|bb=ettuqxnl_#|V?gMa~$gC4|^RZ7S4rhl}52 z&Rw{eAWm3C6b)+tt3`j_xY~jD+Lz$?8&9ETy0@gghV#C$ze`~fo{UP-Bdg1X- zrKU@mH0~G-&6QND=D`vJ50-TB235FRcG#@CbKJg!)doe?R}5jZ3KWve&`@R`}}lDDwu}DZA;;pUxeK|S0Fkuj!1Y6N88F#>5O9A8U;81 z6Kai7W$E*9FMnNtR9Uns^96~O_*tyn( zXgG+0p~M0t2f4_Zm<~-dKnHqwnMg+a;e%*ytTVE$!!xSDl9#6~kmy8M`})XO5L2Nb zBB21Lf_}KY@f(w>agZw+hGq{P=;lo(9a?rY8&S}maF0Y_V&P4UBO2Dfo(^c@+Ru+c z->f+2k|P}q&2G`v)wSDEIPdGq>g8z%{`k|+`0%4ov=eSFP*nx*zk3XupWl#nR)5be z1Ouac7=cdS;dn@-!X;(%ja4hF!5~o%u=nGTZBuP?GRn@O~YsrNDdt1@6 zqbVyV^sqN+b28zd5fAr{v(%2QvyZ*Q?ntI65U;l%Lfuv=p(xYHYhySz6R0sV&0^qwAD7@MNs{i&IAGv}-{ zeqz~DymjL#Ot6p@l5R4Nlf@I_Wb{Q?|bv!oAP5?ifEVjYs77x@KZB4`#j$|{~SYJjg z5}F6_K4a|Fkq!ug(8qDyl*`@WvOAl~_Oh8YqLC1V7&|*D>G?D2nee#ug8BKoEp(j^pmPw)Z&9R{I`tHUt0WDw6RCoK7d~b~|{U zhgPdap-@03lR+w#LNFLaAP_)<(E^vd9h#EJMZ-aOSC_U#Q5&t%v7?o?Hu0;2$ z*~r-WRPv*Ag;0q2!ha6r&2xbJ@uAGt=X;g zcr*;(#xl;F8G&A}Ka#i_c6N3!Jw1b_W)F;J>u!XySv-3>mo4P;rx;@|5>hyMK+}fX*3`%>Mc?PrlzKNj^q4q^o=yg-??{X31*W4Jv}|g zCNIU((h{PvBw9O8?nWV(#ovoFNl_GC6oK=+(V~!(r-?)a9*?KY$nD#=F)=ZLt*tF( z?cu|Rc=F_l@=SXqbNBAuGTn}j4kQxMy(p+PAWq^Y2gZyhiy|Be2jQ^WD+=!N<;%Er z>lSX_yeT~s$;FEoapA%R#R=LYnM;>0mFa3U8n_x8CEGHJoNto@1Jv7PBok3M9FB@G z4h;=Szw`6+((j{3kCeT+xw*2vbLY-g=-X^I$+nCl=Kwj-rPb{f+Rk-P$QuZw;#Q|y~@gi2M@5Z zv4Q61X61Q#dGF909v-gHC!17!GE^!l#irtC$d!nSsCGd0_xCIRZ``;c{hmF0R!R*y zbLY+-WuF>Rtsn+1h>?8KF=}vMr;?`IsEI7mr7j4YSoIH54kw{TLV+P*&(uGZ+j~laW({ zeKIo0mf!D}Y%39oOP}ODD#hOuvB-8Vm#wE9X|;M7cr#X4S1aC*$mC+9xj@GC>(`M? zCKZ|eSXo(-Y?5sP4Kndqm~t>FpN8KzHno1_bhYm0CzHm@XOA&5G9nEg{|A)&nVA`M z^$ti=6CvRD;OlrIl?FSVc<-8d7_o&wP%N%w!GtiYvrBZ)lce>R!hf6-ejs*32%6BlZ znak&M-vRiXF_x;PSIgy;n*9XF)qP+zTk5Hu8VtOYUpX@Lrc@`X;^j0Rjckiz;iux| z^x0wd|I78<4B*}3^_==`I}JL;?GS)f01I?j0{E3Nwm1G91OWd6Zr=2j&-(Ah00000 LNkvXXu0mjf{OK4d literal 0 HcmV?d00001 diff --git a/src/main/webapp/publish/images/level/level_icon/level_small/yellow_small_icon.png b/src/main/webapp/publish/images/level/level_icon/level_small/yellow_small_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..bc4d240afca66c6ade532ab9f63fd6bf3294e0cd GIT binary patch literal 1271 zcmVOq4a&z(Z71VzoY><*cRu#Gwc~M`v$E&SJLkOn-n@G+ zQ&kmqAcXJ&cox76fTIB700PF;9DoFXKLK0=aD{VTw8PugfDqzA0B0Cur@X$P$L9}X z(CtP4fD2BiQ+r2I6zuI*uv0Fgke5*`$R$-(zXouQbAIDM280kU01Hm1^hPKW>kman zAxV9TI+@NRvoahVvKh=a6@&$|(Uw?dIvpLyD8&wZJ58o|9o z)wqb0K%X*ck)~!q2;rkk#(LsC+n;M8JS-5GXX}DxD@MT>J4xCUf#Y<;nU{>SmV&Fe z+*X=RE`lBT5s1CnIv_>C9{Exq^E};luB&uS<2Iu}nxstz=IDAgF`(^NhkXyv0s~>N z@l(L?>87!XdBFFmHU|Hb9pY9uxOEtsb7Wwe?sgOXJJ&l90LWZzijKdi|DY9zpV5CS zWgva2<8&*xp*bx9n4-jDLfT7oBv4n+g87aB?)&seOfCZS-yBc<02qg@9jx4j<`hN1 z?{rGdmDT0W5g?KEi_Jf@C1i$B{trlgwC`Lix1s5G>^Gq;a#w)N&jyRTy|ErZ2J(th zYZ5tvU1zIn9|F6X=7Y`4y0LEaEZl}>o($ZiV!}kNKi=Iw?X&!QleqMkttDHz4b7Wm zV1+7~#=zh)TVw};mD|u_b((<+`h6hp7y z<9T2x4!@>xnb=rM&?k7FbN)}mfPsaaoL!-^$wb+I0=ek>P#x~}{QH2yo{zkPa^Pg+ zCF0I)XI88gk^Q1{>w=b2Z55@S8I*=!?X4)an6Out?7* ht?l_`TkSc3{{c0MKQQ22K}`Sv002ovPDHLkV1fpbY*qjO literal 0 HcmV?d00001 diff --git a/src/main/webapp/publish/images/level/level_icon/orange_icon.png b/src/main/webapp/publish/images/level/level_icon/orange_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..74aa9b8eb243e03522d469137cd137fe8c1435a1 GIT binary patch literal 1625 zcmV-f2B!ImP)yQWUI81T=&ICRc$1X_}}}i$JLXQi+nsHv?AkBcwD)n&`R?PK zd(KF@t|MJA#)<$`0ayZHHh>ZU6NkjR0W<-)1mJf7wUpA4?Kptll+xeEMT9Xn9l#!kLs_0* zP>czAUJydkS|R5gz1^MYXm3Fz5)y>orj*{um$r>dyG=pP`8$--uhJ&M82ixfP_~wq&4l7~|1Scm2#14cx^)$iNO&iJ_bH_&!&#${ z*rqt$Tg%F4CC)z?WZ({L%|{`3`~^913sU5sF{(QzLGw(5=A8%CR|W3&ndB73g=rO) zxLto`b12v^1K4D_BaE?^><;C-=@peDNRUt)9GAa@t??kB^RbsN5vZlrh|GEm+*xQE zip5maU;h`;Ncc5M>HZN!7-MA;A?M30DsxhgBdhgSIL~f^6bp_`AO(7s3*k9ipq8vM z4Txi^zjk4ObN(2m^ro@Ur13okg}xCa>^HxK>-4&eNf@h)1>roq8TK3BnEJ&r6%>^S zLtn)E3?huNg?5LsLU>0qY|XV$&hHj$%b3J4bSM`-gRSw9sdtjM2o8sHDPwF2l6GW+ zcXF}GMM>~3l)pb1Cy6+8DCc&7gxV85A{=-Nip9U{jdopK-DE=KmWL|mW)UJMCOXe- zFucPGl2QzL#tV>g3}xV*m!VzXHzpl*Y7IhuDe*cPmXWOpU?Rzsh=8j;#Jq4)eVs+{n+$b)OZ-Gk&sl=gV?QE$=^VY7cqo!-7be-JzH#2Q1$vNIAovrFUK%{2Oio zZ#|#rC!SJkB7L_^ZM)sDT`Gv=$VvCZFc#^yRAdD`8c1tis%|11wmrmnAV*Hmn8mbK>s~urn(7ZzN>|1A|I?24 zR_IA#U1V0FdAlr+C?iM&p?M#fNQey(89snd5KjXrrGG@D;e&!qGGaxG5q@;zILSx| zKe8UNqNhx~o&HvlE*_zjo z+S{7@0K6OTOAw)yHtM?mdSk;?T~(vzohe*|fv10hTC&o(`S;%hV$3yUd{t&$F%^vs z*PwI$2BkFd@QkQy7-Jh1#r3gKPT1@tY>3P)tK~Sd{C|Q3>Omr1(1{JYvjE&xjF@*G zVpEnHo|lT4s-ofMC6PRDp_J}4aknV2-m}>qJ4(xDN={eiM=~13afqFWM#9@DrQ1`d zj8$?zCrM;qLD3XXeo8)@2@LP>x4_?aC!lk_hEjT9H1Yct;UZdnZnrzCMG>AiQ54~6 z+>xPR)zdXtgh!*{pM^6}N*k=^r~6srNs;LjLRRK@@@($xTsU2Bh=eNsbwDJ-;_(#k zmI&K@fgX)>troy85gzVmBhwEx`2d!S91}pL$nF5dD>C8tV#VS^%}D^qD5d_i6a)AV Xcj=gjaX3Qx00000NkvXXu0mjfHeCER literal 0 HcmV?d00001 diff --git a/src/main/webapp/publish/images/level/level_icon/purple_icon.png b/src/main/webapp/publish/images/level/level_icon/purple_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..c093a8e3a29fda25eb40cb8312cff5d2f82d5846 GIT binary patch literal 1544 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 Xe38ryg|JF<00000NkvXXu0mjf;o~}9 literal 0 HcmV?d00001 diff --git a/src/main/webapp/publish/images/level/level_icon/vvip_icon.png b/src/main/webapp/publish/images/level/level_icon/vvip_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..0f3fb16f8da0451456d7ee35540382be123eb15a GIT binary patch literal 1716 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 Hu0mjfIn3$? literal 0 HcmV?d00001 diff --git a/src/main/webapp/publish/images/level/quick12.png b/src/main/webapp/publish/images/level/quick12.png new file mode 100644 index 0000000000000000000000000000000000000000..8b90aa80cfdd467a03c461273d1b536e83cdd741 GIT binary patch literal 703 zcmV;w0zmzVP)7{-5_+42zwSTb$$Ee@1ov(XxxaG<+Hj&`s~$w#ErloN75WR510IN(G#68VVv zD2p>OJ6Psxn{r@7D|?ady8dtfz1{o-2GARy=095G_yM3EHDFjDS%#JG%z1n2TTTT0Zs1Sp9@%+0&4{B0s}xja2%Kh zYy{Q--+@iQPM{iiZf3LcG8D4_y8#>nE{bKRn2rIK1CxO3z#-ro@C{h%?q3tYA~P#d znJ)x(2j~d^cYm6ypa^INP5|Y=X5ayE5ZISxs8Y|X%rn4{zy|Y)Ze}&WeV|QSTY;&` z|BK}2D`2|HtcpW3D|7c=Gb;rKrT18Oe`02*fL+ouG~EDPNKC0znc-lkyLXt`DB!J` zl}p#XKnrk0tj@{#3ZM^IlGP9>)n>H}h;>wFVahmQu?+laW|x8X_y%SI@1o>%Y=-sP z54nk4JSnhe0t?m+K!mzj4-V<>h#W=-ED*b@aMRrfi!!r1sZ0B(+%$a`45fN%rcJ392o!r002ovPDHLkV1kh^HQ)dM literal 0 HcmV?d00001 diff --git a/src/main/webapp/publish/images/level/quick12_hover.png b/src/main/webapp/publish/images/level/quick12_hover.png new file mode 100644 index 0000000000000000000000000000000000000000..36e17d05a8a9fcfbb447c6c42be96540ef4c2950 GIT binary patch literal 665 zcmV;K0%rY*P)I7~kkpXr3;OO(0+aCw)z=eD7`@YY4&Uv2mc38AuTXbO~ zUc^#7id*;{UtS8pXa~dt#M}cd}Lq z9>(H`FpiILBJcAeT6dG-&1AcgvMT!Ve!$KKtXMxEQ+FldSkC^(HZ=iHh21mRI2z?! zY>%WBr|?&VsrV7|@pBWf#_0uof*BD-5|jfz#dd7D>x?_!BS}6jEw~Ff7@!)h&+uM@ z!J*7?fu9Lje=N2mZ5e3?9Lj8#f^Xud_-uDt(UG3jbbN(fF?YFQL2NUpX>6I_5p4-kptZmL4^ISm zKT)g-v_zYV-|8A{Ua>Dr*idQ|1OW%fx69Z4aZJF*YVo5dk-;R*RLg|kY2ln9b}=Yjeknjkn_t?fYTYuCgi zUF~3|mIx;r6NI^ijX2#-Lo*$X1zem?n_rnr*-jeq+CstI0iofpqG{@GX(|k-la!zl za}@zEutqq+Xk4wWY#c>g#p(WfuL$@V^J`8zn!lPjS&Gv=!*ocaqx^zK+SUOKp!^y+L4qC7~y4g6vT-j|L>HqZx8HA&$ zgN2=wg{=(@=8Z5DTW2S6Ixy6K%)#33@7LNm{&StcigCKa>^QkOxG;12t0COn^;WL?0B{yDe*vbCe8n;n8v z9pPx}>|lzJbpbun|7&25PU?vNSepOEWX3G7q=Vfe7oiW>wdHx?q0d8vw-tqUkiEwiXav=mw_}F>51i0DxP52P( z!Z3s>yO5BOpr9}x4R4;{^a^eb&^W$U193kPe?i#ZB^nWTtb9kycYQy0bcswZ2mu*Iog^zAz==P zXXao{|3~BE{C9(Qgt`3pLl=a>1cZ6urtB~-9usym0Y0#z!rVOUJTMbe6CpD}em()y ze@*@04E;Y$@&C!t|GBKDuVFUk2;g=(>Hh6xOl@sk5Dx!oFYI6rFyL(w4vyk5iokT2a&Zf3! z(oNLoiWDNpbl!QK!B@ubID^mIGZGxr&y_fMg2S%P?(!~pbDzC38{dx4zIy+gAqt2<*7B; zEc4(P)io{8O(>{A_}onb{cv%h#`xq#(XAO{I&zCMZH15({YwUiUy5`{e1Gg1Xno&N z{h7#YeSM|z3o(ljhP}(n!6UKR3eKq8pdYRf2HVqptE+|vw$Tl#!F_gCnK*-Nj%DwX zmBik?;=BaUb3$D(!Tl^!!WFtwnH8PFnB7#X^g#nvZj|__msyi`*h0Qeck+qYs5uXg z6}(8&(ZiU~oqCrcN|c`b8P7v%9-Jg-ZQn{ep)N<+Oy7>#wzle6m%l=?wQltwsjh_O z;z^i7ql&jm$C)vqD1H;9!v8I*h7>0SI-<0eWbG!AY3{}7=*GzMBYmZz7Mwnt3WwBu-QlH+v zXXw_V^-FQ(U>b?ef6oMsdApix@y25EyAnF=rahX^Gv&L#va*WtOWdgFjj(Glnj+?qL9@#HQILH6?~_Xo2lgVVzHnVCX1`Alr2Y^})heUg z`0zKYp7=e*_OVC`&$SpK4=CrQinP6d$5(V=_ZSb&hg`335+@AaRG|pv-F>mDH1<|T zVD(AV{xr5jl<2-&6XL4!_{zVlE`oQON+~|>M03Ro(hsp)Hb-r6mk*DXL7)Yr8UJTv5YM1u z!a42*wt9@Q=0|rXt9-SR88C>8{QhFhBF?SivYF=36~4@XScid1no>(Hry`RXBeXI~ zF#pG!;J_Q71d{t#_D>j@LwGc_ezLeUd_hXxFeSZ%B|UL?%dbo&l1)F*0xWi}MFU+_ zmsu;91g^i-y$i1^;v&;Xrl#Do_^CVN-6`Q+B8JurRw%KHi@ud{qbt=p@5HV%lbb8i zO()qUF^AvZ5xmP}eiV{992XZym0PgRUBRZRMwDZKJ@@X*;)U@$2$bdhM*U2##RQ|_ zD9Ih)Z|y!$U-`mF4+3Dv<(hW#^Oj)CcAN#A8$?ygufn5KZ(kM43^4ek(@FLOn1U0b zGX}jkJ+?8tqu=#;shNS?oB9ug$d}jO+~VTv)A-$hBClPjiRZ;;jh= zXTM3g`~bm`Rr`PtK6pWNJGnm&_4zD>k6g5Fa3gbQm33=ti@I%L*Lmo*)5AEwLzo38 zG(TBo%1T`{dh96)P8xLninHsySz*ycb1ge0UQwAtX5x?ht=Eoq2CbVeXKF^J$hc`6 z$pOCpy$h{aer0;HaKg}b^+AMgZb3mvNXXqrBTl1IlE_YJC=`by9_*q|LBZJ8q0`TJ z9ku`%sZ5p{ZYvGZ-MOQ)-Ls2ZH?H6CxmH|U%qJi)e{`mitx}?>^)n{CkyBwt47c@I zhya@nFR*pzmhZRQ^(CD?6>W8VJXHR`))`22jm+H}y7x|-$*x#sIOJ}upc+rI?W#w+ z@6mJkeay~=hfLdC6-;iWfz3(C)?_1IBOK-mi-GeiN3XBH3BY|Ub#-}>UtFA1T^*N{ zMAp;O!_3a!zOehtq0X*h8Vq?mrF6L3_Z!WeUBW9a1$lX_{{H^YpFh7aHdZw>q@1j= zHSdjMx0-EAwG&D~&7dGT!)s1e^#ng8W*^-3mk5%fvjxL;!;#nh0lnj~wV*_3{(Q4< zCHo8GptnQgWog^hjVQ+1XR)9O^jACbyy?&?l;> zQqr~s`^+Kcq}(|>A@#`1i!)wC50P91MfdNy*8Gx^-0bXI>4P=KKkU2-@B%GtZ98|4 zDiOWJFH4R3f8;3YesSjq+YVM=$Q8=2NxyN=bad&}c?AL&Naaxvqv1>FY_k5AXtY zYiuafy)T8Sy^d+g1*|@1WcZw(x|@`f0?VnH42M8(52~tXg407B+HUmP($YhMFqmzW zuNa59{ge^~|Jkj&`c|DxB)a+q+iCNitA3e*JQeeO38r{+iNS*x@0h=@JBi49e3{Vz zXQut@E9TA5gi^0a<$4Z_3JOflk9Tp&1;V+XQk6dI)$UMNkbF!KhsZ#;R zVbv~yAFTf@GHf80RbyslZMCT(aUS?e=fXyOhSb-etON%+tz_fDN7TT&O9|HE;X9^T z-vJ2I!j~(Nb3wwo58^58VKIZ3{fz#~Y&VYfPu`NaeVHk}OB=9JZ#0beCMjTcr;`hp zQ8}q?bG$N9#Q6!YSs%t=sqs#l@qtY(M5{``cIVsKbjsdMHy}0C)!(k1sC0KiAYWnGO!doL-I%uYrdf16xcNf zu;-OYtLmtv+@)B?02o1Jr^Y~mgy*T8M!yeRh$M3q>Fp zvg9L|ryK_n11Z9q+S*6M_E&>nf%&>@>7}_XKc4YCGIZIQQKljIy5&Oh=YCg37>xAt zHQ(vZ^71lP>)dZWw*5}1`J{02X)5cT)M7f;hgXl_m$tMH0)a12_upDXcdt0at=uKJ zHV-_PoSWN8Y(YWV^~L+NiMdcqOV)CoFtsc>`(ZVC`vKt$Qp%pH#K(=B#X*WI@%_h-JtZ-!+3T7R36!#kdGtsk9(NZ<25&lb#j!1o zLpe$)eLY2yutta?LLw(8N89zwj4gQpY%ovi9xe8*8%|D6ToykdDiSB~0nr_?JNQ&n z8l6dx?%%(^IrAmCzFy>Tb6ncfQykNEU0q^zwSb=~dfW|bMt zcc~(oVio51PnbD5^R!Eiz@lqtX~~uveOX24;a{8{Oy-d~BY*Gpa_;|70EzpYir&f z@~B9!Dx_GyrowS$fGBulW5dGQS~so~U<~`Q7FQKLJzg+!jQcRhejiOiS+o2AL@+^5)gFTnp5tu zMeFxqIn&j88|bEMN(7#y&#NH3=JdmAmqR{5HSN)_Y2qH(@^mtEFEiz72xzEk?j{rz z7OqV<2m)u0ODPfqye_xp2-_W8(ih(?ep0^u{S8ZOuZzC%WI5SSDnm09$^psV4~U3} zXwcKsGvZa|eQv%}owh5fpQ}?nw(qSRwElv@p$QVHFVjZJ6Kq( z6<4s~_iK5^XlAs|art85FE{QFERfG0%S93hk%d=y9N9>muF?~;>3m&D_g0aXzNxI- z@8tBE-cP2~NJ~>QMnla=u35tKvDj-G&$ELJ<5`J6CB@%1c0V#Z^lY&9@>D=z$hxvg z3Ypeta9x%0Mkr1SM=-y#G|GClUXG7Y<`@6c=d#b`i%?+9AA1jBm0kp zhH^o{Aqc)r19Nr;u%z6W(699+=&>;cUERm#>7D|!7u(3kB2KGb)MGudth&H0*nT-6 zzDL55os;8lCnN=|XJwz;YL(y)?&{#LXE#YDteEKo?jy#&)4Gb=upWtcB7&`WTKS4s z-dT`#6@(N`1o=ym=FTiRnTb?dxiG!TwA@vRRm&gLH@<<+E@|>{CKsr1-x3)qp8R^4 z+Avn{Og@R+ympJKhP+|AqYT!XAd2LuG#@k@{-hQYAHQ={=W)KENytG4xt@!+2LROE8+e zz3Sv`6FuvbCtfAYJrC+oB7OuibPvwGBs;0S#b!?ikO{oz174Ib936RWn@$*an$9>d zU-~sRvT=`;l%6X-e=O;RYbqBGU;GUVqn3==UFeuAE0k%0WtQs{nB)s3bXB}xw!I1=@v;0bqYlm zWZzzW@VYp)pLQO#zdTtntsJlLswRDVx|Sz)wpq!hTj4h-afaJGs|t+6rY4y?OOEI4 zQ=(ELpU*d6ES`_vlA6ik3PR5f(7`e-qKp0mJw)g-`tt$qtzbEN%;5*tZogUH=>TF9aP;+_ zR#1#voxMD)X}mn$05KH3*5{TIk_i%lS!*k+Mg~&clB`O4w&<=z`&BEIGHC((#TWDr z9E2o$&&^RnuPevj0PkmGS7#8vT;YGe6$I$4f+u-t?oT8ycOxGQ+5M8Be9BB@0(_p> zy)L-1S<{X4^0$cp(A2=!BydLrp z%5wq>&G&GOJs3TQRB2(W&Z%9zdyn2 zqz>R|NyXjyMvcA2Net}1No>7URJ?~d%NQf-jpsB+8dB!s(97eRw$$2FcyCgeQ3{7w zRH$ppwsVEYU#u*$m!3e>2-OZK|?NR zv$!<6Ty8f+__A165uGLu4D3gMNEt(;DY>>EcZpt=|`@I{(l(~;ceMu=4Z5Fc9WAA3|3J+7{& zC(@9aIZyRUfn&#vixfhDZ8xH8zPmtu<(i(N3(6hA8CTyxD)%6KiQ{)VVi6hSVbp?g z3lZW;(W)Xot@z1OVpL2ipGNy_camrznm;38tE+lqgXWG!w6LS+C>b`wp2D=eps=TC z_kgZf7ucv6Av{BA)GeEu(2fqq<$mwb6WcGnXQ6RrdHFasy--=%+vcgx#4D*ts)tM} zQ+d{x7dzf7@y+K92L}h5T3SnuK2VelgwU-vBV(@GRgCJkfsS}vG-LqcP+#w<5PcE~ zaVXD^>t3qUT!RElKYH}Y9C)~^0j{tL1KnpJD!YC$vS~UoD{0*8@toKNb{oQ!=K3Dk z2+1|ADsKB09Tkx|R}~=_yoHVkMv91E_;;cZIpl8qca8(XfuWpD33IK1NRNiXm&Nnul4p2`;3zQYB0xv2uKVh26k$CZrAW9E@?gcC`CXjd8_$Nu#&f{{SS>G<&5wpEa^dJK zQOKSSU;Gb2Ub>fi4bmM{5O1%}W>@gNkLf{8)3$KHO&06lh6p7gUK-F(+PCtJ9cn;DX+va_|o#rbE;2DRq$NvrmUOR8cxbgk=Yc-X8Bx+z338 z@>?Kzwz&O4C|)F$LZ6UODhQZ)dQ42r)TfR56sQRl1(M@76K+gWy#3{9#%6Z6#%8*w z)a!tCyLJJOnB6FB+H9eWCA#)>a(2FBqr`0Db1Mi7pnBS2u%o+7f|!-VAZR{9i{Kl) z=`#IyU{UI7nqS+#?-M*GK&7m@j62FO+S6Zuh+b{Hs$k1nyWoHbxS9`YM^7ASsrt-VD;JN}JNA=!uY2X}O z9!5cemzT}py2~T_wo5CLSHdolhZ$I!1t!{TaExIr9K6?c7Q^*EIIV^;hIYGkr{^Pn6=JW^3FoJ z*Vu}iUwEUxK^&@!ij{a)_7(C9(Q2}4ixU$Q9)=vFx9jFx0q6o8;U1W8VyXAV#`MHE z2&G}kHub?CJ73~E#FcBOI5@5jO z;vQpFg%MyPzd;#9>-XwMHdI#durNP=uI-^}HmI{OA)pYh@}X{c%Vm%oOb zNI0JPr0xSN_58bqR}X~sU$Yn|Aq1dB5UToqGsn^4;qz}x4xa4f!OH0DtSsLL^m4zC z7b1BrM~X6$nxoECZ+}1Y`t3_yW;aBa!Xb!`6iT@|+r>YgsVV(fT^%q|?J_Ux9xJQ< zq_@4WJQt^;=xJv8GvvA-JGs`gZ0w|~N>mx)FL(I7zs2-BKQ3MhYeuOq?86baCg;(hv%y`LSIjPD&Q zXLF3cw-Y@&La1;3Vsqyyp?apNti5<6>ac=fZNdMZG-}bWl{LTp5!OSrgV1BS`HrZI zhHfgfxPaqx>}&`Oo$A4;;IMqZb&pb~H*ENFwf-41Q7+P&o!49mu^0s7+a8x*NHdFL z*YA0M`yNPW078}DWk^Wj`Ddth+J>0JK!KU4M-R&2SJp7S9qm&!XXkp`gYuPsiqUN( zjJgSJO@T{CvN6?DMEUZ^W#Q8oD2SSd#=dAC`lQMV647qLCn)GRVUcIQ^X15;(CGMN zC4B|h&eB%R>>XMmvw@+hL$tooQ4z1b5anm2Q+B=eI}1ZUDWbJ-l}%IiDpm!u(AtWk zR|$7W&34zT2wstORm8qU#ebBdfh%_XA&NriRwQlbCEvP1fNJ;i3uj|Unj$ykd-70L z4WJdPjF0GF9?$%CO&6bBM>sOb-yG^RCCp%(TG=95^5&661DsyF_b`YJ$aJ;6_SG@R@-hD#qOC1!nXGY> z`jPg87_;{L<`HBFcY*)4D6d`Q!-`DCT%ASjQnXx-iwC*kD1&KxPSwDQv_kNiqEs;> zZN|f@AE`8ujXP$fuakbxwQcO$^>J4|7B%Aol^<+jxwuHDDFr#>7P!06N#fZ`CFvzb zFBkUf;%GK6C+Bv}Wa?I}AxAvxTECI6*4@O!KT(&a=A!n~8X4}_uuxrzhtega_U=VO z;@$Ko#w1b+{QUgQE)CQ1ZxTsxvWM3cIqLj8w(IhGrv*p^Y-jqaMvZzwDlN!oXucTq zVCryRziwSW-X!Txd4kz^Qn2f55he63m|bwh3ECHdK0(a2>m^AD)Erl z&FF|3k0{E~?Ng<29S>{54=CF^R}h3tI9XWg<4M|K~rK`W7^(K=x6MNY=79^ zGaYY~ivuz!4&^F*C`yU?P)5-${uB<)ma=i8bNHd3QhS0^$gh^G$L?3AbfZ-vfvp<> z$Ooj;3oWg0+7S{V01Xkano=_K6bJbb69F~`h|BZ>`1~2K+a7$zZH1DIoV;@87@-R` zW*ela$A-#i7gOP{CwPwvIoW>>%HH|YjZ*W2Bz}-!+V74Iu2iQ_14h8p!os5Jl!K|UiSZ+Z zLOuZI!msrZzOC}QTRr(+l%%~cNhUMC)3P9~+KEO`mw1j|9-;A%6_maQdR(7Vz3IJ^ z^*6ra@3D|>Qg^Ys@AYcWdFo4Y-gIcm!qy)Ia=#rT5U`%;iAWVaS#8B1uXknz<#F4R zgBmsf-c0|j4mBRlc<}M_BdQV+x*X1R2GT8azbETUkgphMokiCFlrHL|Z8=9SJhi4t zCYOjeOo1-K6Y_IFCO8JTm%#h2%&N`bQ7rM{;o$~vciYeB@V%KuQg<=}spdzUFZu6> zhyU50P9|?UvTpMFCj3qTfpC@}^vV3BfKp;3EJsoBEM!%LJ^i?0NPf&<5-XIdl7c51 zQt&?W=?{9tpr`8dF$v|{OVanQw?rKqQSH>j+f%q51gY7)Jb295q}a$9DDWPJcPLDp ztyLy5=zjZt!11QJXpCm491>*(01U4C#fnu4Y`q}u)T!~hd36+OyuZG2^(>AJ|G*bt zLdPk1vC(b6b~(xNwY7Eo%D!`52FUyQ$UF<0nl5u)#Y!q`oL^LUzAz)tusRt_d@LxQ z7U@Y7WS~Gs^8ECL&&$Y8-iqAZWnDDinOT}aE7$8cZ{}k(ROZ0+pVYs&z@*!lqJPfL z&*$dp{>G$N4^AhQuOtDDF^RHYS;+7E(K=!%f|x}3%dcGOhgS0uD!LXp6>ODmy)Ol< zXXG>#dA*vcm3awXy2}`0vkg`xj&J8-cR^bgPjVqeknoGxE-7pZJS?Ngpe>n*Uck<78 zdOrZcO``B+sVPVq_-a18)Y}tH*yJ**i=h^Y+?wM#SdOq5UukQ-WsrDNQ23bdqvS$o z_*`u%MSphiLaj48LwkGi;$y<`Yai%bEbq5^8kZPb|+2I;(f9N;s#)xm|keS-Eq zKPmOjtIF~J=6h#%C6L+-n`7l-hhwI)`KnP0 ze$?l`u*Cj+mmaech)CoO6!ku1y@S6h@2IFal&BGRKQEK{NfNOloIZG9r}wT(;KSBo zx3lTn=NIX!^?AH6Y*)$XR0e z1x2GS_<0C}`v4vIs5jcss=fOTA<=bE8h8+>oLjH`h}v`Su_$s21C?Q*NdOu?G8j~o zr))nx*w8IEktNwdw%F@h)=XO7@cFutyHu!sGSj>|_ZzD}x_ExTA;QhPkBgNk5ZcunnaZg=!&T1IF z449=>@IyJlWn~r4o|>V@3QyO_RPv$?8#Zb$u_QqOOQNQwYvdF=;4O+enE75sLmRvp zM2_ZjLw=*#AT4u&s+qa8Hd&WJmpeH14Jqdk#*Hw)F zV?S3|QLGrC|6Ik=9CEuWQplEbE%asrOEy@}#N$>AQ&aAz7S~FyRSM1dJ^TO(?&#=f zEI(iLxJS&9(byQKE3YDr4pYhaq>1Mtm~Afr$n{)R@szy^9*N68ydeMWKig>@9M0Fc zhZd-zG${bvC#(0#9Q#n8Z6a?LM4vI$85RQrgDkR=*$+OV2S_7Q+zRtS zs$A9dfrUuPfmm&$;DQ1SKLp?ux+rY3Or5JgXw{V{d8)ZWDbC|~fBXkEKcve%j<fUEXO4PsN@B*wMpyn3<^~N|($ww)L-7sxKO?KDcXvkT-XJ$i8gUp;m zlxA#J^ce@?isGq4>Fc|qsRJ2bJdV63`1+etU$SAw`{Rdtn(KUUrU;wF(UhYBuqr-& zLEfz(`s0NiTl3Wq-<*ywm_tHLDzhx@Svf3FG?lSs855KV0nfx<8lXijYu#?AdpD&h zmewYncHDV>n6>L(eUO|Boo({epqB$6@yiI&ZJ}!zdjQ2!BwH_7z9fFjPbDSGvsahM z9%7KBk<@M1ZyfjAdbR4Br)s^J2G5GFqrZO$TD$8oP6QNFIUyn`$Y-DJ zH}c~&y1ql@`5^cwOHQ59G@l>X2K&*cxUaLE@26j}J?8>3Q1VyP*>)Bnh7E0ggk*jn z8nUs|Zl1oB9j%g?l|{ef0+KLru936)U*G$OMnR&;?pczFYxu`1Jqd0%Ilj1FaypXp z_AI2gY}~r>aKh5S^Wf)6^gF^@@J?YstOC`|&K^*O9KUVqeXgh&c|B>BOr`%NbIh9b z`h!jUsA$oslKnj7i!KB`6N5upQPHMB!?c%Pbx|gWY#4ZdK=SJRy=aB~f?Sh#>wS!@ zXno!2e0#L{)jBMC4g1!QO|8OAM&kSQy-y0J6JK&z{(RJF`oIsOev!8SZDqgQYW(g@ z!WA(>7LwyclJSE1=Y44{EwDBu2OPphQ)ZPIjRUCYg4z$OXR5}nFdcZGFHmnz)kVj$ zYFD`JFRN^f)j2X@&NdmMC&==2Y|90ogN5b9OMp;N zP>>ghAG}U_jftnCp3-~`7o6!@QH%#fMi0B>sRR=RlC9X6aU=kn<5!RP17?~=H1amh7fTQ{j(#fgJX-$2k z#IUyl(R&O?2vr(_)kP}@AqpVC@;aNGbpWO4ZdIvgIQ8Z4z|`vfVGULLIe!udpdI-g zZu{2vU}H3IbJpO6RxCh605aNBx02Qi2qf2y;+opuE%)5ka^gc&619l@b9%MQOgmL# z;Mi}PX}J1JV63#ahIDZA(CzGk(_d4@D_>Z-0KdRt1U$rh%Tyl3UBM~4o4c-!iXHJ< z?)gfez*0(KM=4$FwnEXaJ{fk`{r3PDsx{!S`EoFl z`GeE8`NGA>W6RlqgM`HU;>LjJndRr|&jgX?strU^EqqS%L)Zmx`k5yZfJ3BiorHWLcxyb{3Iu~dOgUejDCN!m#MF2qzbYD-^h~&aZzkPh>tDdFk z_>E85N`Tz+^v@gs(M{)C{2MP0C;eJsz-aa+I@buK2qI*3>fbWZ%j4}BsVN+a_p%K6 zmzfzIZ5y`sOV&p8>sMEpZHagtR;F{?{d&r%l<)!BA8+XL_#QFauY*zJyo!p7(2jYR zhEk`7>HV8NU)2w*ah|{V)a|9%9SAk2+c~=ZnUhdB{mF;OE@(prF!)8Cnn_QyWqcdb zJAf1eqK@=v6_Na35n_PFI0tD~hgl`}QQN}F43dM1Fjzg`P}jo*pV}qjjerDvf#h&~+b^*I zHqdlX&nr&K1vJzq85D(b(XCHS>3=!U<^^3zb8taS4p|jA%fu}e?CtGYIvFD21uP(K zDmU%i%c8#c^h-|AYV0e9Z*ej-Z#gbMKhE7*I5-V@L}yQ?goaRsW|E6kype}Y{Dz>p zqkrghmnkzq87c5Iv`63R!SC~Z2pK%RxO`uoov5HIHV*>tP^4GeO?Fwm8lHF_QVsg6sdj2$Hv_(=(Y%I6!j2J-X3^Xb2L?GSIe@+?J zG_1zK&+Y*Tz`|lK46U+UUs&3*ZTI_da>s7cy5`aO_Ucep-CO`UV2^aGfWp*X9e5<1 zrymAjqe}b@ovFstK>fm2Vh~Xr6UFKG9Uzpx8+|IMSIzkl0Q){P^9*0a z?w%Cd`P_$Qwr)N-#ihr9fbnSd>RKs)6u#{kxr`$yJT}V#>g24KhD~xeeGvHt$PK@d z6{K0PntQ+trpoY{vY1i~*Ge6srjNgCX>IN7pOg&59Ru6yVaZEr0otdRb_pM7gp!tP*9W3>5{>GKTffhDg}gb4QK5>k_}FfWEtC0sT1wr7_#T=s zST2hKZ~`gLBf3CfyBPZp95;aFB2j=aOTdV?HcFe*EK9${4N6{#9n5q^(U(td-DYqw zW8V3c6)~R^ZS&i`?Wp`^$S5{I_Zl* zc=DatBOt6@&(&|}3qEJ3!h$)Mb1A=oKbDuv*WcFCuYScwY`WZ+sFc9v1HjHo%h8hI zvqa2s28r!5K$;go5Si!nKDh_rZ6+yfD%W4vmj_aNG07ta6HzY*l#k9<5BvhWFR#bdhH$$hproAU0ZR&^Ay3i165F z3r98De4vxD2OA3KNAM{F7Sm`EsAz9)IWgGf5;68}Y*P4rpJb3A~KW*awqO}*Xk z2RcQdu1feh^8}>*m4gxsK%KaR$>IQvn+GJ^`vanp02_+J^bSr<5{7QS$JzJ+5EOYp z@Xk?<}z zM%`+Q<1W@sg*7JbU4zihq0hBHIpnmCR9u^nI_~V7T{&aP(eVbZqg$ME*Co$>*7{LrnI2Yh%;9Va$GGc+UGY!Cz z!CkNN$FO=&ve!hU&yEm_Wf`x}bgRe2A$otvX++q8*%ak?`D&Ymp z!3Ee&pkbX4Poj|Zrq!tql#RlN=^r#z0x&DBlz?i#&WNweF)y$G51X^ zL}q2TX*&t%;9HG7F;})cwRI~mwwru3+vqpf8c^kbZVQ2eV0qY(Q$U`0Q|t9oV9keKc0=O!jc1Hu)V;#S;;A0nw!eOA8!rK~UUgF8 zRRd+DEQw(okgQJ0^77)|1ciBS@6sv2Dc@vQ%BbYBnupRO$CpeZ3dfFk8EoCd*!0iR zg8I$Kr<%R5R_?d14x_#m$XhR$cT%yE3VH$Ofk6d=Ek&A-o2eZys%A4Xny#~!j?l%i zu_Ppr*2f)zOCXE_?E!ghow@9ju3HC!K|ABmc3f}9swBE?=pPU5W__YmyJ_!>m3HRm z{M_5-^qaGg6;HV$a0)S>bXMSEH z9Y3j&=Mv1|D@fSuV}>=pxAZz=^>;%gh5Wq?JR z4`s@x0ANe(uHNd9oIEsM)r4_mETnTG6 zE2%vd5wMw1vVcOjqgjgbqd>9_;yINTQ*`+}xOp<{zUAV3!x;Kua@5l7P{zTYgX zv9VD@d9O)o)cJ7JV*b73;QaRNY=ngr7pWMWjOaPaZ*XI2%{*u|(5^&yzzrD=O|hhYMwO%59P;05 z(D_`p-X>6mq~E2j4~w@2OlP3vIju&XN`C{mRNcgc4jQH{?zV2T3}cacgtB`wjW&=N#!e1H-iZY_?&Ua!N)<)yW6nuBFY~4OBkh z_HcO|Nd2-Sxblf^b$uF)J~xBegNcOkOh-0L?TuyOnudNW3STleCx?H-uXz|p^-~!Z zoy`-ddO_X0(T(Yqy&gD9&Osb#7370*H$*&=l7!xj;M$y>6a%;N>j(?)F=49_@2Bcq z40T|-A7>4&L{;ldB!oDZfAl zr>yY|GA2Iy3a+!HW7s|GB(rtx=N;hytL|m5nL^cQmH@#$AU-=WP}dqdch7gDl<_4q zn@JLm6gf8Z8I4_C>X_A&!7rzbrRV$H?&yx6l>xts*_p=3mi!+b6k(q{<{M~_CHZ4M z(D&rdun5b+guMtvOv1l|F)_(2FzbnW{1y&WiWgT7kG$uj&rMhFT`WGn?QdHS)aoRw zBsjFU>R~|WnwS-t)J<7)5#!}~Mu<%zf)b*%XID|SzF!afonAAOQB?(M@w*_a`<*fi z7&IVIthAex($v~=FaQ@TUvUY|mWAX*k3V1Q@4lOlc2m{lHrkL}!Ny=2kn&wm(;Zfp>Ndg3M)-Xb8cE#k*4M1XJ~0~^R_IPwCS*Ghx7 zVFZL_x`M@!gDJefcxpcni^Wo>JDe%(V}e__i7$I89iQRxS8nbbiV>-a_cj= zNeqqs%INxQC;36iu9E268^Tp7eg%}F?T@*wupJ{L?&`+rHp3qJJhdy0*Mz9d(=z+J z--zpu`m{3Q3@DFpuYv&LY}czSXm`Os3-H+aBkCj+DPa?FH%}s{Sb{oD*!0e?g9|I4 zii-Ly@!Y={k&%(PUR@kjCh~`{^(udRWoIv?s9exrH@sm3U6Pv1Qz~`dYwmJQwP8ip zPH$^~i=oPqluRBRs(>~G8se4dRdU477AUo=~>}Dt`tt9d;AW9W5?<@=_|H3TD6Y#oLb|&_QsO&&|M;Z~*39#qb6?lq zx6W@lUn?&g*G}frRM{kpcz?tA(JIt-p^2X&J%CkkZp7nudO=O{grmrPjQ19eNSK`< zSHQ_?uA3HtR{7E*hmat@9JV;sEz?IjB$VZo#I^kp3XYtypmPPOknwsh(t$rw?txDM z=B)VV{())+Aq%`-k5Yp_GNV63vsHY>x#GmaA}MwNox%HK&aMu#0LDYFiW1egapNbb zC~!H|LKxm-@{9zCn>yzcvwWpM%@XCGfV67S6c4H@2@P58^Ze^(X{jyxy4#|_U}Lq` z4f8omr0@;0F!|MYO#(%XQ+O5qJAdnv|NKx<&m7jcyIt;^O2$P&{DkC)gtg z;;BCAt4mm0BYt^{YBcy05t)z|4$!X*a=$!pd>Qn+L zJz3%XbE6)NqSU0U<0kbBN>1EF8?1TB`PKlDYFRaFkqF1F0>f|QrPTYcAgO!0Vr!;7F$v<7A)#wi7*jKY*kw=J}BE(8;J`% z1DLPn~p{W~&w@M(duk1%!`lfeNhz^2oKS&9D)E;7;=G-8nZh6Ud#aK)$*a%xM= zZtSL69LYz8ljGwOsIB#yB3(@Epp+uq+`^tB&HI^2Eu{F(k&uLGFdNKg%Iwz8cIq%R z`<%8CEkW-A9Xz01XKrx8Jdz>3>Kn;mD1lkve^^m`A$?hXX0Iz`2n8LY`^ zX$FUL>RAMT0}92YRcrt=eV|=vtS=?1QCMEIwHY5}xpar}9M0s)CA<7F4&Bnb2FK2! zU_>l1#8FL-$_dLE_TVOJrHJhx?auitU*RT$tUrB}5!cvk9pG~lT@f=KYcB-|k} z?|zxsF9-@S5ZG?rnC=*4nL zMuq;8;m+&MeV`*KV`@qPKJY`$k8S?{SncQ8?*jr0wh+lwl~q(+urqaEnqPeKEI}n- z2xY5S6s2=N$56*MZ-B_eS1YJyuv=q-m&I^18&lg2IT+PijCZ{BGaps%UUx?Bl5LIX zBZpRtzSd4sK0?Kw4na@a5b#eA$!D=zH0E#2Pt=x5Vs%jAkqqacl5`nDh!z$5l2u^1 zIBbu0)LA*U8b)8f_AB0k4DrjA1NY2hGFk8kB2?GOvp!{Q?FmX7bY!?x0o%75eNowE ztw%BKd(dDy`&aqpmW7j42r*`FD9LEp6~vTMq#yoWZWU4#0C3FvavEsQMh(1^yFrEy z*cgdqbTbpyEh4gD$u-H>G9&dL&i!fLXV>hXiy}zL$jH3ML?YYW-CYgFQtVI1$BORr z2K6j3*N(vFh_jX=QuNi`3GZTe`=y2b5w}+DP@D_B$3o7FsLTPcDWApR-b)7s+NS=l z0S8hMwuy82XQsbqtaN>}{m^*hJByynUag+f@$9a?ej3dbQybFG6WTa?W}Cmw?O?{7 zIJvLXK(HtoI0o`OHke}OcabqheofdA~adZpM)=r7{gEo}4HEka; zAAI^!ZAi$5`_S;J~RAGg3Srj=$#6wAyhl#2zZ3$|Sek zvae?JyLoI;I5e5kt0qSSvRFquDY}1g@9N6qnQ4=ZCdqUZ(yBCi$>(`&23!i@Gi#R< zi%@OT#g6>5TmRPu4Z1NUsTD!UI7V79MAyF#xl1?+GWxhr`*&Ymft?7lUYWgN(VMWA zu~Lx+?t;3y^i+*+yUaq>spa2S)Lb_2ILuv0h(c_f;!%~lc9#QsHwXYYvJUFw-bay7 ztIo}5J^}!RK>VX#tBNs{{mrhA4h}(EX1d_OXO^(>XFo#r2bs?RO6~*)pQ+)!mU<^L zQoqxeK#WlUrtv)WzUxqGRuIjA+G24Gc@@eWfa+e5m^0P8HSxyReEm@^v)^KHpy&Dd z?`No4)h{spqB4n;RRB34@KikCWOOr@mzPK5DCNMr3QS`{K&w)m!WbF$Yw)c(zN*%l zAl7(oYj&AgcDu1wS2c=26lB1Ps$Y6oz!=qeL^%8aAsY)CY;9#FO>DxFY*?MsW1-4| z%!Z>Q8(K^UJtkL~uRLSYSOOm{FhN*9(~{jl7hUzxh2i8X+opJvsYsDy_^7M1TnC$a zZ`E>vcXM@9t^TY8ijM<)eZa7?L-s__U^*5jQFNhoB%cSu>`iK z-G@yiv6nQ(#U80Fz^qbOR%Q;272cX{U`i_Z@K<%wfvd)n#2N)LTpV-cn88;9Vc;G7 z3s6znk4AZoxfd;}RUC6kY|CC|-T$kuo-A&1VVu_;o)#{&OGE}54MZlU8zdm@o@)Z} z>}BNPaxI}g7dmupueQ~;u&CUke^ule&{kLfIFUcFAY?aH~=&Y%X0d@BG|om$Qae=(1cf zkt8uoC-rI%kmhggV9r=+mi#N0mfq|B2k{pOpo$_L0<&eWiz82OKmnd(Hny~6JO@D5 zo5_Wh1V3p8tyYD!Y7&v08JL=2HS`5-j52YmNm~P{SHjGAo0VOt^xPi~K;)ALXc|zd zW3is}!j_%n-85AYvet9Fcw;zyfw_kD+9|fqnpC}Q(`?|YO&jc$_ z*wS6Oe+$4Y5q~kUWkMjgFk1Z~GW?z63pfj$C-T(v;|vL5lR*Z+K<;zw)dIB+o%U=( zu=RdQQ*5oj8VLHp_bY;!Eu?-qAQ@B+U{g~GHTqau0+oh=50~ZtD1vp>r(-*YuG&+#U*k{t6zz>T?|&pmyG)e7|i)TlZwGjcLlKXc;H3+7~ z{u;Ra7cf0*dqB4!!?_oqM@YzhU(HPWI8H0UDwVG;H#b+bUOcdFMo2$LEEDzPkvj`* z+T1bfUUb8V1)n^^1Z~||4Ca}jztHHT=dQv@- zDnhVz=IdB1c_zpKw<>Dk&pIQ#-H^++t%kU=pt`tV&}Vy)kh@thecBxP|HYrUq9S54 z%m(suEoI;|fH|jK^h6e)XQEF@y3#kgGl}<0VtVJXQ|`Qg)ft{+`#(WazZ;hDWWVnE ziaRP*Dka&=>|<;71<(PqU+@TUf|dETxzU>AOn0+){;Fb?iclFxDdFAwqE0|s5lc&7 zVg~4Vy{8A#wM(B=?@jjk1zs0ASCA0Jc7?LI+%U@ziwWu~Akb!0rsKomLa*c2XjtQfU9Ad!QlKQc+iU&kY58x4qQK~LBgo$KaPpQ)Jq>WsWf}}@xRQ)eGcmi z*hRG}P48UdEw8JXvrJr5#5VwW0^Y(MpCAbe4zQE+Ga+L;ro+3++)E^{vOncW$YS7# z?)~iTmj5f21TijBC?cFS5Y^3MWB%H~?hd;3dFGV-XPa#Ie=Xb1`l2%b5E&31)A2KQ z#%|z53H|O3UVHaoW2VRHG%rz%1Vu-OrUvIy=^h{_IZk<*8z(5u&NCNEqHiRE%fg0| z;MSdO`w->(K!G*8uq(XOBM-u+@{3U4$L@7B!JjQT1kDQTp@yEPz|D2DNS-)7gUjOm zSVmJXKtR6DXgPblw0M@z=e;?0t*mVz$sD?5o2HRYp`A3*q}^X#fu0$#a{RlSofnI{ zNY<3fpFv{w_;u2M#e37?WMAN`Hou@fYnfuDA(m0Wvj^sb3ABD!bC&u91hR4L;G>45 z6|H`ruJEqlL~k^HoY+#c&OD^Jm;@Z%Ef3$!iluEVd%Z0h|f8 z)8y8#scrSbFJI{Xi?!LNf{Ux9nhQ5OSY$`ES5=qwHvm(?orc?_tjYPw&t3XK*6$QE zie2WcQ5Cs=hg8No#Z}gqsLVs1o8T1D5;OHn0cyAC8dGfT{2lrV7TNlw|db5sR z-|s@6nj3=L9)v;W`*g^F{<}KWlE}ie7n{(PDztGg2%T7jNfhnuVj(~Qs82F{M`yt- zd#)gyZtmZZL%p$UqgJyENBzk&yvp65Q3%Hk}?HwHhrz;h`noekGS+53cGsngirOrL@WHvQ5e?FZK zq&CJ=DGWBBJI6yd4^r5?M^Var` z8|6Zaa=N~J4xaeMITxX}0)9vG)NXj)3y}_dmI_#ISi}E8i{CLebo5j{vL@e8Dv6b( zTm4Ao3vhi89(*RN9WUQlQc{xzcUY(b!J(Vmjdr6AhkNtE?PkrG_rD`g?OGockhva~ z!Wxfs6@5@XG2hQI87#p`bS&a?;xf)6l%N82h*DQMFUUIAenD|&JnXrNQGrb3V%Zl- zyVc@jv&YGC5@#$?gdkA0^hV+Le8cF9HHR88CpbNN6_z-ze)lEa{QBO|;$p@goVQ;8 z7-Z#`o*w3R;eBu5#8_i7Dh&IT)4O11@%9)APHPlh=06CVT|as;UCEyoZzMqc4*Xks zzSP=G(P)(G&E*luCT(E=f8==Ya(B$ILIGbhYgT%tqw}VlGbxTJGC9RGTdb0fQ`7ph zS;yBGzSVb@)$R1d-_ovHtaP?`c2IwZoIkD)6nr-aY+J*UpxRuev|kfeO_wn2-JKw~ zGk)t+_(>JtRWNr8yH;R)G=HI9WVF$%aKFVA?R-!sB(9wBIf_C;892j0{vFDHHpK=~ z&+nkj`zq*zJIWqjwCSRzM~0odfG{1O%K@2sOdu#;kvj^2QVd?6FYE6& z-}{~K?SSafr@s40L|P*@(A5>`Dd5a}+24_D*6)O_{C>uqr#2M(3KpeA6@ow(6TDSF zvF?26k*G`&T4Q(XGE=H81`uBD99>=AAy6&6*#y!G3?5_2h!=WV7YStTFOKSLGHoUH zPAGz7K$j``*20BbGdoET#9}|e5MBn0n%Qgh1$j1kJd#hx03gNP-BI|j7m-pzWPD$g z^NVfSQqPl_xnXAY-ekl>#@swC#!3m?8`Z(wz~SE z2VbgMtwCmL~n5_*H3Az^l0Q%`>Zg^`hGIK^{CzoR!Yz2Pv< z(P=D;#B2?oRAu`DBT^Ed(~ld7`1+1KYJ6uIIUVOjrF{9;oW2Pyy9$91DR>%bT05TX zvJ@C&Ce74)+C^LM?jBB~<473)EyQ?ERm*gxK=%L$o<`dk$?%wsglA}hZA2%uOPK^1 zN@EukM{xu8gOC68&;3@MMh(s7yoj>GdkfghB8;5I%76!--)ra`9Ieko;I&fB+YaEb zxfpFm0_p&2XMJK7<~zolNU&$!DawytXNDcw^Kj!Gup z-M!r&@r@7C)Jx)MB*Bcl)MtEryurG^i(1j8&`89@#t)g%+5C7dBTri3G>A-?8(LzN zA`#0?swM$+6fW1KkKM%WtwXW`k&>~HPUBG0(f?k)KK0>WGH~R^e9m2z1RqoKlW^^d z2Xh0xK?U4D>n=o+ZfFo8L{!ghLgM~#N2q|aY+)ZXMf#5FmwNBq4-nwK++RQop2r?Q zrYL~Xf^Wrydn-)uBT&FL zFTMWKxhnfE{TELx6IpP?brZUF(w0bZu?6KhkTsoeYl7=10p^@IxLlmw@dxiCbw~Rm z#UuoD}tdhcOnYRNJ2%LmdCoIhJg)}$`v;F;K@qUdA z7I;2rYTPGUd_sO7#1l17_blZuibFWl2Y-JJzgfx*gb<-(aOp)5L!57mJfiSQ#!KXL z@+IGf!Wm+I zIJj=#0i8dQBy)`l?Q|D7|07$&jqFg;@k|lyuIEHK{CSP@Qd> z&S1exno_tiVz`83^Oa?bQG>pzt({J|^P8HTeRf#pD;&h-Wr(&1JOF5diXhSg6JI+i z^pjUVp|(Lmz@a>8fW;!6CO^`L@85#l@y9LFsKi2$_kMMyg2yWxa7TFg3%*4;RATTs ztqxXG&ugsx>V7bT_0BfIhtfjvQzzy4#f_p_PZQzOMkBN3;?!v4(`@Hgp@Y@G>AVfs zRUg0spu|;VR>27&KT4U_9m&M`+4KRRL!Pljh)m1hLEA&?c`=BCMq`3MqCF~CV%)|OhA?Q)B=08oDIgvsqzL=3ai+sQ{ zTWX5bPH#jc`_{A0pkIdx!@hZV`#y8i=mwe3BG)07E5i`!&wCoi_e04QMgwtZpj*|o z=H{|c5vb4HSkQdx)4J$As}D>R)vz}Psxb4xPt-SN)bX3mbnM`&-M}@GVTz4heHhXY1ftB* zFq{%AE2|GgiFiVKYxJSCtMwVq@UN;Fu+YBVfI|x6+pd)Sfnn_$z_M+i_FoMS4&B~K zyw9^q`-<-Eie_Y3)6x_!t{AXSMoAR(R)-(h?|S!~#+yAqrfAS`q_fc@0@E&NzG&zg zAShE@VbT(=yqh2F`Fkj9n8dhz1Y&nOSeu+rDbkWUpl1{yM7>8IK#+K%W+Hs<{3F(` z!{W%*0F}D!MbLjDkar&1Qp(s-LTg%zLPutLitusYup&CHmV89sn@H|Ej&3AEQfKNo z-Ih9-DP;v-MXL%QcIfv5NN8rh*D{N#XUiqWnt=MfRa!%P3J{9`g{7KOrKtEw#_^o0 zw1$XGbw*)Ay!2?w1;|Mh-$}K-IQ+#ga znd-SI;m!V3?p`*^YOV1CcpfPK$jLz8>*}+Wa2}MdWW#(DP(J%aJJ2JNl@gr_ z_@>2}BkIokk^QMKY82&G+V?vboVuOi!REzJxLHb>^Zx2Z^Z!)&NeVzo%JIoY z0S1702@Px;pG(;(cxt{(A|gEN+d5I<&MAE?yE?P%;D~HO{)^#@6kuVKl;%{!FCNM( zZ{)#`;k6$d-m9Hqk1Q^h^_iWiwua%(f2JC1BR0QMBMj60Tp9E|^}0PP26NzjK;Q=) z)zNF+y4u>aQ!%tEzv<$Pth1)24A0ItJWzmIlT=*)x9#L9TAUIB$5Gmmt-dX7)7Z1J zIQz5QIw9!>6fmfX5Np6>Bws!??&3n`WwPR?xXL&ExSz76^whd1<&Y*~sZq*E80>e3 z=(kBm_<{p4<#8|iD=h_7BmnaKW6ueG!N&&p=x!r@{sBJwVg#x&#$Dz3^W}GaMEU2V zmIRSy1S4e&rOgeSA8oJF|!LDu2`5cp=1vA^oc`y{a4KoQGCzyb})LS zwLp0L1;EF_K+UtMCj}wOZ!1U5qt4KH6Wd?UrJBQ4#jkCqdY=}T*R-{jXSX!p2_T>I zfVP$vqUNRVWfJ9}0K;?JIy2BpPZJx?6TE4OOctyU4Dh!vyO_bF&0BZn?jZnBFd%_D zKd&a|T&O_^?TR4b_zXy??(HMHxvh0rEpHd~0!9Ea+fXVq3c7N9$*9{T2DA4@7aqz- zROHvivTvl6s?LV!^?vLm#k}fZ)T&jt+^T}!=Tp?41{Zu zeY%57Phpi_<{7zEMG?D9sv6|Ew!T~hk?BO7DtRrUzau=A^wOJxhW2s{+uKSFT2aZw zmq|v$a-7a-3l5WsTkQ`tG#K>5Dt`Xd#p1d~v52;2ZgP0e3A|frKeCa6D-<}sTsX)f zGE$lslTqJ(p$U_Pj?KQthb@UQ;N~`I zGJ#RDX&%&Lcle2>_qKp1=IF;3g0(G1{2(iI#o%P^e1w3WYpn*?|LJN#T4A#M~5K_FmSxO-<%;;SsCvD4<_Kp_#8dc;VZ{sGT^uW z%TO*FzvZe=MUi(dsII`*Qghawj*cFW$B+Bz@p|Z{g~Y&T?aece_j)^6?;KQsE0V=< zK)czE7m&ldO$L=W&%RJlr5j4s6!ox9XUd|m6_svlP|q*3dq-v`oJ=GDvd)hmN8B0y zql|qW^rENYC6WXif^WDAhP;{FLo79n`38Zk#Z99O>8uJ+6IthTgT?4M z;o%d^5sY~{sUTuRBri!wa+?@Mdk0G9fcmxQ{aaL6EyC?^{;xpHZUtS6E@sLY@5dX3 zUly;+285CDtlnhwhoR^YvIlqt#w?9c{a|s~bZP@5Z)ue){sV}czLLBEQLktD9q!8Q z6;4LLe3ATjekd5HgG*F7$=|D9F=Hyll#WHLXljCRGI~0p#w}a}F!LsHmo5W_%ORlZ zxwM@%;iI{79{b(VeQ>#Y=`;SzOJsU}=fXU(9~x5k8)DCdIOFS*6pB=b8Z|ZF5p9I*4VVE@}|` zR{`<1C+{kqyfa*~#O1=XE=C2yL05NtVr}f-gPCQN6OFut1Wzb2XDYbgyX`;Vph|h& z#I{orss1Z}1sGv|+}wOa((UhF{D1}kN56RrQ!X`8#)jwG-HI3@$RLSy$Kg4)`L=B~w{>FrK zcqpZR+=j`6AGYt(0~uO7@3dJZ5tC(a`S;uCcUtWMRyK_Y#OBj}EP^#OZHJ_K`76W< zjnEBF;j=N#h0e4DU)@OubLm;;*9?9cG#Bfl=(bkdSU9(v*WhgmvPR`ik}6{$mEJl# zUDiE0FX0Q2q9N+t@W4X-YGrG`RR#Lxp`_ly6QG^~a6C`~4=?7AgOoTwfdksjYHoB) zl}ow0Iwe8mx=SOfO0Pz&bVyapjBE(zO{5*LcQp|Fh~yhNzk6lOvs7!e7mLf-0-8Z=F2(#dV>k4}%XCQ*mu+;+vnJ^i}OS zlF;A~zLv4ewzpH1^$RL(NxlR(;yU}KK?R{ZM4+h1?cM>>fz$w?D9X=&t3QjOwe{^e zsXa*gs2?ZnB7y+k{=k+Xl`mb=&kDplcJq}%VS|HT=DUTMFu!73^N{Ncnc($@WuWU> z*cAGfn^w-*eTAI2C3%NGShpp^#8kg!08B!EHWm`3Frsw#I>-!R^}CS3GYychH=2OK z>S?&ssZEvrUOAcp4g$+XqBKW%sq?2>mCSV|l7v8q*X!C9MWVZ5M+uGD{9IhN3BxBA zYhgCOj%D10;u4+fcCnb+RZ~krbleSRT zt}#)^OvUh>U9@HsK#QL30$fhtK8Nju0$-wF!zJeXwl-ED*V)+gJ@i**1(l>t3{Wbr?`w#LMaVwUvJn?(f|m(Y-y*RpP!(Xw;W<+7>NVa?KH{i7Dk| z|A!QmM-p(l*2hic0W2(QAt!-Z2M!I!?X#I^z~qHY%JTUWbHCEl$-Tz|*Qnpm{{`?&R!`QLO%@i0=Cg6_*r3ZAPxYSxZJ2d*r?J028Y zf(d74kILZ;YtG&NOokY%Zs;NIFAl;MR;EGX=&ub&Od{XCc|;!+i3g}-elAYVu?L~X zQ{)#8e=nUpeh&yS!N*NkJw?lUyKXbz?`FR9-(wO)<3O%uH{XJ<08>8l0CU}+4+f4^ z+_zJz&q`g9bZSZ!E>T*JYg!(5X72~%V`7)eYvV}ES{-&<+J(lHl@DW%8D(6;6Yu{$ zayM7+2MzQd+{Va9vn#|~u}2v1LW|=d=d&Td+mfq`ie-P~C34u#Vn$jgBn}Lx+I4Br zWpfbnC}lDT(_#4iRgOqMK|6nBMM^F zwVWD67|{#@JQ^7Mm9e)zm~n1}Ja2!HWgw|%r*9^XZkB7jefg!&^s-uzd*{Q)xU}J! z#ea~aGX7ce|48JDrg|W?oA}%HhBnfSP`hof@4+u34qYuJI_KAaPB`K<eme0t zYevdnLAlo7s#`b$CcAijzJpIV@LL9*39;{jM_R6h2B@{_H8$1_Z@mAhMi#3C^^x>t z_ZHEHnx`W(Hh%2TJ&}r)eYYt6g-S|E1y4}8m-z^^h`YgUtO;k32c6k16TDQO?+GLM zlan*OITGQh^H)!7jwAg(F5a zf5>pD9hs;f*wGLBEHH%h4|sQl7?VtmelSuerfl8*;O?Tc^*O@||FObbdB$O;s0=Pt z-yGztsVx3<4)vj|(Tb`yohyd*zheD91~PZ#e^z)I1BUIvzt>(17FD6km#&(Q3J_hBm9G6eu_KVqo9MjO3t?o zDe|3jDIADfwS$ErvJ%#i{_@^FeMogg1JnNG`4zeHuYjF50eE-MpKdP%MAPu&t4|m^0u(7 zhkH%ndH@yagPC&kr8Eu@1Fv4g0#}6@?|Qjh%9Z0FxJ)|TDSaHjDwJ@N85A z5S0nuThrbsiKJ)afKlSV2QFdEq#9Q2cVt5@ol~1m+;%-{HFBF~vde<{0{>K9Fu4@i z#DQj5J70iho8mnR%$n`&I_?Bny3 zVM9k2J5iY$(kQlWw5*MJ&aX1b9q^9~uL2~0RtK3>{Sk@%lVNBh1y7D@@ z(*2-r>I#+_In(|1ejlP$m#dI;2IeciEB=0$wuXGGea_4uhFBkkU$hH-%jtg;{uLBN zKvJtOU)X(OXk{m5fWt=^3sXNDW}-5b%eU@*Av9hj_l;rbO^Gmg;gZy+*Uf0mFU*&P zQ!ALuEhq8nljxTxmS)kt+gnRBu`^qGF~^91wi} z&&sdOon&^)yr;y-#@XY4x@u^c*%hZ9t^^m;X}E-x*O)JO*zW(1=`7?Ns`z2;{8#j< zL-6;xULWY8fysXC;2>SVLptB>{Y74XwLAl^TxPR0cZMv+$KZx?*BPFj`>_~2273yk zFm&WM0E(%8#j^oC2HhrAdSzc;9df8%m{A<+mSk&O;H%gb97=h+Cx5aRh{vzL6QXXbEwn$4Gs|G9x;JOCjU9gs??BlH* zXqZn}C8RCa0y8c=R-{JzfRydJ9z!!ac|D;*xYkGKK=;J-wFk5BH%bxPsQ53vmOisZ zsWhG=Q|FmibM&(JX(zya=z2b3 zga}yp8owSo1Mf@s^42>(;C|X68|r--+34d>lEiTP4MdEl1ibP2^1w1gnrFyGFhwo3 z{KD`2tPkEs^BTi9@aJ#ZWql4|ZDj;FF}ItC!Z4NbIsk%p!$LOmI++z}GDk7%b=L|2 zU9ci+_Q530LN^(Q?j4xwij&7?oC%kVDf58e^)96M%X}HVb#xQ~N8I_O$}8hYrJ2Dg z`!Ll7B}$Th7D;uj0V2ip)nX()KhyFrC<`3xyb(l&t3}d;b8$>0M+x6%tQl7Dq%`FH z44zv*5-MiLjn^*&E}EO2nlrjl_=w3$Qd<>pN|$m}*RgK+=5LQO17Eycx!b1vgaRgsE|RdjXJuP?w87nmg&p%matjND~KY#_PM z1SAWHDlC#5)o%I%P3~8l>0G3>zD&3Zv;Fr2Iz*eo%*YbY{?55w`!ocC*zxkoTh6po z1tm+aZ_mZ`w{u^m#jWi3yV;r)s%~WXu78Ma7aY{4q5XfOS3KZu4=6>!vj{cL(jJlN{Z8(EEpm;!;4blu)o$_d4NSZ;MMSvJ0ZKg zJn9q8)BtS~vqElK{*m#?pOlO@nvDkUt7Bcu)F$0qDR9F%cr!;8_cM!&!QdQ+;l*y^ zZsOwFHEezcAP0h0d(iApDaKtPF6)SW0NTtAHhKFzH9s`9Lng{IVSi5*lK;{gNOtpXTU7na(b~6z<1(P zY->|kRJ5m}0158cIIDDc@X0C}ePFS`h*Y3f;Bbl$33sN6Wz$ zA@oSe=E9k#aw*d)t=CE7ipz7=&W`QC0U_;O7UacE-^f>hXGbbl%~6a(*XDhTO4JWhws)MVq@RqMD_ZVd$Zp z}~xzjc;+AFy3#Pi5x^Tb<5Rtv7-y>|2P zP}61PYzb!#uk{sq_q_HG4(3{$QInUx7Izc|y%XovG}&{ObIx@Bb8!NOqi9?u;%W7%z1%dcTvO$D;G9BdjpSYu;mk!k*%-gy%dBcpYC6a@iS8&tC$aIcq*K4>9VCSXI=jpJ=MpZ?oyE z<$Xi5KI+y}yad97krLt~Kn4P;vowoE!Ie4_nif7B^JQFiK3%0Zl&w8s?^HzrX2*`4 zD_GO+?qXoK?RMpcOvD`naJ|n#FLdkem57Wi&iaBRsx_xZgznoC8-z|2^gQ4l{Y@(E z#Nd;&wpR~aiIMS3wXWreZRgXiWfuN=>DwH~qbKF%c3jyz8~88{E-8h~%^0a@n_xoW zQu)2f+wXhI{uY=1%qvPYsO5+tWFuG_|JH-@-Isdswr^oiNb9S#3B4eccxa>L+8Q~u z>qqy7`DFK5H>OTRsuQ;MSk?R*FI<>FH18UEq4naFy8tC3AcR3ND{D5~I4u~HXEO8^ zz(=3$hJWhZ>6*g34%;S_OIPC}mwWaKQO(utyM*@h#p(f6+FdV z5gt|PT>06ltMSYcdsPXGAEi2&JH|?ryQ`?H-(BsE462tn^WZGsvCHaeQKuAKr{r{4 z9pKpdU^^5i8vamdqyPQwRSjD~kl|CmRqnWWWP0 z6Z4`2+U4`6pz1`7u29TKVj?~sz<@%Qo))sIJR9Cw!`&ga;==J$_sQ9e>5m>WeXNyvE{+!KPiV2 zFi$oZZeTI})|-RqSe_1+bj3vrJ_b*!5JtCPZ%w?<_4b`Y5|)0YKg-OF$L0euPfTP# zE|+M%f4UD1WE17?3Z+* zh(&LGE%Kq{rK!`RgQp?s2xJ(u>@)U%g3Aw(@%g!T{%e8&eNxh{>MZ5hJQ!;4Ve(X2 zYQM2&T+{hA%bRTV{>;nIcRMs*<`LL=M&vdTv8XHgN`>F7FAT2;SVk+C5q`0 zW#v6sa}rD`edyF!>}K^#v{tPRiu)xBSayWG6jD5|RfD2oKT%yg6NjF%Yjwu0!w*)J z=2lm~2YST+b65CmX^;N@eiYUPbJkz0)z#LyjLsQS5=EVMh($jasH__hBpIqIYzeBY z@W8b?ai!^VNqGYUOV4B+aJYUMVrosfUNIczJ7MbHa>~vpAhc*6(7itV#4Nt}&Golt z6j)mkMe%1jmY15Cn3zbw7dO!V@Yw*E{;X}=0{)nafCt;&2tvh;TSfZk}Mc`tjQKlotj%f_c<=*ikpqU9Io!YgkUCbWf zf)%AmxD3BZ?vmXc6zjz;4_o}EKABRzPANkUL~wq$E?}AAW(Hvvzc=f%Swp8b4JEzq zgTKf{VBBQEub*(a6&&Z)o>@9k-0RH1?)5t=v$?Rs@dvQWMnzps!TItydvYLSiE(`+ z~fBbT%tg9;4{^*a-ZUpGytG=C!2@sRx;F$Nj%zlz#!0lUeaysJB1Zx5ZE|^-x zmyUgSd3lAUL2|jf)EuI^{k>n}eP(pNwK(kDLo6G;4U_cx@$8!acB+O!rzO}Zr-d_mV{0An!d z;ODlsegRG)aP0^B4mdFpc`Vzk{7%&lJhv z(()%JFidAkDbDU%?3S7`r6HdY8}t>yKD)kzfq1Z;(8{?ie$Wz6qxArkCL6Z;xX$ld zZta#^YGF5j6#Hz`Xu<|JWj0a;FP+F^t*9~Mxk>Ghj=+j79xxM4?R&b#W~@&KdLn>l zN!}w_y)crSda!94ohk}-eyG({UB8_C)3EcyT?^DPBhxu27AHT0BK2l}thZ1*__G0v zV|wkdGVE6^bg%$&9$Q~{s>(>nlZ-^vf&1<&r$p|AWb=|i`d%aOhH^a@dM<3fq5}_C ztmm?SwEF>PrRk0$(3hTnMaP#mhXHM zUwS2>fkeSG;k9yb`AJzBT$jAb7Y2rT;CUMTW#T^JeBC!_Ep_Shs;)|xH+Zg^EVQ;x?EhU6xgUcwyp74 zVL6p{x3cpK3;66-pG2ZB!PZ-_l}cY{4Q%WBfUaeWC;8$uuJxrMSw(HFlJyu&Mz6nL zkulj#KiVp-ZeYzxUfQq<2rhs~0XRXyUdhr7cpiXZ+Fh@VHK7pBfmJ}JeVe0i`S7H_ zTj`o0_yW>Mm|6M*diTjSh=ZWE1Wi?*!QWya5N**|9AE|q+b%J)(CYgl1w>*@Saai? z8ukAkEWiUsi5Xkm$Xy+jf%>-S%IzJrwRwu;Dm`3wXW|$Duz(cz0ki728#U1r4w#S3 zfdfgi$8mmRUQg2m5gbW+J`@6>qZ`5ps}!ZizDw9EC={!!wVgETDP}M-@p*7gPBnZr zV*YPIxAQdHUzMx*SXdep>7=2>G5)+=9NdIPx^(391;|MN&H)9N|QjbgCDoeUCh zf&n;$Dm&A1>~8$7#_-IV_xSR(*&RYLt&WZ01t>uebm^cER4 zMV{U60I;;3bu`_pzC}KPiLh5k)#VEe8`8S&(Uh4EZ_1uMB|O8o8cdTn6r2QLY41*YF9(@50Bh;zQ6#Dw}Co_UFiB6yyEj(PUV zbewMuT^tL8rLbUgvC+cSk>B3|OLmTWVC0hIzVE@{f&RqCF{!xAaIs0rv`vnGuU1`< zY<;X0Emaqws_<#j^ zKn^#lp9&=dGW2JrYJ5DVCOkNYMjpuL`$(VQ={3r8+OlH})aQms+i4*2Tk(BKL)(WS zvw6_o38MMHtWdI&2HS&RLeazfST6qD3$(bSzXI#ehxYpS*?%1d;Am@r4=fj0gUOm$ zKH|4Ag?WcUiXuX6Qt6{jkuxXt6!x)nr6IMgwFD|jj=ylAMr-_0W^r8T){YjG^@lTf z;)~wM@+C89$GLlpj+b#F=Moq8hTU(nS(BlqUUQKBgxSK_O`FOC%V}h(OMq;x1{83? zA86FMk2rbblQA%i0`z8bdAYM7i_!dV|JqWM9ElxK@jv&w_{cEnP|N6*&1dIZy7c|fj#L4Rk zU|@|&71)#k`t+eWh0p82jCO{5!rxn#d9f7gBUc0)3QpSEW3(8eApR^p>xSe)^001sb|&^nQB@J2$5^5l zDUC|txMS46dh+Cz))YB*cI3JwpFTr4pvL@)AWoNxDB@yl$0Pd}qFJ+%yK0K`qWGwD zQJw=HlwCndn^rEl%w&4MR!u|01rVy+0-8Wm3yvSfwnDu0#x|x5xVmo|1{_J>o6~z* zPKvW4Li9bA+6sUim|^T&=t~XVtmn0eM$De|O36b#rP?*)D4B^RGnK|0l4iH7l%ZN> z*753ShB;agVsH41SQOBYnE{2qOCl_y3+>uL<=hP)(BS2eLrva=Rwx5KQ9 zxT8?I#>K?ghsT}DLJ^7;F4^A`zv*GFO@4TNvDQZln_84_5Af#!4!eu*S@kOc=~q`* zj9iQlClHl2%kXB#V_NN#UDCt8{o`|6CHGH5x5R^z1=X8|2~`Y!Uwr^nhTu zxB7R5&gZ>!oOXEbmzTroPn?Pc8~>G5ihdJ6DosF`xPK~Rec}?0D}{!Q2|gj4{wv?I zH6(;n#-gzJQ1oh`pwhvV?^>`SHOQH(rtiwc))WaRx4>!N+purPJ=^+iT|Kb z_L_Gw>wu*QqsHZXHRJc! zlW$IdZ+aUxmNeN{{~Z=}f`rjQMb>Dh^M#}V|`s8v}aL#Vy=dt#Ka-c_07 zT9u63FKR;96lqb(Bpk?G6X)a(xtwUFUysd9`NDr)4rA#)$QpAdDrKXapmtvoEly5q zQZ(K8O|SpgQLt#SI}1t8&xYvRhew<^hn{8Oz^JRi2}a3+H)YzA^fJW)^ulJz^$MC!C~iCIQN-haT|uN5sQ{ z|A>+GEdePGcAC+i1hfK8BX}CN%Kf2b@$m8nGBcx-!&x#4{(<6nXk3Ia5w}a4Wr%h>}O#T*NXms#soZsSlHrm9o4}Qdg*%`UseIosI=1YUWFGsN*(2*1 z$0o@rS;@{yk%W%D*GX2kgk)uvJ-?Dsl9ioGL=;l_-S4kYAAb~|*LmLOxu5I4?)$#3 z6OW}y-g`#_hxV#%4x}m1Vx_*d1hg#u3GjX5|I3B(ZJ$)2(be8@xxm$vri1leW9HAt zV@BImU#?aBqAYUC-6!YIKUzJ|lW|ne$4yRZb*nxelYKO7B!k;{bP#rp6>o4l z-y|jeKhZxss}g3GM9zcBNpp!|AY|?4<>f`d^z5m!N6*l}T0$RO*g0&mX;EBjZN(xddVl>POl zh?ctRj7qcQq;`;!Y{f9|ZUxhxOWQF%$s zkPuNCUXMigil!NyOFr3EwU%eDnKNFoKoO@5CXjEpQ{P^^Et%XVV#)BO<;Q!!p>uoe z$_xJLVF8QxTH5Y%aVAH%Olw}uC4}qhtgKafc>Vj;>D!vu^7Fmjs+EfO$CqbfXwRje z8}E{OeOuO8fd|8GGqgu3lOjFAan{D?Do+5Fj(J(P!_EznG&zpb9v&XgeHPlXxj)oi zQwMU5o}-ClvvVfVnT6%Y0%h)p4$&uav%W*3dA(EwN+xz3$qAoEc>j2h*8bfkcWd&G zarO!{1LJ4+CXWB}*^zBq+B>pMWi!F5MC6FG!mWB{(A1JwOpF>(LEO;=NM<&tYvHw} zFN|&e412Jn=)_ZZD4k05$c|Bu@N9&^reBJNg#y))WniA9dkQppz-YPe4^NYA5)7ql zS4}PLq&Xih(k-hp@u~>s2;!ddU3a%lP5U90e7y(tNg}i$h;f6hi2hVkyvD(s{L}&u zVngy}KLx&}gXR{uC_TlX>gi4M@4ij}!?%5v@`Z(kyFjUoaqsZn@h?Xpm-UT}vySIa z+1EC6j*8JR?V2@z(6v(5f1@KYwP8afVqbgvoblU=vPyTd2gKlDtqc9%)d4+V$6;n> zMnt&&{Exb)L&FSTkuaZyeqn@e6{+TvE*XrqAW9x9B>VAvoFN-#B+9d2;9i{_O#!(g z?fXW{(7In@-$dsUs;j*c&nigxF#QIgKP(>*OQY~7^7@QNo-ql-p8kJgWs*GYYUWe6 zAvaQ0C?noI)!;EZM?;o7N-F)xNYQTv^$&a``u>=eOvD0B67J0YZSg+QS%nie+k7sM zBvy|kTAm@_YnW)Vk?5Y2MtRW+Ca=;xn}Ubf!3Q&5x|h}|tADQ;-kJB=|9)Q$5xmSE z#&U3#Fm(HEo>vW0>M&)s(Tu(SN+wjzXg(Uy51H(61<84b}zj* z6W%}HldnK=m1kR(m6du# zvXvL*Ig+4ld=PG(T~LD+4lA5+>tkXPTG{w}>{ne(aBeR0A2B2`2pcHfjb880HjR@jeplI{F!JaKaeqP7m5GDYhR=48NgR2ZKxE!onFltrx(=U=og3VAmN%z6(V2U&7qGqcG`@hb}1~Uk_Z^#~W zhbJnQn)1a3kdEzvPDuYfI(5#6ee$`dAA>G*%jx>k1@BVHX@mG;PNGB#rpuL9nkIbO zja*DMxCv(U%Y1c9!!OL3Zw+ni-4i%BEYkP`dML(L-!#1f^}osf-GgnNkdTn`0ST*$xg+bg3D3Kjy_}Uyn;6}hUMwI1Ms5~F|)>ztfDaZ3!H;@r98MjKdo}pjd zw4_Me?LZHs#66%=%NDRWJ8KKWmjP+Ce538*V6Jj-MdC8$8%7&1I>YHQ#xpWwEE5*H zf-fuIWzbi}Yjabel7EMGuuSfR^OUKBJ`g8t@lWI%pFSZX>V_>9fx^rIi|BMWaj0yQ z(XfX@<{`h`0S;AI9i6Cj2c`8urDn!1Y$4_wbaDc`(TEO z=mopUj@qFrr#uw%-vompnH7IK*mbU(W-D};=R5HH!TUh7)x+{9! zuU{L17_LPfx$nLUjuBC?f~ZFJJ(#OAr?2dE!3GSMgzIqyqZAfH1Lps3j6Igj?PuAw zi5BSZiPq^BJdw%>G=E0jy-9>b<(=bqNuKJmp{H(lsMb( z{l%KKH4DD;F7H_;Cc~@q3{K;3QoQ^u*Qzt>mq#5w;v%y!yce2rFuwT{Ss@u2nbgOR zx%bdMEz4w_>S3I4eG!b!U=L$8=~2*2WF*K0x*EML87${$$zhHp5^7YgqhI)yrc^j- z2RAtfDgQpTk-b#2URuBN;cMRF`vLz_?sCgI-dEJ_XV0Eh7?=IqWGTRa-UA~^U*G~; zgmyq5z655U!2R~ze^#G@xr)pvn00vBX`=P2umjHpCw3uBut#@;y+;ZNDoStv1IMAk zH~A`Qk7fd^&Cz)rfDA(wn5oPabJv9hpUT?P3CKz;bFC-_A5P!T&tDM&k}<9)I#>d4a$082BT=g%_+Ir>n26g&|nI8 zN^vnC00P?Pk0JjzR7XV3b-*#e_tWb$kU(oyyloO5%`A66{2S)WDYPlT;=>1v%SbK1Tf9M^%h**u5|`OPJ>GBYp1QH6<&sBQ|X$g*8FdB@+P37C$iO@^~ zYs3!q!YPl}IdasZSyb?hD4;P0SBVGx%!}(W)Cv8Opr*0{PH!!cyGcU<@7rQ0H)cfC zz!e^M?HV222f|+f+$?^N>2~OXrqvZH8lr4DPgY3X1n#Qoa$acwVeroGnJ)~JsTr32 z$vU4|OXNy8`$UOS8j>a4hqJO@u26}vh6}ROyaxw|W;lS6D4{jAem(S!pmmgl~?D^ zS|uxDE%w4^As*^1Jx+Cb2cj~OJm5zJs*1>Lnyq2!cT}w5vAlgsRzN19fpK=tzg3=tCb~?wWS3!A zJ#$qt@asEDkUZ}LQD#X9vvQw?U0hrow&z>3r5s62@|DXYO+nFt}49)Vl4ETF;B zd(l)a3YLBeM9MXcjZe#RoQ|gBPOiLIQCwPzf;WIzN|{+%MMDBQ@@p$dIll$$qW-_= z*RMNHJ-uWNGV35&ja=lbpxv))Zq5K?AlD;&VQ=Tj-<#GLf*?oS;&(k06I$dG!~9y$ z#-3)4)hbl1wc(ptG1lSG;qVfGlr`85ZFd~|ynFYqu&#~)x^6*lDWqh+$rB_|j@AWp zP-A=JZn7ZD4nl22g-;lERY7Ph7WBLk+Y9j56M7B-_zB%|=-*DjR4}y(k)5#tZ`B2x zYv;#^WbgL_g^Qj1;zeIU+ux{Q<1B;3#nOp+2|~s|O_0}ck$AKir9?p4r&B!-87MHR zkJf^@g4*wC+S`BRNk`wsiRoEbSV)1=+!YuF@)KIT3Z_)Z2I9K6Zw{@Jd~$M43#+do z>w6XQv*+sV1*C|97!+y(Uk(g79pQS>lt*_x22?O3x$pmBFeG5QVUQZI+8I^wUA^=B zONC>TZSIvn5ZVL;NWnx)9xjYjUTxps`|c`5Ytw9(I6#Ds<-nSPx%K)&I&OdlljX1N7JEfQ>f@i!`r5X9Oa6JkfmfTIlgs zGh!LpcKds>2G97Knhhap#%lo4^M|Bl3A9bf2K|OcM*(CifBpIu_Bm@-2TD_;b{dJy zEi3V2IhaR}9(|s!eVp1w$MfyMb8F0#s;Y#ra{BGJ9!;QTgBe)?AH!ZG!b@CjD}3>S z6-WsFDtZ}Nb{a~YC8YJ>Vb?<~>9GD^RyH`zfP2l^pCQdcfP7%UhKibc7aY(90)ci9 zca-X2N!i zBp6}T61>;DT^o266xblbk>k=qe@+SPUDDFiNgj?w0rp;bb?~tl3cH9)6i3J_E;No0 zz8UOm;@X~0d6?VTCBXVKn_f6V2W`*CAzKZ&BB@74!Wc|ni{C1oM0>C}{`2*6XAc09 z;>l|?Ipt~j`KO8QfHxh21Cd~h>?|Yz!B%GlIe|MrhJ}dny<(Bk&%I`35U)u5sB6Zh z6H?Q|o+xVg=_F{$72MB#WF!c(%c`I}4pOiGcjUNs@_QOEa*^+4&q9kz_^^JfNeWK? z{v1&z@y{`vI*3xPwwaQP(VHW42ZNm zJeR^3qrpRzQ!ahu4JUjT)Sb?Sb#`9eBLY{v-@mpJ;D!Xe*1vGF)cqh^-rIKnMC_m) zKwl?()Ded5coBUkr7T+m7r!5w>>FtBS#3VUOJtSPwjN@q!XvKRm}+bHj^r!fvNfW| zK9faf<>bVJ*E}8MCtg~N0!WSpp#@HYiKX#P&*5sTDuA!%W@h0?EP{_eH8u7BxP!=; z07b=qAyg5$pF{utoIdR3{zp`>0R_0i=}qv|$_c&`Wo7|$`K*%miC|UcIQ{G@oXESs zzG-@Rh=Nok?Kx#s)l@u?uZ{p2U}Iu8-sD3F9y3{uO&lw7=YU9xs8}>Exj^6o-5DZl zLjQ1vkl)%61Eh|yS=^dt-PjE&Sk5Hrg6k8%t015?uowaS7z3VRNXu}_@m){= zxK*$KC9peSBDeeZV3A))sN!l*Gy^x%g8l$8W8!6;+X_M!06Z17baizbJOvpA?x;^n zb%i%Hp)4BAle-LF_{I1JiA0t3)h2W%D!#!~#}H+|vj46L(ZDq%G*QSCR}Qi zr{$!8_@KcP{_>?NFjkIm#E`7Q*x2}80TZVW=#8*|xPlbC?H$z=u&+_w?PEgJD8U^| zofj&2y%r>3Mf<#WxeK`<0ft6ix4EOr6?(M(aN=|1j2EavNc{+_effh5Vk2TF16dj! zJi%R|_7()pkb~_cFn#VDEh6iA^Sl$pq&|R+Ex^m1S6p%3H*0EZA15@ZebtK1SFd4~ z^tl*w`7XP_q~-Z#lYYGmDcTn=omKQy*n||%w#jyZUqImc(+{6k6=`)#7$AQ@T;CvK zPSjrOY!TW6-!ILQ3B=KnJX~I&ValT)$Pj3`hya5)RxniT0_9E=kE$}3{aYABQ%5jG z{5;=!9@=QaLF1cB61-MrtuV<&8R$6RD7)NbbHwvp8aclr(h5! zt%~h^YOE5t!w!j|n<}o{KU#}7@XMsY(|GFdXQ)w{;pOfxA$@`aWbA|Sri|nPE*waQ z6zFiEfbK}s&n@7gv;xYB8VG~cuJ~htB&hu_935W@M@hM;@)vdUBz-0$UJcxZYF=yB zn-+YA->p$ZYGZpo?F;`N&d<+ZNk<}<(}1D za46>L0$0B%InVbFKwv8dePf5)$+GDlGUVeKQ0!AjH#%lMKRc%N*I2;QPsTC zsP3x1Sj;bdBf>~0;a4v!YnBVcL4S}PhOimn?|*@4T<7bsD?4KTeK=Jc76sk{a$;f^ zdw}N!up4Enk%=@|b++f21c*kUtV{*1B=l`qEHxvn9~>kkX$Gng%-h&$dXX>( z6cRg>tQC_JW?wMth_GTP==DVvcl`qb9OZL!@pGsf59hX`dzZuEt8EQguM}M4dT`-D zZcwblymCJXOMp$1c=1+Z^L_`jRnF?+-!*VvX`TcyyzEl;2$*~kRd4r=U~y( zr&JKU!gWi!p}A&x@5s#35)bQER9s9#r?zkA;&6A9(Hh^AWGy!as82axBBU2`-9ljl zzx&H%rKqB9+mZ<$W-1;2QyXW~S`FZhL-yE*m}c$-S6kPS+=tQ(&_pf)`%@lrP`UuY z$s9KJXiDBI(PF8W%_^e?v9TE47@_*Zd;Q-fQ!g92vE&%ukWQN-dimwcmsJSmA1}3; z<(mkBm9Q1Y`Z>?`J1XKBI_?34IQ!mlObaXNE&nQVRS^{7$M8xr zUdTO@q0?>^7=>=|i-)QpX>COZJ5;X$PQe?8MDjXPw_bJz>v8bL5CY|#Vb+^~m857c zT3x;R_ZUWVD7x?sqD|RD2G`@AR9df=NsqV53}AU)X$mh$l}_6EsNdqD7Z$+DxXE(d zBxK~l(*bmJgE0%Vmc-)InPkqN_XB-tK6(lVz$E5&KdxxfV>4S|J>joy4J#U_RXYvJ z7t6=rI|q^66x^$^bFa}8GQOP9oE8BDg)>Mcw*YQuybuHzi#elRjnxbuGDtdLjZCSc zw3>)4#v9qSD!onl{8oeNvgQ(oG(u%Yf?L-=YM&0@KmKb6%kM759&K=&QNRA?;sxYt z2gx#=@M+VEw@4%H(CgQI0O9e`(b1njr~HZ>cF_VZ7SuQkr#vL}MHc&Mx+Uny9mv5un|~gUx*jv>nCmh8GBdb2|ne}{wWD_hNrCLe|=iN3$wqXlz% z;Kp2T7N$Mvj%#ac8xHF{Iq`k3EpAm(W=z6Zomzr?&B~Tf9cbyj6Znc2j{Hn=mdIu?X zDX205R3nEe6mTO5pKyCAocrHZ(bzs;&9}0^I83GLq0Qzj@TETHVik~RAf7je zz^#;|QIZb6=gl4cl{vP-q(EU-AGOM09lytyHO7_}(Wm;(|9E7pf|RIp@nli|Wxx~8 zN2ke70pkD{7Mx7j28^_OrKP0~urm>c3EViMK${=7~6SZ$-bki-}KJpOykKNx|lfjNq0Ht(wTzC`E1vjVSf3 zB~K8U9fx*sQ%3GQGAie#Fx(VWq1O4+9<+rZqw(gOi>yleA^V>r;2CG(r~(>>?crj1 z&$M`pN3j7Wrn>i35%30}cxgF?+s99N3u(q-W??CU?e7d@~=EWES zXM}T8quTd1meo+kGpU#BvQ%db)MF2C$r0r*em_ZDZCPcIQ8=!xvJ{1+gY!ZtJJg}| ze0(H;-^tp+Z3ZgSoKt3Qp7*B)G6)Qr5Q6qW_xQ7-r`M=ZDlJ7t#1F_$_cXe{-GS>= zt%x&38fpU4U>pm!^K_zF27XQza82o$Z+d!qo?y-2xyyRf(o6QCWQBG}>k|4~%q|z@ z?HTek?31UaKYkc&%mk8~FkK-lJb;lX&$Zzw z=k@E?HXzR!d&S^}OCvd?Vo=tLhMN zOUJ^g-fds}OA861cO8nXhg7iP#@GND2!gRJ%V_yf65&V4tD7@hzwQTcLK(rxezwDE zxLd&Z@H2h7byw6oY9`!jB8w*>66H|n-X;NIWXespGUU}iTahCC1tY+<05lN<21P%} zr01O46(l9;pce$Oo(Iwwm{-_8kVZoen&Humf|NtzAvN3{2ww<+L=RXXCVt(-SQT?D zEix1hO5Jrpguvz0UniNCKF$GYU}W#|Vd6%xcn|GG-rKekHEEMO#Rutl8nOp4dcv-HM+)kMSyq*|Nd6lc zLHw8?#aM!b-@yji!dsJ)-<-miy8PQ0K;dd=WJEhG>;f=X33sIpJN-(%0$|gN{WuCeW_S@3amXuJCM{`jYk+N^JG3Z{M%d8Cy(#m`nNsUl z1je&Os?aCUTv}0al8+u1%Y0gax{&~!2>^SrR4BzKOs<;&jRD5tQ~p_y4h#%Dd2t>hBr_{(@$=_9c^~frmwgA=zFlx<;DtTq8uZY%2Ix#{*M^yo zrS5GE;S4{1Jx{+%ljj}AAeQnwaB#n3-pN92vtt(|^vU#vWHxI-@?VJDp%PF7U z{Jx@S^6QN_a|N=OqtE(uf%VZ2xX2W|eYm1Xi)=GUSf2Z>>Vo?r%yharlHt-HVvTIw zDo6Y{tqDm%+(_diSRcfJdog<6UyqWUj;jyh2_eno9j@tA^E1qBcd z_fKAZM={rHfd0gAci$b8Ywh#*Wl0JBnOIZT-GE947SK%d>={82)98gbQ5U@D8VdMdG2oL?V0QL+q?M10haS|7fI5{m z)}yupG=xwS2rZ1zr@(S6u{}m0IzW#@Fm8rim$+(*!`mAjHJ%5xwtLsET~kMBT`lXZ z_l2!$7zGjYMfU(hx+T((835>i>KQcl7IgWAzGGihf`r&^P-pD zF11mMvIv@XfOmm>)^}8H8c8A8VZNZT`By72%}Abu$m!7nfCl37-ccybfZqX6-QBKJbd68`$uR&!=K%E4htB)zFplf{^_@tbYA~aGuDI=l0R3^O zzPIKql|lnt-1!spHFgR}CJvkz7VrXMWGwIQBHZ=;U=Jb z&%bJFTN7l7k)eK*3q?Q3Oi7`R)O#~*@9f&fM)N{53j*m`SXdBr1J!NcmA<&oU4gly ztlp}%7L_?4W_$R2?uuW0`10{-Xeac zGx~|I4H$tc+zsG0TDPp45&`1=0N(#FN;8mEB5)=nPPR2bIsfy=S1LXoN3N>-k@;*~X!m%5qNpQd5X%q}B0oAhY605Q53E7a^I4@eT~bD}7Y*3sL_hrN zxxEy8L9~@JGFCok+D&$1Jv3xYB)$g-2V_{yYqpV6$g}_trPnDBZ<%%js^vfKITFxk z@g1UsH|L-n-?#CVqIr7LH)&-qbf?(P#6={Vy6|)`(Zt?VNEpVvcpRnELZJ@;eGv)* zvK&bzO3D1ra&c@NuNpAaSq4$avM6*Oo%ZSc8w3EeVxe5azFP6tS7tbab*`fv(95f) zJY}w0r$yT{8snJl@p$Y22c&MjneducDJgT#-Qx9hbI2Ro%+dEjhzF0u$e6ebV682U)2v zn4TdlGax1{M@Qag9lyW6zki&70yYS_XyDF9>iK~AyVw1B`T6;mFSs$Nd{_-?XM^6h zDd?5q?m@{fRiDF{teK^E)LbfCf3Jd(kmoxkPHj#+T2`NTPFz4f&XN%k0EumN+z&B_hL zr~1-(k+$N!-?Apa(r>YIjQnEZ`S68vaOPA**L{c?55dlpdu)%h=bU)Nhm3QXv0}yz znb8FL)gzsVgr8LLdai!tCawD>0u|YLzm566(XZ;K8#UP0C_q^@rqOmwBOP61fD^Ew zXeb2s0oV|DIgo)P zJs0Zq#j_?+*kwxCuVZeqA3bF`VxCNW-H!V(L4t3o`B3%Rj}w>|KcN5rUucJ_e(J-A zF;L6qRZ(fzG2WP^>M48)&0BD+p-*H57;Pj%1E|q_8)ykWw<1{vSvb+)Kc zB%82mY_i5G^zWllOnPs&vkdH{BO(qx_H}9v4E>~;Y{KVnr_R3VveBZNE1kMj$7onu za8uLZE^H||Kzi~C{r(wNRp%to){SIZ-yRkVLnLaLNrX^Y0>vzZ3WpjZgcJxjao@gq zK}LgJ?Pg6V(3{dKZKvpureidI# zT4QzAdqFIjE=G&@Ip*v+88!+O0Ahft3^Zi$bvdYg84eE(8FcIbHBb_Vt{FWhaIQMC zyCw{-9$k}S$0P+lTchV1Db@;gKbtTV_he#4Pq_M8W{YJkhKH-DpPI+iRY}Fx!^z%Tpu)P?!uDmY!4HlY-!c|cdVDe(XXxSa^_FeTFV-a8^BN@+ffkjP zkBCyAlvI~!x8Sf}!@+YY59+W|BlUAofH4JPL3V5}41b?Z?#=u7kx_FCzGvzCSq2V6 z)rOBpYOcL&VUD9gmwOnNHGE(Y6sVtXyVIWe+9GX$grd??v}VR@yJW(R47PTMZb@Cc zL0MZQ8kb<56BHO5M@_^zc*&gk62vD_#pF3y{va}vh_|u(TzYR8)mfF+Wop-c5$9ys z;G#N8DKSeH0`=^5>H2-OhTd*Ul;R8JSg%Sn+ag++$eu`w9b7m)Zka~%v_T7@81!vP zLgzv%`jOD3BuP|v|F0Si`+|)H&cSmx*gs`YZ>n)oMI{Gt-cBrj!cWuN!r)Wk+%xkI zCoR&Sr5mSMor!+V7!i!WziB8~ohckfi6zTan_JPdaBa6ZGH0n#s$+Y! z1sk5h1?s)^-$ZiC#qM2LbSGTjR7?)=<-Bo&eSqP}gbXj1f`9q*&ZHcJ-Q~8^#d=>} zTuY>?!C#|FBSo*!WL!wOp?7Mu%wH8J(fo!tuL=EnRREVR%ZPHsW}|J>(Mh@`(%Kbo zujH7%EXY>%s8B`iCB>qf8-z2?!6W`n^qbk%9^*0ryd_`#EH zYIY!jztK{Mz%Ni}Qk)?)dy()}4NBsiJH7Hv#K4G&lvSb55$b2!(VA#f$GUQ)+VeYL(+8xV)=%Qlsve# z0PSM5L1uQ%u72}?^J!s~wzc<60>Ll64K{aQ2r-buvraQMnU`(u##WX7x91jyk+ex6 z-@Qw*=|8uk#>QQ>-!}QedM?9_I34T5-B(}Mk2l1&{g)=6HfD&53#l(l7H)O!cS+t5 zF->nyN<;rR(&p>D3tCq4q3bF)KS%0*G zh(BZ(QB(v)C25JZT_q?6KUYNESyKE+)8##QWyW=!GskIW5+Aq>_ug~PJWgR(7%54TssKDN0});L6~Ol@m1;wzvb7{h z$pC&bNmu#dMI)zHtNTPMTS=1iI{<&Wv9Ym1dU`r8Uc3k^D=YoAjfnB_aa31Ve+p$q76xiI{ zWH+<3v+S}2SX*1;%NH^GtB?s<8bk>}Q~3yifq~3MnF|vW6X@ybIq=uDNJT_M;Le>p zW+T=>cBpis;yLa!<+S-aYZ{9$q zQeky<6~~SpgPWTh0s;aM9UYC(&`?u{G2aQ1A_65PB^VqW{NKCv^>uvw_>o;rO-;CT z=@JVk{QUe3{*ITI7fzfwp|{-J+#IH-r+4lRCe_~Fj+~qvtgNhnT&!!?uHov{t8jOB zhf=9zLEhNd82bDBncW!~89_oq0tyNWaQpUcgT9rQmj_QzPrc=uo10NpRV7BMv$GQq zA3kKhqK}Uca&vQW;lc&2GN(?RVsTkmSQzf!y^Ckho}st57v<&U*xK4M$heb-!Gnc` z1+7xtq{w^D&dz3pu3x{-{&@=j_rtk!=TKHwhT7U%G&VM(qM`zqFJI=KiZsP}KoPSh zxb4)VM~|?)yv(LUety1QLNZ7sQd3je$k88CTwKgX>}!InXOokYY<&tu< zlP6EY-`}4RqiH)dG=$O7QM`Wr8X+MedfSMNjpd5(-oJmZC0bmhXe|*uJUrN1(g*qj z9zTA}gyi}2=S%@9|3LEI*Vl)Rjt(wTF)=aRLZL~DYx)fj53}E(pdhX1B<(FNEn3go z+S(W)nrfts-rn9j@8tSq-@YceMrwY3p8aZOdniJ_fB!y~mX@%#wua>7WM+t;K7GpG zQy4>HLZc-^u1|Kw?4BEm(=*VmV=6;dxE zq6spl$B!RJU0ofLl9F)m-aVb|P<;ZA*z5%ojTbLo=q<-Ziq;1iPV(ny3heGwVqzk@ z_5+QQtWc4Wkz6F|>+5m)^l6>%!^6XI<;oQ?Qm(G9xN+kKlWKB%YHDh@Y?TZ$w&a^_ zY;3T^PH=EASG|FOfqmbT@CcJ46crV*k9_#>0hN`NTy7G!36Yybbx8@yZQ>OW+65s; zSr>M@M>4qGr1R&`JAbl zzJ2@F;5raBzLF&2)vH&Q8qWWHpd1BByQt0K#BTupF`)b!?e1H8HmO)-E9WRf`>jB0 z`cXJRk*T>r5w{+9H`N&RvD>$^Ic1}O;j!R69-PtMt|B7^hgko4e#7N-;MU>_|#Hazv zcnY}~R@=u-e=%|&jREq|%SGC;R;$&2DwRso(jboVrUD%dexO#Xg**f1i>TG=cBN8D uo-7^BbdsN&7__!&=io;GKL{V;2Jj#1VmJGKN#`;E0000X1^@s6D=Y3@0008sNkl~47j*(TXca7#ZJ*jc{!zM1#lycwIKC^i5N0CoWMZ3Vvo zWEo?+$fgNE5& za&i(rpHD>pT<@o%C{kU4_4ReWeRAscdU1b$kGZ)yOifK86bhO6kw^r+y}ic#{QMk= zM1nqTCV|t_Q|#{UVq;?i-Q9o7duC<^OG`@_7#P6p>}-`yI2?u~Nyfa=&Lpt5w#E}) zNjf+#@N^x&d$zod3i~3#NOT>;_*1o z#naOhip3(@+S&}8(a}-#_xI!W_7*KIE&N-!gN}|4JU>6f@Au>A=!mbT?EK~B1$1tj zo11IRjPMe#QrsjE2n4XdzmH%rh-frg<&dgse0<#0RwxH$&d|^hA3}k}#YLV_+R60v zG&j^V4adjF*xK6S1yBphfz#=%+KEtrh!peH)m3b7Z}a)X!vl}=&dv@z9*;?YN?3%t z=YV<>ods%U*=&|qNLN>v&M*OX8Si&dzqicBWc*ov;aSS)7gx-27^OqQ=qx5z(lAXJ9`0$n#A6XI8e zEX$e0!$YSeNmidMI5|1dB}po3n)Y49p?A@HS(X#3s#;EhEX!F{RX;MuzSJcE_yc7r Vcz2$<;D7)C002ovPDHLkV1faXbu$0} literal 0 HcmV?d00001 diff --git a/src/main/webapp/publish/index_2023.html b/src/main/webapp/publish/index_2023.html index 0075cb1e..93c8db7d 100644 --- a/src/main/webapp/publish/index_2023.html +++ b/src/main/webapp/publish/index_2023.html @@ -70,7 +70,16 @@ -

    + + 최저 8.1원 요금안내 + + + + + + + + --> + +
    +
    +

    QUICK
    MENU

    +

    QUICK

    + + +
    + +
    + +
-
- - - - -
- -
-
-
- 보유한 전용 계좌가 없습니다. -
-
+
+ 보유한 전용 계좌가 없습니다. +
+
-

- 전용계좌는 개설일로부터 3개월 미사용 시 자동 - 해지됩니다.

-

- 전용계좌에 5,000원 이상 입금 시, 연중무휴 - 실시간 자동 충전이 가능합니다.

+

- 전용계좌는 개설일로부터 3개월 미사용 시 자동 해지됩니다.

+

- 전용계좌에 5,000원 이상 입금 시, 연중무휴 실시간 자동 충전이 + 가능합니다.

- 계좌번호 문자로 받기(일/3회까지) - + onclick="fnSmsSend(); return false;">문자받기

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
구분결제일시결제금액누적금액등급
12023-06-15 10:001,500,0002,100,000오렌지
22023-05-16 10:00500,000600,000옐로우
32023-04-15 10:00100,000100,000화이트
+
+
+
    +
  • +
  • +
  • +
  • +
  • +
  • +
  • +
  • +
  • +
  • +
  • +
  • +
  • +
  • +
+ + + + + +
@@ -149,28 +228,65 @@

마이페이지

-
+
+
-

홍길동회원님 반갑습니다

+

+ 홍길동회원님 반갑습니다 +

+
-
나의
단가
+
나의
단가
-
    -
  • 문자
  • -
  • 단문18
  • -
  • 장문50
  • -
  • 그림90 원 (2장 : 110원 / 3장 : 130원)
  • -
-
    -
  • 카톡
  • -
  • 알림톡6.9
  • -
  • 팩스
  • -
  • 팩스58
  • -
  • -

    ※ 이벤트 단가 적용기간 : 2022-05-13 ~ 2022-07-12(29일 남음)

    -
  • -
+
    +
  • + 문자 +
  • +
  • + 단문 + + 18 + 원 +
  • +
  • + 장문 + + 50 + 원 +
  • +
  • + 그림 + + 90 + 원 + (2장 : 110원 / 3장 : 130원) +
  • +
+
    +
  • + 카톡 +
  • +
  • + 알림톡 + + 6.9 + 원 +
  • +
  • + 팩스 +
  • +
  • + 팩스 + + 58 + 원 +
  • +
diff --git a/src/main/webapp/publish/payment1.html b/src/main/webapp/publish/payment1.html index c3eef265..a60a039a 100644 --- a/src/main/webapp/publish/payment1.html +++ b/src/main/webapp/publish/payment1.html @@ -247,7 +247,7 @@
-

문자이미지 문자

+

문자이미지 문자(등급 : 화이트)

@@ -259,28 +259,173 @@ - + - + - + - +
구분 특징가격단가
단문(SMS) 90Byte 이하 단문 메시지(이미지 첨부 불가)2518.0
장문(LMS) 91~2,000Byte 이하 장문메시지(이미지 첨부 불가)5050.0
그림문자(MMS) 2,000Byte 이하 문자 및 이미지를 포함하는그림메시지(이미지 최대 3장 첨부 가능) 1장 : 90원 / 2장 : 120원/ 3장 : 1501장 : 90.0원 / 2장 : 110.0원/ 3장 : 130.0
- * 텍스트 용량(Byte)에 대한 안내 : 한글2Byte, 영문·숫자 1Byte를 차지. + +

문자이미지 문자(등급별 요금 안내)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
등급누적결제액(2023-06-28 ~ 현재)단문장문그림(1장)그림(2장)그림(3장)
VVIP10,000,0008.132657580
VIP9,000,0008.533667683
골드8,000,000934677785
실버7,000,0001035687890
블랙6,000,0001136697995
레드5,000,00012387280100
퍼플4,000,00013407585105
블루3,000,00014427890110
오렌지2,000,00015448195115
그린1,000,000164684100120
옐로우500,000174887105125
화이트0185090110130
+ + * 등급별 요금제는 당사의 정책 및 운영의 필요상 수정, 중단 또는 변경될 수 있습니다.
+ * 누적결제액은 등급별 요금제 적용일로부터 적립된 결제금액을 말하며, 누적결제액에 따라 등급은 자동으로 적용됩니다.
+ * "첫결제 이벤트" 등 이벤트 결제금액은 등급별 요금제 누적결제액에서 제외됩니다.
+
+

+ * 문자피싱, 스미싱, 주식, 도박, 로또, 스팸, 사기, 협박, 범죄, 유사투자, 유사수신 등을 목적으로 하거나 교사 또는 방조하는 내용의 정보, 발신번호 조작 등으로 인지되는 문자에 대해서는 사전 또는 즉시 발송을 차단하고 + 이용을 정지시킬 수 있으며, 이에 대한 어떠한 환불이나 보상을 실시하지 않습니다. 또한, 상기 문자를 발송한 회원에 대해서는 그 즉시 등급별 요금제 혜택을 취소합니다. +

+ +

알림톡 아이콘 이미지 알림톡

diff --git a/src/main/webapp/publish/payment2.html b/src/main/webapp/publish/payment2.html index 81f269f9..20c6afe3 100644 --- a/src/main/webapp/publish/payment2.html +++ b/src/main/webapp/publish/payment2.html @@ -2,257 +2,378 @@ - - - 문자온 + + + 문자온 - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + -
- - - -
-
-

QUICK
MENU

-

QUICK

- - -
-
- - - - -
-
- -
- -
    -
  • -
  • -
  • -
  • -
  • -
+
+ + + + +
+
+

QUICK
MENU

+

QUICK

+ + +
+
+ + + + + + +
+
+ +
+ +
    +
  • +
  • +
  • +
  • +
  • +
+ -
-
-

결제하기

-
-
+
+
+

결제하기

+
+

충전수단 선택

    -
  • -
  • +
  • +
  • +
  • +
  • +
  • -
  • -
  • +
  • +
  • +
  • +
-
선택한 수단을 다음 충전 시에도 +
선택한 수단을 + 다음 충전 시에도 이용합니다.
- +
-

신용카드

+

간편결제 스몰 아이콘 + 간편결제

- - + + + + + + +
충전금액 - + +

- - - - - - ※ 최소 3천원 이상부터 결제 가능합니다. + +
+
+
+
최종 결제금액 :
+
+
    +
  • 50,000원(공급가액)
  • +
  • 5,000원(부가세)
  • +
  • 55,000원(최종금액)
  • +
+
+
+ +
-

- 신용카드 결제가 어려우신 고객께서는 ARS 신용카드 결제(080-1234-5678 전화 후 결제정보 입력)를 통해서도 이용 가능합니다.

-

- 팝업차단 해제 후 충전 가능합니다(도구 → 팝업차단 메뉴에서 설정)

-

- 카드사별 정책상 금액제한이 있을 수 있습니다. 단, ARS 신용카드 결제는 충전금액 제한없이 이용하실 수 있습니다.

+

- 인터넷 익스플로러 이용 고객께서는 도구-팝업 차단 해제 후 충전이 가능합니다.

+

- 결제사별 정책상 충전금액 제한이 있을 수 있습니다.

+
+
+
+ + +
+

신용카드 + 신용카드

+ + + + + + + + + + + + + + +
충전금액 + + +

+ +
+
+
+
최종 결제금액 :
+
+
    +
  • 50,000원(공급가액)
  • +
  • 5,000원(부가세)
  • +
  • 55,000원(최종금액)
  • +
+
+
+ +
+
+
+

- 인터넷 익스플로러 이용 고객께서는 도구-팝업 차단 해제 후 충전이 가능합니다.

+

- 카드사별 정책상 충전금액 제한이 있을 수 있습니다. 단, ARS 신용카드 결제는 충전금액 제한 없이 이용하실 수 + 있습니다.

-
- -
- -
- -

계좌 이미 전용계좌

+ +
+ +

계좌 이미 전용계좌

@@ -264,32 +385,32 @@

1. 현재 발급받은 전용계좌가 없습니다.

-

2. 평생 같은 계좌번호로 입금 즉시 자동 충전되는 전용계좌를 사용해보세요(5,000원 이상부터 입금 가능)

-

3. 발급받은 전용계좌는 3개월 미사용시 자동 해지됩니다.

+

2. 입금 즉시 자동 충전되는 나만의 전용계좌 개설(평생 사용가능, 5천원 이상 입금 가능)

+
- - - - - - - - - - - + + + + + + - +

+
- -

계좌 이미 전용계좌

+ +

계좌 이미 전용계좌

@@ -298,23 +419,28 @@ - - @@ -324,7 +450,7 @@ -
+ -
-

휴대폰결제

+
+

+ 휴대폰결제

-
기업은행 08202827497137
-
+ +
+ 보유한 전용 계좌가 없습니다. +

- 전용계좌는 개설일로부터 3개월 미사용 시 자동 해지됩니다.

-

- 전용계좌에 5,000원 이상 입금 시, 연중무휴 실시간 자동 충전됩니다.

-

- 예금주 : 문자온

-

- 계좌번호 문자로 받기(일/3회까지) - - - -

+

- 전용계좌에 5,000원 이상 입금 시, 연중무휴 실시간 자동 충전이 + 가능합니다.

+ +

- 계좌번호 문자로 받기(일/3회까지) + + + +

@@ -410,39 +545,61 @@ - + + + +
충전금액 - + +

- - - - - - ※ 최소 3천원 이상부터 결제 가능합니다. + +
+
+
+
최종 결제금액 :
+
+
    +
  • 50,000원(공급가액)
  • +
  • 5,000원(부가세)
  • +
  • 55,000원(최종금액)
  • +
+
+
+ +
-

- 월 30만원 한도 내에서 충전할 수 있습니다.

-

- 그 외 휴대폰 소액결제 제한은 가입하신 통신사를 통해 확인할 수 있습니다.

-

- 팝업차단 해제 후 충전 가능합니다.(도구>팝업차단 메뉴에서 설정)

+

- 월 30만원 한도 내에서 충전하실 수 있습니다.

+

- 휴대폰 소액결제 제한에 관한 사항은 가입하신 통신사를 통해 확인하실 수 있습니다.

+

- 인터넷 익스플로러 이용 고객께서는 도구-팝업 차단 해제 후 충전이 가능합니다.

-
- -
-
-

즉시이체

+
+

+ 즉시이체

@@ -450,70 +607,262 @@ - + + + +
충전금액 - + +

- - - - - - ※ 최소 3천원 이상부터 결제 가능합니다. + +
+
+
+
최종 결제금액 :
+
+
    +
  • 50,000원(공급가액)
  • +
  • 5,000원(부가세)
  • +
  • 55,000원(최종금액)
  • +
+
+
+ +
-

- 결제사의 인터넷뱅킹을 이용한 계좌이체(법인계좌불가)입니다.

-

- 기존 인터넷뱅킹을 이용하시는 경우 해당 이체를 통해 무통장입금을 이용하시는게 편리할 수 있습니다,

+

- 나이스페이 결제를 이용하여 인터넷뱅킹처럼 로그인 없이 간단한 정보 입력만으로 실시간 계좌 이체

+

  (일반결제, 간편결제, 앱결제)를 할 수 있는 간편한 결제 수단입니다.(소득공제 및 지출증빙 가능)

-
- -
+ + +
+

등급 : 등급 스몰 아이콘오렌지(누적결제액 :                  200,000원)

+ +
+
+

누적결제액별 등급 및 단가 아이콘 누적결제액별 등급 및 단가 +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
등급누적결제액(2023-06-28 ~ 현재)단문장문그림(1장)그림(2장)그림(3장)
VVIP10,000,0008.132657580
VIP9,000,0008.533667683
골드8,000,000934677785
실버7,000,0001035687890
블랙6,000,0001136697995
레드5,000,00012387280100
퍼플4,000,00013407585105
블루3,000,00014427890110
오렌지2,000,00015448195115
그린1,000,000164684100120
옐로우500,000174887105125
화이트0185090110130
+ + * 등급별 요금제는 당사의 정책 및 운영의 필요상 수정, 중단 또는 변경될 수 있습니다.
+ * 누적결제액은 등급별 요금제 적용일로부터 적립된 결제금액을 말하며, 누적결제액에 따라 등급은 자동으로 적용됩니다.
+ * "첫결제 이벤트" 등 이벤트 결제금액은 등급별 요금제 누적결제액에서 제외됩니다.
+
+

+ * 문자피싱, 스미싱, 주식, 도박, 로또, 스팸, 사기, 협박, 범죄, 유사투자, 유사수신 등을 목적으로 하거나 교사 또는 방조하는 내용의 정보, 발신번호 조작 + 등으로 인지되는 문자에 대해서는 + 사전 또는 즉시 발송을 차단하고 + 이용을 정지시킬 수 있으며, 이에 대한 어떠한 환불이나 보상을 실시하지 않습니다. 또한, 상기 문자를 발송한 회원에 대해서는 그 즉시 등급별 요금제 혜택을 + 취소합니다. +

+ +
-
-
-
- -
- - -
- + + + + + + +
+ + +
+ + + + \ No newline at end of file diff --git a/src/main/webapp/publish/payment3.html b/src/main/webapp/publish/payment3.html index 61536953..aa1e0c06 100644 --- a/src/main/webapp/publish/payment3.html +++ b/src/main/webapp/publish/payment3.html @@ -6,7 +6,8 @@ 문자온 - + @@ -15,29 +16,32 @@ - - + + - + +
-
- +
- - + + + + - + + + +
@@ -231,331 +329,494 @@
  • - - + + +

    요금결제내역

    -
    - -
      -
    • -
    • -
    • -
    • -
    • -
    • -
    -
    - -
    - - - - - - - - - - From e71cc2086c8d3a60837b41dc591bc949878bcbc6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?ITN=5F=EB=94=94=EC=9E=90=EC=9D=B8=ED=8C=80?= Date: Fri, 7 Jul 2023 18:22:54 +0900 Subject: [PATCH 6/7] =?UTF-8?q?2023/07/07=20=EA=B2=B0=EC=A0=9C=ED=95=98?= =?UTF-8?q?=EA=B8=B0,=20=EC=9D=B4=EB=B2=A4=ED=8A=B8=ED=8E=98=EC=9D=B4?= =?UTF-8?q?=EC=A7=80=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/webapp/publish/css/content.css | 12 +++++--- src/main/webapp/publish/firstpay_event2.html | 31 +++++++++----------- src/main/webapp/publish/guide_2022.html | 4 +-- src/main/webapp/publish/payment2.html | 11 ++++--- 4 files changed, 31 insertions(+), 27 deletions(-) diff --git a/src/main/webapp/publish/css/content.css b/src/main/webapp/publish/css/content.css index a10f0f11..44dece7e 100644 --- a/src/main/webapp/publish/css/content.css +++ b/src/main/webapp/publish/css/content.css @@ -1075,18 +1075,22 @@ button.check_validity:hover {border: 1px solid #a3a3a3;box-shadow: 0px 0px 5px .charg_cont.current {display: block;} .charg_cont .tab_tit{font-size: 24px; font-weight: bold; color: #222; margin-bottom: 20px; margin-top: 40px;} .charg_cont .area_tab{display: flex; width: 100%; justify-content: space-between;} -.charg_cont .area_tab li{ width: calc((100% - 80px)/5); border: 1px solid #ddd; border-radius: 5px; position: relative; box-sizing: border-box; text-align: center;} +/* 간편결제 오픈 시 +.charg_cont .area_tab li{ width: calc((100% - 80px)/5); border: 1px solid #ddd; border-radius: 5px; position: relative; box-sizing: border-box; text-align: center;} */ +.charg_cont .area_tab li{ width: calc((100% - 80px)/4); border: 1px solid #ddd; border-radius: 5px; position: relative; box-sizing: border-box; text-align: center;} .charg_cont .area_tab li button {font-size: 22px; font-weight: 400; width: 100%; height: 100%; padding: 60px 20px 40px 20px;position:relative;z-index:1;} .charg_cont .area_tab li.active {border: 3px solid #fbc72b;} .charg_cont .area_tab li.active::before{background-image: url(/publish/images/content/icon_chargeCheck2.png); background-color: #fbc72b; border: 2px solid #fbc72b;} .charg_cont .area_tab li::before{position: absolute; content: " "; width: 31px; height: 31px; border: 3px solid #ccc; right: 15px; top: 15px; border-radius: 100%; background-image: url(/publish/images/content/icon_chargeCheck1.png); background-repeat: no-repeat; background-position: center 58%;} .charg_cont .area_tab button i{width: 65px; height: 55px; display: block; margin: 0 auto 15px auto; background-position: center;} -.charg_cont .area_tab .btn_charge1 i{background-image: url(/publish/images/simple.png);} -.charg_cont .area_tab .btn_charge2 i{background-image: url(/publish/images/content/icon_charging2.png);} -.charg_cont .area_tab .btn_charge3 i{background-image: url(/publish/images/content/icon_charging3.png);} +.charg_cont .area_tab .btn_charge_simple i{background-image: url(/publish/images/simple.png);} +.charg_cont .area_tab .btn_charge1 i{background-image: url(/publish/images/content/icon_charging2.png);} +.charg_cont .area_tab .btn_charge2 i{background-image: url(/publish/images/content/icon_charging3.png);} .charg_cont .area_tab .btn_charge4 i{background-image: url(/publish/images/content/icon_charging4.png);} .charg_cont .area_tab .btn_charge5 i{background-image: url(/publish/images/content/icon_charging5.png);} .charg_cont .area_tab+.checkbox_wrap{margin-top: 18px; color: #666; font-weight: 300; font-size: 18px; text-align: right; width: 100%;} +/* 간편결제 오픈 시 +.charg_cont .area_tab.type03 li {width:calc(100%/4 - 15px);} */ .charg_cont .area_tab.type03 li {width:calc(100%/3 - 15px);} .charg_cont .checkbox_wrap input[type="checkbox"], .charg_cont .checkbox_wrap input[type="radio"]{display: none;} diff --git a/src/main/webapp/publish/firstpay_event2.html b/src/main/webapp/publish/firstpay_event2.html index a5896460..c6e2a2e6 100644 --- a/src/main/webapp/publish/firstpay_event2.html +++ b/src/main/webapp/publish/firstpay_event2.html @@ -284,26 +284,24 @@

    충전수단 선택

      -
    • -
    • +
    • + +
    • +
    • + +
    • +
    • + +
    • -
    • -
    • + +
    -
    +
    -

    신용카드

    +

    신용카드

    요금결제내역 기간설정에 대한 표
    기간설정 -
    - -
    - - -
    - ~ - -
    - +
    + +
      +
    • +
    • +
    • +
    • +
    • +
    • +
    • +
    • +
    + +
    + +
    + + + + + + + + + + + + +
    요금결제내역 기간설정에 대한 표
    기간설정 +
    + +
    + +
    - - - - + ~ + +
    + +
    +
    + + + + +
    +
    +
    +
    ※ 요금 결제내역은 결제일을 기준으로 최대 6개월까지만 조회 가능합니다.
    +
    + + + + + +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + + 번호 +
    + + +
    +
    + 결제일시 +
    + + +
    +
    + 결제방식 +
    + + +
    +
    + 결제금액 +
    + + +
    +
    결제정보증빙서류 발행 요청
    + + + +

    1

    +
    +

    2021-06-25, 09:30:52

    +
    +

    신용카드

    +
    +

    199,000

    +
    +

    신한카드 카드승인번호 : 12345678

    +
    + + + +

    2

    +
    +

    2021-06-25, 09:30:52

    +
    +

    무통장입금

    +
    +

    199,000

    +
    +

    신한카드 우리은행 : 1234-56-78901

    +
    + + + +

    3

    +
    +

    2021-06-25, 09:30:52

    +
    +

    포인트

    +
    +

    199,000

    +
    +

    사용포인트(수수료 포함) : 5,250

    +
    + + + +

    4

    +
    +

    2021-06-25, 09:30:52

    +
    +

    전용계좌

    +
    +

    199,000

    +
    +

    전용계좌번호 : 1234-56-78901

    +
    + + + +

    5

    +
    +

    2021-06-25, 09:30:52

    +
    +

    휴대폰

    +
    +

    199,000

    +
    +

    결제 휴대폰 번호 : 010-1234-5678

    +
    + + + +

    6

    +
    +

    2021-06-25, 09:30:52

    +
    +

    즉시이체

    +
    +

    199,000

    +
    +

    출금계좌 국민은행 : 1234-56-78901

    +
    +
    + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + + 번호 +
    + + +
    +
    + 결제일시 +
    + + +
    +
    + 결제방식 +
    + + +
    +
    + 결제금액 +
    + + +
    +
    결제정보증빙서류 발행 요청
    + + + +

    1

    +
    +

    2021-06-25, 09:30:52

    +
    +

    신용카드

    +
    +

    199,000

    +
    +

    신한카드 카드승인번호 : 12345678

    +
    + + + +

    2

    +
    +

    2021-06-25, 09:30:52

    +
    +

    무통장입금

    +
    +

    199,000

    +
    +

    신한카드 우리은행 : 1234-56-78901

    +
    +

    세금계산서 발행완료

    +
    + + + +

    3

    +
    +

    2021-06-25, 09:30:52

    +
    +

    포인트

    +
    +

    199,000

    +
    +

    사용포인트(수수료 포함) : 5,250

    +
    -
    + + + +

    4

    +
    +

    2021-06-25, 09:30:52

    +
    +

    전용계좌

    +
    +

    199,000

    +
    +

    전용계좌번호 : 1234-56-78901

    +
    +

    현금계산서 발행완료

    +
    + + + +

    5

    +
    +

    2021-06-25, 09:30:52

    +
    +

    휴대폰

    +
    +

    199,000

    +
    +

    결제 휴대폰 번호 : 010-1234-5678

    +
    +

    세금계산서 발행대기

    +
    + + + +

    6

    +
    +

    2021-06-25, 09:30:52

    +
    +

    즉시이체

    +
    +

    199,000

    +
    +

    출금계좌 국민은행 : 1234-56-78901

    +
    +

    세금계산서 발행대기

    -
    -
    -
    ※ 요금 결제내역은 결제일을 기준으로 최대 6개월까지만 조회 가능합니다.
    -
    - - - - -
    -
    -
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - - - - 번호 -
    - - -
    -
    - 결제일시 -
    - - -
    -
    - 결제방식 -
    - - -
    -
    - 결제금액 -
    - - -
    -
    결제정보증빙서류 발행 요청
    - - -

    1

    2021-06-25, 09:30:52

    신용카드

    199,000

    신한카드 카드승인번호 : 12345678

    - - -

    2

    2021-06-25, 09:30:52

    무통장입금

    199,000

    신한카드 우리은행 : 1234-56-78901

    - - -

    3

    2021-06-25, 09:30:52

    포인트

    199,000

    사용포인트(수수료 포함) : 5,250

    - - -

    4

    2021-06-25, 09:30:52

    전용계좌

    199,000

    전용계좌번호 : 1234-56-78901

    - - -

    5

    2021-06-25, 09:30:52

    휴대폰

    199,000

    결제 휴대폰 번호 : 010-1234-5678

    - - -

    6

    2021-06-25, 09:30:52

    즉시이체

    199,000

    출금계좌 국민은행 : 1234-56-78901

    -
    - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - - - - 번호 -
    - - -
    -
    - 결제일시 -
    - - -
    -
    - 결제방식 -
    - - -
    -
    - 결제금액 -
    - - -
    -
    결제정보증빙서류 발행 요청
    - - -

    1

    2021-06-25, 09:30:52

    신용카드

    199,000

    신한카드 카드승인번호 : 12345678

    - - -

    2

    2021-06-25, 09:30:52

    무통장입금

    199,000

    신한카드 우리은행 : 1234-56-78901

    세금계산서 발행완료

    - - -

    3

    2021-06-25, 09:30:52

    포인트

    199,000

    사용포인트(수수료 포함) : 5,250

    -
    - - -

    4

    2021-06-25, 09:30:52

    전용계좌

    199,000

    전용계좌번호 : 1234-56-78901

    현금계산서 발행완료

    - - -

    5

    2021-06-25, 09:30:52

    휴대폰

    199,000

    결제 휴대폰 번호 : 010-1234-5678

    세금계산서 발행대기

    - - -

    6

    2021-06-25, 09:30:52

    즉시이체

    199,000

    출금계좌 국민은행 : 1234-56-78901

    세금계산서 발행대기

    -
    - +
    +
      -
    • -
    • +
    • +
    • @@ -566,222 +827,236 @@
    • -
    • -
    • +
    • +
    -
    - -
    -
    -

    - 포인트는 환불되지 않습니다.

    -

    - 환불 신청 금액에 따라 환불 수수료가 차감됩니다.

    -

    - 결제 방식에 따라 환불 수수료는 다르게 적용될 수 있습니다.

    -

    - 취소 처리기간 경과시에 증빙서류를 첨부해야 환불처리 가능하며, 결제대행 수수료가 부과됩니다.

    -

    - 1,000원 이하의 잔액은 환불이 불가합니다.

    -

    - 무통장입금 제외 모든 결제는 부분취소가 불가하여, 사용금액(차액) 결제 후 전액취소를 원칙으로 합니다.

    -

     (예) 핸드폰 3만원 결제 후 3천원 사용한 경우, 3,300원(부가세포함)송금 또는 3천원 핸드폰 결제 후 3만원 전액취소

    -

    - 환불업무는 매주 수요일에 순차적으로 처리됩니다.

    -
    - + +
    +
    +

    - 포인트는 환불되지 않습니다.

    +

    - 환불 신청 금액에 따라 환불 수수료가 차감됩니다.

    +

    - 결제 방식에 따라 환불 수수료는 다르게 적용될 수 있습니다.

    +

    - 취소 처리기간 경과시에 증빙서류를 첨부해야 환불처리 가능하며, 결제대행 수수료가 부과됩니다.

    +

    - 1,000원 이하의 잔액은 환불이 불가합니다.

    +

    - 무통장입금 제외 모든 결제는 부분취소가 불가하여, 사용금액(차액) 결제 후 전액취소를 원칙으로 합니다.

    +

     (예) 핸드폰 3만원 결제 후 3천원 사용한 경우, 3,300원(부가세포함)송금 또는 3천원 핸드폰 결제 후 3만원 전액취소

    +

    - 환불업무는 매주 수요일에 순차적으로 처리됩니다.

    +
    + -
      -
    • -
      -
      - 증빙서류 및 환불수수료 안내 - +
        +
      • +
        +
        + 증빙서류 및 환불수수료 안내 + +
        +
        +
        + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
        증빙서류 및 환불수수료 안내
        결제방법취소가능기간증빙서류환불수수료
        전용계좌명의자 계좌로 환불이체확인증(이체한 통장내역) 통장사본환불금액의 3%
        신용카드결제일 기준 2개월 내 취소가능통장사본환불금액의 5%
        무통장입금명의자 계좌로 환불이체확인증(이체한 통장내역) 통장사본환불금액의 3%
        휴대폰결제결제 당월 취소가능결제당월 일반 전화요금 납입영수증, 일반전화 명의자의 통장사본환불금액의 8%
        즉시이체결제 당일건만 취소가능통장사본환불금액의 5%
        +
        +
      • +
      +

      환불 금액 입력

      + + + + + + + + + + + + + + + + + + + + +
      환불 가능, 신청, 예정에 대한 표
      환불 가능 금액120,000
      환불 신청 금액 + + + + + 전액환불(1,000원 이하 환불 불가) +
      환불 예정 금액120,000(수수료 10% 제외)
      +

      환불 계좌 입력 (가입자가 충전하지 않았거나 타인의 계좌로 환불신청하는 경우 별도 서류가 요구될 수 있으며, 서류 + 불충분 시 환불되지 않습니다.)

      + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      예금주, 계좌정보, 연락처, 통장사본, 증빙서류에 대한 표
      예금주 + + + + + + +
      계좌정보 + + + + + +
      연락처 + + +
      통장사본 + + + + ※ 파일첨부가 안되시는 경우, 메일 munjaon@iten.co.kr로 보내주세요 +
      증빙서류 + + + + ※ 이체확인증 또는 핸드폰 납부 영수증을 첨부해주세요 +
      +

      환불 사유

      + + + + + + + + + + + + + + + + +
      환불사유, 비밀번호에 대한 표
      환불사유 +
      + + + + + +
      - -
      - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      증빙서류 및 환불수수료 안내
      결제방법취소가능기간증빙서류환불수수료
      전용계좌명의자 계좌로 환불이체확인증(이체한 통장내역) 통장사본환불금액의 3%
      신용카드결제일 기준 2개월 내 취소가능통장사본환불금액의 5%
      무통장입금명의자 계좌로 환불이체확인증(이체한 통장내역) 통장사본환불금액의 3%
      휴대폰결제결제 당월 취소가능결제당월 일반 전화요금 납입영수증, 일반전화 명의자의 통장사본환불금액의 8%
      즉시이체결제 당일건만 취소가능통장사본환불금액의 5%
      -
      - - -

      환불 금액 입력

      - - - - - - - - - - - - - - - - - - - - -
      환불 가능, 신청, 예정에 대한 표
      환불 가능 금액120,000
      환불 신청 금액 - - - - - 전액환불(1,000원 이하 환불 불가) -
      환불 예정 금액120,000(수수료 10% 제외)
      -

      환불 계좌 입력 (가입자가 충전하지 않았거나 타인의 계좌로 환불신청하는 경우 별도 서류가 요구될 수 있으며, 서류 불충분 시 환불되지 않습니다.)

      - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      예금주, 계좌정보, 연락처, 통장사본, 증빙서류에 대한 표
      예금주 - - - - - - -
      계좌정보 - - - - - -
      연락처 - - -
      통장사본 - - - - ※ 파일첨부가 안되시는 경우, 메일 munjaon@iten.co.kr로 보내주세요 -
      증빙서류 - - - - ※ 이체확인증 또는 핸드폰 납부 영수증을 첨부해주세요 -
      -

      환불 사유

      - - - - - - - - - - - - - - - - -
      환불사유, 비밀번호에 대한 표
      환불사유 -
      - - - - - - -
      -
      - - - - - - -
      -
      비밀번호 - - -
      -
      - -
      - - - +
      + + + + + + +
      +
      비밀번호 + + +
      +
      + +
      +
      +
      +
    +
    -
    +
    +
    -
    - + + + + + \ No newline at end of file diff --git a/src/main/webapp/publish/sub1_2023.html b/src/main/webapp/publish/sub1_2023.html index 3fcf0dcc..e27bc753 100644 --- a/src/main/webapp/publish/sub1_2023.html +++ b/src/main/webapp/publish/sub1_2023.html @@ -1507,6 +1507,30 @@
    + +
    +
    +
      +
    • + 나의 단가  :   +
    • +
    • + 단문 + 18원 + /   +
    • +
    • + 장문 + 50원 + /   +
    • +
    • + 그림 + 90원 + (2장 : 110원 / 3장 : 130원) +
    • +
    +
    @@ -314,8 +312,7 @@
    충전금액 - diff --git a/src/main/webapp/publish/guide_2022.html b/src/main/webapp/publish/guide_2022.html index e1c6f35b..8ef4dd80 100644 --- a/src/main/webapp/publish/guide_2022.html +++ b/src/main/webapp/publish/guide_2022.html @@ -18,12 +18,12 @@
      +
    • payment2.html결제관리 > 결제하기 > 충전수단 선택 > 간편결제추가 + 등급별금액&누적결제액별 등급 및 단가(테이블 및 텍스트 추가)
    • +
    • firstpay_event2.html고객센터 > 이벤트페이지 > 충전수단 선택 내용 추가
    • index_2023.html로그인 바 > 등급별 아이콘 이미지 추가 + 홍길동(개인)으로 이름 변경 (님)자 제거 + 요금안내 페이지 이동 탑 배너 추가 + 퀵메뉴 > 맞춤제작을 요금안내로 변경
    • mypage_index_2023.html마이페이지 > 등급별 아이콘 버튼 추가 + 등급별 아이콘 버튼 클릭 > 팝업추가
    • -
    • firstpay_event.html고객센터 > 이벤트페이지 > 충전수단 선택 내용 추가
    • payment3.html결제관리 > 요금결제내역 > 간편결제 결제내역 tap추가 + 등급 및 누적결제액 확인 버튼 추가 + 등급 및 누적결제액 확인 버튼 클릭 > 팝업추가
    • sub1_2023.html문자발송 > 문자전송 > 발송금액 > 나의단가 금액 추가
    • -
    • payment2.html결제관리 > 결제하기 > 충전수단 선택 > 간편결제추가 + 등급별금액&누적결제액별 등급 및 단가(테이블 및 텍스트 추가)
    • payment1.html결제관리 > 요금안내/견적안내(테이블 및 텍스트 추가)
    • kakao_allimtalk_intro.html카카오톡 소개
    • popup_pay_complete.html결제완료 팝업
    • diff --git a/src/main/webapp/publish/payment2.html b/src/main/webapp/publish/payment2.html index 20c6afe3..1e6bbe89 100644 --- a/src/main/webapp/publish/payment2.html +++ b/src/main/webapp/publish/payment2.html @@ -23,7 +23,10 @@ - + + @@ -214,10 +217,10 @@

      충전수단 선택

        -
      • -
      • +
      • +
      • -
      • +
      • From cd6154280ce0628fd840c296b52010c781a6cd9c Mon Sep 17 00:00:00 2001 From: hylee Date: Mon, 10 Jul 2023 10:10:48 +0900 Subject: [PATCH 7/7] =?UTF-8?q?feat:=20pms=20-=203258=20"=ED=8C=A9?= =?UTF-8?q?=EC=8A=A4=20=EB=B0=9C=EC=86=A1=EC=A0=84=20=EB=B9=84=EC=9A=A9=20?= =?UTF-8?q?=EC=B2=B4=ED=81=AC"=20=EC=99=84=EB=A3=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../webapp/WEB-INF/jsp/web/fax/faxDataView.jsp | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/src/main/webapp/WEB-INF/jsp/web/fax/faxDataView.jsp b/src/main/webapp/WEB-INF/jsp/web/fax/faxDataView.jsp index fc0eb24c..ed562130 100644 --- a/src/main/webapp/WEB-INF/jsp/web/fax/faxDataView.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/fax/faxDataView.jsp @@ -51,6 +51,11 @@ return false; } + if(!moneyChk()){ + return false; + } + + if(!valueChk()){ return false; } @@ -152,6 +157,19 @@ } + function moneyChk(){ + + //회원 보유 잔액 비교 + var totPriceOnly = stringReplaceAll($('#totalPriceTxt').text() , ",", ""); + var userMoneyOnly = stringReplaceAll($('#hdUserMoney').text(), ",", ""); + + if(parseFloat(userMoneyOnly) < parseFloat(totPriceOnly)){ + alert("팩스 발송에 필요한 회원님의 보유 잔액이 부족 합니다."); + return false; + } + } + + function valueChk(){ if($('#title').val() == ''){ alert('제목을 입력해 주세요.');