map) throws Exception {
+
+ sampleDAO.deleteBoard(map);
+
+ }
+}
diff --git a/src/main/java/test/test.java b/src/main/java/test/test.java
new file mode 100644
index 0000000..4e0ac5c
--- /dev/null
+++ b/src/main/java/test/test.java
@@ -0,0 +1,15 @@
+package test;
+
+public class test {
+
+ public static void main(String[] args)
+ {
+ try{
+ String str = "abc";
+ Integer.parseInt(str);
+ }catch(Exception e){
+ System.out.println("Error");
+ }
+ }
+
+}
diff --git a/src/main/resources/config/spring/context-aspect.xml b/src/main/resources/config/spring/context-aspect.xml
new file mode 100644
index 0000000..c1e303f
--- /dev/null
+++ b/src/main/resources/config/spring/context-aspect.xml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/main/resources/config/spring/context-common.xml b/src/main/resources/config/spring/context-common.xml
new file mode 100644
index 0000000..9e32d6d
--- /dev/null
+++ b/src/main/resources/config/spring/context-common.xml
@@ -0,0 +1,35 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/main/resources/config/spring/context-datasource.xml b/src/main/resources/config/spring/context-datasource.xml
new file mode 100644
index 0000000..5c1f747
--- /dev/null
+++ b/src/main/resources/config/spring/context-datasource.xml
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/main/resources/config/spring/context-mapper.xml b/src/main/resources/config/spring/context-mapper.xml
new file mode 100644
index 0000000..edd7018
--- /dev/null
+++ b/src/main/resources/config/spring/context-mapper.xml
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/main/resources/log4j.dtd b/src/main/resources/log4j.dtd
new file mode 100644
index 0000000..53fe0cd
--- /dev/null
+++ b/src/main/resources/log4j.dtd
@@ -0,0 +1,237 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/main/resources/log4j.xml b/src/main/resources/log4j.xml
new file mode 100644
index 0000000..3efa69d
--- /dev/null
+++ b/src/main/resources/log4j.xml
@@ -0,0 +1,41 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/main/resources/mapper/common/Common_SQL.xml b/src/main/resources/mapper/common/Common_SQL.xml
new file mode 100644
index 0000000..8fe0f95
--- /dev/null
+++ b/src/main/resources/mapper/common/Common_SQL.xml
@@ -0,0 +1,40 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/main/resources/mapper/sample/Sample_SQL.xml b/src/main/resources/mapper/sample/Sample_SQL.xml
new file mode 100644
index 0000000..2a7cdef
--- /dev/null
+++ b/src/main/resources/mapper/sample/Sample_SQL.xml
@@ -0,0 +1,188 @@
+
+
+
+
+
+
+
+
+ SELECT SEQ_TB_BOARD_IDX.NEXTVAL FROM DUAL
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/main/resources/rebel.xml b/src/main/resources/rebel.xml
new file mode 100644
index 0000000..644022d
--- /dev/null
+++ b/src/main/resources/rebel.xml
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/main/webapp/._.DS_Store b/src/main/webapp/._.DS_Store
new file mode 100644
index 0000000..28c42fb
Binary files /dev/null and b/src/main/webapp/._.DS_Store differ
diff --git a/src/main/webapp/WEB-INF/._.DS_Store b/src/main/webapp/WEB-INF/._.DS_Store
new file mode 100644
index 0000000..28c42fb
Binary files /dev/null and b/src/main/webapp/WEB-INF/._.DS_Store differ
diff --git a/src/main/webapp/WEB-INF/config/action-servlet.xml b/src/main/webapp/WEB-INF/config/action-servlet.xml
new file mode 100644
index 0000000..0c2900e
--- /dev/null
+++ b/src/main/webapp/WEB-INF/config/action-servlet.xml
@@ -0,0 +1,43 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/main/webapp/WEB-INF/include/._include-body.jspf b/src/main/webapp/WEB-INF/include/._include-body.jspf
new file mode 100644
index 0000000..b32f778
Binary files /dev/null and b/src/main/webapp/WEB-INF/include/._include-body.jspf differ
diff --git a/src/main/webapp/WEB-INF/include/include-body.jspf b/src/main/webapp/WEB-INF/include/include-body.jspf
new file mode 100644
index 0000000..140e6bf
--- /dev/null
+++ b/src/main/webapp/WEB-INF/include/include-body.jspf
@@ -0,0 +1,2 @@
+<%@ page pageEncoding="UTF-8"%>
+
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/include/include-header.jspf b/src/main/webapp/WEB-INF/include/include-header.jspf
new file mode 100644
index 0000000..515d629
--- /dev/null
+++ b/src/main/webapp/WEB-INF/include/include-header.jspf
@@ -0,0 +1,15 @@
+<%@ page pageEncoding="UTF-8"%>
+
+
+
+bloggers
+
+<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
+<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
+<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui" %>
+
+
+
+
+
+
diff --git a/src/main/webapp/WEB-INF/jsp/sample/Test.jsp b/src/main/webapp/WEB-INF/jsp/sample/Test.jsp
new file mode 100644
index 0000000..aacc1ce
--- /dev/null
+++ b/src/main/webapp/WEB-INF/jsp/sample/Test.jsp
@@ -0,0 +1,94 @@
+<%@ page language="java" contentType="text/html; charset=EUC-KR"
+ pageEncoding="EUC-KR"%>
+
+
+
+
+Insert title here
+<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
+<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
+<%@ include file ="/WEB-INF/include/include-header.jspf" %>
+
+
+
+ 게시판 목록
+
+
+
+
+
+
+
+
+ | 글번호 |
+ 제목 |
+
+
+
+
+
+
+
+ | ${row.IDX } |
+
+ ${row.TITLE }
+
+ |
+
+
+
+
+
+ | 조회된 결과가 없습니다. |
+
+
+
+
+
+
+
+
+
+
+
+ 글쓰기
+
+ <%@ include file="/WEB-INF/include/include-body.jspf" %>
+
+
+
+
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/jsp/sample/Test01.jsp b/src/main/webapp/WEB-INF/jsp/sample/Test01.jsp
new file mode 100644
index 0000000..0baca3b
--- /dev/null
+++ b/src/main/webapp/WEB-INF/jsp/sample/Test01.jsp
@@ -0,0 +1,24 @@
+<%@ page language="java" contentType="text/html; charset=EUC-KR"
+ pageEncoding="EUC-KR"%>
+
+
+
+
+
+
+Insert title here
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/jsp/sample/boardDetail.jsp b/src/main/webapp/WEB-INF/jsp/sample/boardDetail.jsp
new file mode 100644
index 0000000..6ed9e00
--- /dev/null
+++ b/src/main/webapp/WEB-INF/jsp/sample/boardDetail.jsp
@@ -0,0 +1,103 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+ pageEncoding="UTF-8"%>
+
+
+
+
+Insert title here
+<%@ include file="/WEB-INF/include/include-header.jspf" %>
+
+
+
+
+
+
+
+
+
+ 게시글 상세
+
+
+ | 글 번호 |
+ ${map.IDX } |
+ 조회수 |
+ ${map.HIT_CNT } |
+
+
+ | 작성자 |
+ ${map.CREA_ID } |
+ 작성시간 |
+ ${map.CREA_DTM } |
+
+
+ | 제목 |
+ ${map.TITLE } |
+
+
+ | ${map.CONTENTS } |
+
+
+ | 첨부파일 |
+
+
+
+
+
+ ${row.ORIGINAL_FILE_NAME }
+ (${row.FILE_SIZE }kb)
+
+
+ 첨부된 파일이 없습니다.!
+
+ |
+
+
+
+
+ 목록으로
+ 수정하기
+
+ <%@ include file="/WEB-INF/include/include-body.jspf" %>
+
+
+
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/jsp/sample/boardList.jsp b/src/main/webapp/WEB-INF/jsp/sample/boardList.jsp
new file mode 100644
index 0000000..9c67714
--- /dev/null
+++ b/src/main/webapp/WEB-INF/jsp/sample/boardList.jsp
@@ -0,0 +1,100 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+ pageEncoding="UTF-8"%>
+
+
+
+
+Insert title here
+<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
+<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
+<%@ include file ="/WEB-INF/include/include-header.jspf" %>
+
+
+
+ 게시판 목록
+
+
+
+
+
+
+
+
+
+ | 글번호 |
+ 제목 |
+ 조회수 |
+ 작성일 |
+
+
+
+
+
+
+
+ | ${row.IDX } |
+
+ ${row.TITLE }
+
+ |
+ ${row.HIT_CNT } |
+ ${row.CREA_DTM } |
+
+
+
+
+
+ | 조회된 결과가 없습니다. |
+
+
+
+
+
+
+
+
+
+
+
+
+ 글쓰기
+
+ <%@ include file="/WEB-INF/include/include-body.jspf" %>
+
+
+
+
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/jsp/sample/boardSearch.jsp b/src/main/webapp/WEB-INF/jsp/sample/boardSearch.jsp
new file mode 100644
index 0000000..d3d22da
--- /dev/null
+++ b/src/main/webapp/WEB-INF/jsp/sample/boardSearch.jsp
@@ -0,0 +1,13 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+ pageEncoding="UTF-8"%>
+
+
+
+Insert title here
+<%@ include file="/WEB-INF/include/include-header.jspf" %>
+
+
+HI~
+<%@ include file="/WEB-INF/include/include-body.jspf" %>
+
+
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/jsp/sample/boardUpdate.jsp b/src/main/webapp/WEB-INF/jsp/sample/boardUpdate.jsp
new file mode 100644
index 0000000..76ed53e
--- /dev/null
+++ b/src/main/webapp/WEB-INF/jsp/sample/boardUpdate.jsp
@@ -0,0 +1,164 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+ pageEncoding="UTF-8"%>
+
+
+
+
+Insert title here
+<%@ include file="/WEB-INF/include/include-header.jspf" %>
+
+
+
+ 파일추가
+ 목록으로
+ 저장하기
+ 삭제하기
+
+ <%@ include file="/WEB-INF/include/include-body.jspf" %>
+
+
+
+
+
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/jsp/sample/boardWrite.jsp b/src/main/webapp/WEB-INF/jsp/sample/boardWrite.jsp
new file mode 100644
index 0000000..3443953
--- /dev/null
+++ b/src/main/webapp/WEB-INF/jsp/sample/boardWrite.jsp
@@ -0,0 +1,97 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+ pageEncoding="UTF-8"%>
+
+
+
+<%@ include file="/WEB-INF/include/include-header.jspf" %>
+Insert title here
+
+
+
+
+ <%@ include file="/WEB-INF/include/include-body.jspf" %>
+
+
+
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/jsp/sample/kk.jsp b/src/main/webapp/WEB-INF/jsp/sample/kk.jsp
new file mode 100644
index 0000000..68fbafa
--- /dev/null
+++ b/src/main/webapp/WEB-INF/jsp/sample/kk.jsp
@@ -0,0 +1,12 @@
+<%@ page language="java" contentType="text/html; charset=EUC-KR"
+ pageEncoding="EUC-KR"%>
+
+
+
+
+Insert title here
+
+
+kkkk
+
+
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/views/home.jsp b/src/main/webapp/WEB-INF/views/home.jsp
new file mode 100644
index 0000000..d1f8a0f
--- /dev/null
+++ b/src/main/webapp/WEB-INF/views/home.jsp
@@ -0,0 +1,15 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
+<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
+<%@ page session="false" %>
+
+
+ Home
+
+
+
+ Hello world!
+
+
+ The time on the server is ${serverTime}.
+
+
diff --git a/src/main/webapp/WEB-INF/web.xml b/src/main/webapp/WEB-INF/web.xml
new file mode 100644
index 0000000..24fb0e2
--- /dev/null
+++ b/src/main/webapp/WEB-INF/web.xml
@@ -0,0 +1,52 @@
+
+
+
+
+ index.jsp
+
+
+
+ encodingFilter
+
+ org.springframework.web.filter.CharacterEncodingFilter
+
+
+ encoding
+ utf-8
+
+
+
+ encodingFilter
+ *.do
+
+
+
+ org.springframework.web.context.ContextLoaderListener
+
+
+
+ action
+
+ org.springframework.web.servlet.DispatcherServlet
+
+
+ contextConfigLocation
+
+ /WEB-INF/config/*-servlet.xml
+
+
+ 1
+
+
+ action
+ *.do
+
+
+
+
+ contextConfigLocation
+ classpath*:config/spring/context-*.xml
+
+
\ No newline at end of file
diff --git a/src/main/webapp/css/ui.css b/src/main/webapp/css/ui.css
new file mode 100644
index 0000000..d317aac
--- /dev/null
+++ b/src/main/webapp/css/ui.css
@@ -0,0 +1,23 @@
+@CHARSET "UTF-8";
+
+a:link, a:visited {text-decoration: none; color: #656565;}
+
+.board_list {width:100%;border-top:2px solid #252525;border-bottom:1px solid #ccc}
+.board_list thead th:first-child{background-image:none}
+.board_list thead th {border-bottom:1px solid #ccc;padding:12px 0 13px 0;color:#3b3a3a;vertical-align:middle}
+.board_list tbody td {border-top:1px solid #ccc;padding:10px 0;text-align:center;vertical-align:middle}
+.board_list tbody tr:first-child td {border:none}
+.board_list tbody td.title {text-align:left; padding-left:20px}
+.board_list tbody td a {display:inline-block}
+
+.board_view {width:30%;border-top:2px solid #252525;border-bottom:1px solid #ccc}
+.board_view tbody th {text-align:left;background:#f7f7f7;color:#3b3a3a}
+.board_view tbody th.list_tit {font-size:13px;color:#000;letter-spacing:0.1px}
+.board_view tbody .no_line_b th, .board_view tbody .no_line_b td {border-bottom:none}
+.board_view tbody th, .board_view tbody td {padding:15px 0 16px 16px;border-bottom:1px solid #ccc}
+.board_view tbody td.view_text {border-top:1px solid #ccc; border-bottom:1px solid #ccc;padding:45px 18px 45px 18px}
+.board_view tbody th.th_file {padding:0 0 0 15px; vertical-align:middle}
+
+.wdp_90 {width:60%}
+.btn {border-radius:3px;padding:5px 11px;color:#fff !important; display:inline-block; background-color:#6b9ab8; border:1px solid #56819d;vertical-align:middle}
+.pad_5 {padding: 5px}
\ No newline at end of file
diff --git a/src/main/webapp/index.jsp b/src/main/webapp/index.jsp
new file mode 100644
index 0000000..ad05442
--- /dev/null
+++ b/src/main/webapp/index.jsp
@@ -0,0 +1,12 @@
+<%@ page language="java" contentType="text/html; charset=EUC-KR"
+ pageEncoding="EUC-KR"%>
+
+
+
+
+Insert title here
+
+
+
+
+
\ No newline at end of file
diff --git a/src/main/webapp/js/._common.js b/src/main/webapp/js/._common.js
new file mode 100644
index 0000000..b32f778
Binary files /dev/null and b/src/main/webapp/js/._common.js differ
diff --git a/src/main/webapp/js/common.js b/src/main/webapp/js/common.js
new file mode 100644
index 0000000..0ee9411
--- /dev/null
+++ b/src/main/webapp/js/common.js
@@ -0,0 +1,179 @@
+function gfn_isNull(str) {
+ if (str == null) return true;
+ if (str == "NaN") return true;
+ if (new String(str).valueOf() == "undefined") return true;
+ var chkStr = new String(str);
+ if( chkStr.valueOf() == "undefined" ) return true;
+ if (chkStr == null) return true;
+ if (chkStr.toString().length == 0 ) return true;
+ return false;
+}
+
+/**
+ * 공통 서브밋 객체 (Target/Popup 대응 버전)
+ */
+function ComSubmit(opt_formId) {
+ this.formId = (typeof opt_formId === "undefined" || opt_formId === null || opt_formId === "") ? "commonForm" : opt_formId;
+ this.url = "";
+ this.target = "_self"; // 기본값은 현재 창
+
+ var $targetForm = $("#" + this.formId);
+
+ // [1] 초기화: commonForm일 경우 내부를 비우고 target도 기본값으로 리셋
+ if ($targetForm.length > 0 && this.formId === "commonForm") {
+ $targetForm.empty();
+ $targetForm.attr("target", "_self"); // 이전 타겟 설정 제거
+ }
+
+ this.setUrl = function setUrl(url) {
+ this.url = url;
+ };
+
+ /**
+ * [2] 타겟 설정 (팝업창 이름이나 _blank 등)
+ */
+ this.setTarget = function setTarget(target) {
+ this.target = target;
+ };
+
+ this.addParam = function addParam(key, value) {
+ if ($targetForm.length === 0) return;
+ var $existingParam = $targetForm.find("input[name='" + key + "']");
+
+ if ($existingParam.length > 0) {
+ $existingParam.val(value);
+ } else {
+ var inputHtml = $("", { type: "hidden", name: key, id: key, value: value });
+ $targetForm.append(inputHtml);
+ }
+ };
+
+ /**
+ * [3] 서버 전송
+ */
+ this.submit = function submit() {
+ if ($targetForm.length === 0) return;
+
+ var frm = $targetForm[0];
+ if (!this.url) {
+ alert("전송할 URL이 설정되지 않았습니다.");
+ return;
+ }
+
+ frm.action = this.url;
+ frm.method = "post";
+ frm.target = this.target; // 설정된 타겟 적용
+ frm.submit();
+ };
+}
+
+ var gfv_ajaxCallback = "";
+
+ function ComAjax(opt_formId)
+ {
+ this.url = "";
+ this.formId = gfn_isNull(opt_formId) == true?"commonForm":opt_formId;
+ this.param = "";
+
+ if(this.formId == "commonForm")
+ {
+ var frm = $("#commonForm");
+ if(frm.length>0){
+ frm.remove();
+ }
+
+ var str = "";
+ $('body').append(str);
+ }
+
+ this.setUrl = function setUrl(url)
+ {
+ this.url = url;
+ };
+
+ this.setCallback = function setCallback(callBack)
+ {
+ fv_ajaxCallback = callBack;
+ };
+
+ this.addParam = function addParam(key, value)
+ {
+ this.param = this.param + "&" + key + "=" + value;
+ };
+
+ this.ajax = function ajax()
+ {
+ if(this.formId != "commonForm"){
+ this.param += "&" + $("#" + this.formId).serialize();
+ }
+ $.ajax({
+ url : this.url,
+ type : "post",
+ data : this.param,
+ async : false,
+ success : function(data, status){
+ if(typeof(fv_ajaxCallback) == "function"){
+ fv_ajaxCallback(data);
+ }else{
+ eval(fv_ajaxCallback + "(data);");
+ }
+ }
+ });
+ };
+ }
+
+ //페이징 태그부분
+ /*
+ * divId : 페이징 태그가 그려질 div
+ * pageIndx : 현재 페이지 위치가 저장될 input 태그 id
+ * recordCount : 페이지당 레코드 수
+ * totalCount : 전체 조회 건수
+ * eventName : 페이징 하단의 숫자 등의 버튼이 클릭되었을때 호출될 함수 이름
+ */
+
+ var gfv_pageIndex = null;
+ var gfv_eventName = null;
+
+ function gfn_renderPaging(params)
+ {
+ var divId = params.divId; //페이징이 그려질 div id
+ gfv_pageIndex = params.pageIndex; //현재 위치가 저장될 input 태그
+ var totalCount = params.totalCount; //전체 조회 건수
+ var currentIndex = $("#"+params.pageIndex).val(); //현재 위치
+ if($("#"+params.pageIndex).length == 0 || gfn_isNull(currentIndex) == true){
+ currentIndex = 1;
+ }
+
+ var recordCount = params.recordCount; //페이지당 레코드 수
+ if(gfn_isNull(recordCount) == true){
+ recordCount = 20;
+ }
+
+ var totalIndexCount = Math.ceil(totalCount/recordCount); //전체 인덱스 수
+ gfn_eventName = params.eventName;
+ /*
+ * Math.floor : 소수점 버림
+ * Math.ceil : 소수점 올림
+ * Math.round : 반올림
+ * Math.random : 랜덤함수
+ * Math.sqrt : 제곱근
+ * Math.pow : 제곱
+ * Math.abs : 절대값
+ */
+
+ $("#"+divId).empty();
+ var preStr = "";
+ var postStr = "";
+ var str = "";
+
+ var first = (parseInt((currentIndex-1)/10)*10) + 1;
+ var last = (parseInt(totalCount/10)==parseInt(currentIndex/10))?totalIndexCount%10:10;
+ var prev = (parseInt((currentIndex-1)/10)*10) - 9 > 0 ? (parseInt((currentIndex-1)/10)*10) - 9 : 1;
+ var next = (parseInt((currentIndex-1)/10)+1) * 10 + 1 < totalIndexCount ? (parseInt((currentIndex-1)/10)+1) * 10 + 1 : totalIndexCount;
+
+ if(totalIndexCount>10){
+ preStr += "[<<]"
+ }
+
+
+ }
\ No newline at end of file