摘要: 主要讲解使用 IDEA 开发 Spring MVC 的环境搭建,Maven的简单教学。
参考1:https://my.oschina.net/gaussik/blog/385697
参考2:http://www.cnblogs.com/Leo_wl/p/4459274.html
前言
本文是本人开始使用 IDEA 的开端,从 java 框架开始,安装参考以上文章。
一、相关环境
- JDK 1.8.0_45
- Maven 3.3.9
- Tomcat 8.5.12
- MySql 5.7
- Intellij IDEA 2016.3.5 Ultimate(-->Spring 4.2.6)
- Bootstrap 3.3.5
以上是我要做的这个demo所需要的东西,当然有些是可选的,版本也是可控的。比如说如果你用不惯Maven的话可以自行去官网下载jar包然后导入自己的工程中,如果想要学习下Maven可以看看《Maven视频教程》(偶然找到,这个老师做的视频都挺好,推荐以下),不用完全的去学习Maven,懂大概意思后再去找找IntelliJ IDEA如何配置maven的相关文章就足够了。
还有Bootstrap,纯粹是个人洁癖,不需要这可以去之。
事先声明,请确保IntelliJ IDEA、Tomcat、MySql和JDK都已经安装好。Maven和Bootstrap的话能有则有。前者为了让导包更容易,后者为了让页面更美观。此外,由于jdk以及mysql的安装网上已经有了很多教程,在此为节省篇幅不做介绍。
my question (自己遇到问题):(1)首先安装 jdk-8u45-windows-x64.exe(JDK)和 Maven 3.3.9(Maven),后执行mvn -v测试 maven 安装是否成功, 出现 ERROR: JAVA_HOME is set to an invalid directory......,如下图所示:
原因: 与 JDK 环境配置有关
解决办法(即,正确的 JDK 配置如下):
变量名:JAVA_HOME
变量值:C:\Program Files\Java\jdk1.7.0 【--特别注意:此处的 JAVA_HOME 设置千万千万不能加分号!!!,因为:后面要使用 JAVA_HOME 来加载路径,分号会导致路径出错】
变量名:CLASSPATH
变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
变量名:Path
变量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
--》 可测试 JDK 环境配置完好:cmd->java
cmd->javac ,两种都运行成功即可,网上教程很多,此处不再复述。
(正确的 Maven 下载和配置在下文部分二内说明,见下文)
若 JDK 和 Maven 安装并配置成功,测试(cmd->java/javac/mvn -v)结果如下:
二、本地Maven与Tomcat的安装
注:如果使用IntelliJ IDEA集成的maven 3.0.5的话,可以忽略此步安装。
1、下载并安装本地maven
点击“Apache-Maven官方网站”进入官网,点击左侧Download选项:
进入了下载页面,往下拉可发现当前版本是3.3.3,点击下面红框中的apache-maven-3.3.9-bin.zip就可下载,下载后解压缩到相应目录下:
新增系统变量MAVEN_HOME:即MAVEN安装目录:---(!!同理 JAVA_HOME,该路径也不能加分号!!)
在Path中加入:%MAVEN_HOME%\bin;
在cmd中输入mvn -v,若显示如下,则说明本地maven配置完成:
2、下载并安装本地Tomcat
进入Tomcat官网,点击左侧Download的Tomcat8.0,进入Tomcat的下载页面:
64位Windows版本下载64-bit Windows zip (pgp, md5, sha1),解压到所需目录下:
解压后到\bin\目录下运行startup.bat,如图下所示,如果出现Server startup in xxxx ms说明Tomcat安装成功。
三、安装和使用IDEA2016.3.5
先看强调部分!!!
安装及首次使用参考网站:http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/introduce.html
IntelliJ IDEA 注册码,可参考以下网址:
强调:
---1.--- 第一次启动时,默认的文件存储地址在 C盘-user-计算机名(例如:admin等等)之下,名为 .IntelliJIdea,为防止后续程序占用太多 C盘 空间,建议更换存储位置,因此,安装好IDEA后,不要立即启动IDEA。即在第一次启动前,可以先更换系统缓存文件的位置设置,步骤如下:
设置IntelliJ IDEA修改系统缓存索引:
intellij IDEA在第一次启动时,会在${user.home}目录下建立以.IntelliJIdea开头的文件夹,用来存放IDEA的配置信息、插件和缓存信息。随着工具使用时间越多,这个文件夹会越来越大。如果用户目录和系统盘在一个分区,那系统盘分区可用空间就会变小,系统重装时,这个目录还会被删除。 于是我们需要将此目录修改到其他分区,修改很简单,如下: 在IDEA安装目录的bin文件夹中找到idea.properties文件,我们需要里面的几项内容: # Use ${idea.home} macro to specify location relative to IDE installation home. # Use ${xxx} where xxx is any Java property (including defined in previous lines of this file) to refer to its value. # Note for Windows users: please make sure you‘re using forward slashes (e.g. c:/idea/system). #--------------------------------------------------------------------- # Uncomment this option if you want to customize path to IDE config folder. Make sure you‘re using forward slashes. #--------------------------------------------------------------------- #打开confi的配置 # idea.config.path=${user.home}/config #--------------------------------------------------------------------- # Uncomment this option if you want to customize path to IDE system folder. Make sure you‘re using forward slashes. #--------------------------------------------------------------------- #打开system的配置 # idea.system.path=${user.home}/system #--------------------------------------------------------------------- # Uncomment this option if you want to customize path to user installed plugins folder. Make sure you‘re using forward slashes. #--------------------------------------------------------------------- #打开plugins的配置 # idea.plugins.path=${idea.config.path}/plugins #--------------------------------------------------------------------- # Uncomment this option if you want to customize path to IDE logs folder. Make sure you‘re using forward slashes. #--------------------------------------------------------------------- #打开log的配置 # idea.log.path=${idea.system.path}/log 将idea.config.path和idea.system.path里面的${user.home}改成将要存放目录的位置,我这里修改为D:/Program/JetBrains,如下是修改后的结果 #--------------------------------------------------------------------- # Uncomment this option if you want to customize path to IDE config folder. Make sure you‘re using forward slashes. #--------------------------------------------------------------------- idea.config.path=D:/Program/JetBrains/.IntelliJIdea/config #--------------------------------------------------------------------- # Uncomment this option if you want to customize path to IDE system folder. Make sure you‘re using forward slashes. #--------------------------------------------------------------------- idea.system.path=D:/Program/JetBrains/.IntelliJIdea/system 注意:一定要将配置项前面的注释符(#)去掉,否则不生效。 接下来,重启IDEA工具就可以了。
当然。若你已经启动过 IDEA 了,你要更改系统缓存文件位置,则需要先关掉 IDEA, 并删除 {user/home} 下名为 .IntelliJIdea 的文件夹,然后进行上述系统缓存位置的设置,设置完成后再启动 IDEA。
---2.--- IDEA项目文件存储位置的设置(设置项目文件夹存储的位置):
四、创建Maven Web项目
前面说了这么多,差不多基本的东西都保障了(前提保证你已经安装了jdk)。现在进入正题,如何来创建一个Web项目。对于不使用Maven的开发者,可以直接建一个简单的Web项目。使用Maven的话,请按照图进行操作。
菜单File->New Project可进入上图界面,首先选择左边栏Maven,再配置JDK(一般如果之前添加了JDK的话会自动填充,如未添加的话点击旁边的New将JDK目录导入即可)。勾选“Create from archetype“,然后选中4处蓝色位置webapp,点Next,进入如下界面:
这里需要填写GroupId和ArtifactId还有Version,这三个属性目的是标识你的项目的唯一性,比如Tomcat的GroupId是org.apache,即它是apache组织的项目,ArtifactId是tomcat,项目名为tomcat,而我当前使用的Version是7.0.68。这些只在发布时有用,在此可以随便填写,填好后点Next,到如下界面。
打开Maven home directory,可以发现IntelliJ IDEA已经集成了Maven 2和Maven 3两个版本,如果使用默认集成的maven的话,选择Buldled(Maven 3),直接点击Next。
我们也可以导入本地新安装的较新的Maven版本,点击蓝色箭头右边的 ... 按钮将Maven路径导入即可,点击Next:
填写项目名,选择项目保存路径,点击Finish:
进入如下界面,maven会在后台生成web项目,这需要等待一定的时间,视网络环境而定,经验发现用较新版本的maven项目生成更快,使用IDEA集成的maven可能会等待很长一段实践。
左边红框中展示了该项目的文件结构。可以发现,它在src/main下创建了一个recources文件夹,该文件夹一般用来存放一些资源文件,还有一个webapp文件夹,用来存放web配置文件以及jsp页面等,这已经组成了一个原始的web应用。选择右边红框的Enable-Auto-Import,可以在每次修改pom.xml后,自动的下载并导入jar包,这一点在后面详述。
注:如果这一步生成实在太慢的话,建议看一下以下两篇(感谢26楼 wintersun2 同学的提出):
文章1: http://www.cnblogs.com/beiyeren/p/4566485.html
文章2:http://blog.csdn.net/cleverlzc/article/details/50864582
四、Maven自动导入jar包
既然我们要用SpringMVC开发,那肯定少不了SpringMVC的相关jar包。如果不使用Maven的话,那就需要去官网下载相关的jar包,然后导入到项目中。现在使用maven的话,就不需要上网找jar包了。具体容我一一道来。
Maven所做的工作其实很简单,就是自动把你需要的jar包下载到本地,然后关联到项目中来。maven的所有jar包都是保存在几个中央仓库里面的,其中一个最常用的是Maven Repository,即,你需要什么jar包,它就会从仓库中拿给你。那么如何告诉maven需要什么jar包呢?我们看看工程目录,能找到一个pom.xml文件(这个文件在刚创建好项目时就已经展现在了大家面前),maven就是靠它来定义需求的,代码如下:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.gaussic</groupId>
<artifactId>springmvcdemo</artifactId>
<packaging>war</packaging>
<version>1.0-SNAPSHOT</version>
<name>springmvcdemo Maven Webapp</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<finalName>springmvcdemo</finalName>
</build>
</project>
我们可以看到这个文件包含了我们之前定义的本项目的gropId等信息,这些信息是该项目的标识,我们不要去改动它们。重点看<dependencies>标签,翻译过来是”依赖“的意思,也就是说把对每个包的需求都称为一个依赖<depedency>,定义在<dependencies>中。在每个<depedency>中,你需要提供的是所需jar包的groupId、artifactId、version这三个必要信息。比如上面我们看到引入可一个junit包,格式如下:
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
这是单元测试包,提供了三个基本信息,第4个scope对其他包来说是非必需的。所有jar包的引入都要满足这个格式。那么如何查看这些jar包的3个信息呢,可能刚接触是开发者还不是很熟悉,这个时候就需要查阅仓库了。比如我们需要引入Spring核心jar包spring-core,打开Maven Repository,搜索spring-core,进入如下界面:
点击进入红框选中的Spring Core,如下所示,可以看到各版本的使用情况:
选择最新版本4.2.5.RELEASE,可以看到其dependency写法如下红框所示:
我们将其复制到pom.xml中的<dependencies>中:
这样,Maven就会开始自动下载jar包到本地仓库,然后关联到你的项目中,下载完成后,我们展开工程目录中External Libraries:
可以发现,虽然我们只写了一个依赖,但是它导入了两个jar包,也就是说,导入某个jar包时,与它密切相关的jar包也会同时被导入进来。
除了spring-core,我还要spring-context,复制spring-core的<dependency>,将spring-core改为spring-context,如下:
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>4.2.5.RELEASE</version>
</dependency>
下载完成后,查看External Libraries,会不会发现,瞬间导入了好多jar包(当然不是瞬间,这得看你的网速了)呢:
这就是Maven的强大之处,如果你需要使用SpringMVC开发网站的话,只需记住几个重要的包的名字,就可以轻松将所有包导入项目中。
长话短说,现在我们要进行SpringMVC的开发,请把你的pom.xml变成下面的样子,当然不要改你的grupId等信息(从modelVersion到url都不要动):
<properties>
<spring.version>4.2.6.RELEASE</spring.version>
<hibernate.version>5.1.0.Final</hibernate.version>
</properties>
请在<dependencies>中加入以下依赖:
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-jpa</artifactId>
<version>1.10.1.RELEASE</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>${hibernate.version}</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-c3p0</artifactId>
<version>${hibernate.version}</version>
</dependency>
<dependency>
<groupId>com.mchange</groupId>
<artifactId>c3p0</artifactId>
<version>0.9.5.2</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
<dependency>
<groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.39</version></dependency>
将<build>改成如下形式:
<build>
<finalName>springmvcdemo</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
我们可以发现,除了导入了spring相关jar包,还有一些其他的包,这些包都是有作用的,我们后面慢慢说。如果不使用Maven请自行下载spring、hibernate、mysql、jstl等相关jar包然后导入到工程中。至此,jar包的导入就完成了,我们按 ctrl+alt+shift+s,或者File->Project Structure查看一下项目结构,看看有什么问题:
由于之后我们要开始写代码了,先做一些配置,选择Modules,在SpringMVCDemo的src\main文件夹中新建一个文件夹,取名为java:
选中java文件夹,点击上面的Make as:Sources,该文件夹就会变成蓝色,用以保存java代码,按OK,结束配置。
(另开一文,见使用Intellij IDEA来发SpringMVC网站(二))。
转载请注明出处:Gaussic(一个致力于AI研究却不得不兼顾项目的研究生)。
? 著作权归作者所有
- 分类:知识总结
- 字数:2594
共有 3 人打赏支持
+ 关注
宝山
粉丝 260
博文 26
码字总数 62540
相关博客
qsyan
266 0
Lubby
883 0
大凡人
616 0
评论 (40)
Ctrl+Enter 发表评论
1楼 2015/06/10 10:15
小白顶一个
2楼 2015/09/06 17:35
没下文了?
3楼 2015/09/29 13:47
续呢。。。。很少见到这么有质量的技术文章啊,希望做完整。先给第一章点个赞。
4楼 2015/10/24 21:17
如果有需要可以clone这个项目,这是我在看楼主文章,学习过程中使用的例子。
https://github.com/Cenyol/SpringMVC.git
5楼 2015/11/17 12:04
按照教程设置完毕,发现pom.xml中的spring-core的版本是红色的。
6楼 2015/11/17 12:14
引用来自“Minho”的评论
按照教程设置完毕,发现pom.xml中的spring-core的版本是红色的。
试试 右键-maven-reimport
7楼 2015/11/30 19:48
按照教程一步步新建项目完成后,没有自动生成src和它的子文件夹,请问这啥情况啊?我都是手动创建的
8楼 2015/12/01 10:45
引用来自“Yasemin”的评论
按照教程一步步新建项目完成后,没有自动生成src和它的子文件夹,请问这啥情况啊?我都是手动创建的
因为你的maven在创建模板的时候断开连接了,不要紧,自己创建也可以的。
9楼 2015/12/02 00:09
开始用的是springmvc4,后来替换为3.2,跳跃性有点大啊。另外dependency这块,可以讲一下模块划分及之间的关系
10楼 2015/12/02 09:33
引用来自“hanzhankang”的评论
开始用的是springmvc4,后来替换为3.2,跳跃性有点大啊。另外dependency这块,可以讲一下模块划分及之间的关系
谢谢你的意见,如果需要开发一个比较成熟的系统,利用maven的模块划分对于项目jar包的管理很有帮助。这里仅仅是一个让大家入门的demo,其重点部分还是Spring MVC的入门运用上,关于具体的部分我知之甚少。其实这几篇文章还有很多的地方需要深度挖掘的,继续的学习就要通过网络,书籍和文档了。
11楼 2015/12/29 18:05
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-archetype-plugin:2.4:generate (default-cli) on project standalone-pom:
Execution default-cli of goal org.apache.maven.plugins:maven-archetype-plugin:2.4:generate failed:
Plugin org.apache.maven.plugins:maven-archetype-plugin:RELEASE or one of its dependencies could not be resolved:
The following artifacts could not be resolved: xml-apis:xml-apis:jar:1.0.b2,
backport-util-concurrent:backport-util-concurrent:jar:3.1, org.beanshell:bsh:jar:2.0b4:
Could not transfer artifact xml-apis:xml-apis:jar:1.0.b2 from/to central (http://repo.maven.apache.org/maven2):
Connect to 120.192.95.122:801 [/120.192.95.122] failed: Connection timed out: connect -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
你好,我在生成项目时,报这个错误。能给说一下问题出在那个地方吗?
12楼 2016/01/24 13:15
有没有用gradle构建的,maven配置太复杂了
13楼 2016/02/16 17:32
感谢楼主, 可以留个联系方式吗
14楼 2016/02/16 17:33
我把依赖复制进去了 但是出现了大量的红色
15楼 2016/02/23 10:28
引用来自“长度至少为3”的评论
我把依赖复制进去了 但是出现了大量的红色
是不是下载jar包还没完成?
16楼 2016/03/08 22:22
引用来自“临意”的评论
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-archetype-plugin:2.4:generate (default-cli) on project standalone-pom:
Execution default-cli of goal org.apache.maven.plugins:maven-archetype-plugin:2.4:generate failed:
Plugin org.apache.maven.plugins:maven-archetype-plugin:RELEASE or one of its dependencies could not be resolved:
The following artifacts could not be resolved: xml-apis:xml-apis:jar:1.0.b2,
backport-util-concurrent:backport-util-concurrent:jar:3.1, org.beanshell:bsh:jar:2.0b4:
Could not transfer artifact xml-apis:xml-apis:jar:1.0.b2 from/to central (http://repo.maven.apache.org/maven2):
Connect to 120.192.95.122:801 [/120.192.95.122] failed: Connection timed out: connect -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
你好,我在生成项目时,报这个错误。能给说一下问题出在那个地方吗?
这个是连接断开了,maven经常这样的,一个办法就是试试重新创建项目,另一个办法就是安装更新版本的maven,还有一个办法就是不用它生成,自己按照文中提示的结构创建项目。
17楼 2016/03/08 22:24
引用来自“长度至少为3”的评论
我把依赖复制进去了 但是出现了大量的红色
引用来自“jluwoniu”的评论
是不是下载jar包还没完成?
jar包没有下载完成,在pom.xml文件中右键 maven --> reimport
18楼 2016/03/08 22:27
引用来自“无聊宅”的评论
有没有用gradle构建的,maven配置太复杂了
可以参考 http://projects.spring.io/spring-framework/,一般配置方法官网都有的
19楼 2016/04/25 14:25
引用来自“Cenyol”的评论
如果有需要可以clone这个项目,这是我在看楼主文章,学习过程中使用的例子。
https://github.com/Cenyol/SpringMVC.git
非常感谢...
20楼 2016/04/25 14:40
引用来自“Cenyol”的评论
如果有需要可以clone这个项目,这是我在看楼主文章,学习过程中使用的例子。
https://github.com/Cenyol/SpringMVC.git
引用来自“安安卓卓”的评论
非常感谢...
https://github.com/gaussic/SpringMVCDemo 文中已经提到了博主本人的源码,没有看到的话基本可以告别这几篇文章了。
顶部
? 开源中国(OSChina.NET) | 关于我们 | 广告联系 | @新浪微博 | 开源中国手机版 | 粤ICP备12009483号-3
开源中国社区(OSChina.net)是工信部 开源软件推进联盟 指定的官方社区
1条新私信,查看私信?
CNEKJPQZEX-eyJsaWNlbnNlSWQiOiJDTkVLSlBRWkVYIiwibGljZW5zZWVOYW1lIjoibGFuIHl1IiwiYXNzaWduZWVOYW1lIjoiIiwiYXNzaWduZWVFbWFpbCI6IiIsImxpY2Vuc2VSZXN0cmljdGlvbiI6IkZvciBlZHVjYXRpb25hbCB1c2Ugb25seSIsImNoZWNrQ29uY3VycmVudFVzZSI6ZmFsc2UsInByb2R1Y3RzIjpbeyJjb2RlIjoiQUMiLCJwYWlkVXBUbyI6IjIwMTgtMDEtMzAifSx7ImNvZGUiOiJETSIsInBhaWRVcFRvIjoiMjAxOC0wMS0zMCJ9LHsiY29kZSI6IklJIiwicGFpZFVwVG8iOiIyMDE4LTAxLTMwIn0seyJjb2RlIjoiUlMwIiwicGFpZFVwVG8iOiIyMDE4LTAxLTMwIn0seyJjb2RlIjoiV1MiLCJwYWlkVXBUbyI6IjIwMTgtMDEtMzAifSx7ImNvZGUiOiJEUE4iLCJwYWlkVXBUbyI6IjIwMTgtMDEtMzAifSx7ImNvZGUiOiJSQyIsInBhaWRVcFRvIjoiMjAxOC0wMS0zMCJ9LHsiY29kZSI6IlBTIiwicGFpZFVwVG8iOiIyMDE4LTAxLTMwIn0seyJjb2RlIjoiREMiLCJwYWlkVXBUbyI6IjIwMTgtMDEtMzAifSx7ImNvZGUiOiJEQiIsInBhaWRVcFRvIjoiMjAxOC0wMS0zMCJ9LHsiY29kZSI6IlJNIiwicGFpZFVwVG8iOiIyMDE4LTAxLTMwIn0seyJjb2RlIjoiUEMiLCJwYWlkVXBUbyI6IjIwMTgtMDEtMzAifSx7ImNvZGUiOiJDTCIsInBhaWRVcFRvIjoiMjAxOC0wMS0zMCJ9XSwiaGFzaCI6IjUxOTU1OTMvMCIsImdyYWNlUGVyaW9kRGF5cyI6MCwiYXV0b1Byb2xvbmdhdGVkIjpmYWxzZSwiaXNBdXRvUHJvbG9uZ2F0ZWQiOmZhbHNlfQ==-QOxwjWvRwJz6vo6J6adC3CJ4ukQHosbPYZ94URUVFna/Rbew8xK/M5gP3kAaPh6ZDveFdtMR1UBoumq3eCwXtXM3U3ls5noB4LIr+QplVlCj2pK5uNq7g/feyNyQcHpSXtvhIOnXDBLOecB05DOsxzm0p7ulGGJoAInmHeb9mc0eYjqc4RPpUQfh6HSYBnvEnKMlLF5bz4KEtzmsvvgA55CwzwQ3gRitm5Q/wUT7AQCBdjmBfNUjKVQL6TSjSDPp56FUdEs4Aab8LqstA2DIMbxocO64rvytmcUeIwu8Mi5uq87KQP5AQMSMYb59Inbd+dmVfx5cJo3fRS4/5s3/Hg==-MIIEPjCCAiagAwIBAgIBBTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTE1MTEwMjA4MjE0OFoXDTE4MTEwMTA4MjE0OFowETEPMA0GA1UEAwwGcHJvZDN5MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxcQkq+zdxlR2mmRYBPzGbUNdMN6OaXiXzxIWtMEkrJMO/5oUfQJbLLuMSMK0QHFmaI37WShyxZcfRCidwXjot4zmNBKnlyHodDij/78TmVqFl8nOeD5+07B8VEaIu7c3E1N+e1doC6wht4I4+IEmtsPAdoaj5WCQVQbrI8KeT8M9VcBIWX7fD0fhexfg3ZRt0xqwMcXGNp3DdJHiO0rCdU+Itv7EmtnSVq9jBG1usMSFvMowR25mju2JcPFp1+I4ZI+FqgR8gyG8oiNDyNEoAbsR3lOpI7grUYSvkB/xVy/VoklPCK2h0f0GJxFjnye8NT1PAywoyl7RmiAVRE/EKwIDAQABo4GZMIGWMAkGA1UdEwQCMAAwHQYDVR0OBBYEFGEpG9oZGcfLMGNBkY7SgHiMGgTcMEgGA1UdIwRBMD+AFKOetkhnQhI2Qb1t4Lm0oFKLl/GzoRykGjAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBggkA0myxg7KDeeEwEwYDVR0lBAwwCgYIKwYBBQUHAwEwCwYDVR0PBAQDAgWgMA0GCSqGSIb3DQEBCwUAA4ICAQC9WZuYgQedSuOc5TOUSrRigMw4/+wuC5EtZBfvdl4HT/8vzMW/oUlIP4YCvA0XKyBaCJ2iX+ZCDKoPfiYXiaSiH+HxAPV6J79vvouxKrWg2XV6ShFtPLP+0gPdGq3x9R3+kJbmAm8w+FOdlWqAfJrLvpzMGNeDU14YGXiZ9bVzmIQbwrBA+c/F4tlK/DV07dsNExihqFoibnqDiVNTGombaU2dDup2gwKdL81ua8EIcGNExHe82kjF4zwfadHk3bQVvbfdAwxcDy4xBjs3L4raPLU3yenSzr/OEur1+jfOxnQSmEcMXKXgrAQ9U55gwjcOFKrgOxEdek/Sk1VfOjvS+nuM4eyEruFMfaZHzoQiuw4IqgGc45ohFH0UUyjYcuFxxDSU9lMCv8qdHKm+wnPRb0l9l5vXsCBDuhAGYD6ss+Ga+aDY6f/qXZuUCEUOH3QUNbbCUlviSz6+GiRnt1kA9N2Qachl+2yBfaqUqr8h7Z2gsx5LcIf5kYNsqJ0GavXTVyWh7PYiKX4bs354ZQLUwwa/cG++2+wNWP+HtBhVxMRNTdVhSm38AknZlD+PTAsWGu9GyLmhti2EnVwGybSD2Dxmhxk3IPCkhKAK+pl0eWYGZWG3tJ9mZ7SowcXLWDFAk0lRJnKGFMTggrWjV8GYpw5bq23VmIqqDLgkNzuoog==