diff --git a/chapters/09-analytics.md b/chapters/08-analytics.md similarity index 100% rename from chapters/09-analytics.md rename to chapters/08-analytics.md diff --git a/chapters/08-streak-your-github.md b/chapters/09-streak-your-github.md similarity index 100% rename from chapters/08-streak-your-github.md rename to chapters/09-streak-your-github.md diff --git a/github-roam.epub b/github-roam.epub index e957eee..e24de81 100644 Binary files a/github-roam.epub and b/github-roam.epub differ diff --git a/github-roam.md b/github-roam.md index 9922ab0..8907b06 100644 --- a/github-roam.md +++ b/github-roam.md @@ -1743,331 +1743,6 @@ Lettuce.send = function (url, method, callback, data) { --- -#Github连击 - -##100天 - -我也是蛮拼的,虽然我想的只是在Github上连击100~200天,然而到了今天也算不错。 - -![Longest Streak](./img/longest-streak.png) - -``在停地造轮子的过程中,也不停地造车子。`` - -在那篇连续冲击365天的文章出现之前,我们公司的大大([https://github.com/dreamhead](https://github.com/dreamhead))也曾经在公司内部说过,天天commit什么的。当然这不是我的动力,在连击140天之前 - -- 给过google的``ngx_speed``、``node-coap``等项目创建过pull request -- 也有``free-programming-books``、``free-programming-books-zh_CN``这样的项目。 -- 当然还有一个连击20天。 - -对比了一下365天连击的commit,我发现我在total上整整多了近0.5倍。 - -![365 Streak](./img/365-streak.jpg) - -同时这似乎也意味着,我每天的commit数与之相比多了很多。 - -在连击20的时候,有这样的问题: *为了commit而commit代码*,最后就放弃了。 - -而现在是``为了填坑而commit``,为自己挖了太多的想法。 - -###40天的提升 - -当时我需要去印度接受毕业生培训,大概有5周左右,想着总不能空手而归。于是在国庆结束后有了第一次commit,当时旅游归来,想着自己在不同的地方有不同的照片,于是这个repo的名字是 [onmap](https://github.com/phodal/onmap)——将自己的照片显示在地图上的拍摄地点(手机是Lumia 920)。然而,中间因为修改账号的原因,丢失了commit。 - -再从印度说起,当时主要维护三个repo: - -- 物联网的CoAP协议 -- [一步步设计物联网系统](https://github.com/phodal/designiot)的电子书 -- 一个Node.js + JS的网站 - -说说最后一个,最后一个是练习的项目。因为当时培训比较无聊,业余时间比较多,英语不好,加上听不懂印度人的话。晚上基本上是在住的地方默默地写代码,所以当时的目标有这么几个: - -- TDD -- 测试覆盖率 -- 代码整洁 - -这也就是为什么那个repo有这样的一行: - -![Repo Status](./img/repo-status.png) - -做到98%的覆盖率也算蛮拼的,当然还有Code Climate也达到了4.0,也有了112个commits。因此也带来了一些提高: - -- 提高了代码的质量(code climate比jslint更注重重复代码等等一些bad smell)。 -- 对于Mock、Stub、FakesServer等用法有更好的掌握 -- 可以持续地交付软件(版本管理、自动测试、CI、部署等等) - -###100天的挑战 - -(ps:从印度回来之后,由于女朋友在泰国实习,有了更多的时间可以看书、写代码) - -有意思的是越到中间的一些时间,commits的次数上去了,除了一些简单的pull request,还有一些新的轮子出现了。 - -![Problem](./img/problem.jpg) - -这是上一星期的commits,这也就意味着,在一星期里面,我需要在8个repo里切换。而现在我又有了一个新的idea,这时就发现了一堆的问题: - - - 今天工作在这个repo上,突然发现那个repo上有issue,需要去修复,于是就放下了当前的代码。 - - 在不同的repo间切换容易分散精力 - - 很容易就发现有太多的功能可以实现,但是时间是有限的。 - - 没有足够的空闲时间,除了周末。 - - 希望去寻找那些有兴趣的人,然而却发现原来没有那么多时间去找人。 - -###140天的希冀 - -在经历了100天之后,似乎整个人都轻松了,毕竟目标是100~200天。似乎到现在,也不会有什么特殊的情怀,除了一些希冀。 - -当然,对于一个开源项目的作者来说,最好有下面的情况: - -- 很多人知道了这个项目 -- 很多人用它的项目。 -- 在某些可以用这个项目快速解决问题的地方提到了这个项目 -- 提了bug、issue、问题。 -- 提了bug,并解决了。(ps:这是最理想的情况) - - -##200天的Showcase - -今天是我连续泡在Github上的第200天,也是蛮高兴的,终于到达了: - -![Github 200 days](./img/github-200-days.png) - -故事的背影是: 去年国庆完后要去印度接受毕业生培训——就是那个神奇的国度。但是在去之前已经在项目待了九个多月,项目上的挑战越来越少,在印度的时间又算是比较多。便给自己设定了一个长期的goal,即100~200天的longest streak。 - -或许之前你看到过一篇文章[让我们连击](https://github.com/phodal/github-roam/blob/master/chapters/12-streak-your-github.md),那时已然140天,只是还是浑浑噩噩。到了今天,渐渐有了一个更清晰地思路。 - -先让我们来一下ShowCase,然后再然后,下一篇我们再继续。 - -###一些项目简述 - -上面说到的培训一开始是用Java写的一个网站,有自动测试、CI、CD等等。由于是内部组队培训,代码不能公开等等因素,加之做得无聊。顺手,拿Node.js +RESTify 做了Server,Backbone + RequireJS + jQuery 做了前台的逻辑。于是在那个日子里,也在维护一些旧的repo,如[iot-coap](https://github.com/phodal/iot-coap)、[iot](https://github.com/phodal/iot),前者是我拿到WebStorm开源License的Repo,后者则是毕业设计。 - -对于这样一个项目也需要有测试、自动化测试、CI等等。CI用的是Travics-CI。总体的技术构架如下: - -####技术栈 - -前台: - -- Backbone -- RequireJS -- Underscore -- Mustache -- Pure CSS - -后台: - -- RESTify - -测试: - -- Jasmine -- Chai -- Sinon -- Mocha -- Jasmine-jQuery - -一直写到五星期的培训结束, 只是没有自动部署。想想就觉得可以用github-page的项目多好~~。 - -过程中还有一些有意思的小项目,如: - -###google map solr polygon 搜索 - -[google map solr polygon 搜索](http://www.phodal.com/blog/google-map-width-solr-use-polygon-search/) - -![google map solr](./img/solr.png) - -代码: [https://github.com/phodal/gmap-solr](https://github.com/phodal/gmap-solr) - -###技能树 - -这个可以从两部分说起: - -####重构Skill Tree - -原来的是 - -- Knockout -- RequireJS -- jQuery -- Gulp - -![Skill Tree](./img/skilltree.jpg) - -代码: [https://github.com/phodal/skillock](https://github.com/phodal/skillock) - -####技能树Sherlock - -- D3.js -- Dagre-D3.js -- jquery.tooltipster.js -- jQuery -- Lettuce -- Knockout.js -- Require.js - -![Sherlock skill tree](./img/sherlock.png) - -代码: [https://github.com/phodal/sherlock](https://github.com/phodal/sherlock) - -####Django Ionic ElasticSearch 地图搜索 - -![Django Elastic Search](./img/elasticsearch_ionit_map.jpg) - -- ElasticSearch -- Django -- Ionic -- OpenLayers 3 - -代码: [https://github.com/phodal/django-elasticsearch](https://github.com/phodal/django-elasticsearch) - -####简历生成器 - -![Resume](./img/resume.png) - -- React -- jsPDF -- jQuery -- RequireJS -- Showdown - -代码: [https://github.com/phodal/resume](https://github.com/phodal/resume) - - -####Nginx 大数据学习 - -![Nginx Pig](./img/nginx_pig.jpg) - -- ElasticSearch -- Hadoop -- Pig - -代码: [https://github.com/phodal/learning-data/tree/master/nginx](https://github.com/phodal/learning-data/tree/master/nginx) - -####其他 - -虽然技术栈上主要集中在Python、JavaScript,当然还有一些Ruby、Pig、Shell、Java的代码,只是我还是习惯用Python和JavaScript。一些用到觉得不错的框架: - -- Ionic: 开始Hybird移动应用。 -- Django: Python Web开发利器。 -- Flask: Python Web开发小刀。 -- RequireJS: 管理js依赖。 -- Backbone: Model + View + Router。 -- Angluar: ...。 -- Knockout: MVV*。 -- React: 据说会火。 -- Cordova: Hybird应用基础。 - -还应该有: - -- ElasticSearch -- Solr -- Hadoop -- Pig -- MongoDB -- Redis - -##365天 - - 给你一年的时间,你会怎样去提高你的水平??? - -![Github 365](./img/github-365.jpg) - -正值这难得的sick leave(万恶的空气),码文一篇来记念一个过去的366天里。尽管想的是在今年里写一个可持续的开源框架,但是到底这依赖于一个好的idea。在我的[Github 孵化器](http://github.com/phodal/ideas) 页面上似乎也没有一个特别让我满意的想法,虽然上面有各种不样有意思的ideas。多数都是在过去的一年是完成的,然而有一些也是还没有做到的。 - -尽管一直在Github上连击看上去似乎是没有多大必要的,但是人总得有点追求。如果正是漫无目的,却又想着提高技术的同时,为什么不去试试?毕竟技术非常好、不需要太多练习的人只是少数,似乎这样的人是不存在的。大多数的人都是经过练习之后,才会达到别人口中的“技术好”。 - -这让我想起了充斥着各种气味的知乎上的一些问题,在一些智商被完虐的话题里,无一不是因为那些人学得比别人早——哪来的天才?所谓的天才,应该是未来的智能生命一般,一出生什么都知道。如果并非如此,那只是说明他练习到位了。 - -练习不到位便意味着,即使你练习的时候是一万小时的两倍,那也是无济于事的。如果你学得比别人晚,在**很长的一段时间里**(可能直到进棺材)输给别人是必然的——落后就要挨打。就好像我等毕业于一所二本垫底的学校里,如果在过去我一直保持着和别人(各种重点)一样的学习速度,那么我只能一直是Loser。 - -需要注意的是,对你来说考上二本很难,并不是因为你比别人笨。教育资源分配不均的问题,在某种程度上导致了新的阶级制度的出现。如[我的首页](https://www.phodal.com/)说的那样: **THE ONLY FAIR IS NOT FAIR**——唯一公平的是它是不公平的。我们可以做的还有很多——**CREATE & SHARE**。真正的不幸是,因为营养不良导致的教育问题。 - -于是在想明白了很多事的时候起,便有了Re-Practise这样的计划,而365天只是中间的一个产物。 - -###编程的基础能力 - -虽说算法很重要,但是编码才是基础能力。算法与编程在某种程度上是不同的领域,算法编程是在编程上面的一级。算法写得再好,如果别人很难直接拿来复用,在别人眼里就是shit。想出能work的代码一件简单的事,学会对其重构,使之变得更易读就是一件有意义的事。 - -于是,在某一时刻在Github上创建了一个组织,叫[Artisan Stack](https://github.com/artisanstack)。当时想的是在Github寻找一些JavaScript项目,对其代码进行重构。但是到底是影响力不够哈,参与的人数比较少。 - -####重构 - -如果你懂得如何写出高可读的代码,那么我想你是不需要这个的,但是这意味着你花了更多的时候在思考上了。当谈论重构的时候,让我想起了TDD(测试驱动开发)。即使不是TDD,那么如果你写着测试,那也是可以重构的。(之前写过一些利用Intellij IDEA重构的文章:[提炼函数](https://www.phodal.com/blog/intellij-idea-refactor-extract-method/)、[以查询取代临时变量](https://www.phodal.com/blog/intellij-idea-refactor-replace-temp-with-query/)、[重构与Intellij Idea初探](https://www.phodal.com/blog/thoughtworks-refactor-and-intellij-idea/)、[内联函数](https://www.phodal.com/blog/intellij-idea-refactor-inline-method/)) - -在各种各样的文章里,我们看到过一些相关的内容,最好的参考莫过于《重构》一书。最基础不过的原则便是函数名,取名字很难,取别人能读懂的名字更难。其他的便有诸如长函数、过大的类、重复代码等等。在我有限的面试别人的经历里,这些问题都是最常见的。 - -####测试 - -而如果没有测试,其他都是扯淡。写好测试很难,写个测试算是一件容易的事。只是有些容易我们会为了测试而测试。 - -在我写[EchoesWorks](https://github.com/echoesworks/echoesworks)和[Lan](https://github.com/phodal/lan)的过程中,我尽量去保证足够高的测试覆盖率。 - -![lan](./img/lan.png) - -![EchoesWorks](./img/echoesworks.png) - -从测试开始的TDD,会保证方法是可测的。从功能到测试则可以提供工作次效率,但是只会让测试成为测试,而不是代码的一部分。 - -测试是代码的最后一公里。所以,尽可能的为你的Github上的项目添加测试。 - -####编码的过程 - -初到TW时,Pair时候总会有人教我如何开始编码,这应该也是一项基础的能力。结合日常,重新演绎一下这个过程: - -1. 有一个可衡量、可实现、过程可测的目标 -2. Tasking (即对要实现的目标过程进行分解) -3. 一步步实现 (如TDD) -4. 实现目标 - -放到当前的场景就是: - -1. 我想在Github上连击365天。对应于每一个时候段的目标都应该是可以衡量、测试的——即每天都会有Contributions。 -2. 分解就是一个痛苦的过程。理想情况下,我们应该会有每天提交,但是这取决于你的repo的数量,如果没有新的idea出现,那么这个就变成为了Contributions而Commit。 -3. 一步步实现 - -在我们实际工作中也是如此,接到一个任务,然后分解,一步步完成。不过实现会稍微复杂一些,因为事务总会有抢占和优先级的。 - -###技术与框架设计 - -在上上一篇博客中《[After 500: 写了第500篇博客,然后呢?](https://www.phodal.com/blog/after-500-blogposts-analytics-after-tech/)》也深刻地讨论了下这个问题,技术向来都是后发者优势。对于技术人员来说,也是如此,后发者占据很大的优势。 - -如果我们只是单纯地把我们的关注点仅仅放置于技术上,那么我们就不具有任何的优势。而依赖于我们的编程经验,我们可以在特定的时候创造一些框架。而架构的设计本身就是一件有意思的事,大抵是因为程序员都喜欢创造。(ps:之前曾经写过这样一篇文章,《[对不起,我并不热爱编程,我只喜欢创造](https://www.phodal.com/blog/sorry-i-don't-like-programming/)》) - -**创造是一种知识的再掌握过程。** - -回顾一下写echoesworks的过程,一开始我需要的是一个网页版的PPT,当然这类的东西已经有很多了,如impress.js、bespoke.js等等。分析一下所需要的功能:markdown解析器、键盘事件处理、Ajax、进度条显示、图片处理、Slide。我们可以在Github上找到各式各样的模块,我们所要做的就是将之结合在一样。在那之前,我试着用类似的原理写(组合)了[Lettuce](https://github.com/phodal/lettuce)。 - -组合相比于创造过程是一个更有挑战性的过程,我们需要在这过程去设计胶水来粘合这些代码,并在最终可以让他工作。这好比是我们在平时接触到的任务划分,每个人负责相应的模块,最后整合。 - -想似的我在写[lan](https://github.com/phodal/lan)的时候,也是类似的,但是不同的是我已经设计了一个清晰的架构图。 - -![Lan IoT](./img/lan-iot.jpg) - -而在我们实现的编码过程也是如此,使用不同的框架,并且让他们能工作。如早期玩的[moqi.mobi](https://github.com/echoesworks/moqi.mobi),基于Backbone、RequireJS、Underscore、Mustache、Pure CSS。在随后的时间里,用React替换了View层,就有了[backbone-react](https://github.com/phodal/backbone-react)的练习。 - -技术同人一样,需要不断地往高一级前进。我们只需要不断地Re-Practise。 - -###领域与练习 - -说业务好像不太适合程序员的口味,那就领域吧。不同行业的人,如百度、阿里、腾讯,他们的领域核心是不一样的。 - -而领域本身也是相似的,这可以解释为什么互联网公司都喜欢互相挖人,而一般都不会去华为、中兴等非互联网领域挖人。出了这个领域,你可能连个毕业生都不如。领域、业务同技术一样是不断强化知识的一个过程。Ritchie先实现了BCPL语言,而后设计了C语言,而BCPL语言一开始是基于CPL语言。 - -领域本身也在不断进化。 - -这也是下一个值得提高的地方。 - -###其他 - -是时候写这个小结了。从不会写代码,到写代码是从0到1的过程,但是要从1到60都不是一件容易的事。无论是刷Github也好(不要是自动提交),或者是换工作也好,我们都在不断地练习。 - -而练习是要分成不同的几个步骤,不仅仅局限于技术: - -1. 编码 -2. 架构 -3. 设计 -4. 。。。 - ---- - #Github用户分析 ##生成图表 @@ -2675,3 +2350,328 @@ def get_points(usernames): ``` 真看不出来两者有什么相似的地方 。。。。 + +#Github连击 + +##100天 + +我也是蛮拼的,虽然我想的只是在Github上连击100~200天,然而到了今天也算不错。 + +![Longest Streak](./img/longest-streak.png) + +``在停地造轮子的过程中,也不停地造车子。`` + +在那篇连续冲击365天的文章出现之前,我们公司的大大([https://github.com/dreamhead](https://github.com/dreamhead))也曾经在公司内部说过,天天commit什么的。当然这不是我的动力,在连击140天之前 + +- 给过google的``ngx_speed``、``node-coap``等项目创建过pull request +- 也有``free-programming-books``、``free-programming-books-zh_CN``这样的项目。 +- 当然还有一个连击20天。 + +对比了一下365天连击的commit,我发现我在total上整整多了近0.5倍。 + +![365 Streak](./img/365-streak.jpg) + +同时这似乎也意味着,我每天的commit数与之相比多了很多。 + +在连击20的时候,有这样的问题: *为了commit而commit代码*,最后就放弃了。 + +而现在是``为了填坑而commit``,为自己挖了太多的想法。 + +###40天的提升 + +当时我需要去印度接受毕业生培训,大概有5周左右,想着总不能空手而归。于是在国庆结束后有了第一次commit,当时旅游归来,想着自己在不同的地方有不同的照片,于是这个repo的名字是 [onmap](https://github.com/phodal/onmap)——将自己的照片显示在地图上的拍摄地点(手机是Lumia 920)。然而,中间因为修改账号的原因,丢失了commit。 + +再从印度说起,当时主要维护三个repo: + +- 物联网的CoAP协议 +- [一步步设计物联网系统](https://github.com/phodal/designiot)的电子书 +- 一个Node.js + JS的网站 + +说说最后一个,最后一个是练习的项目。因为当时培训比较无聊,业余时间比较多,英语不好,加上听不懂印度人的话。晚上基本上是在住的地方默默地写代码,所以当时的目标有这么几个: + +- TDD +- 测试覆盖率 +- 代码整洁 + +这也就是为什么那个repo有这样的一行: + +![Repo Status](./img/repo-status.png) + +做到98%的覆盖率也算蛮拼的,当然还有Code Climate也达到了4.0,也有了112个commits。因此也带来了一些提高: + +- 提高了代码的质量(code climate比jslint更注重重复代码等等一些bad smell)。 +- 对于Mock、Stub、FakesServer等用法有更好的掌握 +- 可以持续地交付软件(版本管理、自动测试、CI、部署等等) + +###100天的挑战 + +(ps:从印度回来之后,由于女朋友在泰国实习,有了更多的时间可以看书、写代码) + +有意思的是越到中间的一些时间,commits的次数上去了,除了一些简单的pull request,还有一些新的轮子出现了。 + +![Problem](./img/problem.jpg) + +这是上一星期的commits,这也就意味着,在一星期里面,我需要在8个repo里切换。而现在我又有了一个新的idea,这时就发现了一堆的问题: + + - 今天工作在这个repo上,突然发现那个repo上有issue,需要去修复,于是就放下了当前的代码。 + - 在不同的repo间切换容易分散精力 + - 很容易就发现有太多的功能可以实现,但是时间是有限的。 + - 没有足够的空闲时间,除了周末。 + - 希望去寻找那些有兴趣的人,然而却发现原来没有那么多时间去找人。 + +###140天的希冀 + +在经历了100天之后,似乎整个人都轻松了,毕竟目标是100~200天。似乎到现在,也不会有什么特殊的情怀,除了一些希冀。 + +当然,对于一个开源项目的作者来说,最好有下面的情况: + +- 很多人知道了这个项目 +- 很多人用它的项目。 +- 在某些可以用这个项目快速解决问题的地方提到了这个项目 +- 提了bug、issue、问题。 +- 提了bug,并解决了。(ps:这是最理想的情况) + + +##200天的Showcase + +今天是我连续泡在Github上的第200天,也是蛮高兴的,终于到达了: + +![Github 200 days](./img/github-200-days.png) + +故事的背影是: 去年国庆完后要去印度接受毕业生培训——就是那个神奇的国度。但是在去之前已经在项目待了九个多月,项目上的挑战越来越少,在印度的时间又算是比较多。便给自己设定了一个长期的goal,即100~200天的longest streak。 + +或许之前你看到过一篇文章[让我们连击](https://github.com/phodal/github-roam/blob/master/chapters/12-streak-your-github.md),那时已然140天,只是还是浑浑噩噩。到了今天,渐渐有了一个更清晰地思路。 + +先让我们来一下ShowCase,然后再然后,下一篇我们再继续。 + +###一些项目简述 + +上面说到的培训一开始是用Java写的一个网站,有自动测试、CI、CD等等。由于是内部组队培训,代码不能公开等等因素,加之做得无聊。顺手,拿Node.js +RESTify 做了Server,Backbone + RequireJS + jQuery 做了前台的逻辑。于是在那个日子里,也在维护一些旧的repo,如[iot-coap](https://github.com/phodal/iot-coap)、[iot](https://github.com/phodal/iot),前者是我拿到WebStorm开源License的Repo,后者则是毕业设计。 + +对于这样一个项目也需要有测试、自动化测试、CI等等。CI用的是Travics-CI。总体的技术构架如下: + +####技术栈 + +前台: + +- Backbone +- RequireJS +- Underscore +- Mustache +- Pure CSS + +后台: + +- RESTify + +测试: + +- Jasmine +- Chai +- Sinon +- Mocha +- Jasmine-jQuery + +一直写到五星期的培训结束, 只是没有自动部署。想想就觉得可以用github-page的项目多好~~。 + +过程中还有一些有意思的小项目,如: + +###google map solr polygon 搜索 + +[google map solr polygon 搜索](http://www.phodal.com/blog/google-map-width-solr-use-polygon-search/) + +![google map solr](./img/solr.png) + +代码: [https://github.com/phodal/gmap-solr](https://github.com/phodal/gmap-solr) + +###技能树 + +这个可以从两部分说起: + +####重构Skill Tree + +原来的是 + +- Knockout +- RequireJS +- jQuery +- Gulp + +![Skill Tree](./img/skilltree.jpg) + +代码: [https://github.com/phodal/skillock](https://github.com/phodal/skillock) + +####技能树Sherlock + +- D3.js +- Dagre-D3.js +- jquery.tooltipster.js +- jQuery +- Lettuce +- Knockout.js +- Require.js + +![Sherlock skill tree](./img/sherlock.png) + +代码: [https://github.com/phodal/sherlock](https://github.com/phodal/sherlock) + +####Django Ionic ElasticSearch 地图搜索 + +![Django Elastic Search](./img/elasticsearch_ionit_map.jpg) + +- ElasticSearch +- Django +- Ionic +- OpenLayers 3 + +代码: [https://github.com/phodal/django-elasticsearch](https://github.com/phodal/django-elasticsearch) + +####简历生成器 + +![Resume](./img/resume.png) + +- React +- jsPDF +- jQuery +- RequireJS +- Showdown + +代码: [https://github.com/phodal/resume](https://github.com/phodal/resume) + + +####Nginx 大数据学习 + +![Nginx Pig](./img/nginx_pig.jpg) + +- ElasticSearch +- Hadoop +- Pig + +代码: [https://github.com/phodal/learning-data/tree/master/nginx](https://github.com/phodal/learning-data/tree/master/nginx) + +####其他 + +虽然技术栈上主要集中在Python、JavaScript,当然还有一些Ruby、Pig、Shell、Java的代码,只是我还是习惯用Python和JavaScript。一些用到觉得不错的框架: + +- Ionic: 开始Hybird移动应用。 +- Django: Python Web开发利器。 +- Flask: Python Web开发小刀。 +- RequireJS: 管理js依赖。 +- Backbone: Model + View + Router。 +- Angluar: ...。 +- Knockout: MVV*。 +- React: 据说会火。 +- Cordova: Hybird应用基础。 + +还应该有: + +- ElasticSearch +- Solr +- Hadoop +- Pig +- MongoDB +- Redis + +##365天 + + 给你一年的时间,你会怎样去提高你的水平??? + +![Github 365](./img/github-365.jpg) + +正值这难得的sick leave(万恶的空气),码文一篇来记念一个过去的366天里。尽管想的是在今年里写一个可持续的开源框架,但是到底这依赖于一个好的idea。在我的[Github 孵化器](http://github.com/phodal/ideas) 页面上似乎也没有一个特别让我满意的想法,虽然上面有各种不样有意思的ideas。多数都是在过去的一年是完成的,然而有一些也是还没有做到的。 + +尽管一直在Github上连击看上去似乎是没有多大必要的,但是人总得有点追求。如果正是漫无目的,却又想着提高技术的同时,为什么不去试试?毕竟技术非常好、不需要太多练习的人只是少数,似乎这样的人是不存在的。大多数的人都是经过练习之后,才会达到别人口中的“技术好”。 + +这让我想起了充斥着各种气味的知乎上的一些问题,在一些智商被完虐的话题里,无一不是因为那些人学得比别人早——哪来的天才?所谓的天才,应该是未来的智能生命一般,一出生什么都知道。如果并非如此,那只是说明他练习到位了。 + +练习不到位便意味着,即使你练习的时候是一万小时的两倍,那也是无济于事的。如果你学得比别人晚,在**很长的一段时间里**(可能直到进棺材)输给别人是必然的——落后就要挨打。就好像我等毕业于一所二本垫底的学校里,如果在过去我一直保持着和别人(各种重点)一样的学习速度,那么我只能一直是Loser。 + +需要注意的是,对你来说考上二本很难,并不是因为你比别人笨。教育资源分配不均的问题,在某种程度上导致了新的阶级制度的出现。如[我的首页](https://www.phodal.com/)说的那样: **THE ONLY FAIR IS NOT FAIR**——唯一公平的是它是不公平的。我们可以做的还有很多——**CREATE & SHARE**。真正的不幸是,因为营养不良导致的教育问题。 + +于是在想明白了很多事的时候起,便有了Re-Practise这样的计划,而365天只是中间的一个产物。 + +###编程的基础能力 + +虽说算法很重要,但是编码才是基础能力。算法与编程在某种程度上是不同的领域,算法编程是在编程上面的一级。算法写得再好,如果别人很难直接拿来复用,在别人眼里就是shit。想出能work的代码一件简单的事,学会对其重构,使之变得更易读就是一件有意义的事。 + +于是,在某一时刻在Github上创建了一个组织,叫[Artisan Stack](https://github.com/artisanstack)。当时想的是在Github寻找一些JavaScript项目,对其代码进行重构。但是到底是影响力不够哈,参与的人数比较少。 + +####重构 + +如果你懂得如何写出高可读的代码,那么我想你是不需要这个的,但是这意味着你花了更多的时候在思考上了。当谈论重构的时候,让我想起了TDD(测试驱动开发)。即使不是TDD,那么如果你写着测试,那也是可以重构的。(之前写过一些利用Intellij IDEA重构的文章:[提炼函数](https://www.phodal.com/blog/intellij-idea-refactor-extract-method/)、[以查询取代临时变量](https://www.phodal.com/blog/intellij-idea-refactor-replace-temp-with-query/)、[重构与Intellij Idea初探](https://www.phodal.com/blog/thoughtworks-refactor-and-intellij-idea/)、[内联函数](https://www.phodal.com/blog/intellij-idea-refactor-inline-method/)) + +在各种各样的文章里,我们看到过一些相关的内容,最好的参考莫过于《重构》一书。最基础不过的原则便是函数名,取名字很难,取别人能读懂的名字更难。其他的便有诸如长函数、过大的类、重复代码等等。在我有限的面试别人的经历里,这些问题都是最常见的。 + +####测试 + +而如果没有测试,其他都是扯淡。写好测试很难,写个测试算是一件容易的事。只是有些容易我们会为了测试而测试。 + +在我写[EchoesWorks](https://github.com/echoesworks/echoesworks)和[Lan](https://github.com/phodal/lan)的过程中,我尽量去保证足够高的测试覆盖率。 + +![lan](./img/lan.png) + +![EchoesWorks](./img/echoesworks.png) + +从测试开始的TDD,会保证方法是可测的。从功能到测试则可以提供工作次效率,但是只会让测试成为测试,而不是代码的一部分。 + +测试是代码的最后一公里。所以,尽可能的为你的Github上的项目添加测试。 + +####编码的过程 + +初到TW时,Pair时候总会有人教我如何开始编码,这应该也是一项基础的能力。结合日常,重新演绎一下这个过程: + +1. 有一个可衡量、可实现、过程可测的目标 +2. Tasking (即对要实现的目标过程进行分解) +3. 一步步实现 (如TDD) +4. 实现目标 + +放到当前的场景就是: + +1. 我想在Github上连击365天。对应于每一个时候段的目标都应该是可以衡量、测试的——即每天都会有Contributions。 +2. 分解就是一个痛苦的过程。理想情况下,我们应该会有每天提交,但是这取决于你的repo的数量,如果没有新的idea出现,那么这个就变成为了Contributions而Commit。 +3. 一步步实现 + +在我们实际工作中也是如此,接到一个任务,然后分解,一步步完成。不过实现会稍微复杂一些,因为事务总会有抢占和优先级的。 + +###技术与框架设计 + +在上上一篇博客中《[After 500: 写了第500篇博客,然后呢?](https://www.phodal.com/blog/after-500-blogposts-analytics-after-tech/)》也深刻地讨论了下这个问题,技术向来都是后发者优势。对于技术人员来说,也是如此,后发者占据很大的优势。 + +如果我们只是单纯地把我们的关注点仅仅放置于技术上,那么我们就不具有任何的优势。而依赖于我们的编程经验,我们可以在特定的时候创造一些框架。而架构的设计本身就是一件有意思的事,大抵是因为程序员都喜欢创造。(ps:之前曾经写过这样一篇文章,《[对不起,我并不热爱编程,我只喜欢创造](https://www.phodal.com/blog/sorry-i-don't-like-programming/)》) + +**创造是一种知识的再掌握过程。** + +回顾一下写echoesworks的过程,一开始我需要的是一个网页版的PPT,当然这类的东西已经有很多了,如impress.js、bespoke.js等等。分析一下所需要的功能:markdown解析器、键盘事件处理、Ajax、进度条显示、图片处理、Slide。我们可以在Github上找到各式各样的模块,我们所要做的就是将之结合在一样。在那之前,我试着用类似的原理写(组合)了[Lettuce](https://github.com/phodal/lettuce)。 + +组合相比于创造过程是一个更有挑战性的过程,我们需要在这过程去设计胶水来粘合这些代码,并在最终可以让他工作。这好比是我们在平时接触到的任务划分,每个人负责相应的模块,最后整合。 + +想似的我在写[lan](https://github.com/phodal/lan)的时候,也是类似的,但是不同的是我已经设计了一个清晰的架构图。 + +![Lan IoT](./img/lan-iot.jpg) + +而在我们实现的编码过程也是如此,使用不同的框架,并且让他们能工作。如早期玩的[moqi.mobi](https://github.com/echoesworks/moqi.mobi),基于Backbone、RequireJS、Underscore、Mustache、Pure CSS。在随后的时间里,用React替换了View层,就有了[backbone-react](https://github.com/phodal/backbone-react)的练习。 + +技术同人一样,需要不断地往高一级前进。我们只需要不断地Re-Practise。 + +###领域与练习 + +说业务好像不太适合程序员的口味,那就领域吧。不同行业的人,如百度、阿里、腾讯,他们的领域核心是不一样的。 + +而领域本身也是相似的,这可以解释为什么互联网公司都喜欢互相挖人,而一般都不会去华为、中兴等非互联网领域挖人。出了这个领域,你可能连个毕业生都不如。领域、业务同技术一样是不断强化知识的一个过程。Ritchie先实现了BCPL语言,而后设计了C语言,而BCPL语言一开始是基于CPL语言。 + +领域本身也在不断进化。 + +这也是下一个值得提高的地方。 + +###其他 + +是时候写这个小结了。从不会写代码,到写代码是从0到1的过程,但是要从1到60都不是一件容易的事。无论是刷Github也好(不要是自动提交),或者是换工作也好,我们都在不断地练习。 + +而练习是要分成不同的几个步骤,不仅仅局限于技术: + +1. 编码 +2. 架构 +3. 设计 +4. 。。。 + +--- diff --git a/github-roam.mobi b/github-roam.mobi index 7a667bd..98ad1a3 100644 Binary files a/github-roam.mobi and b/github-roam.mobi differ diff --git a/github-roam.pdf b/github-roam.pdf index 0cdd71f..2f00f91 100644 Binary files a/github-roam.pdf and b/github-roam.pdf differ diff --git a/github-roam.rtf b/github-roam.rtf index fda37bd..2836e99 100644 --- a/github-roam.rtf +++ b/github-roam.rtf @@ -60,36 +60,9 @@ {\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u33719?\u24471?\u19968?\u20221?\u24037?\u20316?\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u36234?\u26469?\u36234?\u22810?\u30340?\u20154?\u22240?\u20026?Github\u33719?\u24471?\u24037?\u20316?\u65292?\u22240?\u20026?\u20182?\u20204?\u30340?\u20570?\u30340?\u19996?\u35199?\u27491?\u22909?\u31526?\u21512?\u19968?\u20123?\u20844?\u21496?\u30340?\u35201?\u27714?\u12290?\u37027?\u20040?\u65292?\u36825?\u20123?\u20844?\u21496?\u22312?\u23547?\u25214?\u20195?\u30721?\u30340?\u26102?\u20505?\u65292?\u23601?\u20250?\u35797?\u30528?\u36992?\u35831?\u20182?\u20204?\u12290?\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u22240?\u32780?\u65292?\u22312?Github\u23547?\u25214?\u21512?\u36866?\u30340?\u20505?\u36873?\u20154?\u65292?\u24050?\u32463?\u26159?\u19968?\u31181?\u36235?\u21183?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u25193?\u22823?\u20154?\u33033?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u25193?\u22823?\u20132?\u38469?\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u22914?\u26524?\u25105?\u20204?\u24819?\u21019?\u36896?\u20986?\u26356?\u22909?\u12289?\u24378?\u22823?\u22320?\u26694?\u26550?\u26102?\u65292?\u37027?\u20040?\u35748?\u35782?\u26356?\u22810?\u30340?\u20154?\u21487?\u33021?\u20250?\u24102?\u26469?\u26356?\u22810?\u30340?\u24110?\u21161?\u12290?\u26377?\u26102?\u20505?\u20250?\u21516?\u19978?\u38754?\u37027?\u19968?\u28857?\u19968?\u26679?\u30340?\u25928?\u26524?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs36 \u20171?\u32461?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 Github\par} -{\pard \ql \f0 \sa180 \li0 \fi0 Wiki\u30334?\u31185?\u19978?\u26159?\u36825?\u20040?\u35828?\u30340?\par} -{\pard \ql \f0 \sa180 \li720 \fi0 GitHub \u26159?\u19968?\u20010?\u20849?\u20139?\u34394?\u25311?\u20027?\u26426?\u26381?\u21153?\u65292?\u29992?\u20110?\u23384?\u25918?\u20351?\u29992?Git\u29256?\u26412?\u25511?\u21046?\u30340?\u36719?\u20214?\u20195?\u30721?\u21644?\u20869?\u23481?\u39033?\u30446?\u12290?\u23427?\u30001?GitHub\u20844?\u21496?\u65288?\u26366?\u31216?Logical Awesome\u65289?\u30340?\u24320?\u21457?\u32773?Chris Wanstrath\u12289?PJ Hyett\u21644?Tom Preston-Werner \u20351?\u29992?Ruby on Rails\u32534?\u20889?\u32780?\u25104?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u24403?\u28982?\u35753?\u25105?\u20204?\u30475?\u30475?\u23448?\u26041?\u30340?\u20171?\u32461?:\par} -{\pard \ql \f0 \sa180 \li720 \fi0 GitHub is the best place to share code with friends, co-workers, classmates, and complete strangers. Over eight million people use GitHub to build amazing things together.\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u23427?\u36824?\u26159?\u20160?\u20040??\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u32593?\u31449?\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u20813?\u36153?\u21338?\u23458?\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u31649?\u29702?\u37197?\u32622?\u25991?\u20214?\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u25910?\u38598?\u36164?\u26009?\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u31616?\u21382?\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u31649?\u29702?\u20195?\u30721?\u29255?\u27573?\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u25176?\u31649?\u32534?\u31243?\u29615?\u22659?\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u20889?\u20316?\sa180\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u31561?\u31561?\u12290?\u30475?\u19978?\u21435?\u20687?\u26159?\u22823?\u39184?\u65292?\u20294?\u26159?\u20320?\u36824?\u38656?\u35201?\u20102?\u35299?\u28857?\u20160?\u20040??\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u29256?\u26412?\u31649?\u29702?\u19982?\u36719?\u20214?\u37096?\u32626?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 jQuery{\super\chftn}{\*\footnote\chftn\~\plain\pard {\pard \ql \f0 \sa180 \li0 \fi0 jQuery\u26159?\u19968?\u22871?\u36328?\u27983?\u35272?\u22120?\u30340?JavaScript\u24211?\u65292?\u31616?\u21270?HTML\u19982?JavaScript\u20043?\u38388?\u30340?\u25805?\u20316?\u12290?\par} -}\u22312?\u21457?\u24067?\u29256?\u26412?{\f1 2.1.3}\u65292?\u19968?\u20849?\u26377?152\u20010?commit\u12290?\u25105?\u20204?\u21487?\u20197?\u30475?\u21040?\u22914?\u19979?\u30340?\u25552?\u20132?\u20449?\u24687?:\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Ajax: Always use script injection in globalEval \u8230? bbdfbb4\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Effects: Reintroduce use of requestAnimationFrame \u8230? 72119e0\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Effects: Improve raf logic \u8230? 708764f\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Build: Move test to appropriate module fbdbb6f\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Build: Update commitplease dev dependency\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u8230?\sa180\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 Github\u19982?Git\par} -{\pard \ql \f0 \sa180 \li720 \fi0 Git\u26159?\u19968?\u20010?\u20998?\u24067?\u24335?\u30340?\u29256?\u26412?\u25511?\u21046?\u31995?\u32479?\u65292?\u26368?\u21021?\u30001?Linus Torvalds\u32534?\u20889?\u65292?\u29992?\u20316?Linux\u20869?\u26680?\u20195?\u30721?\u30340?\u31649?\u29702?\u12290?\u22312?\u25512?\u20986?\u21518?\u65292?Git\u22312?\u20854?\u23427?\u39033?\u30446?\u20013?\u20063?\u21462?\u24471?\u20102?\u24456?\u22823?\u25104?\u21151?\u65292?\u23588?\u20854?\u26159?\u22312?Ruby\u31038?\u21306?\u20013?\u12290?\u30446?\u21069?\u65292?\u21253?\u25324?Rubinius\u12289?Merb\u21644?Bitcoin\u22312?\u20869?\u30340?\u24456?\u22810?\u30693?\u21517?\u39033?\u30446?\u37117?\u20351?\u29992?\u20102?Git\u12290?Git\u21516?\u26679?\u21487?\u20197?\u34987?\u35832?\u22914?Capistrano\u21644?Vlad the Deployer\u36825?\u26679?\u30340?\u37096?\u32626?\u24037?\u20855?\u25152?\u20351?\u29992?\u12290?\par} -{\pard \ql \f0 \sa180 \li720 \fi0 GitHub\u21487?\u20197?\u25176?\u31649?\u21508?\u31181?git\u24211?\u65292?\u24182?\u25552?\u20379?\u19968?\u20010?web\u30028?\u38754?\u65292?\u20294?\u19982?\u20854?\u23427?\u20687? SourceForge\u25110?Google Code\u36825?\u26679?\u30340?\u26381?\u21153?\u19981?\u21516?\u65292?GitHub\u30340?\u29420?\u29305?\u21334?\u28857?\u22312?\u20110?\u20174?\u21478?\u22806?\u19968?\u20010?\u39033?\u30446?\u36827?\u34892?\u20998?\u25903?\u30340?\u31616?\u26131?\u24615?\u12290?\u20026?\u19968?\u20010?\u39033?\u30446?\u36129?\u29486?\u20195?\u30721?\u38750?\u24120?\u31616?\u21333?\u65306?\u39318?\u20808?\u28857?\u20987?\u39033?\u30446?\u31449?\u28857?\u30340?\u8220"fork\u8221"\u30340?\u25353?\u38062?\u65292?\u28982?\u21518?\u23558?\u20195?\u30721?\u26816?\u20986?\u24182?\u23558?\u20462?\u25913?\u21152?\u20837?\u21040?\u21018?\u25165?\u20998?\u20986?\u30340?\u20195?\u30721?\u24211?\u20013?\u65292?\u26368?\u21518?\u36890?\u36807?\u20869?\u24314?\u30340?\u8220"pull request\u8221"\u26426?\u21046?\u21521?\u39033?\u30446?\u36127?\u36131?\u20154?\u30003?\u35831?\u20195?\u30721?\u21512?\u24182?\u12290?\u24050?\u32463?\u26377?\u20154?\u23558?GitHub\u31216?\u20026?\u20195?\u30721?\u29609?\u23478?\u30340?MySpace\u12290?\par} +{\pard \qc \f0 \sa180 \li0 \fi0 \emdash\emdash\emdash\emdash\emdash\par} {\pard \ql \f0 \sa180 \li0 \fi0 \b \fs36 Git\u22522?\u26412?\u30693?\u35782?\u19982?Github\u20351?\u29992?\par} {\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 Git\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u20174?\u19968?\u33324?\u24320?\u21457?\u32773?\u30340?\u35282?\u24230?\u26469?\u30475?\u65292?git\u26377?\u20197?\u19979?\u21151?\u33021?\u65306?\par} @@ -123,6 +96,32 @@ $ git config --global user.email "\u30005?\u23376?\u37038?\u31665?"\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u19979?\u38754?\u26159?\u28155?\u21152?\u20043?\u21518? \u30340?\par} {\pard \ql \f0 \sa180 \li0 \fi0 {\pict\pngblip\picw1244\pich406\picwgoal12520\pichgoal4080 89504e470d0a1a0a0000000d49484452000004dc000001960806000000a3379ebd00000c16694343504943432050726f66696c65000048899557075853c9169e5b5208092d100129a137417a95dea54a071b2109104a080941c58e2c2ab8165454b0a2ab208aae0590b520a25810017b5d2ca828eb62c186ca9b24803edfdbef7def7cdfdcfbe7cc3967fe73eecc640600457b964090852a0190cdcf134605fa3013129398a43f01027020070c80368b2d1278474686827f94f737a03594ab969258ff6cf75f4599c315b1014022214ee188d8d9101f0100d7640b847900103aa1de60569e4082df41ac2a840401209225384d86b524384586ada5363151be10fb0140a6b258c234001424f199f9ec3418474100b1359fc3e343bc1d620f763a8b03710fc413b2b3732056a4426c9af2439cb47f8b99321693c54a1bc3b25ca442f6e3890459ac39ff6739feb764678947c7d0878d9a2e0c8a92e40ceb569d991322c1903b729c9f121e01b10ac4e7791ca9bd04df491707c58ed8f7b345beb0668001000a382cbf1088612d51863833d67b04dbb284525f688f86f3f2826346708a30276a243e9acf15f9478fe2746e70e848cc65fcacf051bc359517100c319c69e89182f49878194fb4359f17170eb102c49da2cce89011fb0705e9bee1a33642719484b321c4ef52850151321b4c3d5b349a1766c5664939a843ec95971e1324f3c512b8a284d0516e1cae9fbf8c03c6e1f2634738637076f9448df8160bb22247ecb1addcacc028599db183a2fce851dfee3c38c16475c01e65b02647caf863ef05799131326e380e42812ff0034c20862d05e4800cc0ebe86fe887bf643d01800584200d7081e58866d4235edac387cf685000fe82880b44637e3ed25e2ec887faaf635ad9d312a44a7bf3a51e99e029c4d9b826ee81bbe1a1f0e9059b2dee8cbb8cfa3115474725fa13fd8841c400a2d9180f36649d059b10f0fe53f7dd93f094d0457844b84ee821dc0621b0970b739630e48f6516079e48a38cfc9ec92b14fec49c09c2400ff40b18c92e057af78ddae0c690b503ee83bb43fe903bcec03581256e0f33f1c63d616e0e50fb2343f1188befb5fc793c09bf1f731cd12b982b388cb04819e3ef3b66f57314df1f6ac481ef909f2db165d861ac0d3b8d5dc08e630d80899dc21ab176ec84048fcd8427d299303a5a94945b268cc31bb5b1aeb5eeb3fef21fa3b3461808a5df1be47167e74916846f8e608e9097969ec7f4863b329719cc675b4d60da5adb380020d9df65dbc75b8674df461817bfeb729b01702981cab4ef3a960100c79e02407fff5d67f0062eafd5009ce8648b85f9321d2e7910000528c295a10174e0bf8729ccc916380237e005fcc16410016240229801ab9e0eb221eb59601e580c8a4129580dd6830ab00dec04d5603f38041ac071701a9c03974027b80eeec2b9d10b5e8201f01e0c2108424268081dd140741123c402b1459c110fc41f0945a2904424194943f8881899872c414a9132a402d981d420bf23c790d3c805a40bb98d3c44fa9037c8671443a9a82aaa8d1aa3135167d41b0d4163d0e9681a9a8b16a045e84a74235a85ee43ebd1d3e825f43ada83be44073180c9630c4c0fb3c49c315f2c024bc2523121b6002bc1cab12aac0e6b82dffa2ad683f5639f70224ec799b8259c9f41782ccec673f105f80abc02afc6ebf156fc2afe101fc0bf1168042d8205c195104c4820a41166118a09e584dd84a384b37045f512de13894406d184e804d7662231833897b882b8857880d84cec223e260e9248240d9205c99d14416291f248c5a44da47da453a46e522fe923599eac4bb625079093c87c7221b99cbc977c92dc4d7e461e925392339273958b90e3c8cd915b25b74bae49ee8a5cafdc104599624271a7c45032288b291b297594b3947b94b7f2f2f2faf22ef253e479f28be437ca1f943f2fff50fe1355856a4ef5a54ea38aa92ba97ba8cdd4dbd4b7341acd98e6454ba2e5d156d26a6867680f681f15e80a560ac10a1c85850a950af50add0aaf14e5148d14bd1567281628962b1e56bca2d8af24a764ace4abc4525aa054a9744ce9a6d2a0325dd9463942395b7985f25ee50bcacf55482ac62afe2a1c9522959d2a67541ed331ba01dd97cea62fa1efa29fa5f7aa12554d54835533544b55f7ab76a80ea8a9a8d9abc5a9cd56ab543ba1d6c3c018c68c6046166315e310e306e3f338ed71dee3b8e3968fab1bd73dee83fa78752f75ae7a89fa01f5ebea9f35981afe1a991a6b341a34ee6be29ae69a533467696ed53cabd93f5e75bcdb78f6f892f187c6dfd142b5ccb5a2b4e66aedd46ad71ad4d6d10ed416686fd23ea3ddafc3d0f1d2c9d059a77352a74f97aeeba1cbd35da77b4af705538de9cdcc626e64b63207f4b4f482f4c47a3bf43af486f44df463f50bf50fe8df37a018381ba41aac3368311830d4350c339c67586b78c748cec8d928dd6883519bd1076313e378e3a5c60dc6cf4dd44d824d0a4c6a4dee99d24c3d4d734dab4caf9911cd9ccd32cdb698759aa3e60ee6e9e695e6572c500b470b9ec5168bae0984092e13f813aa26dcb4a45a7a5be65bd65a3eb46258855a155a3558bd9a68383169e29a896d13bf593b586759efb2be6ba36233d9a6d0a6c9e68dadb92ddbb6d2f69a1dcd2ec06ea15da3dd6b7b0b7baefd56fb5b0e74873087a50e2d0e5f1d9d1c858e758e7d4e864ec94e9b9d6e3aab3a473aaf703eef4270f17159e872dce593aba36b9eeb21d7bfdd2cdd32ddf6ba3d9f6432893b69d7a4c7eefaee2cf71dee3d1e4c8f648fed1e3d9e7a9e2ccf2acf475e065e1cafdd5ecfbccdbc33bcf779bff2b1f611fa1cf5f9e0ebea3bdfb7d90ff30bf42bf1ebf057f18ff5aff07f10a01f9016501b3010e8103837b03988101412b426e866b076303bb8267860b2d3e4f9935b43a821d12115218f42cd4385a14d6168d8e4b0b561f7c28dc2f9e10d11202238626dc4fd4893c8dcc83fa610a7444ea99cf234ca266a5e545b343d7a66f4dee8f7313e31ab62eec69ac68a635be214e3a6c5d5c47d88f78b2f8bef499898303fe152a266222fb13189941497b43b6970aaffd4f5537ba7394c2b9e7663bac9f4d9d32fccd09c9135e3c44cc599ac99879309c9f1c97b93bfb0225855acc194e094cd29036c5ff606f64b8e17671da78febce2de33e4b754f2d4b7d9ee69eb636ad2fdd33bd3cbd9fe7cbabe0bdce08cad896f1213322734fe670567cd6816c727672f631be0a3f93df9aa393333ba74b60212816f4e4bae6aecf1d108608778b10d17451639e2a3ceab48b4dc5bf881fe67be457e67f9c1537ebf06ce5d9fcd9ed73cce72c9ff3ac20a0e0b7b9f85cf6dc96797af316cf7b38df7bfe8e05c88294052d0b0d16162dec5d14b8a87a316571e6e2cb85d6856585ef96c42f692ad22e5a54f4f897c05f6a8b158a85c53797ba2dddb60c5fc65bd6b1dc6ef9a6e5df4a3825174bad4bcb4bbfac60afb8f8abcdaf1b7f1d5e99bab26395e3aaadab89abf9ab6facf15c535da65c5650f6786dd8dafa75cc7525ebdead9fb9fe42b97df9b60d940de20d3d1b4337366e32dcb47ad3978af48aeb953e9507366b6d5ebef9c316ce96eead5e5bebb6696f2bddf6793b6ffbad1d813beaab8cabca771277e6ef7cba2b6e57db6fcebfd5ecd6dc5dbafbeb1efe9e9eeaa8ead61aa79a9abd5a7b57d5a2b5e2dabe7dd3f675eef7dbdf586759b7e300e340e94170507cf0c5efc9bfdf381472a8e5b0f3e1ba234647361fa51f2da947eae7d40f34a437f4342636761d9b7caca5c9ade9e81f567fec39ae77bcf284da89552729278b4e0e9f2a3835d82c68ee3f9d76fa71cbcc96bb6712ce5c6b9dd2da7136e4ecf97301e7ceb479b79d3aef7efef805d70bc72e3a5f6cb8e478a9bedda1fde86587cb473b1c3beaaf385d69ec74e96cea9ad475b2dbb3fbf455bfabe7ae055fbb743dfc7ad78dd81bb76e4ebbd9738b73ebf9edacdbafefe4df19babbe81ee15ec97da5fbe50fb41e54fd69f6e7811ec79e130ffd1eb63f8a7e74f731fbf1cb27a2275f7a8b9ed29e963fd37d56f3dcf6f9f1be80bece17535ff4be14bc1cea2ffe4bf9afcdaf4c5f1df9dbebeff6818481ded7c2d7c36f56bcd578bbe79dfdbb96c1c8c107efb3df0f7d28f9a8f1b1fa93f3a7b6cff19f9f0dcdfa42fab2f1abd9d7a66f21dfee0d670f0f0b584296f42880c186a6a602f0660f00b444787680f7388a82ecfe25154476679422f04f587647938a23007bbc00885d0440283ca36c85cd08622a7c4b8edf315e00b5b31b6b23224ab5b395c5a2c25b0ce1e3f0f05b6d00484d007c150e0f0f6d191efeba0b92bd0d4073aeecde2711223ce36f97dcadc06583a5e067f917e94b6af9cfd2c7fc0000000970485973000016250000162501495224f00000019e69545874584d4c3a636f6d2e61646f62652e786d7000000000003c783a786d706d65746120786d6c6e733a783d2261646f62653a6e733a6d6574612f2220783a786d70746b3d22584d5020436f726520352e342e30223e0a2020203c7264663a52444620786d6c6e733a7264663d22687474703a2f2f7777772e77332e6f72672f313939392f30322f32322d7264662d73796e7461782d6e7323223e0a2020202020203c7264663a4465736372697074696f6e207264663a61626f75743d22220a202020202020202020202020786d6c6e733a657869663d22687474703a2f2f6e732e61646f62652e636f6d2f657869662f312e302f223e0a2020202020202020203c657869663a506978656c5844696d656e73696f6e3e313234343c2f657869663a506978656c5844696d656e73696f6e3e0a2020202020202020203c657869663a506978656c5944696d656e73696f6e3e3430363c2f657869663a506978656c5944696d656e73696f6e3e0a2020202020203c2f7264663a4465736372697074696f6e3e0a2020203c2f7264663a5244463e0a3c2f783a786d706d6574613e0a066a64a600004000494441547801ecbd095c54579a36fe401554b1af0216c822448c6030a2c615b7b8249a844ca271baed98d89a7162d269a767c2b47fbb8df3f9b383dff4673b8919273a764c4c37d12c748c714bd4a009268a8156a2288445404090bda0a00afeefadbab7ead64a55512cc6737e1475eeb96779cf73cebd75ee73dff3be6e007ae9c302438021c0106008300418020c018600438021c0106008300418020c018600438021e00204dc5d5007ab8221c0106008300418020c018600438021c0106008300418020c018600438021c010e01160841b9b0a0c018600438021c0106008300418020c018600438021c0106008300418020c011722c008371782c9aa6208300418020c018600438021c0106008300418020c018600438021c010600830c28dcd018600438021c0106008300418020c018600438021c0106008300418020c0186800b1160849b0bc16455310418020c018600438021c0106008300418020c018600438021c0106008300418e1764fcf8187e199f9253c1ebca741b8073b9f00bcbb0698760f769d75992130e4084462ced247911a39e482300118020c0186c05d86401c9e787625e6c4dd6562337119020c01860043e09e45407acff69c755c87807f0c24ebbf01764d47f7f7c30794d4f4b57866f10cdc17ad4090bf370c13550d654b2bea2aae22f7d867d8959d337c84be9b24090c0436af03b6ec06720757f0b9af8cc647cf7ba35bd50b0f09f07d7635e66f6d1c5c21586b0c812144c043e68bf8198fa1e7ebc3f8be6a0805614d330418020c81bb0c01995700921e7d0e9acfdfc1d9d2bb4c78262e438021c0106008dc7308b8518f7bc5bd96ef2d161fb2f83d8340133423b3d04d04c8508654f7786cf0be1ff112995e0c556f075a7bd4da6399bb17fcdc0cf49baaa71647951790a951e9f3b38823087463c187b710d4e24899fee58d9a56873f2e35106caa9b0a3cbbdbaf7f95b2d20c81bb120129fc43822063bae677e5e831a119020c81a144a01d8544ba9d61a4db500e026b9b21c01060083004fa4080116e7d00746f9d6e25d2edfd2122dda4c8f09a8374cf002de49ade665ce8fc019f7455c35c87cd1b6b3d12b0501e8f2877dd936a4d573efeada3048c2e7666c6aab180b4cc82ee3853d6f132a6845b7b591456eff171bc22568221f0934080916e3f8961649d600830048600810e149edc8733d787a069d624438021c01060083004ec4080bd57b703a47b278b1f24b77e0e0fcd60f73808bb7d1fe3c936350a3bce6166cb17d860916ce36453624ff7dfb1acf513ececa8a02320c27302def19b8af4c116fd27d19e1427d31568081e1e9d59b0fc16b62def181ec230291802038e801a2d0d8de8ec19f08658030c01860043e0278680179216acc6fc313fb16eb1ee300418020c0186c04f060146b8fd6486d2551de148b75fc043b783d35595daa8c71bbbfde621454253b1b71e075aff86355db536f21b9fcaeaba80f92db928a18755897b243288745b649c851dd98580145fa647a221ccaecc039669dae3d55893d282f8940a6c7f9c6d131e30a059c5c30c01355a1beea073d05f760c331898380c01860043c06104bc3076c11acc4f72b8202bc0106008300418020c8101476080b7944af1debc91f887384f18317bbd1a5c2ab88d1979ed767570e33405368ef302675e4cddde8a6559753846f1c5a347206bb63f3ca9f26e5507767e588ddf77da5525cbd42702edd044bc876e83b9b43e4b389361bdd762acf4a4ed843d55c86c3d8f6c672ad196f127e26e3e52688b696b571e167694395dd3bd5d5083799f5521b46ee050b0b6a574e2c25bc8986d6c4ceeda5771d87cc273e084b15173d4a47a6c7b9c6ccd75f9e0bdff52e0a4b168364ab253c3158184fbbad059e189ca61cbe54ae0171c0cf910dbd27466fcc63d9c8e248f7a7c9b7b1e154da23736f2043cfec41478f5744350e27377f780aa2e1fd9a77f70a6a9615d262421150f8e0e4157c30d7c93570a1112c35a6eabe3e722a9071a17dfb89958322d9a16838df8eef051940ef05a306ee6e39811ed4be8b4e1fcc79fa27880db73d130fcc4ab51e1fa99bd385938fcbb99be613b9e7e289a7e8fcee2f55777317328c37fc898840c01860043c0690406904ef1c4d72b4661a225d34c6e124c9c1081464503820e37f5297c98afa7966ce332aa5b3bb5649bb690d45d6f6cda53e6891103d89b3e85fcc965f081a4e617b457931c2948bb07a677ee63b18c23dbd08e836d96c8362956798cc302cf08041335ace168dbde365cedfe116fd37653637b6d2d58d77a118703a620d433055b5465d82c3cdd0d8cf43fd15a2538b5349248b76a22dd8cfca90c5c7fd56e4822470aa6641bd7e0d8d9a5d8822122dd3c7a2093d024f2ea44d0d0707e0387f93d58f3c447ab9131a315680ac58bff37040d7d61e0df85f5cfd42155d1c97b4996a2be2200873e0a42ee8091af1ab4de21638ac14144ba71efc3ee92e09b88a4085fc8e08b99936ee32f5f141909eee1e10e0f3a2b0e1e610a04e207f4bd0210971aee7105a64ebd1f419c98616168afbc89bcdabb8072eb63fcfa8ffa20e022f1800767d3953c007b0dc25a50e241f3996bafbb15358c6cebff1471490d328c99b3866afa8448b73eeff02e69d1b94a5661d5f25988e00ac7c4e08515c7f16a96f18ad6b97a59298600438021c010188e08d06a6160c29f162b8cc8b6dad2db58f94115be6e31b020524e35cd8ea0123952edd658270186add2821d7d1c9e5938d28d6cba757b0c88785bbc12b58f60959d17b1c37458dd1438e0f704d679df8778a91f82247e0895f820541a8e595ed3f09eff6cac379b3e37f1bf1df524ab14b3bdc6da9439559284c37e4b712ee049ec967adbcc3b942787464e8e7453a04e31380ffc6a7463ca5835aa6ef9a3aa493cd76428b94584acefd0efb31b20ca7928a7d63dd5b67752237ec3916d5c08acc7e6e57d3c21c7b6e0ed8c52a4c5b6c3c7530399f6a34264421d7e9df123d64f30fc8ee92a75e57f1de9d6a136bd29bab20dd7d615373199a7d37a5074b9c4b8f2ce621cf9ec244e9d3a85a3474fa2a48d3fdda3b96bb4bf8c3b64ffd1dda2a86873fcecefaedd39edc545ae9880c79f5a869fadfc1966c671da64f685c1f9c518c87b807dfd64b92c21c0916e4f61714a88a593c3324dbceab12560eaaa6d387ce24b9ccb3d87ddebd36c651dd273778b9c430a126b9c21c010b8a71030a32c5cd37b3916471a9654ad35f5883dd5828fda3af1f0a14a5c264335b7bb34f8e21c6dd7626198232087a476004837b7584c9372afa1ebf1be8a23c9c4211c87fca721ded6ec740bc54abfd9664e12b2bbfe8e127a4e95494763830dbe68942414a1ee32d29c54a148c3b95d189e61e8e494e00c91e68341ba49691efcf9cf0afccb9b23b1e9b49f7e20f23f89c1c637a3b0f9632f7d1a8b30041c46c0bf03afffac8e6878c30d253ce526d6275921b4641df8afb5b7a0f3972cc1956f1578eb50142edc1434b4ba91b6ac1ab385438705b2a7400fda1aefe0ae20dda4714889d65da33d2d4528b0a0d1d5d9548beaea6a3434d4e2f61dde218a6138ec01e42ec9538df35f5f414d5d1dcaae7c8d4b16b018761db163fcfa2fb373b8f88484c1df4b4657ae0a35b704a6b6ffd2b01a7eea0878207ee67026ddf663ff81d328292f47c1e903d865a776dba8d1a311eae74deb56258acee70cdb41bc5be41cb60032c118020c819f1c0203a378efeb01b1c3c31b37c4b6da489be5fdb2010172409f7f0644e2bba5521de9e616f63eba3c5da3eb93265580a3561a5537ccecb6ad953f882811344a4d053e5616e1323cb1543e09b33c847dcaa1f8a53c1cd99d62270b8d38d9d58a78991f52a5feb4ddc3f2deaf38d29ad386de3bc8b1f2dc2d1261c8a2432ba78e744bfba21a1115830352b087a11db937a7a73030b7284707d4de37d08ed6cbf20f34021afc767d05c2b5cd8835527a90f6cc2d5cfabd02b96622b8a3ad0b08f7f4c0e13da371a04c97e1ab7c1fccfe874abc98cafd9eb563de431a7c956378b164564dbf1374a45b6f5030bca536de1ef4bb9dfe55a098389e3692ea42697e61df5a6b030959ffbae292d20da5f9f8a2d425550d4a250e8f9f935239834b50a88ef686ea362afb504a158bf5139f62e2aeb2b8550474a4dba3d28ff079def0db5e9abd6b23b2775915dee289b89811ba74650572f22c66191689778b9cc3022c2604438021704f2030304fb39dbd268b6ef1838e0d5c7de5f86466086686c9b446a37b7b7ad1d2a444bed2f0106ebd742fba83fdf1edc220dce72781073d9f7477ab71f14a1d161618afd4568d0ec02f12687ba25b37f24a9bf1cbebf474250a8b23fdf0e2585f444ad5c8b7701e724ffcefa4602c8c96c3971ae21e85d46a0dcaab5b71e0fb26ec683296774ca8175e1be78f71be6e28aa6ac5a12629364d0a428caf3bb8e7a8aeee6e9cbf548725572d6f8a5d1ce98fff98168c44cacf99f5e9eded85b25989a3255d98382600b17eeee8d568f0fd856accb9ea1a424c04071f95c3bdee597886fd8548375e43c13c93dd29a91e819497b61f759b5ae70fc26cad5d37beaa9e12cc6fcbd7d79ba33c862d3e4f60a1563b0e64af2d0e6944b889dff5edefaec15a22dc467ad0e24444b825b88fc20b9e4150d35626853bbf24770ba4bc0f60a51ba76e214187e6476c24a3cb9683146b3d9331df330cb25e15d46e64f85b730b9f751622cb78c84d8acbb0def37eccf20c850faf65d3d9db8202d50fd8aa362704fb2fa749f3fd3a9420e7e148e848373bafe37eb5377085a3925af1fcc37730cadb1d9d74bd4a3b7c68ab5b30ca42dbb17c6a3346066a509a13853fe498de16dd41be5a1042e55f9cdb8c11b4bd504a5e757f2c08c37f9e701dcd1f35a1154f8c56e37651000e16f660e5cfea3125a21b6a8d1bd44a39be3a138c2337b8796a25f87763e5c34d7860948aa729dd719bb6e49e39e78fdc6aee2e6539388f4b2f66cf6bc2a2f16d90aba4501341da51e387bf7d16804be6d35ad4780f162c6cc6dcfbdbe12bd15d389dd4bf8be7837030df147b513127a2cbd7966382960d221d190d67938f2ad148a0967063d88a975e6a46ee9bfc43bd50bf4a868daf8fc68204379c2c131275df5f7d1c8e45137e443cd5332a9eeed73903bd1dbd07ed8df4b01814e25ad2cd57812913c72150ee8e9e6e256e16e5a3a85aa441240d41c228a0b8b4af07d570a424d08b0d2e7494e1fb0ae3df5add89fefe97227adc448c8d8b20f3069de8917ba0fb4e152e5fcc47adade6e42118ff4012a246f8f177dd1eb28f770bc557afa05aecd441249eaf2211895101e8ba7d1d974b9b109e3001e34647c24febc582b6fad694e2fbefccedce8550be31c19e64675408127435ff88fc22f1cb20e19cee5b1a128de4d80848ba6e23ef722902a3c76352521cbcc9de9dbb7b376aaf5e44ae8df2be8a7198fce01804cb7bd0adf1803b915257bebb8446ff383c38360e01f4e2f3f6dfbf444e912d2b79f68f9f33ed39870b694cc60743d3a14110ad6db4c12318935253d125e12e60c2f6ce75e4175b9b9b3de8a27921277ca6a5c4c1cf83b071ef417dc9459cbb5cadab4ff43f246e3ce24778a1e34e092e5ba8533f27ac9ca70b886a0b44eadc69181520434f0f8d87f20eae7d7f1ea50daeb5dfa797c5c1f929745791984af33902f4134873b507ca3b95f8fb85cbb029a623d711e51d37361684269abbbc303a2112ded4d29d8aef91935f87f1690b101f4cbf9984d9cdcb5fd3fadbd6dc14a4eecfb707e2a63e8d47f119916e55fda9c8ac6cdaaa4d589d3e1d0a1f0d546ada2dd15e8193efbf8bd2c8f9787ace4484513f2b4efc116b328febcba66fd886f9a40d6c981552facdfc1a1b33b3f4794c2309e9ebf1c2ec18a85bd45084f0eb5699026bb76fc74a9adbdc4bc98e8a2fb17147b669d17e1ea762fd969598f5402c7cf8f576677b2d0abe3c84ad7b0c7d121a193a390509d837438021c01018be08b8f4e966e3b491d890202783b56eb4243284093362d1329deccb922db68e8e4efcf7df6e9979137dfafe117867babf5139b8bb2124d417f30d55d98849b07601fff687cf252523bab32645e29a7735c6e61a48a207c704634624b790f342e248771cba5e6b70c4403f5ebf9b1f8689bc4acb18a9ca88905b971c86cc87fc48d7ca38c8c881c3b8d1c1d8469f7fbc5889290506f2ecc549117852db1e9038428ec7a56274e8e752e28979d3a370c5bb12c97986725c0b1ba728f0bbf1baed3a8616dde01fec8b67c46a84ee52a4c6c8411e050cd95c1ea3856bddcfe039824837da76d5afa07dceee464daf61e9a1adcf3d1823c5dc807b3c4ef8298868d42dbc35bd3db458144d5b377f8ca7fc465a6a3d2db401850b86c71fee4841db4c67c942b9a828f820457e9fe1584dcc8a25c28d6cca65f94d438c5e363f5d1949005ef14cc08cf69378596d616baa7b2cd98a4b8569ab20fdbe286924e6aacbf0467b1ec44ba57ec969e8890b63ee44ba2930f3743514a5034bbaf5735659edf3ecc7abf1e243bc0d2fcaa5a558025578762d19a81785e4449a3966841b30e567d57836c1509e2b1232bb0cffcf3706fff2315d772e089327d792cd309ab3a9f578b8ab0701463799763cfb5c0366e7c5e0550bed4d9c771bbf9e7fc7c42c3d1019d68a092935586cc5dbabd3b8f87762dbafca116f7a6b0a69c7d8a4dbf8e69338ecbc687c9fd34214aac47ffdea26c24d4f85281133ea0e16cf0cc51ff784a0d0f836e814ba131fbd85a76275f7c3f2afa37132b0066b923ad17c4d813fb7ddc1af1f6a8774640db63f2ac7ab9f9b10a72a0f2b9eeedcd1c1bd9fa17e9bdcb99c92d1be42bd3ad22d904837ee4d523f8354918a27e7dd6f345722226391507601c7cf1551bf023173e9238825a23231f8148ee4999314820821e35310c273225505f9b0c57f09651cfa964763e16369a077707ce0c93dff2044c426a2e4eb23c82d1511857caef071699833319a1c35188720222ea3e393515370125f5cae353e494791e326e0fe082a45e45e14fdee86f81bd7e04fed468e89434ed61154882640e8e871880fe381106aedf141311166e6d2e932c43f380dc95c5b2a7f68c8e668f29810a1a4f6db77f202047a9dc4d17c7339a3531f41dafd86fcdacbd0371a531f8936aa236a5438608370b377fc9c6dcf195ce4e1f7e1fe316146fd80bb2f62efbfdf9056d76c83700362673d82a991067cb882be29f310e0958323df5518eaa15868fc388ce1c681c6abb4f8b4c978f962f2acc988e44ed7b55924e4208bc5929fc592c30651b5fefe98f1482ce2adcc33514e87a2cece4fd08e82b94be720925eda8a03773d44c68fc1d59ce3c8ab309fa98e5e47be310f62627284b8096ddc37791e56261b27df3f6329bc341fe2dc8090f4e2b6a444ba2dc56392cf70f8bb2af109a7e36bb71fc2ea5951faf2dad5605012966764ead3b8c8d8f113e8ff717d5ae24369981463f2e3a709421a116e39fa5cc61145f22ccc9a1a639c280942caac5986b491dc3d42bc8a349c722a96b60187b72d27bbc926a5434311b53a0973172ec51bbf7d19d9c586f34322a7a17916630830041802c31a01e35fdf7e8a1ae04b3ecac811828488327170a7630f52cd92905688afaf97b937d1c000ec3122db7a5151d38ed236471eee0d6d2a3bd4f4eece1062c6297062b4a1ab9ca6833e88a2425ab788a7e93072d2e08ec792c5645b2fd96a69c7a56a95517be32729f0bf81426db49e16b72722dbda95c672c64f88c40791867e8ca105a311d9d6d98913575ad168227357631b0e7c558de7bf3026040c12b83246a4db6d22dd54da25be9315cb102de1ca3721dfa42f9c7f0c11fcdab89fbb17bcdd64da0f17375e037822c800994e9ede3adca47abc252148154998a3fe1185ea7a949057317de86d4779772dca29bd5c7d87ce9b2f3a49bd841c3818c8b6faee1b38d0968b23647b4e27ab14937cd2b0de540e7aa47dc34720dbd428efba867d6d5f619ff206118d3a09bca5b178d96b945e1c2ee2bc9c46d5b8f8c01de7e62a501d67b88e5cd580883e45729ceb2937ce60be9e6c6bf3c74787e2f0a7cfc2d0209a68aa9b6178976cc66d7e57d8ae2cee9d0a6379b2ade16608be29f2d3932d91a9e5f8d749a693585cd6fe78975a404247b6b5d705e3f05711b8724bcf362086dafbdd3491e0daea7b30eb21816c93a0a4280c1f7d360a870b02f4728e9d5d81950a63599cc7a51b5b3618c8b6dae270ecfd4b0c3ecaf3e7dbd360fa939558c0732386567bf0caf302d946721646e0ad77e2f0d6f17054f1c3ee33b21ebf79c63573206574bbb669d5cd915a42cd53a6bbe8a43ebdc8fd3412df34e9248b186d7f7bde139a90ccdffa6e9618c6c5d0c7818a11e9d6d40065377fe370b619b2d7b5544fb6a9505755830e7efa06c54ec68a679ec2b29f2dd5926d5c133da4396d3d04e281713c31d25d85ef8b2ddd3bad97eefb4c081e7ec240b6b5545dc5d7a77270e97a1dff7b4b5bc6663c8c3833be5b8ed1f70b645b37ea2aaee3d2f9f32828a9d1ff4e47a4ccc178d16fb4208b46c3b3681efe7ab24dd55885ab055750d120cc130f93df20a0e4bb5c5ab3d4a0aaa2865cc0f0c12676f43b27b4258bd0936d2d356528a968d0cb19923c9fbce40af7055dbd52c51403d9d651874b39e490e2fc7588974bdd75d7c9965c0e3e3f53244863e1dbbef1eb4f7bcee0d2567103156403afa646a426dbdd863ac2b78ed2eb1a1ae8bcadb9e685089e6c6bab33c633684c1a395f309e30fa71b032d585e55b3769c65b0b1cd9d6d150868282aba869d1cf0044a42cc01493f1b356873de97a591d9a9f741d3d354f4fb675b7d5e1ea95aba86a14de6a78e1feb4472c5c0f4e5c4746739eb4f82f5c275d3751e8a8c2850b25fa6b443e18ee64b5cd9396ec6422dda6448a84712e9ab06a87816c6b2dc7917d3bb1fbe079348aa687aafc3c0e1ed887fff35aa651231ffdf9af282c2941516109ff52984eab45ccbd516edd414ece591492adb792927ac3595523caa99e724a2fafac44e18fb58673fd8ea5e28d7f17c83615ca0b4e63dfce9dd8977d1635fc3b65efa84978f9dfd71bb534f8721a35cf0e18020c0186c0b046c07825d74f51334e57a286b6593e30c207ff90ecabd702ab2d6bc2697abaf5a2ed43b5f52a1c355a2bb9e1bd59c1302c817af0e16765f845adeec122735e0c7e1567af981a7cfa45259e29576331bd21fd6416af8544fd0a947144417f1f8c7bb0e1743d3e99ee0b594f17761dbf8d1dfc2bfd31e18138b734446b978cd3e59bc33d959d335a6a88d055e3c36337f18baa1e3c7d7f38dea3fa74c10d71fed4d72add82edc5f106f94186fdd7bd7f0bfbb98c859da87b6604df16f07dfe6dacfdb1bf7de345b0eb8b23dd56c233f40374c9458b62bbca72995468d06ab679e8dca2db28c7916b2aca2be535dcb45949cb4d4554176d1c86ccad138d66cfa0def021f24ba369479eb8ee9e9b58d37e9352a4d84d1e5053684a28d5d7b0425926ce65164ff77c00f13c9956d2710a2bbb1a757934d538aa4ec54e9f5892c5070f7b8663974ab4f0718b42a2c04f698ab1a2a3902f578f3ddd45d8eef3286649db91d5c1c9240a4eca29aa6180a21ce91689e9d26a44dd10ad2efbd95a7d034fa1ca3af1c4584147c69dbc96f2e9fdac7fd17461bc686bf61f4642370a9ec8bd21c5be0dd53472a4187a3100472e0a8365a9410f7c7928066fe7eb648a9a761b7f5caad38ef3f3369e80dee4d9f2378b5b21b509512f5aab82f19fa69a557cd3cdc55178e1cf3cf977220049f3eaf0fbf9ba7e24cf6f40426e180c2f97ddb1e7c391885cd4854fde0d45ae7049e67ae3e3efbdf0e67335d4470da6ccecc48183863badb3b8242dacc7585efbeeda57a3b1f904a97f70a17024befcd113ffb5ac9eaeb04e3c324785939f8a4829725e9024901c0d23b0f12f01ba72373cc9169a3f5e7889b68f8f9463ff0774ef7441f8f39bf1f831ad035516b77dba61e7ffc4a12209f824d74895d046cb2a6c7a4278e8f146ceb7ae999f361a3439a523dd7a0382c973aaadb96a524c7ca86e446d63377c83d4b8f4d947f881231dc9f3f3dca50be8819ce21e5e7acdb7c692af2d6a5709d5f9263ca8d5fce18eeb7ef83bbd3e716d08199f0a4ef1880b3505474923ad4177505d811f6ba6e11fd2e2e997d617e392142835d2c2ebc4857305089c184006c9cfa15ab8a51417e3ea8f13f0e402cea32a6d352352ee726e85ae4e2bffebae9ec209a1eecbf948989b8ee4ee02949a3c23ab9b4a91c31b6e8b4e7b0a69b46dccb1d0812ba78e209f17f66ae25c2c9dcc9103eeb4ad921b1803baf1e3627455f7d4e1e84727a043a516d9356d58963e513b7eb76efc9db6030b1db72c89bde3d79ff69cc2a58db03c514a424b31f3a91588252855755770e2b4e18e67b947e25415696d1dd56b6d5d4e4843fad4686d06b9a7bdeb49717db6e36d1517909da323372f5fce43f49425481b13a42d3466520a2e7d9aa77ff9210d49c4acd45190d85cb291d983fa2b38976f5dbb94abdc9ef9a99836437f1db5959d47f6391ec7fc3c28262cc43cdab5416ea6307eda785c3e7a592bb3ee5f7faea31e5c3ff5392e57abd1352a069323b8df810e5c3a7e1a456d72843f108f684a0a088f200d4c47c655249ec3518e747b1c4f488fe16fdf70f3cbb9f0d48207740535e5c85cb882d72bcbc2febc4df83273096da1a5adf8670f60c72ea3d5a7b64cf1f15d58431f2eacdd7b02ab93fcb4719bff72a80c7d8004ec3ef11e52a888b2ec24563cb7c36631a74fa63e8c44ddd4259f66df60c5ba8d7c5559d893998aed877662565423b25ed7f543dfce60cba96f984518020c0186c0f047c0b52b0f7a53b3e34762d3688db04844b855dd6cc6f3d74d56a87a6ca47473373c3c3456dcd6936d5c968c9c3a3c1da780897286beb43872e99b2a2dd9c6a51dbbde846bd3fd30967f260ae7f6a45cb52683b816dbf1ebb5cd48faa4d92cd3f5da265c680fc13cfe1939d8d73ab4df9ed6916d5c251f5e6dc26b0ff96a6d0271c71e9e0635299548bbae9516d35ab28dcbd4a6c40fb4967e887f76f6d61a26b2b97ae34ab93848e05eff043c14efa1db307c76b7d1decbb1113e18c595b5217a4de7293c496ff38c4310367906e04277198e1b731dba6c6e015aa71dea5ec39b66e3f29e90eb61eeeba1d99b1c35846a8b6b34370c641b5f619e3a0fc7d4515842362e82a444208809b7de2e2206b9cda31424a3b08d88aa7df4c0ab5b5eaaf0aaf20cd6ba2bb187afcbfccb1139cd4b0f4c8a1bbe99158145955508b0c627f7d5b0876ec0d54d01f8f050383e297383b742894dab6fc2e0dc588ea20afd20f555a3cdf35d6add046dbfe9cf936d7cf67a6fdca03e4ca0073ab9372793f5897ce578b49e6ce34a57e606a2e4913bdaeb76445417a5181eb083a35b913ccafc1ec1951307b5847b90161152c2c9ae00fc8740b6f16985a7c270785c0b1e1b49d78d571b268612e126703f944779c31fafde102a307c2b6f10e9d056038ed30f0c3066009dc34583c7a7e8183d7543b8816ce39b6cc80fc1dfa636e2a9511a842a385c44fd53d14324a56869b690263c3fc11b1fe47b90bf352eb8e3ed776351447b4dbf12142fb4e9fdf9e746449e0d1b6b2d9e44b6d95b7f377ef7db32c40b44e397112e94d35e19b87c9cfdce2678840643f453e140054dc83df2012ed0cf935eb1425d8bd3d95964272d05b1a1f403d6d389ea1b3fa0b8d6e8cd98491b72daaacc1142147a1a50209061ba1417fcf745d2589df65c4fcb5503d9c6d7dc59918bfcba684c0cf3806f4820a51a1313eadacb387ad45c0c756d3e2a3b92b55ba1bd7c0cd7ac794ea2072ace1bc8363e43f1e96c11d16da914e0d9d74f8a856215b4355620dbb8d34d453fa0213552bb5dd7dda4420daf72a5aa2be7c936bec2b60ad4aa266a890c4f4f6e71608b70b37ffc5cd39e33b8c80ddb34b5b6dbf87edaf15575e1a49e6ce3b2b71517a26e4a34b85dbfbe234610c9636b6edbd180380bd98cfd8227db84e48aefbe42454cba762ce01f8b58791e8af9e190878ea2adfe114256abdf3deee6f35a9cd9bef94936fae27855635515be10c836bea2eafc53b81ebd1c63fcc96e60c81824ca2fa348346d9cbf8e5468bea35b6f0bf387737ca1dbb56a581b9bce6d71ff0626ee8ea807e76356f95e9c7572776917d97fe582b2ec7be34d9c393928552e4112fde4c87d756b465b7db0f18860a598426bdb5a7b52caff1059c9d9afe4e636c3ba357402b6ad4dc7be3dc27d2f0fafbefe9f587bdf4decd12d642d343548725a689925310418020c81e18a80e197cfa5121a3f2873db49ad06729410cbbfc5e6f294968b7eedb904351957a524854131834bb510d4b8502a26587ad0cc1df28b5f2f2feb0fd3162aeb23c90dab227db0841c2f2406792088b4e7dce881917b5611825812214df7ada185b59861d2a09e327346b8b9103b921e500bb807557a5415e1e617e683a7d18a0fb913722f8c11e1e1e1c4029faba6bfa127e4b853641bd76e1b6908725454ac8456273dbc9e3a77a2f7162a7a2720899f3211b20958db751a7bf4c49a14db68fbe65c22b89678a5e2773df5d84fdb340de7c904966484f62d6323115ed6826e2968edace57489240e877cb8577fe2b9d4438b20ddb14c128a45b82eb2d8711397d41379070f3e98eb330f73e93d774d7735ceab8a90a969c41e630ec4ac6167e434abc4c509a9dfdd769e6c23593ac890ff975f05e16dadc301359e7ffe16162788e600e569280c7519a1e129d55d6f3e8a567a474c7695043cc80e591cffcced61f34e28c3153363feee68e5a61747d6f988af676e6b9117caeb68e434e2792234aafbe69c2e9c3dc6116e168295724769cbe6634b39f2b90781417441d49bde577b914436ca926254e400a21bfe742be950756332df8ce95cea2f2ed2907a6c5f478ca5547f71d2fdda0df250ddb12cbc83f0f633e04ddbd0bfbb29c16344c67164c0e2653fd24782aab2409cfd26109f147ae02b413bcf022c439614da81edeb2b10c33fe334148ec2e653a21fad41164cee1fe024d96610544fb6e993d4a8f8210f15fa63db11a9e241ade61197abb1a800b5b6b3f7ebacbb7f021e591842bfe5a21f3adabae611a03bf6080a27ab73e68e0c380da910c5288487059303011f90af0572a4e4a397dbf8aa3515b10d97bed1df294c4fbaf85885da5b26eb1ef282db4eeb8210ba8683c2e9e15d446872a639b8200b1945fd2e32e8bec9233182f27341f009a43b32ffefc8f8b9a23d7309ec4be9e3e7d14a251da82e376804ea32a9d0c92dca081f0f727ae5d26071ab691bca6eb5219a338448eb05b1529dbab51e0d8d24083957b01638a719c579d7ad9da6743be7a76f2004b36d8d44a29bd38c6afc50740b63786d4a89c5df4167ae239aa3a675f535296df4d695a76e17e63a4db6717278f26661bca3c6d37a4f64a12d751aa2f9f73bd201fa7930fd0d77252efaba8a77e152f9322c8ce16e264198bb3a833ebf464dc9359c3ff90932f767638fb9f29ebe38171914398d5a64070c0186004360782360fa9338f8d2d29d597c73b649ced9948e1e3e07a137d69c26d8144d7c92bcac9d335d5b8bce8b89ba73959df82722f6b4c1c307ffbb7c24965e5361d68341f43328040d2e558a4b09e903fbdd1372105d5eba2d75ceb474babb01abc993688247143d058917964af2fa598f242ffe0da15b3056fb2fc5439dd751d8e3415a7d6310e36e203224dcc253f4bccfc9f2307903e542899907546db263ffdcc2a0d0f31a527274c0cb65a916f1b657fefce6f663e8f69a8525a491a70b52dade118d74ee43f6e32e767c8b972d3969b054ff30489bf25d3562af88af58c7856ab8e187b76f0051931af11f4fd669b7748a6b51d585e1777fb1ad7d22cedf57fc72893756c492c69967337eff2feef8e07030ca7c94f8e513b774da56b4bdec876bb66e1ef460e4c0335a4361005ea58fd341c42b18d5a15725d5209623ad684bac10ac394d10ce5bfa760a177f1546e98746438e0e6c306416f64c1dd83d1a5dcf56e3a9c4765e240d22631b687ce8d325c737a715d89933404f2b9640e82b8d73f2b081eccef1f9caf3a2c969851e80be4abbfcbc977f087ce905cfd00629521e8ce34568c1e5826ad78b238f4030f7bca70d1e0809d369bb092946df62228e3f61cdd8bb51395b07aa3bb8ddbfdb9cadda8dcfd1fddf96b755535aa6b69a48f78808628e48d3f8f1b9c8fbf67b34ca4661eab4145ecf56855bd5a68493b849c7c6afffed89db1e8cb805b267209bb57239d6d5d06f8e967033b64bdb599d8fa3f4e957b0777ed21c16e68fb243b8e71ab7ac264766423025dcfa7d1d09150f93efdac293f8f08c78bde9b860f9d76e213d3e9ec8db78fcf6f03b18f7fe5f51ea371dab7ebe9037f3a244d185e38e573c8c4a6c5ef11b74efdd842549749fd1061922e253a8dff479fe155c3cfa365ececc1e4612335118020c0186c0f046c0f0c436547292046221ba45db28874a246bedae4b1d891db40dca107ad1d2d2855bed6aeddbd3a0606f44fbead9194336718cfa67fe96519cc110fff04a0d9e4888c7d3f4729f0b9e7ede7866b2b87de05afe2dfcd2d6da5a57d4a5fffb4bb671c21493fd8b4ac422ca230119eed79129ac0ae95c76d705ccf75c8449fc9b7ceeb574927c3c92cc7ad18e6cf2f069f4b2cd2d16f33db827b53bf85aed82bd69bd1d5af57a6dd39a12eceb6cb0c2bd702c491b4ab419c5ff54d8daf105b676fa63bd472ca67946913623ffc0eee68349def3b05779146bba8d35bcc4350c97b82bc836a12f51931af0c727eb8543fedb03f95f29f0871322f54d931cce1c169f8ac0b1f1cd584ccfecb29046f2f6c969891942c9d7513830009c81a105d7c75a5b0cf719ce1b67c60c81f8e234c6025052eb89e64eca430f5ca3c6d7614298b9ae8853b8a824e8e4aae2a63b11a36f7d2537d2de30f49458707202610eab3b0ebe1b8583fe6a2c98d48699e484606c087f9d7a7662faa21fe1dd9d803fe45a631d0d2d0c7cac0b5bd61bc8b66b5fc5d1165a079857170b383cc836ea5448b2de0c4447d965236f9d2eeb32797ceee67e133832a3f13a722edf36527033b443f344d36af49b1a4e76a91668ed5271b9bad158730bb71b5bc8bb2c4d5cfa0b8a1b8768d24cb71906531b8734a41ce1f69a7ef80257e2562299deba79f84762ea8248a3aed45dc9c1655b6b0207c7afdfed194977ef1c88d7b52eefb513f3d3ea1d5544588b7f255c721db9bce3ce57e80ab28d6bfdf8d695989d9a8bb9c445c94213b1fc95d78c842a3fbd079bef6ebe8dfa9387ad6b9ec4d6d44558ffc87c4c7b6802e243b5c651a8d34198949e81bd5d77b066478e51dfd901438021c010600858466040d704969b3449253dff3bf42befc7af06e262e861fbba9892e23c9c9a9471e5a129c1279559f07ac63528c58ab122b2abbb03fff7e36afc5e24ea074f8d46745fb239d41729822d3cdff5d2b36c477b0719bfadc32fab1c59aaf7255cdfe75d41b6e95aa9c767aa66ac9305e011af31c86c17bf7554e2e5b6cfb1c94833cc58364d0f399068fbc6682b299723c32b59fb96b19eb66c661917b172245e625acad24a0e1e48a180b80b654f2bf6a86f5acad4775a6f0b7675fd5dfb819b3fb6c8a762a1a76e019340249cb1969fa5eafa92d35219d7a54df98634dbaeb96aae75e3c5c74dc8b6b62064febf305c7201476ade6b0dfcf5d7913b545dbadd69ed4dbec8391e8603850e5d94e6d5bb3a456320d3c4557b790bf87be05a9920b3068b26f2645b971ff6ee52e0a409b42f4ca81557238a3b818b4a8adb845f2471c6ed4a727690efa4b6578b14274f056a3f20f26d65fa2d3c96a8239def4fa1ef5c7e712f9276b0a32bd755e89d43547d1b3bb4645b0069b639eb28c1c5c08d4bbd8fdf544f86fe2f96bab876be3a750b5a49713b88de9da8e877a2a2c2de767c91781f31eb5c202deaaf8f1c256fe7ba43e17f6ac278213a3cbead68485917ce175e7abeb087b6c9eaee67aab67a5cbff80d19aa37e9b049458e8f5fffda3369deb943da423ce0c1d2d650e90891a6a51509442f0bc539224605eb0f85bbb53e61b022b4c217a657c8e838b25d27768aa013c2274074af157e62c819c95d771dd9c0b4f6efa4d97656bcc6b491b9cf5369f0d36bdf6ae8fe444f0784b3b2b112b91fbe85cdfb07818452d38ff06084bce3d8c57db8b6887cdbf2cf2f616152a8b6e58487d2e8bb8fbe0e969c5a89d83f8600438021307c11187ac28d6ec815a4d11ec3ef9c0c8a0e41a6bc0d19bc96fbe2fb433051bfb8740d9032b2b8a60f640f6d3199d938c6af519fbecf07bc42993e8b3622971bd94d43639b11d93686dcd03f1a28aad7b8b45347632203314fbf1652e3bff6972343bf2072aaca7e14d2a027e4a37e6d23356d7c7f673e96ca66d336cdf1d82badc41ad26a30045e334c158a0ca90251eec224e8c68fdd65d8a111347a0c2552a59369ab26b7126ac6879de6ba35869c06ad4a993b6f50587f528654d269cbd31f77e10e676b85b4edbc3d92b1cdbd041bcd16d852a4b9a99143c49c51708bc509ff64e4b67e86cde23244be6deef80a311e4b91485346a375206154527f205ca07dcba92fe2e2482fa67e730bd12e23db4841665293de66a14e581ffce90f44b6b95872a13aefa4264c0fe48e6478f73f62716440483da135177c7bb5624eec081c2813d7a5c6da34daa2a40d1e686be5a3b4c553b04387063f33b2cd3ba911b343c4938f2f475fcee1e28e06253dc279f5c027f6169e8f4dc09fcb0c75ea62bd88f27743a5e925eaafc4db1935c8d933dab86f44be1d783712719b6f20998851b5151b76a6ad0ce431e78556676b8e88c53205fe45ec6d75201b36abdb0d5ee49574b8906df04d4412e7808882aae68a91817533d1fb4ab03c2df9529d68575106da3e2b8b9880092145c86f30ad500a5fb91a6dfc5a417b96b6a20a76ccd0526e46b6491553904806e20725d8ec9ff3124815e3114f6b167aed86f3591fa1d891358113e3d7aff62c75d3015c04a2cac3cf648bbe544e9eed3bd1e948df2dc94269e4fe4977463642eba957ec4f21307e94d61eac95a27cb950c4d1ef8b9156a1340ee3b8b7125c20474a3a6701bac341fddf5685da8ec9e09ce67a848cc5f890cb627380244a085213f9156f4f331a04ae76385d47fd02ac07b7fefe253e7619d946be42572dc324d22e05d9543ef88b85d851dc2f018df71bf751957e3d1832d23867422aad5b69b7477f65e16a4ddd80136f2e456ee67c6cce163543c4dbe635f58839f32612e9274043f6b5ad854191d35ae32c9d21c01060080c430484fbe2108ad683b7afb463d6433ce3469a64bf7a2612b22335281f118c4dd385745e4417bce83cc6d9468b16ea95e29f9686e35a562deac784622f793615167946a07476813395a6df8912e0838df2166ca3c5febafb472073babfd1d658a3b24e1e8cf6174b22c54b2be3b046ab91e74694612f38ef4fb7eb95385cd0848c5a17ac3cadcac9916d1f10d966fa046db5809d27eaf17a7b05def48946123914d8de7612af6a4cd810728a90d965a2b263a1f6044912b6533d5c28527e67f0e86a212f97a4e6c83122bb249278bce3594fde43db90ea318e3c9246d21bcb5c3caa27ecd478bba314b37ce3a9801473fd16635bfbb7d848de46b990e03e0a9b7ce821ce5d85b36da7487e0369b8c99bd3b69361a1df1388e9bc843754377922cf1b1be493b5649bb6126e9f939560bf9c562ae8573247b65513d9665d3e67aaf7f230662655b7fc90eb4c457696090e11e457e1997fb989d9ad52dac2d5cb5faf6e68bd23c7a50bfe3872437cbdd959f98064ebc663ab2bd1be2f52ebc13544d181175654612cfffcd64c0e254e0a97498b076ed1cbee004e832fb00db3fdfdf48e0726a6d5e3d78b1aacde979cc3c50d070e8762fe7375d4a0068b5797039f2af0e78b3a42dc9b64fdcdcf2b901ce8812fff1283b745da83cb7f564336f3a86f6b8b11f77524defadc0b5a0e45a6c19225755ab24d0b27395e18dad0855f91075a5df0c64747bc11a550d303be28f874637c80149ff0fd169d71617498916dd4b3b889c97447e34237ae5d2cd2c6ecf927a717565c501343e229980a90c9e143aa216a4e3d447bae53b4b5528d826f8b71ff823174c603c98bd249ebf12cf24b75ac9b34300eb3e6cc20824485aba78e224fd0eaea6cd43a4bd26a80f946215afe83f6851e577f78e24ccc991c2bd02b5c92eb02470051372cf78f5c84b88219e2a595fb0933d10ba94f3c8efb949d74254af8758b069dad4db869c5cbac33e3d79ff6d04f5c7887ac70f74fc4dcf1b7c931560b22121ec083c9d1e82ec941766e45bfc7b08a6ce24d8e8ca07abc3079d15c347d745aeb042430611a164d8eb663bec890b2e811749d398b22f2ec1ba8188769b326427895d770a3c868cb73bf0576a802b2715b5085e8a991548ae47c84aea3535fe8b4207d15487b780ec8d1af3634fe20727e3254d791437deb2b3347b61d23b2cd5eedd8beead39d5744f8f119fdf0c45b8731bdb9dde8fa6b6fb88582339f6047568e79851c3146dc71735e33ddfbf8f586b70f140909daf4bc3e1833de412a24a1d3f1ce96b5d8f7650552172fc3d2b949505ddc87475fde63dea683299bfe6d29ad5bbdb130e30c62a61cc21b1b77e9d6ad0969d8b0fe452dd9a6add286f6da60c8e960b75876860043802130a4080c03c20df8f04a3d5e18e78359c2ef182dd2fee989588bc078c89d7b2816f4a3b84a8f5dadc7b7293ed0737c3ebed8f14bed2b638b6dea12bb70ac9c1eb212f89a64def8ddcfe3b191b8039133512be5ed7f80349693b6d54cf7d56e91e42a76e7b4ac8cba2f81efa800fc8a3e0bf3abf0609ef855bf15511c4e26b22d94c83622170722e4a92f609f2a801c280410a9f5280e747e8b95aa6a879a5ae5391d6bbd466a1f38eabbf2f05c775fb22a71b6bb1549326ec2b923d16b1a32452d7a7bc6228d083761b954acc9c7c1ae302cf7e4f2ebbc8de6f6aaa0a416bddd844b488668296d3916116ee8e54850eef1548a44f914bc299f04556f0f64fa325ca3adf8b8a38c8b58088ec969a1827e2411d97696c8b61b0259d58faafa28aa6e1730ec23a393a72b73fcd1bea851eb9c41e6ab448ce9a53eb205c9497598f1752c367eaea3131c696a40a497b463c5daeb78bacb1d524f914a48973f761b3994f0c0b91b728c25efa42042fcc58c363c53e7056960bb8e84b3d111677151de08c2bb856d783689c86509791b7d92bc8d2ef1403b3d1dfb7809f3a51bb1311417116e20fb6f1c51c31175c9332af0d60c6e7baf1b649e42194e586ffcf523d1d67d2e69904354da1dc4e8efb34a3cbbdeb2da80faa6620009b7e147b681b476523855190a3d0d45c61a3db6c688b4aa1e4b9fcc1375e28c2158b062059fd08d4bd91fe00741c38652d5b5dfe17c5904a6c61275e1ee4b73e611244f5141d5435a6f32e19752460e15e8e59940b811855b52d58608ce58bd2c0c694fff0c6d8dcd90f80689b6618a65b012175d725672182527ce790c93234cef1d86feb55ccfc1a7df999243ee4675583b30cdd5565402157995e45af3f0f247087d8c42481839221983d1574ee144bee8b7d4c9f173ba3d12ca395c84deb4a1f8660ba2c770fd7347644a1a7d847334bcd1f1f025c24d34650c276dc4ccf13c8f8ae474ad1618bc22b160e5336823e7cbbe867dbb366ae34f798460f282744c36cdd95686b3f9b5a6a9fd3f76607eb6159fc6a5514f61a256e3ce1729f3d2319ef621bb7b08d7105dcf2d25641e402ca78baea3fef7d4c91a886cfb9ec8b66f5c4bb671c2e4647e0d657aa256f351e6178a28fa1885a81824a64cc5430fecc68a8dfb8d4e65bcb69d1c0f98febe45e195f7ded3e6ab3fbf0f8f6db0469ae5e06c2139149bcab52741e2c2d5c85c68a8de7bfc0ca4618f7edd6a38e360ac937b9bc7c92843e2dc957833f71fe925b49aeeb9e2fb5b3d3e7e6387958a07494e2badb3648600438021301c11305d7b0c808cbda86a113f50596a428d8507cbf16915f730661eaaef18b4b7a49e124cd367116bca88e3fa0cfa486db3b86e35e67c58854bad96562dbdb8a332d4a516d978fbfd5737f13fc5b412130503d9d60ba5a1185adb0c32ab3863cd4210458524f177ed1d839c7f9a17aa27db401a39b7ef74e2c6ed4e9435a868bb969a1e5b0d61ec8411d8e8f227ff8125db04e9f7747e819d1db7e8d01df1f26938e33b1debddc53fee424ee36f4ebb6cafef1358c7936d259de7f09855f2cab8ecfeceaf70a2dbd46b570f1ad515d8d7f69dd9a26547c709642a4bd0288cb19bcc40b6f536e374fb51ac50196be26d551e43467b212a7b84b9400f8a22b2ad515d86dd2d27b04ba8d35844ed91a3725aa8c289a45e4c1f24b24d2b9ccbe7ad71979f7cf636ef09d51d2585e138f66d1872f2b84f282e14fbe99d62c4cfa8c36ca3692710e5b66f93f50d2eee00d962bb50ac5b948bc9b6f63ada6efffa48b3adb727ff128dac42e16d450f111002d926c1b5825054f1378ab6663d8ba405c8795c80237f1985ff20fb770d822919cf6e03d9d6e18363871288bcf4341a88837f8ec16f0e8d447993200791cf22b2ade15628fe94390a27fbe2cb8d6ab5ffc0536ae97e6f5ebe83b6b8da13542adbf3c29e3a2ce77183f770da46ca0b193d39852c3b71a107c597aef0a9767cd1edcf22f2dc567d7d30fe3d13928bcf7d8aa317aea34df8592493017ab24dd5882b39d9442a898902a0f4dc67b850d6c057e10edf20816ceb464d09ddc3f966556407d56a707068396d73f3604893f9eb884a711e4d37afa66ac8263ead8fb7350afbc7754989691378f2b20775655771e5ea755cbfce7d4a5056d5a0a5b4b99c61c993e82590be1a383b7eceb6c7b5ec0c2e06898947fdee040a8840350e3d68ab2b23fb9b674dc8366145641bd0b616633c396747397f3b852ac324e3c9b61e54155ca0eda0bafa7a2cda91eb210dcb93b852633e97da6aae223bfb9c898cc63d71fac8c1f9f9c3e98f9073a54a3f37c4645b63d9257cfc69ae999cce5c476a8d70a15a18035192f00be074ff6d16ec41e500916d5cb3197b1fd7d251dc8ba3f282b3387df63cce9fe73e17515054a95f4fc4cc7d1a6b138c05ed1254bf8c9285794b3417edeab115f66f780d278a74bb2b0cf934682c2fc0be3f6c355bb71af2d81fdbfadca3c8d87702958dfcfd89c83d31d9d6587911bb5f7a8c6cbb59af7330e4b4de3a3bc31060083004861f02dc13a5d1e3be7c6ff1904a39c6d713ff104e8e0bfcdca0547623bfba938ce31b89e852f9a605cab06024b5e7ed86e66615ced176d30ffb5214937b6043940c0fd096a2deae1e94d575e2646d976bb7c5f9faa3f19911fc36a61e7cfab7523c63cce760cce83014cc151eb43578e78332fcb3e9dad469b406876c138b97e01e8f3ff84e4014cf732835b5c8ebaac425f51ddc208d322e84baf9611cd9744b2547037a6f9fbd7790dd76963c9d0ac496b856dbf154f72024bb4948f3ac0b377a5af82d9fb6cba4b993cd162ac305556f2bb27a0cdb48ad954c20470993dcbdf807250d4a69abac99cd376b8529dd19396d5467e3948e6c8b1a40cdb6a86975f8e352c3a2b1bd2c0aabf7085bbc6d88e6cca9d056bcbba19a7097e0cb3d0978bbccbc12ef49b7f1e727efd0090f7cb463340e9a5c67e625062665c9f365783681e67947105edc1a860e45176628b8c5b81b1aaa3d71a9ba8fa72c723e306d346dd9a3125ded125cbfe141fa3e56820b71898aedc2281fdd3d5a45da8a97cafa7e9cf22659c78ed2f0d7831b6edef434b7f9664574679393e6d521637e23da8a46e1c5774db50c9cadd5d5e574649b8f671f63edea66eda82f30610ae64c19035f7af190959d2bdafe6947611764f10d0987bf4c37b734aa16d4ea0d4e59a95c1e084598ced4835ad58e3bb50d64f5eb2e0fbee3f04cfa44ba5375e3ead10f9067e10297c6a561c58c68eaa88ab4060fe9b5069d1abf7eb4e74aa4e58121e4bc404a76a354b44e6b7289ed364bf2c903c311ec2f239d74355aeaaad1e4c084e1ca865159d2cd44fb9d3ab287e6f87ac4924cae4d93235c11066fee3a22f31d8df6f4f1aeba8e7464dbdf0640b34d3b0e699b70267309fd6e910991cc397835db7c7412d6efc57b2b93e884124732e6636b8e799efea6a4d216fbe4203954b4f5f7c695e3aeb1dd6641a804729430293982ff9d56a1f44a16bda8b490d14ad260c969a57996cc1060083004860d02a2f79fc343a6eb6d5d789d3e8315729b54e03e0e05f2acbaa3587893e75049bb332f5678896c06b9236a043d46d78b7171c7efee173f34f68294de5c14886c1b41db486503a46a6245cae29e122c2343d76b3d53f0b83c1aa19270ccf2a28f95fc1a22bbbeefbc829d5dd5709626ceeb69b48b64138b90c39165e2043be2c5e428a1d882a3073b8a6ab33823a7bd751bf211d976ba1a51a58637ae867377672ceabe0e7eb1a84178345db365866d34ba1ef5e0994982c6833bdac597d85075999e85389bcc1cc976b2da012148332b37dfbe5bba2b71a92c23b2cc0131b9ac4a92f552a17db23a58b5d5ec85a7c2f02c7d866f20b22d30183e1ec38f6ce3306b2afe0ed9f419aad0d6506ba685635396ce26545734d9cc72b79df48d0827b28d0b1ef00f0da19b8429e32647f27de17cb77ad0255a1338337efd698f17c2255f9d4d0d70e456e86ca39d4db5a87672ca706587ff74eb446d758563f0dc35d711916d178ee16fdf953ad63f0772a7a526f0eb0919c212d3a9a429e3968ad5b3e2f81a356837dd44e1405bb6b2e61dcf7678dd6aab3e6be78ac95142b103049b693d8325a769bbeca4802fd900004000494441549821c01060080c370406f78967b8f57e18cb73ecc736d4cdf285f0783871fa28b44dd1e04ebb1a6a7709427da5f01076bc513f1ac998b4e0d9b57fddea26b2ed2f44b6996f91e85fbdf69656630fd961e33e69eee198260d479cc45b64f8bd1b77344d2854dfc27e3b34cbec6d95e5ebc14c22db14a5a27d1f3f01502a2ff9a181b4e9e8d1940cafff887767f8a0b44a8eba3609fc433a70dfa856f8f00a59cd45613832b81cb3658489ef7440b1c2721d7da4de95b8f4d1a7bbfbb41b7c488bc75b7c53bfbb3bc4a41f0004dacacad04606f0b9adbd91931fc133c98d68b8dd8c1672ea24f70f41785808e7d8551b3a2a0a50dccf1bc960b7370090b12aef0904d4a8b8f0190e7f5735a0bdcd397c018dcb13b52fc412d3337066fe2a5456d4e2766b07fc4644212e364a6f67b9b5f02876f483ac1ad08eb0ca19020c01860043605011e0281ba3fd9a43bda574507b3fcc1b5b1c1388dd69c108f714316b6632f7e2ca0f75f8796e1bae9b9d733461a8c93647e565f95d83c0e0926d83baa594008a9ad08c5797d621dccb1a9948b6cef214c8fcd89b36810c5d7892bc77ae8825b64d1380ffeff7114e6b6ddadb83bb05177bfb73f7e66364dbdd3b76832fb96ff404cc7b681c6dafb5a60949b6eaaee7e1cc77c52ed9f63bd8ed0d3ea2acc5bb1b81c121db048cd2d66ec3bfad4843a8b10733e1347dab5072fe6f786dc38e01ff0d1735caa20c018600438021308c116084db301e1c41b4c5a1722c4bf04552b027fff68c1c3474a851f0632bdef9b1d345b6e318d926e07d6f7d0f2ed9c6613bd8849b309e51b12a4c1ed3891172e11d831b6e57cb91735166ddd699507810bea3eeeb444a289182dd529cbee83968e4df70c76510a01fc22618d93684e0dfd54dfb86281049f6b87cc991942e68d046b6c3ca4bab07444376b0dbbbab0787093f48080c2ed926ee545afa2a4c7b3091bc040b1b85d468282fc217bbf60fca764fb12c2cce10600830041802c31b0146b80deff11934e97ac2f6a3cb73a8b6910e5a3759432608a47d5189880a6b9a5f26995d74189556833f2e6ad6d7a6bea9c0cf77fbe98f59842170af20e013140a6fa92d0de67b0509d64f8600438021e01802a5e7b3f179dec06e23754c22969b21c010600830041802e60808af66cccfb0947b0a0146b6dd53c3adefec60936d5cc3778a0371d8971c7ef006bddbebbcf4f2b00843e05e4280916df7d268b3be32041802ae4480916dae4493d5c51060083004180203850023dc060a59562f438021601101256de33c401f1618020c018600438021c0106008300418020c018600438021f05345c06c4be94fb5a3ac5f0c018600438021c0106008300418020c018600438021c0106008300418020c81c140c09a9babc1689bb5c1106008300418020c018600438021c0106008300418020c018600438021c010f8c921c008b79fdc90b20e310418020c018600438021c0106008300418020c018600438021c01060080c25028c701b4af459db0c018600438021c0106008300418020c018600438021c0106008300418023f3904ee6ac26dfdeec3c83d778e3e87b121f52737364e77286dfd6e9c215cce7c7908eb87312e778b9c4e0f042bc8106008300418020c018600438021c0106008300418020c0186c03d89806d2fa5a92bb063c33378307604641209341a155a6e15e3e447ff8d1d5979430e98a7dc1b20b9a06a40ded08b33e478e805f0946bc70bdec108f2d1a70ebfc8dd22e7f0438e49c4106008300418020c018600438021c0106008300418020c0186c03046c0aa865beaaaedf8f2cd5730353e4247de502724121982a292b0fc95377160cb8a61d02dcd309061788bd03dbcc5d34b77b7c8a917984518020c018600438021c0106008300418020c018600438021c01060085841c032e196ba017f58370ba43fa60d8d25e771f040362e96d4ebab895fb80edbd2f5872cc2106008300418020c018600438021c0106008300418020c018600438021c010600810021609b78c9797c28f87a7e848261e5db9013b7665e2e5958f21e360217f4686b92fec400283715823e031aca5330877b7c8699098c518020c018600438021c0106008300418020c018600438021c01060085846c0dc865bc27acc4ed4e9b6a9ca8fe0b9add946257376acc18987ce60618c0c084ac26364947f076f3f2d217d2d564f1f076947315eddbc0b8bd66ec12f164e44805c42db515528f9ea03bc9c9965549f4b0e349d54cd226c7f670d92c37cc8d69c069dcd5538f3e17f625776b1c526d2566560e9840874141fc3e65dc7b162c3362c7ee87e84f87090a8d1509c87bf6ed88ae3964aa7a663cbcaa518171b021d8094bff206ce7eb60ffb8f9bb7e7125cd25660cbb287312e82dad4364a6d9615e0903519b5726bd05e0da4aeda849797a622442ea371d0a0e2c28758b779bfa59ef52b2d8dda599d3e1d0a1f0d546a6aabbd0227df7f17a591f3f1f49c89080b96a1e2c41fb126d314d5c191336ded263c392e040df907b0757f28b6ecfe0526460640ad5643dd5e8b6f3edb63db36a183e32e80e93c2e0958bb693de6a72640a66a87da470655d5557cb667236c9b504cc5fa2d2b31eb8158f8e8260b3aa97f05e44463eb1e53ec0529d937438021c0106008300418020c018600438021c010600830041802ae42c08d2aea155796b6612f329727519206e7773f870dfb2d1048ab76e09d755341ee0a50743003cfedc8d1569171e00cd2e389885396e0f4df49036e6a94b86a6dbcf2f44e2cdbe81ad26dc33b27b03c51a78ba722736e324e209350726227566e366f4f2fabaa1e95ad7e880a25b9cd420df6fde249ec1141b062d35eac5b92044bb9b9e296dad3b7e5242e6bb71fc0aa59f15abccd4444234eecfc15366719844cdbf00e8d6122656d45495133e213cdc7a1e6fc3e3cb9618f79754ea6acdd7e08ab6799b7635a9da6241b3357666a93075b4efd38d0dc6e5549e06761102b09976516707166dcb94e3a838b169cd4b5c8dabe1a31c2be6e6da2f04f858b077e8f9777e9ae3b2155fb9db60187b72d47a8856b813bafacbc88377efb32acf0d04655b1038600438021c0106008300418020c018600438021c010600830049c43c0c2965241e9ad113f7c6d2071c4d5175fa980924f907a7ae94f75a9bb7471ef783dd9565f52808b85954471e842d4dc97b07d5582be8cab221cd9d65a59801327cea2a45ea5af367ee12bd861a13dbdacb2503dd9a6ac29c2d913a75158d9ca9797c1535f131749c58c34816c53a1bcf03c8e1c3c8813174bf4fde36cdb6d59645408fab69cc065fd1b8789c812c8360d6a8a2ee2f469ae8fc2080461e12b6f6103691a9a073f3dd9d6586e3c0e11535763f77a8b85ccabe923258108583dd9d65a8e23fb7662f7c1f36814069dcaabca393b80fbf07f5ed3916dc6550e8e9cfa7120ea9223db943585345f4ea3483fde4014e1f2ce863463f19c1c77e77149c7813f1ac8b6faa2b338b07b1f8e9c2fe7e7990c9356fe3bcc872f156ffcbb40b6d1fc2c388d7d3b77625ff659d4f0d3c53b6a125efef7f526fd63870c018600438021c0106008300418020c018600438021c0106008b81201815dd3d7193c42ae8b2b1b5064996f03f2f250a15c8e24d2be19397e02e5b7b44dad15a777ff161bf7ebf69b2eca7807afa5735a57122822e2e9db5ae5bae61dfddf58988d47d718c89cb53b3ec1eaa911da6aa63efd0212f6bf6ab3c5f2b3bbb1e255c336cb0def7c8e059d47b0cb48cc3cecdc77027f782a1c9fbdbe0e7cd7b46dbcb7621bfee795b9e4684286894bd71224d6b4c71cc065d1162c9b14aa83425389831b97815726d4a6adda7600ebe61296ad15f881dfd6abcb2cfeafc4d97d5bf0ea1e9d3694418311f0f5f51167743afed48207746535e5c85cb802ba4dc85984cf267c99b944eb7ca3f8ec01b2036855482a6fbf9c09e919d8b4623ca46a5b224bd1567114eb361ac6549cbbb5281b0b9f33cc97f44def206309373f81c4a5abb1888036cc6ae7c6dd595cd2c90330a728ca85921399a4a1c96febdebf0747d7be819dab27d1551484879f59855d79a2fea53e8cc4205d39d47f8315eb36f20759d893998aed877662565423b25edfc5a7b32f8600438021c0106008300418020c018600438021c01060083004060201330db7c4e811ba76ac6c493315a2a5bac634497b5c78c040b67109c7338fa192d778927a1bb4e22c167634515582d745641b577ccf861d281494c04227686dcd59abb6b5f0a011d9c6e5dbf1dca378749d3931519cb519cb9619936d5cfee2ac8df881578cf30b0ae6922c06477059bf6c1abf7595b6f7bef95b23b28dab7cffc6d770a2b000fb5e5c2322878c9b2dcadeae27dbb833393b3e43393f0ec171e38d333b79d4a5d655a82cfb9e27dbf88a727250ca8f81dc97270eadb4e1889c8ac4f1488c89477cbcad4f0c92478fb2dc1acd97ad22b28dcb94bdf5399ca8e43523bd4761b289929b33e3ee1c2e69583a33462bb7a6feac816ce37b92b7e7651c2bd7c919146dd2bfe636f03d0068ce6f5b9b2e726a9287575fff4fd2787bcd688b345f2dfb6208300418020c018600438021c0106008300418020c01860043c085089869b8d5dc6e01e249758d2765fa6a2b48a1d32233cea7c48df3a6da4cd5682636208aaa8e88d769121997e9c791c692aa530ebebdd188a4144ee547021fabca5c8df8dbeb3b1c6c3c01e9ab1621393106e1c1c1f023a5c0cece00a4f8e9aab10e9d23b82420268437e0a52ac627221b6d06618bb179cd3ac3a159ac1557bf386e927a076d1c2b4355cb7c7d4dce3977e829d5b1b3de51e3c9758548df31751aa2f92e486dba21754ccef69a0a54d6d08092b3036b412a55e17c5696e5d316e70bf0e9376558a8b57d2781bf82dbf66ca4de48c78e8d7b7f7191844ec121ae0f1211fb4d0e41e4237497ad2c22c118efe25db854be4ce7d08434e0e6aecea0cfaf5153720de74f7e82ccfdd9d8637a595a4688a5320418020c018600438021c0106008300418020c018600438021d00f04cc08b72b150d00b715d33b0ce3c9c4578ec50774057cf92d6f352545e6cdab6e21df62395d56eb8494795576a588f80871fe4b457558ad25dc806ef109715c598dcba6bc8af8bc49bc2fe3f926d98d0f1dc24581307f5dc79495c5b0601edfb86e8b4754de2ad168b1805389f9d76e91b38c7862f0e2f1dbc3ef60dcfb7f45a9df74acfaf942f8696b54a2e88229f1276eca3139f3f66fc432d14e4a714d76c575b09a67ede2bcdd724186e804ea8f88707366dc9dc22535150a9ea4e4e4888ad169bb69c532fdc77b2015276f5ef11b74efdd84254902112e23823b85c6873ecfbf828b47df264fc1c69e87c5e5599c21c0106008300418020c018600438021c0106008300418020c81fe236046b8f9780a4941183f911837b2d76616d21210c193166a6587d9699006918554f37c039c6217d72411fadbb7302bb665e195b90201a222cda1629455d7a1a583e83cfa8b4c9d8da4089e89b4549d83b808fa5bde2363c1ed70748e74b324886bd38e6f5d89d9a9b9984b1c8f2c3411cb5f79cda881f2d37bb0d916df66947b781cb4351a66b0b3e3ee142ecd77c079dc25a54ca0e63cf67d5e0c4f63cf1d3c4094d8750b256670e561eb9a27b1357511d63f321fd31e9a80f8501ded0959102691fdbbbd5d77b0466c0cd0ac0e96c0106008300418020c018600438021c0106008300418020c0186407f1030639b7272af4249ce0d38259bb1f31f276368e684db8aa5a9bc6d31254af22d3029d63488fa23a9adb25654e6525314fa52367734ea73d98aa4e1e18778b24d558903bf5f865d260cd8f6c3e76c55a023516ce7109dcdc18d5b4a2471db7bbda3318d18373289364c439ad6eba74e380d542a8053be52365622f7c3b7b079ff3013dcca96521ffd165bdafa7b5990b93fe3ee042ec5a56820fc2268d895ed35d8b3c7dc8ea05d9320ef383954a00f9799c8b72dfffc121626e9ece8253c349ce95bbb7ac732310418020c018600438021c0106008300418020c01860043605823e06e265d4e26beadd13158b298f9d8bddec47afca24d583d8bdfaea6ba892f2df06d66750e740219b99fcf190f138784f59897c86bf6284bfb4f56d1563fc11e196e1798916d09ab76607aa86b99c6f28a3b7c8ffcf0c8cbdb4506f0858e26607dc606ad1d2f216528be13562dc324ad77cc561cfcc54ccc9933133367cec4c2c7560c3fb28d03c83b0ef3d34d915a841716c6f3894ab455f3d17e8cbb73b854e38e5277fd79c73f826d6672727225208d944fcd42ea069cc8fd125b4ccb10f1b679cd6b2822228f0b1ab5d50dd6ba0cec3f438021c0106008300418020c018600438021c010600830041802fd42c04cc38dab6de307dfe0dc2bb368579b04292bb7e140cc4778fb83c3089eb81a2fac9ecbdbe5028a8efe75986c73f4c6c2df1e8232e80d6466e560d1aa4d58f3fc12087e312bbffda2ff72e695a28e080b3f6ec7687032d612e12128ffadc8d88d75e929da5d80fd1a0d93c2591bdfc7d2331988a7366551b3f0cee1bdd8ffe67f63cff13c525a5a8bb5eb7e8e14dac2aa9a340225cb368a2c8e995434c0878a089ed8a499f1c45b8731bdb99d7c6e70b3870b1ab437dc42c1994fb083c66678049a2ffffa0994f8376466171396ebf1cf2f2dd3fa0ae1e46b2d38865d825dbf7e8cbb73b814e3edf72f60d62b53491219e6feebe7d816f93636eed2d95d4b205937bdb21289414a9cddbd05af8ab40737fddb521a01ea5bc619c44c39843736ee82563f35210d1bd6bf884461b7b3ba6b780c03938221c0106008300418020c018600438021c0106008300418023f51042c126ec87a157b261ec2ba5951d46d09e2672d47267dc441597204cf659aaab7d9a7e1655f2e716b76c46551487f25933e26791b0b8878b0e2ad92cb6a653baa492d74988ddc6b2f209e73c2e01d83d56f9ec39335b7210d8a106da7342fa54bb1afc7e6b9b2b1f24f0fe24486cef980243409ab5f7b933ec6edc87cfc10609c64d791797b761533cb9493f9b57e1bb2cc2f1451f4310a5131484c998a871ed88d151b1df776e02a398d649244203de33d3cf66ba20665a21654e5d8b74ebc8dd3f971771697e2ac0d3838e73096a7108e12f236ba3203b9cb5e86522381b7b7c09a79233ad1b0655adbb74e4e858ddb0c2e43e2dc957833f71f697baf1a32995086cb558f8fdf70d42b2f578e058600438021c0106008300418020c018600438021c01060083004ec45c07c4b295f72ffabcbf0da81b368e4b7a1192a24bb6d670f60fecaad86243ed6d5a9d4c5fa20b11aab6bccca3a9fa0214d9f9d385dd26a564563c959643cbaceb6769b886b31abc02461d7ba5f21bba0924f9520284220db5428b97811fc4e5cb25d266c05d565ed172ed99bb1f0a5dd28a831ef1fc71656161cc14b8fbeacd364d2cb2bb85bb03d108db75d330e197b1fd7d23c9c3ce5056771faec799c3fcf7d2ea2a0a812c2148a99fb34d626e885a4c8e0caa96f996cf01514d56b0fc5649bb2a6003bd7ac80293debecb83b8f0bb063dd63a47d77de70fdc9bc0d649bb206a7f7651079692ce9d6e71e45c6be13a8d45fb41223b2adb1f22276bff418d976d323c1220c018600438021c0106008300418020c018600438021c01060080c00026e54676f5ff5a62d4a8722480e7436e262f6f121dbbad8979ca98b56606234b7bdb10bb78bbe46768eb02fb0af920e9e2723f4ab264683731ed9d57a1b57b2b24d082f07ebb3337b42da22cc48d4b54b0de3d2feac4169d7a678699b70267309e954a97036730e5ed5ed7c342a92b07e2fde5b9944694a1cc9988fad43b4b374c33b27b09cb3eba72cc24bf39f4333cd974509212457171a8a2f218bb6eada0c8e8cbb0b71494b5f81b8009d969aaab91459d97d039840b24e4a8ee09d9ba8507a250b397d74cf66dfd9498600438021c0106008300418020c018600438021c01060083004ec46c0f2965293e239c72db028267986c361def14122a0c808fdfe21202f8a7388ecec9b6b19d4a1484b4de0491d19c212396bfda67325959c6cc4f132913db7f64115cf7263a4d5c86d7ae5e64bb1e9ae68cb2574a90e8cfbffcfdedb8045759ff9dfdf0dc63128e641494a2c91244c2fda606a92a12b1a1de39242e3cbeee44ab4d37f49c7b290872d5a976b532772b105b65c24b0edc5b24aff6ce0cf4225576725adecfa12a5e5d18289e489a4612369b8026b70a99248e431c4d1b1ccb5cf7de69c3373e60d66ce0cc380f7d161cecbefe5be3fbf9739e73ef7eff70b2797ae7632964d25978f6b8324ebe02cd4511fa2f02926c00498001360024c8009300126c0049800136002b71d81800c6eb71d15563860025d47dec1f88e54088b94a61acc389d69c2c8c54f7065e206e2ee49c2830f2421561ab63bd1ff066aa2c10844236d6f04aca1ba8073928b3a5539161360024c8009300126c00498001360024c8009300126e04140308594799ce34326103881abefe0bfef48c16334d435f6ce3bb040b304cbee4d44525212ee5db614748a369ae3aee7d7f851610ddc67b70b3c9b7084dcf8dc5fe3abcbc8c67cc735bcd9f46b0c8523517f69cc212efe54e0f34c8009300126c00498001360024c8009300126c00498803a0201cde1a62e698e75bb11d01b4c58fb582a96df253b4e4ee2b3e101fcb6ae65f6e79aa3c2d01bf3a1bb6f094dd9761947ea683869840a28dab944080367c30498001360024c8009300126c00498001360024ce0b621c006b7dba6a8595126c00498001360024c8009300126c00498001360024c800930814810700cf88b44469c071360024c8009300126c00498001360024c8009300126c004980013b81d08b0c1ed762865d69109300126c00498001360024c8009300126c00498001360024c206204d8e01631d49c111360024c8009300126c00498001360024c8009300126c00498c0ed40800d6eb74329b38e4c8009300126c00498001360024c8009300126c00498001360021123c006b788a1e68c98001360024c8009300126c00498001360024c8009300126c0046e07026c70bb1d4a997564024c8009300126c00498001360024c8009300126c00498001388180136b80581bab0fe08ce9e39439f2328d20511719e07d517d6e3347139ddd986c259e06228aa46abc582c6ea4268e701ebd9e6192e84f9356d3873f62cce7434421fae44c3928e1e958d871db29d25f91c9f331d68ae2c0c4beade8998d0da49fdc6d90e541ba3b78646ba1d453a3fcf7229693d8eceb67ae46787a74ce64bbbf5e434f78f67b6fdf17dc1dcaf21e1d060b6fbb370e8c069300126c0049800136002e127e06570339434a3b3b3933ec7516df2f320a2cd87e578073a3a3a7178ff4c3da4865fd950535cb82816888901263f436f6fa8a9cda3f80b1741435c34b1cb10bf38d27a9960dab10129c9c948db908317a2d8a011309959e519b094d3065c16bf0cd45a3079f563744d1b3a52010c68eea8c2a6b444876cce5c63e290ba2907a7db2a9da7c2b5a32ba4fa192b908883ee5bcf862bd930a713e97614e9fc3c70e9cdd894128fd8a4d5303d1fa6329927edd683d49c3f9ce9f637e7ee0b7446d4b41e46e7e9d338edf874e070730d4cb3f0b26cce572ea702b3dc9f39e5e01d26c00498001360024c20da087819dcce0f7e4a869358c4c6c663c3b77d7b0c990aff12c9f171888b8bc527ffd9136d3acda03cf6194c7b7e24fda75956e3ce59ce3fdcd9cf36cf50f4b905b1bdd827a3470b73eb6ea4c6895a8df51f8379ed5a3c6fae47df98cd7172c1a205a1a8ec33eeb52f262412a0ef5b3ec344dbc948b7a348e757f8bd4cd0eb13daec78ebe8afc28e3f7a6a7cd8559b7309ce7cfb9b43f7058672741cd8838c9444c46a34d0383e71484ccd40c1814ed4e4b3d52d1c153cd0fe4c67aac4117a717de6ec19d41746971f783838701a4c8009300126c0049800e065701bb4ec45e788f8f089f80cecc9f7f4723362eb3712447613e7d0d0c0ae5e5c916693400b5a5a4f616878187da75a5167199c4d6138efa82660a2074dd1cc621deec0b6bc0a87e7dd60570b0ab6bd8c21ab15efbcf66ad835183c7f115629d54fff10adfd65a4db51a4f35314abb6105bd244abab7dec2dbcca7d8602cefcdb9d1bed2f02dca9de1f3167919fadb0d930d07d0c4d4dede81b9e90328f45466e09bc6ef9a4abfc35150175fdd9fd0f3d84047a711d43bf10033dd1e3073e95a67c8d09300126c004980013088e804f778ed2c6df61635916349456fa337ba06dd80dd98c915d624092303a8ab6fe37da10ad8f8fa284fc37d204027db31b4eb9daeb8ad15e17ce14a327add9e0193dda8759127d22964a49fef7db9d1e899f444ee6498f73e139d465a44a0fb9567cf85ef43e5445ba1d453a3fb9344d85df42bc74f0fbfff837e76f9b7c3d1cdfdc6ec341313c69cc95f6171e6da74ae50b5ca777a9091a2b3aaa3251da2e866d68a8427ecd61e46624d289446c7c568f86aae8eda7a6d27036afa9e9cf1e4cbe4714d97a115d7c333d9bc5c779330126c0049800139831023e0d6e38598adf7e7f23b62493c92d3e1d2fd230830287275b36beb3295914c63a805fd4f8bf293399abf1cdf4afe06eca6192fe5d1bf900edb5a568972d770a950c85e5d8a85d8acf2ffe0ea535d25da0e2bade64c6d6471371c3c775e7b5c11328ad3b09635125beb5e66b58be58506d129f0df6e297451508eba3b4fd26a59d8deae63cacba7731ec763b6e5efb234ebffe53d4f95290428724a7ce80f29cad78f881e5100b8cf41af908dd479bd072d21ba8d6908fdc750f63c18d41ec2dad43767e399ecf7a1c772f8aa129e86c18faddbf6177954541d8c7aede88f2ed4fe1e144cad39129e5f9711fdaa66469c7f54b80ce5482dd5b7558be4843f9d971f19dd75150dae22313f5a70c54ce992befa21296b705b831fa268aa7d3cb115c87c2f21c6cf8fa03582c2a879bd73f411f2dfa50d110d69a220a1764f9c91a09c3ddd4f1d422bfa410993a2d34b6eb985cac81ed8f7fc0d1866258a6baa9572ba7de849adca7a1bd77a9635e34dbe797d063f9dff8e2a6ab745c3a85672f98fec599e3257990ab70e6baf3f44cef3cbde12b6216e31fe08d00ab57b0faa9ed5f4269477a6ae7b9867558b1d80edb24b5f5eb17f19bd77e810b5fcec4734f3e8e7b976970b1e367c8ab7229ad26bfb0f467ce42567a68f7a1790a0f6d35fa89d9a86db74e2103dad1e797e0998797e3b3f75a51d19280f2fae7f1f897efc6e424fde2527ff6d6d106d44cd5e055b677f55c54f64b08adbf56d3fe022a00cf4041dd17e85054f96ddc47bfad372ebfe5f3be07fa7c546f7f1882f176f4cd56544d55969eb2f83a1e6c8131ef1a0a9fb841f729ee011a8a5a9079c68c647a997adfd78461a5feefeddc630678a4ea7e0208b81fa4ba5cf2ec3a7aa1f2392e5b97620ddd032ea5bb834befb723aff84d9437be8c6faca00966ed369c3f518fbd74afe8d8d4c693d456d79f15e2858dc998fc7c122b964b6faf352b905f5d8d9c3b85d2a67b998b9d28f6712f2c091dd9fb174957fe62024c8009300126c004d411f8338af63f3ea36697e3b4e4e586f173787ef36edc5dd8880339698ee043c7ca9053e17a9072a6a135a1f99ff3911a2fdd48382f083b13e86eaac0de06f79b3973eb691852c8b8671f8079fd4e8f5b3d3d9a4f572155b83c7c0ceb8d156e293ae3dac630321187a404c12fcf731b45d3f3cfa0c1db36e51970cae3a2e60eec902680b2d1b42d1a1f2a0e75d422a7d4db98a5564e6349230ab6a439bc0d7d09e72b3f675ed6219cfa4f0d36652479451d39558bedc5de720a01f3ab5b61da90e23ea9bc33857174d4fe10a58a6158faa26654ed48a51013181ab8869454effc467b9af04c518333955077cc963330084f07cacd3e44f527c7a3fe2803d0bebe08472a7720c123aa1cca3a720efbf7edf6691896c304f3ada6fc42e2a9a3054daa73912c8e9cf410d58673ad3fc6ee3af7f627045223a7102f9be63ffb7bc36a3f754508015887da919953251e84fa5745ff925f63c1f6d4c534882a1609f122189b751c135661ee255aec23e673fcfbdf1b5137953152b5dcaefe6b98fa4ca3af3e5399b60afd84e8ce361f643fa8b61de557b7217783773b57aa22ecdba9ecd72bca5e4d7e4edd54f6674a990ce51698b3c497460387ccd8e9e7a5911afd426ab74a2103dc777221c3fc842d06713e7efa46a8dfddeea3df55dbded57071a8a3b25f0abdbf0eb2fd05c85e194cdd7d811187cfee217f32611b41d5daedf0b08121bbbc0d6559621beb21636a51cba032db30ef13a74ebacfa2ee7162e010b276d6842dfd60ef271c1907d90feacd649034a4042c735fd32ec74b64b5f1e48cd4f467fa120baab6482faee5843cbfe95e77adc7bdae234884ef5f3cc5e26326c00498001360024c20780277f88d2278b90d49330f91975ba1291bdffed657c5e0f661bceef3c1d180d6c602a7b1cd363e8cee53dd18189567308ac386dc529467bbe77a6b529a487cd2fdbc7c3429cd496cf331f9ba33ae26c1696cb38e0ea0bbe314fa47e4b9493458282716a66fc1d83631d2472bb57663489a705d483a256b0f6a7caceeaa4e4e1d9ed0cbc6361b86fb7b70ecd021749c1ba2472c714bc92af0cf3336c5696c1b1beac3b9fe1167bca44dbb7cae425bb8ff083d48cbc6363b4607cee11495e1d0985c86f1c8daf37314f99c5b39ce696c1b1f76cf2f3123972605f61949d224b8af5ffdeb2fd13f348481fe2132a4481b79764cbde9b0ff25d9d8463cfb4ea1a9b6164deddd90ab686c523a76bf14ae9577d5959f4b87607952fbfb99cbd83636d08dd6fa261ceb1996ca5d83f49c97e05d0c2ae524a3fc3ea7b18d3c27cf75e0507b87a2bdbb3409cf9ebafe6549fc3d888b4f701adb045934b4284c42029d4b88a76b4933b8ba6e1776e699515b5f8b7ff4d9672ac9a8d34f48415dff02a869475a538dcbd836318c634db5a83fd48371b95322796cc33d38d4da849f94b91b5ad5e4e7d44d457fa6a42b78251bc8b3c4b1d906f04b3fc6b650f413130fb6ddba4b19e891930b198d05639b75b49f7e8f4e61c0f9bb072451bfdb5ce43919bbbaf6ae9e8bfa7e29f4fe3a98f6172879ffe102bf2fb0e0f8b93129a1fbb0cec7eadaeb1e96861b525d3d31a3c636409bbfdd616c1304ba14c67926d5dd4fa8e8076f297ffbc7d0d1de43afff14dbc400dadbcf39ef15962c939653571b4f4a5a4d7fd6d5d58d7e9a737668482e7f4acc368e61ba9f19a6f3c32323e8ffaf4f14c2cbbb91be7f91f3e56f26c00498001360024c201402e208453f2954bc7a0a9baab6385673cb282873861ae96af77a1b2b5c34edff6b088e6ac236de77089b0b5c6f494d9516143886a3c62233af1ca564d09b896db8bb1ec6bdaee18b45cdc7f1cd9bc75017e697c3e3fdedd89ce77a9874cd8102643cf702b42d7ba79c1b2830397b51dbd481979ffd128ebe5280168507ce416325fe65cf262a1b0d1edf9a0f9cf4e73d368153f5fb502c45ce3637a3cc904ae863b022517823ac00430694ede9d28218f6111c2ade0ee533a9a9b295ca90e24c5cc4070a59dccbd14a5e8ce54e2f467d512379bf895e914b964837b9ee11541d0d9eac431e7d842dbfb103b9d224e85326a67b8a8cc152089a2cdd58502c1d5868ce1a1daadb6ab121691c9657c474a74c2ba08be128bfc0791aca8dcef637d451459e9692cf444b03dec8df8fdadc742af5783cf56d137973b9da086826c6e0eb991695791b25cf4b1b4ed5e6a158e1f5584465b22390320988a318486dff5253518eab9b52b170c9c3f8ee8e0c87cca33dd487bd77150bc912bf90560e7ddfdbe92f08c9a6093ad805051abf81d5eae72bc1c0fa176afd2adad1b3dffcba9825bd78a9ca324abf0516ea9f4ad029fd5e0c76b7a2c687cba09afcdcf50ba23f738f48ce52df71784a0ba7877fd7ee779a8150f473651978bbd51acc28313e82054a9b812b21696f01beb8f8060a8a95edd6156862a09dbc925cbf4786926698b708fd3c90ba3517d9d491bbfcd1d5b477402d17d5fd52b8faeb00db9f8ba6fabd60ee0b1adacec0986ea0dff018e8b63e0b585ce547bf6a783c49bc991a7fff4d45d9a997cd7f4c132abe9b2e5d1ec39bbf0a5367a8f27e22b47ed08e9efa22949281d2fc48278d9c103c9a2770ac6227aaba74f84a563ad2e8d4bd5f115efe29f554174f557fd645f72ef4213327ea3b0e62751c19cb3ffe0d8cd3791586ab3d4825cd5f4c8009300126c00498406408f8f77013f2efaa4087ece5e6946714477d0e45a4b9711e938c3534bfdb2b0a639b10b5a5b8043d63a20b444cd25a98c3e7ece4946ca2ff909bb14db850b3733319fec2654091b2b20de11585b14d38db5054837ed9092ce1516c9b42bf60e41cb49462fb7677639b90dfa0a5181f4c087b200f9d65e28e8fbffdad2e639b70f964d5098c489e280b62ef728b51b87dad6440a19bcf03fbdc8c6d42c096e23274f4f7a1e907797e1f0006daab9dc636214e57cd510c4bf92d7bf011e154d8b725539a8d15d95dfbc2f9861b544695f906bae595b75eec7de5a7e4f15616f2d0633945e13bd4f20b9ca71e5bd78bde3bf6b16e97b14d12a697163e39312cfa02c6afbc5f29a2633f783953b0f21ef1817062e0dfdd8c6d428235afb441f1fede2bbfe04f84d0bfd003774b43031aba2e92694ddcae5d3c8b16324436d0f9ba8616b747afe0650b478c10f4f3c83e98fe451935d076744b7239b67efc7bf7172f5d5db820f5818b9648bf05ca0c3cf603cd4f192d98fe4c198f6696c4ff7a5a3440815e26b4cbc668f7408ea370e81778bb0556a43e82d4e414a4a44cf549c6aa87bcdbad4360fa3daa5018db8473ed6460e890571b8fbd1fdff070720bbebd0b5e9462471e5cb987d02fcd427fede0a9f64fb0f7055d55787b54641a9bb2de6d7550bd7923c41664c33b3417dfcc6d063477144098ae57d8868efd9fb0fdfea9bb9f08b51fb462f4bcf81251aeaf10162470d8d65c2ffc6216798e79501b4fe426fc0dbe3f5b019a5657dc1678ca239d577ecdb5f6a0949df799001360024c8009dcc604a635555491975b96e4b520701a3b771c3edfb1eb93b14cba79187dfb848f07d8411c3e33880cc9bbea4ed7bd4f98f08fe3df5f7179d4852951dfc9d87db92274e1ed8fc691b65a70a18ac162bffaa991530b030de95d959a8c2f2d5b86b845c0cd9b773bde8c0a028ab7ecbe44b5e2a31e4f57b44bb8467697247acb9b98223d803aa26a91bc5c781b4c9b8dcacaa74bce204af30ac4303eff4ee00fbf75f9518841aee20bc1ce43496b962cf1192b622707ebf0eef07664399e2ee2b129d74c9fbfc5e8d087e8f9cd6154b5b4638a39d44310536df9a9e31993f0e768b3d0fc7c31f2dd3c894e0b7b2cba476cee9a442d0dae23e3ab974641c8a97f14f7490f6997fa3ceb18253c38804fc8f892205529afac823d1196fec5f550b360a1bbb1395871c21e3e2cfa0952a9e95f82d366e102b15ec5263de25e8f746bb1522aef05c2dcdf61df82e9cfdc33d79a763afbcbd1b78e825a87df2d74fd826bb7d7472f6264947e30a61812bf60818d1622f123b5cfdf23e03fdefa18598eb93563b07485f06a413444b8140fa2bd53a450b904dd2fcd5a7fed2214d49ecf7298fabee057c7cfd36fd06aca260199cf1bd0e030046bb135e30131ebf1f771d0bba30e4a2cbf81f58568fb871c488e748e510939159e33c9f98d3dcd0595f71321f783d43779de7bc54c7b9b4bbaa88d370d86692efbba93f41b65aeb507bf8af00526c0049800136002b71781e9ef44c8cbedd4f0265ab15478921ac3895a3f6f5bafbb0c3fd7ae5df249f1fa55c9258baede19eee75deb25bceff93ce1538a309c54d83194a9bd3bf029721d0637e04fca0bcafd20e59c6e726b65d25efbb6cb78cf872d440ee76ea85b817b978a8a5947067d184ce558537dfbb8699d2af82c5c2b35fe1dfed458822d69e274d5640624c3e36a1a7a429fefefc1b9375ea5155cc3f5d031fd620453230882a74e87154ee3960649c9534cca2cadccaacc3be87aa668ef11315e29f29b95fe45096b26f6c3a55f90fd8b1a55defbf032b597146a3a29d877a4190fbff64b5c885b07d377b310e748d08a817766c04a10547fa6d44c8b170c8f4927c670fc559faf8c9c1142d72f88764bb9f6b61463fbd4223965f3b943d9f9dc6e09ab690b9b062bb5545e0a835bd0ed9d62abe21262bf14e9fe5aa0a57af3530e53dd17f4361cc6d077573ba602485efb2df2c36c47af6e1b1e4d14131b26e3f08cdcd60893ef57d17ca692b2233dadb4b8469d6ad5bd23aabc9f08573fe82dd0bc3833a7dac3bc20ce4a300126c004980013089dc0f40637cae3fa4dc93463fd2420a396df4417badc1efc1aa4d4ea14d05b4cb5890716cff3c5aacf5841c869a479eff638e6bd1352b29127d6203ebef4293ebf41f4e8ff97751b919628b919f9ca8cdeb8dff075decf39f96d6bec7d0f401881a49ce1c44f943978ba171579cfa042978dc2a733b176cda3484910cd04d0c4239de6536abc751579cac9eb546a1972f90593efb5ab1056ce155ed463b4074dc7071df3937927415e5eb72e63487141959c54d9e5e7cbc95bc1d43245c62a7767a57f5129ab9a6821e91744ffa2463621cec98a1c6cd49dc526b2596b1252b1634f995b52c3a71a688e4eb753e13908b23f73666ac8c53ac98031d17762da2173b3a69f53e0f0ef7c31ee6aa3aada3b89a48a4b08fd92482172fd75f8a98b294e7d5f7012bff97d015232a831c5adc2b7c9f578f1ba3592e17a0c9d9699684846b4fe83cbd8e66ba5f370b008f57e22a47e301c0a44651a73bf3d442556168a09300126c00498c00c12f07b4fe333cfa91ee6140fe049e99914dddb5c73ff9797bb9275ddffbbcef91a92a17d44e1b9e30a3aab7beeae614e5174ab5738f75da645e7a92077f4786a8dbca2de085a7fbc1d751e48ab8f9c993a4dd922327528e96a173eba6c459a30c970ec4aac258b9b38ef494091e75ea0de93b470007d04c9c9f856fe37bb909526beefd7ae0987b9310ce5170cd5c10bf8cc46c384a9f8acd747696eb240bd1554ca7969149f533b88a53ab662b53061a147e5c45d90461e06a385ffb0e1e85ffca73efb57e6947e7ac7aa9822343b6c54ef04a749ebf808cebefe739ab0dcb32e84096f50fd992bcf12e31ac9383c81ce80dac52ce9e71239b83d5fbf9b94c262e7107e1a8aeb5c1544657b7748a4828bea7ec903c18cf7d71ef9a93954795fd0d2da85ef66ec20235b0c1edd5e8e3b97273972b70dbf3dad71588d98e51632f049efe9466991a99c523f4395d524ee8ca3f27e624ef5834e6543df999467170d30a9b9d01e02548583310126c00498001398ef04ee089b825d6771411a31aa495a8f728367ca0618d7893792b05f01cd63eedc16cabe3292a1c7798176b29f7d0c4b9527a2619f26a1cea437d16e9bb6107f912a794a592f846eaca2a138f27c48b8d2e7656cd39a6ab02e41e513a89be0ae83e18b57a583383cbdbb5ab1a0801c468b42739163de26f94c547dfb79e071caa82b42c7d94eefba4937afa579651820c381b0d927c3e07f19f1f2bb84ab5611406ccad3a8f46a7f82665ae805db9872532be7e079c71c6d425271a94fa3c8235dbdf979e78a90caec54ef87d0bfa8ce339211a349bf69da91d6b41de98ed57e2770e8f9f578f2c9f558bf7e3db2b619d519dba6c92fa462d0d33c8d8ee910c82038d489aa2986d8cbf9845d3f39e199fa8e7d10995eed3d1b2f64a548395af1853ccb83daf64e29a9e3a2b25f12248f647f2d910ae94bed7d416f0dce4a0b5cc4a5652143f2c67cbff38d90c4f1155958355c9cc354680fc7f08c6245775fe14339a7ea7e229afa41b5ca07d19fc96fbc35cbef73cf4dab834eeb7e2a5ced416f30213fdf44c3977963024c8009300126c0042241207c0637f270f9c51b0392ccb1c8321f47b9495a1a4d6f42e3f1179d2b618d76b5bb4d5a7df60f97a57871309434c3281d6517edc73e439a6c8e8b048f00f320fdf6b5c16c14f5cb3695a0ad31c7351fcadbbff5f2f709306157b0de0bf854320061d92ae42bee8e8ce67a341664849d8ba5f8350c49796a9236a0f94823f2b3c58c75d9f9a83fdc881cc30eec6babf4618c73891e913de186941e1eb5f46fb1ec4a15bb182bb45a3aef79a72a4a54f2a3ade44520d4cdd368ae2c74dd706af528aaf991cb4014ecdb665f0a47bcfc06f1ea6bef489268b0e9c5e3a82c743d856bb30bd17cfc20aa0e74a25a6e974268d572f6e270d790945f1c76fc8cda8341a82b5a98a87e961ae4877d3a258f2d9242abfb52dfbfa8cb2fd2b166493f15ed6845a2f462815ad35ffdfc08dada2cb0b4b5d1b7f0b1a0b9be064552dfe84551457e5e690471a2f07b99c27a2db4d970e66055403143d22fa01cc21d88fab4170f53fb13fb3d1db5f5c623fb20382b0b9b308cb66e50dc57dfdec9935555b9abec9748dc88f6d7129ed0bed4df171c3cfabe7bd6b4e2e9d1b0afe063c4ee67d3a47cc670f46017f4d9d9c8567e8c85302b7e37dc850aee48ddfdc42cf583c1a9e60a1d627f262dfc8b988475682ecf875e9f8da2ca46741e3c809fecc977e5437be1680fd925ada832172037b700073aea1d5387b865c2074c8009300126c0049840d809c82fd8024e78aab50eba6a76e2d8ea0e6c71787ac523aba00a99dfb72146238d5fa05cec63e75053ec3e84a1abea55f46756214d788e8b4bc59eb3a7f1bd09203ece156f5a018378ab386d5a8104d024c1b0a78a3e1e81c7fbb0df433fb71001cbd98eb31fbe8014611186d864e41e38836746af60417ca26238975bca8a83c03cdfbc43b523e79f1e4387599cfc3c26210db96507e8a3489a76358be370b7fba9808ebcf30b289acf40e6b26a9ab85d7aa2748648c29e83071d47633d4dd856d4e0bce2d8b929581385381aa46ecac181b3dfa1e17093d028eaa7b030c8aff78763b5db50cacf5d6c7f479e3c072d4538f4e411ec584d4363636815d61c33ce6edf0dab3d06b1b1725b8ac5ca54d7d067d024dd6aebd9c98a57f1ccba2a38d60911da83f9007dbca58d59aca6b678a7a3b67ff14e293acf8445bf80fb1791819a76d455f526acb4dab4a325c52520893e6e5b523252576760cdd7eb612c765f0d404d7eaed902dd72f13af06c0f20afe32d8e1f15fadd19792be079e542d1cf4b281f27bce4f41126e8533189d4f60e62dbdfdae9f75691836d184d05cae1e5eadbbb5a2eeafa252210d1fe3a68e2be23a8bc2f186c398a81efa52355fa491b7fff773e5691f69d65a067f5e6ad4872568d04ec28abc20e1f91edc3c75055d7eee34ab0a7d4dd4f84a51f0c565495e1d5f56772665de8ee1f435a86d07fc620352b175559f235ba5379e409328835b85ede86a13d3cfa55699489904ddc97f0207d29069bb832e73d26c00498001360024c206c0482f3700b60d2ea8a9d59683a3540fe04e2a634b68df61dc39e6dbb7dfcc07721ef07f5181897636924639b1d031dede81f179f22ed53791e396f24c3c6c64f427674d7d7e2d41059043db6f1a16e983717f8d04f11300839eb0a7e88f6be1129720ce21365639b0d43e7ce61547ab8b68ecb4341c5a0b76e5ac59d691ebec7691e2eafadbd1459bbead137eaad9fb00eed0895e1aecdbbe13e324b76619a3ac3f12b3ef2f31220b013b7e457c36ec15df9c7deb3cced8a7050b17333cc4d1d1871d6b3183763dbf8c839d4efda4673bb79455575426df9b95cc25cfaf812c017cf9a826da86aef8153454daccbd8661dc5a926331941dc0ddeeae5ec42c16633ba87c6bdc41bee6ec5a13ef1fc824577b9bc09bd420677425dffe299871d5746c73c4f46c571c8fa05d1bf080aab6947e6c6bf94bcc6ec18eeebc6a9ee1ef4f4089f73e81b1871f6fdc99b9e43be87b3a99afcd4f667f97bb6c031f295faad777ed51470f9aad72ff2fda04329db087117ebb3d2d8661ded436d9ed1cd9b5c08afb6bdabe702a8e99722dd5f075c417c060cf1be80cc6b277ae5df472bde3aeaf1b2c8679ec19dbc7ef58b8022d86e86614a05392755f713c26f7570f791d79d2bf2faf8cd549cf27cc3ac369eac9e9afe4c8e2b7cb71495a163c0f3f7d38ef1e13e34bd5ce1762f198ef6f0de87f2fd24653ef1192e2885e17d26c00498001360024c604608fc19a5fa3f3392323d621b4d8f63f9126155c42f30f86e0b4e0660c8d0651bb16a651c16e2162e06186766e49f3e5541d6c7495652105706de447b973c6e67fab84185a049fd4d8faf242694d3c4159cb7b47b18bc824a2de0c05a1adef044aa982f658c775b2c11c93760014308a825a6e9ab12c9d74dd86cb870de82ae00eaa7aa2c67a9fcf406231ebc5bd2f0da0558daa779971d829c5abd014f3c489e6c5449afcd645b701680bafec5193dea77a2543f7d094e576da176634377d593d8ebc311465bd8888339c2d0352b8e993351314db59ba9a2c82eaac19e673310fff9393c4f2f0902ea9de7907e45cd1dd82178935b07b02b7327aed1ef51b67639e1bc85cf06df8565ba1fdc60da7b18b904dd2f914611edaf43ac90eaee0bb4a839d28c0c615ed6f11eaaaf4581d5d710658d647475f71351da0f86199c2edb8055f18b60bb398e8fce9f44ef349d5528ed4198c32df51ee0dd869679733f17e6e2e0e498001360024c80098495c00c1adcc22a2727c6049800136002b34c405fd48caa1da90e2906daabb0b3cad3e2a643a5a55a5aa8801655d895859a993264cf008bb9a49fd3e0661b40d9933bc33e045189772e7151ca1dbdfbd9a86ffb0e7af7ed74ac446aa0b9b5cc5b521ce20e1d2b434ec5c9e8159d2563024c8009300126c004980013089880a7877dc01139201360024c8009dc5e04ba8ebc837132b80943355369c2bed399268c5cfc0457266e20ee9e243cf8401262a561ad13fd6fcc29639b509273523f1a32776386abe19ce432c34c4249de589987d5494958fd2f8791795583e42471f033ecc3789d8d6da1a0e5b84c8009300126c004980013882a02c2a351595449c4c2300126c00498407412b8fa0efefb8e143c4643cd63efbc030b344bb0ecde442491f1e0de654b41a768a339267b7e8d1f15d6c07d76c9e854c94daa39a4dfc6e7fe1a5f5d46efcceeb886379b7e8d213745c27c3087b88459f319496eade17b786c05ad9070e712fc5f4ba5a5a8ec6338f653335efd70ceb59a1961c489320126c00498001360024c603e10e021a5f3a114590726c00498408409087301ad7d2c15cbef921da527f1d9f0007e5b373fe6068a76fdf4c67ce8ee5b4253b65dc6913a4bc4e6fc8a762e116e06aab3cb36152133fd2108e6b61b573fc4d1d23ab749f25527cc1199001360024c8009300126c004a286001bdca2a628581026c00498001360024c8009300126c00498001360024c80093081f940c03100683e28c23a300126c00498001360024c8009300126c00498001360024c800930816820c006b7682805968109300126c00498001360024c8009300126c00498001360024c60de106083dbbc294a568409300126c00498001360024c8009300126c00498001360024c201a08b0c12d1a4a816560024c8009300126c00498001360024c8009300126c004980013983704d8e0366f8a921561024c8009300126c00498001360024c8009300126c0049800138806026c708b8652601998001360024c8009300126c00498001360024c8009300126c004e60d8105d1ae89d66046d90b4fe3becf7f874c6369b48b3b23f219ca5bf162560a6c23ddd8bb7d2f7a61446bc72ea4c459d15dfb03ecb50cce4cbe45d5786ecd4adcbcd88d57f6d66166729911d1a322517d613dfee13bab00db65b4eddd8ebadee0c49aad720f4ecaf91bbab0fe087256c59382e338b4671b6a022d3f5d118efcec59c4d96db04b78626234b07e7c029b7756040ccc30c3ed2fd4fa19b0221c706a0261aa2f5367328b57e7bb7eb38856c87aa6fb09f5ea65a3b9631f965ffa7ff17f2af6a29d6f20d4a3e4984c8009300126c00498c09c2510d51e6ea6ca561c341b9012af416c72166a8cda390b5abde03a647e23053194406c920e4feb6827ff0932b60967e2a0dbfaacfaa4a78c698269c706a42427236d430e5eb82dd94f0968fa8b0b17411313034dec32c42f9e3eb87b88d92a7777296ee7a3858b62012a3f4c7e86de408d6d12308d4628f758c44a1fe138fe81af223b60a011687f21d5cf8015e180011008bdbe0490c92c0699effacd1eda08f4136a95336622354e8384d40d301f3c8e72be87504b92e3310126c0049800136002739840d47ab899aadb50b02149423b81be539d78fbd21c26ad5af45e5cfddc0ac4d3c33f6d7f12fe5cbc0a1b7d69e8639fbc259c99f1edce0073d0992a51f6dd3588a71bedf3adc528a8eb0a30e6fc0ee628b7a0549c9d72e7f2531692ec9fa63c17c07e6f0df6955dc6aa440dae5db321f3853d48171ce5ec93b81140745f41026d7fbee206722ef8fa1948aa1c26200233505f02ca375281e6bb7e91e218403e81f61311e9e72f7d84feb13f475a8270a7128fac3d8db84bf377d8db12e4db8b00f4e6204c8009300126c004980013885602516970d3d1503ca7b1cd3e82a63ddbd1701bdfa37dfa85f4e04f4313df1338e8fe3f086636e136f6d33fcc149816b4b4a6e2b90d0fe18bffea465d80c356ef7fe82124c409c6c1090cf4b0b18d40a8de66a3dcb9fc5417975bc4de93161afa2d6e0f6ecd25835b1c79cbb90599e6405dfb9b2651be1ca50442af2f51aa9824d67cd76ff6e8abeb2722d2cf7735208f3ef9d516e46e4826445a8bcd7000004000494441541a6c287819e60b59a8e25b83d9ab329c331360024c8009300126105102d16770d3e6a32c67b504611cedc5b7b7b18dac6bd07e49f46eb35d19c24922a37dfc211a4c2a6c567cf8deccddb9b6d715a3bdce9151c07f1e4cbe470c6bbd882ed9e21070ecf91b3050cf031781d929772e3f5709846d4f652faba6fda99539f8faa936278e372d0195f565da74a325c07cd72fc29cd5f41391ece71bf61a71cb3962210e86d266bc97b9d3712f1361549c1d1360024c8009300126c004224e20ea6e7df35f7c060912868143af4cf926d450588e8ddaa5f8fce2ef505ad3ee054f6f3263eba389b8e1e7ba60cc2a2ccfc186af3f80c50b441437af7f82bece36543408a62d7f9b16f92585c8d469a1b15dc7e4620d6c7ffc038e3614c3126e2393fe697c3d41748df9f0f47f38047a76e3c3a260e31fe08d29c4d49b4a906b5887158bedb04d6a1073fd227ef3da2f70e1cb9978eec9c771ef320d2e76fc0c7955ae440c4595c85c7917269daa2fc08dd137515c65719ef1dcd11a0af1c2c6644c7e3e8915cb25371ecd0a7ab35d8d9c3b8547794ae362278a7d9491675a811cebf34bf0ccc3cbf1d97bada868494079fdf378fccb776372721293547e6f1d6d408d8f8298bdfa62c7751a0eada3f2d8bd5587e58ba82c62ecb8f8ceeb28286df1ad7208e5ee3b41ff67c3517e267335be99fe15dc4dcd884a01d7463e407b6d695827ca9eb572b7df2478d9a86ecec3aa7b17c36eb7e3e6b53fe2f4eb3f455d98670257d3fe5c25abb63f53513f5d9906b8a74351e5b7711fd58f1b97dff2d95f439f8feaed0f43e83146df6c45958f361c4c3d0ba5bd3b7f3b064fa0b4ee248cd42f7e6bcdd7b07cb1f03b3189cf067bf1cba28aa8311a04c3c5adc0f446946f7f0a0f272e87f81348ba7ddc87b6a974d319509eb3150f3f40711c89519c918fd07db4092d27a36c667c35fa914e01f3241625cfae03dd85e0b27529d6501d594af5e3d2fbedc82b7e13e58d2fe31b2b68024f5a40e5fc897aeca5bae4d8d4c61363d34209b3f13badb67f015a68d1a0872c9dc84aa69787b1a928a834e264b1ff7b0a494dfe62024c8009300126c00498c09c2720de2f478d1a46643956052481c67a505133b5f756eada8dc848a18195df8847271973dc43eb91fb7d0352e9b2fdbecf408ffeee5aea6925c1ca1d906c59ae6b090948ca4dc3a6acadd8bf6fb7b7c140970f4b752e84fb467193cc830989d873e0349e68fd31768771de323d19f5c4ac8671c2b1cca51e5f4b92cebc75d4396c4d9646fecea737cab9ce39f084e515688b4fc30e73951cc4f1fdd5471ea56f97c12d758d1ee9c91e63dfecf1d093c1cd9daf2b9915ab36604386306444b1c5c463f5860dae13f77d42fb1e65e0ba1ad4deda8d4f89e59ef10de8bf1f039a2e4eb12562c79e0358b7a609db8b1a14e78159a92f9204ba9236ec4895e724144fc66715e0f0d28578c6434ee1aada7297b20bea2ba4f2d39ad0fccff9488d77af338989493451f65aac6baac0de067f35272831312be52e8818bb1aff7066352d80a19097fa891cf341ac7dac1639a5e17b7054d3fe1c52a9edcf249582ad9f0a1201ee7e05fa4d1b90e808fd207e4ffdb5676f909d99850de9621be939e7e15aaba29e85d2ded77ef3696c107e5b1ed3e2e16fed4392631e2a97aa09095b5076568795cf3f8386d9b431a9e0226b915fdd0ad30671411ef99cf02db4ddb4b3ebb0aef68728f5984ac058d288822d698ee90cbce2a46fc237d785b73d28f308765f8d7e0892a7fea9e7b065538a9768f19b0a70f66c81dbf90d3965a8bf3586029a1f436d3c394135fd4448fd7c88fd8b2077a9f117f83a3111fa80c4755be915864571e7216bc6df4c8009300126c004980013985f04ee882675b4f94f22497aa81df87f0e63bae7985bf2820193beb59894a73e9bf49c125c87fd2fc9c6361b86fb4ea1a9b6164deddd18a5f509842d36291dbb5f2a140f9c7f0d68fd99cbd83636d08dd6fa261ceb1986989506e9392fa1505849344c5b57cd4eec2aab457dd53f4a0fa85dd89967466d7d2dfeb1c265285366a735d5b88c6d13c338d644f10ff5605ce22184b50df7e0506b137e52e66e80fbd5bffe12fd434318e81f722ccce048973cc7a6dabababad13f3c8ca1a1315730db3886299d613a3f3c3282feff120c6ee1d99ce54e936209c636eb683f3a3a4e616064c2994152462e9a8bf4ce6361c719cf8f3ae1af2f72f67148918c6de3c37d38d73f22d5177af02039eb7d541835e52ee716ecb7faf2a3f6d058e034b6d9c687d17daa1b0372232233ef86dc529467072b91eff0cef28b58b9bbe4108c6d13237d54cfba313466735e48c9da831a93d6791cea8e9af62778eaaaebcf646983af9f72ccc0bf2d387e4eee1feec33a1f2b16ae7b581a8e6e1bc0891665efafae9e39eb4bd0ed5dd15768e8058c646cb38e0ea09bfa997e673fa3c1c2c001cc4048755c04410af71fa1df08d9d866c7e8c0399ca2b63b3426fd003a26b9ff398adc7ecb7478422f1bdbe877b3bf07c70e1d42c7b921677f96422f11c2d5de4301a64e3f153c6f292bd7183ada7b68f652c5363180f6f673cedfd225cba4e5aad5c6939256d34fa8efe743ed5f641e2d68ef91fa004d0ab686b1df9473e06f26c00498001360024c8009441b81a8f2707be2e12f497c46716a1aefb69040ea9e22238194c2d85b3016144b07163454e950dd568b0d49e3b0bce2ee6561283742707a10b6a18e2af26c917c345a1af046fe7ed4e6a69329201e4f7ddb84ba5e3f4305c5e841fd554e38ed8838d8050fc703b7f49efde6d7c563fb30aab28c92a1ce8296de1274566d7178cc0d76b7a2c6e131e716158327eb90471f61cb6fec406e9a385b9c7b288fa32e8a431f9a5d0ef51d07b19aa2583ffe0d8c3b6b3c0286ff7062a01d593b5d4643434933cc5b521d19a5d264f5d9548f7c9b25839045657d71cfc18aeea672a7b797bea811553bd21c41962c911ec2dc2320d872f7881ef8a1caf233edff6b677b18ef3b84cd05aef236555a50b049f07a8c45665e394a4f96062e4f00212352ee0a39c6fbdbb139cf55cff26b0e233743f4d7ca78ee05685bf64efb8240919cdf5d55ed6f96eaa75f25fc5c68683b0363ba816a440c745b9f052c2e9ed4dbe0f124b1731d7fff4db7363b9bf54c5665b8bb1ec6bdae3ebda8f938be79f318ea947641397084be5573c92ec7f674c9339b16253a44f3a42a7f6e4d95add476c96b6be2223e709b22a117b54d1d78f9d92fe1e82b05f47be252f4a0b112ffb2671395ad068f6fcd27a76977ef6257c808eca9d44f354f874a76f4d417a1940cc5e6473a614811bcd02770ac62274d8ba1c357b2d29146a7eefd8a60c1547afcaa8ba7aa9f50d9cf232cfd8b58ee2d87cfe0bb190687c77dea866d34d6d4f59b2186e0bf4c8009300126c004980013985f04a2cac32d317ea948d7760d176692f3b52f9c6f9c91f0282af30d642a92b75eec7de5a7e4f156e63154488fadebc56193f6b16e97b14d8ad6dbb01b278645cf97f895f7cb89cdcaf72dc955cbfaf1efdd876d7575e182e4c0b068893c539e7f1197046d8e5d81459287221644c0f7c336840a85b14dd0a49d1e703a46240fa4d8fbf10d772737ffca4e7545557d714f70a0bdda696c13ae74d51cc5b0e471b8ecc147dc03cfda5130e567c4d6c7a43a641dc02b0a639b207e4b71097ac644056392d6c2ece62913a282912a77594ccaef1585b14d38dd5054837ed91988fa906de1d44fca37e0f63757ea675715de1e15eb446cca7ae4bb3a5de8cd1ba5b93b6d7887e660746db358cf242126fa0fb919db84d3353b379381d9fd858c4be648eca9e752b87dad3424948c3d07f6b919db04c95b8acbd0d1df87a61fe4b9193e856b8396526cdfee6e6c13cf17e38309618fa62f885f26eeccd25f75faa9e729aa69c5e879d1fa2afffe425838c8615b73bd508959e4f9bba8369e0b6ec0fd84334a30fd3c450a43ffe2ccbaeb2c2e4afda6370b6728de61024c8009300126c00498c0bc2110b449652635bf250d4cb14f7c0a9a637ee6b6c13abc3bbc9d26f0153c2ae2b129d74c9fbfc5e8d087e8f9cd6154b5b483a659f1bbc524fc39da2c346f538c6c5da2a03491faa27b449c9a442dcd4fa29c19cd6f52337261e10251aed8a447dce5d0adc54a71fa372c98a1650995036c66443965a276dfb9fdc75b1f236b472a858cc1d215c2537d886e2821d617c1d3e10fbff5f4b3bb8a2f04bb20958766c912a556b3baef9ba80f91f4c9582655ffd1b74fb8f96c88a10771f8cc20320c6239dce97ae6f4915890a72255eeb2583ef3ebc2db1f8d236db5e02a1b83c5e1d44fce37d0ef39543f7f75fc3cf5b5ab49b304643e6f4083c34b588bad190f88da8ebf8f83caa6329bf5cc21d138fefd9528f4c251cd458be4e5d28f808ddaa84f57e94194e6b9cf3f26168efc570b83291bab5293f1a565cb10b708b879f36e8767b310427a8f20078ef0b74afd54f394d5a3ced0b30f8809e4f64a6d3c395f75df01f7f342f221f72f4a19afe3868d6a486c0c6234523d545ee67d26c00498001360024c8009cc330251e5e126b38dd12cc5ddf2c10c7d971aff0ec7fa4715a96b9098b21a8682329c3d7d1cfbcd06c535dad5e9b0c2797fa8415272329292925c1f3a4ea09b48c726ad78ea9e40e48edefbf0b29819cd93b2ef48338a8cd930e497e3f0cfc4a11c34e01303ef289f6a23275b587392707ba579eba6744a8395da14afcb6a4e045d5fdc32f1f150e5767d0e1e5c773d585fbbe6db3c7efdaae4f242eadd795718758c60b93ba4f693dfbb039f3a95f29c25d27921423b73a57ef6361cc6906068a62d79edb768f639da74dbf068a2087998168271338fcf663d1364b35ec2fb6e020927a36053cd6505ee5d2ab2b68e0cfa30944fad9bb068c2e9b307612ec8a1c50236207d751a5253d3b07a75d2d411237655a57eaa79464cb159cd28b4fe45297a2f463e153b00cddd5f42381cd095a9f33e1360024c8009300126c004a28d4020af602326f342f214716c318bbc5e16875f885e54e43d830a5d360a9fcec4da358f2225214ecc46138f7483198db7ae224f9edce6da55082f661d228ef6a0e9f820167a8e0e71c4a693b72e6328fc02079ce2c98a1c6cd49dc5269a624a93904aab7696b9c51d3ed540736ab99d9ab7075f8cdf08936e41d69730e53a1792f1db892c74b95146da2015be72f75f029e0e2dfe4346e2ca5ca99f27f19bdf17204598ff2e6e15be4daec08bd7ad115751c6183a2dfe3ba659a96701792945a27cfde7112c17d9bb29f6be071c060fe58c62fe73018c342fe31ec7bc8c42281b79840fe2e34b9fe2f31bd4bae9ff97751b9196a8992a89885c53ab9f2c5cb03ce578f3fb3b5cfd0badb27ebff8e6d27a69206883effc66ccda310126c0049800136002f39180df7bcbd9507674fc73ca966ec6629723554bf35c05ea59e06bc897f6118547da14daf49ea4050ee8230421e35bf9dfec42569a383795768df0fe557a1c19bc80cfe8c56c228967bd3e8a8606478c29129ecd4b7ac7ea9da20476d8486ec1e9ce3a3e82b3afff9c26760ef4112b041de41564434862daa8beca9d222d760ed1b4e2a3f77de8ea2b5eb8ebcbb4c2477980e9ca8fac4db2e357527a2629e3cdf9fe2f2f7729192ebba790a2aff2a3d33356ee7ec6c8e956af70eae7322d3a4fcdce4ea0fdd9ec48e7c8b5a5b58b264edf4146b6183cbabd1c772e17bda36cc36f7bcc9b49c1c351cf7cd59740dbfb2c729a326bd55cbaf0d1652bd28449fd6357622dfdc489f38c4d991b5dd4e3a935e21ca6b08da0f5c7db51e7d1e4ab8f9c992e91085c57a99f6a9e11506926b398ae9ff7cc3be4fe6519a4192f101389795e3de5e76326c00498001360024c80094498c01d11ce6fcaecce7ff089743d011b6918e4749bd3234e7a705086cf7ef631484b30284f8bfbba22749ced44b9c7a8515a1692e6ae29c30019a884cd3ea9f4cbb984ab56f1c93b36e569547ac675c4d042ef1823e53898b53f5ad376a43b56619dc0a1e7d7e3c927d763fdfaf5c8da6654676cf36370f0a5a06cc1d52cbfcffdb256071d1951c3bac53e884caf72c8c60b59295236567ca118ed18d9fa12564d239658c0e547935f5f90468c6a92d67bb72518605c271a5260bf025a58377c5ba4ca5d969816dfc8f4ec8eb485f88b54c923d67a2130a34510ed48cedaf13d5d3c55fd995b0e913de8adc159696193b8b42c6448c349dfef7cc35b8e10ea99eaf6ee2dc5ec9c99aadc43e0327cf1aaa44f1c9ede5dad58304856538b42739163fe4ff98c30a5823cff27aef47919dbb4a61aac4b904df0ce5853ef4ca5dfd431a7bcaa4abf10784e294c242f06c133e07e5e903f8cfd8b2eff5bce95ad473f7c2f9274382f26c00498001360024c8009cc0a81a832b8f5369cc68874d398b26eab8f0701774667ff70593a11074349338cd25176d17eec33a4393d70dc6301253fda4ade15b1c8329f467365a1388f901048ab4751cd8f902a8f8a717bfb3b88575f7b474a4a834d2f1e4765a1cbdaa3cd2e44f3f183a83ad0896ad3ecce4cb22251320490967ff5f323686bb3c0d2d646dfc2c782e6fa1a9ad7cd8f8c82618c1eaeb4f46fb1fc2a3a76315668b5747e7a8b99b4402a6212d6a1b93c1f7a7d368a2a1bd179f0007eb227dfb328423ca6327cf130cc06512e1d9541e3917d109c37846da2ef04ea145e9291ad2fa20c73ed6fe0e5d7855fbc3120a927b4a5e32897ebbdde84c6e32fc2b126098518ed6a072d3112c62d32e5ee1298f2dbd706b3d466b24d25686bcc9156d50446defead977f9fd086fcb723f99a2b07e79e8af6a7ae3f73e6382b3b078fbeef9e2fad047bd4e74a35eaeb99daf6ee2e58648e82af2feab9588a5f73cea3a749da80e6238dc8cf16df14e9b2f3517fb81139861dd8d756e9fa0deebd0069ea2d60d92ae42b5e2c19cdf5682cc8f0fb7b2b100c5e3ff5dc55e9472d78f6fa3315baaae82794b904decfabbd5f52e6e6da7f76f357a58371744f317cdc1583f798001360024c800930012630b709c82f3aa3440b0bde1accc50ec173243e1d2f15e95d73a8f990b0abea55f46756214db02fc5a562cfd9d3f81e79ddc4c7c916331f91845337051736c12aa341eaa61c1c38fb1d1a7639098d46196f0cbfdeefbe3adda0a508879e3c821dab69c8690cad6e9a63c6d9edbb61b5c72036568e1b8b95a9aea166427691debaaade84955687746818978024fab86d49c9485d9d81355faf87b1b8c5ed92b9ac1a06d962e5bc92843d070f3a8ec67a9ab0ada8c179c57da70bddfd6348cb10f28b416a562eaab25c21621f79820626357819275c2154ecc524c2603e886d7f6ba755cf141e16b6613415b80ffb8d747d09541b85d4814699a170c1955f57cd4e1c5bdd812d0e4faf7864155421f3fb362a07b92d9097e8d839d41487d7dce6503e12e5aea4ac4982614f157d9427697fbc0ffb3df5d39b515d6570b43ff7d0ae7624cc8175ccfc242a3c3cff54b53f95fd99bb6cfe8f66a27e0eb61cc5c0f7d2912a19c7c7dfff1d4efa11416d3d53ddde957204e135a48c16d4becafaa2960bd08e9c7f7a0c1de62cc7dc79310969c82d3b401f77a9358be3148b17b5e3ec872f20455895373619b907cee099d12b58109fa898bec03dbef348a57ecef841efa8d18f86d6ce667f16a48eaafa09671ec1f5f36aef979cd9493b5ad37ee8a539fe6cc36fb9bd0cf30ccbc74c8009300126c004980013982f04a2cac34d805ad3d4496b688a5bda8e1f217f4aa7aa2ee4fda01e03e382014dd83492b1cd8e818e76f48f8b4f4b76374f35a062e766989b3a30e28c17e3666c1b1f3987fa5ddb686e373155e5df9a826da86aef81332a2d6def34b6594771aac94c46ac19303028859866dfdcf897d2c3be1dc37ddd38d5dd839e1ee1730e7d0323f4a82f6ec99b9ef3e27b4b7ef5ed9687eba933f69e656e573c0f5a8acad03130ee71da8ef1e13e34bd5c115e631bcd25d43730e6c84b696cb38ef6a136cfe8c3ab2ad2f56552e2e0e2e701c671387e65d4d7e95939176cf955eccc42d3a901679d521adb46fb8e61cfb6dde12d73814a84ca5d2c003bbaeb6b716a882cf91edbf85037cc9b0bbcf5bbee5ac1d52d8a5d590f6e09f3cc7b6d6ada9ffafe6c36ebe7499ce895ebbd156f1df567c41711a9ab67eadabb5ba1cc84b5d12d033a08a1bea8e34279b697226b573dfa46bdebb5507b47a8edeedabc1bca9fc0ba821fa2bd6f44923e06f189b2b1cd86a173e7302a556febb83c64550a1a827e520ac17fa9d04fc824589ed79d2b622bdbb624aee294e79b4db5f164106afa0939aef01d4c3fafbe7f51e4a8cdc73f16a44b5e9056fcf65f2b1417799709300126c0049800136002f397c09f916aff136dea192bdb68353469fe27f220f1f950eb21b42edb88552be3b010b770f1dd169c543e297884551e6a69a184f4558964aa13361b2e9cb7a02bc0b87a83110fde2dc5bc760196760f7715654691dad797e074d516d2c786eeaa27b1b7dd3b636d61230ee6a4d1052b79d9647a79d978c708fe8c2edb8055f18b60bb398e8fce9f44af626867f0a9b9c7286aee10bd20ad03d895b913d7a8ecb3b5cb29d02d7c36f82e2c0114fe6cd417772da2fb28f8f2d3c1687a1ccb9708abf47e81c120da60a02466b3dc0519853af338f531423dbb32f026da035ed525500d430f174a7f167aeec1a4a045cd91666408f37e8df7e0f9cd4508ac8b5057cfd4b6f760349addb0eab808326b69d8ff13a92be9b793b65b1378b7c5e26668134ebb6df49b697a5c0c7f6be20ace5bdaa70eef1639f20741ebe710513dcfc86ba83ec760fb7975fd8b01cd1d66c8535e8e9caac5f6597e29a99e18c764024c8009300126c00498407004a2d2e026a8506e398d2c691228fb581f7ebaad8006c2f0361d017d5133aa76a43a820db45761679527351d2a2dd5d8942c8ce5a245157665a1264003e3747947eabad3f0621b40d9933bfd0e458b943c9c4f640870b94786f3cce4928dfab6efa077df4ec74aa486925698b7a438b21a3a56869c0a7f034a67461a4e950930810810d017c2529a03c7ed0665671d3a86cc1cf66e8b0079ce8209300126c0049800138812029e231da2442ca0d4f8632c3b528974f2808849580df3d90efc79ed3e145be6987528c244bb8ebc837132b8098b94a61acc389d69c2c8c54f7065e206e2ee49c2830f2421561a2635d1ffc69c33b6b9e1a4213b37dc4ef0c16d4180cb7dce15b3b1320fab9392b0fa5f0e23f3aa06c949420f459b7d18afb3b14d64c17f99c03c22a0cbdf8fda5c79182919db863bf07fb3b16d1e9530abc20498001360024c8009044220eae6707309dd85dddbf6d0dc49f27c6031f8d3381bdb5c7cfcec0dd6e195a65318b38a13c868e2129192b61a191919484b918d6d34e74ecf21fc20cf7d51083f2946dde9850b1c839f68cabe05b82beaa46381668a0097fb4c919df974e3e2168999c4262a8c6d6338f6d312f65c9e79fc9c03138838816bb784a593c46db8a71599c6d200878d475c54ce9009300126c00498001360023346206a87942a35cece2fc1ba25e7515ae3393c52198af73d09e80d26ac7d2c15cbef921d1927f1d9f0007e5bd712d573ee78eae179ac37e64377df129a6fe8328ed459f826de13d03c3de6729fdb059b6d2a4266fa430e23f98dab1fe268699df78213735b45969e09300127816c94d76462e4c4ab683819d80c8dcea8bcc30498001360024c800930817942604e18dce6096b568309300126c00498001360024c8009300126c00498001360024ce0362010c5434a6f03faac221360024c8009300126c00498001360024c8009300126c00498c0bc23c006b77957a4ac101360024c8009300126c00498001360024c8009300126c00498c06c126083db6cd2e7bc99001360024c8009300126c00498001360024c8009300126c004e61d0136b8cdbb22658598001360024c8009300126c00498001360024c8009300126c0046693001bdc66933ee7cd0498001360024c8009300126c00498001360024c800930012630ef08b0c16dde15292bc40498001360024c8009300126c00498001360024c8009300126309b04c26a70d317d6e3f4993338ddd98642dd6caac579cf050285f5477096eacbd9334750c4f5256a8acc50548d568b058dd585d0468d543327487e4d1bce9c3d8b331d8dd0cf5c369c321360024c8009300126c00498001360024c8009dc4604164ca7aba1a812c6bf4847627c2c303909bbdd8acb1fbc8383b5a53839e8117be12268626280d865885fec718d0f99800781858ba84e09f5c5f6197a7b3d2ef2e12c1130c1b463031285dc9393f182f124f65a3c1bfa2c893643d92e8b5f06aa85b05dfd185d33940727cb0498001360024c8009300126c0049800136002b71781293cdcf4a8b674c2bc63139213e21c86348d4683d8d878a4a467a1ec60272a4dfedd92fe747b718c5a6d75a64a1ce9e8240f9e33a82f8c36ff1d7bd47263c14402770608426d3d531b2f40b1020a760b623db44f72af1510300ec40498001360024c8009300126c0049800136002d312f06b702bb7fc0336249307126df6f1011caa2dc32e73158ef58d4a89c6625341190f1d956844ebd7fd0f3d8484b858f2e0b162a087fd77a2b59ca247ae16b4b49ec2d0f030fa4eb5a22e40ef36b5f54c6dbce8e1c592300126c00498001360024c8009300126c004980013f026e07b48a9b10659c91a4768fb680ff63c530479c45f6f573b062b2dd8b32999ae2760c3d3d9a8eb3de99572a09e315e11f94458093c987c8f989ef522bae4420c6b0e9cd87c23d05e578cf6bae0b4525bcfd4c60b4e3a0ecd0498001360024c8009300126c00498001360024c20b2047c18dcb4a8feee372429c6f1cb1fb98c6db26896e27fc41acb4b58f0fb5fa1b6cadbd8463e71b87e09d0994ab07bab0ecb176968aa2e3b2ebef33a0a4a5be464bcbf750694e76cc5c30f2c8728d8243e1bf908dd479bd0e235611ca035e42377ddc3587063107b4beb909d5f8ee7b31ec7dd8b62283f1b867ef76fd85d65f1ce473aa327f9720debb062b11db64992f1fa45fce6b55fe0c29733f1dc938fe3de651a5cecf819f2bc74d422bfa410993a2d34b6eb985cac81ed8f7fc0d1866258a6346ae950589e830d5f7f008b17881adebcfe09fa6891898a065f1cfd8a3ee505ada1102f6c4cc6e4e79358b15c989d8a36cd0ae4575723e74ec114ba00372e76a2b8a6dd71c9d71f93b91adf4cff0aee263127e9dfb5910fd04ef3f6b5cfc4745ef69b244236aa9bf3b0eadec5344fa01d37affd11a75fff29eaa6cc506d39f8d238c0737a23cab73f858713a98e3a8a90eae8c77d682baac0542518304f6a0325cfaec3527c8ecbd6a558b3e66bb43f894befb723aff84d9437be8c6faca00912ed369c3f518fbd7552ae6ae3496a0b733566aebc8b729237aa23a36fa2788af6a3b69ea98d274b462d5f5dfbd39b5093fb34b4f72e15e76cfbfc127a2cff1b5fdc7469edca83f798001360024c8009300126c00498001360024c8009a827f06714f57fdca31b60396d86e0e0661d6a47664e95fbe5298ef445cda8da914a21263034700d29a9495ea1477b9af04c5183d7796349230ab6a441f4abf3ba8ca18e5ae494ba1bcfccada7614871088a53ffa9c1a60ceffc464ed5627bb17b3c21f5fcea36e46ef00eef99b39d18ac5732d0e5c3529d0b69b4ad47701bceb5fe18bbeb7c0cddd417e148e50e2448f62f8f88b08e9cc3fe7dbbc362d0d2975850b545f0409c621b3e86b5c60aef005a139aff391fa9f1be049d40775305f636f8d0cf3ba569cf14357760476a9c239c8da6d1d2f8c8d257b93b22a82d8769a5f21f20bfba15a60d290e638d77a87174d4fe10a59e433083e4a937b7a2ca90e29dbc9f337d4dbb50d0d00bb5f1e464cd963330247b14807d08e6f5397e1712505bcfd4c673c8aab2dcb3cdf5f87bc36a3f65275298babfd3a3a4e67f411b0ffce14403aaa6b6accb58f99b09300126c00498001360024c8009300126c0046e53027778e9ad4fc53d92d5ebf2fbef795d0eec449cd3d8363edc8773fd23d2b4e44062462e4ddeefb9d8820e4fe865639b0dc3fd3d3876e8103ace0d39e3a56415a03cdb3df75b93b7c413b1294e63dbd8907b7e499b76a1daa4758ba835d5b88c6d13c338d6548bfa433d1857cce16f1beec1a1d626fca44c697034a0f5672e63dbd840375aeb9b70ac6758925383f49c977ccc6ba7c3fe9764631be9d7770a4db5b5686aefc6a8555221291dbb5f2a749353ed41575737fa690eaea1a1315712b6710c0f0d6198ce0f8f8ca0ffbf3e715d73ee917e8d054e639b6d7c18dda7ba31200b89386cc82df52a0767f410760463dbc4481f3a3aba31346673a69492b507351ee507a82d0767b241ef14ee3f42754636b6d9313a700ea788cdd09854808847d69e9fa3c8ad6aabe0794be96d35868ef61e325f2bb68901b4b79f834c68c932693960b5f1a4a47ff5afbf443fd58f81fe2167dac2aac4536d6aeb99da78aacb3dbb1cfb9cc636f27c3dd78143ed1d8a7a3d9596e2b5fcfd2f614bc66aa4a6ae8661cf8fa806f2c60498001360024c8009300126c00498001360024cc03f01c7a038b7cbd78501a1c266c5d07b530d92738be5e3c04ade50e54e6f287d512379bfa539c22d592219099cb17a51dbd481979ffd128ebe528016c5b0cc83c64afccb9e4d8825dfb7c7b7e60327bdbde3c4642670aa7e1f8aa5c8d9e666941952e9520c56240a1e4383cedc9efde6d7c57dfb30aab28c1007565a28df1274566da1bc2874772b6aea1482d03943b91182439db00d755491c79d3424b3a5016fe4ef476d6e3ae5168fa7be6da279ed144367754f91114b8c87b1b7602c28960e2c68a8d2a1baad161b92c6617925c889b3a454bcbebaea90471f61e85d7dc741ac262732ebc7bf8171678d5750e509d3febf76ea37de77089b0b5ce14d346f5f8163debe5864e695a3f464a9326ac8fbe3fdedd89ce7326ee6d71c466e46a223dd8ce75e80b665afb3045597835a29c960b33d3d418c6d1fc1a1e2eda85138f9992a5b890dd5b1898bf840516542e369474f7d114a5b06617ea4933c39855a398163153b51d5a5c357b2d29146a7eefd8a60e1530843ad574dbcc1935467e8236cf98d1dc84da34a33dda6b29e41653c75e5ae4565de46c973d68653b579285678211691ae3b02d07559bcd4f01d4c34b87b3a367c9d09300126c00498001360024c8009300126c0046e6b02de1e6e0a1cd61b8a83207707daab9dc636216a57cd510c4b1e64cb1e7cc42bb5414b29b66f7737b60981062dc5f84072f1898b5fe6154f3ed1dfea32b609e74e569dc08894df82d8bbe4608eef5b939249f1e3df4bc636e97257172e480e4b8b96480616674c3db6ae178769dac7ba5dc636e97a6fc36e9c1816fd8ee257deef8ce5d8b9f685cb6b28e15154e61bc814266fbdd8fbca4fc9e3ad0c0d2e9ba07c31c4ef15a0e9ecc46dc1c269d23262eb6392ced601bca230b609115b8a4bd03326728b495a0bb39b27d734494f77d936845714c636217843510dfa65e73162b6cd995f08e5309d1c7eae176e5f2b196cc89875609f9bb14d88d2525c868efe3e34fd204f318f5ba83cad183d2f5608b9be4258f8c2615b7319ac63167996abda782ee597789be15d177dee0553cf940904134f6db9a760a5e4b23b31f0ef6ec63641929a57daa0f003550ae7b6ffaba36f6342ea4fc6077af1a6db553e60024c8009300126c00498001360024c8009300126e04e60ca47eb3bdded54ee31a73c9ac01f7eebe91d77155f08f628f2cad12c59e227b61606533656a526e34bcb96216e1170f3e6dd0e0f2d2182f4bceb23ae151ff5285c8b1c212ee11ae59744f925a6089e6eae6de102d10a159bf4084dd54fc639f9926e2d560a8e44b42d986299d598843f479b85e6858b91ad59148126fa5f748f885393a8754f77b00eef0e6f97567e8dc7a65c337dfe16a3431fa2e7378751d5d20e9a866b46b6a907052ab2d4276399a4cee8db27dc7ca6c45083387c66101992d7e09d2e9b8f221195bb765f5276e1ed8fc691b65a700d8cc1621ff9055d0eaac4d32279b954296cc440e11de54a6e10a57905ae43612f649e54189e3ac74cd95ca5fcd5c673173fd8235f2518481a6ae20555eefa47719fe49c76a9cf47231b1cc02764d84d908ad89fcc82e13fcb7b2a487fc1f93c1360024c8009300126c00498001360024c8009dce604bc9fe0e9215fb4bbc4e2ab8feac91aa51cae16282d1f0ffdd3449d6ed18429a3db2ee33d1fcfd2721c4f43dd7b1f5ea6217a2964f94bc1be23cd78f8b55fe242dc3a98be9b45b394099b1503ef38cd7062323a1d56381fca35484a9e62510269055231a2f8b7d4f877f8536309b6a489c32429733204d27c50c2e7fb7b70ee8d576945556988aa3262a4f6afbb0c9ad7aed112b33eb6eb57255743baa6de18eb2361b1c2795d7877e053e43a0c6ec09fe4ab2196839c4ce0df2b70ef525140ebc8a00f43a49f946693a71f91e6f469b5e5ae2887050b55bf4198d3e8587826c00498001360024c8009300126c004980013883c016f83dba5ab646e7238a2e1deaf09e3f8d418dc8253c448f383ed71cc0f26c4b391e7d7203ebef4293ebf416616faff65dd46a4252ae750f2489f3ca48219fd7ab222071b7567b1896c5f9a8454ecd853e696e0f0a9069aa3cced1470ed2a8495341dd6c8d11e341d1fc442cfd17c8e2874f2d6650c7944077a5191f70c2a74d9287c3a136bd73c8a9404d1bc074d3cd20d6634deba8a3ce5e4605e6944e68477a590f25de872fb731ac06650244f072f4756219743f002cb5e58b1f73d00324107dd22a28567f09a47510cb5e5ee7c81004cde0aa6978822dd591426c00498001360024c8009300126c004980013987304bc6d0183efd210ab5cc710abb8543d4ca88162faff1950508fa7d648de62b611b4fe783bea3c6c7cd547ce4c9daf1f0f29ff91f48873daefecb0d1d053c129cd3a3e82b3afff9c26aaf710404868f0023ea37089e4e566bd3e8a86863affc94f75a5f7242da8401f210c19dfcaff6617b2d2c4b9d3b46bd49873a6ca4c714d5ed15571ca6d576198484acfa44bde0ceefff272579470da2e3c5d10a55c74ab5738f3739afac2550ece94a7dbe9c24797ad4813162d885d89b55444e23c6ad3c49b4d9ed38836a397a7ab67fe329f2e9eda72bf348acfa97ec5521fb162b5af170877411a61ee4f323ecf0498001360024c8009300126c00498001360024c2068027778c7e845db29d93f2b11df6b2df10ea2cd87a5b313add5858ac9ffbd83057486868ac9f3a6e14a9f97b14d6baac1ba84a02d6a5366ad356d47ba63d5d0091c7a7e3d9e7c723dd6af5f8fac6d46dfc636476a9770d52a5a8662539e46a5c157165ae885677acf4d57848eb39d28f78c4386b7d2bc320c90214fd8ec93e1f71b932daa9ae5f78999c87fb53ae8b4f2017d779dc58509f15893b4de5b5618605c972406b05fc1a0b73d4e915890bbb1f72353984c4fb9690bf117a99207a0f582c2c815423928d30f627ff8e25529741c9ede5deda3ce6b51682e72ccdbe74c7636793a850871c78f21d457aa01d7338fc881c75359ee83e71d73b409d9c6a53e8d228ff6a9373f8f54a7f1dd43388f43bdc184fc7c133c92f008c5874c8009300126c00498001360024c8009300126c004001f06379ab6ade220862423506cca1674b456225b32cee868e8635b632e92636391b221072fe687f8f8d97b019f4a7961d92a2893339aebd1589021cd2917bee25a9128197268c6b6bffaf911b4b55960696ba36fe16341737d0d8a8c82b799721bc4abafbd239dd060d38bc75159e8b2a069b30bd17cfc20aa0e74a2dae41eb7e4475b29a75864994fa3b9b2d0f5c0aed5a3a8e647ae07fee9bc7c94e204b82f2dc88a988475682ecf875e9f8da2ca46741e3c809fecc957a4d2855fbc31201d0bb21e47b9ac87de84c6e32f2259324c8c76b523bcf3c7537efbda609698679b4aa88ee5405e2776e4eddf2afcedd4978342d9a0762dc5af39db832669039a8f34223f5bacf7baec7cd41f6e448e6107f6b5552a8c71b3c93328f5c4c08201968cdf5afab75876f98a5d8c155a2d9d575a667da71d783d738f1f783cb5e5de8bc35df20b8438ecf819d5338350765a98a87f2935a4b80492c70ebbce38f7b24b5a51652e406e6e010e74d43b86163b2ff20e1360024c8009300126c00498001360024c800930010f02b28389c7e993c879f91b385eb6058223585cca26941d3c837d6418d3685cde6623ddf52850b1bca62b0521db769cfdf005a40893e3c72623f7c0193c337a050be21315c33e3dc4731ebaa7e43cedb1e319aaabea4d5869b54d610d044d5c0292e8e3b6252523757506d67cbd1ec662d780da414b110e3d79043b5653f8185a6d34c78cb3db77c36a8f416cacec26138b95a9aea1908e746f0a1645476e48dd94830367bf43c3582789a51c470835865fefaf71040fdf9f2e74f78f212d43d02f06a959b9a8ca72a51efbc813643868701ab3ba6a76e2d8ea0e6c717896c523aba00a99dfb7214621a77dec1c6a8ac36b6e7348a44982614f157d5cf239f6c6fbb0df233fd5e5e09174e087edc8f9a7c7d0611617d5884948436ed901fab8a7a0591c87bb15a76695a7428e4076cd65d5b480875047955b12f61c3ce83831d6d3846d450dca8b8afde0ea992b6270f1d496fbc98a57f1ccba2a38d6df10ea99f9007d5c52c87b318b95a5279f15bf1ffdaae4dd291cc67d090fd257389d3cc55cf82f1360024c8009300126c00498001360024c8009cc17023e3ddc1cca9dacc0e6e76b716e6442d235c6656cb34fe0dca12a6cdfeb32468981641791a9c7a28d5f1975e35757f043b4f78d38f3894f948d6d360c9d3b87512939ebb83cb44f0c7aeba6b0bc036d536787719ac749b9991bffd261fe12220ef775e354770f7a7a84cf39f40d8cd0b20de296bce939e47b38f7d4146c43557b0fc6e5409a5897b1cd3a8a534d6632d2b91ba42a766e86b9a90323ce48024b97b16d7ce41cea776da3b9dd94528667bfa5a80c1d03e31e89d9313edc87a6972bbc8c06153bb3d0746ac0c940696c1bed3b863ddb767bc5f1483cc8433bbaeb6b716a48ae67aee8e343dd306f2ef0999f9a7270a5ac62afbd1459bbead137ea2da7508f4688cdaecdbb69690cf72d589ed76fdd9412f051a915a73c2de56ae3c9d2de925dcde4138e6f5786b1f72c73bbe279106c3d93e3071b4f5db977a160b319dd439eed0018ee6ec5a13ef1fc824577b9bc4f6501a5eff73e94fb273a31f1192e785ce74326c00498001360024c8009300126c00498001360024a027f4607ffa33ce16b5f4b93fba7af4a8406c2b29c57f0664b3b067d050cf51ce5637a7ca523975b135770ded2ee65c008350be84b70ba6a0be9624377d593d8dbee9da2b6b0110773d2e88215c7cc99a8f0e3caa23718f1e0dda2e1cc76ed022ced7e022ab270b1144eda70e1bc055d9e561a45f870edeab20d5815bf08b69be3f8e8fc49f44e5b803a184d8f63f91261d5d52f30f86e0b4eceb09cba6c231e5f19472adfc2958137d1de35ad900e3c6aca2114ae5a1a96fb44eaffcfdebb004855dc69dfffdd41c68c121d1c1501c130b39080371c355e1024dc828219c3c24b22599475f69baca261513104c50bcb0aeab28a44be8c8b4e60e32cac2bde2348944b025191608415c3a85c051d45208c409877dfa7ba4f75579f3edd734ef565ba7b9e829e3e97bafeea5f55a79eae734ed84ee5e84179a7aede879d669f672a65b40d1bdccec229d984b3a9f78afe5572f937b0920d66bd3f808da95caa67b8f53a55e49dda3a1ff56d4b90e14880044880044880044880044880044880040a81802fc1ad100aaacbd07fd253326b4cafd0ee96a5b3e4fa596ec5ad5266d6cf9681ddd5ed7578a9c2cd43654e8685269d377e930009900009900009900009900009900009900009900009e43f813627b809de7ef9f2c271a167d3a9ea3b72708fecdcbe573e3bf8957438b5ab7ce3acae52e23cf4ede0a6c532f4c639f95fcb2c01099000099000099000099000099000099000099000099040d608b43dc10d68fb57cf94dbf146cc32adacc5e1c6b3e3d63d27f74c9a93995b67e3d2e3011220011220011220011220011220011220011220011220814221d02605375d79ea994c97f6ed25a77c4d3f82fe987cbe6d8bbc368fcf68d28cf84d0224400224400224400224400224400224400224400224108c409b16dc82a1a26f122001122001122001122001122001122001122001122001126899c05fb7ec853e488004488004488004488004488004488004488004488004488004fc12a0e0e69714fd91000990000990000990000990000990000990000990000990800f0214dc7c40a21712200112200112200112200112200112200112200112200112f04b80829b5f52f447022440022440022440022440022440022440022440022440023e085070f301895e48800448800448800448800448800448800448800448800448c02f010a6e7e49d11f09900009900009900009900009900009900009900009900009f82090f3825b45d51459f4f21bb2a2fe5e1fc5294c2f55f72e92356bd7ca8a25b3a53254c4b1b268d91a59bb7699cc1e5b91b142574d9a2d8beaebe589d93749e652c958f6193109e40881fe32f38967436d782dda71e8b366993c35f3a6a4f9f3ddfe2a27c90b6fac913756ac9015cee70decbffcd4b4a4f1f3647202add5ef26cf15cf92c030796ad91bf2c253b3a58a0333cd8104488004488004488004729a40bb5cceddf8998ba4666079388ba54365ced88532a97e6b2e67390379ab944117954b11622ee95a29c3a1b8adbfe07229efa08e7490ca11a344ea676520ddf1327ecc15d249c5dcbdbbfcc3d857e58e36c73e0358732ecafe3267c99dd2e7847672ecc01fe4aeb177c87a571e874d9a2bb70eef2ded0e6d9619d74e9455a1f3fd65eeb3d3a4f70922cd2eff31bb454572e8a36572ed8d896db4ff947a9935fccf72f39537c6a51d8d4be753e458f4a0b443eafbbfd8256faf7c5666d5be6a9cc995cd2a4c8ea748af0eaefc1475905e03c7c91b4bbac895a3a7ba4eaadd60edafb8b8488aa524269ee2b3be29c3702417a9c4643427775aabdfcd4918cc542e11183b08fd49b148af2b64cac297a5ef23b7c8748ecdb95443cc0b099000099000099000094408e4ec0ab7f1b39744c53639281b5f5f2abfdf1dc9771bda582f5f1c688a94f72f6a6bfb1772c439d27cec68e45c26378ef31979e5f899f2c2b21558cdb346e6dfd4df67287a4b44201b3c4b3b964a87d20e5272ec734fc1ebfccade52daa124e4e76b46463b7c1d613a74900ec93e2525d2a94fdf90f063048dd9fcee255d458abf29ff676ccce1b89d703e4ba5b434fae9505a265dcbcf93aa09f7c89a17e64b555ca8cc1fe85f55e5ac3c8d4f6bcaa28911b1ad71d34b32e5d24be54753e6cbc6c6700b6e77bcbfdf3c92b6bff573e4a7f73c22f3e7cf9759b31e91b7f739f9683e265fc56729c523955255d516da75ebf4bbd968ef291a405e052f489ebbff249b9cfe43a45486defa84cc1e1f5efb9e5795c3cc92000990000990000990401b20e06fb69765109537cd979a2b300957ae79a72cb875b4d4ba97dd84cfb689bf9ffed9594374e413f983e250f9a528990dbf71cba7ff9329307552b7a897fced153de4cf1fae96793e7f413fb3470f298338231049b7ac0baf85c20e9d25816cf0d42bc612ad543b7a2c7ac6147074b8238d9be495dffc498ec36ab77807a9e8d00e69883f113e82db21cfefa4566b8a9c3f7812566bce091ff7f8abd3dbb37199bcf6c72f45dab797eebdfacac5e7750fb585a2b2f3e4274bee95a5a3a77b844effa1caaa493271fc08e9d5a9585efa62a9ac8f33f7f172497978d559d3b66532f2c619e14cacaa939a557b64d18a3be4b3fff845828c056b7feb5fad8f88a5df1831412e84801a5a169b2076ebc3fd87cb4fa65c2d3ff9fb2df2dc7fcc9539f599ea7fac7398b680add1ef66a3bda70d501e4454903c57d5ca8df854cfae97095774472d14cb1535ff22533e1a2ab3e2faa03ca8246691044880044880044880040a9840ee096e15d572cfb8f31ce4fb64e9d4b62db6415d938ad3c393f6239f35846e0fabb8a0076e2655ae49deff43e6aeb097ce9b2a4be73955e1f3eb1bdd4f0dfb6cda2eab0a772eee9346eadef28167f3e79b64d69cc44259320ac3867f1b6b34c2ae439fcb64accc91fa6401706eff9615326f9e61f71563e5a99fdf1a5a4956dc75a8ccad7e5e266650a1af18562db7dd385aceeb1a6e8512596feaca78ff4ef275e7d08edfaf709d7c55c60d4a7eb3a74dfb0b2592855ebdb8ac978cb9f531193e6aa32c79e221a97d75abab7cf9bedb3afd6e3eb4f77caad942e6597bc75839aaee0408fd38d941aaa63f257f18743d6f21cf2703655e4980044880044880040a9e4016a666c11856df76ad943941b62c7e20e92fb65537dd2b032abe2e07b6af94e97396c625d47ffc1419717e27f92ac1792566dd74ef38b9e2dcb3e484766114870fed958d2b96c88ca4cf83aa90ea6937c9a0ca0a293e72488e9d502c4776fd8fbc583b55d2bee0032b4ace2d0baf007aff8de743651c35a077b8acfb36cb2b49e6ecfdc74f9309559749e7139ae5c8b162293ab45d96ffc72fe5a32e83e46fafbc404eeb582cdb973d2c37ce8a46523569a60ceaf635e33959ede4ab3dbf95a9b312cb20155537c93f0ce88e67801d93cea784f32ac59df10bfc6c19779cba190e716c5f21533dea28aed27c1e88d4edd65fcbf479afca58e4fbbbdffe969c826791a9a77c7dbe75bd3c3d694682c9876dfd65c75e5a83a74fecdededab5f73edee2d10ad45957c35757f9eea4fe58e4668869c659bdd9aebd79632b8e6ead97eb1ffe96bc71cfd0d04ab7be57e1b9869910dc2a21074eba0eabd6740fa572d4245b56ffb7bce295e5dd478de7db1dd2d94ffa6dd3fe9246e8eb6480f6b0aa5e96bc7e967c7f609fd013e33a743d4f26dcb350aefdd13af9cf5f4c923a2f0ebef290639e52e8778396241ded7dfc94d932e4c2bf9193d0fd1dc3bffd3b37cbd247a6cbd234eaa0b6e36d4555b54cb80ccf80fc6aabdc317d9e0cabbe577e34f40239e9f822292a3a220d2bff532626195f828ed329f3acac927bc78d90de679d82914b398c273bff24ab5f5c20754984659bf1366c2b01da5f3840e46fdd1da3a547fd0a19da1d3fca95f4929a9963e5d5a989c7ea48406e900009900009900009900009648540f87a322b49f94964ac0c3ddb59efd2b84e66b430f1ee75e9004c7e7163e545a5b202624eec5cafbf4cb8a14a7ae174f3199f0ba61eb119e88f37fbcd1c238e96153d578667424de82303878e90b93f9d183f61a9ac96fad913445ddf869d33f92eeb24b73ef6865cbee86e9968aebed1de2cbffb43d40b27b54d7e3d4f2d19eb2fdfeaea1cf9dd8b91dbc8dcd157e397ef09fab65c9c0cadc529ed2363a6c43ebcfe9be79c8fb351c1add7b7fbcb85dd1dd14c47da5c2afd31218ae5ab4f8a743efb0ab9e212756b8be18a4ae5bc2bae881e38632fb65d75103d1b78ebd221c3e50a55f77d2ba4f7777f2a5dcbd40db651575676b5dcb3b652bafde85aa935279db6f597457b690d9e517259dcaa1c257d5c0db0a2ff089116dabd670e5f9d2e2b6f1880892784e553ff062be57077aaa7478b83159880df799d0cead3d5b84b53096dcb64c11db3e2da45f59c7a19ddeb04ac7bc373ef9ce4ce1a71bfbcf01d756b2e5e6e5074409ebb6bac849ab32b3b36edcf1545b0ddc0ed61abcc9b7aa3ccc38f1593664f941157f40af54fa5e59748cdacb552b5e975a97b002b63cd36172c4739e1dbb6dfb5c97c4aedbd62bc3cf568b5f42a8dedb33b75ea8a07ea5f2a972d982177d426eab983e5d676bc1df5b7d7c940d557379d2a33e75c2903d5331b0d7761d5adb2e42491d15e429145bf9b0acfb1d39e909aabfb84847b238ba278f6b970a00cb9ec1119373dbe67b11d6f2570fb337315de9e3ef69772eeda9ad00b8e3a5d3602cfcbac3746f478ff3c420224400224400224400224903d027f9dbda45a4ea9a2fa4ae9eacc1bb6fce6596969ce7654bf30e09877dcfad153478e855e356078aa94b9776ab1ed886cdbf8ba2c78e41159b074b5ec71de4f50d2f5429978e74d4618b559258b1e8e8a6d8d5b56cba2f90be4a575db9c952cc572e1b83be5a6343ebf78d59cebe566f540f4590f3a72d52ab9fec629f2c8fc47e4c11951a1cccc68c5f83951b1ede036796901c22f5e27fbd47cdf7147b6ad93c58b16c8fdf7c40a70cf3cf9b46c6a68902d9b1aa237ca1d4b00d8896bd5aad5b269db36696868d4d1e32ebb7db20df16cc3f16d3b77caa60f95e0963e17a9fb6208a48ed8d6b4678bac5ef6ba6cda79d049a85862d75ed9d65f76eda535788680e9f6e4aaa6165fcb91209c2b9ab8ddaa51178605a9831b65c14b5b42e78b3a9d2f532c9fc9fffcef3f0ea751d4512a2ce388cd647f99327791bcb1708a0c8d886d5891b36e295e7e3048aef710db54f8134b4fc50b26caa4ac34a2ca4b7149a99441cc2f2b532fa8e82aa59ecfbb13b1697fb1790eb267db1e541aeb65ce1dd7cba04ba7c8d275d1bea2539f81107ad648fddc69f869207f9d4dbf6b5b5afbf68efa7ba22622b61dd9b74d56bfbe5ab6e8410cadeb8a09d3e5de61b6398b0d17e973130c0789c6db48b892f288d8d6d8b051dedeb433b202b4ebc09bf1e0ff8ad80421eada8cd3f63c2be5f2fe5a6cc375c1a675f2d2e2c5b2eced86483ecb87d6c4f1b41f6f53697f26aa3ab44167ec91adb6cb00004000494441542d2e9711711c4dbfdc260112200112200112200112c826819c5ae17679efd39db2ef91d76d56b9f8255739189314c773e3ef646ccd5467a75e6a6755caec258fc8155df749fd03b10f30abba77aca81fea956b58360bbf743b2bb6ea6ae595eab9f2c8840bb17ea55406ff9ff158bd5217f69886bfe603d143d16d5d25c9de61306ac8b9e1549bb7c9aca1631da1ae5eead64f9315b3ae0ead48d9ba7a91ccf15862b3f5d57972233eca553fb14c26f4d16b74c2517afe5d8530f88854c8fc650be53c0469fa78b98cbddeeeb95e9e69b47070dbeaf932f68e28f3494fbd2c430ebf24f30cd5d6bafeb26d2fadc4b3a4e27bb262195698198b659a21d27608bd0423710584c2ad4038972b2a2e92adcfdc2d377ab6e54a19747ed750887d5bd64aed8cf672edd5bdd07a3ac82523c68be0c50281ddd1a812e096d883c6553176a6fcffb70e745697aad09880bffd9afc7ce28cb8156deeb8e7ccb857be18d84bda9fd85bae1b734968b5cc1e88744bfff0857acf0344e0a3f2c7048b8eacda9f3b033ef7addb434cfcab64d6247c20af4d9bfb0f32f8c27294b748ba5f78b5cc5a3b5056cfbf43eea85b1f13225f7682f6bbd6e5b26cefe3e7fe7d643cdab771b15c5513ed6fc7cfacc75bbed5aae3121974e3bd321d2b4073c31d94d7e7ff54a63a36316cca53724f552f64ad483a772ac7b7d1615bf6bb62c95389c88f2c5826ff32ea7479f1811a8c9751620b23fd41b15c30a21a8bc26b23276dc7dbf4b4bf7036ea9e5d23d75d5215fa01a3d7152345eaa2b610c92837488004488004488004488004b24e20a756b8752a751e317e64bf7c944914fbff1c5dbd5576beccacae8254a4dd7ab9e38187b0e2ed9ed85b1131a11cd14f4d60708b6ae3eaa8d8e6045b5f3b517ebded4868afb4db99ced1d6f9d26f956cfa7843ec4d9cab56c947ce0abee34f349f43e59dcf1303cbb19d058fe5093bebe77a79e725d9d1839b16c7886dcaef9cebafc204d4144c53a8bf56b3972cf32c2a9612886b2525d14f4b625ba85e5438238cde2ec6f1e313551c9e91d53b247a37cb7b2b94b8562b6fed0cb79f4e9503ad5647ad5ff727bc1b57b91239e7d2d496f574eedec310db445e9f75a58cf521b6859287205e575b2bb5abb687de26ac8eeddfbe56ea20ccd7e2f8bcdaba16453b152678fb53a1fcba14da836712ab64c6c47172e53dcb8cb325d2edcc96fb1923401bdf0cd2dec7ca88be0edba62df28021b629887553a7c9bac6f092e6a2ae97ca9434aeba4ea592362d8a8a6d2a9e5767fd5a763a2bafdb957c2d366aab7ed78c2208cf70b8adf5d365f4e858b14d9dd95a3f55363b0ba73b9476341311bbf136cded6fd55ad9ee8ced45c7c7aeeb8ec92c77488004488004488004488004b24a20b0a492c9dce9478c371ffc54766732a1adf3e49d6da343cf7b12aca91938610a3e3f913d0defcbbae5cfcaacbaa5499fb95e5476b12ca9c7735c8ab4ba84cc6229d0f1a786711677aac07354cc27a365b230f171b76f17ce5749d77362f35179a97473ee726ba7de659001175d639481c83da3dc27cf3d10ecd7fcc0f5d78af692559e4d9b647eed6bd2be0396283aeee8c1a372fea8bf934b9ce706eae3e6f791c68df2dc6fb660f5966ba277748f3ce3b9ba4d64ec88cab0a075f03df985b35074fa8b7f94a13517422fab906bc756c8aa64cb38cd0cc46dabb7f77adf6e1de735c181556b57cbb6415da57b87705b1a3865ad3c3be275998fe79325796eba2bb6288fb8173db87cb6e66ee0f6e099d961722f6e6f1cdaa753f46cd34ef9fd5b0dd17d6eb548c0777befdf5d3a3ac3cf9edfffda43c0dd2acfaed92a9738abc78e4b700b738b194aab8726f9d33a63d95828eeddb21f3abbea5e3a95ab956e864bb1df5531f9e66924ab566a578d1f2667f7ea2ea777ec281df0abc1e1c32785566e2b6f8e3e180991ea789b9ef67748be3a829c95e04514c5d15bd92399e406099000099000099000099040ab10c829c14d13282afeba9ca47732f43d7dec64f9cb13d3e4eac804b11817fce74995fadc70abbcfdca2ff0e634e321ff9595d239721d5b2c5dbb8757bb7966cf79e3a9e7b92c1cfcc3fb9fa01ce522789ecb4f5f784a7affc7d3f25187cb64fc7543c3cfcc526f567c2b3541220bc5f09744d36ef9e3561f5e53acbf42b6174daf69c726a95342b2cb75fc2edecce93a66ee367fbe45e6cc09227af697c1787b70c875384ffea57e89b42b4657d44eab024572ee885178eb41ecf305cd34bdb62b2ff91bc7be71f62b2f1f018ee1b6b4b143e7c9f869f3e5baabcf0bc5ab9e4f76cfc237e407ab9f931977cc316f7e0b10718e784db13d444b512137cdbc33f2d6d2f0f126d9b4ac5e6e9c1ebded2eea9f5b692170282afcecdfeffdf3d4a12f9c255948f038d7e2b1b4e4216824473e913fb8f536230eb790a54e05ee778df86c3613bd3421595c56e36ddada9fced97ad9f9e911b910cf8d2c3ee9f4d00ae10477adeb00fc260112200112200112200112c802819c12dcdaeb8747151d2f7aea9d3906eb65c68dd7ca8cca6172d3f04172e9b7cf97f23267654f71a95c5835459e38fa45f4f953fbbf10f50372288b7bd6c98297b7869ec7149f3fac6a39fa8934c49fc8da9157678c9301956b6520348de2b25e32e6d67b62d2def67a2d9ee91373287f778a7c9a70caf557b8f612a97cdbdb8083861bf65da9882ea28378dd359205bd5182b75e8ec74e9027b95d704e6727f801d9ebad41e8e87d7fd7cdc0ed6533fa63f5d62467f556b1f4ba628c2c7ce33bb2fab97f973bf076e4bc7429b707bc42e6a699f2f7a3078af982e0c62dafcb63d76315605e42c9cf4c27ec01db479731a7fa4cc3b490693e66a18307ec7753c8e8583cf7eed6d073ef542447b0e27dab7cbcfb5339f015e8e17f97ca01d2a753715c0a56e36d1ada5f6c46f0f6f233c3bf0836eddee2b1e231d637f7488004488004488004488004b24320e1b57a76928f4d65cfbe0338808bc69253a457059e9bee67e5928a0217f271aee21c63455adcd9e881f5afe20507f8a82310dfeefdf1cd9858879f8d53f16df59e3de777e2ad1fc9e7b8f5a513b2d774680f9ec5643e1f2c1a5d6e6cf5970e917941b31c41bed5a2bba67d3b65ed7ffd5ca6d765e1b76fcb3757668c5fbaeaafb5ec25d778a65051d523ce09bd48409af7c84bb5ff293bc27b98e31e91f6df1a2113866275a6749221538649dd2cbfd2cd78b9eaecf09b509a1bffe47afe620a990d055d25d36fc467d84df2c4cddf973e65e804f076dc2bc64c913543fe565ef8e51c99559f64e94eaac967227c0aeda1a26a924cfbfbef492f43693bd2b845963c3643e6f9bfdf3613a52a9c385b6aeff845cab9a354ba5e3808e58eefd3cfec724a9447aa2b3ea331d98fb73ac3665c7eb7fdf6bb89e26b8927d6840dfeb6b36afdc84e5974f76899e7423afb85350962b7186f53687fde99e828ce9324a428e80f20de11f2280990000990000990000990401a08fc751ae2485b14ef6ddeebc4552603c6aaa7a0257791157125dde452a58d196ed8a8bee2bc82c138ea6c564e92656b57c8bd55ae53b8a89f7ee33db205029572cdc7cc7501bbe58ba6f04d2f25e5c365a63b6c284485f4af0c6db4ea9f8af1a3716b89cac24159fca37e72e595fda45fbf7e3274e4583bb1cdeb5e9f0425d40a6ef12967c4faa8a8944a88a8ade752a8bf56b497dce5695b93c3e4f2de6141bbe9e37532a30e6fcfadab0b7f703b6bedf4ff926d8ebd95f7c34a389fc94c5bf477d2c999d0bfff9b177d860ae84dbdc177e42099b568b5343a7d445169b954ddfa983c7193ab030a187552ef01da5f4c3c49c3d9b587ca9be6cbc22963a2625bf33e59b778965c39f2fac0625bffaaf1525d3d5e827699d90e17c334c33bbedb3b1e92ff9173c76871d77ef1639954c9d8cb9c95a3cd9f09dee391b2b31e6f6d53b6ea776313f3cd13b778eae79bca671be3c4b68af173e4b2326fc5d06ebcb56b7fb1a58bee55567f37f2c6da3defff217a825b244002244002244002244002ad4a20a704b7f5b56f44de58567ed9881627db6bffe713075e07a99af6948c75f6864d9a2b3fadea135901e0263cedf611782653890c9df2863c35f3a6e884afa2bf4c9a73bbf4d2abc3627e15df2abff88fb79ca88a65e06d2fcbcc9ba2aa5b0556bf3cf5f24299f5d80a993d3e83936f77613cf63b77d2f7eb7590effdfc0559b2a45eea972cc1b7fad4cb53f3e7c8a4b109f2a884314c3e2af0ef04fd9379c909d2b9a202c75b963f8e3993fca2b2cbe4a97baba57fff613269e613b262e16372ffadd51eb9cdd621fbfa6b4d7bc95d9ed17a2b2a3e4986a19eabaaaa3c3fc34c157aec20a908dff9247f5afb5a3492c8d65259f1debef05ed9b9e265a6d1177ee0e524e3a7c8532fbc21579787236ddeb35a1e48f0a2864812296e2c9d77878cbcf26659bcae21f200f5134bd3f4902ccbf6a7da6ce276abcf9905b76b0f279ca8df3bdb2cdbde5e2a37f7bb0a7de65233625fdbc3a62d9259536a64c2841a796cd97cdf6fa5cd76385f8549a327ffed7d95fcf2952d4eca6a2c7b59eed5e34efff1f2c4cbb74977671cdbb36aa9c43f993178a66dc7dbe0298543d8f5bbb1a9f9e6b9fe23c123d0c2aee3d9526da8c063a7cc97276a2e49783d6137dedab5bfd8d245f7465df54d67679facae7f357a825b244002244002244002244002ad4a40ff00dcaa9988265e2fbfdb3a41c6f48260547aa1dc39a97ff4196a514f91ad55b37e219b06cd923e4a5fead04b6e5dfb86fc1d7ef52f8dde4f19f11bb371585d59ab093a9ec734709c3cb6f607b89bed9814176ba54df96e94ff9e1bfb20f8adf59364f1952fc898f3b042a7086f371d3745d68e9e284dcd455252a2c39648b75efa59522a9eecbb55b37e2b4d783b5da8841dcaa42b3e31ae6b77e975de25f2ed73e7cbd8a9b14fc99a72cf6cbc70c151442281bacaad0b1786f61ad72d9091936a2367623756c9ea4d8dd2e712955e91f41a3a41660d8dfa2839e7724cac6b3d6e7e8afa09bc9574154f6c6cd6f5d76af6921d9ebe3b01176badc716771d28f7cc1a180bdbd86bdef692bcba2a7ccbe5a4c1e78727aecd3be58d79e16386d7d066edb36fc975e70d45eb2c916f8f8648bb2a6c6f3a9fddafbe47d67ef72e98986bc54953833c76ed1d597a99c17a9933699ccca91c2f73275d21efaf4acf24d7aafdf59f22b3675585da7b2ccb68bb55cfa47a69ca9532c358e964d31e0efdf9a034eed928ffa59e6de75d7db15948b077fe379dd557ea7c87d3e51bf832b296209448b6c325cc48464e046befabe65c2f2f9db74cae56e325deb63db466960cbae108de52a9c722acd26e7c5be64c4d87dc86fab11d6f134a55b1105dad19af06b51ba7a3b106e1b954d6beff0f527e1e9686977497098fad916bf77c26ed4a3b198f6788c66c6ed98eb736edcf4c576f578c9f2bfd9d67cb1dd9f63b99b7559fe1370990000990000990000990406b13c8a9156e0ac69c052bf00ecdb0eb33e676a94ebaa86a95dcf88ff365cb3e7561ae5cb123b635cb96654b65d3beb042d01cb3524d64c6f557c99405cb6467245c518cd8b66fe7db32ffe69178b65b3856f3ef9c9a91326be93a89042d2e898a6d4d7be4f505532062a5678263a61b647bca13d738936fac42d9b85a5e5fbd4ed6ad539fb765e3969d987a875df7817f1bc7f7a85e1210936054692939b563cc19f74edda47b64d916678552e464b3ecdbb65116fccb0c5f93ea48303f1b71b3b4e4816ceaaf35ed25f33c0fc9c1d0db40d433febe480e2f86f56ed9fd99b6a4e4c18e1c8ede9a7dc62978a9085cd3c76f275e75f3eaf3b2a1316c73a567f57622df2d9f1e30d28b886dcdd274708f6c7c7db1dc3c685ce2389d58d2feb5be4e268ebb31ee16b4d8749ae5b33d8db18712ec59b5bf431056bce26b368f1e55cf7d8f7341dbc3fa791365e4b5a9896d2a137f787f67342f073f978fa27b49b7b21d2e6966327032687b9f71fd5059f0fa96489f6e8a6d7b36be24b78e9c98c63ed76ebc3d7ad819d14d73f460b76ff79e98a3a9f4bb3aa2203ce7d5dc224b376abb2c92d24e5a6c3b220d6fbf2d7b9cfcbbfbc954c6dba0ed4f972bf25d512d0fd65ce8489a4df2da933322a7b8410224400224400224400224d0fa04fe0a59f8dfd6cf466c0ec6ce5c82b785392b20f66d942957d5b43869a81c3656ceeed641dacb51d9fe4e9dbcea2196c5a612deabc08b122e3cbb93f3d8f623f2d17bf5e22cc6f1f21e73ac7fd558f9c649e1d50447f67f24f54bfdacd1888922fd3bfda7c91bb3ae46798ec8ea5957ca1d1e777b55dcf4842c1cd707693761d5cba098552fe9ca50e5b02a39bbf4783972789ffce9bd57657d0efeea6e537fad652ff9c0335db6c3785a87804d7b4825a7ea596cbd4e1579a7b64e7c76d7a1e4b21d2e9532da860ddede2b65ecf80be49413d55bb2ff2c5b038c813679b41d6f6dd2526152e97755f8403c714d30fe826eb89600ca839fc97bf54b13db671ac7dbe0edaf4a9e5a3645420b1c91d79daf3f22a35bf9c73ec59a8e0448800448800448800448204a2027053795bd7bebdf90a1ce43689a1b37ca43236bc4433b8a96845b2102fd273d25b3c6f40a6d6f593a4bae9fe5a6562933eb67cbc0eeeab651bc54e1e6a13227c86c979c498004488004488004a4d5c6dbfe3749fdf471121ac6510f4d0d2fc9a0715cdd469324011220011220011220815c2390b3829be0695f735f98291746de0c76505e7fe4a732b59eea505223aab8495e5e380e4ff409bb23b8dd6ee7f6bdf2d9c1afa4c3a95de51b67759512e7d6c0839b16cbd01b639f5397346e9e24011220011220011208136885f1b6b27aae3c3241df460ab16ddb32f9ffc64ecfd2b32b59f1244002244002244002244002410828e9e59e2001b2e7779bbcf2f446291f78a97ca3a37a0360b3fce9d70fc81b0dd9cb415ea6f4c55bb2e3afcba56faf6e5272dc5f4bbbe213a5e3699da46bd7ae725ac7af0b0ec1e19934ebfe5b6ebf698eb4f0d4aebc44c04c9300099000099040c609b4c2787bc23957c9a80bc32f66dab66e915c533d9be378c62b9a0990000990000990000990801d811c5ee1162dd0b0ea6972d989efc9f439eedb23a37eb8154f403debe8d2bebde494afb5734e1e93cfb76d91d7e6057b66527ccc3c420224400224400224a009646fbc1d26f7ce19243b7ffd0ba97d35071f8eaa81f09b044880044880044880044840f24270633d9100099000099000099000099000099000099000099000099040be1008dd60982f99653e4980044880044880044880044880044880044880044880044820d7095070cbf51a62fe488004488004488004488004488004488004488004488004f28a0005b7bcaa2e6696044880044880044880044880044880044880044880044820d7095070cbf51a62fe488004488004488004488004488004488004488004488004f28a0005b7bcaa2e6696044880044880044880044880044880044880044880044820d7095070cbf51a62fe488004488004488004488004488004488004488004488004f28a0005b7bcaa2e6696044880044880044880044880044880044880044880044820d7095070cbf51a62fe488004488004488004488004488004488004488004488004f28a0005b7bcaa2e6696044880044880044880044880044880044880044880044820d7095070cbf51a62fe488004488004488004488004488004488004488004488004f28a0005b7bcaa2e6696044880044880044880044880044880044880044880044820d7095070cbf51a62fe488004488004488004488004488004488004488004488004f28a0005b7bcaa2e6696044880044880044880044880044880044880044880044820d7095070cbf51a62fe488004488004488004488004488004488004488004488004f28a0005b7bcaa2e6696044880044880044880044880044880044880044880044820d7095070cbf51a62fe488004488004488004488004488004488004488004488004f28a0005b7bcaa2e6696044880044880044880044880044880044880044880044820d7095070cbf51a62fe488004488004488004488004488004488004488004488004f28a0005b7bcaa2e6696044880044880044880044880044880044880044880044820d7095070cbf51a62fe488004488004488004488004488004488004488004488004f28a0005b7bcaa2e6696044880044880044880044880044880044880044880044820d7095070cbf51a62fe488004488004488004488004488004488004488004488004f28a0005b7bcaa2e6696044880044880044880044880044880044880044880044820d7095070cbf51a62fe488004488004488004488004488004488004488004488004f28a0005b7bcaa2e6696044880044880044880044880044880044880044880044820d7095070cbf51a62fe488004488004488004488004488004488004488004488004f28a0005b7bcaa2e6696044880044880044880044880044880044880044880044820d7095070cbf51a62fe488004488004488004488004488004488004488004488004f28a0005b7bcaa2e6696044880044880044880044880044880044880044880044820d7095070cbf51a62fe488004488004488004488004488004488004488004488004f28a0005b7bcaa2e6696044880044880044880044880044880044880044880044820d7095070cbf51a62fe488004488004488004488004488004488004488004488004f28a0005b7bcaa2e6696044880044880044880044880044880044880044880044820d7095070cbf51a62fe488004488004488004488004488004488004488004488004f28a0005b7bcaa2e6696044880044880044880044880044880044880044880044820d7095070cbf51a62fe488004488004488004488004488004488004488004488004f28a40bbbcca2d339b9f041eec2a72314cede01191119f242ec32da7895c749cc88e2691a9fb12fb8b3b5322f2784791de863937ff5f91350745ee4e128f757a7119b03be0978b5dec8517aaa693c898629123cdb08f9d221b0aaf880551a227cf1429fe8bc8935f882c3f9aff456aed7e225f08165a7fc67af767798556effe4a4d5f24400224400224400224e08b0057b8f9c2444f291138d931b37d9884277427898c8270d60d82dbe5d81edd3ea1cfd8131d445e8450678a6dca4311d21c80787e85739ece363dcfc8ec0efae262177541866a8f3a2dfa2b91127c9f509025ccff42f53b45a447914897e3457e88b699c8dd09f1f4956e22cf419c7b059ffb4e4ee4d3751cfdc25d08fba20adb59a4dc753aedbb39d04fa4bd4c198ab0a0fa33d6bb6f2b29a87af75d6a7a24011220011220011220015f041c25c4975f7a2281d4081cfbdfd4c27b857eb25444cfeb37ff1922dbc7223fdb27d2e8a485055139ef32c125e70bdd4632380e82af1287567617a981a05ce8ee3aad84a2fdbd8c15a65eae1602db7008724a383d19e25c093e0320b82d3cd5cb77f4d8e4d3b1620e22db6084eda0c26245eb19d1d305b15508f6924bfd5921f0cc17c3cea57acf1766cc27099000099000099040c113a0e056f0559c2f05dc2ff2346e25dd8e55702bb1bdc4cfad685885d0c331e1ed87447edc182eec1a841f85ed26dc565aff65020036e925888a87492011816f60c5a612870402d4ef61df85ecca4bb1d2d4698f8d5f79b7e1fb707b794f086cca35e216f3ba03227b1d71bc1bc4ba07d1a6ddae1cc75e394be49aaf89f85df8ea8ec37a3fcbfd445bb217eb3a0910d09a6796eb3d4091e8950448800448800448800448207f08180fbdca9f4c33a7054a60fea722f30394ad9f61be6f41708b71d81fee3e16e30169054ccf159cbb24d022816e8eb8d4042179438bbef3db43cd89d1fcbf04212dce41381be0b4d9c6c310c5f7847d2c8010f91c6e135577955efc75dc260ab1a3c108dc0061ee2844b97610d0df4338c1b2d50b8cb66f78cdc86636fb89b6642f19a92c57a4a9f0cc66bdbbb2cd5d122001122001122001122081c22090c5594b6100cbf952f4c5fd95d76225886072da84d52617a97b2a3159dda45e208055278f9f26d219cfc152b77f2cdf07d12981283519fe2ab19c445bc82e4c7a1ffb2c7622ec86d10f13eaf198749fe6ac7239704c6431d238ecac6071fb57fbeac1d467223f1187ed3d98803fec35618f780a6f7c62c68bf2fa71a9a4a796d7dc89553c17e0fb08d22b415e776325de0208771b92246ec32549740575aa1f04965158d9743a84296d6bdb20aadceeac564c54d84f70625c99c855b8bdb018f5a0c2be0d9bb91f624d22a7dac60f619fdd1d114cf9db85fa7b19ab20bd1eee3f01f17f0b7e3722ce45f89e0bfbee8cef66d8dd21d8b60ab74409402e371236d21f2bdb940977746cbb18199c095b3f4eede3b303edeed104b75cdad8d9383c3bed3ca4d180dbaa559b0e3df01d76aa6c54b5ff0f933105c3bb50b6739067f58c3ce59a50bed751800509fa87b02fe32feab1d2e17a10692df0e03259df6e8ab633c711db4231986d17718c86bf07cc7411d7f7b645d3ba05b7955e10ddcdc8964d3f31128ae1a5e86fbf824ddd8f7e6fc2a9e1db5f5517dc0e75b00a3cbdfab554ec25a57a47beb2d1cfd7804339c604f5321c2f9bd76548745e5570907e22159e36f5aef2a75d109eb6f6a2d30af29d8eeb028e634188d32f09900009900009900009840838b331d2281802933119bd06136dbfae0e135f7372ac6edffa574c1c4f7626de31f160625c072144ad4871bbc99d902e26eec9dc8710186ef83cd6c7c2ee7851822bad664c58bfb33bd69fb9f76017dc96a6443d84d30f6c6e6a8648e078522b61eed9e52d82d9a4a7a2ed0b2633f1f17c0c1726d34f438c9caf33e0e4437dd972894481041f849881a465d997de024fc46f9e6dcc84ad5e9ec856519f8fed8dbd2d51092da3947fd4ef07f8f4d40a9d51ee37c1e8767cdcee4e3cec6bb8523e12b8d7be8048a21432c33d09dbece1749147f1ed9555aff4ee847d0e877895cc6d8730f6230f51d1d6ce745e8f82db01b48d32579b0ae50522da849db1a279bf8e786101eccbd1cae2b2bc0b62d75de823cc1567719e70e02e9479b053e66720403fea6e0b80b71875703af2a56e371d85bad56ece9910d08c0cec45d83188239133ede067dbf136e2441e53386ed34fe83a6842fff51eea40bd99d9ed56c2ceee76d9592af6a2d30c5aefd9ece7751e3dfb75f46fcb4f0bb7ad446d22683f910a4f9b7a57756cc35373096a2f6e9bf2b39fea7541cae3989f4cd20f09900009900009900009141e01a55ad0151201dcb91675987c3f8fc9ade90e6232f8bcb1faa4d43401ac009a8fd5395a6cfb1291adc4e4772fc48d9083dff158f533c48c10db43b0822122b6417c7a07ab539ec72712cee5dfdcfd25269f1f224f9bf1d10ed94eead483d6431f23efeac1eb65ce473d4c5d2fa6714764939e7a2bc36c285e981b86dc0760520b51e74d0d1b22c20fb0c2a8af2bb154b8e8a8e620de8b2164f6c4e7666c178a53224b446c83cd7c009b54b6d6a86d0d757933445c37d350f951ef5a6cdb8e709b2124697731eaa9c62dfc62bf9f16db90d666b489676077ef1836371876efb6ebc843c01db16d2f5679be863ceed27944a22abd5bb461389958033fea59841f1a86ac041165e7eaf82ee4f72323cf3aefb676a6c2ebbcb6576dc011dbf622bd98fc3ac723e981cbed5a6c03977791efc720083d8f6ffc0f39f5b6d1dbc026a94363532bfa943b8a34e3c4367502e73b38e9ff41478ec335a863536c535e4b3d842a753c9bcea69fd075500271518b6d6a65a1699f03c0729c4bb9b5b61700d16906aaf72cf7f33a8f467388a94add14b43ff3a44d3f910a4f9b7a57edd666dcd4e50d6a2f261fbfdb7aa80af9474504b92e48c738e6379ff44702244002244002244002054620076636054634678a8309742d56912cc204f8ec6ececb0520143cb01b2b4230891e8c89aed2092ab0ad67d773201ee8b9e0bb10242662f2addd7d5df0fc2535a986d8710304b6e558d11572087083161c90e6639fc4ae4a7a1c69eb07a93b2162bed46dadeaa35c4b7ec3be5006ac0c1a80744f8488324add3e0bf72656cf6dc44422947fe4634df870dc5f9bf4ee8228a1b9bcf6395642212de51641749b008ee31543081da3b13a70c3fed0a9508054b838b144c4cfd0be5b30d19ef2ec5b4de0b4c8d28cd9f6dd3b63ebebbecee1fa3d8859e2864465832d9bab2d6fc1eaa9518ea8768221c4868243f4a883007c2deae8c13db1718e3e0dc29eb25fb0bd0af6bf1c75eae53e409d57a3eeb5bb13791cee18c570843345a635b067f55146f322fc613e2e1f23fd6aa33de978cc6f2b3b332330b67f8bf4a76a5bc471f566d0c35855d760f8e90ba10c590f39b5ea6ce2a7ce0edafec3b0e95f9d2ed2059c1f526549e26e3929da3e56396d23ce3bdaa4766a35aa727d3b42a8566d07ae0962e673f0a3f6b500133e63ff77e4295829079b481a1fea7d07b8dc6db05229daf413313905b75af05c04db532eb2c208e99daefa51f4cbdad9da8b0e6f7efba9f7d6e8e7cd3cfaddb6ed2752e16953ef563cdd1002d88b3b68a07db4b140d705e8c3d2318e05ca233d9300099000099000099040e11070cf4c0ba7646dbe24b8b0dee44ceaf484533db83d244419d57ebc1671202a9d07414239758b8b29b6a9637743606b7426cd5d2072f5550795c3e4f154270e254ab8df2efa1026ef7e9d5ff9b7012b64164018596dfc6cbf03828112c0d4f105aec973a2f47da50731e6323541866b44ba5a6c0b1f415a1070b63b5cce74fc85cea589cbcb98b03bfa446815984e379fbfbfef88a4ead9628f439408d9a451a0bb21a86e46b96f85789bc83d0ff1cbbcb5f95188269ad3598ef066865d02fbfd21ea6a837910db4b90bed688d4aa492fa7566d99629bf2a384eb5d4ebd97c090fa7905c4711d653bddcebcfca963b676e611df66b439536c535eaa77a04dbb84b30398e46b570666139432a81df83f0881b0a5e7360a04b2a18ef0a8c45377fbd0d195c30f8a1875d8b91f7d4ec8211f5351d7ed9d7ec957bb8cc69470ab27cad40de9f648f6413b556fb24ce66cf2f334ec4a8b6d2aee870dfb2c31fadf987483d84b4cc0f08eaf7acf817ede23eb9e8752ee2752e4e9abde6d79ba4a6c652fae387ceda2cf0a745d90a671cc57dee889044880044880044880040a8f80af4bcac22b761b291116b0c4b86493fe7eb8b0d6e2c05b981cc639880ebf83c0a59f0fa7e3ee8709b733df963f3aab39ccb00d08a7ee208b996c9b1e52d936448cd0c3e85389cb47d83208450bbb809391ae7a807e9913b6930681fd74715182d0121f79cb1b2f60748ac3ef28ecc92dd086ca019bf931c4b1840e02cd6fb0622cc6416dc322a9909d9d9848d040dae360b83d61eba5307698ae1cc6b7a933c5c4e9ec68c1da7d6e1df21f7aa61cca7386aa7be43b1d2e889dc5a5070e0f4128f3e31a20c06d8760107a8622388cc78ab0f15875f62140ae800ab9081fb740e98e771c96c8697eebb472e9f684fd06b0d2fd80d2fd1e47a3d1e19e81c0aad2b9c2235c2a87f6a2e2f6c21612d59f8a5b3def7171801f057ce50771fededd172213da3e95009876e7b3def3a69f4f473f9176c8f111daf28c8929cbf6a2c76e9d87a4d705ad39beeb0cf29b04488004488004488004f2970005b7fcadbbf4e6dcd42ff62798a1eec3c4403bbd48c90c970dd14ba79fadefbe987044c442082bdd92ac86d182a5ca5ba173b1e68f2e473fcb6b670a02957bd2d8527e5a7a6942b2f0897ac9a3ba3dc02eca955da4501e5b3b73e75bbd5db4c17d30c9fe8ff686c5afdeba90284b0fd8bcfa28f1edd75831fa7022210da2c8357a3521049f7f4fb6b2d4590da8b2f27d25b639a2e8bb0813b91dd7f193a0fb49520aef538bd42a33ef53193d7a14056849a84c7706fcd6bbd92fe5743f9fa67e22dd9cddf1d9f234e3690d7b31d34fb66d96af10c7f76465e739122001122001122001124803013dcb4a43548ca2e009782dcc30858fbf1893ea428171004202fe8756ffedc56dabbf86a8e2c5413d034c4d9cb42b742eba9ca97c774a225ea612af3b6ce4f983ea046c54bdbce01354ea57d8c6c22bb9008aaa7a7b662aeecb146ddfd6cedc794eb65ac5ed37b48f95583fde895bc461b0c3f0b908425b992386a907f15f730a188155441433221989d56d9adbbb5815db609c4bb6a9c5b6d073e3d47237c79de90c47f93e2a19dd802e5ac6bf03d77b921c79f56fadd99f65ab9f488224a5535e3ccd085bc35eccf4936db766bd27cb17cf91000990000990000990409e10c8f7a94d9e60ce836c9a17d6956a47ddffe5729d0d7381f614729f60b6a005a97330598f0b0721c308e684ca9f2f752b9cbe15ec10cabac010089295a2d0b9242b7bd273b0ab3d5819d603a24e0904b77ef0bc266980144f424cbbc811f694207aefcef8f49ee99e3c0dfd3641b7afc8cb19509ef73cda8be93f511cda8fad9de9f0a97e6fc05216f5514e896fff80d56dbd9d259b17a9259e1ee51ba3dabb72287f8bed02e1df4747a15f96a16e271e85d575118734ce76d2fb5835b83c76e9e8ef5ab2175b3cadd9cf7b95a91c2b249579c5b934f7135e69c7a56971c096a799543aecc58c2f9ddb1cc7d2499371910009900009900009b44102ce5286365872163996c01a2868face31f5528491b1a7430f5cbad499193463e2bcc639df80c9b19e8bf73cd1789982737ef249095684b9e337f6a18b64d5254d0f279b9cd54b3d50be382e2aa758c21079898493f3747219098613f02914b743df8a89eee71f4ff32815784e86e0930e67deaaf919567369bbd5718f3b1d2bba5a58dda684c1b87ac74c7bb05eba02fbc033ff93ba8eae597539c4aa723384a59d995104dd566f095dd92dbe6c4a78fbf167d13b64bdc48a7e58f9d6cd193e3e54629d8fc45f3684b43daedb6f2763b59c165e563ac29f8f28b3ea25693f91e69cb4682f96e9b5663faf057633eb555ab4350f3adbe9ec2752e199acde6d797a14d7fa5026c787748e63d605644012200112200112200112c85f0214dcf2b7eed29c73a866cbf424186671db9978c0bc3303ee07b1e7394cceb5beb0462b732a0b4ac430c2cdee8a09bc9a4429d1a453f4250bcaabd7c445090f4a1451feb526a1dee2a7de6ad85727a802a7c9054e0f65ab4719430ec2cc2470a9d14f7bc7c121a560d359e4df205c685e21bf29720927287227e2be0d698cc7e745f02c0477f7fea898d30536f6cc19e0e84cbc874078598cfd6bf030ff5f79897101016cc04a2a6d9ea5584dd3d708afecb35a3f8cd0381eb7097b9ca4ecdab14755e7cfe039645a204a763b25b4e990532f42b80b65eb07a1ee3e946f01d2be19fb11676b679108826ffc130464516d1d2bfcee4399b42b47c11e84a0a69b9f97e0769d5eda03b1f1579feb90c9bf977f89971838e27537849f8b3494bb052cf4cb580e1e8e7dbb67d847f6ff06ee27d29445dff6629b5e2bf4f3efeb8e1fb6a6fa33ed42f5ae9f01a80f1adfe9e82782f20c5cefb63c8d72a6b299f1f101ed3195f13d95b2312c099000099000099000091400012d71144051588494093cba5be41c08473d3131520f2dab86e0311e13e4f6c60aa0465c80df7d2036a9073091be147e957ed01e26751b26d0b7c57a09ed9de0dc32669e9a8670eaf6c2188738163813b33711f7edf8a4cbd9a4b704b7bef587d0762ef25f84cf0f20148c8240710c5c4a341b94a1a7ab39a5c24597b797f19cb30eaef8b59fbcfb8660fb2804b6db1cd1a60c93ee69b09969ae82446ed9741d0fb48bb4de8761aaba532b6cfe0de2d25eccc24bc1520b4a7ee22b82ffdb6093b7b8da83ba3572e2be04316032fe3f48eb6265f7b093c1c8c760c3ebd94ab1336cdbd6ce8c283d456df3bcb97dd811bf54de0640545f099113ba5f4c7b57f78bffdcf5d6d372d87e6fa7cdeec2cad8e566a4c9b611f94ff7a36d838372e742b85e6988d7ead6d447f684cfb5f65f9b7e22e53c07b417333dad6999c7126d67bb9f7f18363e10fdbcaaea0e68742bd106d12c232f4f49944fe529a57ec282a74dbddbf24c58ee0027b2313ea4631c0b50247a25011220011220011220814222e0563a0aa96c6db32c9137277a14dfcfa4ac7a3b26446ad6ed38536c532b7946794d8831b1f9dea778183d26e76ef75b4cb0df758e176b71caf0e499272d04c05f99122b5a72f0af44143fce36bd893b449e87b8a0d1b447d3d1629b7a43601dcaef1622d5bdb6b65c7459b640d0d1eea0cf326affb9fcfdc267223f8150b517224b9c437d2a5bfb9edbd60cbb880b631c687455f24408a6efea63b0c1d3b5d886f8de8180acb17ea9378cb8d4a67af6db07ce39b33dec45d89a5d2ecfaedddb514e1d36720ae96e47d8d98d9123910d2b3b8b848eae12350e25dcac864dd7e1f6cdc80b1fc0c62cdf2ee4f127f0b3c115c3cd6a659c7228c7b38660183e98fc6f03fcff049f83aeba548c1f427dfb16ef922793f2596d2e31111979f6ea97b480e919d688483d172b910b6a2f3a1e98742097d57e1efde0ad68eba69d85de540c9eaf4154d3c7bd56525af5130689a03c3daba6857a57c9d9f04c87bdf81d1f52ba2e48c3386654093749800448800448800448a02d11500a887135d9968aceb22627703c6e91c4e7449888ba58df00e1cc3df1f68aa01f96319c05314aad1efa000255e476142fcf797a6c2456029da49a0edc7e08622f6042d2924b858b7a46cfa9486001eaa0109dbacdb2a7b3924fd9da22d70aca749559bd0ca0af938e122f97a86536495c6db7f06acf26a8acc3b1fa7308eabd5c09c0e8321b20462dc7c7af1b827671326ce630d2dd0c91abc147401b3bf311ada717c5a68f566d50be4da88344edfd163cf7ae0ab7c8aadb3fe34451cfd8bd0f8e865d2be1c54f5d78c750b8476decc58a4696fb79d586ce54bff3c1c6fc8e29ba5ca9f413b9ce5397d1e63b9be3432ae3984dd9188604488004488004488004f29c80520d28b8e5792532fb2440021920a005b7a310dc864070a323011220011220011220011220011220011220019f04d44fcd74244002244002890878de6696c8338f9300099000099000099000099000099000099040e81575c44002244002241047a09d73db70921729c685e101122001122001122001122001122001122001120001fdd01ec22001122001123009bc8c67e69d8145c0ea81fe74244002244002244002244002244002244002241080009fe1160016bd92000990000990000990000990000990000990000990000990404b04f80cb79608f13c09900009900009900009900009900009900009900009900009042040c12d002c7a2501122001122001122001122001122001122001122001122081960850706b8910cf9300099000099000099000099000099000099000099000099040000214dc02c0a2571220011220011220011220011220011220011220011220011268890005b79608f13c09900009900009900009900009900009900009900009900009042040c12d002c7a25011220011220011220011220011220011220011220011220819608b46bc903cf9340d608dc729ac845c789ec681299ba2f6bc946127ab0abc8c56812078f888cf82472981b3942a0a693c898629123cdb08f9d221b72245fcc462c8127cf1429fe8bc8935f882c3f1a7b2e1ff75abb5fca176685d67fb2defd595ea1d5bbbf52dbfbe23866cf2e9b210b6d1cb36597e97e30dbed612eae4ffaa8b526ff5764f28e56b88e2c1179bca3486f63fadd8cbcac392872772bcc7bfcda05fb79bfa452f3d717b631bb83c8b1ff8dc6d3eeaf443e3e2452dd183d56a85b056c67468b2fd4da63b9f283c04922a3301029d70ddba3d1b92cc9f264fd6467c1e73e880574b947a03deaa708034f09be4fc8bdec314720d0ef14911e45d8c0e787b86858feb937963b219e0e682f72141715f892b7d4c5e697de7e638ec2f35db820f936be9b8f89fcd36e9186180f69dec9817e29cd25ca587405d57fb2de7ddb4941d5bbef52db7be43866cf2e5b2133398ef5fdbac82df87455e3a47218033fc68fbc3fdfdb0ae24f380789ff66a11fcc767b381ed790ea3af2287eb8dd90b8e49939836ba217718d84af1857846bda0160fd2b2c38f8e1a731a7726687fd7cf6aaa23dec537d4c7796ba506e03ae80edcc5118da4025b28824e09780f9cb82df30f447025e04c661d5e68bdd44567617a97104652f7f8572ec3aad846212f13244342f578b5f98871f1f164e4fc6a4a3049f01278b2c3cd5cb77f4d8e4d321e07516198cb01d30749d8cdf8bce889e2e88ad42b0975cea3f0b8167be1876abd63bfa84916da07f6d2d5b686bed2853e3d8488c71ff861f8c7a60ecd2936a2538f5fc1a8ee33a6102ecb8105c5bb317bf75f66469546cdbfc675cf77c2cf2b37d228db85e520e3770e4bc6bd57ebe95e964c3ae37e0ce9019f8d4c22e1ec2b7fe1d1abf2fb72957807646c1ad4d59702e1776bfc8d3b895743b5697adc476b657b7e5321ae62d7f097c03bf582a7148fd8afd7bd87721bb725c4cf6768694c6afbcdbf07db86dbba7f3cb7e237ed5af3b20b2d7b9d8ec06b1ee41fccaeb76e538f6ca5922d7605292f51ff9b2dc2fb5257b71d77326f6ad7966b9de3351f6b61467bf13456ec38f1bcf40901f5d20a2452ed59f753bcaa542f8cc4bc6c6318c8fb7193f48fd16824b1d7e94da8edb09430e63e7f83291729ff9cc8a37cb7eb02dd98bef7ac0754c0fe7fa683beee0f9b1737be01a301e85ed26d841bd56577c474a8fd924902dbb5e8eebe245b08b17f0bddbe91f783f62366b3a2369b10a338295915a11988fa5d4f3ad42321009e426816e8eb8d4042179436e66316db9aac1a457bb9770a110e770c139c019721a0fe322734fd8c7020891cfe116532c72938b71ab4d392e34ccdb441b20cca95b4fdbe1c2e33d84533f035f90c5a12b9bfd525bb29738fbc8c081547866b3de3350f43619651914f99bd1975c8b7ea2509e21990b15994a3bca85fc07c943a6c631f5cc30f59494f6f87e683b26d34ea616e0b10bfab9458271ad0a2b351fcea11fe76cfac1b6642f7e6dab9f71cdf21604b71887fde1ee63311eb8930b045ac3ae0db3c90504cc833d0156a53dbbfc08d90f13d851f855ed744cfc756d6fc3c5e8edceaf2b894a3119bf1657e2e25587d98549ef639fc54e8475d809f855ee5b887f2326ca8bf03d1713ebcef86ec624f910d6c1be8c5f6d96a889b287530f643dd3bc571ddb7b70b1f1b0d784dd1d1ef9bbb314936f7c1fc1454c09c2eec615cd020877c9c48d7ec8df788803a739bf361d401e17ef1339ecacb47127c3fdcc11b0b54ff54e8b71b0bbabb09aa118f5aeecf46dd8ccfdb0c144ae2f1e9cf143d47b77d8a676bb602fca3ebd1eee6f6bd7236193fdb1b24d997047c7b68b91c199b0f5e3d43e3e3b7071f568825b2ed532aea0763dee1491f39046037e359f8fb8430f3a463caa4da8d5751f266bf3607817dac439c8b37ab689724d6813afa3000bfc5e04a29fa974b81e445a0b3cdafb64fdeb3edaea1c476c0b2586fd88431ca3e1ef01335dc4f5bd6d111f720b56b15c10ddcdc8964dbf34128ae1a51003bf824ddd8ffe64c2a9e1db5fd56d22ed5007abc0d3ab5f4bc55e52aa77e42b483faf4107ed3f6bc0a11c7dad7a198e97cdeb32243aafd20dd24fa4c2d3a6de3517f51d84a7adbd98e9f9dd567ddfb55821aa26fd4da88b8b9451c22637a10fba1bab511f47dfd4196d5fddc6b11cb6abfa10b70b5aefeef099dc5f83b6b512fdd700552eb82ee8d3a6a19ff821caf6ef7836d69af0e18cfd0d629f66263ec10ec7b12811dd1714e238d6806b931ab4bf4bf1d1629b2ef9ed38f71b8ce16a08fd266c57d057a6cb29fb52abc3d51dd7cd68e387f0e3dfd348af0bc6d9fe48ab14c75e83e8f7b0d1e66dfac154fa5d5dd620ed21d571e598baee00835a5caf9da6fa3eec1e009bffc66d7c2f600c4fb7fb047d6bc4a9b45b70b6e54b755cb1ede7835c5fa7633c0a7a9d6ccb2555bb0ec2a50593f0771a6d3ae5ebf916524a47fdd9da590b59cbe5d3e865d455175d411298890bcecb31e9f6747860e863b81075dfbaa96edffa574c1c4f56a6e1761824ea20d4a91529a67bb23b964a3ba67414df5e49be0951e3767cdc6e21c27673a5d58cc1ee3bbbdd3e63f7fb228f33f1511711710e26fdf4679834b8f2a9fc4dee848b0f754193c47d8849c80db800f17448f041880b485a96a13c898444cfb03c184320a87d2aa16594322ed8e107f8f4542a9bcb25b2b33bf1b0afe1ce64cc1524b4fb1a2eb2eec7a4cd74b6767d6717a485c95f32b71dc2d88f3c446f5bbbd679550f023e80097599ab4d85f2822bca093b6345f37e1d45ee833d1b1a644cb67741ecba6b4f6c98180fcece5d28f360a7cccf40f07ed4ddf6506f8b5107a7235fea76d351e87bb49b8367ba5d6064602fc28e411c899c69073fdb9e99c9b44dbfa4eba009fdd77ba803f5c663b75b093bbbdb6567a9d88b4e3368bddbf4f3aa2c36fda7cea367bf8efe74f969e13123519b08da4fa4c2d3a6de15171b9e9a4b507b51e9057593d1775ee335302788a80e6dde14cd6dea3d41d4993d8cb17d26fa34f775cf66f4290fa14f3157cea62b2341edd3ecbf388ec5d6826e1341fbb37c1cc7624a8e7ef015f483f8920f303e54639c48879bd9156dc1631c72c7edbee6b5e9076dfb5ddbf6a06d25e8b852db0dd78e189f95c3e592e7b58fd7f5602880c59f07716d144a0fd73efa81f04d48185d52c8a995fbf7ec8a5f24605b3e1dce665cb1ede7835e5fa73a1ed95c27db72b1b56b55b941b9842d22f6afb6d7a3b8ae1cd2c2bc385dfd606c0ee2f752ad3f5b3b8bcf495e1d717a9dbcca3333eb87809ac4462e3a21407d8089f34af4f08de8dc430e135c75eb455f3332fc0a3e1fbff668b1ed4bfcdaa3c2ecd561602eea191343cc30d88e3cdc10038abaa6df8bd570af21dc2e1d0ec72e8642758bba9a70b95fe2e2e24374249bf1d14e0d82491df239db10db3e405ab510bfde447e430ef9f8017e2d8c291b4e0cc14a8b88d80626efe017bde7f18994cf099eec6b0ee2bd1817f53df1b919db747604acec5327053bd462db76d8f566f5d3a4e3949dd5a06e621cf6fb69b10df5be1982cf33b0bb770c9b1b0cbb4f975daf813daa67117e6818b29a40283b57c77721bf1f19798ee4d5d2ae5578dd06dba35d6bb16d2fd28b69876817310e5c6ed7621bb8bc8b7c3f860bfde7f18dff21a7568adc0636499dfaa5dc11dbd445419cd8a602e37c0727fd3fe8c871b8067d9029b629afa53e2608ca5f269d4dbfa4eba0049da016dbd4ca42d33e0780e53897f0616d2f00a0d30c54ef96fdbc6dffa9f368348798aad34d41fb334fdaf413a9f0b4a977f5cab954c6cda0f662f2f1bbad87c6907f54c4f3e8034d7710edf679d8aa76a5c6a5a16dbdebb8b2fa8d324cc5a46400c4b5375126ed7ae3da634177acacc5f54b3a9d8d7d46d2e7381641a137741f10a83f2b80716c02c6617d79fcbed10e35179bef71a747c5b683e800ea30b63f83766ff6c3dbb1ff34ae9d677c1e9b824d3f984abf1b4a3d607bd0b66296c72c45b27145fb53bff3a91f15d575927e71813a3718a2bd7b9cd661827eab1743853e469faa5e1455e67cd4cb9f700915e76ccba7c3051d57acfb798bebeb54c62335dedaccff6cb958dbb5059738230872205dfda08f3453a93f6b3bf391af1cf79203339b1c27948fd95306ad27b1cd1875eede19bb0ae4beceb820c5a44f0dc21b8c02ce8158a1e782ef42909888015abbfbba208c9a5463d0b801f12fc70a322ff7015687551b83f79d486bb813e970c4ef9e8cabdb57d447b9c7bb451fba1e3ee2fdf72e5c9ce87caaa5f0f7234de516e1c26142278882e878d4cf56a3b15a6fc3fed0a950801bf4150dc485c7b076dd5cdde7376d2d468662750b184e52fc4a4ec0d63e636285986baeb6bc05aba74639a2da09c6854d280c2ea8ea20ac5e0b9b78704faccd8f3e0dc2a9b20bd4e555b0cfe5b0212f17c4aed7c09ed54719e98bb07f5c1fc8c748bfa55fadadecda2bb338f65ba43f55db3ef6d59b410f63555d83e1bf2faef250e49053abce267eeaeca0ed3f8c36f42b5cb07701e787545992b85b4e8ab6c7554e5b8cf38e36a79dfa7557b9beb8a8fd816aab704d10e99f831fb5af2f94c367ecff8e84203e063691343ed4fb0e70b9db60a552b4e99762720a6eb5e0b9c8993c457e11447aa7ab7ed410036ced25263d67c74fbd5bf5f3b0e574f49f5e794e74ccb69f4885a74dbd5bf174173a80bdb88306da471babc5ead245b0bfb3bb390ff146da0fec469f85b63718e3a7ea0e2b54bb54c2782bd47b2aed36c20279bf5de51f8551f5a31e3ba1faf80bf04881953866b6cd4898801bb6f619930cd8731c8b2112b3e3a73fcbfb710ce3a71e07951ab654d9ade16cdbc320e77aa819d7f923763911626c7f07a2f33fa31d28f75b8c7bf39d312a7c24fcd7a61f4ca5df8da41da43d4402d96f6cc6f5ca8f8df94ae4597a88f25af41b8b30866b675b0f0fe04e0635df3a11f5310ab7f62af726d2dd88ba56dd92bac96c8dface84034fb3af4b781d924a3f9fcaf575d0f1088cd2729dec970bd2b3b6eb54b858d842bafac1404907adbf54ec2c50c672d2b37b669a939964a60212f8bed3a9ab8efc710c18eecefc6e0c009bd119dcfa89113144acf3204828a796229b629b3a76370436fd0b5017c4df571d7439b5bac514dbd4697521bf0bf950ae04fa6ebff0a6e75f9c6ed9e162f9323561856bc4858916dbc247f02bf61eac2272d23bd3f11764283e9e00004000494441543a87ed5371c1ad9c124f4cb14d1d7b0817227edccbe0e6e805a155837ec2d04f2c012bfb8c8d429ec74592796bf3a3104d74bd9ce55c689a4196c07e7f08dbd8601ec4f612b40f9843c8a95f21bd9cb55dc3a07594ed1cdbf38a3f74ccd6ae3d22dc0c5b36c536e5a57a07dab44b383b808b0eedcac06c825206b5839d3f08c13dd1731bb537c1c47c68e8aa11fca16cb9dba3f6570e3f2862d461e77ef43921877c4c455fd4de198e7cf503d198126ef54499ba21dd1ec93ee817d49ba792399bfc3c0dbbd2629b8afb61c33e4b120dbb41ecc523c3beeaddb69f4f53ffe991ed848752ee2752e4e9abde6d79ba4a6d652fae387ced626cdce488bd5a88562f7459a3021b7679bceeaf5aa1ded3d56e433c708d30693756f0e0078f884339bbea8e397230f846caf68924398e25e6eeab3f43f0bc1ec730e6be581afdc1ea15fce0d7e04262db1e74fb56cf6c369d5ab1a335bd137cb4035ffda099400afd6ed0f660261b745b5dd799629b0a7f3bae79349b325cdb98f31cdb7a6840840b50afabd1cf6ab7033f70aa0502eaf802889e9972bec79514fb79ebebeba0e3519aae937d73312bc6c2aeadb998e9fadc4e4b3fe833ad88b7a0f597a29d45d2cdcf8dc05d697e16b32de51a93cb539c8be5a3e8e0ddc25208851a68203e98ae1f1a821e7bdfc2e430ce21ccef109f7e0e0c16c7c4393dc0bb4fac43b8d0b3b790af33903f737587db6f90fd32087f0bbb20df7a7280c0ea450df8012fe43aa9b41cd70f83a7defda3eb0244796940f9d4401b230a3861cd2f25d02c310f703b18014bfb8c490402cd6fcc09943a09b50d8ba442f577a231718c0987b4c7c1707bc2d64b61ec3009398c6f53678af1efece4b25dc7e5171c1ec245a31fd700016e3b0483d03314c161fc29f860d5d98700b9022ae4227cdc02a53bde712747f9add3caa5db13f61bd007e8f6a574bfc7d14835f767f003804ae70a8f70a91cda8b8adb0b5b48547f2a6ef5fc94c53ec576df79419cbf77f731c884b64f2500a6ddf9ac77db7e3e5dfda7ef72a7a39ff09d98bd475b9e312966d95edc6377b21f03b25eef0093d6768bc23e0e41a3b771a9ab5e08b31efd514a2e1df6c9712c7115f8eccf5404f93a8ef5835d4e3f297a5daaee2a79c0630cb56d0fdae4bbba7e80ec8beb667d9d8b4ba1dc71b6edc1b2049ed705b848d90adb3bd7990c997da56d3d44b267cc53422fcf8a9cc8d0468071252dfdbce5f5b5c9589148361e99a482ccffcc70ea19d059bd3eb3e41293671f3be9e8077d2413e72548fda5c5cee27290370774979c371966465b22802ad5cf4ada0911c9af33f58bfd9e2391c83e7454dae945747a5f7d27b2a6a33a1c069c7235c207c89719bfdaee0b95445f2ca85b44ba25b96270c6cc501466f9b232d8b933cefd30014bfb74e37377f2eef3eefd961e5eeaf66feee7b25d9bf954db6a32d9e03e9864ff477bc3e25764428a36d5036d4c7d94f8f66bfc02fbb0c7242014252e24aed117f3b848fdf764bfd44208d7eefb4a6c7344d1771126729bb9e32741f7a383fbfe56b7832cf2ed3b7d1e8fa2002d0995e94b2d1c93df7a37fbc120fdbc192e2bfd679afa89747376c7677209c2d38ca735ecc54c3fd9b659beacd43b329396768bbee9be53702b97ee9f5421711df21a448dfbd1a7a5ecd2649f1cc7bc6bc26f7fa643e7db38a61e6efecff8b14bbb37310edeae7e89f270b6ed610bc621f5e34e7b7c9ee92c528f343ae0e2f907dae8d01ed69b0ddc23ed6c1fd259cb46ba89aeebfe64086e663e6cebc18c239bdb41c615d30c6cfaf954aeaf8330b19dff996904e16286b3d9ce16179db794fa411d4906bf53b5b30c662d1b5127ea72b29136d3c834814e49c4289bb4316ea7ecbe3426de36911dc06088ffa1d5787bb12cfbd710ef3cf305e14075acda9903f95f52cc838e93dfa91148b77d26ca4de4f983ca03ea5ebdbce01318d157d8560b1d2ec045a87a7b662aaeb5ecda9d67bfbf0e46c26125d68f7742c846031986cf4510daca1c314c3db8fa1a4c5aff025611512c125044bd665d737b17ab621b8c73c936b5d8167a6e9c31c938d3198ef27d5432ba9d6418d27a2e70bd2749ddab3f6dcdfe335bfd441224299df2e26946d81af662a69f6cbb35eb3d59be929dab390d2bead1a79bdcd58b95aa21c067c265cb3e398e25a9bd7c1ac720b44d37c4b674be11d324a41ee772c15918a371b00c8de1e653cdb378962184e7e5b187b8574004828c2ba9f4f3d9e89774b5d8ceff7478f51d848b192ee87636b944f296423f188923831ba9d85906b395ada8f37d6a932d4e79940e2e2cf7e097ab1e9834974070eb87acaff1917db32154aa1dc4e3769d0d7381d615e7f45b60dc27220fb147bedef388d7ed3fd9beba354ddf9a75083de70263c29e2cdc27f0ab85ba73202ac4950f828b51bc6451f15c2a042cedd33a494cbc2e72846725c0debb33be3d3cd33d79ece9b0eb4471e8946ded5a874ff57b037e7a521fe594f8f60ff805beb7b344f422308c6b2f383446b523e5d0ae5b6c87a8f7f7d100f5cb5cd4edeea3b0ba2ee290c6d94e7a1fab069ec72e1dfd484bf6628bc7b69f4f47ffe955a672ac4052e615e7d2dc4f78a51d97a6c5015b9e6652e9b01733be746ea7a3ded3999f64718d449f753dee53d76f69567e1bf1e3ca7cdcb2be1cdf697569b6cf16f3c671ac4544ca433e8c630b4ba362b07a29c4fd58759911079b892cf0c48f8baa09a821761fae839e45ba8b60c3997699ea77cd7c7ba591705c31020283a73b27c73a64dbf2052986753f9f867ec9b312121c4cc77572102e09b211793b7ca2f3eaa226d57947c2b87d9cb0e9077d449bb2176b3b4b39e59c88c059ca9013796126d245600726c02187eafdc7d33c62c5af5d9371716aba3550d0f49d63eaa50823cd936a1b17b2973a3d553326ce6bdce7b1af04beb87098910cd63f3563d0ffc4239cfb50a28130e40f279b108f723d4ef4484f9d407a7dd5b7e11a3089d7d7173d11ce7d7ef249d18b202398e7e648f89d800f9d1d011bfbb44b09f50c5108635fc87d865f7fdc763b0e3fff9a1334af74d261d71d5da37c39f2556e266669d7661441b7d55b4257768b6f436ab0fef167d13bbfbd2ef8fa61e55b3767f8f85089753e127fd910d2f6b826c093b15a4ed7d34a47f8f3116556bd24ed97d29c9316edc5323ddb7e3e1dfda7fe01c8cc7a95166dcd83ce763afb89547826ab775b9e1ec5b53e94c9f1281df56e5db000016b3a89dc865543ba2f57d728cf7c0e517f7706c436275fe9b4cf968aca712c31a17c1ac7d4dbd443cf4c45713ec4aa70f7cb8d129732f89971680f1856433f884dd82632049fefe0336a979dd896ac1f4c94bb54fadd4471ba8f071d577478f512b7217ac7f92e8718dad3b9ae89bc4cc6e527dbbbb6e50b924fdb7e3e1dfd52907caae56936f3bf4069f8f0dc925d67824b4bed2f957ed02c32af274c1a69dda6e096569c3912d9ddfba393e52e98c53e83417e8833b11982117831f6afc160fc2b538c831ab54c4f826116b79d8907cc3b33e07e10979ec3e45ceb666bb432e72e2fc24dea8a09bce3710806af67f0bc263d91f6baed4c090faa7352916b4d42bdc54fbdd5b0af4ed04c0779ac8770127258953609f9ac8118a89d4af3b9ce22ff062141e73f744e892d46f966ab7c3ae94ec6c5ba7e1984f29bac63bb1371df8634c6e3f322c2d1052760659fc1930985d8809554bada4bf1736f5f231e55efd55e0f2334fc84362dec5a4781795fc8a907bcde85b6d70f02f47d687f0b90f6cda1ab61c703326965d74e709baf7f82f0acde4c781b56f8dd077bd6ae1c0df641086abaf979096ed7e9a53d10bf7f8589ad1fb7fc4b3c10dd11cbbb21fc5ca4a1dc2d46fb3b781893017c5adb05ee97d29461dff6629b9e6d3f8f3ab1ed3fdfd71d2a6c4df59fda85ea3db204431f8d7ea7a39f08ca3370bddbf28c1633a5ad8c8f4729d47b4a050b1838b28a1efdcb3bb83ef9ce0edc069fe83a2560dc89bca7c33e13c5ed3ece71cc4d24ba9f37e318aeb9ab747f878ee957e83b86601c343fa3310e9bd7b3d15206df3a1dfd6dc8e1fb9133915e177c70dd1bfa607b2e7e6c1cad2fce5dd107ee075de183f6bbaee0be766dc79548e4e07207786806e33057996ffc90fe562bfff09772f92205f5b161d9cfa7a55ff291bd889756b84e8ea48d0dbf769d2a1735274e382fd6e7cc8c613b957e5047c5eb094d2223df5ae2c848e48cb4b508e042f35134cadb9c49711906f9699df071e5277291ea1c7f74b7c83910aa42bff060ed79f56910967001db1ec296768de898ef4eb204be0826751b2655b7b8c2a95bc826eed3b144bfa7210d75fb6b8c431c0b9c89d99b98a4df8e8fe996e056b4feb880506f122ac2e70798b88fc285ca31e4b344e71571f67499f70388e752a47732226baff20926b799113bdbc95e95decbb93d5179ede08adf232a1ef22260699f5e51b5780c69bd8f0a57b6a27e29fcb7ee107d306a96a2eeb4a0d4621cf010d4ae4371e282fa7f90d6c5485bbde06330f231d848ec6c75b10b9bd4ced6ae7578f5adb50df358a2edc368a32187bc0dc085e64a4c08703d13d3ded515c6cfbf70fc395fea57e0de4e9bdd8595b1cb634f27de43e43fdd8fb6ad1a20dcb910ca571a62b9ba35f5913de173adfdd7a65f4a39cf01edc54c2f48bddbf6f3b6fde7c3b0f181e87755557740a35b893688661979b98f598e98ed54fb090b9e36f56ecb33a6ac963bd9188f6cebddb24856c10ea1efd88b6b937f41ffb1c12a068b40a9da679024398e25a4952fe3d864fcc0a52e05420e1baaaff172dbb1f26dbeea2053740fa3ffd33f2477407aea63ba2eb81e3a173f049e83eb72251e9bcea61f8c84b7e8772361036c588f2b461a6a1e7033eae166e398dafcb285798ecb7b4676d351be2019b3eae7d3d42f05c9673aae9383a417f11bc4ae53e0a2ee1ef967f3ba586700b6aae7c5ea59d43fdb167bc78e6d3fa8a357dfbc9e3069a47ddbad74a43d0146d84a045ef84ce4271848f7e24234cea1b1aad566dff398dc566fc78448cdba1d678a6d2acc288f30daaf7a46d60798a02b67865317c235bbc2c7dd7f3d278a5a0880e732d745820e3f7187c8f398ecebacb687296bb14dbde1aaee530f61101de6f770fc43278f3a2ef5fd5b5c70bceb1c2fd6a29de9c1d9de02e150bb831ef1e873fc4e4ec0ca3e0dbb48167ba3cba82642a07d571f43dd9eaec536c4f70e6c5357e3977ac315b98d5deb286e473bd46d421f5383e576a43bbb317224b26165d791d0d155a2c6a1849bd5684375f81537f2c207b031dbed2ee4f127f0e39ec0deac56c62987723c6b0886e183c9ff36c0ff4ff039e8aa4bc5f821f42dbec5bbe4c9a47c569b4b4c44469ebdfa257dc1e319d688483dc722910b6a2f3a1e98742067d5cfdbf69f08772bc622d3ce426fd206cfd77061aa8f7bada4b4ea270c1241797a564d0bf5ae92b3e1990e7bf13b1e45de146eb0d19b9e65d627d5b76dbd9b7164787b3efa8e31f8b8fbaa0c272b56f669d853b2fc711c4b46277a2e5fc6b17d5ed7e2d16244b674bf103960b9f1b89eb4c3dede451bfe2dae97df541f8ceb1f188d7e007e682b77a5619c8e9e31ecd66bfc8b7ac48fe441ae7b8c78cd38dcdbeef6a0fa25db71455dbbd4e287c40f3deae443d5df2599e7b8f315781f69ab1f7d5b7496e5d3f6e3598746a271d721aadc16f3239bebeb94c62394c1e63ad99a8bc12c885ddb705149255a58d96cb61373dbc99f6d3f68144f783d61d248fbb652163c6a2eede930c2d624a06e63ebe9accc521ddda2242bd422f93c1eb764e273224c4485d900412ad1c56c6db7f0aab826a85fc3b14a6e881ac08b10134cab0183fb727c32e94622bd939429c3ed8720f602068e965c3f5c8c9c05914ead72fa00172191dba55a0a88f3ea1ef753f1bdc0f5aba08fa0f4e241c0ca3e3de269e9907a19405fa71d28b1740926fbc95c3aed7a08eced64d8e861a4bb19236a43b2849d733676ed235a4f2f8a4d1faddaa0dd6e421f91a8bddf723a6e8dc12fe3eaf6cf542e4c47a31d29e1c54f5d7866ba800fdad88b158e00fdbc19bf6dffa9c68633d5ef7cb0b164638a9996de4ea59fc8759eba8c36dfd91c8f6cebdda65cf9162615fb0c52568e638969711c0bb3e957865532ea8731f4b30f6dc335b107b21a3cdae207ea16575cdfff0c3fb4aff1f093eaa16cf5bba98c2b66d8a0738154f9f80d6fe631e8b8e9370dd39f4d3f1fb45f32d34b653b9bd7c93a9f41ecba35b804e9077599f437af273489b47f2b95023d321d09a440400b134721b80d81e0464702854080765d08b5c8329000099040db25c071acedd5fd2d9d71378afa3519eef9cf451e76ffb8881f5a169ee6bcf80882db4f20b825fa812d1c0bff920009900009a440402f6948210a06250187404b4b98098a04f29100ed3a1f6b8d79260112200112d004388e691285fffd12eedad082db35a7e0199a584dbe0306f067acaf28c32affee98faa99b5094db8c47c5506c0bb3e05f12200112c810010a6e1902dba6a26da7164ac2e9173085f7f89704f29b00ed3abfeb8fb92701122081b64e80e358dbb380867d783e2b84b5d178f4837ab6b17ac1576ff7740fe2db9b58f9763b9e6546470224400224905102ee1e38a38931f20225f0329e6576069ecba31e7c4e4702854280765d2835c9729000099040db24c071ac6dd6fb023c007f018aae9ec9743e7e0d87f61671db8fe04da87c06718407374880044820c304f80cb70c0366f42440022440022440022440022440022440022440022440026d8b807a5d181d0990000990000990000990000990000990000990000990000990409a0850704b13484643022440022440022440022440022440022440022440022440028a000537da0109900009900009900009900009900009900009900009900009a4910005b734c264542440022440022440022440022440022440022440022440022440c18d364002244002244002244002244002244002244002244002244002692440c12d8d30191509900009900009900009900009900009900009900009900009b4230212c8388107bb8a5c0c533b784464c4278993bbe534918b8e13d9d12432755f627f71674a441eef28d2db30e7e6ff2bb2e6a0c8dd49e2b14e2f2e037607fc72b18bbdf04365bafe6a3a898c291639d20c7bdc29b221c348e79e29d247fd0602db9dbc23f3e965b8388cde4580eddd0584bb2440022440022440022440022450d804b8c2adb0eb37374a77b26366fbfe92243f27898c8270d60d82dbe5d81edd3e895ff35407911721d499629b3a5d843407209e5fe19ca7b34dcf3332bb83beb8d8455df8a1b2507fed6143457f255282ef13b240f478a4a5d26b86c0b7210be93189ec12607bcf2e6fa64602244002244002244002244002ad4cc051425a39174cbe6d1038f6bfe92fe793a522d0dc426ef39f21b27d2cf2b37d228d4e5a58a094f32e135c72bed0ad94c17110605fec26b2b2bb480d045e3a12c83601b6f76c13677a24400224400224400224400224d02a0428b8b50a76261a4f60bfc8d3b895743b56c1adc4f692a3f15ee28e6095530fc784b71f12f97163d8c71a841f85ed26dc9a57ff655ca8f0019bf41244c5c3ad40c0b2febe8115941d94cd4090fd3dec8d8e044880044880044880044880044880044880043240c078e85506626794241084c0fc4f45e60708d0cf30dfb720b8c538ec0f771f8bf180b402a6e70acedd562660537fdd8ac2996e82b0cbdb365bb902993c09900009900009900009900009900009142e0143b128dc42b6a992f5c5fd95d77e0d45c6eaae26ace4b948dd5389d53c9bd40b04bec2cb05704b5d673c274addd6b41cb75ece4f204a4d86bf4a3c474d5bc82ebcf0e0b1cf441a92d0ec871567e34f1439cd597576e098c862a47118692572eac1f767223f1187ed3d5879f4f081c891841b9f98f1a2bc7e5c2ae90978dc592a7201be8f20bd12e4753756e22d8070974cbcb1e1e2a72cf9ee675c99c835b05575676733581e8208f63456ae75c103d3fa1f2f528a63af7d0e5b306cd4a6fe46a2cefa63659b32a98e8853b96218f64cd8de716a1f9f1d48e351b491444ebdeb43e5f72ae4ab18fe55bb781b11de8ffcba5dcda922e56803eae51f5e718e3b45e43c4490e8fc3165cb60508b7c9f86b4d08ce400d8fcf717222ff859f9e9ce50927d9d9706dc8eadfa02c5f722d8b7b26dd56f7c7858e47667e5a8573436fd84eaa37e887ea2bb237eaa7877a15c2f6335ea7257f9d2d59f79e5ddeb583ad2637bf722cb6324400224400224400224400224d0e60838b3aa3657eec22df0e4ce10313061f6ebeaf64030c2a45abb728866ff7ab2c8c9ca34dc0e42401d26df0b2024b8dde44e4817624432f721048d1b20a0986e6177bc28c195563326dddfd96dfa8add7eb08b484f25ea219c7e1079131e34afb3d50ef9bc6797b70866939e4abd2f98ccc4478943710ec2c4d31023e7eb0c181e6cb944a240820f7e1de5c481655fe2565ba3ae227ef2706326de5c7bb9567393e4df6d3336f57727ec653804b7646e3b04a71fb984a55bd09646a9b6047bfa009f9e1ef97d1375723b3ea67b1236dd03b6e969c7a8cfe510b554b4ee346bbb39768d73306731f4a848f4af4174bbdf87181d09d0c286ceeb512478006daaccd51643c1a1f84dd8192bb6dbf613779e81ba48f2604577f952edcf5a287edce954d34bb9bdc7e58807488004488004488004488004488004f29480b314294f73cf6cc713c04298a8c324fa79ac6a33dd418859cf1ba24da969025879321fab6ab4d8f625225b0911692fc4869083dff158e533c48c10db43b0a22722b6417c7a072b659ec72712cee5dfdcfd25c4830f91a7cdf868a7c48664ee642811a18f91f7121c2b733e274318c102214f67939e7a2bc36c285e5a6cfb004c6a21b2bca96143a4f801562df575a5980a171dd51cc47b3184cc9ef8dc8ced4270e34e8f8a6d07c1b00e22d233b053b3deb763ff69309ee112686dea6f0dea4b3d1bf0432301253029bb53c7774150fa482d234be460675a6cdb8eb6b3d9f07b31eca2c62534eb87e21bc9c5c4ac836b7f31279d1d25b6ed425aaf21effa0520ead4e08e586917405077a24bf8a5f3d05eb51d476cdb0b2e2add5dbaddbb4538cb7e42c0a99f16dbd04f6c461d3f83f6ff8ed1f607a3ff31fb17ddc4420500d040fd59c252273e914a7ae968ef8973c6332440022440022440022440022440027946c063c9469e9580d94d400013dadabd228b30993d1b2b67422f17c004fa01ac1c5b8389efe04e6101a9428905985c2b3707e2819ecbbf8b89f0440821daddd7056f0055ab84203edc00816d395674851c02dca09528a4f918eebd335f78f038d2ee6d08634ea8c897baad557d946bc96fd817ca8095480390ee8998bc8f52b7cfc2bd89d5731b31210fe51ff958133e1cf7d726bdbbb0c24c7351b738de8fb4945b04416802388e570c21588cc6eac00dfb43a7420152e1e2c412113f43fb6ee1437bcab3ef418ee8d20c7563c42e27f34a788198fbcfb8d550b9df82e37c084e6e67537f6b605feaa32af1c5cee1b7da7e0c41b8dab06f773a71fb683be6eace5bb0526b94538e1392d8775c3c3e0f6c868dfdd8101b1fec0ae1d5e9aeaf453b5df46934a2911062c7202f5ac88b9e31b6603b3bb08aef6e6d9fc62973f3b7e034d5f0537b266e0947b806c393553fa1c2a33eebc0fd5ab49507f7c4ae401d7d1a0465d58f209f57a17ccbd1b6629c457f16133ee84ed0f4605be968ef41b349ff244002244002244002244002244002394b200333c59c2d6b1bcb18268c9b9c95237a22ae1e141f12a28c6a3f5e8b381095ce53cb6ae09a10ce14dbd4b1bb21b0e995365d2072f5550795830877aa13c70710094cb14d9d7e08428a5fe757fe6d8040b80013f2d5c672941d582da30430757c812118244bdb577a10012e5342235c23d2d5625bf808d28270b01dac953bd3f117da49139797215240470cb90f3c0428e7545e7d697bdce62a8f5a8986ff217782638bc90ae6abfecc08104047db4edbbd793ec9f6f310bfcc5ba91f8508a5ebe52c47784b123cd0a9a3687fa6d8a602df0e7150b32983c01b697f38d713e97783e0d323d907f6a8ded09acc6d465b35c536e5b77a07fa0225566a67db4f38e197a01ff9a14b6c53a79640407474ecd0ea559d5ce43b687f160968b91134bd34b577cbdc3218099000099000099000099000099040ee11083c65cdbd2230470909b86fab4c2632f4c384518b116f414c887310017e07814b3f1f4ec7dd0f937fccf343ee8f2e01451d6c40382514a8c52b69778668127af87dda13888db00c42e3c22ee064a4db8c897999e3ad930681fd74715142c492d86ce4fd9eee75baba84aabee0abeda4056d28bb0cb0baed37589915e3a0b6e13d22a1fc9e6808d8317e2c77b42019131c8d682bd23cd769a4bafd293f7b11602ff2e019ce89443dd7707132f11b713fe463c59f6d3f115316b4937128404f547229ca832e440ee31b77aa2675669995c764fd59d2887c9e0c925ebadabbcfacd11b099000099000099000099000099040ee13d053dfdccf2973985902a69eb03fc1cc7d1f26edda3977728a192e1ba2974e3f5bdf7da106681148ddeed62d8912a4054b95b742e7920aff2db02fb51aebffb1772e80515577feff2699bcdf0f929084100802f2280842451115c527bed65a6d976d575bba6e6dbbebdad6fdbbda6ebbfddb6adbb5ed76bbfe6b9756ebba3eebbb5ab15810454110e4258f40082490909090f72433c9ff77eebd67e6ce6426994c66421edf0393fb38afdff99c73efdcfb9df34890cff345c053d223315d207f4e2b1cd2ceb6da010e25b308c5d5a64528b97e930976573e6013dcec09a8e1a54fd84f84b1df2e755211423c7bb50ce63ea1931e68d1041d6eb46ded5cc6e27d70b4d507ed2501122001122001122001122081114020d8abdd08308d268c3802b60e5c1edbec4244b735b4d2e33906769a45e490ff46efbf5a19b6fa86f4d80bc44189715d36a172ac73194ad5aa79041794010592489ec0fcda04dfd4d6cbb0e0b5bea77814650291ec2d16f0fa10fb3df340aab2c8bd422d5a715c2eae0ed957a3c31788e85a60eb3daa828d16c7eb7db4d414ed2401122001122001122001122081612340c16dd8508ff08cec2f8c0bd5819e30ca667791adb988f664b8e3223269416aae1a1be61f4f5ea06dd1ac58a36753214a801e3ad826655d639fcfaa9f628c752efd147d602f11563ca349456c11ddc510341b85ef0bc2f709ff3634708a830ea157e71c74c44144089447b9145c8adfafb3e9b63ee1e68e800b29dcfb842af422ab77a812a6bf77acefc226cf4ff629eea83ae0f53eaaaa8bc692000990000990000990000990c0701088f0e443c36132f3880a818da2a0e949cbd5a208d7fae722132c2db15ef8dda2b06db4fc2b448dd2fac8745961d23e99bb0a727766901e61fee9db8e83090eb62011dded373ff16c175148b9a952be3e5c948774e9f12f7724b95c2b0c6f97cf5871ab64e2fd2c5518193a7afb1160857c96cbe7a6eaf0c4b67eeb2f08b41c3ff1aa5cc4e2f22061c33d9d2202d352bfc83728517a009722b6adf00b539e2d739e59b76bcfe2277e6186e330dcfb847d68f64999eb51df3fb4cdaba4bb639e88f3d174d1bc8e2279bd479301d326011220011220011220011220011218360214dc860df548cf4854b337555723e5a4597c73924c6c6e75c5592a62cf4b395ee16ca356e65458f5f26c8bf7508988524a541011eaee42ef220b2a68206144091dea655c85d71a488ae45fae442cf944da0d3a3f29db537a31081104ee122e77d866775f2142c84b45c0cf4abdbc0c9b87c84597fb9f25ed6f4a1e5f94cfabc2732cb8027ddb91edcf85e793b210c593d26e8c8fecff87882f3707e90636e8faf303265ab1e1d40218f78beab754ba6c7d7fa2f45c14b65f335440bf08611c7ea21bba944fd59f76df903caef374edd367036c25deb7858766b04a56e578c426b86eb14f1816207a544f85799ff8487a8acaa564b86c61708ecd48759f58ad2785b49d8fe46ed4afa3cea1dd07235956a645022440022440022440022440022430220868896344184323ce30815fd400734538327ad2c80a00abf345e891de5d09b69e27f5f262f91dbfd50e7f24736e2d91b04aaf489026f54d7981fe6680b2a4da5715b0fcef937853b500a3e3481a6b2ca162b3a4fd2df944ca8593dfb3b5c0321186d40a9171f2f95caef4c61201cc255c52341b29c374bfcb69285c74796758c3f0d471ba5ffa3acc68dbfe54441bbdda6dbaf0541fbb2b96327f4a0498b98dd2d64edb7d8070eacf9382e4bb5714b7c52a3fa9b7cba4c15ee6f104e628912f026deda792c625d2ae952e9b2ea2f17a192aa934ea74dd566c7906db55d7d1d7248daff905680a70fdf90509eb506b84a1440eeb3e21003e11deea1a523dff7e264c6aa52eb2a59c51d0d5fb146338aea3485cef7d0ce709122001122001122001122001122081d14ac05fe918ade5a0dd9a40970cd30be64279a95e5d250281ee8a2209d9c5b68f5b45683a1120751132aeaf9349d075f7215b90774530f9d83a9f1840700868933584532593e727c6d892f6ee4a78f5f21e8a0b37bfaf1f055e9661b71a4d825c3a5a6c532b3c3e26e5f71722d558db70b9e8b2ec939e41dab58458461d7ea46eff4bf710947afb5818bd2b5c37ab8f8849fb6d1574910c3d2df72b84cddbeb3388f6f2ad9392873f47895f25793f54ef4dd2d8b3a5ebe7e37358ef6f9494e91f442c6cd2f1a5dd1b629b1cbf25c2933e1f688e37b598c0a3a7e45a0a701d1f52ed29d0f5e7634d780783d572c3b94f7c5d84eb8f352b6152a0c53629f336e1afaba549ef4851867a3fd33442bd8e86945f04ae776d2fb7244002244002244002244002244002a39e805240f45be1a82f0c0b10490232cc73957cd2a489a897d08f4438fb2884f4978a9852266294eab5b25f4414cf70d310e28e9620d78a1094a92e1d71a745107b455eb4077243e1a2e69e520b79aef1ebed35509e23d17fa90c8ffcbf32179ebaedfce488b00b60e41d32c4f3736ae8a5b4bb7f110178638030433db542da6996d461a7883b7b648866c550130c127f85b49549723da8f2867a0de9a4ec7147ecb514c67de21c19c67b8ed5735389c8cfaaee7fc3e086f33a1acaf53e0c289805099000099000099000099000099040f40928d580825bf439330712200145e01b3254f8266b0ce1cb0dc04ffdc51611707e9f0f942a914a04b77f14c12d14a1977449800448800448800448800448800448800448600411a0e036822a83a690c09827a056db5c233df6b46b91218647e5d32aba7f9ef47a9a2cc30cf528e23d3257e0dfcbf04a3a1220011220011220011220011220011220011218650428b88db20aa3b92430ea09dc2e3dd86e964511f41c787d0a24e2db66e9f9f62d8a6d7dd0f0040990000990000990000990000990000990c0a82040c16d5454138d2481314840cda9355fe66a13edcde3aa9cc0236360ae3a4f81b8430224400224400224400224400224400224301e0950701b8fb5ce32930009900009900009900009900009900009900009900009448d809a999c8e044880044880044880044880044880044880044880044880044820420428b84508249321011220011220011220011220011220011220011220011220014580821bdb010990000990000990000990000990000990000990000990000944900005b708c264522440022440022440022440022440022440022440022440022440c18d6d8004488004488004488004488004488004488004488004488004224880825b046132291220011220011220011220011220011220011220011220011270100109449dc08f4b80c5d2d45a9cc0cae3c1b3fb463eb0281e38da0edcdb183c5c1f9f14e0bf728059b6e6ecee0136b600dfe9279db0f3eb6340782742e5125eeaa32716eb616875754721f0d944c0e996ebe618f0d1d0928b5aec73e41a7d281d70f57ab370c400956dc0ea7aef39ee91000990000990000990000990000990c01820c01e6e63a012477c11b2ac66d6d8dd8fa999c04d229c958ae07681ecdf9cd04f58bb97bcc0bf2a429d5d6c53de7192e74592ce93e217d0859b5fc0c4c23b191297f0921e3db1580f43aeab0469eb71225ca5c83675c8a945378104cb4e65abfaa8e3b250aff5e89ac6d449800448800448800448800448800448209204e48d878e04868980bd674ba4b2fc6d36209a9be1f6b48ac85609fc4b23506ff5a2918e3f23de4583cb882ff40834703cd7c32a11a65f2d05d64f06ee10e13b1aeea353c00fe4f3a85c9f3f916d9395892b1a99314d1220011220011220011220011220011238b3046c63f0ceac21cc7dbc13380dfcafa86317480fb7c332a4f4d9ae108048efa8a996665c25c3d2fede1a96b651d2da286ff1afe7024fe9b77affe4c2c9cf3f0d1e0f9d00eb61e80c2390c214b9eed2d5b52443b13f90eb2f5a6e6db337e5abb300d5cb93df425e26dc230112200112200112200112200112183304f8aa3366aa720c14e4913ae091419463a9adf96e11c1cdc7c9f155fee77c02485e83cccf2f3a0f234480f51021904348a634ce8cdc2ec3be3f1a423a83896abb7c07138d6149800448800448800448800448800448603410e02bcf68a8a5c1d8788e8cafbc315962484f9576e93db2488da994e195bbd502021db2b8800c1d2b927993d4f0b9b532b4eb9120a2d4dd126ea1ccada45b48b52c78f0cb9340453fc62c951e675f4c03f2ad5e67cdd2cbec19c9a3d31ade1928aa9a307f92d8e371b27f427ad8fcd4d613c6e3e7b773dc9eae9437143794fc203cfe391b58205ba7e49722b6d6484fbc3522dcf5275284c32594b28ce630e1d4c3b5d2236a89b4e70e61fe6fd2ae6e9f005c9604a826ee90b6b041da4c7fed26ec7a1864bdabb24d916be054a7d8e9dfc352866b3e20d768b2b49d9d62ef1a69eb9174c725b15579c0d58a8be4a1aedf0f259f7f939e84feee5a69cbcba4679bbad47224ac728912e101b13f5e1dcbe7a8dc1f7e21f70eed22757fd1e9714b022440022440022440022440022440026394809653c668f1c661b196cbcbfc452210f8bb8be4e57abd7cecee73225874c9ca866b4418d0ae5c44b37f5743bdac17707dbe409aca1a11f21e93619b814482bb0b81ebe425dfeeb2a4d7cc37e57c7f6e91a459ea97975bc48afe84931f1703d395a8678b779594e5222b23878861ff5a1d58040b273f95ec39c2e401f9885e623aab47509e70f9d964190e2b62e42301c49370b9e86c54863fce90fa90136f36c9505b5b5d79c28cc29d70eae1afa46d4e953a6f17f63f96d501d4cab776775d0e2041f01da520f9b970eb61d0f52ed7de52a9b30295bf5c0fa7451cfc85ad5d3c2cc39c17586de79488599176ff2c2b024ff7e372995cf719c2ed5bd27eec6eb6d8b9580437bb8b13db2ef03472a0504db06613dc867a7fb1e7c57d1220011220011220011220011220011218c304acae4863b884e3ad683e0b818a98f6b2f46ab3bb1611005eb68936d9f6262062dd23f272aec5b626496cbd8805b5baf79884fda2f49e59614f50f65788d8e511dba4a7d13611125e968f279e5f78fbe1e3228e1c129bf6c8473b31bb5fa7843ce363b33d45cee5599f2c111c82add6184e7e6a5586876c62db7e61f2a888179b356c11333e2742ca397e560f858b4e4a09348b45b8992e9fafc9fe5871e1d4835ed42045442d2db61d92b6bc4789429653c2f22a3fc139ec7a08a7dea51dff1f9bb07593ad5d5c9bef15dbaaa50dfd5b8bb63a425bb91eb4d856e5c765b1b4df3bfc04f18d624395b4e143b60b4e09f0ea7a54e7ab85eb611b5b65a56ef286c583bdbf44a8984c8604488004488004488004488004488004460101bfae10a3c0629a18220111be1ead059e9097e739a5d6e202229cfda84616149017efcb0acdde5ad3d44bb8bc782bf7b0bc946bade26311c2be2e2b096af7fd62e941a67ac3c84bfd6d22b0ad951e5d869308b7e91e3192e72f654c9b7dc183ff92bc67d984312b9667a386b5aa8f72038535434919a4979deac5972663096f52c367c56d16f16287080086fd62c746f3749fbfe1e477bff430d35cde6af00a254f88b072bb70fca2622862dfcdd2bdeaa3d3569643e4a20dd7e2a7716cebd1a7fd47eb369c7af029abb4e547eba47d8bb0a4dcdd4522faaa4a124605aa9d4abb37dc10ea21ac7a974c2ba45dfcafb489cf59ede23e11da6e92ebe9abfa3a91767abfd81e15275cecbd50bf3151f256636ec5a5fa5d871be5ba531fd5b85f157ea22fa25284f2d5b6eb5ec50be8c2b8bf044c872749800448800448800448800448800448606c12f07b031b9b851c9fa59217e2dd96e8a03ba9a809d10d21ca56ed495ac41151699e8846cab54b3cbbd8a6ce7d4704b67a4953b96211b93cbdb944dc9860a5b15f442fbbd8a6c2fe24c0f03e753e900b55fead1081708d881aefd8badb1c959e7c4a0053e7d768d12b5026b67321e52722c9f94ac011572ff9faf74a5a73427a03595c2659e18cc011e2f2471194449f31dc7e4b5cb20ec7cc26a47af02bedffdac436e5f5d3562fa7145bfb46b8f5106ebd5b763e22ed62bf885fcae5495aeb4598958de15e1641abc2da8ff4e6651184ed43be7f61e35266096f7df2940ab02e7d38f4fda04f20bf1383bdbff845e721099000099000099000099000099000098c7102e1bcea8e712463a878fec32afb7b995e2ac2847ee9de222fe97d9c8870ef89c065f422124f9df652e9c5a33a1629b73380205421f154073a2d36180123f5c7260e1893bc472add20e9e489d0f87be9e91767cbd72dc2838cb2355ca106214791e2f26c9d889856fadc580444c8fac0bfad89aa2ceb7a18ed6c6a84eb6130f56eafa3d5d27b6cad0c29b599033594f4a7d28b2c2a4eb8acf34f5bd45acd25cd2e4446c0007d0fd049f5777fd161b8250112200112200112200112200112208171428082db38a9e8018b697f4f3fadbbc4f9c56ab47aeca8d3d6484ed8e30d87e8e56752d40fcf1141d123168ad0566aefc5e697bb162cd5e9b1cec5afe8c37ad825edf3a310730cb71ec2ad771fb3a4c7e763a24aad96366438b97e7e25026a349dbf0816cdbc9836099000099000099000099000099000099040500214dc82a2a1471f02f69e3adad3fe82df6d0dadd47e6361db2c3d84d4904e25a6d5cab0d537a4c75e200e6aee3025046937d6b9e8729e89ad0df380d9875b0fe1d6bbbf4197da1b8bf430fb927487dc287310d29100099000099000099000099000099000098c690214dcc674f50ea270766162a13a50e340fd5c91adb9e8c54f8f8bfaa105a9b9aa278f7f3c11a26cd1fc521cf98715328c560fc96b93b2ae5193cc87e0c63a971010442dc860da53b8f5106ebddb0bad162c98ea378c736a9a2cf020174fd48695da0d08635faf041b465446210112200112200112200112200112200112f012f07b1bf47a706f9c11d82822808c80339c5a14e15afff2cb12864b2ca5c32d0adb46cbbf42d428adb14d1731c1b39882e57f7766901e61fee9db8e07d383c9162decdd7ef313cf76abe79e124bfa7051b94a2f26ff724792cbb5c2f076f98c75d76f3d8459f8b0eb21cc7ad76696677b5707754b5aff228b7968775d4edff6a2fdecdb3351ef397e6a66b988e8e576a3a2b01f8d7a8f82994c920448800448800448800448800448800406438082db60688de9b0a29abd29c3250d27cde29b938055d6e4654b45ec794944023d3a6ea356e6546099bc7ea32dde4325224aa99e6e12f86e5999512fb2a082067ab1562ff46abe2c155ebfebab5526cb9588a533549123e4069d9f94ed293d41bff4d6bb4bb8dc21e2a3762b445879a908f859a99797e137442e3afd7f96b4bf29797c513eaf0acfb1e2065d0fe1163cdc7a08b7de959dd26e7f28abfe6af78cac4aba5104b7e7555749e5647cf2bf0e5097c35defaa97aa726a8188fbb364d10fe9e5fa7de9a1b746ecfc9a1c47caa96b3de8f5aefd229519d321011220011220011220011220011220813347404b1c67ce02e63c7208fca206982bc2d174a5c38a28b03a5f841ee9dd9520429376f522607ca7591f99db1f8998b044c2aaf7f2046952df9497f46ffa06318e52d544687eee3e89e73fec4e296f6b4468526eb3a4fd2df944ca8593dfb3b5c03211da3e25f6c7c9e773b2f2e44d2280b9844b8a6623cca6fb5d4e43e1a2cb3bc3b64843ba5ffa3acc68dc86530fe19633dc7a08b7debf3f0128b0dac52159f1f71111b395fbc571eff59525e2d28fe58209d6b687b5dec5bebda2b82d56d7a7d87d99d8759961b1f9678e12de23700d2e95ebe6ffdac46a4f16b6eb1d72bff99723de1eb49e30dc2101122001122001122001122001122081d14540292b74638940976d2551ff7205ea61e61f667515b05e7af7686717db3e16f1e0a613dac7b69517f6eb65f5c543ba9b8ccdebddd3c0c7d6f9442d4ed9fc03da645b7c212f8048678b6eee4af8da0079f7092727c2cdefeb47819765d8ad469320978e16dbda25d1c7a4fcfe42a41a6b1b2e176dfb3e99434ebb9610cba8c38fe46d38f5d069b58b80716d8555f3b6f9b821d4c3a0eb5d7ab62db544d22ea9bbdbfc164858dde81d82bd58c4a7721f43bd0783aa77dbf5e24da1ef5ebd3f175b906f9d04f6fbb72f49b74a04f6876c6518cafdc5be62ac2d6bb8edf6dbf7ed81b84f02244002244002244002244002244002a38b805240f88633baea6c98ac951e38abe493264d44bd647f24c2d9472164bd5444843211a3d468d0fd225079869b861077b404b95644954c4b3c3c2da2ca2b22e80ce486c245cde5259da6b046ea806e680486540f61d4fb50ac3d13f5be42aedf2c69db9d22beed1185ac622805605c1220011220011220011220011220011218bf0428b88ddfba67c9498004488004488004488004488004488004488004488004a24080434aa30095499200099000099000099000099000099000099000099000098c5f0214dcc66fddb3e4244002244002244002244002244002244002244002244002512040c12d0a5099240990000990000990000990000990000990000990000990c0f82540c16dfcd63d4b4e022440022440022440022440022440022440022440022410050214dca20095499200099000099000099000099000099000099000099000098c5f0214dcc66fddb3e4244002244002244002244002244002244002244002244002512040c12d0a5099240990000990000990000990000990000990000990000990c0f82540c16dfcd63d4b4e022440022440022440022440022440022440022440022410050214dca20095499200099000099000099000099000099000099000099000098c5f0214dcc66fddb3e4244002244002244002244002244002244002244002244002512040c12d0a5099240990000990000990000990000990000990000990000990c0f82540c16dfcd63d4b4e022440022440022440022440022440022440022440022410050214dca20095499200099000099000099000099000099000099000099000098c5f0214dcc66fddb3e4244002244002244002244002244002244002244002244002512040c12d0a5099240990000990000990000990000990000990000990000990c0f82540c16dfcd63d4b4e022440022440022440022440022440022440022440022410050214dca20095499200099000099000099000099000099000099000099000098c5f0214dcc66fddb3e4244002244002244002244002244002244002244002244002512040c12d0a5099240990000990000990000990000990000990000990000990c0f82540c16dfcd63d4b4e022440022440022440022440022440022440022440022410050214dca20095499200099000099000099000099000099000099000099000098c5f0214dcc66fddb3e4244002244002244002244002244002244002244002244002512040c12d0a5099240990000990000990000990000990000990000990000990c0f82540c16dfcd63d4b4e022440022440022440022440022440022440022440022410050214dca20095499200099000099000099000099000099000099000099000098c5f0214dcc66fddb3e4244002244002244002244002244002244002244002244002512040c12d0a5099240990000990000990000990000990000990000990000990c0f82540c16dfcd63d4b4e022440022440022440022440022440022440022440022410050214dca20095499200099000099000099000099000099000099000099000098c5f0214dcc66fddb3e4244002244002244002244002244002244002244002244002512040c12d0a5099240990000990000990000990000990000990000990000990c0f82540c16dfcd63d4b4e022440022440022440022440022440022440022440022410050214dca20095499200099000099000099000099000099000099000099000098c5f0214dcc66fddb3e4244002244002244002244002244002244002244002244002512040c12d0a5099240990000990000990000990000990000990000990000990c0f82540c16dfcd63d4b4e02244002244002244002244002244002244002244002241005020eff34937e73d0ff148fc7058126b8273e85eeb8335bd885b1e5b82be56c94c7257a0c71f676a0a5c7651c27c626233dc6db6c9d3db578bd7d0b1e743b3de1b9331802dd58f1dc7164370f26ced0c2962ca9c34f57367a12711e2dc2171e49f71c738704c60f01073272b391c89fbec64f95b3a42440021122d086dd7ffc1dfe723842c90d90cca64d9b060811d87bc99225813d78960448800448605c10f02a17e3a2b82c64700259883bfed7c0c4ff3943a29b03f7245f8c1b12320d13ddbda7b1a5730f5ee8aac1863e46a76075fc345c9e548e92d802dc90b612e7756dc7b73a2a40b9b80fac014ec463ed678ab0e2c51a649f1a206894bc5d6eaa0d5142cb64473c01179a1b1a29ba8df87aa281244002238f402a665f7d3bb0760dfeb27fe459478b488004488004484011e09b2edb818d40ba21bac5bb6da78665371b8fa45d6b896d2eeceed888a5cd6fe1ae80629b32a81d8f767f8c9b5b5ec0cf3baae408284c988fdfa59f871b86c5deb19689036b6f284243cec828d78acf1ec7039fed1819c6d00a12883a015374ebec897a46cc8004488004c6188164cc5e713b2e9d3ec68ac5e29000099000098c190214dcc64c5546aa204a74fb1bc49b23382395683fe9a4e091f4e59817274db1b71e4fb4bc842f77d5f613ded7eba9ae2db8b479132ae465352eb618f788e876856f101e8544c0813fdf508c86fc9002472dd092eb6af0e579cd289f578587aee330e1a88166c2238c800b2d0da7d039ec3f768c300c348704488004064d201933577c1997ce1e7444462001122001122081a81388f29052077ebf7c22fe6a4a826f57ba5e37b6ed38890bb6b68554c07b9714e1de59c950d38bb9da5a70f353757843f6af9c3a014f5d948104d16aba9d1df8f97335f84e6748493250bf04521177e26fa4dbd8efd11de5167267f232cc53b26f4f351e6c791f2ff66b5710cfde1aac6a592bc2dda5925631ee4e2ec39f3a2a8304e6e9e004e2f0e795c558fe6a35f2ea82878a96cf82cb8fe31f3fdde2497ef2a72bf1bdce29f8ee9b099e73c3b953726e3d1eb84ee69aeb4ac5ef7f5184b5c338cfdd7096733ce535edac2e745625e0d888d472dd683925e3ba7372907486e7d20ca74dccbaec06cc8eafc7079bde475593ed179ba469b8eefac548eee986eec4171b1b0f67dd76bcf8f69e70b21ad17172a72dc4395373d1d57000ef6d3d0c1b89116d77d0fa8b90d5d1e692366529ae59522a0f838dd8fccaeb381ce567c1294bafc305a56942a715efffe1651c8c727e11aa86319c4c22665efc6579d7f80dd6ee1ec3c564d1488004488004461d8128ca290978f7d64958901a80494c1c16cc2f44635103b25f690a10c0f7547e5a8221b6a9b3ae964e436c334238623d934d2724266042144be36bd17838d2a29b2ca4e0e88e4e816367e2e604d540daf04c6b20b1cd812fc6cfc28a8442e4c4006e25dbf6b6626ff721fc5a869bfaced7d68c3b5a3ec42b998b9197300fdf7356e2bbfaed2e3ad68fd154e3b0ce10dd6a4474eb1d9e32ba62305b1652b8e7a2be8ad6cc8b0ee37b3843a25b7c0f12e3a411257722fbcc687ec3c37f9ce4b2e0ea1adc738108ba4d79f8ea8f73d13050b933ba70e72d755858d409f3abc581faaa4c3cfb7c3636f56daa03a516a2bf16ddb24574939bde6871693330bb300d8948c3d2734fe2c9b7f6f9581e1f1f8b78f1b5bbf8fc2264610f067e02b0c71ae9fb4538efbcb391adcccccf47dbb1a3d85a3b0a24b701ea6fe8d487814b5c3ce263e51921310dc9c3f02c18172fed59e5d7dd821314db86de4422924222a68be806bc20a2db8077f888e4c84448800448800448602002aa6f5154dccfae2cf211db6a0f9fc4aaa7abf16eb3570571a8ae69213827bc2ffedd6eefbe7fd411d969c1dfc85175ac44b7bf467c777c54acfe5ef20ce315ec58e78778d8bf5a638af044faf5b823e52c943bd2911d978ebcb854e4390a7061f212fc3ee322dcd9a7f91cc57f77d48bad0e5c943cb35f9b17c6cdc62be92bb131f3463ce248e937ec99f43c33762ad1ad087545c3f3c2ef423716cf74a1fa7806aa9bec6d2d1115c745904d3bf3e3eca224399fc9a635aef24e99dd88bb95d8a65c563dbefbd901de90cb9af1eb7b0e6359591b5213dc48343e4e144fabc33fded0893a980000400049444154730877cef77e8f998946f2af29ba75b8fc6f8a91cc23b2694d5930c792d37ab06f67856fe29d07f1daab6bb16edd3abcfefa5a54b45ade3dee51d3fbcbb740a11f8d968e8afdd65fe8c50d3964a85c928ae6e3ba9b6ec6e7577d1e4ba7a8de64a1b9e1f9c688e63d20b472325420024a74bb0957cecb0de4c9732440022440022430ec04fa481691b1200957167b1fa95a4ed4a36c5d339e6fedc465cf1ec34e99a8e664971b6f6d94e15a74239c4012e26aa320bac594618943fd0c5d8fff712a91ccee0af06cc61294f7d73a63f2b02afda23e8b24bcd8f5312ae43d35d1311577f5a3174d8acb435e6ca2f49c74629f5b2dbb3032dd99b3330e7f11d17c38443787b483dffeb608fff4cb89b8efed744f456c7f6132eefd6509befb8764cf39ee90c0a0096474e0479faf1319de7b432998771477ce0e22682576e017ab8fc35c2f390ebb3e28c2af9e2dc196a3ba87563796dd5c838bf4e1a00d0a25420f5a1b4f6154886e8e2998576a5ea33dcdfbb023408faecea65ad4d4d4a0a1a116274f590ba278ab231420a3244c0dde7f77174ed4d5a172d7bbd81680c5882b4808f537749bc3e3929a9b8f8ce444b9729d38715c2bb543b786298c7502f1285f4ad16dacd732cb4702244002a38540741e79d3e2615ff0f0c001fb5c6dd29be57f2a51fafb4adc581be485274c7a517dff09d3a6b111cd14dd12baecbd8f8656b2658e222869a5d179a0cfbc6dab93ce41892df97677952ca6b016f7b4acc73bddf6b694872f2515d842aadd46aced523d5992b1d091e1e7e73d9c22bde60cd77b0a1b22db0cbd994460efccda698a6e274afb512e2350467b1239f1deca484a199e7e0af6fc83ed47aee507cb81e7a343c08dff736715ccbb84bd474a0f96dd721c4b02661a8bd62ee5118f571e9d867f7b391debb7a7e2278f94e1575bf51c096d58fee968b74f53746b1fe13ddd8a16cc9581a4a63bbc7df7c0bdd6bcbfc559b1c6d6a6e1f076bcf5e69bd8b87d74ccdf36e8fa0bb3bac2e1929d67cade709ec4b1013aa5dacd1ae34dcc5e54ee0725608a6e572f644fb7a088e8410224400224302c04a233d34567afdf43b7fd45a79f72a525e185a5b9589a9f684c1adddbd38be6a6766c6ff7be84078fdd8bee9c0c7c707936ce4a8f43bc6804dddd2e7cb8ab0e97eff07d52fbe2d44cfccd34199e18d38dad874fe34bfb8db72b4fd25716a7e3ab33d350ec70617b007f2425e0bfcfcdc1e5a54948938c941ce172b971a4a6054f7cd484879b7ced9d9e978c7f9d9581596931d857dd82679b1cb8efdc6c4c4e8b854322777577e3fd6d75b8666fe041b1571667e0fb4b723043c2ab697d7a7b7bd17eba1daf577461c1f44c94a5c7a2d7edc6475b6a70f1de680d7e4b426cdd179090ff24ba12ac1e0a1e6283df59189f259164f851b7ffecfcd9b8c898d7cd4ab3a70297b66ef764b0a1fd0d7c2ff57a5c6ef48e83ccd73605cb3a6bb1c1130278acfb045627a66362fc046904dec996a6c54ec25712b2e192a14c45b1d623794c9684fd1456c528ed390e1dee43b857265d0eec1c589d30079726e423b1d709578c4cfced3e8e573b77e329df2af78b9e883b13cec685097948b57ad974f6366387730f7ee0f2daa7230ddd4e9d5224b671d870593196bd5583c2aa10afe348641b85344a66b7e0b6cb4e61524a2c3ae57a7574a4ca50b71c54e6b5e1b3e79dc6c42c370e6f28c10f37f8df1663216bb52057e27ff592d39820c30b1db2aaeea11df9f8c99b9193f94be6b7e0faa92e9cdc97896776f760d5e7ebb1b8b01b2e770c5ced4958ff971cbc76a09fdf4832bab1eab2267c6a92d39a732c16276548ee5f366660538dba4b0576e173e9c545cb9b70c5dc5624391d708940da71221d2fbd9a896d7d9bb52df31eacb8fc342e39bb0d6971e685d329e5fbf0fd6c3cb3dd9fbd2d5a18bb9f5d7d04f30d3548fac8b8d59c7c92883b0eae3855872df8dad74e63d32fad977a9dbe3311f7fe682a564c8bc1da4a7dd2dcaeff4301ae987f08e592cea472b95f6f88f670f41eb435ca5c44d9b948515f169172694558bc6016b29262d1d3dd8ea3fbb6635f8dad07912317d32601070f4bdefdba02cc9b66fdb0d151898faa7cbf6bfb8d1ab2a703a5b31660e6944299dea0133d49f1e83e558d9d1f6e476d7fd925e562eea766a36442ba75d7ed9145298ee3e0de5da8b12fea60b323ad6806669464a2ebe47eec3cdc848269f3316b6a31d28d552c64a8ef89c3f86873df79e77225dcf49c04996754bb38749d3e84edfb82afb8edc82dc59cb242c4759dc4d69d8791553a17e7ce9e821499ef2e36b61bb57b3fc4a67ee2a715cdc2a273a62327a907ddee78c48a28b56bf33634664cc13933a720537ef83cf9f19fb1615f7fb3e4855e7fe1e4171e17e931599e0377871bd9f26c63b8f81c9cbb7021bae2d4052c6c4fedc7f683c1da660fbaa45d24099f25f3a6203d5ed8c4f6a0bee2436cdc59a32bc8b3cd9d3217e51392d171aa023b03a4e9691341fce50292b4b2b0f09225989499889e1ea98ff653f8e4a3f771b821b2f3f7796c1964fbd4852d9ab150da7321e42b50da6a0fda4f1dc3c75b76a25f3307731d49d85933cbe4e7ce0e9cee4ac6d469c548919c4e557d840ddbeb3077d90a94e7c877a6303bbaf35d79feeeaf6d6aab87b28dc794f33e83abf12afeb8b57a2809312e09900009900009844d20a26f37f72e9988bba625c984b5319e450e9465f32f2843f3f932bfacccc5d6d1d189ff7ae9789fd5443f73f604fceefc0c9f78888d416e5e1a2e0da9787158bd4204169b73c824ba179e5b8c4f526a30739357243a677a0e2e28560f72c998313116cfeeaff52ec420afaaf75f9a8f05569796e90ea78f2077c79c7c3cf8e974f8cfa19e280b38cc9a9a8307e4f3b90f8f61f10eaf78f6d5730b71a3911f30634212ae73a88746af73c42560f9f925d895720c73b67ae3a910f72e2ec2fd73fd87d4c52023270db7d8bb11c63ab07072126445016fc211df9307d7bacf236182886e32ec6a48ce78cfeec6895ebf07d2d81c4cb4bf57c696e3cdf422111acd076f776f8f3c2cda9a6d4c06e64a789f5e6a3dcd32004539efeb8f3a2a9261a61726e6a95d9b4bc5bca4b3bcc72e515602096e32a7dc53e94b30d9639bd5432e2e13ff90300d17b4adc5d75d0186a6c696c95c710be19f2ba47f5f89a31897b82af11f6d5bf1a2d782a1d9694b2772bbb122ba1561e9db35283a1c5dd16d88ad2a68912fbaae065fb5ad806a482c594e7c61b5ac0a697373662811c5d6be2cbfc59fafc117a6a99e935e977b5125fe3d6d32fee90f72dd45c02d5a542b7386499b5d588fcbba7a90e9739369c317feb601176d9d8c6f07c86fc1f293f8c74b4ff94d4b0f14e7b760febc13b8727de08527c2e692d18907be7104e5feb7a6dc36cc9c7d12efbd30053fffd0f73e6720ca6bc72fbe711405fe5eb9ed983ce914ae5c9a879f3e9a8bddbeb7c1b0e82eb8fa386e2a33ef8747de2dc5daac13f8f2ec4e9cfea408bf6d3d252be2b6c131f1041eba3a09dffea39f70ea8c0fb2d25d2c3ad4ef33526ebf3b5758368616a9d714ddb2447453bf240dd1398a16e2c6e567fbb495c2e2324cabdc823f6ddc27e5cac2d29557a14c84ca1939ebf0dad6be2285362177ee3ce45a9a48f58eede84fffd27106b54d2ac5e5d72e83fc0667394bdccbc84661d90c54bcfb1a361db6098556a88259cb70f18252e9a3e8ebb245b82c2d9f83133bd6e2ad9db5be9e72543c6b3ece2e945822ee95c8f76e6e866f0a19926ff1f429d8f0d46ba8b23580bca9b3509e6f81d0a9f6a4e2a008667dad3303949fb30473545ece0cb865ced139d37d7be2a42d5a81ace4b5787d7b5f3b4b175e8565677bc31b97615a29cebbaa54e76e6c4b261500fd086ea1d65fb8f985c325a9e02c9c3d3ddfa71c884d43d9d9677bcfd59dee477003ca2ebc0ae7157bf9a88869f396233379035edb5ce54d47f6f2ca6761baaa07a9afc307dff6abaf342cba70118a95775d6b40410e8965b8e6f365b260832dd98c0c5c705519ca83b4335bc841ed86db3e21230a2e5979318ae5475bbb53d74371f974ecddf0276cadeadb52077b1da54d3e070be614dab330f6d3e62cc7aa39bea7cfbe602592ddcf616354447a7b5e0e11dd56e2dab857f1cae66abb07f749800448800448605808f87efb0e31cbcc3459a34c16428813a1ccee62e5385eba66c549af90b4b4e4beab896665e2511fb1ad175527da70b875302ff7de3cdb3b5cf2db9dd74d9e558437a77a8baa7a3a789c6d579febb6e9341d3e8b34c4e2da3976b1ad57e66a69c3b61aa74f7e73cf2dc27f67e9d4e479da9e9f4d6c6b6bf7b5b37c7e319e2ef69663ba3c30fa886d9d9d7873570b1afd6cee6a6cc513eb6b70db5bbe8280d78248ee89e876524437a7f1881f66c289288d53f19bb0ddaf2c6a7d0c1b7e633f3d3619293189c647edfbbeab2720db8bccb4a7b70e47259d94b85c2cb459b8c17508bb5df5a89055c53caeb70d47ba6b7144ce1f719d12ffbe0f9dd2bd441670f08a6df5dd07f044eb26bc2673cf99b63a706eea32dce96f87bcd2fe47aa16db5c38d2f509d6b4aec79af60322349a16a438caf0f5e4491e73d44ef876fa2413e183586cbca4083553bcd751a432b0cb5b73a6445e725313e67bc4b6d60c3cffec14fcecd57c34d81a9af3683e1e9739e3befbb81e32682f9d13332db1ade1682ededb97ee115b8a171ec137cff56fc4f6b8a1ef77b93409536c6babcbc12beb0bb1ebb8476dc064c9effe2536c38de47b70e1a7b5d816878a7df978fed549786547a6c7ce991755615591af2de173e9c6f7eef28a6db5070bf09b2727e3f9ad19567e6e9c7fe331acb0b4116fae3df887dbb4d82676ee2ec4af7e3705bffa5301aaad6a4f9d588fbb6f894c1b9837d51c7eee3c3ad110d41212cd8bce91da8b4d2f17e33dab7345e1d4d0f34b99df8439d6adef6885b75ebc658cd69e886e4d0d68efb66e1ce16623f375adf4886d4ed4559f4087d57cb3cb16e1d65b6ec2cd9f5f69886d2a8b1ee9391ddc65e153b32c61a4bb1a1f1d0c74ef0c1e7b609f5c5c76bd576c6baede8b77d76dc0b6fd75d6f7ad0c19bbe0324ce9a3772761ead95a6ceb465dd57e6c7bff7deca838e1f99e2e9c7731e6dabea3b52d6eb7a5a2c56778c436676335f6eed885aa06dd4ee2fdbe83808acd9be499e504aaab4ec8123096eb979d7ccfe9bc120b3d625bf3894a54543578eccc9d73a9ac92abef0b66ba8ea2c55eb1ada30edb36c88214efef87fd71a9bb6ebfcc25b7017ffccb3e6d4d806d68f53794fcc2e1d25a7500553207de8913b66eb2ddada813be7572beaea141fcfb6b6bc928b4c4b6d63a5f9ed9d397c9e20bbe0dc6530f419aba7e7ceb969ef1c19c12db3a1a2ab163c75e9c68f6b40014ce5b81c57ef5172c8d50ce7b6c1d54fb94ebe8a6e51eb1adbbb50e7b77ed4575a3fe552319672fbb2ac0f510c675e4d3e6a517ff96fdd2d7cde63aaab1654b85e71a491a8ee5648deca597ec2211dd1617db8ce12e099000099000090c0f01df27b921e679cfdbc7704286597e6a422afe6a4e9aa717586d6513de96b7db64193e545befc4eb3ecf4a31f8fd8539f03e02f5e0b9572bf137d6fc6e0f2e9f8c6f4c09d54c375e7eeb186e39e2c295f20be90b175abd90a45c59894a2818ea8b710fee7abb1e2f9c9f86c49e2efce79f4ee261eb27fde90559d8b832d798974cf5e5bb58bd956df479d4b0d175e1b9378ee26faa7bf099b30bf07b49cf743198922165ad361fd8be3ad76b3f6462ff3bfee7381e53017777a2ee9609565ec047db4f62f5a1a196cd3221a48d12dd562121ef697425d91e8a438aab0239d160f46c8b47dfdf427d1351e29a53c23aac1e6e86aff472738ad42503879118d389c63eefa0294815f1cbed6ec3567b723d47f1e5b6a372c681476405d479d224da5d9fe0d6f64a7ba83efb37247c0ae5969856d1b10eabbaac21a7ee1abcee5a889fa796892da9b82ca100ffe9acf5c68f29c10cad4fb90fe2d68edda69fbb1e8f76efc343a957e342471b9eea5036d95c9876da5288d2ae12dd8a71bea306250782bf7c0c36f3fa064b424decc4f533751f995859b5d43a3fd804fdc25f71beae2f199afdc389306b21019b0e38b0e6ae1aa939e918fa61265efb5057965f02c6613cfefcec64fc7abb6953c99293f8e94ab3775c7a8a6f034c91952defbeb2058e7e11f5a2a53a073ff1ef5965657dfa6009bef25b4bfc7b3313b397d7e13b979ae598736903a66dcac7418f99b178f4b98928bea20b2f3c9e874dfa92dc94823f7c948c5ffeed0929a31b8b9776e28967bc77da70b9ccbebc1e33adde779fac9f8aefbe29dd3f94db3d117f3e94805fdc5c2f575827aebad889b52fdb442959bc60b616391a26e0de2733cd780712b07e4306bef235193e3e31098f3d6d295aa66fd87f7ffbcb721c5ad681ea80c33e63f0f3ff370555b3811736f97425ec273f27eebbbedef24fc1860f22d33efbc9d0cfcb14dd7a337364e5d4fedaaa5f34fba1ab11b58ddd48cb7661dbabcf638f121d65e5e74b56ae901772d98f4ff6f47c6bac783760ef2a9d5cdab4738c9e3feab86ecfc7f2f349645deedc85501d8f943bb1e375e991d6601ed454e1d08925f8ab65e5f24d9b8659b38b70d8a7175e27b66cdc81ac0599d8f1f646d4e85bcac183d87b683e6e5ca1565495a16622caeddc5465a619e46fddde757853a7bd733ba65d7203e674efc0615bef3615d5d574181bde3a6ca452baec262c2b1d6c1beec0ae75af61bb65ecde199760e522250ec4cab04a55315ebae5b3261bf948972bbcfefc9b30a9d4e2c513adb8f9860546fd1d3ff0b10c07d6053783fbff0db5fe86925f585c5a85e59b8aa5034b6fba156582d259b70b6fbeedbde3f997a5efb1537a6dbdeee9b5b573da32dc705ea9112c2921d4e7c9bea9063bd35ab5052f6e30c5cd9d3bb7a274f13558363ddb083efddc79d8f6f256cf8f1f8edc19b870e124c4f5fbc826d31ed4ef92790083f72e558987d23e8b965ce0b98e5a2bdfc78b1b2d8edbb7a268fee5582ea336649929cc5d32173b5fdf69d86cfe19ca75d483fdebfe889d352e744d9a8c4585ea7ba003dbfef436f6b526a1e053e52895539905f204b86f30f56a336fd0bb4a74bb0ed73bdec04bef99d7eaa093600412200112200112088340649f3c5c2e3c7c48d4347946b8c226b8551f3d8ddbf6fb3da17a8c756046b6f7e5a1b1eaa4476c5341eed95087cf4c29825fe70c4f6cfbceb6f7aa0db14d9d7b637f133e393f1d33ad77a2023526656f301beca9f4bfbfbff63466bf70ba4fa0fdb54dd8d2968be5d63b724e5a70b41fbc6d8a6d2a91e7f636e15f3f9d66cc09a48ee313bcdda49cb6de752df2306d886d2a506b3bf6c8b3f4a7ad77e7146362a27e9fde54ac08bb38c4d65f8ff8a2dfa3db5b7d21e7d1d6abd488544c5271fb31fd44e73adce8b404134fead9b82f21135bba2bf1a75ecf49ef4e4ca6b16887abd7fb4bb3d753ed2520c98379a097e614ac4cca33a2bbdd07bc629b95e056d756bce12ac13532a75cb6430404bbe0d6db25c2a01a3c2a2e6e121e10a16a8dbcf09a8f974e7cbbfd2f581ddb8e47adb4fa6e066367dfd8d1391383f72e2cc415c7aa91194c4f1e28e378b3c25d4d9978eed902bc50198394a276dc77fb517817374ec2be2a4f250d9462bffe5d2eb381b61dcdb0c4362b787d0a0e4819e6cb0b5d528ab2297843def5a7528fd8a6621fdb94858aab4e19d7ed84126b8ca1956c4e690be64cea7b8fb0bc3d1b579c7a91b60952daa72b13dfd7629b756ef7ba7cbc32ab19d74e94eb26b9150bf24470d3da8f84693f90816f1fd00978b7ed074474683d01a5e96765fa2a80e17171e3bac5a6a2e76a28f08a6d56960ddb73f1d2798db869921b79458a8bad7c4e7989943386cc96db84dbe6a7e0e9edf1300762c7e2d78f97619f8c355daf3b5e788b11e65e8c0879fdccb1d69c20625ba84977e3feff5389722d34feb9308276866a830aa7e6ef6c427c5e0e6c5f158348a0099b5e7b1a5be4eb49beae4de7aac5db2f3e25f3a4cd43599e7c81f574a2e6c01e1cacf5f965cc2f8f2419aaac0421713d0dd8a1c530f34c04fea661f64cb3f75c4ff35eafd866a5dc59b509dbeb4ab1203f1e69b95972d6579870d5eec4ebaff735c355bb1dc73ae61843a19353fb17c53aaadef78a6d565207df7ed12674f74d5f9d4918e82b2540b42a191aabc536e5ddb46f0f1a16161bc37563fd12745b5dae9c75472cb1cd4ab0b50ab5ce0586909190a01e0efa13dc42afbfc8e4170e9724ef304d63ee36ab9c216caab7acf5886d2a78ebc1dda85b5c0a35ea376d824c3db2afbfb61d4206f6203267ec5b96d8a64f576d5e8faac9371875818c3294256dc541ab3a92f226c950ff421d34e8b627b66fbbb6070ead7dca1c7d53acaec6ce6abca5c5362ba19aedebb0bff4b3989e21f306e64ec78ca49dd8676b36e15f474e9c3e65de6074fb510b5f98a356bdcfc6fe6ddb5ebee8ecc7a2e49c4b71e191dfe01d8e2e8d0e62a64a0224400224d08780f79baf8fd7504ef8be28abe1a4419d2c945066fd8aadc21c3e62fbb657275c32b9aa9c2af276cc5067033817b61cb60b2c3d38ad0ead87dfe4e4e02fd301121be0540cbe589c8a6b64e18519d9f1c896de7331f2b2aede55b4b35ba2cf995bb73c58db152637ea25b09a845bb9b289f282ba43bda8caabaa8d5b7a7e2a3e83163ca73c929231ddc6233e8c077c95cc505d4fee9fc212db54beadd2435049516571f242dc63be721bf6f41e4755ef7cccb69a4c61e27cacee7a1b8f7a8435071e90e19b9788c0754df242dcdf538fc76498a6d75fa6c08a9b2013f5ca7aa522780573fa5d33987fa0f3717153f06caafad5dade967a64810ff338312e0f57603ffee4897c14db5c0bac051e527149ea725c22bf739fe8aec1fbce7d78d0dd88477d35104f4cbd138e9d3a6eb4b60b379f0c5f6c13a33a6422ff3fafcfc6af8d05075cb8edb6e3b8729aad0d489886dd79111334121ce6f5965ad4826922f21ed460641eb229d63b777cbf77c244ecea33997f2c5a54f352625daafd7a56438b9271a44e6ace6d6f273a5373ab165d78e70d25b8057041e2bd2e4336af5da9c4e71e6465cb0551ef7f5fedc56c99a36cf664a72c00d18d0cb9957438bbb1c8cac6bf2d0d958b23b71e0fdd218aa5c37371cafd3a064979e671624187f04ef7f29661e89b8fc6e15a11e3941870e5cd87e41387eaca2cbcf35e165ed81d8ff5ba775e002c67ec545e071ebab30a932db1ad61f7247c779ded4b6b980d4bcac80c536cf31aea11db3ca75ca8dab315559ee3fe771c45e7183d8f54a8c67d3b50db7ff021f9c6664cc35597e7ca77b9ed8b4e86aec5679ac7f1d90532eb5cdf850c540fa9dca24928c8cf91050452216b2dc8424aa91ebb7daf5a7f135bb1ed3dcf9dc2df33c2c74ed41ef77bee411bdae4b92057aee1ec02f9c1c72668aaa939944bcc9d24e5dee7edfb96548c09125e39bd269079d4f7ef60ea2f12f9f5b520b433037c3d0649a4033547bc3d02cd404e74aa8732e1132f8b5e45d4051c6ada8acae3ad28551321caf382bd539daba51e0d8d62882cae10cca945330e6edd1fcc5bce87d83ed3b2a0a76d6b1411bdafcce8c29e7dc731ddea4d1917f07b309ceb48daa87f5a0335ca7e4a1b49af93bb37516c8b2450a6450224400224302001ffafc40123443c80bc05da5f04fb15e7facd5c5e3e87a134c1164de8d734bba7acb2b6d1ffd9dae66f17ea361eebc4df89b067b8f854fcf7672762e5274e5c784eb6cc2aa69d1bdb8ed963e9f3d1ddf6e43e83ae6473485d3839bddddd80db6525d169f125f216647fb06c97553feb313b595e32948bc9c1ed192bf1e9cefdd8dd132fbdfaa66372ac57c888530f9eb6f77d15e532590d54b98a3e2ba01aa707f727261f451e5dc3210b1d5876054ac53eecd5f2ff6edb1be84ebe10d7488f3cd339647847296e501f993feec38e0ff0f5408b34044a7f049c5bbcb90665bbec57ece08d6a38908e5f1f004ace6dc4f76fac338674da5371d6e5e3fe27fbef7d620f3fd0fece8a14dc5a263dce124ee33bff148ba75fc941656a3bbe74fd71b3b7950c2fdbf3497f370f79311ac43b5ac3ee4c7c5b3e613b9baee09386a72ba91b654ab49221b1da055b3441fb07da86c525c389499eaa71cb4207fd286401c64c3df1c854747da10637cd30e75753333616973548fdc8a72b09efbd5d849f6f387362561f4e6a9187bb64de39cbe3c8d65259b4c203a04ff0689f48cec8459afcc073669d03f3ce996299d08c9d3b7c7b9745c4b6a442e458e2914824c8cd377bbb054cdb2ec45901824df61e307ea093ce533839b4db5ca054039f93fb7f7fabadfacb32b53522ba17160a16e9697cdd25d8fac147684c9c84f396cc53fabf38278ed7f80b4ef6ac07577f43cfcf9ef770ec07107ba2996d90cbb1ee847ce718829bbacb795d67cd76bc2e9f21b950dba7b461dd7eda3bf43dd73767972c64a69dbfe036e4eb48273c42b6b5bbd7e2b9bfd89f3747886134830448800448604c13f0beb19da9628a057623ba6dc328cf9449c1f2bd63e1443c2cc3a0bcae17cdcd5d38dee6327e3dcdce4941699a479df106b3ef49f9fafeca680fe0dd7f6ed7095c3fad1c9f911ff7954b484fc12d8becf9039f6c3f8e2ff5f76c6d468de8dfa18a6dca9883ee2338863294c44fc33db1fbf1a07e2a14bf17bbb6e0d2842b70aef54bbefa597a76d25cccee538a36bc282b7cfaccd31653864be3d59bda29bceb8ac0d8b4de0e6358a891b5bb026b3a1b82682f4a2569458511d0fec7891f74bc851f7466e0cef8322c492891de8cd60b7b4c2ace4d598edfb4bf8e2f77fbf6f0b2a73052f62321b6e9b2949cdb809fde58af0fad6d3cb6af2fc20fdfb475dff40b11cee1c175857863ee695c29efec89b98db2daa7ea25e67515ef96e089286806de1c22bfd7d2ecbdcfa8d538efb9400b5faac758262a6a1370ba53c2c80bd7a4b975989f6f7fe533ed098b8b330e9d2a29d5dc4518fdd5fa249fde1bde928a0a2e8b40f4c51a8b671e2fc133192eac38b7154b65118299b9d6759ad089f3af388494ee69f8e1a660aaa33787e8ef75e17b777ac5b64fd6075ee935fa7698398c0cb14d6cc99de39906a2a372a7cf6a9d1163212b3e77abef04256634eec7869d277d3ab879f39176e26ef1f94e2d9079a95618f352a950dd683c711c271b9b65755969b8f23f7bca2c944acff47edd70f6c6911e5283d1f69af6bc855d5356618efcea169f518cf35614fb14a56ed706ececef996090f537e4fc7cac1b3f07f6e7da88973a8cf619f48e6a13aceddf1211b98e225ef0f013a4d8163e3bc6240112200112181a81a83e1384649af4f33f25dff2e9d6d3c094c9f2b2bddf2e49a9154e434a29bc40fe029f2331c0aa672a69076e9d6913bbba3bf0e33fd4e03b36539fbe692a4a07b262506571202740cf9a5e7997ed68eb90c96febf0a5eac13caa0f64dcc0fe9110dbcc5ceaf1aaf334ee48ccc455c9d3f1609bfd57c7767cbdf58fb8cfa76798af6dee1e5940a2f53d9fa1a42ac43dc9738c39d3ea65c8e653be51821cd91f3103056991051ea443816817ed3d2d78d4753450a081cff536e33fbb3e363e88c9c0f792cec3e509c6ec6e9826229c6f2fbf40c90d6467a038913bb7f83de9d9f649a4da5a37be7a9d9fd8d69a8d07ff3d1fdb22a091f62db51b199eeb2816ce2e73745a5b531a36fc291f4fec1ed445d937f9489f717bc5347bd2c9299a7f3c3ea9d436bb71c5024b6ceb4ac76ffeb3086bfdd07e657ead3d19db7e185c9c0e9c147ec5a219b7b5cb6207db2df1d8966a48bbcd0eac5d97657c20e2dbaa1b8ee3da19a6e87cf63cd96e32af8d90d28a52a0557754791687a8fea04ce6abf334a228e5183cd9e44ce9d916ee4209c1930dcb67d6c2b3ac41f532d1ff8787c34a63c048ae66b448c7ed6cf9edc429df135555a1e69386196789b2ae9cf4a27ef7b5d765b573f350ff5d386daede1d19db203da4821b9786648f5ed823c364cdfb99b3b51efb3f7c4f26aaf72bb05f4283afbfa1e5e7977d7887328438ea2ed0d050c7045b4fcb2016d87e2cb487289c94e339d4776bcf89e1da91277cddbc72a74e91b9ebec8b229846a466daeeb5fa2b4616231975d7513f4c6b3f969e6defd89f31fb094c2f12200112200112883081332fb8b9ba50253dda275b2327b34b73f160522beeb17ab95f79762e16781e2e2353fa449971cde3643eb42b659a8d37ac67d4cf9c950aab43992788b19394e4336f1a1a5b7dc4b6e9b20cfdd559b6747d63877534bd380bcb3dcf422efce2b123b8c7f3401456924388e4464feef3431a46ea9ff9639ddbb132f12219a63917bf711cc397a55783d7593dc39c79b8c751849258dd08ba71a8bb120fbb758f1e6f8c858e45325453f56e3b8de73afbf6adf186f4f6aa4c8cb52614f6782662a1f469dbea39eec22935d78af4b64b899f8307622b706f9f076c0796c5b8b04184391f1753863733e66053cbabf8ae3d8e886fdfed588fc9f12b31439a8cdb5840c227a6e7405fa003dbe98912e19d5e9cf7de7194464c6c930e32e73679e62c348d4dc5cf7e28625b842dd7c9a5cc6ec2f959ea28118f7fbf0caf4545d4d3b945609bdc828bcb26e0894a7b5a2eac5e2643940c178fd6166b578678ea79e8d090de476c4b99dd888b72ed8dcf8a279bf0b8c4a2a15d5ee1927b905a761cb7954dc36f2bbd699a7bbd28c988c131ff4b34a31dbfbee704363c3ad5b76c22be3df17831a67cf700e688a6e50a32879d7f2ed13c56abd09a73cd89b05859847fb2afb61acd8cfba41d8364599574a4886d489b81d96a012271ce13bb7c2658ef63fa402702374b2b5627da9c124086cf2616cec7fcdc7dd8dee09fa00369492eb47a47c4c9848a859e79ccd07ca48fd8e6285a8c193241fcb0b87ecb17be058ea2b928976716f9d90def3ff53c0e0ee699208cfa1b527e818a39082e5aa88a4ff71ba2ef489295ed3bd13998b207b245cec9f24fa64fe20463a55efb7a0a59e5938cf9608344b5e2e5618a7cbff8f42a744cc12cf5ab8472b29092b958807938ac7f5bab51dbb1086ad1dcf8dc99989bbbd33e1da098928b8533ac27de9ed368d05aed48ba8e8604ac07c73ffe33fe40b16d481419990448800448606804f4fbfcd0521952ec1efc7a571b2efcb45e71c0816fdc528cc4d74ee0c8841cdc77be3e6f6512811f3adf5073a395ea741df8bb9505f8e4a95ad44fcfc36f646553fd90e753acce2ea8a9d23c23513253716f52331e9087fd3bce9e8007cfcff0191aeb1337cc83a919764b1cf8daaa29f8b2d1232f4624c35ea8d59f4ed6b7e3951d4db8a736024f9e41ed5462dbd322b6f9bf41078d10a2473d7ed456855fa69662b62c28f050eb5a7cdbeda786c8a2080f76f975d90990fab4b8d97848d2516e5ffb66ef8aae01c2aa532e258e89d81517578edf25d4cbeaa1ad58183f4b56242d961e159b70b547b073e1d71d8771615ab94470e092f42bf140db07b857561b556e5aec24dc972a2f71b14ebcd3ba4eecf78a86f7a5a8de7689b83cfd7a4ceedc86ff701eb584bc14dc95b4c810db8c447c667831cfe8bfa1dba9634472abc4b61a11db2270d1d9cc4a8ef755269dc7d3b1c9e61fe9dd9c5c6dbf13b7fcd3515cd4e290215cbdd6f51a83965349d8b62503af1db05f6f91b66230e975e3dadb8fa16d4db1b1826b6e5107be726b35665aef6fa7654189b5fa32698ec771e97196a93a5f65b5e2a28c74cfc2030b96d5e31faf68087a5f0a8f4b0c9e78250f97fe6d9d64e8c695b71f015e2ec26f3f3405f114b1f5eebfaec29cac78fcf9c9c9f8b5adf7e0673f7f42e6cc93b2ad3e8829ef16e3577f4c86a1a124ba71cd357586d86650928517ceacebc23764055ad3a5e0f9d7525052e492177c9b4bedc6dc4c075eb0ca6df389e0ee0813dba4645316cc51f3ce8bebc6271fee33f642f993243f5829e7128524414f159098845459fcc6251fd3afd336b4d2851d1f1cc4d92ba68b573ce65c7183f47a7c07db0f9baa9b236b0a2ebcf80211489cd8bbee756cd5bdba3a1b8dc5928c1e606925284dda63fca0a7d22f98b114172f2ad3f28a3a1539a704202946e0f2c912219150862c6b93d2754b4cc6c2ebafc359ed9d7225c659cf2d6e74b634e168905566c3a9bfa1e4872172b11664456cc60c5c32f7a42c8cd58cc2699fc239734ad15db1012f6eaa1a721d56cb9c788b8a0b259d642cbae212343dffb6b10848d6b425b862516908ed2511f3aeb80a5d7f7907fb6465dfaca2595872e102e89ff21a0eecf319f23c6483079580cc71bba31aa5e7a961c762e755721dad7bcbec0599568465975d0c59e8d7708d7b6c8b9f9ca9eb6850651b28b012dbde10b12dd4deb103a5477f12200112200112088fc00810dc80e776d5e32bb3527161ba55087948fbbbebcb0296283e29bc9762dd3f4a25fac6de7a7c302f151e8d2f350d0f7fc9f8c938609ee6c92ebc71445eb2a6592925a6e0febf2ec7bda21dd816130d123ff417485f3b6558cdf969c610499570acea65e553fc38a44dcac437e473f9f66a9cb3d5fe537f1053067d5ac4b63c11db445c8c86dbeada8235ce4c5940215344adabf144e70758e5ac1954565f4c381fab93271a2f1cf55d5bf1b7dd03d9da8e77ba5b303b5135b858cc485e82076d39a624946199086e1bac7307dddbf14c573e3e6b0c0135571bddd4eb44bbe49812a32fa144943a64c8b14d7043af1241d5eba903339216e39749e7c2d9db83444f1c95410bfed051a97602b8c1d9192081219c12b1ed1d11db0e68b16a08490d10d5d5a6190e10304cef631b32d07645a3b13843625a3b26fb5fea139b3167761d2e78b70cf7fed1941306935554ac8f6bc3adabf7e3335db17024d8ba847465e0119f0525e2b1f1401266caeaa41041fcabf7b4e296ba6438b2da4c11ae9f8284cba5fd40361edfdd8a2fcc1671394e561bbd51561bbd261e6df2769c9aacdb4b37ca26cbbe4d7083ccffa6841a25d4cdb9a00abfba400def8d4162828ea38c4dc1ff3e6f1bbaaf4e0db32b59760a933df7d9767ce1ce83012d701d2d8aa2e036f2c43648af9d79aaab8cb89e867dbe3d7a0212b24e4aafaa6b6f58640975f680b95871ebadd6896e6c7bf169ecd13d6ce4acab7633deaf2cc47965225dc4a6499bb90a73163be1ec915e6f89fa9b32511654901fcfb4e026126e45752b0ad564f589f958f699cfa3b5f134e2d2b26dc330ed3604d9b75d724142f89c9e71f1b55854e87feff096af79ff06bcbcd95f1c8af54923d8817fa8d67d1570caaa922ab7f8e40ce4cac7c7e5e6cb4224d33175d73abcb9ddf65d1a66fd859d9f18151e175d9a561c3cda8cd2e9aa7cb1289eb74c3eda4faab7b41c6922b8d99a8cd7b39fbdbe3cdf47d59c1b8c5e60482ec68a55b7a055165f4ef38edbed2735cb2b3e178b56dc8045fe215b2bf1cef65affb3433f1e44fb6c3df836b64dba090b8c1e776998b7fc06cc9571c8b1f1fa1a92ebb9b942a607b0db19a1eb68e8250d330511db3e12b1ed3d8a6d610264341220011220810812f07ff68860d23aa95e5437db5fa8f479fbd685cb9f398297abd5cb585f5773cadb7bcb911087259e20f69e32f67d4f00cf4eed697bda2e5cfc5c35b6b5047a6ae9c529a7372d976d8eb7efac3f8aff77509ec46cce2bb6f5a2dd1b0d2dad5e9b9d6ab266ed6cbbfa947d5b7bca6be7cf96e779c436488f9c93a73a71e064272a1b9c325ccbe5d32f6ae6fc09b837e26ffed115db74b91fed7c0b3fef382e87b1284f5a82bfa49d8f3b63fd5f5e7468ef56f52efb4ddaf5b8c312db2a3a37e2daa0e295379eda7bac733ddeecf65fb5ab078dae2aac69ddec11db74ac873bdec483ed1568d4751c93e815db7a4fe3edb6d771abd3b727de0fdadfc03d6dbb71ac47b7057951b4896d8dae4a3cd2fc26fe53a7a933b36d076ba72dea10767b71fe30896d8691116fb7be45bff10b27ad95506351b1bb006f7c908f0d5bd5270f5b0ea67b16c528bfa00e17f9343b2d94f77f9bac6f887001642eb62d074dd1c92eb6b5d5c970fb1f4dec33f476ed93a5786ab7feb5a24704082db6c5e1931d79a8b6ee39ada73d2a9201287c2ec06b4f4ec2f765febb06e95d67b8846eafd8d6918a379e9d26e26582e5696e9ef9ed64dcfdec441c69d27688f86c13db1a8ee7e1670f4ec2da81f4729f54433f487004badff78ddf21435c43714e67ffed22943402878941ca481a466a1959ba689ecceca45c0f0e6edb659d0d6123b7bf80e4d5507d8ff3fd3ed3a70f6e7c19af6fd98f56fdb528530678c4366723766d78514425bb50001cdef82ab6549a3de1d4774a5ab616dbba71a242eee156b64e990735a81b64d5aadee67d9df75c62862954dac3b8bbad6eaade60766fcf7e6ba31e3f6e9e9ab16cbe255ef6a0ae722f76eddd8ffdfbd5a70295d50d86a4ad42e6cf39577e04f2248370eb2fdcfc54cee170f15a2c3aeae637b14304545fd783d6ba4a997ff31d3fb14d3f5cf50fb4b5d997a75aec68c34beb50ed6d6496d8d683ea1d5b6438a8995e4fc079e47aa487e55aec3ad1b72db59ed88b175fdce867a36f49c23e1a64fbdcf3f6f3d8b0abdad336ec625b63e536fce1e54d7dec0ce73a72b9f5851aa00e6ca7f43740d8e5ef37620f8e516ceb97103d4980044880048697807aa3f479dd4ffacdc1e1b5c02fb7e96909f8ab0259b8203d06ededddd85ed32993e3fb98e8176368874bb212b162a2e4971283d3a79dd828c34d9f1ba8a358523cee2a49c4a76448516f570f2aeb3ab1b6b62bb2c3e2d232d078cb046b18530f5e7ee9306ef1d573307d6a3e765ca25fb4ddf8ddd395f87bff67d3b0f10c8fd866376f5a6c397e98361f2596ced1eeaec5d6ae63d8e63a8503d2a34cb9bc9874cc9239dd16da57fbec3d85175bdf91954eb5b0654fb5fffd85b1d9981313273dcfba70a0a7d936775bf078cb6265ce1689a39cb3b7054ff5788791068b354d164a383736d97a5172e3b00c95ed33e75bb0c8723e1c3bfb49ae1f2f536c2b8962cfb6922575f8e94aef4aa16d9525b8fd513dc4bb1fd3c2f1ca6bc1e377d508f738fcf9d169f87565df4452ce3d89dfde784a3ce2f1fcc353f18cdf75d6374674ce5c735b25be304dda794736befa837c741475e18222f5121983869a046cab19e02d4b161f58325586ec498caeb638ec3f102ffd7d82b808722929ebc2a454f31eed94de8adb2a077e9d4a115b674e725bd7430c8e1e4de83be75b10d3c33d3d7b791deeb9b411adfb26e1ab8f9fd95e74c1cb608a6da923648104bb9d59d316e3e2c5d391263f3c3cf5e226dbf04f7ba8e8eda7e5162023d16c5b6e67336a3d134e05c933290b45f9e6540f2e671b4ed536c8ac5fa3dca5cdc22d372c903b5537f6befe34b606b8c01d5396e1d60b4aa5a04ee935f8aca7d76058f53784fc22493a292b57162f70c02d2b8f9f3edd1491b9db02d9979455809c8c44e993ee42735d0d9a06d16054dc7c892b7d33d176aa4ee6431bfcf348209b227b2e090545f94851d7914cdfd1184a1947d575648a6d2f45a967dba64d9bc2aa8e254bbcdd04c24a8091488004488004463501dbef9f23a31cfb5bbbf023f90c97dbd4e484fa0ccac9caaa0f1fd4bfe40d2a66c881af2c4ab6cd19148b9209f21a5d6fe7128bfbcfb6bf34f6423abd45c889d8364186912646a9ab49102b0ff654e06699e87a75c23c5c97548abcb8025c982c9f20e1dd22767dd4b90b3fefaa41b832f1d69ec6904436bb091b9458663f11c2fe415928e16080851e42886a0409c7ce50d3f68613b1eded1a941cd63d05bc3ea375afe4ac0e8fc859502ad76ca577188d59a61edc72aeeef1108b36fb2576a60a2def42d992b712d9d6d60cc208e999b5697b68b7f4487239562962d920cc5441dbc5d66dbb43b3759049070dbe7b5d3ebe209f91eb446ccbca416afc00c2ea192a40d3c1cd78513e67cab536d4f6e985d3af2d9d4da8a96aea37c868f34c2b2c10b14db97864e4e5ca4dc25f714bc29cb30aac62f5a0cbf64c104efd0d253fcb88886c3a9b1a30985b61b8997636d5a226cc26a3e28efce6d689da9aaac1e11935d791886d5bdec04b9b0f0fae7c0c4d02244002244002512630bc6f3c512ecc584afe8d43ada8bb300dfaf570c1f993d0bad88d536d2eb862e39097e640bc1ef126056f94c9a4f5caae43e3d02d62db9322b6f51d2231b474438dedc2a3320f9bfa2c8b2dc0124701a6c4a5d8267eefc629771376bb8ee3b1107a96859a2bc3f560a9886d45876de33ec6009463dbd2d120bde9e4d554265e3f84c72f48c5e1ea24d4b5c62123b703674d6a41aad521ebf4be7cbc36bc1a7360c2a2770ea26345e03406383b2ab90c50a6d1ed1d8354e9c59362bfa98fee02d1fa281068adac44ab4c80af86f6162fba0ab7cc6944c3c9d36896459d92327251909fab1676355c47d50e1c1ce28d64b8f38b023226392e08b850b5e555bcb2b97a5c949685240112200112185d0428b88dd4fa72b5e1efde6ac023cb725090602a6b718e384cc8b4d4018fddbdd8b5a70e7fbd29126349cfb4d8e62994b1b3a1a7161bba7ce7e7f10dc1a3c810189b629bc1c6998c079e2dc4b757d6a12059e60c4b6bc3cc19f2f10127739d6d2dc2837fb0f718f509302c07090eab3b8a2c92a0d7218c5ac6a3884bd4188c988429b68d98aa18e986b80ee3ad0d9958fee95932bc3656164dc84661a97c7cec96b9eaf66fc55f3687dbefdb96d870e767cb9abb24101a018a6da1716228122001122081334560c4cde176a6408ce47cafcc4bc2cdd3d2303b27c15aa5541668e87061c7a116fcee506784e68e1b5962db48ae8fb165dbf08b6dc33a879badb24aca9c5834bd131392f49c9031385993840d1f26069febcc163fdabb256775625e9ef430ec76e0ed0f136415dce171239dcbf0503853b9506c3b53e4477bbe69b9452896f9b8d2642129d3b9d12a73871d395c13951eb2c39ddf68af1fda3f1c0486576ce31c6ec351a7cc8304488004c61e01f6701b0575fa467d27d4279aae275f8691269ca961a4d12c19d3ee8fc0b2b76a505835ccc348e37df34b8cf33deecfdea1f81dab4c84fa8c5477ec40128e1d187eeb463a97e127327c39a666cb3052876d6e80e1cb9a398d7202ad0d35d8279fe172c39ddf70958bf98c5e0287df7f157fdcca61a4a3b7066939099000098c0f0214dcc6473d0f584a8a6d03221a9301865d6c138aa70e66e1953419be698da06cab4b1e936c592812188800c5b68108d19f044880040213a0d816980bcf9200099000098c2c0214dc46567dd01a1218f304da6518e713f2a12301122001122001122001122001122001122081b14aa0cf1c6e63b5a02c17099000099000099000099000099000099000099000099000090c07016b01f9e1c88a7990000990000990000990000990000990000990000990000990c0d82740c16decd7314b480224400224400224400224400224400224400224400224308c04629151003846eeca7dc3c8825991000990000990000990000990000990000990000990000990c0900938266576c029f397777525c0ed56e9f5a2b7d7dc7a539713f23f2636066ad2b718e9171727fbb1b1b18889895131c45fc5eb31e39a0918d1fdd3b27919697a7232b3f066a9f7e4bce154c67ece272d3fbf810e078aabb3edf50434a7bbd38786bff1471b6671d3877e06043a1de89c01d88a1bd0df96aea0379cb6551da853de639d82b5d5875626315291aa7c6eb7b2dda84523b62aa327a84f7a721021674f3f6092aa7086216648f5d7b0509d33f68d8dfcb152f2165a7bf86ded01244e8c791c2bf9a836ac9c345fe3bc3a8e8d536d3d063d2a3ff9f4cabe1156da7d9cf28b895331cc7f3d26bb5eb55561adacbc6d47a52ece48c7dcf5fcf5334b9fb74aa50ffb6e95ddfaac2e8391b799bf699115c0c8c39e91795e9553fe8b9372f6a8c26ba7c29aa95bde62bada33cb678632fdd5396f5839679cf69e3359083dc948ed9bf99929e8bfbe9c54dcbece37aece5b85b3c25b599a752907f25fe5151ba73af1aabcbdf5a26cd429a83a33fc554a86b1ea58ed1b1bcf1f15de0ce9dd9a8591b386877f0815d5938b67cf93a06747c298ffad333a8eb2c16e84bacffa39e384fcd150ede1f539bf28c10e8d5cadacedfb3ee16df9c5aaef02b97f985b892179f708cb1eeb3bc06ebb8ea6b726302b65e3a4b56fcbd8b66b787ad3337c7ccc5207f6b32a49fbb111d8e7843ab0676c8408f2474794f07e518c431b731f6f7d5ea27baf549f10929fbefe64af4f7dd9f2b55b6b25d127b8c77a75ada9f4d4c7da577e7242a7e809ead9513e56c2da6e8f9feca8b82a41f1f3de57ccd4744cf3c84c45ef7b32d449ab5c645fd5a5badda88f999db76d1bb765f9238f162a5b6beb49d1c6d26ba06a73da7c7556c5f3c65027bc615538658e11c61650dba59e818cfbb88a6285d5b1154165a97efe51df0366fbd721d47391bae79806e83c547e2e572fbabb7b8c6b4442c8ff18f358be7b8d5b90bebf7a9332f674adf973f70be639f4145599607cac14948732c4fc237f8d0323904360c7c639e439c08d1eb7b2513e963d66c29ec872a8f6b55369d88ff5f9686dfdf3eb15deca76757f57795a65928db5e76b881148d5a0fc33237802060cdf6fd9540ccd251a0c74fabe45f01c29fb55056be77faccffb6d55b93db1ecf1fdc2a943c5c96cf1261da3b49659f676690fa3e2e9e38061fc8a650fa3e24a965ee731d43aa5e3ea308641dee09e3dbf78d6a39e27693f6f339a62a1197ab6ca4b67e6491d3e97863ead13b582eb43ed1dd25647d259ea6323b23a100fe527058a8b8b33ee35cacb0c261eb213ef8885433ecaa96b593ddb9bdfcb529bc6fdd60ca7c218f1cc1bae845609db9d99aa3ea38efc43987ee223bcdceabbdf788f1033e494f1ae684bc2d8150fb9ed197eda2e75ff54ef92aaada974547b50f755e5d47d5195c14850ed1b374ae3d6695cf37172b395db96915e5c6c9cf8031d9ddd5266eb3d5425a3923552f3fe09d8ecfd034970154ebde3c639c42675d357ac8c70deadfa5e34bc54d9d4bd48caa2ec5436b85c167fe1a29d4a53c591a046b91527e5549333bf1775da660c15d30c611eabbfea9c0aabe22867bec398f61adfd3560495b48eab9e83d5bee2ace3295b5421d55691ef72bae1ecb26c56618d862e3be267d48fda1da45369ab7a5239e8772eb5eb31cc2a833d59c544d5a72a8be2a8be974c3eca266f54238eca40974c17cc9e986ddfac2bb30d9ae55671cd76abdef3cc77015b049f5d33ac6fee018cf7c451e195f30fa3d3517e7a5f6fd5395f67f0538d452727de8aa7b2d565715159f8e6620b6c2467f7d57eea9c7fbefec7beb6f40deff5375395bfe67fc3c33c27a78c3a32632b7f6f7b9556277e96b704d005516d54f655026a632464b641757f30fc4c2f9f7c8cea97b02abc0a67fd37c278fea8b45436f2d1f72075dfd04e5dbf090972cdcbd6738d79d29450b2afc2183bf2575de32e69a3fa595692359cb9d5472abce91cc9a9d2001d0eb9498b1152894610f923cd5042183b8675461ef2475d3b722dc88d3d1e8e7825b8a960ea862b37b91eb930d4568ecdd3265043c890b40c2056c69e7d9d85755ee56984b76cf484f3f85b45f5f3b70e95c53ef9a868869ffcd169e9ad2d498f9f0aacfccd30ca66055e8ec543df80747ca34274229e9b937942d9a1f335cec809e338c079c35f79ca2750184f8334029a7f8c70e2a1b62a2ff5d7ccd34cc13ca7cecbb191800a2b655067543cf9c2969a37eaadbbdb0db7341c95825976096526a61208ea54586d9bded76cfc23e970c67995b676a6b97264eea8bfdadb38a3fd2d0fe362934c7418e3e947fbe9346d5b1d5d855736185bcb5f1dab2f77e3062669bae485485ab7f1659898186f84774b9bd61793e2a6c226885f42bc43ae03f38b449559ddb055fceeee6eeba5c5ac11f5e56bdec8155b7bee3623d5aed8627c25aa24c5a98de73ea0a2197165ab0a24c7e6038dd4a31cab7ad4c72a2fc366f5f023418dc0565cf35885577b4644b99e554eea8b4da9ed72de1b4885309d05cef852b2caf0ff1b39d3f5366e248a5214653979ff879c6f7e6762c9dae69c7b51dd4d4a7602990da050756bc1daa06433c9490b4e9cb01edb164bf4516e0c36a214fed5a25237b0c5647d4f5da0ab38f36fe2028e174063526ca3f2c01aa551b9501ca830399fbbd9c604cd407a83a396b2bc916b41fd250464372c4cceb0037d8a91aff29016bd58d770235f116d18e6a58a86221d54df14a77db0da3c546af1815c07973f439af83a2a1c41fe6c095b5cfbef39e53a0ff2b29bf0b28ebcbe9e7ebebcaeb982cdf9d778ceb8e9bd087807c80d7b0a18128f0b51d688ec426937d2f06adff83963cb7cfc598614334f706cdce146f3d7797863c026b2e991220efa0267be621a9bf4c186dd98658734c9cb9394553ff53d06c55de6528926fac1cbb47ee1559ceedd721b0f69be94f5e26a4df1ac29d1bbf4146bf45263edd08679b1690b7d6e1fb3f737de52bb3ec536cae68e175310ea4609eb99d3040f97190f3a5e40bdbed17f59e4ec47740c2065c7d9c50fe7129759f59b7c56c75242bcdfdf3bbf0d7d6c25ae590900cc7846a62f75e89e3e82d7f0e78b15b06bcf3b5f3cd6c60f304d0793967d77a707e2faedf1eef4fd91bd8097319db7c7c4f3e5ec9be722f7155f06c95ff0f57f7fbd9e9e9e39a0e1bfb69d393ffdf5e3e5f4fcc34b2efdef58be52bac6c735edc6a8345e3fe29767355f5ca924bac4c2f85c7bf4418cef4f8fdf1f336f9ff1fdf585fde315fbb2eed4a62280a5fcd1a66bb5ad8567a941e453ba0ae84deb576d475aa2848c36d8168a2bf600000ea649444154b7fc3c7cbbe7807cc1b75e66768d592fdcc2232fc4e6bb75c74b082be6071d7bf1b3f1c510b44933a4fd2a2443bf951bf9dfe55dc30e3668f7ef040e6d4a0d6f10c6ced06d19dc968ffc07982f8a07d42ba1c11cdc2f44431af969ff8aff9647dee11b3d93db76e41f3ee95fa57fe23de2fe93fc57edff44fb67fbbee2e848370ada571bbd53f36ce33ae9387379749dfcfe78613e709ee3d0fafccc1acb9c7e614ebbc6f076c678755d389dfef8b3b25aec3cba8e63883625d92a4fcfa31343aca1e85ec1d67f7a71dd84aff30109e6a7cb4f12b96bd1e3a39728523e4e3f91f15cfd9df9ab1fafbc83282cdfb787fbec0b3fd92c5e5ebd5c009b35f40d19f1f5f521eb2c65722fbcbeff011f365ece9c4358bfc6ca68a312bba8e4724c22294b1c6db1491e68cbbcb44bbf680f2fe0aee967df99ea00ccf136179cc653722e41e3b467f08fd3f3d3dbe989f5fde989b5e970e9a6a20b763fba76b187dc7bf909803efefdf74f6ca5bf34e626c53668fa920b4ee2222def30ee417ec0d196a15b71ac1853f7d05c460eb87cd07219c740fa1b5bfff3df1f27bb227bb328e8d214633b29a64d5563b624e056a18014f5ee879617ef4166a415ab68edf9f6f81dfe33e3ea85f811136cf2f2b5fce5f6fcd2fd7dcd0c707b36abb57d82ab5e44da3f8c190e093d3b9dc17ccdfe6cffbc7b7f1105b5a49e1ccb47dff0eee0074ada28cda2834bbd1ff6adbc0b6d2bd7f6b02fdaccef8eb10ad8b7170e4285ef99e2e1e11b73fbe574f7d379dd392dfa52b10a809a56d6cae7e7c85cb18db137ec47bb6e9a521523383cda2fe65326e65a484c9cbfd29d5bcedf0b84bbb396f4b3bdf348892d30938245eef0952ef7243964f5e319d0b83566c351f9e1f10cfaf4d433a8ebd08069d31fac9f7ffe790f4ecfc2e78b63a33cb96cab395da35ef865353e6f9c295c73e5ab5dda178f6300d6f0e3790bb0cb1b0dae777812e6112238773a06d1419b4324ce3cb0b25f1e7ad8b15d15b9d57f0727d180025d150184c55a598bb7ac68739486024f65b6f12afaa15d5f13480b077a8a3ccca7ac7ac7bc07e280ac766a5798c39f7c5853a9cd46c5eabc1c24f61a85916da9cdc1e5a16993ae3b5d9444853c0a56ad65653aa82d41d3fed0ac5b1a3e06aa6d92366a6d75d1b5a17d298384a62ec82ebc6e1e970cdc3b362717e17707286c39b04ec003267101988569afebff78345446c3621c8a62cbd89db44afaf9ebd6a3548686b6f0399a14a04f84517463b064fcbabb7b4ffcfca6efc278f64226fd8b12ddce82cc46fac145a4da0c89f1f663ecdd241fbc745be1b5fded9117b667be29e234f1ca9b9593f074e7c6cc22c1a75e424b79f7418ab83eb25099f3c3b10362756b803f93e4cf5831f747190d63013b73b87a3fe778d58d1b31a7a52a6aae251259fc9c8ab9413691a5b4aaaabec39f0f160aadc8fc3e3074dc4a1801414c72efe9b898964afb6269a62f8b3f4d5391d64b86d59a4cbf8c4d634019f62eedef593013279cb6dd342fee8ab1bf9228d139d67dec39fcd615235fd27251d9d05a8fd4e2682653f8c29081b53564fc2cc1f2552be5359856a3bf65b24bed125b69d9ab8f8ebf2625ac905f09972ea2e3a8c8c343cde2aaceb8126fc7c53a268697080f1cdebc6ccb61cd05d67f3072d6ad0bf039143d6cf862db3d843526b4b00bddb539051b565a45333fce9bab6487f0cf3e0e43abf14863bb1177b629b745740bd21250987f794cec74563e93348bc91b33b193b021b331b6508a91521467fec9443ef0c669d5163e31597a369e252398eb8fca87275a97eeb90812dfcddf3e91ef834b202f1d62040f2d3cd337f71c64e68540bed1275f2079d4f2ae11d2c54ec6b38717e2884de9534d33a5021feb26ec7c34ba58d1a1a614b44b3cd624f619819d775ae2379d191348d632b5ae362590675bca8ba417667b678e2dc86b3f78efb4774d62dd949535fd9c359e0a58f35b1f5ad80bbf745a5f765833df3f5e5937d14dcc5455bb56bc347af5b545ed42841789132f4d3d50ab25745ecc7c893c733e3ad3ce1438ddfdfd7e7a22b71f620bc13cf3f279e182fa4565c6c483b98e2c20fb46bc260b109228e7506325ccb4b4adbd0615fcbc84f922b7da8c3f5a82d040aae0e3f4f8f0800f0ffc66c84faa83a38ec5ba0a89c4469bb6db5c67a5a12779c744b9240cfd1a68ec97af3e2b3769fca68e9892e1e171666cfbb2aeaf8e31fbee83187b01abdbb954d34da1f06d3b0c1bbfc0362a6528e92ab4ca1dd2de1f3b71a745cbde702895270a8f54cab7349bc571ec2f3c5928ae4c86c591e256deb4af8259c650d92224e45dc6f168dea4821319f98fcaa80e57a235264bdc048643e1df25f83699c5772baa7d5f1910bdc33cf951d7813610c7e6940f3cabed9af573fb35c4b4df0468633a0647e2d42d8fa6624ccd963d1dd69b1087b7381912890fc8907cc113374b2f53e64c351757505d635ffd6d252fb67c2997151911dd37d8c24ff7cc9d867acd83a0f1d852f52fa64565ada4e4fb855f5230c9829f2f69a866e6929b664e46873a598fdc475e30aa6bb46b682f9e5e9dbbc87911e55aed2f00e04254bfaa8bc699123a31972879cf412e7e83ed1f9e5c889126e423a8fff828dfbf5c11f88b5481f00f9f5f5a650f22ef973ffae09aef7a8d2ed6f8077cb8dcbb0fba06895bfdee037ff2c5cc13176fe92a5a5eb824f9f1bfb7acb55e90f25d015f1af80ec26fe8a9ffbd1740ddca8db468c7e45ae785180f7c8d4f30b83f6ab3ccf681b668affba0175e9ed7dc1fdfe0539e2cf1218bdc9901a15ff7f74f8cab6264a8c1a05df2916d32149beaf0d4ae73dad4a35d67e297354de51bda35bb747ff2a515b1438ab8bd657def5adefd7ea4b42932cb19ebbd9213a568ee2de917c73bb1f0fc6a7e76a0608a7b45c6523c4366f3a7e86af86d82ffc869cc422177560ddce462b55ca9a14fae7493def7027a2e8f1c73192b5cc03d3fbf66fc8d5ca23aa11de242fa5d36daae78aee401e59fa4c4f28ab1153136d5948be939aafe374f3482e3ecf0fddbb5e081be731db20b8b62be10a3baf19db3dd34f537f015d1aa649b58cec5603b9ec5b4dda40fb95885e0dccdd85c8df65be68d780e78f25c087ad9cec7f5c54bee802df3de00b93057729e1510e33c93ccac8de6e08b6c3373d2fa0424168889b0986369d8618e413650c84b0465f31cba211bc8cc2772d9fccc64a518874bb566d07946df4e751d89f30a9b34709593f168d5828d4dd274346d07190965d3ba915d05085b77c827c662b2ac6df189b215077c9a7d480a53cbf39494746c5bc4da616c362e581b8725b5621472491b6b95a6cac3d80d4c59248aad6cad4e394a1707422e36fe39a487f20f83bd40e448df5568a3531896146feb07f8ad3d87baadb60a35e196bad7577b6304f90b7e495a1c3b77c9303b66f53b8b6743656437efd2beeae2389ae575ece7d63a9c410f72fe3c9a01955c0a7c8e15ebaf7ca5f7f0e64e69df81e3ccc5a8b35f376a063ffe995316ff0c4aed4843348769958436a9794d4b306bb77de4a0d6767f129238af1d4bcabe8eefd4e17591e9c60b0f83f9637d2b748c4b371511e3160a0226e096a22b8f45a28c595b250ba0356ddd983786f0c933298bd8aa54f3b4982b37bc3b86f34bd7ea78f9361ba04762e9f765d1be983521115cccd12d961ffa4a0d894d68d40df3a81fdcaaab6a056e925823a281b2846d0a317e84d23295c588bc3643dd71561f8756cc341ec58719038ce372b1ba47c310a77eccc132a61bcb115b94feab843e2cebb4a6bf71c4659b072839d2395841f03c188504702ef4a9cc0baf181d0a2a5e628a0b6fbacaebb76ec6bff13775da22e4dc9d794b83c630f6dfbd60d19605b8c3aa149e45bfea1ac92b955e29e7949674eec19098510f3e95d8b5fc320e6957c3b2312a2d576be6f2e22972fd53f516875531564e7d7b38835342cd8aaf7b15e2c66259ed01e161408c8563a476d85f5ec229236fd636abb09a72a0a06cdc65f1102fbb1f9738c1a3a14aa2ebdd7e5875316c5736fd3474092674e6cb1d7548d306e9f22d1bac84c683ee84af75fdf0b7ae1a2b39a063b8b66980fdaea050c64e9b5cd77351073587271a5c97cfbc997a71197f83c4419e17532fe2a4675e8e6db40bac7919f3d6aa9e7abdbd5f1d3863d26d202f19e8d76effeca0dfa08333b2e913e59be225159bfdb4616fff583a2a3e5295f5a92d0bbabe2ffc85469cdaa7f2160a6c16be8bbf1d86acbfe19cdf7e98c1b5c012df5d28be2f531a07db561aabc46b8a27d34c3e744bda3b3641bf655d527b0424c08741d14fd17e36759f01c0e6fcac716fa3d03465781803f5e4b11acd56da7ca55e1fe4571f2002fd224d3cf666796f1d725c1d3802b7635eb7957ea4ed92837c1c91c7d6cfe5aaf5b9ebfbcc75a49457ee83c947867f59d64651bed0fb05a9a0371ab7e01ee9235c3b376324336f3fa75d76c6d34ef9ccfd35657cb96d3dda100360987c786f6d9afa51762c9a7c506eb18a9975c44b299abbde318719c03f7fbe65ddb3e3b29eb98e09c9c7cc70766d1e5cf3455bed21cc4321fc4966511c94fbe7f1f9ad602eddfcadddd813ce28901356758befbecc93b5d5b5b1607e1924aee7662fda7a21e4ba9db31980dd6beb879740a6d8efbce7931ed1303ecffeca9c8dca49e291f307e524cd984479aa626419815f39936744bf1c919e7d9b167ff3174bd8141941e8c9a50d28f259be7ce30b1b1710fe79f9a8eddc199d1ef8cdbb472ee43a2cb97cfb41dcb8087d7ae6af61c83d5371bdc89733c481db20b1fcb23e6752e2956436c6514c0c1669fc081f3c6983e88bbf63dd787a9967a4f35f1ab867ca8c02f784c68828706138e7baf499eb2c6c8971046ac22a46ddbf79688f40c62ce5cd111b1aaf32d4416d96cff732e93e4d96aecfcbede7f49ded8b118f81c5ead4231579e3e09e4c783b3fa8bbe77b86903f7bc8c2a889da23618881e943d234ef85c5f00b9983f8af8af6d19680d1fa5c1ae19cef6ff940b37f32c6601f896b2b6b607b70434c61e23454e789b4ac1110779c411ece435be13f3538fc4d1debf4cf6033bef5a53f30b81844110cf4477d5312e26003e2d9db734d53c1d3cc23eb04a4507984cbdc361a5d53e26b187688c484fe667a6698ac965d2d04ff22c14b72e5ffe00bc96f4c64efb87a59a760f5e60b3ce73a7c1972d8ebbcd74ffd6a2060a63a1df57fbc3829cbed20390f0000000049454e44ae426082}\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u21487?\u20197?\u30475?\u21040?\u29366?\u24577?\u30340?\u21464?\u21270?\u26159?\u20174?\u40644?\u33394?\u21040?\u32511?\u33394?\u65292?\u21363?unstage\u21040?add\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 Github\par} +{\pard \ql \f0 \sa180 \li0 \fi0 Wiki\u30334?\u31185?\u19978?\u26159?\u36825?\u20040?\u35828?\u30340?\par} +{\pard \ql \f0 \sa180 \li720 \fi0 GitHub \u26159?\u19968?\u20010?\u20849?\u20139?\u34394?\u25311?\u20027?\u26426?\u26381?\u21153?\u65292?\u29992?\u20110?\u23384?\u25918?\u20351?\u29992?Git\u29256?\u26412?\u25511?\u21046?\u30340?\u36719?\u20214?\u20195?\u30721?\u21644?\u20869?\u23481?\u39033?\u30446?\u12290?\u23427?\u30001?GitHub\u20844?\u21496?\u65288?\u26366?\u31216?Logical Awesome\u65289?\u30340?\u24320?\u21457?\u32773?Chris Wanstrath\u12289?PJ Hyett\u21644?Tom Preston-Werner \u20351?\u29992?Ruby on Rails\u32534?\u20889?\u32780?\u25104?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u24403?\u28982?\u35753?\u25105?\u20204?\u30475?\u30475?\u23448?\u26041?\u30340?\u20171?\u32461?:\par} +{\pard \ql \f0 \sa180 \li720 \fi0 GitHub is the best place to share code with friends, co-workers, classmates, and complete strangers. Over eight million people use GitHub to build amazing things together.\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u23427?\u36824?\u26159?\u20160?\u20040??\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u32593?\u31449?\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u20813?\u36153?\u21338?\u23458?\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u31649?\u29702?\u37197?\u32622?\u25991?\u20214?\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u25910?\u38598?\u36164?\u26009?\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u31616?\u21382?\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u31649?\u29702?\u20195?\u30721?\u29255?\u27573?\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u25176?\u31649?\u32534?\u31243?\u29615?\u22659?\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u20889?\u20316?\sa180\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u31561?\u31561?\u12290?\u30475?\u19978?\u21435?\u20687?\u26159?\u22823?\u39184?\u65292?\u20294?\u26159?\u20320?\u36824?\u38656?\u35201?\u20102?\u35299?\u28857?\u20160?\u20040??\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u29256?\u26412?\u31649?\u29702?\u19982?\u36719?\u20214?\u37096?\u32626?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 jQuery[^jQuery]\u22312?\u21457?\u24067?\u29256?\u26412?{\f1 2.1.3}\u65292?\u19968?\u20849?\u26377?152\u20010?commit\u12290?\u25105?\u20204?\u21487?\u20197?\u30475?\u21040?\u22914?\u19979?\u30340?\u25552?\u20132?\u20449?\u24687?:\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Ajax: Always use script injection in globalEval \u8230? bbdfbb4\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Effects: Reintroduce use of requestAnimationFrame \u8230? 72119e0\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Effects: Improve raf logic \u8230? 708764f\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Build: Move test to appropriate module fbdbb6f\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Build: Update commitplease dev dependency\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u8230?\sa180\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 Github\u19982?Git\par} +{\pard \ql \f0 \sa180 \li720 \fi0 Git\u26159?\u19968?\u20010?\u20998?\u24067?\u24335?\u30340?\u29256?\u26412?\u25511?\u21046?\u31995?\u32479?\u65292?\u26368?\u21021?\u30001?Linus Torvalds\u32534?\u20889?\u65292?\u29992?\u20316?Linux\u20869?\u26680?\u20195?\u30721?\u30340?\u31649?\u29702?\u12290?\u22312?\u25512?\u20986?\u21518?\u65292?Git\u22312?\u20854?\u23427?\u39033?\u30446?\u20013?\u20063?\u21462?\u24471?\u20102?\u24456?\u22823?\u25104?\u21151?\u65292?\u23588?\u20854?\u26159?\u22312?Ruby\u31038?\u21306?\u20013?\u12290?\u30446?\u21069?\u65292?\u21253?\u25324?Rubinius\u12289?Merb\u21644?Bitcoin\u22312?\u20869?\u30340?\u24456?\u22810?\u30693?\u21517?\u39033?\u30446?\u37117?\u20351?\u29992?\u20102?Git\u12290?Git\u21516?\u26679?\u21487?\u20197?\u34987?\u35832?\u22914?Capistrano\u21644?Vlad the Deployer\u36825?\u26679?\u30340?\u37096?\u32626?\u24037?\u20855?\u25152?\u20351?\u29992?\u12290?\par} +{\pard \ql \f0 \sa180 \li720 \fi0 GitHub\u21487?\u20197?\u25176?\u31649?\u21508?\u31181?git\u24211?\u65292?\u24182?\u25552?\u20379?\u19968?\u20010?web\u30028?\u38754?\u65292?\u20294?\u19982?\u20854?\u23427?\u20687? SourceForge\u25110?Google Code\u36825?\u26679?\u30340?\u26381?\u21153?\u19981?\u21516?\u65292?GitHub\u30340?\u29420?\u29305?\u21334?\u28857?\u22312?\u20110?\u20174?\u21478?\u22806?\u19968?\u20010?\u39033?\u30446?\u36827?\u34892?\u20998?\u25903?\u30340?\u31616?\u26131?\u24615?\u12290?\u20026?\u19968?\u20010?\u39033?\u30446?\u36129?\u29486?\u20195?\u30721?\u38750?\u24120?\u31616?\u21333?\u65306?\u39318?\u20808?\u28857?\u20987?\u39033?\u30446?\u31449?\u28857?\u30340?\u8220"fork\u8221"\u30340?\u25353?\u38062?\u65292?\u28982?\u21518?\u23558?\u20195?\u30721?\u26816?\u20986?\u24182?\u23558?\u20462?\u25913?\u21152?\u20837?\u21040?\u21018?\u25165?\u20998?\u20986?\u30340?\u20195?\u30721?\u24211?\u20013?\u65292?\u26368?\u21518?\u36890?\u36807?\u20869?\u24314?\u30340?\u8220"pull request\u8221"\u26426?\u21046?\u21521?\u39033?\u30446?\u36127?\u36131?\u20154?\u30003?\u35831?\u20195?\u30721?\u21512?\u24182?\u12290?\u24050?\u32463?\u26377?\u20154?\u23558?GitHub\u31216?\u20026?\u20195?\u30721?\u29609?\u23478?\u30340?MySpace\u12290?\par} {\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u22312?Github\u21019?\u24314?\u39033?\u30446?\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u25509?\u30528?,\u25105?\u20204?\u35797?\u35797?\u22312?\u19978?\u38754?\u21019?\u24314?\u19968?\u20010?\u39033?\u30446?:\par} {\pard \ql \f0 \sa180 \li0 \fi0 {\pict\jpegblip\picw800\pich495\picwgoal16000\pichgoal9900 ffd8ffe000104a46494600010101004800480000ffe100804578696600004d4d002a000000080005011200030000000100010000011a0005000000010000004a011b0005000000010000005201280003000000010002000087690004000000010000005a00000000000000900000000100000090000000010002a00200040000000100000320a003000400000001000001ef00000000ffe10921687474703a2f2f6e732e61646f62652e636f6d2f7861702f312e302f003c3f787061636b657420626567696e3d22efbbbf222069643d2257354d304d7043656869487a7265537a4e54637a6b633964223f3e203c783a786d706d65746120786d6c6e733a783d2261646f62653a6e733a6d6574612f2220783a786d70746b3d22584d5020436f726520352e342e30223e203c7264663a52444620786d6c6e733a7264663d22687474703a2f2f7777772e77332e6f72672f313939392f30322f32322d7264662d73796e7461782d6e7323223e203c7264663a4465736372697074696f6e207264663a61626f75743d22222f3e203c2f7264663a5244463e203c2f783a786d706d6574613e2020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020203c3f787061636b657420656e643d2277223f3e00ffed003850686f746f73686f7020332e30003842494d04040000000000003842494d0425000000000010d41d8cd98f00b204e9800998ecf8427effe20f444943435f50524f46494c4500010100000f346170706c021000006d6e74725247422058595a2007df0001000400090023001d616373704150504c0000000000000000000000000000000000000000000000000000f6d6000100000000d32d6170706c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000116465736300000150000000626473636d000001b40000041a63707274000005d00000002377747074000005f4000000147258595a00000608000000146758595a0000061c000000146258595a000006300000001472545243000006440000080c6161726700000e50000000207663677400000e70000000306e64696e00000ea00000003e6368616400000ee00000002c6d6d6f6400000f0c0000002862545243000006440000080c67545243000006440000080c6161626700000e50000000206161676700000e5000000020646573630000000000000008446973706c61790000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006d6c756300000000000000220000000c6872485200000014000001a86b6f4b520000000c000001bc6e624e4f00000012000001c86964000000000012000001da6875485500000014000001ec6373435a00000016000002006461444b0000001c00000216756b55410000001c0000023261720000000000140000024e697449540000001400000262726f524f00000012000002766573455300000012000002766865494c00000016000002886e6c4e4c000000160000029e6669464900000010000002b47a6854570000000c000002c47669564e0000000e000002d0736b534b00000016000002de7a68434e0000000c000002c47275525500000024000002f46672465200000016000003186d730000000000120000032e636145530000001800000340746854480000000c000003586573584c0000001200000276646544450000001000000364656e55530000001200000374707442520000001800000386706c504c000000120000039e656c475200000022000003b07376534500000010000003d27472545200000014000003e26a614a500000000e000003f6707450540000001600000404004c004300440020007500200062006f006a0069ceecb7ec0020004c0043004400460061007200670065002d004c00430044004c004300440020005700610072006e00610053007a00ed006e006500730020004c0043004400420061007200650076006e00fd0020004c00430044004c00430044002d006600610072007600650073006b00e60072006d041a043e043b044c043e0440043e0432043804390020004c00430044200f004c00430044002006450644064806460629004c0043004400200063006f006c006f00720069004c0043004400200063006f006c006f0072200f004c00430044002005e605d105e205d505e005d9004b006c0065007500720065006e002d004c00430044005600e400720069002d004c004300445f6982720020004c00430044004c004300440020004d00e0007500460061007200650062006e00e90020004c004300440426043204350442043d043e043900200416041a002d043404380441043f043b04350439004c0043004400200063006f0075006c006500750072005700610072006e00610020004c00430044004c0043004400200065006e00200063006f006c006f0072004c0043004400200e2a0e350046006100720062002d004c004300440043006f006c006f00720020004c00430044004c0043004400200043006f006c006f007200690064006f004b006f006c006f00720020004c00430044038803b303c703c103c903bc03b7002003bf03b803cc03bd03b70020004c00430044004600e400720067002d004c0043004400520065006e006b006c00690020004c0043004430ab30e930fc0020004c00430044004c004300440020006100200043006f00720065007300007465787400000000436f70797269676874204170706c6520496e632e2c2032303135000058595a20000000000000f31600010000000116ca58595a2000000000000071c00000398a0000016758595a2000000000000061230000b9e6000013f658595a2000000000000023f200000c900000bdd063757276000000000000040000000005000a000f00140019001e00230028002d00320036003b00400045004a004f00540059005e00630068006d00720077007c00810086008b00900095009a009f00a300a800ad00b200b700bc00c100c600cb00d000d500db00e000e500eb00f000f600fb01010107010d01130119011f0125012b01320138013e0145014c0152015901600167016e0175017c0183018b0192019a01a101a901b101b901c101c901d101d901e101e901f201fa0203020c0214021d0226022f02380241024b0254025d02670271027a0284028e029802a202ac02b602c102cb02d502e002eb02f50300030b03160321032d03380343034f035a03660372037e038a039603a203ae03ba03c703d303e003ec03f9040604130420042d043b0448045504630471047e048c049a04a804b604c404d304e104f004fe050d051c052b053a05490558056705770586059605a605b505c505d505e505f6060606160627063706480659066a067b068c069d06af06c006d106e306f507070719072b073d074f076107740786079907ac07bf07d207e507f8080b081f08320846085a086e0882089608aa08be08d208e708fb09100925093a094f09640979098f09a409ba09cf09e509fb0a110a270a3d0a540a6a0a810a980aae0ac50adc0af30b0b0b220b390b510b690b800b980bb00bc80be10bf90c120c2a0c430c5c0c750c8e0ca70cc00cd90cf30d0d0d260d400d5a0d740d8e0da90dc30dde0df80e130e2e0e490e640e7f0e9b0eb60ed20eee0f090f250f410f5e0f7a0f960fb30fcf0fec1009102610431061107e109b10b910d710f511131131114f116d118c11aa11c911e81207122612451264128412a312c312e31303132313431363138313a413c513e5140614271449146a148b14ad14ce14f01512153415561578159b15bd15e0160316261649166c168f16b216d616fa171d17411765178917ae17d217f7181b18401865188a18af18d518fa19201945196b199119b719dd1a041a2a1a511a771a9e1ac51aec1b141b3b1b631b8a1bb21bda1c021c2a1c521c7b1ca31ccc1cf51d1e1d471d701d991dc31dec1e161e401e6a1e941ebe1ee91f131f3e1f691f941fbf1fea20152041206c209820c420f0211c2148217521a121ce21fb22272255228222af22dd230a23382366239423c223f0241f244d247c24ab24da250925382568259725c725f726272657268726b726e827182749277a27ab27dc280d283f287128a228d429062938296b299d29d02a022a352a682a9b2acf2b022b362b692b9d2bd12c052c392c6e2ca22cd72d0c2d412d762dab2de12e162e4c2e822eb72eee2f242f5a2f912fc72ffe3035306c30a430db3112314a318231ba31f2322a3263329b32d4330d3346337f33b833f1342b3465349e34d83513354d358735c235fd3637367236ae36e937243760379c37d738143850388c38c839053942397f39bc39f93a363a743ab23aef3b2d3b6b3baa3be83c273c653ca43ce33d223d613da13de03e203e603ea03ee03f213f613fa23fe24023406440a640e74129416a41ac41ee4230427242b542f7433a437d43c044034447448a44ce45124555459a45de4622466746ab46f04735477b47c04805484b489148d7491d496349a949f04a374a7d4ac44b0c4b534b9a4be24c2a4c724cba4d024d4a4d934ddc4e254e6e4eb74f004f494f934fdd5027507150bb51065150519b51e65231527c52c75313535f53aa53f65442548f54db5528557555c2560f565c56a956f75744579257e0582f587d58cb591a596959b85a075a565aa65af55b455b955be55c355c865cd65d275d785dc95e1a5e6c5ebd5f0f5f615fb36005605760aa60fc614f61a261f56249629c62f06343639763eb6440649464e9653d659265e7663d669266e8673d679367e9683f689668ec6943699a69f16a486a9f6af76b4f6ba76bff6c576caf6d086d606db96e126e6b6ec46f1e6f786fd1702b708670e0713a719571f0724b72a67301735d73b87414747074cc7528758575e1763e769b76f8775677b37811786e78cc792a798979e77a467aa57b047b637bc27c217c817ce17d417da17e017e627ec27f237f847fe5804780a8810a816b81cd8230829282f4835783ba841d848084e3854785ab860e867286d7873b879f8804886988ce8933899989fe8a648aca8b308b968bfc8c638cca8d318d988dff8e668ece8f368f9e9006906e90d6913f91a89211927a92e3934d93b69420948a94f4955f95c99634969f970a977597e0984c98b89924999099fc9a689ad59b429baf9c1c9c899cf79d649dd29e409eae9f1d9f8b9ffaa069a0d8a147a1b6a226a296a306a376a3e6a456a4c7a538a5a9a61aa68ba6fda76ea7e0a852a8c4a937a9a9aa1caa8fab02ab75abe9ac5cacd0ad44adb8ae2daea1af16af8bb000b075b0eab160b1d6b24bb2c2b338b3aeb425b49cb513b58ab601b679b6f0b768b7e0b859b8d1b94ab9c2ba3bbab5bb2ebba7bc21bc9bbd15bd8fbe0abe84beffbf7abff5c070c0ecc167c1e3c25fc2dbc358c3d4c451c4cec54bc5c8c646c6c3c741c7bfc83dc8bcc93ac9b9ca38cab7cb36cbb6cc35ccb5cd35cdb5ce36ceb6cf37cfb8d039d0bad13cd1bed23fd2c1d344d3c6d449d4cbd54ed5d1d655d6d8d75cd7e0d864d8e8d96cd9f1da76dafbdb80dc05dc8add10dd96de1cdea2df29dfafe036e0bde144e1cce253e2dbe363e3ebe473e4fce584e60de696e71fe7a9e832e8bce946e9d0ea5beae5eb70ebfbec86ed11ed9cee28eeb4ef40efccf058f0e5f172f1fff28cf319f3a7f434f4c2f550f5def66df6fbf78af819f8a8f938f9c7fa57fae7fb77fc07fc98fd29fdbafe4bfedcff6dffff706172610000000000030000000266660000f2a700000d59000013d000000a0e7663677400000000000000010001000000000000000100000001000000000000000100000001000000000000000100006e64696e00000000000000360000a7400000558000004cc000009ec00000258000000cc000005000000054400002333300023333000233330000000000000000736633320000000000010c72000005f8fffff31d000007ba0000fd72fffffb9dfffffda4000003d90000c0716d6d6f6400000000000006100000a02200000000cd23870000000000000000000000000000000000ffc000110801ef032003012200021101031101ffc4001f0000010501010101010100000000000000000102030405060708090a0bffc400b5100002010303020403050504040000017d01020300041105122131410613516107227114328191a1082342b1c11552d1f02433627282090a161718191a25262728292a3435363738393a434445464748494a535455565758595a636465666768696a737475767778797a838485868788898a92939495969798999aa2a3a4a5a6a7a8a9aab2b3b4b5b6b7b8b9bac2c3c4c5c6c7c8c9cad2d3d4d5d6d7d8d9dae1e2e3e4e5e6e7e8e9eaf1f2f3f4f5f6f7f8f9faffc4001f0100030101010101010101010000000000000102030405060708090a0bffc400b51100020102040403040705040400010277000102031104052131061241510761711322328108144291a1b1c109233352f0156272d10a162434e125f11718191a262728292a35363738393a434445464748494a535455565758595a636465666768696a737475767778797a82838485868788898a92939495969798999aa2a3a4a5a6a7a8a9aab2b3b4b5b6b7b8b9bac2c3c4c5c6c7c8c9cad2d3d4d5d6d7d8d9dae2e3e4e5e6e7e8e9eaf2f3f4f5f6f7f8f9faffdb004300020202020202030202030403030304050404040405070505050505070807070707070708080808080808080a0a0a0a0a0a0b0b0b0b0b0d0d0d0d0d0d0d0d0d0dffdb004301020202030303060303060d0907090d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0dffdd00040032ffda000c03010002110311003f00fdfca28a2800a28a2800a28a2800a28a2800a2b98d5bc6be0ed0751b7d1f5cd774cd3afef31f67b5bbbc8609e6cf03cb8ddc3364f1c0ae9f22800a28c8a323ad0014519145001451450014514500145145001451450014514848032780280168ac0b5f15f85efae12d2cb57b0b89e43b5228aea27763e81558927e95bf9ed400514645191d2800a2a39258a18de595d512352cccc400aa392493c000541677f65a85bc577617115cc13a092296175912443d1959490c3dc714016e8a3228c8a0028a28c8a0028a322932280168a334500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145007ffd0fdfca28a2800a28a2800a28a2800a434b45007e3af833c3ffb3478b2c7f691d57f69c8340baf1c5878ab5d875693c45e4ff68d868a801d1cd9197f790c2d6eb1bc461c6e933fc43038fd1fe367ed31e0bf861f0cbe1d699afdd47e2af8a7f0d34683c17fda36cb2bd96bba74c4dfcf3cb2c12bb33e9ef14989f78ca703731cfeb4f8b7e08fc1cf1ef886cfc59e37f04787f5fd6b4e286d750d4b4cb7baba87cb60c9b25923661b5802bcf07a5763a8f84bc2dac6a7a4eb5ab691617ba8683249369575716d1cb3d8492c66277b69194b42cd1928c5082549078a00fc9e8ff69ef8d9f10fc0b37c52f0578966d1346f127c47f03f81b411369d6cc2de2ba8ade2d66768e68b7bc8d7b71246cae70a600142fcc5aa78cbe3f7c7ff0001ff006dfc234f195feb9796ff00166cfc190f890db68f69ad9d36eb431ab08216b95b6d252ee49ff731493a04da48c6e208fd54b6f867f0e6cf48b5d02d3c2fa343a658ea3fdaf6d651d840b6f0ea22533fdae3882045b8f398c9e681bf792d9c9cd45abfc2bf867afd8eb9a6eb7e14d16fed3c4d325ceb50dce9f04b1ea53c68b1a4b74ac844d22c68aaacf960aa003802803f30f45f8c3fb4ef8b6c7e1d7c3c83c796ba26ade20f881e21f0acfaf451691ad5f1d2ecb4b92f545ec762f25847aadaba342e226f2bcd5576564250feb859432dbda4104f335c491c688f33001a465001620700b1e4e38e6b8dd27e17fc36d06d341b0d17c2da358dbf85a4925d0e2b7b08224d3249a368a47b40a83c8678dd919930595883c135ddd0014514500145145001451450014514500155eeff00e3d66ffae6dfc8d58a460181561907820d007f3bda47c32961f82bf0ebc6971f0cfc17a46977bf11b48807c40d2a6dfe2e42de21da8c6dfecb0aa9675f249fb5bed8fe6d84fcb5f4f68dfb4afed01ad7c65b8d5d35d4b3d1edbe294fe087d0afeefc3f67a2369f05e1b416d1a4d3aeb8facc9101771613c99010aa0822bf53e5f86ff0f27f0d43e0d9fc33a3c9a0db5c25dc3a5b58c06ca3b88a5fb424a9014f2d6459bf78ac0021fe61cf3545be12fc2d6f1c8f89ade12d10f8b953cb1ae9d3e0fed2098c63ed3b3cde9c7dee9c51603f30fc07f1ff00e349bff0178d6efe27c3e2393c43f12f5bf045ef81dacac51974eb5bcbf48a6568211742ea28e08dcbb388cc4c3e52dcbe87833e3ffc5f96ebe1cfc54baf88c9aecde3df1fddf85751f8771d9d9a5be9b62935cc2c602b12df25c58240b34ef2caeacbbf6a9ca03f70fc19fd987e17fc1d860bfb4d2b4ed5bc4f05cead3af896e74eb74d5445ab5f4f7cf00b8553208a369d9146efba3eb5e8ba77c1df84da3f8deebe25e95e0ed06cfc597a196e75c834eb78f51943850dbee1504877050092dce39a76607e5f7c36fda07e2eeaff0010edadfc77e359f56d13c6ade2eb4d2ffb3e0d1359f076ad1d8dbdccd6b169b7164e9a95a4d0450fef9af1668a42922150591979df84dac78a6c7c67f02be215aeb045c41fb3f6a7ac5be876b65656d6b7125a0b42f631451429b22bb95d25658943a1b74588a466456fd59d27e087c1ad07c53a878e344f03f876c3c43aac73457baadb6996d15e5c47718f396499630ec24c0de09f9bbe6b561f859f0cade7f0edcdbf84f448a6f084460f0fc89a7dbab693114f2ca591099b7529f2ed8f68dbc74a2cc0fccaf873f1dfe2fd94df0a75db9f8a29e3d7f8bfe17d6f56d5b475b3b38d3c3735a69925fc77365f6781254b7b79c0b574bb2e599972c181075bc35f18be3afc37f81bf06ff696f8adf10a4f10f87bc4f7ba5dc78bedd74ab5b5b7b2d2f59d3cc3682310c4652e97a6169640c373c8d8558f6aafe87786fe0afc1ef076a9abeb7e13f04f87f46d435f122ea97563a65bdbcd7ab2966904ef1a0320766258312092735c4fc65fd9fb46f8aff0b2d3e0b699a88f08f83b75b5b5fe9ba4d8db08ee749b6c62c210cbb6d233b540784074030a451660737f03fc55f13758fd98d3e24f8fefe67f11ebba66a7e23b649ade281f4eb5bcf36e74fb531a22a936d6e62462e0b33025b24d7c4be03f8fdf1b7c15a7fc32f1dfc4af89936b5a57c40f84de20f18eaa97ba359fd9748b9d1acad2e229ede2b28609e6ff005e4cd1990f98c0ecd8080bfae89a669c9a60d185bc66c4402dbececa0c7e485d9e595390576f183c62b9687e19fc39b78f498a0f0be8d1a683a7cda5694ab6100161a7dc2224b6b6c0262182448d15e34c2305504600a2cc0fc83d1ff68ffda37c3fe19f8a51eade33d4ef6eb4ef843ff09b69571acdae842fadb5433320ba820d33ce8a0b39936b456d76d2ceb83e6638ddd3fc45f889fb4ef8387c588ed7e2fdecebe02f02e8ff00112d99f45d2d649eeb501721b4e6220daba7afd9f3803ed04b0ccdc1ddfa5ba5fecfbf02343d3e4d2747f879e16b2b29acaeb4d92de0d1ed238e4b2bd657b9b7655880686764569233f2b950581c0c7577ff000dfe1e6abfda9fda9e19d1ef3fb6f4f8b49d4fcfb1824fb6e9f06ff2ad6e3721f3608fcc7db13e51773607268b303f273c7bfb4e7ed177bf123c67a8784f5c4d2acfc0f7de1bb3b6d327b9d02c7409a3d46caceee63aabea5326a8d25f3dcbc368d663cb560808e18b7ec95bc8f2c11cb226c674562b9ced2402467be2bcf354f83bf09b5bf11e95e30d67c1ba0df6b9a1a245a66a571a75bcb7766918c22c32b2178c20fba148dbdabd23228b30168a3228c8a2cc028a3228c8a2cc028a3228c8a2cc028a32293228b30168a3228c8a2cc028a3228c8a2cc028a32293228b30168a3228c8a2cc028a3228a40145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145007ffd1fdfca28a2800ac8b9d7f42b399adaf351b48255c6e8e59d11867d4160456bd7c5d770c375f14a582e51658e5d7763ab80caca67c1041ea08e31e9401f59ffc253e18ff00a0bd87fe04c7ff00c5503c53e193c0d5ec7ff0263ffe2ab9ed23c2be1cbb6be177a468927937724517d921472b1ae30b2e47cb28fe20381c537c49e10f0adbf877549e1d1ec5248ecae1d1d6de30cacb1b1041c7041a00f4004300ca720f208a5ae6bc1a49f0968a49c93a7db75ffae6b5d29e94018316a9a85cc627b4b48cc2fcc6d24e51997b1da11b19ea39a93edbac7fcf9dbffe04b7ff001aaced1df1a4d98ffa609fcabe49fda6bf696f15fc1ad7b45f0cf83b42b3d4ee750b57beb9b8bf694c7145e67948891c3b4b312acccc580000001ce46752ac69c79a6ec8ba74e53972c773ec7fb6eb1ff3e76fff00812dff00c6a8fb6eb1ff003e76ff00f812dffc6abf1bbc59ff00051df8bfe18d7f4bf0e3f86fc3525eea6e02c452f95911b85727cc2304861d7b57d5ff0004ff00692f8ade3fd72d20f1878774ab1d32ee44895accce938321203e25760541c65719c739e39e3c466986a118caacaca5b6e74d3c0569b6a0af6dcfb87edbac7fcf9dbffe04b7ff001aa5fb6eb1ff003e76ff00f812dffc6a97cc34bb9bd0fa74f5af40e31bf6dd63fe7cedff00f025bff8d51f6dd63fe7cedfff00025bff008d5607867c5de1bf19e9afacf84f52b6d5ac63b9b8b37b8b47f3235b9b490c53c45b1f7e3914a30ecc08ae877363760e3d71c7e7400dfb6eb1ff003e76ff00f812dffc6a8fb6eb1ff3e76fff00812dff00c6ab9fd7bc61e19f0bcfa4db788f53b6d365d76f974cd312e5c21bcbd7469160841fbf2144660a3b293dab767b94b681ee6e1bcb8a24691ddb850a809639f40066801ff6dd63fe7cedff00f025bff8d527db758ff9f3b7ff00c096ff00e3558be1bf14e81e31d06c3c53e15d42df55d2354856e2caf6d5c4905c42df75e36c7cca7b1adcf32801a6fb570326ca138ecb70727e998c0cfe22b52d6e63bbb78aea2cec95038cf5c1f5acd127229740ff0090359ffd714fe5401b1595acea70691a7dc6a372db62b78de591bae1101627f215c9fc44f88561f0f2c34ababbb3b9d4ae35ad62c344b2b4b3f2fce927be9426efde3a2f970a6e9653924468c402700bfe2513ff00085eb5ff005e175ffa29aba7074954af0a72d9b48e7c5d474e84ea47749b3223d5fe235ec497769a359470ccab246b71a8324a158646f54b7750d8ea03301eb4efb67c4eff00a05699ff0083297ff912bd134aff009065a7fd708bff00411578900124e00eb5d12c7453b2a51ffc9bfcce758293577565ff0092ff00f22796fdb3e277fd02b4cffc194bff00c8947db3e277fd02b4cffc194bff00c895e8e751b016635137308b52a1c4fe62f9455ba1df9db83d8e6ae52fafc7fe7d47f1ff0031fd45ff00cfd97fe4bffc89e59f6cf89dff0040ad33ff000652ff00f2251f6df89dff00409d33ff000652ff00f2257a64b736f03c51cd2a46f336c8d5982976c16daa09e4e01381ce066a7a3ebf1ff9f51fc7fcc3ea2ffe7ecbf0ff00e44f2cfb67c4effa05699ff83297ff009128fb6fc4effa04e99ff83297ff00912bd4f228a3ebf1ff009f51fc7fcc3ea2ff00e7ecbf0ffe44f2cfb6fc4eff00a04e99ff0083297ff9128fb67c4eff00a05699ff0083297ff912bb64f10d8bf8965f0aaac9f6c86c62d419b68f2bc99a5922501b39ddba33918e98e6b768fafc7fe7d47f1ff30fa8bff9fb2fc3ff00913cb3ed9f13bfe815a67fe0ca5ffe44a3edbf13bfe813a67fe0ca5ffe44af53a28fafc7fe7d47f1ff0030fa8bff009fb2fc3ff913cb3ed9f13bfe815a67fe0ca5ff00e44a3ed9f13bfe815a67fe0ca5ff00e44af53a28fafc7fe7d47f1ff30fa8bff9fb2fc3ff00913cb3ed9f13bfe815a67fe0ca5ffe44a3ed9f13bfe815a67fe0ca5ffe44af53a28fafc7fe7d47f1ff0030fa8bff009fb2ff00c97ff913cb3ed9f13bfe815a67fe0ca5ff00e44a3edbf13bfe813a67fe0ca5ff00e44af53a28fafc7fe7d47f1ff30fa8bff9fb2fc3ff00913cb3ed9f13bfe815a67fe0ca5ffe44a3ed9f13bfe815a67fe0ca5ffe44af53a28fafc7fe7d47f1ff0030fa8bff009fb2ff00c97ff913cb3ed9f13bfe815a67fe0ca5ff00e44a3ed9f13bfe815a67fe0ca5ff00e44af53a28fafc7fe7d47f1ff30fa8bff9fb2ffc97ff00913cb3edbf13bfe813a67fe0ca5ffe44a3ed9f13bfe815a67fe0ca5ffe44af53a28fafc7fe7d47f1ff0030fa8bff009fb2fc3ff913cb3ed9f13bfe815a67fe0ca5ff00e44a3ed9f13bfe815a67fe0ca5ff00e44af53a28fafc7fe7d47f1ff30fa8bff9fb2ffc97ff00913cb3ed9f13bfe815a67fe0ca5ffe44a3ed9f13bfe815a67fe0ca5ffe44af53a28fafc7fe7d47f1ff0030fa8bff009fb2ff00c97ff913cb3ed9f13bfe815a67fe0ca5ff00e44a3ed9f13bfe815a67fe0ca5ff00e44af53a28fafc7fe7d47f1ff30fa8bff9fb2ffc97ff00913cb96ffe2621dcfa3e9ce07509a8bee3ec336a067d3240f7aec7c37ae43e20d2e0d4a15645997251f0191812acad8c8cab020e0e322b5e0bbb6bb576b59525114862728c1b6ba9f994e3a11dc76af3df85ff00f22e47ed35d7fe944b56e70af879545149a6b6bf5bf76fb114d3a75e305372524f7b74b764bb9e97451457987a41451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145007ffd2fdfca28a2800af8ca4ff0092ae7fec3e3ff4a2becdaf9622f06ebdaaf8ab57f156972d947169bad4ec7ed72322ee81c484b6d5385c119391de803e85f0faed6d4fe4b04cea131ff413927a733ffd37feff00e14ff157fc8afabffd785cff00e8b6af3dd2b51f193cb345a20f0a3c933b5cccb6b71216776c0691820c9278cb1f6a97c412fc4c6d075217b06882dcda4fe698a49cb88f61ddb7231bb1d33c66803b6f067fc8a3a2ff00d83edbff0045ad74c7a5733e0cff00914745ff00b07db7fe8b5ae98f4a00e274a7c699683fe98a7f2af01f8b5aa58e91e2eb3beb8456965d38463e5dcdb566638031d7278af71d35f1a75b0ffa649fcabe5ffda174cf144bad699ab691a6dd5fda7d90c0cd690b4ed1cab233619503300ca460e31c1e6bc4e20c2cb11829538f75f99e965338c3109c9f4679add7c3df0a7c40f19e9df14756b0bf379a09b48edd309180f67726e639235c6ec172524192190e319afad2c3c5165732d9c62d161695e3c12b8392c3f115f26f83e4f19340d06aba1de23a487c932d85d2af94c41209d839e07e35ef7a25bea77faad90fb2dc208e64959a589e35554209259c0ff1af89a30c5c250a293d1a5dfaf43db9aa7794db47d18aff00bc507fbc3f9d7e24f84be27ea3378b3c3b71e1cf89de2bd5be2b4bf19351d18f84a5bd9ee2c4f8486b1710dc86b12be51b48ad237905db6e68e45310701020fda61290c187639ae13e1f7c3ef0d7c32d167d03c2cb30b6b8d4b52d55dae5c4b28b9d5ae64bbb9dafb4108d2c8c42f4038e6bf5167c91f95ff0974fd5bc1b3fc2ff001ef87bc4de2082e3c4df1c7c5de1bbdd37fb4e6fec67d31aeb5898c5f60ddf67dcf342aed294f37248dd80a037c15f117c47378bbc31a95878e7c4ba87c79bff0088f7da5f893c15737d70f650f87d2ee68d965d24b35b5ada436090cb0dd2aa17620ef25c83fb19e67d3f21fe14cfdd894ce1104ac36b48157795f42d8dc47b671401f895e1ef13e99e26f885f07b55f1178e7c43adfc4dff0085b17cde2bf0cea1773bdae94b6f0ea71da04d3df3159ed8824701409f69566621b195bff0a7e30f8835af8e9e0fbab0f16eaf3da78c2fbc6363ad69fa978967d52f08b6b1bd960b6d4f4cfb345a6e8f2c2f1a7d9e0b5769e441b9f85933fb4e1943338540ee41660aa1988e01271924762680c8b9da88bb9b71c2a8cb1ee70393efd6803e5dfd8ea0bbbdfd8d7e1759585ec9a75ccde10b38e1bb852392481ca10b22a4aaf1b153ced6520f4353fc09f0f7ed6165e27d72ebf681f18e91a9e8f633bdae8f6ba2e9d0dbff006947d56f2e1b699205c10a20562c1c316765c03f4ef99f41f4c0a3cca00be2439157b40ff902d97fd704fe558424e456ee81ff00204b2ffae09fca803e7df116df1d7ed33e1bf0e8db2d8fc3cd1e7f115da907e5d4b55dd6763cf4cac0b72d8ea37035eb9f12bfe44bd67fec1f75ff00a29ab3fc0bf0edfc25e25f19f8aefb503a95ff008bf558ef4b18bcb16b6b6f6f1dbdbdaafccfb96308cc5b8cb3b1c0ad0f895ff225eb5ff60fbaff00d14d5dd967fbdd3f55f99c7987fbad4f47f91d7e97ff0020cb4ffae117fe822be1af0dfc4ff887aadc7823c6379e3db29adbc6fe33d6742b8f0b0b2b4f26dad34f8f530b6d6f2006ebed501b34376d2c8e19b785488600fb974bff009065a7fd708bff004115f31e93fb31dbdafc5283e236abab69f78d67ad5d6b892c1a05959eb17b35c4335bc70ea3a942035d5bdb4536d882c5148c228bcd924dadbf8e7f133ae3b23e1ad327f1078a3e0c5f78886ad1581d57e057822ea0d16d6c6d20d1ecee2eeeee82343691468521b775cac68ea08628c4a840bf4778a7e287c58f863e3af127812efc5c75d82cafbe195e41a86a563670cd143e2cd7ee74bd46d7f711c3179262b50602ca658d9ce5e4c2d7d7e3e127c2e11d8c4be12d102699a57f61d928d3e00b6da59647fb1c402612db74487ca1f26514e3815a3aff00c3bf0178ad3568fc4de1dd2b555d7ace0d3b541796714ff6eb3b57924820b8dea7cd8a2796468d1b2119d8800b1a919f017c46f187897e21fc68d23c37ff00093c3a345e17f8df1e85a36a304304b25ac32f80e7ba9a24f311e27b87b8b99914ccac11980da4a853ef7f0d7e287c4d812efc3177a3ea3f13574af17df78725f13e98da5d82436701b7659efa29ae6d96496dc4ef0ce6ce37dd240e4448c4463d8cfc11f83ada28f0e1f04787ce962e05e0b3feccb7f245c887ecc27d9b31e6880f97e67ded9f2e715daf873c33e1ef0868b6be1cf0ae9b69a469764bb2dececa14820894924844401464924f1c9e6803e1cd03c6bf18bc4161e08b3d5fe210d364f88fe27d6f4e5bcb7d3eca292c2c3443a8bc36b61e747246f7d76b027992ceb2af971c9e5c4adf30a3ff000b7be20ea82cbe1bd9f8bb54d575bb6d77c55662ff00c3361a4c7a86ada5f87a4b685ae64b8d4986956a6ce6bb482f36a1696543e547180eabf6b6b1f0d7e1f6bfe195f06eb5e1cd2ef74249c5d269d35a44f6a970b299c4a9195dab209899038c3073bb39e6b1ef3e0afc21d4743d0fc337de0bd067d23c3473a358c9a7406df4f254a1fb3c7b36c5b94956da06e04839a00f1afd9d7c6babfc461a0f8db5eb886eeff57f03e9d3cf71008fcb99bedf78be62f92cd11de141cc6c5093953b715f5a579cf867e1af87fc1be219b52f0ada59e91a64b63f665d36c6d52da149e4bb9ef279c08f0bba6927667f9725b2c4926bd1a800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2803cebe267c40ff00856ba0c7e25b8d26f354b08ee112f9ecc2b359dbb6774eea4e5950e3207ae4e0735e17acfc58bdf8d3e2587e1a7c1ebf92df4d6856e75df10c4a55eded58f30db1232267e577ff0009cede41c7d6b34315c44f04e8b24722956461b9594f041078208ea2b80f007c2ff08fc344d522f09da9b54d56f0ddcaa5b7042400b1a67eec683eeaf419af9acdb2ecc715888d2a7592c3cbe356b4d25d2325d25a29754af67ae9f259d6579ae33150a34aba8e165fc4495a692be9192e93d14bed257e57ae9d37873c39a3f84f45b6d0341b75b5b2b55da88324924e59998e4b3bb12ccc492cc493cd723f0bff00e45c8ffebb5d7fe944b5e947a7e22bcd7e17ff00c8b91ffd76baff00d2896becb074a14f033a74d5a29c124b64929688f6dd2852af469d3568a8c924b4492e5d11e9745145711e90514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451401ffd3fdfca28a2800af29f10fc3d436fad5fe91a8ea70497c93cef656f2af933ccc8782a572439e08cf7af56a2803e6ff000a7c29d7f49d6633797b3d8c73d8b335c69b2047497726607241c8c73903071edcfa2dc7c397bb81ed6efc4bae4d0caa5248dee50ab29ea08f2fa1af4ba2802a585941a7595be9f6a0ac36d12431827242200a39efc0ab7451401e791586ad671ada1b3925f286c0f1b215603a119652323b11c54821d5474b0b8fce3ffe395dfd181401c0f97abffcf8dc7fdf51ff00f1ca4f2756ef6171f9c7ff00c72bbfc0a280380f2755ff00a07cff009c7ffc7293c9d57fe81f3fe71fff001caf40a30280380f2755ff00a07cff009c7ffc728f2755ff00a07cff009c7ffc72bbfc0a280380f2755ffa07cff9c7ff00c728f2755ffa07cff9c7ff00c72bbfa2803cff00c9d57fe81f3fe71fff001ca3c9d57fe81f3fe71fff001caf40c0a30280380f2356e8ba7cd9ed968c0fc4ef38aec34bb57b2d3adad2420bc5122311d320738abf81450015c878e6da1bbf0bea56d3cbe4a4f6d241e66d2fb4cca635f954163f330e00c9aebeb9cf15ff00c819bfebe2d3ff004a22ae8c249c6bc1aee8c315152a328becce0ec7e25c9676705a5e785bc426782348e43059799116400128e594b2f1c12a0fa8156bfe16ac7ff42af89bff0005e3ff008e57aa572d77e37f08586a7a8e8d7dac59db5ee8f676da8dfc334cb1b5b5a5e3cb14134bb880b1caf048aac78251876aea78ac2b77747ff26673ac36252b7b5ffc951ca7fc2d58ff00e855f137fe0bc7ff001ca3fe16ac7ff42af89bff0005e3ff008e577965afe8ba8ea9a8e8963791cf7da41856fa046cbdb9b84f3220e3b6f4f987b56c51f59c27fcf9ff00c9987d5f13ff003f7ff254795ffc2d58ff00e855f137fe0bc7ff001ca3fe16ac7ff42af89bff0005e3ff008e5773a3f89340f105c6a76ba2dfc379368b7ada76a090bee6b5bb58e398c320fe1711ca8f83fc2c0f7adbc51f59c27fcf9ffc9987d5f13ff3f7ff00254795ff00c2d58ffe855f137fe0bc7ff1ca3fe16ac5ff0042af89bff05e3ff8e57aa7147147d6709ff3e7ff002661f57c4ffcfdff00c951e57ff0b562ff00a157c4dff82f1ffc728ff85ab1ff00d0abe26ffc178ffe395ea947147d6709ff003e7ff2661f57c4ff00cfdffc951e57ff000b563ffa157c4dff0082f1ff00c728ff0085ab1ffd0abe26ff00c178ff00e395eab8a3147d6709ff003e7ff2661f57c4ff00cfdffc951e55ff000b522ffa157c4dff0082f1ff00c728ff0085ab1ffd0abe26ff00c178ff00e395eab8a3147d6709ff003e7ff2661f57c4ff00cfdffc951e55ff000b563ffa157c4dff0082f1ff00c728ff0085ab17fd0abe26ff00c178ff00e395eab8a3147d6709ff003e7ff2661f57c4ff00cfdffc951e55ff000b563ffa157c4dff0082f1ff00c728ff0085ab17fd0abe26ff00c178ff00e395eab8a3147d6709ff003e7ff2661f57c4ff00cfdffc951e55ff000b563ffa157c4dff0082f1ff00c728ff0085ab1ffd0abe26ff00c178ff00e395eab8a3147d6709ff003e7ff2661f57c4ff00cfdffc951e55ff000b563ffa157c4dff0082f1ff00c728ff0085ab1ffd0abe26ff00c178ff00e395eab8a3147d6709ff003e7ff2661f57c4ff00cfdffc951e55ff000b562ffa157c4dff0082f1ff00c728ff0085ab1ffd0abe26ff00c178ff00e395eab8a3147d6709ff003e7ff2661f57c4ff00cfdffc951e55ff000b563ffa157c4dff0082f1ff00c728ff0085ab1ffd0abe26ff00c178ff00e395eab8a3147d6709ff003e7ff2661f57c4ff00cfdffc951e55ff000b563ffa157c4dff0082f1ff00c728ff0085ab1ffd0abe26ff00c178ff00e395eab8a3147d6709ff003e7ff2661f57c4ff00cfdffc951e55ff000b563ffa157c4dff0082f1ff00c728ff0085ab1ffd0abe26ff00c178ff00e395eab8a3147d6709ff003e7ff2661f57c4ff00cfdffc951e527e29ab0db1f857c4a5cfdd0d601413db27cce07bd6cfc3ab26b4f0cd9ee656690492b6dced0d248ceca37053f2b315c9009c74aef315ce784bfe4016dfef4dff00a35e8a989a6e84a34a1cbaabeadf462a787a8ab29559f368eda5bb1d2514515e69e80514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451401fffd4fdfca28a2800a28a2800a28a2800a28a43d2803c8fc5ff001f3e0cf80758b8d03c67e31d2348beb38a2b8bc8aeae553ec70ce488a4ba7e52d9242a7634c50360e338af5a8e48e58d658983a380caca72083c8208e0822bf367c17e38f0e780bc0bf123c13e27f11f873c2de3d93c73e22bcf10daf8aacdafa7d674fd5b50b8fecc686d52e2da6be5bab07b5b6b5689e503cbfb385de8635caf863e26f1cf8ab47d0f5dd024bcd0e6f0b7c11d0fc4ba4f81f4477b6d206b3723528218a4b46633c91c22d9628edde5d8c47ce19910a007e9f64555bbbeb2d3e1fb4dfdc456d16f48fcc99c46bbe56088b9620659982a8ea4900726bf273c3df16bc49a1687a9eab178fe6d42c07c37bed535e934bf11bf887518351926b486db54692ef4f874fd125577b95781f6438576580adb49b73754f16d8eb3a7fc4af08788fc5d8f0f786a4f877afa8b2f17ddebb6f62b3eb5345a85d1d5ae1209b6a2428f328260b5911644657ced00fd7fa335f347c7f1a9dfdafc37f0ae85e24d5342b5f1278b6d74dbbbdd22e843773d8ff67decef12ce4390261080645fde0077a32b8561f276a5e3bf8856ff0013ef6cc78b63d33c4167f1174dd074cd2aefc4176f72da1adc5ba7d997c3d0d94ab751ded82cd70d7d248ce84bced2c51c456300fd48a322bf2e7c0ff12e5ba7f086ade0df88bac78a3e21df78afc53a6ea5e1c9afdeee37d334e3a9830cda7e365b4366f1db797761119d8c6865713056afa3fc4051e17d22ff00e1dfc5bd7b52f10eb5f0f7c41a978c6f65136ba747bcb6b4409a94ba42a3fd82eed350df0a584290f998963f25da125003f4d35cf11e83e1ab7b7baf105fdbe9d0ddde5ae9f04973208d64bbbd9560b7854b11992695d5117ab310072456859df596a10fda6c2e22b98b7bc7e642e245df131475ca92328ea5587504107915f96fe0af89fad1b77d06c3c43772cdfdbff0e1ae2ef48f15b78bb4092df5cd59ada6fb1ea775045791dc5e40035c5ac9948e3689e10a5cb356f875af783aca4f0dfc3dd7bc71a8f87fc1173ae7c4bfed5ba5d72e34f2de22d275b096ba7cfa8f9d14d6d21b369ef3c80ea6e991e725806de01fab7457e73fc1b97e207c59d4fc33a6f8bbc6be2386ce2f0b6b7776925a5d0b29357b58f5c9ed346d52ecc2a8cd2c9a72c531d9e5a48d265d30028efbf66ef1afc41f893e2fb84f14ea77847c30d0e2f07f8822c3dbc1a978bda4125f5cbc4e9f308ad61b692ddd5ca917920c1201001f6d668afce7f15ea1e31bcd77e35f8cd7c65e20b49fc07e3df0de9fa0d95bdf9874eb6b69ac7429ee6292dc0d93a5d35eccb20983ed0d98bcb7f9ab924f8c9337c6ff000f6a96de29b9d3e1bcf899a8f866fed356f1339bb36911bdb48ed24d023b63636768f72901b3b89254b99b7c277b3cde5b807ea266b9df157fc819bfebe2d3ff004a23afcfef027877c4be2cb8f85336b9f103c66e3c6f0f899b5c862d664812e62b0777b4863f2d55ad85b97c07b7314d205026790673cff813e24f8f75cf1d7c3bf0ef8dfc4266d1e1f08e9d7f6336a1ab9d367d6b538b53bbb5d42e1e28a111eab35ac10da9780b451c3e7998abb18f66d86fe2c3d57e6655ff00852f467a07c7cf19e8361f1a758d13e2df8fb57f87fe1ed3fc21657fe0c6d3b539b485d4f5d9a7be8ef4c6622a352bbb554b411d8bf9a989b7181cba95f9ddbc53e22f889f0175b5f1ff0088f559ad60f815f0dbc557532dfcd6c7edf733eaaf7b73349132b32ccb6e8670c4a3aa0dc302bf43be20f807c1de3fd4df54ff0084f358f0fc97561fd977b1e8bacc7043756659d8af972acab04a7cc61f69b610dc85200970abb7d17c3a3e1ef84fc3fa7785bc3f71a659695a4d941a759dac73c4121b5b6411c510f9beea200003531c354e5778bfb9ff007bfcd7dd6e88d255e9df47f8fa7f93fbefd59f9d7f13b4bb61e14f8e9f16bc05e37d7f6f837c1fa36b7e15bcd2b5db836d3dc58e8f2dcdbdf5c4b1c846a6275d8ae2e9a686445c952496ae93e2f7c7b93c15e1ff00da0742d5fc64fa3f89d5b499fc21646e7cbbef22fb46b0092e9f17df684df2dd6f7405119642e40538fd081aef8502b22ea3a7856014813c58200c00467a6298facf8425944d25fe9af22a940ed3425829ea0127383e955ec6a735f95dbd08f6d0e4714d5dab5fb7f5fa9f937e37f15f863c33acfed0daf699f11355d13e27e8be3159fc1be1eb4d5e5b78f50d4a4d1f4bfb2db2694b2795a98bf9ff007132bc5232293b3ca60243f6f7c66f167c6fd07c0bf11f563a5e85a5f86f4af086af7d61acdaeb375fdb4979069e6542d646c560876ce186f5bb721555b19240fa15b59f0834c93bdfe9a6542595ccd0ee04f520e7209ab0de23f0d3a947d52c4a91820dc46411ff007d5455c3549d370e56b4b6cfb5afebf32e8e22942a29b69a4ef6d35d6f63f3f7c4965a1f8335ef06f837e35fc53f13691e11bff0b5e6b92eb97be20b8d1bfb5bc48ad01984ba95bbdbf902ded95a682c6378e175691bcb7119c789f897e2c78835df04f85ec3c75e2cd634fd5adbc25a9eb1a6cfaaf896ebc1316af036a3716da46a0134eb5fb7ea5aabdb4303cb6211205370a5e2df2201fad136b7e12b98c4371a869d2a0208579a26008e870491c512eb5e1299e3926d434e7784e63669a26287d5493c7e1552a155c5c545adfa7adbeebab7a2221569c5ddc93f9fa5fefb3fbd9f989acf89bc49f11fc37e2bf179f1febf147e18f817e16f196972e8dab3d95b1d7a74d66492fe616aca939df6481e19375bb80c248db036fd4bf08f43d4bc17f177fb097c4fe20d76d35ef04d9eb97d16b9a94ba829d516ebca92ea059495b5f391f0f0c023b71b576449ce7e968f5bf09451f951ea1a7226dd9b566840dbcf180718e4f1528f10f8603071a9d86e03683f688b38f4fbdd3daa9d2a9ed1cd41dbb5bfc5fe6bff00015e564aad3f66a1cdaaeb7ff0ff0093ff00c09f9df7a8ac4ff849bc37ff00415b1ffc098fff008aa3fe125f0e7fd056cbff000223ff00e2aa7d854fe57f70fdad3fe646dd1589ff00092f873fe82b65ff008111ff00f1547fc24de1bffa0ad8ff00e04c7ffc551ec2a7f2bfb83dad3fe646dd1589ff00092f873fe82b65ff008111ff00f1547fc24de1be9fdab63ff8131fff001547b0a9fcafee0f6b4ff991b745627fc24de1cffa0ad8ff00e0447ffc551ff0937873fe82b63ff8111fff001547b0a9fcafee0f6b4ff991b745627fc24de1cffa0ad8ff00e0447ffc551ff093786ffe82b63ff8131fff001547b0a9fcafee0f6b4ff991b745627fc24be1cffa0ad97fe0447ffc551ff092f873fe82b65ff8111fff001547b0a9fcafee0f6b4ff991b745627fc24de1bffa0ad8ff00e04c7ffc551ff093786faff6ad8ffe04c7ff00c551ec2a7f2bfb83dad3fe646dd1589ff0937873fe82b63ff8111fff001547fc24be1cff00a0ad97fe0447ff00c551ec2a7f2bfb83dad3fe646dd1589ff093786fa7f6b58ffe04c7ff00c5507c4be1c070755b2cff00d7c47ffc551ec2a7f2bfb83dad3fe646dd1589ff00092f873fe82b65ff008111ff00f1547fc24de1bffa0ad8ff00e04c7ffc551ec2a7f2bfb83dad3fe646d5739e12ff009005b7fbd37fe8d7ab07c4de1cff00a0ad8ffe04c7ff00c557c356375e2ff1d7c55f0978035df10eb3a3e817aff102e12df49ba6d35f52b1d32ef4c8accb4d0ed9bcb85aea4d9244e8cdc02cca486d7d94a3464e4adaafca467ed22eaa517d1fe68fb17c71f143e1efc35820b9f1ef8874fd063b9599e26be9d62dd1dbaef9a4c1e7cb897e691cfca83962056eea9e29f0e68ba09f146aba95adae901617fb7492a8b72970ca9130933b48919d4290792c31d6be36d324d4eebe02784fc67fda9a6bf8ff0054860f0241e2df11c917da63b3d4f554b4998654453ddca22491200aab7372b1ab71c0ec7e3978274af875fb24dcfc3bf08bbdae9fe1dd3b43d1f4d9273e7bc515a5dda4103bee23cc2a1412091bba719ae53a0fa7affc43a1e97aa69ba2ea37d05bdfeb2f347a7dbc8e165ba7b78ccb2ac4a79629182cd8e8a09ad8cd7c19f186d3e2df843c7be05d6a5f11c1e2bd52decfc5d368d6116931d916d421d167921e52690c992bb76719cf5e2bcc2df5ad5f5886cf45f803f13f5af156b3ab7c38d5f5dd624b9d464d4520d72d5aca4d2eeae002069b25cdcadcdbb59c4208e58c4aa221e492a01fa87457e66fc39f8b7e3ff891f103c3f0db6b9aac7a17c60bfb5f1bf87506616d33c35e1f6d9796b924ed8ef592cd9d700b0bb90718c8f5cfda73c6d069de38f0af8327d5eeb4b179a36b3aaec9bc48fe14d2a63692d9c419ef2d6296fee2ee233660b58711b8676941223c007d796fe23d0aeb5ebcf0b5b5fdbc9abe9f6d6d797564ae0cf0db5e34a904ae99caa4ad04a109e0946c7435b59afc6bf0878e3c35e25babaf1b7c4cf89baa78735ebaf823e0bbd4d434ed43ec17179acdbcbac89a4db1a466f2eedee0a8166f1152f2956818b6d5edfc51f13bc673f87fe236b9e32f17ea5e1df8b3e14b2d0c7827c2f0debd8457d757ba4d9cf015d38384d4c6a3aac971692974709e53449e5346ce403f576aada5f596a11b4d617115cc69249133c2eb2289226292212a480c8c0ab0ea0820f35f9e9e36f8e33e96359f0543e30683c5c3e33785f484d2d2e737f16917d7fa4b5c4422e5d2d1ed2697e7c6cdafc3648af61fd96a0d0b47f0078d74dd0f529ae2ef4df1c78c23bf865b992fa7b3b8fed4ba9635785999d2496078ee0ae0198c9e69dc64dc403eb3cd2e6bf163e097c5af141f165f69b79e36d4fc51a96abe16f13dd4f7da66bd7173119ad613225c6aba2dec11cda04f0b7cb0c70b20dcd87078c3fc07f18755d26dbc3baff853e22f8bbc5da85dfc33d5f57f1fd8a4ff00da13e937969670bdb4b6f05c2986d6e925764890aed9546f7dfd5bc959b434baf5f2dbefdd5fb6ba9e5acd21a69ff036fbdeaaff003d74d7f68f34b9afc4bf0378c3e2378874ef88be1cf0678f6faf2ea3f87d69e2ad24d9f8a67d7ddf55d3ae8c939fb54b140b14d22058eeed2006de2dc132771c767e0cf8aff15fe25fc43f0ae9706b9ac5be91f1975eb0f17e93e45cb21d33c3fa04927db6d95958e21bc10c2182614898e793ccc7378b6972bd7fcedf9dbefec850cd632b5a2f5ff36bf3b7df7d8fd81cd26457e42f85fc51e3bb6ff840fe28b78dfc437b7facfc64d6bc252585cea4f269874a4babe892d3ecdf709dd02e1db2ea72010a001a7f08fe264775e23b4f10788be2678be5f89b26a9e2c5d7bc1d66a6fed63b3d3cdd0b78e7b175f2f4e8a185237827013cd936a967dd83ac7324e5c8e367ebd34fc75d8d2198294b91c6cffe02fc75dbd4fd68cd266bf0cbc05f19fc63f62f116a1a2f8eb51bb8b56f84be28d7dfcef1349ad5da6ad68904904d72a60860d3750896462f6b664c71839279503d075fb5f1adb2f8aad93e24f8cca5b7c17b2f8824ff006c3877d700942c9b94031c0be502608f6c6e49de1ab279bab5d46ff3f53079bc2d78c6ff00f0cdfe87ec6e6b9cb4f17f862ffc4fa87832cb53b69b5dd2adadef2f74f4706e2dedeecb8824913aaac86370a7bed3e86bf22bc69f15db52d435abef885f153c41e13953e18785b5dd020d36fa4b786f7c43736f712332c718c4d2b32262dc10b2866255b67cbabe32f89df16adfc3df13b53d5f5cbdd0fc496bf0cbe1bea13085c412586a9a8dd4e976eaa30519ca80ea4e0e31c734de6d0e594eda24defd15fee7a1b7f69475696d77f75feedb4b9fb079a2bf227e24f88be26fc2ed6be2f780bc1be2ff0014dfd8dae8be09d627ba9ee65d5753d3a1d5f50961d5aeed772bbc63ecc85b6a2ec8c02542e323d0be0bf8e7c6171f107e25e91fb3e788e7f89ba4695a5f855f435f176b1742cd56e9eec5e98aecc12c926022957d8dbdc142d85c8dd63ff78a9b8eafcfd76efb14b1ebda2a528d9bf3f5f9bdbf1f53f4cf346457e4a7c6ff001f6bd178c3c74bf18fc77abfc3cf12e83e14d36f7c11a3f87f519e1b1bbd5a586479dad8288ffb59fed6121f2a5438503e45dc6aa789fe266a979e2ed61be38fc46f147c3bf12e95a2f85a7f0ae93a06f325ddcdf44a6ede1d3554a6a72c97198a489d5fcb03855ace59a4232e5b7e9df7edb69dc9966318b69afc6ddf7edb697dcfd66b4d5f49bfbbbcb0b1bdb7b8b9d3dd63bb862955e4b77750eab2aa925199486018024735a39afc71f15eafaafc3af107ed1b27853c4dac586b5ff090785db5196299a6bfb6f0f5f2591d4754580863badd6492249c29f222511ae15011ec1f08bc69f1023f1b78ff0040fd9935a1f14fc1da75a6873585d78af5bb99ecadf51b8337dba08755f26e669488847218cef08c71f283554f31e69a84a3af93bf57f3e8386609cd536b5d7afaf4dfa7e2bcedfa1961e2df0cea9e20d53c2ba76a76d73ac68896efa8d9472069ed56ed4b426541ca890292b9eb835d166bf24fe28f8e35df0878afe386adabde5d683aadec5f0dec2fa5d12fd2d52ce6be69639835fcd131b6b3392b2dc88c4ab164a00f8ae43c19e3df1d6bfa7d8781acfc7ba9c56537c65d2f4282eb4ad766d55d346bcd164b9786df53b98e3b8bab79250cc92ca8093f320002d651cd56cd6b77f849afd08fed38a766b5bb5e7bb4bf23f66f3457e3af88be226b7e10d03c4ff0c752f19ebdfd97a67c5e97c37637fa8f888e971c7a7a68e97ff65d535d68a7bcb7b62ecc55e206769362e4a120fd63fb1afc521acfc2eb2d2bc69e275d4759b9f13f88346d285e5e35cdcdc45a6c8f2ac31cb32acd3f956abbc348048d10dec072074d2c729d5549ab36ae6f4b18a75552b6b6bfddfd7fc03ed9a28a2bb8ed0a28a2800a28a2800a28a2800a28a2800a28a2800a28a2803fffd5fdfca28a2800a28a2800a28a2800a28a28029cda7585c5cc5793db4324f07faa95e35674ff007588c8fc0d584862439445538db9000e3ae3a74a928a00a7169d61009960b68631704998246abe613c12f803713ef4c4d2f4d8a210456b024623f2822c4a14479cedc018db9e71d3357e8a008fca8c8505570872bc0e08e38f4e2a1363666ed6fcc111b955d826d8be6053fc21b1bb1ed9ab5450071be09f02681e02d160d13438d8c7019c89e7daf70c2e2679d95a40a0950f21da3b0c0ae9a0d3ec6d649a6b6b78a292e5b74cf1a2ab48deae40058fd6ae5140146d74cd36ca330d95ac16f197f30a451aa297fef614019f7eb4971a5e997713dbdd5a4134523f98e9244acace3f8882304fb9e6afd14015e5b6478dd23261768cc6b22001d01e9b490471d464633dab89f86ff0f34bf869e1d3a0e9d7b7daa4d717771a86a1a9ea92acf7d7f7d76fbe6b89dd1238f731c0548d1238d15638d15155477d450044608583064521ce58151f311ebebd2abff66e9de6c93fd961f32665691fcb5dcec9ca9638c92bd89e95768a0089608576ed451b33b7007cb9eb8f4cd432e9f6330884d6f148216dd186453b1bd572383ee2add140149b4dd3de5499eda16923c84731a965cf5c1c64669d25858cabb65b789c020e19148c8e8791daadd155ccfb8ac8ac2cad06710c63272708bc93f853574fb1476912de2567e59846a0b63d4e39ab7451ccfb859149f4dd3e574924b685da3394668d4953ea091c54bf64b5ff009e49ff007c0ab1451ccfb85914c69d60b2b4eb6d08918056711aee207404e3240a79b3b438cc319c723e41fe15668a399f70b22a358593b2bbdbc4cc872a4a292a7d471c5396cad146d5863007608b8fe55668a399f70b22a1b0b232094dbc45c02a1b62e403d46719c53fec96bff3c93fef815628a399f70b22bfd92d7fe7927fdf02989a7d8c659a3b7894b9dcc446a0b1f53c726add14733ee16457fb25affcf24ffbe054674eb03289cdb42645054398d77007a80719c55ca28e67dc2c8a9258594a86396089d5baab22907ea08a1b4fb165646b788ab8c3031a90474e78e6add14733ee1645616768a00586300700041c7e94c8f4fb18576456f122e49c2c6a064f53c0ab9451ccfb85915fec96bff3c93fef8147d92d7fe7927fdf02ac514733ee164534d3ac234f2a3b68550e72a235039ebc63bd27f66e9fe4fd9fecd0f958dbb3cb5db8f4c6318abb451ccfb85915c59da81810c600ff00607f851f64b5ff009e49ff007c0ab1451ccfb85914ce9d60665b836d09950615fcb5dc07a038c8ae63c19e04d07c0fa0c1e1fd251e58607b87596e4acb39fb4cf25c3067c02543c8428ecb81dabb3a28e67dc2c8aff64b5ff9e51ffdf03fc2a24d3b4f8d42476d0aa804002350003d474e86aed14733ee16453934fb196330cb6f13c6c3055a352a47a10462a758614d9b1157cb1b53000dabe83d071daa5a2936dee1622f22108a81176a9ca8c0c0239c81eb9a73c692294914329ea08c8fc8d3e8a4318d1a332bb282c99da48e467ae3d2abdb69f6366d2bda5bc5034edbe531a2a191bd5b681b8fb9ab7450044b0429b4a22aec042e001807a81e82a3b8b3b4ba68dee618e5685b7c66440c51c7f12e41c1f71cd59a280283697a6b840d690111bf9899894ed7049dc38e0e4939eb524ba7d8cf7315e4f6f14971067ca95915a48f3d76b1195cfb1ab745005536366d39ba6823331014c8517790a7206ec6700f4a963821899da24543236e72a002cdea71d4fb9a968a00e7b57f0be8dac693ab6912c0b026b3693d9dd4b02ac73347708c8c7785fbd8638273cd51f04f82342f00f85348f07e851b1b3d1b4eb5d321926daf3c905a46228fcd7006f6dabc93d4d75f454f246fcd6d49e557e6b6a5486c2c6dd425bdbc512a82a0222a800f50303a1a956dadd0a148d14a02170a06d07a81c715351545100b6b700288930adbc0da386f51c75f7a647636515cc979141124f28c492aa287703b330193f89ab54500528f4ed3e15d90db428bf370b1a81f37dee00efdfd6a7fb3dbff00cf34e53cbfba3ee7a74e9edd2a6a2803cdf4ef859e16d37e216bdf12634965d53c4363a669f7314ccaf6c916926736e628cafc8f9b87dcd9e78f415e84f6d6f2162f1a3170036541c81d33c738a9a8a518a5b09452d8e2fc79e04d27e20f866fbc2faa5cea1a7c57c23dd77a45e4ba75f466270e863b881924182a32a49565cab02a483c7fc30f827e1cf861aa6b5e23b6d4b56d7b5ff10adac5a8eadacdc8b8b9961b10eb6f12ac691c51c71876c2a46b92c49c935ec94543a3073551ad512e945c94dad5152e2c2c6ee48e6bab78a6784ee8da4456643eaa48241fa512d8594f3c5753dbc524d0ff00aa91d159d3fdd62323f0ab7456962c80dadb33bcad121791763b151965f4271c8f634db5b2b3b08bc8b2823b78f24ec89022e4f53850066acd14580af2d9da4eb224f0c722cc00903a060e0740c08e71ef48b6768841586318208c228c15e076ec3a559a2802a4b61653a3473c1148acc1d95d158161d18823923d7ad4ab6d6e8db923452096c8500e4f04f4ea6a6a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2803ffd6fdfca28a2800a28a2800a28a2800a28a0d00668d63496b8fb22dedb99f76cf2c4c9bf774c6dce739ed5a5915f861e2cf04fecec7e187ed51f117e24d968b65e31d1bc6de237d03592d0dbeb905d476f6cf63f6294b2cbe61bb6fdde0f2e4fbe3aaf11fed23fb582ea7abe9de17ba9adf50f867a0f864ded84b1e89169b7f7d7f630dcdc49ad4faadddade451dcee31db358e552556323360a800fda5a2bf2abc47fb45fc65d27e3cdd5d6ade23974cf02daf8b345f0ec3fd9767a5eb7a144b7e96e24b2d53ca99757b5d55e798a23afee23564668d8039eb7e14fc62f8bbe35f162f8f75ff0089fe1fd274bbef883aef83a0f025dd8451eeb4d2a7b98224b7b852f76fa9b8844ce5dbc928388d7a900fd209eeed6d421b99a38bcd711a798c1773b74519232c7b01c9ab1915f909a5f8efe3078d7e17fc31f8a1f15758d17c4f1f88be2e787f4bd2b4c97438047a54167ac5d599ba590b166be9514309576ac3b5762e7716b307ed15f1d6d45bfc469fe2368f7b6b17c64bcf877ff0858d36d9259b4d9f586d3e276995bed06f208c09a32a163317df562775007eb54f776b6a631733470f9ae238fcc60bbdcf455c9e49ec07356323a57e33f82a4f11698f691f88356b7f1606fda526d391357b186e9ece484dc6fbbb666666b79a5e047b30908cac6a0122baed13f68df8d6ebe1af8d17de3ab0b8b4f127c5497c00ff000dc58db22c160755974e0f14f837c6fe18a2fb539673118c9fdda8e4007eb564515f943a37c73fda1e2baf0d7c48d53c696f79a1ea3f19352f878fe1b4d22de285f4a5d467b28e692e8667375118432b29542870c8cdf357df7f10b519bfe133f0868f2173628353d6a78a33b4dcc9a5428608b8ea03cde66deec8be98a00f63a2be39bef8c3f11b46f08d878aee2ff42be7f13785eff5fb2b78e1758b4e96d96196357904a4dc5bed98248e4236f19180db45ef1478a7e2426babe0cb9f1058b4f65abf852f45fd8da3c25adf56ba9617b5922f3d86d5787786ddfbc8db630e37100fae28af93f47f1af8cafd2f742f0cdee93a00d1ac356d66796eeda4b84b965d4aee18d4069d4a42a202d3b862433a85da38a583e2a7c47d5ac65f19d9be9d65a4da5d786e37d2e5b4792e645d623b46b8533f9aa10c7f69cc47cbe48f9b8a00fabe8af916ebe28f8bb54d62e6c04f15c683abb788ec20923b06b68d574db7b864682e1e7f367903425656f2162c93b1b805bb2f84d777763e22b4d23ce925b5d5fc1ba1eb522c8c584778abf6591c124ffae8d63c8fef216ea49a00fa228a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a00fffd7fdfca28a2800a28a2800a28a2800a28a2803c5dff671f8032f8b1fc792fc39f0b49e2492edaf9f567d22d5af9ae98ee3319cc6643212725b39cd6af8b3e07fc1cf1e78a34ff1af8d7c15a0eb9afe9463365a96a1a7c171750792dbe3db23a16f91fe65e7e53c8e6ba54f125edc8f3ac74e32c0c4f9723ccb1975ecdb769c03db2738a77f6eeb1ff40a1ff812bffc450071d7df007e08ea5e3e4f8a7a87813c3d71e2f49639c6b7269d035ff9d1284490cc5371911400ae7e600000f02ae59fc12f841a7f8fee3e2a58f83343b7f185deef3f5c8ec215d4242ea118b4e1779665014b6724704d74bfdbbac7fd0287fe04afff001147f6eeb1ff0040a1ff00812bff00c450064dbfc26f86369a1695e18b5f0a68d0e91a16a49ac699609630adb59ea29335c2dd41105db1ce26769048a030762d9c9cd790fc29fd93fe15fc38d5a7f176a3a268faff008b8ebfae6b769e21b8d2e04d46d1759bd9eefc88e63be4c41f687456dc382480b922bdd3fb7758ff00a050ff00c095ff00e228feddd63fe8143ff0257ff88a00e6e3f827f0862d7aebc5117833424d5efb52b7d62e6f974f805c4da8da6ff22e9e40bb9a78bcc7d9213b977360f26abdbfc09f83169f101fe2b5b7823408bc6323b4adaea69f00d40c8e9e5b3f9fb37ef64f94b67711c66bacfeddd63fe8143ff0257ff88a3fb7758ffa050ffc095ffe2280321be12fc307b1b4d31fc29a3b5a58eb27c456b01b284c70eb065698df46a570b75e6b33f9a3e7de4b672735b5e21f0bc1aedfe8baaaccd6b7ba1defdaade6419dc9223453c2e09194963620fa30561ca8a67f6eeb1ff40a1ff812bffc451fdbbac7fd0287fe04afff0011401c96b3f063c0b7ba16bda468da5d9e8d37886da4b4babab6b742fe5cafe63a85385d8ce4b320c296392335bb69f0c3e1ed8e9571a25af87b4e8ec6eee21bb9e016ebb249edca98646c824b44517cb39f9368db8c5687f6eeb1ff0040a1ff00812bff00c451fdbbac7fd0287fe04aff00f114014756f863f0fb5c8ada0d5fc3da7dd47686730ac90290bf697f3661d39595fe67539566e4826b766f0c787a78eea29b4db574bd9a0b8b85312912cb6db042ee31cb46224d87f8768c741543fb7758ff00a050ff00c095ff00e228feddd63fe8143ff0257ff88a00cb1f0a7e1b8d49f571e1bd37edb24f25c99fece9bfce943091c1c7ca64dedbf180c58939cd5ef0ff0082f4ef0feb7a96b76e7325ec36965046a8238ecec2c50ac36d128fe10ef2393dcbe3a0004dfdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1147f6eeb1ff40a1ff812bffc450075945727fdbbac7fd0287fe04aff00f1157b4cd6a4bcba6b1bbb56b59847e6a0de2457404038200e4123208ef401bd4514500145145007ffd0fdfca28a2800a28a2800a28a2800a0f4a283d280391f0e7fc80ec7feb8a7f2adaac5f0e7fc80ec7feb8a7f2adaa0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a002b2e3ff0091960ffaf29fff0046455a95991ffc8cb07fd794ff00fa322a00e9e8a28a0028a28a00ffd1fdfca28a2800a28a2800a28a2800a0f4a283401c8f873fe40763ff005c53f956d573ba73df69767169d3e9f7323dbaf97be108e8e1780c0970791ce08c8abbfda571ff0040dbeffbf69ffc72803568acafed2b8ffa06df7fdfb4ff00e3947f695c7fd036fbfefda7ff001ca00d5a2b2bfb4ae3fe81b7dff7ed3ff8e51fda53ff00d036fbfefda7ff001ca00d5a2b2bfb4ae3fe81b7dff7ed3ff8e51fda53ff00d036fbfefda7ff001ca00d5a2b2bfb4ae3fe81b7dff7ed3ff8e51fda571ff40dbeff00bf69ff00c72803568acafed2b8ff00a06df7fdfb4ffe3947f695c7fd036fbfefda7ff1ca00d5a2b2bfb4ae3fe81b7dff007ed3ff008e51fda571ff0040dbeffbf69ffc72803568acafed2b8ffa06df7fdfb4ff00e3947f695c7fd036fbfefda7ff001ca00d5a2b2bfb4ae3fe81b7dff7ed3ff8e51fda571ff40dbeff00bf69ff00c72803568acafed2b8ff00a06df7fdfb4ffe3947f695c7fd036fbfef84ff00e39401ab45657f695c7fd036fbfefda7ff001ca3fb4ae3fe81b7dff7c27ff1ca00d5a2b2bfb4a7ff00a06df7fdfb4ffe3947f695c7fd036fbfefda7ff1ca00d5a2b2bfb4ae3fe81b7dff007ed3ff008e51fda571ff0040dbeffbf69ffc72803568acafed2b8ffa06df7fdfb4ff00e3947f695c7fd036fbfef84ffe39401ab45657f694ff00f40dbeff00bf69ff00c728fed2b8ff00a06df7fdfb4ffe39401ab45657f695c7fd036fbfefda7ff1ca3fb4ae3fe81b7dff007ed3ff008e5006ad1595fda571ff0040dbeffbf69ffc728fed2b8ffa06df7fdfb4ff00e39401ab45657f695c7fd036fbfefda7ff001ca3fb4a7ffa06df7fdfb4ff00e39401ab45657f695c7fd036fbfefda7ff001ca3fb4ae3fe81b7dff7ed3ff8e5006ad1595fda571ff40dbeff00be13ff008e51fda571ff0040dbeffbf69ffc72803568acafed2b8ffa06df7fdfb4ff00e3947f695c7fd036fbfefda7ff001ca00d5a2b2bfb4ae3fe81b7dff7ed3ff8e51fda571ff40dbeff00bf69ff00c72803568acafed2b8ff00a06df7fdfb4ffe3947f695c7fd036fbfefda7ff1ca00d5a2b2bfb4ae3fe81b7dff007ed3ff008e51fda571ff0040dbeffbf69ffc72803568acafed2b8ffa06df7fdfb4ff00e3947f694fff0040dbeffbf69ffc72803568acafed29ff00e81b7dff007ed3ff008e51fda571ff0040dbeffbf69ffc72803568acafed2b8ffa06df7fdfb4ff00e3947f695c7fd036fbfef84ffe39401ab45657f695c7fd036fbfefda7ff1ca3fb4ae3fe81b7dff007ed3ff008e5006ad1595fda571ff0040dbeffbf69ffc728fed2b8ffa06df7fdfb4ff00e39401ab45657f695c7fd036fbfefda7ff001ca3fb4ae3fe81b7dff7c27ff1ca00d5a2b2bfb4ae3fe81b7dff007ed3ff008e51fda571ff0040dbeffbf69ffc72803568acafed2b8ffa06df7fdfb4ff00e3947f695c7fd036fbfefda7ff001ca00d5a2b2bfb4ae3fe81b7dff7ed3ff8e51fda571ff40dbeff00bf69ff00c72803568acafed2b8ff00a06df7fdfb4ffe3947f695c7fd036fbfefda7ff1ca00d5a2b2bfb4ae3fe81b7dff007ed3ff008e51fda571ff0040dbeffbf69ffc72803568acafed2b8ffa06df7fdfb4ff00e3947f695c7fd036fbfefda7ff001ca00d5a2b2bfb4ae3fe81b7dff7ed3ff8e51fda571ff40dbeff00bf69ff00c72803568acafed29ffe81b7dff7ed3ff8e51fda571ff40dbeff00bf69ff00c72803568acafed2b8ff00a06df7fdfb4ffe3947f695c7fd036fbfef84ff00e39401ab45657f694fff0040dbeffbf69ffc728fed2b8ffa06df7fdfb4ff00e39401ab45657f695c7fd036fbfefda7ff001ca3fb4ae3fe81b7dff7ed3ff8e5006ad1595fda571ff40dbeff00bf69ff00c728fed2b8ff00a06df7fdfb4ffe39401ab45657f695c7fd036fbfefda7ff1ca3fb4ae3fe81b7dff007ed3ff008e5006ad65c7ff00232c1ff5e53ffe8c8a93fb4ae3fe81b7dff7ed3ff8e53b4f8eeeeb571a8c96d25b4315bbc23ceda1dda4646e02b360009d49e73401d3d145140051451401ffd2fdfca28a2800a28a2800a28a2800a28a2800c0a302b33fb49ffe7cee7fef81ff00c551fda4ff00f3e773ff007c0ffe2a8034f028c0accfed27ff009f3b9ffbe07ff1547f693ffcf9dcff00df03ff008aa00d3c0a302b33fb49ff00e7cee7fef81ffc551fda4fff003e773ff7c0ff00e2a8034f028c0accfed27ff9f3b9ff00be07ff001547f693ff00cf9dcffdf03ff8aa00d3c0a302b33fb49ffe7cee7fef81ff00c551fda4ff00f3e773ff007c0ffe2a8034f028c0accfed27ff009f3b9ffbe07ff1547f693ffcf9dcff00df03ff008aa00d3c0a302b33fb49ff00e7cee7fef81ffc551fda4fff003e773ff7c0ff00e2a8034f028c0accfed27ff9f3b9ff00be07ff001547f693ff00cf9dcffdf03ff8aa00d3c0a302b33fb49ffe7cee7fef81ff00c551fda4ff00f3e773ff007c0ffe2a8034f028c0accfed27ff009f3b9ffbe07ff1547f693ffcf9dcff00df03ff008aa00d3c0a302b33fb49ff00e7cee7fef81ffc551fda4fff003e773ff7c0ff00e2a8034f028c0accfed27ff9f3b9ff00be07ff001547f693ff00cf9dcffdf03ff8aa00d3c0a302b33fb49ffe7cee7fef81ff00c551fda4ff00f3e773ff007c0ffe2a8034f028c0accfed27ff009f3b9ffbe07ff1547f693ffcf9dcff00df03ff008aa00d3c0a302b33fb49ff00e7cee7fef81ffc551fda4fff003e773ff7c0ff00e2a8034f028c0accfed27ff9f3b9ff00be07ff001547f693ff00cf9dcffdf03ff8aa00d3c0a302b33fb49ffe7cee7fef81ff00c551fda4ff00f3e773ff007c0ffe2a8034f028c0accfed27ff009f3b9ffbe07ff1547f693ffcf9dcff00df03ff008aa00d3c0a302b33fb49ff00e7cee7fef81ffc551fda4fff003e773ff7c0ff00e2a8034f028c0accfed27ff9f3b9ff00be07ff001547f693ff00cf9dcffdf03ff8aa00d3c0a302b33fb49ffe7cee7fef81ff00c551fda4ff00f3e773ff007c0ffe2a8034f028c0accfed27ff009f3b9ffbe07ff1547f693ffcf9dcff00df03ff008aa00d3c0a302b33fb49ff00e7cee7fef81ffc551fda4fff003e773ff7c0ff00e2a8034f028c0accfed27ff9f3b9ff00be07ff001547f693ff00cf9dcffdf03ff8aa00d3c0a302b33fb49ffe7cee7fef81ff00c551fda4ff00f3e773ff007c0ffe2a8034f028c0accfed27ff009f3b9ffbe07ff1547f693ffcf9dcff00df03ff008aa00d3c0a302b33fb49ff00e7cee7fef81ffc551fda4fff003e773ff7c0ff00e2a8034f028c0accfed27ff9f3b9ff00be07ff001547f693ff00cf9dcffdf03ff8aa00d3c0a302b33fb49ffe7cee7fef81ff00c551fda4ff00f3e773ff007c0ffe2a8034f028c0accfed27ff009f3b9ffbe07ff1547f693ffcf9dcff00df03ff008aa00d3c0a302b33fb49ff00e7cee7fef81ffc551fda4fff003e773ff7c0ff00e2a8034f028c0accfed27ff9f3b9ff00be07ff001547f693ff00cf9dcffdf03ff8aa00d3c0a302b33fb49ffe7cee7fef81ff00c551fda4ff00f3e773ff007c0ffe2a8034f028c0accfed27ff009f3b9ffbe07ff1547f693ffcf9dcff00df03ff008aa00d3c0a302b33fb49ff00e7cee7fef81ffc551fda4fff003e773ff7c0ff00e2a8034f028c0accfed27ff9f3b9ff00be07ff001547f693ff00cf9dcffdf03ff8aa00d3c0a302b33fb49ffe7cee7fef81ff00c551fda4ff00f3e773ff007c0ffe2a8034f028c0accfed27ff009f3b9ffbe07ff1547f693ffcf9dcff00df03ff008aa00d3c0a302b33fb49ff00e7cee7fef81ffc551fda4fff003e773ff7c0ff00e2a8034f028c0accfed27ff9f3b9ff00be07ff001547f693ff00cf9dcffdf03ff8aa00d3c0a302b33fb49ffe7cee7fef81ff00c551fda4ff00f3e773ff007c0ffe2a8034f028c0accfed27ff009f3b9ffbe07ff1547f693ffcf9dcff00df03ff008aa00d3c0a302b33fb49ff00e7cee7fef81ffc551fda4fff003e773ff7c0ff00e2a8034f028accfed27ff9f3b9ff00be07ff001553dbddb5c394304d16067322803e9c13cd005ca28a2800a28a2803ffd3fdfca28a2800a28a2800a28a2800a28a2800c0a302a8ddea9a6e9e556faea0b62ff744d22c7bbe9b88cd5c565750e8432b004107208354e124949ad1894937643b028c0ae37c61e37d27c170db4da9c73c9f6a6708b02a9388c02c4ee65000c8f7a822f18df4f124d1786f576491432b016dcab0c83febfb8a919dce051815c7da78b8cba8dae9d7fa4ea1a735eb3c70c972b16c67442e57f77239076a93c8c715d866800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a3028a2800c0a28a2800a28a2800a28a2803fffd4fdfca28a2800a28a2800a28a2800ac7f116a8743d0353d68279a74fb3b8ba09fdef26367c7e38c56c543716f0dddbcb6b728248a6468e446e43230c107d8838ad28ca11a919545757575e445452706a2eccfc89f08f81bc5bfb43ebdadeada96ab64da8d9daa5fdc4ba903229f3cb858a15cfeea25d84647ca831c3126bdfbf63af1beb52eada9780aeee1ee34c4b2fb7d9abb9716cd1c8b1c891b12711b8752aa3e50412bc1ae7bc61fb1df8c2cf5793fe104bcb2bad2a4de90a5ddd4b67710c0f8fdc48638dc4c981839c06006e5279afa5fe037c0c8fe135ade6a3aadd477dae6a48914d242a5608208c92b145bb96cb1cb390371c700002bfa338cf8b325c4e495e952af1a909a87b2a6a3674daddbedf34acbdd574cfc1b84786336c366f46ad5a1284e0e5ed6a395d544f6b77f95eefde766877c7fff008f5d1feb77ff00a0a57aa784d621e7b22c41da1b1de5209237245bae37c8df24a40e853ee8e0f35c2fc5ed0350f13dd687a3e962337120bd71e636c5c2ac79e7079e6b4742d6f5e8e57d3f4fb5d3af6e9238d258575bf34a7d9d4444ac4213e58c8f980fe23cf35fcde7ef874de25ff9187c2dff006109ff00f4926af893f6e5d5aeedbc6ff03b4192ff00c616fa36b7e20d620d5acfc13797b69aadec30e992cd1a20b1923964092aab900f0a18d7d7b7d79e21b9f137865759d360b28c5ece51a2bafb4166fb2cdc15f2d3031939c9ad4f14fc33f0978cbc55e12f1a6bd6d2cdaaf822eaeaf74691279234867bcb76b5959914859330bb280e0819c8e6803e02f815f133e327c2ff00f8477c2be2ed3bc452f87fc79f146f340f0b8f1dce66f105a78717497bc596470ef2b13736f22a0b862e11b9e36d56f1e7c7af8bfe38d7fc06fe08b5b0b3d5b4ef8d9af78362b2fed3bab5d3751b1d3b4bbddafa83c68ccc148f39a108ebe646aabce187dd9f16be0af817e35699a569be358efd5b43d45355d32f34bd42e74bbeb3bc48de212c373692472a131c8ca70dc83f4af266fd8a7e027fc22365e0982c359b7d3f4df11dcf8b2d24835fd4e2be8759ba88c525d25eadc7da8390ccdfeb31b896e493401f3943f1efe23f8f3e25fc2ff0cf8aa35f0eebde17f8b5ab7843c496fa25e4c74bd5160f0f5cdf42ea18ab3c2c248dfca941d922e79201aa7f07bf68cf8a1ac784be1d7c37f845a269d73e22f1343e35d62e6ebc5bad6a17f0db5a787f5892cf62ceeaf73349712b8081995204e065540afb03c23fb2bfc1bf0443e1e4d0b4dbbf3fc37afddf8a2def2e750b9babcb9d62fadded67bbbc9e591a4ba91a090c7fbd2c028006368c73fa8fec69f046fbc35e1ff0d5adbeb5a42f861f546d32ff0049d6efec7528a3d6a76b8be85af219966786795cb346cc5780000001401eedf0eb5cf13f893c0fa36b9e34d261d0b5dbbb547d434db7bc8efe1b6b9e8e91dcc44a4a808f95876ebcd76b5cb7827c17e19f873e12d27c0be0cb14d3344d0ed63b2b1b48c92b14310c01962598f72cc4962492726ba9a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a00fffd5fdfca28a2800a28a2800a28a2800a28a2800a28a28031759f0f691af887fb520329b762d132c8f13a16183868d958647519e6bcdf48f841a569fa97dbae6796e12459c4912c924586790347b5d195c855cab6e2771e6bd8a8a00e5b4ff0005f8734cbe8b51b4b67fb443bbcb79679a6d9bc6095123b0048e338ce2b80f8e5e35f12f84bc27058780e6b087c5be21bb5d33436d4c16b34b9f2de79249943c65a38e189d880eb9381904d7b4579c789be187873c65e2cd33c4be2a89356b6d26caead6db4abc8629ec44d76f133dcb248adba55488221e8aacddcd0070767f1f6caffc3be13d4b47f0f6abae5ff8a7459f588acf4e16e0c2b642217492bdc4f12234724bb00dc72c368e719bb63fb41f82f51d265d5ad2db5061b74092d6dda145b8bb8bc4a516c64890be42972e8fbf6ec31499e1726ef857e09e87e0fd6ffb4f47bdb88ece11ad259e9c1225b6b48f5c9adee268e2daa18224b0168d7381bd8740b8e0746f827369df123c11e5c176742f0078752c0ea17334006af731809641a088eedd661a772cc88a1a51e583ced00eb2dfe3fe8323477773a2ead6ba3dfc7a8b68faaca900b7d4db4b8a59a558944c658cbc50c8f09951164442c0f4cd11fb46f87ed74dbad435df0feb9a3b2d8e9ba8585bddc76e26d462d5a7fb35aac412e196391a721596668fcb0433955c90db5fd9f224b7b4d1effc4fa85e687a2dbea9068760d0dba9b13a9c32dbef7982ee9cdb4134915b86000463e6798d861afe2df813a1f8ba18d2f351ba85edf4ad374eb7758e1711c9a55d2ddc13947465909914078dc18dd090473401d4f81fe28e87e35b0d66e443369775e1db96b5d56d2e9e191ad9c44b70ade65b49343246f0babab239ee0e181038fd33e3c41a969126b83c1fe258ace7d3e3d534991ad613fda76b34ab1214226c5b39f311ca5d984ac4dbdb015f6f63e0bf8716be16d1354d26feec6a675996492eb6db43656ea8f188bc9860b75558e2083b967249258935e6975fb3c4fa8f8613c25aaf8cf56bed36c2dec2d34ab59e281ad61874eb849e317506d097cd208d2290cbd62042856676600d5b6fda0749bdb3b5163e1dd62ef55bad767f0e0d32d8da4ceb7d05a1be24dc2dc9b5f24c033e68970a7e56c3640eae3f8bde1b1f0b6efe2c5e5bde59e9ba7c1752de5acb1a7daede4b291e19e1755731ef49519490fb38ceedbcd73de0ff008230f857568f56975db9be78f5b935e117d96dada25b89b4ff00ecf7891208d02c0230ac8a3e6523966c9cf4d67f0ce3d3bc01a9f8174cd6afec8ea371a95d26a500845d5b4ba8dd4b764a068da2611bcbb42ba30641870d93900e4e5f8f7a6dbe93697375e1ed522d4f52d40e9d61a779b64df6b220fb4b4d15e0b9fb118122e5dcce36bfeef1bc853972fed35e0d934cb5d4748d3751d4a46b4bbbebfb585ace29b4e86c667b6b812f9d731c7248b346eab1c0f2b49b0b265704e741fb3269102497f1ea90c7abb6adfdaa1e1d26d134c0ed6bf649233a76d3115953e791f779a65c3070005a9f50fd9b2c6782cdf4ff00115cdb6a11e993697797b369da7dd3ce934cd389e28a583c9b6b885ddc42634f2d55b6b46fb57001ddf8e3e265ce8ba07853c43e13d3db5cb5f12eafa55a2b465140b4d4482245f3258be62a46dea013f360579de83f1e6fa6d3ae2d7c41a56a16924f7be26b0d3f5a5b780d8cd71a2c976eb12c3f6813165b7b724332a472b46c030c8af61f14fc3f83c43e1dd2340b3d42e34d6d0efb4dbeb4b98d6399f7e9b22baabac8a55964552afc038625486c11cc5efc16d2af749d2b496d52f1134ad4b5ad4d1d562dd23eb515ec522365480b18be6298c125177123702019da0fc72d3755f12db783ed34bd4b52b88574e8751bf863b748ede7d42d52ea376b6339b930949177cb1c72451b3152e76395e9bc5ff15f4af07f8a2dbc3179a6ea1725f4d9f58bcbd8123fb1d869f6cdb669ee1de456014e30a8aeed9f941c1c71777fb3f59dff0088348d56fb5c9ae2d346b9d36f2d2192cedbed76d2e9b1c51ac76d7caab3c16f318834d0827716750c118ad7a2ebff000e346f136b97fabead2cd245a968171e1eb8b552151adae64f31dc301bc3f618381d7ad00799c5fb4b7858585dde5f68babdacd15ad9dfda598fb25c5cdf5a5f5ca5ac4f124173205712489be294a48a187cb5ae7e3ada0b83a01f0c6b63c55fda2ba7268056dbed2c5adcdd0b8f3c4e6d05b7900b190cd80c3cbc6fc29f3cd73f67ad774ef07de69fa0eb93ea3a94dfd87656af159e9fa71b682c35086796f1bca89167bcd89b999ff76de5a848977306ef0fc11d47fb54f8c078baf7fe12efed117abaa35ac1e40845a9b41686d00086dfcb25cfcfe679bf36f03e5a00a327ed27e1b91b4fb6d3742d62f6faea0bb9eef4f45b68ef6cc69f746cee93c996746b99a1981063b5f38b0195cee4dd5eff00e375e683e2c874fbdb67b9d0c5febe9a96a2d0c76e34fb7d22da39f183705e408ac59df66e61c050c3154f5efd99ac75cf0daf85a6f11ddcb677315d8d48deda5ade4935ddf4ef7335f5b33a0fb15e19246d9245f2a2edc265148e9f58f809a26b2c63b9d52f3ecb3deead35e5b948996e6d759b45b3b8b66665dca362865914870c3924645004127ed05a569da75e5f788bc35af6912c5a743abda5a4f14125cdfd8cd3c76e1a158a7702547963df0c85245debc735ad6df1b74930dc41a9e89ab69babdb6b1a668afa4ce9035d99f5608f048a6399e268846cceec1fe51149c12b8ac54f811737f0b9f1778b751d76ee2d3acf4ab3b992dedadda0b5b5ba8ae9d996340b24f72f0c62690855c28d889ce66baf8737baefed0769f10eeaca6b3d3340d20dba3bcb1345a9ea1216104cb12b33a9b2865b88c338524cc70085cd007aef8b20f12ddf86754b7f06dddb586baf6b28d3ae6f203736d15d6d3e519a2578d9e3dd8dea1d495ce083cd7ceba2fc7cd575c92e3c437b612e87e1ff00056972cbe33496d9e7ba5d6fee8d32d0020bb43b4c8eeaac241242109dec57e96d16c2fb4dd352cf52d466d56e15a566ba9d238dd83c8ccaa562544c2290830324282493927cfee3e1368f79e1df19786eeaf6ecc1e32bfb8d427923291cb6b2cf14318f2182e3f76615752e1be6eb91c50062d8fc70d3cea3fd83e22f0f6b1a0eb1f6ad221fb0de2dbbb1875b95e1b69c4904d244504913a4aa1cc91b2f2b82a4f77a778f344bfb2f126a327996b6de16bdbab2be96700283690a4d248bb4b12812418ce0e41e3d7ccaf3e06df6aed7baceb9e2dbebaf12cf368d25b6a91db5bc496a9a1ced736f1adae1a2612492486727e67df85281502f61e17f85f69a27867c45e1bd6f53bad7c78a6f2faf3529eed2289dcdfc6b1491aac088ab1aa2854e321719248c900f31d7be3e6ae344b1d574df096bda735d5fe8725b477969148da969daa5dadbe20f2e72b15c152098e668de30c199700e3a687e3b5bddb45a3e9fe16d6ae7c4cd797f692e84a6d05cc1fd9ab13cf2bccd702d7cadb3c3b196525da455033bb12695f06351823d3e0d7fc65abeb51691268ff618a64b78628e3d1e7f390bc7122ac93cf8549a62012aa022a65b2fbef82f2c7e25b8f1a7863c4779a3eb93dfdedd79fe4437307d9f5082da196d9a17003286b58e547dc1d5c1e4a12840322ebf690f0d7f6749ace8da16b9ab69fa76951eb5adcf6d6d1a9d26d247950acd1cb2a4924f1f912978605924558c9c7281b6ecbe3b787350f176a3e1bb3b0be9acf49b87b4bed5a3303dbdb4c968b7a4cd0acc6ea384c2c0899a1119621777233cdb7ece76d6ba55c681a0f8a754d3f4ed63498747d790a4334da8c71b4acf3894aafd9ee6713cab23c636ed6f955595585cd4bf67cd2f59f17c3e20d5f5696eac2d2e5ee2d2d1ad2d96eede392d4da9b34d41505cfd8b0c64f2892dbf00b94010006e7c3ef8e5e1cf883acc1a25bd85ee973ea3a6b6b1a5fdb5ad8fdb74f47446955609e578597cd8d9a29963902bae573b82b67f8f5e0db2f1269de15d421bdb6bed475ad4f4401e342904ba643f686966657212196328626ea4c8a0804900f865f0660f8737b1dd7f6c49a925a69c9a5d9c7f61b4b3db0a11fbd9dade246b8b965555691885c2f080b31383e36fd9bbc2fe37d6bc5dae5dea9a959cfe2db3d32da416cd1aad949a6cbe61b8b6250b2cd70a238e624905235c007248063693fb444971a85eea771e1ed5e6f0ec916817515cc70409fd9d6fadc6823375ba70eefe630675895cc7190cdefdd69df1b747d47c416da7268daac5a3ea1abdd68165af3c717d82e352b3322c9105121b848cbc32471ccf12c6ee9856f990b6a6a5f09f49bfb1f10e9d0ddcf6b0ebeda692b12a62d8698b12c6b1e41c86110ceecf5e2b0f4bf82aba6eb565237882f67f0f697ad5df882c34568e3090df5db4ae435c01e64904724f24914471b588cb32aa8001a9e31f8bd67e15d7ae740b2d0359f10cda5d8c3aa6acda4c31cbf60b3b891e3898a3c8924f23f972308605924da84edc950d45fe37e91078ca3f08de68ba9daadd5cddd959decdf6748ee27b3b77b97db079ff006b4899227092bc2b1b11c1c3296b9e29f85371ad789ef3c4da0f89752f0e4bac58dae9dab2d808f75cdbd9c8f2446291c17b79809648cc919cec7e0065565e1ed3f670b4b0f1145aed9788ae625b7d66f75948cd95abcf349a824f14b1dd5d321b8b8548ee1d6125d4c602e77ed1800ec7e1efc68d3be206a161629a0eb1a28d67465d7b4a97538e045bcb1dd1a3b2ac534af1ba34b1e52454255830c8ce0baf8d3a5db7886fb4d5d13579b46d2afce97a86bf1431b69f6b78b0f9ceacbe67da1a28d485926588c48e7696c86dbb1e1bf861a7f86f50f0c6a16f7d7333785fc38fe1b856411813c2e6d4f9d26d504483ecabc2e17e66e3a639ebaf82e2e758d48a789753b7f0e6b3a94daaea1a140228e2b99ee20304d135c05f385acad895e107e69072db0942018a7f68cd12d74c9756d6bc35e20d32197477d7f4b49ede169b53d3e39228dda18e3999a3997cf898c1308e5dae3e5c860b66d3e3fda3eb7fd89a9f84b5fd31a0d66cf42bf9ee16d1a1b3bcd4c466c8398ae5da45984b192620e23de3ccdbce2bdbfc029278608bc4be2cd475a6d37495d174a92586085adad3ce82691e4d8bb67b897ecd123cac146d5f9554b316eb353f843a66a7a9ea9a9c9a8dd46faa788f45f123aaac5849b455b658e15ca93e5cbf661bc9cb0dcdb48e3001c5a7ed1d6b73241169de0af12dd9be87519f4f2a9651ade47a4cbe55e32992e9422c64a94326cf3430f2f766a0bcf8e5792dee8d79e14b29f59d3f5fd4f408238da08addedacf58b27ba0e1a4b842f23000e19404c15c1e09ee6c7e10e9962da0baea374e741d3758d3620563c4a9ac3c4eeef85c868cc4026dc0209dc0f18c0b0f80b61a5695a4e9fa76bb7d14da349e1f96dee5a281d89d02dfecaa1d766c22e222c24c01b4b6536903001efc39a2b1f43d3eff4cb136ba96a73ead319ee25171711c51b88e695e48e2c42889b61461129c6e2aa0b966258ec500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145007ffd6fdfca28a2800a28a2800a28a2800a28a2800a28c8a2800a28aad2deda43208669e3491ba2b380c7e809cd4ca4a2af26349bd8b34514550828a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a00fffd7fdfca28a2800a28a2800a28a2800a82eae23b3b696ee6c88e14691b03276a8c9c7e553d56bdb65bcb39ed18ed1346d19239c6e0467f0a00e5a2d1f5bd5905eea7a9dcd93483725ad99544854f45662a59d80fbc49c67a002af6992ea7637c748d526fb5868ccb6d725423baa101d240b85dcb9043000303d32399e1d6a1b78d61d5b36b70830c181d8e47f123018607a8ee3b8069d6c64d435017fe5b476f046d1c25d4ab48642a59b69e4280a00cf27938c60900d1be99adaca7b84fbd144ee33eaaa4d79e685e1ab2d73496d4b516796eaed9cf985882a412071d0f4eff4ae9f5f334d3db69e92c91c57115cb48222aacfe5a8c2ee70400727fc6b9cb582eaca05b6b41a84512e76a0bbb3c0c9c9f5ef5f3798b854c5255a9b94229ab5afabb3bfddff0000efa09c69fbaecdfe5a9b3e0abc9eeb4868ee18b9b799a156272768008fcb38af9e3f698f8cbf107e1a78abe18f83be1fcfe1db19fc7baaea3a74fa87895267b3b45b3b27bb573e4cd09f98c65305b92c3a57a7f83f50bc875986c639584133c85e338209da4e7ebc0e95c9fc74fd9e349f8e7e34f86bac789d34dbfd03c15a9ea37fa968daa590bd83534bdb27b5488a3931811bb893e75604a8c01d6b7e1dc67d63051def1f75dfcbfe0333c6d2e4aafcf53c13e1efedd7a458f8635db8f8d515a49a8e8de38baf03d9ddf81e1bad6acb59bb82c96fd1ada2447995da32d194cb8122e3773c7aa597ed49e1cd17c4de25b4f1b5dbae9d6fe2ed03c29a7c76ba4dd473e9b79af58dbdc5bc3a948cf2265e4980f3915238f7ac6df3024f55e2ff00d9eb44bfd5be163f80e0d2fc2da3fc39f1349e203a6d9592c104eb258dcda18e24876246d9b8de58839db8ef9ae1bc51fb2b5df8a34ef8e16736b905bcff0014b54d3b5ad1ae56d99df44d4349b2b582d27605f12b457368938dbb7fbbef5ee9c876fad7ed4ff0db493a9c36967e20d6eeb4cf133f847ecba368f717f35ceab14227992111021a2851879933158d1be52db8115e616dfb6d7857c47e38f85da4f81b45d4f53f0e7c40fed98ee7519f4fbdb6b8b09f4a93ecef17d9da0c130ceb20bb2ee8208d449f329c8e7352fd8e3c5e9f0c7e1ff82b48f1469d7b75e1ed6755d77c5506b16b752691e28bed644ef7125ddbdbdcc32baa5c4e668e2690a7ca14f02aafc3dfd8dbc77f0fb4ef8616b65e29d0e797c09ab78ae6be034bb886def34ff15ccd24f1db44b744db4b0ac8cb16e695061720e08201eeff000fbf6b2f849f12bc59a6f853c3efab4475f5bc6f0fea57da64f69a5eb8b604f9e74fba91447385505d7a6f405d3728cd7d315f9e3f003f628d53e0e78cfc377daa5c783353d17c130dcc1a25fdb787a48bc4d38955a28daeefa5ba92247589b6c86de18fcdee00e2bf43a800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2803ffd0fdfca28a2800a28a2800a28a2800a28a2800c51451401cc6bcaeb796771e53c912c7731b9488ce0195542ee41c9070735cbfd9a2e9f678ff00f048dffc557a7d15e4e272b55aa39b7bfaf64ba35d8e9a788718a56febee3c67c2fa5ea516bf6d34b6b3471a190b33c6c8a015603a81dcf4aea35ff1f597867c65e1ff000a6ad6771141e245ba8ed354cc7f635beb65122d9c997122cb34424922210a111382cadb4377d5e4df1cbc0d73f11be15f883c25a75bc373a85edb7fa089e430aa5d46c1a2712805a3652321d79157956591c0d274a12bdddff2ff002162310eacb99a22d17e36781751f0e9f186ab7f0683a25cea17163a5df6ab7115ac7a925bb153716fb98130c8558c6c705906f036104fa23f893c3d145733c9a9d9ac766b0bdc399d02c2b70331339dd851203f213f7bb66bc5fc57e0cd7743f17e85e27f097862c75fb1d3bc3979e1e4d35a68ad5acbcf781d1a2f34797e448b17973807785542aadc8af1a8fe0f7c5af0c783ef3c03a2e91a56ab0eada37862cdefbfb40da43692e96fb6f2310b42eec89081f65c121cfcafe50018fa6739f64788fc55e1af07e9c757f156a967a4590758fed17b3a5bc5bdba286720163d875ae3d7e2ff0080a3f124be1bbfd62c2ca52961258cb71790247a80d415da2fb365f327ddc640c12c304d647c4af0df896ebc59e10f1af87f4a835f5f0f3ea31cfa6cd7096eff00e9f02c6971034aa63324453610c54f972b907236b795c3f05bc40de0ef145bc9e1ed074ed5f57f0f689a7dadae9af8b2b79ac1a699ede1778c3a410cb266362a371cb055e0000fa497c6fe0e7f12b783535bd3cebaa9e61d345cc7f6b0b8dd9f2776ff00bbcf4ce39e955b4ef887e03d5a5d4e1d33c45a5dd3e8c19b51586f217368a848669b0df22a952096c004107915f374bf09fc7f74dff0859d32ce0b65f17dff00897fe12d5ba4371e4dd19e54d90edf385e29956d9b2447e42960e7223ac297e0e78e75cf0c695e1fbef0768f60be16f06df7871618f513045abcb75f65511c13db219ad6db16e650f22f98b332fc84292c01f5327c4ef87327871fc5f1f89f486d1239becefa88bd87ecab3676f9664ddb43e78db9cf3d2ba0ff00848b40fec887c41fda569fd97702268af7cf4fb3482660b195973b087660170792401d6be35ff854df1666bab3f13cf05dc874df10bea105bc977a6c7afbc1269bf6333497515b7d8a59a193e4884a0bfd9c9065ddf29f62f0e7c28bb8fe06df7c39d5625b3bcd4e3d4a731add35e0b6babeb896e90899910131cae1be54545618450a00001ea5acf8e3c35a3e97a9ea26fedae1b4c69a196de29e3329bb861371f6500b713b4637043f3639c62b33c3ff00153e1ff88f449f5db0d7f4c6b7b1b68aeb50c5ec0df60495038fb432b958f03209271907d2be55f0b7ecff00f12adaeffb5fc42ba67dab56d16fb5cd65209d9c378e2f6d25b03244ec809b75b594c6ae40236afcbe9d6f8a3e09f89251a1cbe1fd234b961d1342f0f5bbe9f248b0c1793e8ba84776d6a708405d8ac62720a893191824d007d49e1ff12787fc57a6a6b3e19d4ad755b1919916e2ce659e22c870cbb9091b94f0475158b6df123e1fde3ead1daf8934995b42567d4c25ec27ec4aa48669fe6fdd804104b600208ea2b8bf87be13f10c37be36f126b5610f87e6f175f473c363048934b02c3671da89a778bf766e2529b9b616015506e241af0b8be157c5087e1fe95e13b4f0a787edb50f0be876fa2a6ac5e0b8bcbe41776b25c9b2f3a378a013456fe70fb5237fa4ecc8c217600fa953e26fc3a93434f132f89f473a4bc8f0adefdba1fb3996352cd18937eddeaa092b9ce39c57436be20d0af7454f1259ea36b3692f09b95be8e646b6308193279a0ecd800c96ce057ca7e0af849e351e2f8f5af16e93135ba78cff00e12649af6fa1bdbaf2ce8474d5697cb8634fb524c06420d8a8c363b6d35dadbfc33d7e2f81be26f87f75a5d8deddea373e207b6d3def65b5b59adefefee2e2de3373027996e5a19146e456f29fb301c807aac7f13be1ccde1d93c5d1789f486d12197c8935017b0fd9526c81e5b4bbb687248c293939153ea3f113c03a45869daa6a9e23d26d2cf572a34fb89ef618e2bbdc323c97660b20c1ce54915f26b7c25f8b1717367e259e1bc7fecbf100d46dede6bbd3575f781b4d7b332bddc56ff6396585d82c02505fc8dc0ca18edace7f813f11f46b686e74cd35aebfb4745d5ac2e74e8358853ecb71a8dec9765269ee6d1d5ed6e04bfe906de3468dd711c6ea46d00fb7f59d7b44f0f6992eb5af5fdb69da7c0034b757532c30a027032ee428c9200e793d2b9eb8f897f0eed345b6f11dd789f488b4bbc576b7bc7be85609846407f2dcb6d6da480c01241eb5e75e3bf03f8b3fe15b785fc31e1545b9b8d0ee74a373b1e16bbf22c530cd6735fa4912dc2b852b24ab9da1b05588238df86df0afc5d63ae695a878c749b544d3353f13df2bcb789a8484eb26168640de4c59976f98929d8b824edca906803d7bc77f183c09e01f0dcfe20d4b56b29dff00b367d4ec6ca2bb805cea30c29bf16aaf22890bf01483b49239aebb59f167877c35a28f10789b51b5d234fc479b8bd99208834b8dabb9c81b893800726be299be087c48d27c0baff8434ff0be8faacfe24f08d868505cc97a90a6972d89b951136622c60512acb01841c4b90caa30f5f467c42f0af88eeb53f03f89f45d2edf5b7f0ade4f3cfa74b3240ee2e2ce4b61340f2031f9d0b3f1b8ae519b0c0f0403b7bcf891f0ff004f7d2e3bdf12693036b6aafa6892f615fb6239015a1cb7ef15890015e09207534dd47e267c3ad1f509b4ad57c4fa3d9dedbac8f35bcf7d0c72c6b080ce5d19c32ed0c09c8e8735f2cdff00c23f888343f15e8b0f83bc3be678f7c396fa4b1b3b90967a1cdbaebcc8d9654124d6f19b8f395a100bcdbfe48c10c3bf1f06affedff6b9b4eb0b876f1fda788659e5d8d2cb676ba7c56ab2b92849943c7f2a67206083401ecb73f137e1cd958596ab79e28d1e0b3d49049673c97d02c7708ce230d1317c38de42e57383c1a81fe25f842e6ddee741d52c3594b6d46df4ebd3677d6c45a3cedb4b4acd2a81b0658a025d8021431e2be7ed2fe07788a38f563a8e99a63c93693e3ab2b23e62c9b1fc43ab1bbb603318d8248369970308df2fcdd6b407c1cf135bf892c6fac2c2c20b1b7b1f02db911caa8436817b753de0d8b1e36a452a79673f392461719201ebd6df197c0779f0d2f7e2cdb5f79be1fb086e669a4428d2ff00a2b32b2055620c8e54796b9cb6e5c7de15b50fc4cf87d35ce93623c45a5addebb04773a75b35e4226ba8a619468d37e5c36085233920819c579669df0efc5537ecf9e22f8637b676b67ab5dd8ebda7dae27125bcbf6d79cdbca5950140c2452c0ae5083d7009f3ed53e187c46d4ad3c4fa0ffc23761b7c7171a15e7f69cb7b196d1458dbda41344ea14bc925b35b34d6ad00dacf27cde5905d803e8ef15fc4af0af83b59d2bc3bac5d2a6a5ada5dbd940190349f6388cae0866046ec6d4e0e5c8158da1fc63f06f89fc30baff876fad350b95b6b0b9b9d362beb5fb4da0bf318559f3284465df820b7254aae5b00d3f89be15f116b9e23f09eafa159c377169b26a90de1927585e18afec6481244dca77ed90aee5054e0e467183e512fc14f12db697e13b1d2ac2c2dff00b23c1b65a2ddac52ac605dc17fa6dcb2ae130e816de660c71f311c7cc4800fa4f4ff001b783f55d7af3c2da66b7a7ddeb1a7826eac21b98e4b9840201df12b165c1201c8e09c1a7de78cfc23a76a6fa2dfeb7a7db6a114325cc96b2dd44932411287791919832a2a90c58800039cd7ce5f0efe1bf8f7c3bf1222be974b4d3343b6d43c41773c525edbea566dfda73c92c7369a5e05bfb59ae19d64ba8e493c943ba38c38daf5a1f123e0ef883c563e235de95059a5f7883fb04e9f33c82392e61d2592596d6497cb73124acac8095917e7dcc8c32a403da63f89df0e26d0d7c4f178a3476d21a47856f85f43f6732c6a5d9049bf6ef0a092b9ce39c53f50f893f0f74ad274fd7b53f12e936ba6eac40b1bb9af61482e7233fba90bed70072482703ad7c83a8f84bc5fe1ff0017f86bc4faa7878df6a3aaf8d209edec750d4adee2eee23b2d12f53cf91e2862b386e132c220bbb72469be404809d1e81f0c3e21783f516f14c5e0fd23599757b4f11c4fa4a5e4512e9326b3a8fdb5235792311c904ea40bd68fe6de8a51241d003ea6b8f1d782ed35eb4f0b5cebba6c5ac5fa092d6c1eea25b9995812a5222db9830048c0e4038e95cae91f18bc17a86ae7c3d7b7b069da9c7a47f6dcf14f756ec9159895e32cd2c72b212bb37b60e150824d7ce3a3fc11f891e16bfd034cd22da290593f867edda835d4171a4df47a42431cf25d58dd44f711dd42a8cb6925abae48899d86d20dad63e0a7c419f4a8ac6cf4ed3ee1bfb02c2de449eec2c525c695ac9d4859ca44658c37b0b188b80421fbeacbc100fa861f899f0eee341ff84a21f13690da3f9ad07dbbedb0fd984a8a5cc664dfb438552db739c0ce315b167e2cf0bea36ba7df586af63716fab48d0d84b15c46e9752a8666485831123008c485c9014fa1af9a5be1778c3c53e374f1beb5a058e956773e28d1efe5d265b88ae1c5a695a7de43f6b9bcb4685ae5ee2e23554566c4512317dc362d2f00f8726b8f8d5e2eb9d07ecba8f86bc1b35edee910c32058d3c45aea037f6ecc01547b731b1246767db18119045007d874553d3a5bc9f4fb69f51816d6ee486369e0493ce58a56505d04985de15b2036d19c6703a55ca0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a00fffd1fdfca28a2800a28a2800a28a2800a28a2800a28c8a322800a28c8a322800a28c8a322800a28c8a322800a28c8a322800a28c8a322800a28c8a322800a28c8a322800a28c8a322800a28c8a322800a28c8a322800a28c8a322800a28c8a322800a28c8a322800a28c8a322800a28c8a322800a28c8a322800a28c8a3228010aa9c12071c8f6a5a3228c8a0028a3228c8a0029aa8899d800c924e06393d4d3b228c8a0028a3228c8a0028a3228c8a0028a3228c8a0028a3228c8a0028a3228c8a0028a3228c8a0028a3228c8a0028a3228c8a0028a3228c8a0028a3228c8a0028a3228c8a0028a3228c8a0028a3228c8a0028a3228c8a0028a3228c8a0028a3228c8a0028a3228c8a0028a3228c8a0028a3228c8a0028a3228c8a0028a3228c8a0028a3228c8a0028a3228a0028a28a0028a28a00fffd2fdfca28a2800a28a2800a28a2800a28a280333fb35ff00e7f2e7fefb1ffc4d1fd9afff003f973ff7d8ff00e26b4e8a00ccfecd7ff9fcb9ff00bec7ff001347f66bff00cfe5cffdf63ff89ad3a28032ff00b35ffe7f2e7fefb1ff00c4d2ff0066bffcfe5cff00df63ff0089ad3a280333fb35ff00e7f2e7fefb1ffc4d1fd9afff003f973ff7d8ff00e26b4e8a00ccfecd7ff9fcb9ff00bec7ff001347f66bff00cfe5cffdf63ff89ad3a280333fb35ffe7f2e7fefb1ff00c4d27f66bffcfe5cff00df63ff0089ad4a280333fb35ff00e7f2e7fefb1ffc4d1fd9afff003f973ff7d8ff00e26b4e8a00cbfecd7ff9fcb9ff00bec7ff00134bfd9aff00f3f973ff007d8ffe26b4e8a00ccfecd7ff009fcb9ffbec7ff1347f66bffcfe5cff00df63ff0089ad3a280333fb35ff00e7f2e7fefb1ffc4d1fd9afff003f973ff7d8ff00e26b4e8a00ccfecd7ff9fcb9ff00bec7ff001347f66bff00cfe5cffdf63ff89ad3a280333fb35ffe7f2e7fefb1ff00c4d1fd9aff00f3f973ff007d8ffe26b4e8a00ccfecd7ff009fcb9ffbec7ff1349fd9afff003f973ff7d8ff00e26b528a00ccfecd7ff9fcb9ff00bec7ff001347f66bff00cfe5cffdf63ff89ad3a280333fb35ffe7f2e7fefb1ff00c4d1fd9aff00f3f973ff007d8ffe26b4e8a00ccfecd7ff009fcb9ffbec7ff1347f66bffcfe5cff00df63ff0089ad3a280333fb35ff00e7f2e7fefb1ffc4d1fd9afff003f973ff7d8ff00e26b4e8a00ccfecd7ff9fcb9ff00bec7ff001347f66bff00cfe5cffdf63ff89ad3a280333fb35ffe7f2e7fefb1ff00c4d27f66bffcfe5cff00df63ff0089ad4a280333fb35ff00e7f2e7fefb1ffc4d1fd9afff003f973ff7d8ff00e26b4e8a00ccfecd7ff9fcb9ff00bec7ff001347f66bff00cfe5cffdf63ff89ad3a280333fb35ffe7f2e7fefb1ff00c4d27f66bffcfe5cff00df63ff0089ad4a280333fb35ff00e7f2e7fefb1ffc4d1fd9afff003f973ff7d8ff00e26b4e8a00cbfecd7ff9fcb9ff00bec7ff001347f66bff00cfe5cffdf63ff89ad4a280333fb35ffe7f2e7fefb1ff00c4d1fd9aff00f3f973ff007d8ffe26b4e8a00cbfecd7ff009fcb9ffbec7ff1347f66bffcfe5cff00df63ff0089ad4a280333fb35ff00e7f2e7fefb1ffc4d1fd9afff003f973ff7d8ff00e26b4e8a00cbfecd7ff9fcb9ff00bec7ff00134bfd9aff00f3f973ff007d8ffe26b4e8a00ccfecd7ff009fcb9ffbec7ff1347f66bffcfe5cff00df63ff0089ad3a280333fb35ff00e7f2e7fefb1ffc4d1fd9afff003f973ff7d8ff00e26b4e8a00ccfecd7ff9fcb9ff00bec7ff001347f66bff00cfe5cffdf63ff89ad3a280333fb35ffe7f2e7fefb1ff00c4d1fd9aff00f3f973ff007d8ffe26b4e8a00cbfecd7ff009fcb9ffbec7ff134bfd9afff003f973ff7d8ff00e26b4e8a00ccfecd7ff9fcb9ff00bec7ff001349fd9aff00f3f973ff007d8ffe26b528a00cbfecd7ff009fcb9ffbec7ff134bfd9afff003f973ff7d8ff00e26b4e8a00cbfecd7ff9fcb9ff00bec7ff00134bfd9aff00f3f973ff007d8ffe26b4e8a00ccfecd7ff009fcb9ffbec7ff1347f66bffcfe5cff00df63ff0089ad3a280333fb35ff00e7f2e7fefb1ffc4d1fd9afff003f973ff7d8ff00e26b4e8a00ccfecd7ff9fcb9ff00bec7ff001347f66bff00cfe5cffdf63ff89ad3a280333fb35ffe7f2e7fefb1ff00c4d27f66bffcfe5cff00df63ff0089ad4a280333fb35ff00e7f2e7fefb1ffc4d27f66bff00cfe5cffdf63ff89ad4a280333fb35ffe7f2e7fefb1ff00c4d1fd9aff00f3f973ff007d8ffe26b4e8a00cbfecd7ff009fcb9ffbec7ff134bfd9afff003f973ff7d8ff00e26b4e8a00ccfecd7ff9fcb9ff00bec7ff001353dbda35bb9733cd2e463123023ebc01cd5ca2800a28a2800a28a2803fffd3fdfca28a2800a28a2800a28a2800a4270327b52d35865481dc628038e8351f17ea1125ed95958c56f300f12cf349e6ec3ca960a9b41239c0271eb5aba4dfea72dc4f61ac5bc50dc44892ab412192392372c38dc010c0a9041f639f4afa5eafa6dae9b6b6b7770904d04291c91c87632ba000820fb8fc6acd94f15eead3dddab79902dbc51798bf74b8776201ef804671eb401c77c49f8b1e19f859278623f12477721f16f882cfc3761f648bcddb7b7dbbca32f23647f29dcdce3d2bb38bc4be1d9afa3d321d52c9ef25dfe5dbadcc6667f2ce1f6a06dc76918381c77af993f6abf0778b7c5d75f085bc29a3ddeae346f89ba06aba91b511ff00a1d85b993ceb997cc74fdd4791bb6ee6e78535f17687fb2f6b9a047e09f1ee99f0dda0f1d27c79d4358d5358b7b6b74d4e3f0ddcea57844f35c3488e6c8daba66305b82088f764d007e87e9bfb43f80e7bcf0d695ae477fe1fd4fc5dac6a9a369165a942a259e6d28ca5e46681e58e3865488bc2ceea581552048765761e16f89fa0f883c35278a3548a6f0cdb26a179a76cd71e0b5767b499e1f301599d364db37c7f36e2846e556ca8fcc9d07e01f8b74ab9f831e21f12fc37bad54f87be29f8d6f75845b3b7b8b9b7d2355bdbd9f4d9e4591c16b74b97b7ba0016f2da31205dea05739a8fc13f89e7c2be0af0cf89be1acdac6990789be246a7772be8d6baede5acda8ea724ba6086d2f6e63b3885dc526f1753472794171fbb273401fa75e2bf8e5e13f0af8c53c08f6d7fa8ead3f85751f175ba58471c91dc58e9924514891bb4a8a6676993cb538539c9615db695e3bf0dea3a6586a173790e9b2dfdb4173f63be9e18aea11708aea9220720380c0100919e84d7e48783fe047c6283e19784f46d57c17aa0bbd2bf67ef19f83ef2d264899bfb62eaea0fb3d90cca519a74898c6776c2b8c95ce047e28f841aaf8abe2a7c3787c7bf00759baf0e780f46f0fcb79ade8ba6696faaebbacdadbdbaa43737725d4371169d63fc71292d2b46cbf74289003f63935ed0df556d09350b56d4913cc6b313a1b854c67718b76f031df15c9789fe29f827c1fe31f0b780f5fbff00b3eb3e3196ea1d26111bbacaf69099a4deea0ac43629da642a1dbe55cb102bf29fc07fb3778e6dfe38e9fa9f8abc31e23b6f16587c4ad4bc4a7c5ba7e99a47d9a6d2669a5921171ad4ced7d2da3da482d9ac9543a30c200aa1abebefda3be173f88be3ff00c09f88b17829bc4b65e1ed66fe3d6aeadecadeea5b6b792d9bec0f379acade4dbdf18ee14aeef2de3de06e00d007d07f0b3e35780fe2f6810ebfe15bc29e7dcea36a96578638af8b697752d9cede40766d82585b0ddc60f19ad2f0cfc50f0e6bbe13b4f176adbfc316d7971716d1c3ae4905acdbe099e2ed2ba1f3366e401c92a46403903f333e147ecb7acf84dfe0c78e3fe15ea69de33b3f8a7e28d4fc4faba5ac29a90d16f1b575b67b9b853e6340e925b6d4dc40047ca39af33befd9dfe225bfc2cf86306b5e0cf1047aae86ff00102329fd8ba7f8974c8175dd5a7b88a1d47479e55948ba80a797716f2a940487c0c8a00fdbe9af6ceded5afa79e38ed953cc699dc2c61319dc589da063be7159171e2cf0b59dbfdaeef58d3e083cefb379b25d4489e7800f97b8b01bf047cb9cf3d2be35d67c09f11b5aff00827bea5f0eaefc270e93e33bcf87975a5af86b4be6282f64b568e3b58034b205009002f98c13ee86c0af97be34fecc13683acfc333a2fc36bcd6bc09a7782b55b3bdd2b49d1b4ed765b5f12df35b4cd713596a72a209ee423a7db1773a498dc55496a00fd71bff001278774bc9d4f54b2b4c2a3fefee238be590ed43f330e18f00f73d29355f12f877424824d7354b2d396e9b640d77711c02563d90bb0dc79e8335f8997df0b741d23e2a693e0df1ff00c23d6fe2adc687f03748d3edb4dba874ed4355d1e796fb504b7fb4b199216948510f9d0349e4321618572d5d75b7c04f18f85ed7c2b27ed01f09f50f8b90c7f08b4bf0de9b6b0476dac3689e21b569dae6265b89424124eb2c2a2ee3271e560b8017201fb0da8f88fc3fa3cf6d6dab6a7676535e9db6d1dc5c4713cede9187605cff00bb9af29f197c7ef047c3cff849ae7c6d16a1a4e9de189b49b79b5092dc4d05d4bac3ac50adb2c2cf33ec76512931a8407713b4123f257e237ece5f1a2cbc39e134d5fc1daaf8b3c6565f0bb49d0254d474ab0f15787350bdb295e6fecf95a49a1bdd36e55d9435e24a616081b259457adfc6ff0080ff00133c65a4fc6cb86f87971a8df5ff00fc2b4bfd261816de71752e94d12ead1d8c934e19da2b6f320732152f1b1405c13900fd60b9f157862cae2ced2f757b0b79f5101ace296e6247b90dd0c4acc0c99ff673525df897c3b612b417faa595b488db1926b88e3656dbbf0433020edf9b1e9cf4afc77f8c9f03b54d42f7e2fe3e076a7e28d53c73a0e8f07c2dd42ded6d31e178e1d3e2b68ec7334d18d1dac6ed5ae184442303c31248afa03c09fb2868fe2af8b5f18bc43f1a7c250df5deafa4689a2e9dafdf4492a5c46fa1c769a8cd6c4b1218c80c7248caaeca8a39502803f459752d3dee22b44b985a79a2f3a38848a5de2fefaae72579ea062a03ae68c37037f6a36dc0b53fbe4e2e0f488fcdfeb0ff0077ef7b57e69ffc13fb40f15f8ab56d7fe277c448565d47c0da65afc21d22f0b09bed56fe189a517f7b1c8492a2f2e0a2b004e7c804b3718e0be3ff00ece3f16f59f8dde3593c19e1ab9bff000c46f07c5ed12ee2992349bc77a3d9c7636da68195389c45e6b16e097e5874001fa75acfc49d1747f13695e1b6867ba5d496fccd7f6ed0b59d81d3e3123addb9955e366070802b720eedbc67cdf42fda97e10f895fc08fa36a1713597c43b3d4efb49be92036f6d1c3a4aa34e6e9a628d6ed871b15d43373c706be35f87ffb3bf8b8eb7f06f51f1c782daebfb6edbe246b1e3a86ea0b79edad2f7c6263b8fb15e0663bd5b3e40015d5847f310304f03f053f666bfd6f44fd9cfc1ff147e135c47a778523f157fc2676bac595a49652ead24510b7bbba559645bb5b83931c8cb26e6405c2955a00fd8ab3bcb4d42d62bdb09e3b9b79943c72c2e248dd4f42aca4820fa835474df10683accb3c1a46a5697d2dab6d9d2da78e6689bd1c2312a7d8e2be3ffd9abc01e31f86ff00b2ceb1e0b93c36f69aadadef8c4e95a24ede42b5b5cea37b2d842a5187971c90bc6136b2ed523a115f2ffec7df06fc71e09f8f1e14f165cfc3fbef086947e1d5ee95ac3c7a259689a7c7acbddda4cb6cb1dbcf3dcdc794126db7374ced213f2b9c9a00fb9bc77fb4cf867c11f10efbe18c5e18f15f8935bd374ab5d6aed340d33edc90d9de3cd1c4ec448a725a071b40cf1c66b9897f6cef85d71a178275df0ce95e27f127fc27adaa45a5d8e95a4c935fa4da2b04bd8ae2ddd91e1785f2ac1b8ca9e7a6780f177c07f1af8f3f6adf1978b21d73c55e0dd12e7c09a269f67ac787aea2b51757b6f757ed2c0e648e5dc6259a370368196ebd6be43b7f837f1474cf861fb3fe9fe25f871e39bd93c22de318bc430f842ee2d235c59ae67416f7525d0bf818c97dfeba57498f9bf3eeda4ed201fa8f17c74f0fdb7c2ef11fc5bf16e8baff0084b47f0bc177757d0ebb606d2f4c1671095e48a0dcc5d587ca9839661815c65a7ed6df0a2fff0067bb9fda56cbfb4e6f0a59bc915c4496b9d422961bbfb1c9198377de597b06395e467233f26f8e7c19f153e25fc07d17e077c37f05f8d7c3516bbe3181758bbf88f7bfdb12dbe9566ab7ef2dc4d1df5d4b359cf711c76c61f3958a975c2ae09f3ff157c12fda3f42f861fb40fc25d4bc3b1f893fe1319748f156893f85ad5ad34b7d42e6ea18f50b2b5b7bbb97684c71c09390d2e1999c839e2803ef2f0c7ed5fe00d7fc573781755d1bc4de17f100d1aeb5eb3b1f106932589d42c6c8069dad2525a195e30c0b26f0c01ce300e38d5fdbc7e05b7ecfc7f692ceae3c2aba90d28c46cc0d43ed0707fd4799ca6c3e66e0df73e6e95e53a868ff0015fe3dfc63f0878eefbe1aebbe05d0be1af863c4912bf881ec96ff0055d4b59b34b58edade2b3b9b9cc2a10bb97650cdb38c815f1b47fb29fc6b4f85c9f0c17c05763485f8643c58a772ef1f100680fe1ffb018f7edf30c4c25ce36871bb393c007ea4eabfb587852cbc5b3782b46f0978c7c49a9db691a5eb770ba26922f560b4d611ded8c85651b59bcb7047aa9c67ad7d15e18d77fe126f0f69de21fecfbed2bfb46da3b9fb16a70fd9ef6dfcc5cf973c593e5c8bd19727078afc98f19fc2bf18597c6ed43c4faefc3df8a7ace9579e07f086976b71e00d6c689b2f34e86e3ed715dedd4ac4cbb0c88133bc2b6fc63393fa99f0d26926f87fe1e6974dd5b4764d3ade2fb0ebd30b8d560112040b7928966f327c2e5dfcc72cc492c49cd007714514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145007ffd4fdfca28a2800a28a2800a28a2800a28a2800a28a280391f1678fbc13e048ed65f19ebba7e8897ace96ed7f7096e2568c02c10b91b8a820903a0aa7e1bf899f0f3c633083c29e23d2f57919e48c2d95d4739df12248eb842795491188ec181ee2a97c60b7fb4fc2af1922c46693fe11fd5446aa9e639636b26028009249e800c935e4bac784c788f59f851a5c93ea3a6db8d17526ba934c964b299bfd12d1446f3c5b5e3049ce032b128067190403e908b56d2e7d52e34486ea17bfb4861b89ed55c19a286e0bac4ec9d555cc4e149e0956c7435a1c57e7ac7e29f1e4fe1280eb7e22d42cc7f62f84c5cdddf8bab586776bad523b817579691acd67f6848a2135c20fdd9da4a80dcfb7783aefc57e2efd9e751fec5bdd4ed35b44d523d36f6e6ecddc8d2da4f21b7682efca81ee6d18a04865910492c382e59896201f4bdc4f05a4125d5cbac50c28d248ee70a88a32c493d000326b9cb7f1af842eae6decedb58b1927bb9218608d6742f249716ed7512a8ce4b3dba99540ea80b7415f0ff84bc7df157c57af453ddcdaf5a697e2fb5bcf1e59c53dbc908d334bb4b292cd34973b17cb924b96b7b93149f3b1320c614e377c3d1ead75f117c2f7d7b15d4b24baff0087e69e6785f963e12bb0eeedb703f787049c00c76fde205007db71eada5cdaa4fa245750bea16d0c57335b070668e19d9d639193a85768dc29e84a9c7435664bab58a78ada596349a7dde546cc03bec196da09c9c0e4e3a0af8bfe33ea3e27d1be20788afb437b9b2b5b8d3fc1f6ba95f44668161b07bfd484e7ed30c52bc2bca2cb2c6acf0c6fbfe41f38caf061bed4bc5be02d6fc41ac5e5ed85bf8975cb2d1ae22b9be9a0103d9218a16ba9d237bc8cceb2ac73c8a0491e132f8cb007dd9c51c57cabf16356f1ce8df10ed3c23a1ea1a82db7c488ec34fb192163b74a9f4f9da4d4a68dc73134da731287a79b103c13cf9c5af88bc4777a9d9ae95afebf378f2e75ad7ad75ad199e6fb3dae970c57a20cdb30f2a08a3db6cd6d72815e7761f33ef61401f797159f65aa69ba8cb770585cc5712584ff0066ba489c334336c593cb703eeb6c756c1e70c0f7af9b7e117c4793c6fe2dd12dac751d42f2dedfc096936a2278678a25d51e68d5c4a65441f6b40ac254ff00591e46f0370ac7d5a1f13789be214fe1db8d635bb0d24f8875af3174f9a4b4f36de0d22c5e28bce8c0658c4f233a95604b82376372d007d3317853c350f8a27f1ac5a65aa6bd7363169b36a4b1017525943234b1c0d27de31a48eccabd01627b9ae838afcf6b4baf88969e05d3aee3f127899f53f12f81a1bfbeba9a591e6835237f63109618da3f2ede558a690796a8a180cbab1049ecce9be29f0ff8a359b9b0d7fc4d751e89e37d0f4dd3adeeef6e27b7363a84368f76ae181fb4472493c99790b887184640a45007dadc5605ef8abc35a6df3e997fa9da5bdda7d937412cca922fdbe5682db2a4e7f7d2a98e3fef3020722bf3e74cf1b7c5b6b2d42ff4ad5efa5f150d1f5f9f59d36392f7509ede680e23ff004096d96d6c66b63c5a246ec2e97b4a3e71d568ba9d8c7e3ed66f7e1febbaeebb62d0780a16bebb371761bccd62e45d431dccc8779319ccf1063e497c1080e0007def34d0db4325c5c3ac5144a5dddc855555192493c0007527a556bbb5d3f58d3a6b1bc8e3bab2be85a19636c3c72c33295653d8ab29c7b835f9c0fe29d6bc50756d2a4d4f5771e24f0f78b63b9b19351bcbbb9fb5c2a24b4b7b9885bc56761728a1d52da06dcf186ddbc64d6adff8a7c5716ab6f65a26bf77691db5878697c241af35067bb8a748bcf912ce2b7913522f39922b813b836f1a8388861c807dc1f0ef40f87de14f0bc1e19f86363a6699a069735c5ac567a4c71c56b04d1cac27409180a1c4dbbcc1d77e73ce6bb7e2be04bed7bc7de06d2e7d4bc34f783fe124d77c61e1882d7cb73143ad6a1aa48fa5deed38db1a6250cfd194a1ce064fb9fc5a92f3c3da5781f45d4f58d4acfc36da8a59f88b57826922b93045673184cf751e258639ee563124aaca724296018d007bc26ada63ea92e889750b6a10411dcc96c1c79c90cacc89214ea15991803d0953e95a3c57e7c5deaba85a5cdc6ab63ac789468b71a77872d6ef5db8b6923d513447d6f50591f7ac65c2084aa9b8c79cb6ede73ed3f38eabc389ad78bbc4f63e1cd33c4de237f041f12ea71e9f790de4cb25f69d16930bb446f4e6792d92f9e4f2a6de1c94dab2320e403edce2a09eead6d7cb3732c7179b22c51ef60bbe46fbaab9232c7b01c9afcdbd5fc65f1206996d6fad788351d3d2d3c34cda2de4b757b6d7575aa437d7903c8b0dadb4bfda77691c56ff00e8b2a8570db82b6f257e9ff8c966d77e1ef006a5e229ae6192cbc4fa1cb7b25a3cd6e88f21d8eceb19caa0918005bee67a8e4d007bf699aa69bacd947a96937315ddaca5824d0b074628c51b0c38386520fa106af715f0269b6be3df04f84346d6fc157bad5deb5ab59f8cb1a74ef24d6826816eae2c523b46db1446395544646d326ec3336463d17f67bd6f5bd53c4ba844bae4dabe92345b29ae55eeef75358f529247dcc6e6eede0104ee81bceb34c88b6a1db1e70c01f5b71471d6be17f185e78e74fb2d57c4435ad5bec57fe3cb8d23516b9beb8b3b3d3b4383cd3188e5823692d6296e046b25ca23b857c6f44c32735a778ba492fbc3b61f103c6fad58f86ee2cbc5725a4d67757b00b91697966b67bef1a186e6e043ba55b69885172bb73e6e46e00fd0de2ab5ede59e9d673ea17f2a5bdb5ac4f34d34842a471c60b33331e02a80493d857e79278c7c712f87e6baf18ebde21b0f1fdbe8ba0bf8534c4596d97519ee2352d2496b12086e669ee0b4778920616f1a86db083b8eade78c3c4f6be3ad7ede2d6352d4ef2e24f12c062b5bbba8a7b0482d2e1e05bbd1ee206823b385a3516d7b6d2079dda3387576c807deb67a869fa8066b1b88ae36042de5b87dbe62074ce09c6e460c33d4107a1ab9c57e7a89e6d03c51e2317faaeb1a569bacf89fc3b27892f239ee23923d226d0222b379a30608a5d4116da5b88c86441e5928ab94ea7c223c4de37f14685e1c1e24f13af849dfc592e9d7a934f6d3df59d94fa7a5934f73b16491239259c5bbb3069e250c5a452ccc01f7155782ead6e4c82da5494c3218a408c1b648b8255b04e1802320f3cd7ccbf0275ef1df8af5cd4078aeeeecaf826c21f0ade2ca0c71dfeb70c8cf777a57eeb86805b18d874f3641f4f2513587877c5babe89adeb9ad68be1abbf1d6aafaedd4775750e19b4f8a5b08e6ba187b6b69d8c87ce4740ef14709723e4201f7e515f35f8653e20f8b3f67fd416c353d421d7a41aa3787f51bb0d0decd05b5d4ada5c97030ac7ce8522f337005d18ee19635e430f8f355f1a2e8be3ef17eb1ad7873c03e2ed6ae1710c9359adadb69f6022b782e278be7b58ae6f56e256955e3dec90c45f0db5803ef2a2be00b7f8a5e27f0c785b5abdf146adaef9579e10d71bc3124b6d7125e5eb5a5f5dad94a91c51977be92d5add80da259170db786c7bafc26875ed5fc6fe2bd735fd53579d34d3a5d8d859cf34896291dc69161713c8b110ab248d3b365c96dadb80da4b8201f45519af83f54f1378a5355d72f2d35df122fc47b6d6bc430d8f87ad637b8d3a4d36ded6e8e9eb35b3a1823b478c433add29591ee76c7bcee68ab3cebda95d43369df0cbc5de25d4f4cbad37c3e757d426967b89ecf54bcd5ed616f2a4990982e25b66b8fb4dba8090aaa168e307e600fd00cd19af89b4bb0f14e87e2a9aea0f10789ae20d3be20ff0061db5bde5e4f3db0d226d296e1d1c3a9f397ed0e584f2177460115c01b6bca349f1a789ef3e1ddb6ade09f15f8a35cf105c7c3dd5f50f112169ee8db6a3025b35ac889b08b7b90e655863871e7c7b98ac980f401fa5371756d6a11aea54844922c486460a1a47385519232cc7800724f4a9f35f0578f7c5563e3ef126a3a9c1aaea771e16d1b5af014904f6c6ea1b48e49af2e45e4b1b22aee08a622f22e444ea092aca48cad07c5bf11eebc4f2c975addcc5ad8bef132eafa6fda2fa6952c2da2bb16aa6c3c85b5b148f6c0f6f7292133f4cb9909001fa155c2f893e26fc3df07ea30e91e29f11e99a4dece8b224177751c3218ddfcb57218fcaace76863804f00e6b9af84b345a2f84fc35e1fd6358d4f56d7f55d1e2d62e26d51a49ae25631c22762fb1628809245022017193b57835f3efc57d434ed23c69e3c316baba05eea9a6d9c575a3f893475d5348f11dba5bb2a9b2f2192e9c90cd6f2c29216575dde561833807d9f67ac697a85d5e58d8ddc37171a7bc71dd451b86785e58d6545700fca5a375719eaa41e869da56ada66b9a741ab68f7515ed95d20920b881c4914887a32b2e4107d457c1de1cd57c6da77c47b5d4754d3efbc37e0ebed4fc3d16ad67a7798b7369a94ba1daadac173211b8e991c80432188eff003ca090888495ca4be34d68d96a31ebfe2ff12586bd6be01d0eff00c3da75a3c91f9faf4d2ea20b7931c63ed13cae90a3c12ee8ca0ddb06198007e92cd756d6ef147712a46d3bf9710760a647c16daa09f99b009c0e7009ac73e2af0d8f0ebf8b9b53b51a2476ed76da819545aadba025a432e768400125b3815e27f16ac4dd6a1f0a756d7dee6d9ad3c4f6ff006a7b69658e38a59ec2e546ff002b801a7db1863c61ca670e41f9da2b3f17f82fe1968fa8e85ab6beb73ab7823c5335cdab3cb2c105cdaac52d9f916e5196de480bba4611417527707201001fa26acac0329c82320fae696be28d1bc51ae43f1e60b19757d4353375ae5e5a3d9c1797304d6768b68ec8977a4cf0b5b1b04650f1dfc124723c8c80ee0cea5df19bc4dae68df16236835bbf31416fa31b4d1ad6eaeb4cbadf2dd4a2796c10413596aed3aed8e782600dba2ee0c9bd5a803eceb7bab5ba567b5952654768d8c6c180743b594e09c3291823a83d6a7afce56bdd53c2e13408352bbd3b4197c59e2f7d6a6bcd56fb4d48ef16e449a7c52dec11cb342b340ef3a85012e240373963b5e8cde36d7e4b2bf4f1678dbc4906b96fe00d1b50f0ec16a9716725e6af349a808e56b430a3cb753048164b79a30ac32c625f98a807e8b5f6b1a569971656ba8ddc36d36a3335bda472c811a7952379992304fccc228ddc81c85527a0350681e22d0bc55a543ae786efedf53d3ee0b886ead6412c32796c51b6ba920e194838ee2bc87e22cde20b84f01e9f349756cdaa5e5d41ab2d91643b4e8b7d232978c131813aae1811f30001e70796f0f687e22b0fd96bc3b0783ae2f6cb5ad37c3fa66a76a8d23acaf35aa4574d68e1c6e58a60ad098c8f951b680303001f50668af836cbc6d79e2d3e1ff1cf8dbc41ace87f0fbc732eafabdb4915c4d62b6d1c096d0e936af3c1b64b78ee2159eef6965f32621493c21e7aebe2778ef43f01f89cf88758d7a1d5352f87b652f864cb6b325f5cde89b51413a431c20adeb426d5ee17602bc33228cd007e81d96aba6ea335e5b58dcc5712e9f3fd9ae92370cd04c5164f2e403eeb6c756c1e76b03d0d6866be61f13f86f524f8a1a1c1a0de6ab6706ada7eade22d460b29a4860bed4ec574d86d52e1d40c210bfeaf72ef0181caee15e7bfb3e7893c6dacf8b3476d5b5a9eee7b9d06e6e3c4b632dc5ede18b51df0ed33453c1141a5cf1b99235b6898878f24021035007d9f67abe99a8dcded9d85d43713e9b30b7bc8e270cf04cd1a4a1240395631c88e01e76b03d08ad1c8af92b54b6f1478abe25dcf86a7d6f5cd37486f18dc4532e9f2bda79d629e1c8241079e881d61fb539937c6eade62ed0f8dcb5e23a9eb5f103c39e03875a3e29f14c773abf80f5ebed42f64792792daf2c6fec22b59a08de268a1b88e19a50881019b92eb2104d007e91e68c8af82afbc517116b37b63a0f8a35eb9f866fa9e8b16adadb5c5c4b35a493c576d7714578c3ce8e07956d16e190816fe6380d1f2175bc23ff090f8d3c51a278797c45e267f0819bc512e9d749713db4da859594b62b6a26badab2c9124924c2de42c1e689436e91492c01f645b6bda25edea69d677f6d3dcbdb0bc48a2955ddadcb94128009ca6f057774cf15af9afcecf0d5c788ecbe1e689a0f86754d66c13fb2746b49a4b7694cf6b753788a3b6bc552e8c51a389994a91b5139c6de6bb1bdbbd5b40f17de783fc43e22f135a7826d7c533466f84d74f3a07d1edae60b67bf5569d6d5ee5e670e64c1942c3bf0446403ee2a2be50f0e78bf5d5fd976ffc5526a1adea37c96dab2c17e02aeac625bc9a18662248582491c5b59b311d814fc848c5796786b5ef126bd35ef84b4ef126a70d9c9e24f0d08e7d3352bdd4316572927db05bea17b0a4b3412bc7b24751b1189085187001fa0546457cf1e11baf18e93f0f3c7d65a44d7daaea7a06a5addb68475066b9b8758a2592d63324b86982bbed46624b000162726be6bd17c5de2a6f0dead73a778a358ba94e8ba64b12d84fa86a9747c4d3dd22daa39b9b6b74b679df7c779623114717cee2255dc403f42a6d5b4c8353b6d1a6ba852feee29a782d99c09658adca095d13ab2a1910311c0dc33d45599eeed6d9a24b89a389a77f2e25760a6470a5b6a827e63b549c0e7009ed5f04dbf8b3e22c9e126b8d575dd6f4ef127f60f8c9f5f916c26bc1a56b104d64b1adadac49ba4b7b6466fb2088969a1cc837b926b2348bc1adeabe10b9d4efb519f4ed0fc790aa6a16bad5deafa5a8bad1ef029b6bd9618ae7e69f624ab31711bccd0abec72b401fa0ba56ada66b9a6db6b1a3dd437b637912cd6f7103892296271957465c86523904715a15f9fed2f8fb54f026a7e26bbd7fc496b7da07c36d1757b3b7b5796043ac66fe49a578a3406795bca8d1e160cb8c653241ad697c5bac8f1969726ade21f1059f8aae7c7d6fa7cda32f9f1e9bfd88c4f92be5797e47912c1b65f3c36e79cb465ce0c6003eeaa2be6df8971f8c6ebe240ff8476ff5555d23c1da96ab67a6da48d1d9deead0cf1ada8b8007ef36e48116f55704ee0c00c7cc30f8e3c5d6de0fbed4ad7c5fa92d9fd87c3efac5cdbdd5f5fdddb5e5d6a96d14f26fbab5896cee9a169965b18958280311a600600fd30cd26457c187c4c83587d3478afc407e16b789d6de4d69ee2e46d3fd94d2b5a8d4c81702c4de6dccfe6604c4c1e685f90713e28f19f8c2cfc3169a95d788f5a782d6db5b9746b792eeeb49d5750b58b509174fb9b295609a0d42ff00eccaab1da5dc444cac8ee3e662403f44ed75fd12fae24b4b3bfb69a786e24b47892552eb710a879232b9cef4560cc3a804135af9af82fc6177e267f14db7896d9b527d634fd6fc516fa1412b4d1c26edb478a5b381d1008cef9c14f9be56398f241c566b788f569b43bd87e19f8bbc4baa5b5c7862d25d6350b879a6b9b1d6a7beb58e364f3e322daede36b8335aaa048c22ee890637007e83515f1e6a4de33f0dfc53b0f82da66b3ad4d61e239ec3c4169a8dc5cbdc4f6da6e9247f6adb1b8705809a55b65c13922e9f6e02803eaed175ad37c41a7aea7a4ca66b679258d5d91e33ba091a271b64556e1d48ce3071919183401ab45145001451450014514500145145007fffd5fdfca28a2800a28a2800a28a2800a28a2800a28a2800a28a28010a82083c83c10680001814b450018a28a280108078340000c0a5a28039693c1da1cfe2d87c6d70934baa5ada3d95bb49712b41045230690c70163124926007902ef650149c0c574fb573bb1c9ef4ea280130074a5c51450018a314514009b40248ea7ad00003038a5a28010281d282a0904f514b450072dab783b43d735fd23c49aa4734f75a1b4b258a19e516f1cb32ec329803794f2aa92a8eca590336d2326ba82011834b45002100f068000000e00e314b45002150719edcd2d1450018a40a074a5a2801080460f20d61cde1bd227f115af8aa5849d4acace7b0865dec156dee5e29245280ec24b4284120918c0c0273bb450034aa92091c8e868dab9dd8e4f19a7514008402083c834d78c3c663c900823e538233e8474a7d1401cd784fc25a2782b475d13418e5483cd96e2479e692e679a69dcbc924b34ccf248eec7259989edd00ae9195586d6191e86968a00cad7347b6d7f48bcd12f24b9860be85e091ed2e24b5b8557182639a1649236f46460c3b1149a2685a4f87745b2f0f68b6c96ba769f6f1dadb5ba0f9238a250aaa339ce00ea724f535ad450026052d14500260673405519c0c64e4e3d6968a006491a4b1b44fcab82a47b1183591e1cf0fe95e14d074ff000d68911834fd2eda2b4b58d9da46486150a8a5dc966c018cb124d6d5140080628da324f734b450014d28ac4120123a7b53a8a003158169e19d1ecbc45a878aade165d4b54b6b4b4ba94c8e43c364666840427629533c992a016cf24e0637e8a0028c514500376aeedd8e7a67be282aa4862391d0fa669d45002150c3079ac1b5f0c68f67e24bff0016410b2ea7a9dada595cca6472af0d934cd0a8427629533c9960016cf24e0637e8a002b0fc49e1fb1f156857be1dd4dee63b4d422304cd69732da4fb1ba849a06495091c12ac0e0919adca28028e9fa658695a75b691a74096f67670c76f6f0463091c512854551d828000abb814b4500148001923bd2d1400562788bc3da578ab45baf0feb7134d6378aab322bb46582b06186421872a3a1adba2801bb570463839e3eb4a000303a0a5a2800ae47c57e09d1fc602c9b5296fada7d36579ad6e74fbd9ec678da4431b8df03a16564620ab657a1c64023aea280313c39e1dd1fc29a1d9f8774183ecd61631f950c7b9a420649259dcb3bb3312cccc4b331249249ada000181c62968a003148140ce38cf34b450018a6aaaa8daa300761c53a8a002bcd93e14f8413c4fff0009595be92e05f36a896d2ea173258477cf1f946e12d1a430249b738c2e0312c006249f49a2800c573fe23f0c68de2bd34693adc266b65bab4bd0ab23c47cfb29e3b985b72153f2cb1ab119c3630720915d051400d2aa41520107a8ed415538c8ce0e47d69d450018a685519c0c64e4fd69d450072f6de0ed0ed7c5979e3658e69356bcb58ec8cb35c4b2a436f19dde5c113318e10ec0349e5aa990aa96ced18ea28a2800a28a2800a28a2800a28a2800a28a2803ffd6fdfca28a2800a28a2800a28a2800a28a0f4a00e7a2d4b52bb8d6e6d61804320dd1f992b872bd890a840c8e719a93ed5ad7fcf2b4ff00bfb27ff1bacdd224234ab41e90a7f2ae67e20f8af53f0bf875ae741b68eff5abd9e1b0d2ed2662b1cf7970d840e57e608aa19dc8e42a93401dc7dab5aff9e569ff007f64ff00e3747dab5aff009e569ff7f64ffe375e69a7fc54d0e6f0ae81e21bd5b8171af288e1b0b4824baba3728a7cf89628c339f24ab6f2785c73591a0fc67d06fb4bb7bebff3de6bfbcd512d2dec2cee2e276b3d3ae1a269e48550c9185017cc2c061ced033c5007b17dab5aff009e569ff7f64ffe3747dab5aff9e569ff007f64ff00e375c7f807c532f8c3c1ba4f8a2658d1b52b7f3f10eef2f0598295ddce0a8079acef10fc54f097862f6eecb549ae8b69e913decb6f673dcc169e7ffaa13c91232c6cfd42939c104e011900f41fb56b5ff3cad3fefec9ff00c6e8fb56b5ff003cad3fefec9ffc6ebc9e7f8a02d3c4d6de1e6b76bd179ad5ce97e65adbdc116a20b559c094952af265816da4288ceecfcad51c3f193c2f67a2595feb17525c4b2698355bb934cb1ba9a0b7b42cca27946c6786362a76f99f31da4e3009001eb9f6ad6bfe795a7fdfd93ff8dd1f6ad6bfe795a7fdfd93ff008dd799dffc61f05e9b7335b5c4d7adf658ece5ba962b1b8961b68afd55a09269150a223071924fcbce700122ecbf147c2916b274679ae7e5be4d2def45aca6c12fe4c6db76badbe5090921719c6f2173b8e2803bff00b56b5ff3cad3fefec9ff00c6e8fb56b5ff003cad3fefec9ffc6ebcce1f8c1e0cb9b79ee6d65be9d21bdfecd411d85c335cde87911a0b75d999e4431b190264228dcc40aded33c79a0eaf6f677162d74df6cbd974e11b5a4cb241750ab3491dca14cdbed0a7e6936ae4a804965c8075df6ad6bfe795a7fdfd93ff008dd1f6ad6bfe795a7fdfd93ff8dd7c6dfb457ed537ff0000be29fc3ef0d5e68b1dff00857c456ba85ef887525f30dc69365673dadb1bb0aa0a79113ddabcecf80912b3678c55bb4fdad7c39a0cff00116e3e22816967e16f1bc5e0fd0a1d22dae350d435996e2c2daf62582d61124934ec2663b635c0442c70326803ebefb56b5ff3cad3fefec9ff00c6e8fb56b5ff003cad3fefec9ffc6ebe5a9bf6cdf8156be11b3f18ddea1ab410de6be7c2dfd9cda25fb6b106b62169c594fa72c2d751ccf12164063f98118cee15620fdb07e0add78357c656f77ac4bbf5c93c34ba2a68b7cdafb6b1147e73d98d2c45f6af3961fdeb0d9c47f31e2803e9dfb56b5ff3cad3fefec9ff00c6e8fb56b5ff003cad3fefec9ffc6ebcff00e1cfc54f077c56f09278dbc17792dc69a66b9b6945cdbcb69736d7366ed1dc41716f32a4b0cb13a95746504115cce8dfb487c02f11ebd6fe15f0ff00c47f0bea7ad5dcc6de0d3ad356b79eee5986ecc690a3972e363640191b4e7a1c007b37dab5aff9e569ff007f64ff00e375a16177f6db7f3593cb75678dd339dae84a900f7191c1acef34fad3f4239b69cffd3d5c7fe8c3401a37d726cecae2ec2ee30c4f26dce33b149c67df152c1279b0a4a4637a86c7a6466a8eb7ff00206beffaf69bff0040356acffe3d21ff00ae69fc8500493cc96f0c93c9f72352ed8f4519358a97bac4a8b2a416c8ae0305795f7007919c2119fa1ad0d57fe41977ff005c25ff00d00d65dbca7ecf17fd734ffd045004df6ad6bfe795a7fdfd93ff008dd1f6ad6bfe795a7fdfd93ff8dd79bfc4df1b6b5e12d1edbfe117b08f55d7350b830d9d9cacca8e90c6f3dc3129c8d90c6d8ec5ca8ef5625f8a1e16874ed0f51125cdcffc2436a2f2ca0b1b696eee1edc22c92486389598246180662000481d480403d03ed5ad7fcf2b4ffbfb27ff001ba3ed5ad7fcf2b4ff00bfb27ff1baf15d27e366893f862cb57d47cd7bcbdb3bbd4043a7da5c5cac56704d24493cc1159a28db68e5b049dd81c1c767a778ded93c01a778dfc41fe8e971a7daddce96d1bcd892e157091228691cb3b0545009248a00edfed5ad7fcf2b4ffbfb27ff001ba3ed5ad7fcf2b4ff00bfb27ff1bae73c3be2ed33c4df6b8ec56ea09f4f9960bab6bdb692d6785dd048bb92400e1918152320fad79e691f16617696e7c497167a75a5b1f10bcdf24c5fc8d1af56d9650f8283e561bd4fccccc360c03401ecdf6ad6bfe795a7fdfd93ff008dd1f6ad6bfe795a7fdfd93ff8dd79ac7f173c22d05c3cc750b7bab792d62fecf9ec278efe46bd0c6dfcab629e648250ad82a3036b6ec6d3873fc5bf0825bda49e65f3cf7b793e9d1592585c35e8bcb64f32481e009e62384f986e0015f981c73401e91f6ad6bfe795a7fdfd93ff008dd1f6ad6bfe795a7fdfd93ff8dd799b7c60f071b0b4d42d5efef05e5bdcdd086d2c2e27b8860b393cab879a1542f188a4f91830ddbb800d59d47e2b783b4d9da29ae2e658a28ada6b9bbb7b49a6b4b48ef0030b5c4c885210e086f98e554ee6c2f3401e87f6ad6bfe795a7fdfd93ff8dd1f6ad6bfe795a7fdfd93ff008dd67d9eb16b7d7d79a7c3e7092c248e398bc4e91932a0917cb7650b28da7928480783cf15f9db6bfb756be348f8e10eade1fb1b3d67e1d41e22bff0be2495acf5cb3f0f5c3dadcabb36d613c122c66758f2144ab82707001fa45f6ad6bfe795a7fdfd93ff008dd1f6ad6bfe795a7fdfd93ff8dd7ca7e26fdb23e0f7813508f40f16dd6a6fa959695a6ea9afc9a4e917ba8d86870ea518789f50b982378ad51b961e6302106e3804657c6ffb69fc08f87fe24d67c2faf5feb32dcf8761b1bbd5ee34fd0750beb0b1b3d463596deea7bc8207b7481d587ce5f19c8eaa7001f55fdab5aff9e569ff007f64ff00e3747dab5aff009e569ff7f64ffe375f3778b7f6b5f82de0bf1749e0fd6b51d45e5b49b4fb7d4751b3d26f6f349d2e7d5367d923bfbf8626b7b5798488c048eb857566c020d7b378c3c7fe0bf87ba40d7fc79af69fe1ed2cca90fdb753b94b5b6f3643844f364210331e1413c9e066803abfb56b5ff3cad3fefec9ff00c6e98fa96a36a04d770c0610ca1cc5231650c40ce19141c13c8ce715c2f81be2c7c35f89d0dd5c7c38f1568fe288ac9916e64d1ef62bd485a41b903b44cc14b2f20139239e95d66ad213a7cc3d767fe86b401d751495c15fea7adeada8ded86872ad9db69a36dc5cec124af2eddde5c6ac42e40ea4f7a00efa8af3fb2d4f5ed1af2c20d725fb5d9ea45638a668c453c1330caa4aaa4a9cf4c8ef5e814005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451401fffd7fdfca28a2800a28a2800a28a2800a0f4a28a00e034b971a75a8f4893f95719e29f05af8c3c49a3df6b136748d1e2b9952d619668276d426db1a4de644c8556287780036497f41cf671697ac5a46b6ab6be72c436ac892200c074386208e3a8a93ec7acff00cf8bff00dfd8ff00f8aa00f12d3be18ebfe13d663d53c217760f6da7ea37d71a7585f3cfb56cf558a23750bce048e241731f9a8f86cab32b0079a9341f0278f7c31796faed86a1a45e6a928d522bf4992782d8a5fde35e452425433868598ab2118907f12915ed3f63d67fe7c5ff00efec7ffc551f63d67fe7c5ff00efec7ffc5500721e12d0b5cf0a7c3fb1f0d47756973abd859344b70c9225a3dc12cc18a0f9c4658f20720702bc47e20cfe20b2b9f18786748923967f150b191addec2eda59279228ade4167246a61962658c6e79190db9c970c315f4efd9359ff9f07ffbfb17ff00154e16fae052a2ce40a7a8134607fe85401e587c0bae5b6be9add9ddd9363c4b71ac3c52f9a336b7362b66c81941fdf2905c71b48e323ad7916afa7ebdf0e34abef0de9b790cd79a9785a0d39b7e9f79324d3c02e234fb13c28cb2c8c25dad0ca5361c3e4a935f577d8f59ff009f17ff00bfb1ff00f154e5b7d71010b672283d713463ff0066a00f1f5f879abcfe1af13e986ea0826f11e9fa65bc4ae1c8b792cece381fcdda3e6f990e36e78a43e02f14157f0cfdb34fff00846e4d7d35c33e24fed00a2e56f5ad7cbdbe51cceb8f3b70223e36eee6bd7fec7acffcf837fdfd8fff008aa3ec7acffcf8bffdfd8fff008aa00f18d47e176a175e1bd174f1716b717ba1eb57faaa472493c16d7097cf71ba26961c4d13049f87507e65e41526bacf06f86f5cf0a69e96f11d32392f7529af3534805c32082442a891492b3492ccbb630d24b80c01c2af02bbbfb1eb3ff3e2ff00f7f63ffe2a8fb26b3ff3e0ff00f7f62ffe2a803c2fe207c16b7f887f173c35e38d724b3bbf0f699e17f12786b54d1ee63691afa1d7cdb061d0c7e5aac04306ebbb8e95f2ef833f626f1cfc38d184de19f1b596a1e21d07e21af8d3c3b71ab437334325a269aba48b2d418b34a6536a3fd7c64e1c06db8f96bf45bec7acff00cf8bff00dfd8ff00f8aa3ec7acff00cf8bff00dfd8ff00f8aa00f88746fd96fc75378ab4df88fe2ff12691378925f89b0fc40d5e1b0b79d2c52ded749934a82c6d0b9691e458d95da693686607815cf78bbf637f14eb1aceabe2ed375ed1a7d51fe25dd78f2cacb508af12ce6b4bcd2e3d325b2b89ada48ae21982a79893c45955b00ab0afbffec9acff00cf83ff00dfd8bff8aa3ec7acff00cf8bff00dfd8ff00f8aa00f24f815f0d6e3e13f825f41d413468b51bed42eb53bd1a05b4f6b6227ba6cfca2e259a691c281e64cec1a56cb1519c559d03e077c27f0bfc4dd67e30e85e1eb5b4f166bb0ac3777c83b71e63c49f722927c279ee8034bb13713b457a97d8f59ff9f17ffbfb1fff001547d8f59ff9f17ffbfb1fff00154016bcdad3f0f1cd9ca7d6e6e3ff00433585f63d67fe7c1ffefec7ff00c5574ba359cd636223b8c798ef24ac14e429918b633df19eb400fd6ffe40d7dff5ed37fe806ad59ffc7a43ff005cd3f90a8b53824b9d36eade1199258244519c6599481cfd4d4f6c8d1dbc51bf0ca8a0fd4002802beabff20cbbff00ae12ff00e806b998251e445fee27f215d6ddc1f69b59adf3b7cd8d933d71b8119fd6b8a4b0d6a3458dac8b1401772ca9b4e06323241c1f71401c2eb9e0483c51e31875ef104a65d3b4fd3cdb585adbcf3db4a9713c9bae2577899090c8a88a01e9bb3d45721a0fc3af15f82aeec2ebc2d7ba75c45a58d4ac2d2d6f8ce8a9a5dece973027988acc25b6914ae305648f00b06e6bdafec7acff00cf8bff00dfd8ff00f8aa3ec9acff00cf83ff00dfd8bff8aa00f0bd0be1cf8efc296fbf46d4b48b9bebfd1ce97a83dcc73470a4ab71713c57302a066603ed2e1a17201c0c38e73d86a1e0fd79be18d8782b49d492db50b1b5d3edda7579618e74b431f9b17991fef6249d10a6f5f99436457a27d8f59ff9f17ffbfb1fff001547d8f59ff9f17ffbfb1fff0015401e75f0efc23abf84750d76e6fc69d1db6af35b5cc5058c9712181e28844c8ef719697214379990589236a8033c5de7c1dd56f6de781b55b684c89e203148b1c8fb26d575086fad9994eddcb1795b65191bb3f2d7bcfd8f59ff009f17ff00bfb1ff00f1547d8f59ff009f17ff00bfb1ff00f15401e3be25f0478dbc6696fa87886ef4a177a6dfdbde58e9f6ed70b6a44714b14e25bb511dc86984c4a951b63da061b2d9b1e19f8737fa36aba46b33496104b6ba96a1a85dc367e7b822ead45ac48b2cccd24ce8aa37c8fb72380a0002bd6bec7acffcf8bffdfd8fff008aa3ec7acffcf8bffdfd8fff008aa00f04d4be146bd25ac50c0749bd9126d6658e6925bbb0bbb47d4aedee23960bbb6fdee11582cb09c2bb28604639ad7bf06f5a96e35057bdb0d586b71590bfbdd49aed6559a0823b7b8716b0bac1702648f72ac8576b13b8b2e00fa13ec7acff00cf8bff00dfd8ff00f8aa3ec7acff00cf8bff00dfd8ff00f8aa008ac9f538eeae56edadcd923442c5620fe6ac6a80389777cbbb783b76f1b7af35f9f5f10bf61bbdf1dfc18f17fc3e5f1259e9fe23d5fc65e22f1468bacc315c797696de22998dd595c20657912582464900253cc08e14edc57e857d8f59ff009f17ff00bfb1ff00f1547d8f59ff009f17ff00bfb1ff00f15401f0778d3f65cf8b7343f127c3ff000efc57e1eb4d0fe2fe93a769fe226d62cae27b9d3a7b6b08b4cb89ac5626459d26b68fe48e62a639096c91f2d6e6b7fb286b577e11f8d1e0ed2bc4163159fc49f0fe8ba0e90f3c3379b629a4e9eb645eecae44a5d8175f2c0c0383ea7ed5fb1eb3ff003e2fff007f63ff00e2a8fb1eb3ff003e0fff007f63ff00e2a803f3fbc51fb19eb7ac78d3c4f7d14fe11d63c3fe37bbd22fb548bc43677f733d94ba7db5bdb4e90db437115adda4a2d95e13385681c96f9b803eebf11f867c39e2ff000d5f783bc51a7c1aa68ba95b359ddd95d209229a065da5594e7b743d41e41cd6b7d8f59ff9f17ffbfb1fff001547d8f59ff9f17ffbfb1fff0015401c5fc32f86de08f83fe0eb3f027c3fd3974cd26cb7384dc649669a43ba49a7958979a691b9791c96635d96a326eb3907a94ffd0d69df63d67fe7c5ff00efec7ffc5521d3356ba2b0496de423329691a44202ab027014924f1c5007775e5fa9a4ba0cfacdb5edbc92e99acef952e238ccc2099d36b0910738ce0835ea34500793e95f6cf1045a26990c320b2d25a29a7bb7468d66780611630e031cf5248e2bd628a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2803fffd0fdfca28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28c8a2800a28a2800a28a2800a28a322800a28a2800a28a2800a28a322800a28c8a2800a28a2800a28a2800a28c8a2800a28a2800a28c8a2800a28c8a2800a28c8a2800a28a322800a28a2800a28a2800a28a322800a28a2800a28a2800a28c8a2800a28a2800a28a322800a28a322800a28c8a2800a28c8a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28c8a322800a28c8a2800a28a322800a28c8a2800a28a2800a28c8a2800a28c8a2800a28c8a2800a28a2800a28a2800a28a2803ffd1fdfca28a2800a28a2800a28a2800a28a28033bec137fcff5cffe43ff00e3749f609bfe7fae7ff21fff001bad2c8a32280337ec137fcff5cffe43ff00e3747d826ff9feb9ff00c87ffc6eb4b228c8a00cdfb04dff003fd73ff90fff008dd1f609bfe7fae7ff0021ff00f1bad2c8a32280337ec137fcff005cff00e43ffe3747d826ff009feb9ffc87ff00c6eb4b228c8a00cdfb04dff3fd73ff0090ff00f8dd1f609bfe7fae7ff21fff001bad2c8a32280337ec137fcff5cffe43ff00e3747d826ff9feb9ff00c87ffc6eb4b228c8a00cdfb04dff003fd73ff90fff008dd1f609bfe7fae7ff0021ff00f1bad2c8a32280337ec137fcff005cff00e43ffe3747d826ff009feb9ffc87ff00c6eb4b228c8a00cdfb04dff3fd73ff0090ff00f8dd1f609bfe7fae7ff21fff001bad2a280337ec137fcff5cffe43ff00e3747d826ff9feb9ff00c87ffc6eb4a8a00cdfb04dff003fd73ff90fff008dd1f609bfe7fae7ff0021ff00f1bad2a280337ec137fcff005cff00e43ffe3747d826ff009feb9ffc87ff00c6eb4a8a00cdfb04dff3fd73ff0090ff00f8dd1f609bfe7fae7ff21fff001bad2a280337ec137fcff5cffe43ff00e3747d826ff9feb9ff00c87ffc6eb4a8a00cdfb04dff003fd73ff90fff008dd1f609bfe7fae7ff0021ff00f1bad2a280337ec137fcff005cff00e43ffe3747d826ff009feb9ffc87ff00c6eb4a8a00cdfb04dff3fd73ff0090ff00f8dd1f609bfe7fae7ff21fff001bad2a280337ec137fcff5cffe43ff00e3747d826ff9feb9ff00c87ffc6eb4a8a00cdfb04dff003fd73ff90fff008dd1f609bfe7fae7ff0021ff00f1bad2a280337ec137fcff005cff00e43ffe3747d826ff009feb9ffc87ff00c6eb4a8a00cdfb04dff3fd73ff0090ff00f8dd1f609bfe7fae7ff21fff001bad2a280337ec137fcff5cffe43ff00e3747d826ff9feb9ff00c87ffc6eb4a8a00cdfb04dff003fd73ff90fff008dd1f609bfe7fae7ff0021ff00f1bad2a280337ec137fcff005cff00e43ffe3747d826ff009feb9ffc87ff00c6eb4a8a00cdfb04dff3fd73ff0090ff00f8dd1f609bfe7fae7ff21fff001bad2a280337ec137fcff5cffe43ff00e3747d826ff9feb9ff00c87ffc6eb4a8a00cdfb04dff003fd73ff90fff008dd1f609bfe7fae7ff0021ff00f1bad2a280337ec137fcff005cff00e43ffe3747d826ff009feb9ffc87ff00c6eb4a8a00cdfb04dff3fd73ff0090ff00f8dd1f609bfe7fae7ff21fff001bad2a280337ec137fcff5cffe43ff00e3747d826ff9feb9ff00c87ffc6eb4a8a00cdfb04dff003fd73ff90fff008dd1f609bfe7fae7ff0021ff00f1bad2a280337ec137fcff005cff00e43ffe3747d826ff009feb9ffc87ff00c6eb4a8a00cdfb04dff3fd73ff0090ff00f8dd1f609bfe7fae7ff21fff001bad2a280337ec137fcff5cffe43ff00e3747d826ff9feb9ff00c87ffc6eb4a8a00cdfb04dff003fd73ff90fff008dd1f609bfe7fae7ff0021ff00f1bad2a280337ec137fcff005cff00e43ffe3747d826ff009feb9ffc87ff00c6eb4a8a00cdfb04dff3fd73ff0090ff00f8dd1f609bfe7fae7ff21fff001bad2a280337ec137fcff5cffe43ff00e3747d826ff9feb9ff00c87ffc6eb4a8a00cdfb04dff003fd73ff90fff008dd1f609bfe7fae7ff0021ff00f1bad2a280337ec137fcff005cff00e43ffe3747d826ff009feb9ffc87ff00c6eb4a8a00cdfb04dff3fd73ff0090ff00f8dd1f609bfe7fae7ff21fff001bad2a280337ec137fcff5cffe43ff00e3747d826ff9feb9ff00c87ffc6eb4a8a00cdfb04dff003fd73ff90fff008dd1f609bfe7fae7ff0021ff00f1bad2a280337ec137fcff005cff00e43ffe3753c16d242e59ee6698118db26cc0f7f95579ab7450014514500145145007ffd2fdfca28a2800a28a2800a28a2800a28a0f4a00f80dbe2dfc48d51df511e219ec96e5da44b6b5b7b5f261424ed4532c3239dab805998927278ce027fc2ccf891ff435df7fdf8b2ffe46af21b2bbdb6912e7a2e3f535b9a45a6a7afea5068fa340d757b74db2289485c9c6492c7855001249e001f857f3a3ce3349d6e48579b6de894a5f72d4fc4de678f9d4e58d5936df4933d0bfe1667c48ff00a1aefbfefc597ff2351ff0b33e247fd0d77dff007e2cbff91ab3bc41f0ebc61e1bd3a4d5aebec57f6904821b97d32e4dcb5b4a4801654f2d587240c8cf24640ce6bcff00ed339758c41725e4ddb105bca5df67deda810b36dfe2c03b4f0706b7c4e2f3bc3cfd9d6ab513ff0014bfccdabe2335a32e4a939a7fe27fe67a8ffc2ccf891ff435df7fdf8b2ffe46a3fe1667c48ffa1aefbfefc597ff00235796477724cc638229e675cee48a192475c1c1dca8a5970783b80c1e2b5ffb37573e1d3e2df23fe24e27fb29b9debc4d8ce367dec63f8beef6ce6b186679bcd371ad51d936fde96cb77bf4328e3b32926e3527a5def2e9b9de7fc2ccf891ff00435df7fdf8b2ff00e46a3fe1667c48ff00a1aefbfefc597ff235796b5dc91b2acd1cd0975dca2689e22cbfde5deabb97dc64506ea4553218e5f2d54b993cb7f2c20eac5f6ed0a3b9ce01e339acff00b6334bb5ede775fde97f991fda5985eded677ff14bfccf52ff008599f123fe86bbeffbf165ff00c8d47fc2ccf891ff00435df7fdf8b2ff00e46af2e3733abac6f0dc248e37223c12a3baff00791590338f7504546f7c620a665922debb93cd8de3dea4e329bd46e1920657233c75a6f37cd55ef5aa69fde97f98de6398adeacfef91eabff0b33e247fd0d77dff007e2cbff91a8ff8599f123fe86bbeff00bf165ffc8d5e5925dc903f977114f048704473c32432104e06124556393c0c0e4f1d6b7741d2353f116a326956a63b3b98a07b965d47ccb4fddc78ce03c7bb273f2fcb8383cd694f32ce2a4d53856a97bdbe297f9970c6e65397246a4efb7c4ffccedbfe1667c48ffa1aefbfefc597ff002351ff000b33e247fd0d77dff7e2cbff0091ab82d4b4dd6747b6d36f352b578a3d5e05b9b1dbfbc79636c63e450595ce7ee11bbdb835946ea55768de19d2441978de19124407bb46ca1d47b900529e679bc1f2cab544f4fb52eaaebaf6d453c76650769549a7eb2eba9ea5ff000b33e247fd0d77dff7e2cbff0091a8ff008599f123fe86bbeffbf165ff00c8d5e5ed35ca10b25bdca31e8af04a8cdfeeab2066fc01a61bc2a4ab6548e08604107dc1c107eb594b39cd23f1579aff00b7a5fe644b33c7c7e2ab3ffc09ff0099f437c3af89be399bc73a3691ab6b126ab65aacd25acb15cc30218c882599648da18a321818f04364107b115f6557e72fc30b9f37e28784d73ff31097ff0048ee6bf46874afd6380b195f13809cb113726a6d5dbbbb72c5f5f567e87c2189ad5f0729569393526b577e8828a28afb73eac28a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a0028a28a00fffd3fdfca28a2800a28a2800a28a2800a0f4a283d2803f1f62bbdb185f42c3ff001e35eabf06fc5da47863c7f65a96b930b7b37867b679cfdd84cc06d763d9415c13db393c035e0ad77b649173d24907fe3c693ed9effad7f33e1f133c3626388a7bc5dd7c9dcfc2a857950aeab4378bbfdc7d6567e1ad3fc077f6fa8eafe36b72f73adda3dbd8e9572af05ddb89d19ae2f770f9022e58e0e063ef36703d434cf89165acf8a3c6da73ead672ddac91c5a0bfdb12c237b4015a548af1124c13202cc70c5b8ec38fcfb1748b9da02e7938e33f9529bb56186c107b1e457bb86e269e1a51fab52518a77b5dbbe925ab7bfc575a5934b47d7d8a19fca834a853518a7b5dbbe8d6b7f5bfc9687e915bf8c7c34f7faa5fd96b3a525c26a3623518e1d496ce1d90a80f39b830f997385f94c63e472bb49196233a6f1ce81243a824faf69f2585978a52e2784dd44cafa63a2b7eed14379a9e736f20770d93c107f3bbed6a719c7cbd3dbe947db0673c71d3dabd09f1c6264bf86baf57d6ff00e7af7b74b9d72e2bad256e45d7abeb73edcf8d5e28d3ae7c2b2d94d77a75dcd71aa8bad3cc3a89bf9c41fc4ea04282089938d9b8804f05aaa681f11f49d13c21f0e749b8d52d858b5e4e35cb7cc72b470a9768bce521991048558f0338cf4041f8b85daae76e067938e32697ed9ef5e757e28c454c5cb1918da4d28fc9494b5daf7b59f93b1c557882b4b132c4c6366d25f734fcb7b59f9687e96278974ebcf15683a6cf75a7de5cdc6b373736060d44ea170b01b79b2e310a2c3132f1e5ee382700b5625af8c342d1e5d1e1f895af695aaea475ebdb8b0b8b775992cad9d65585a460a9e505c85e47ca481b9b6eeaf80744f126a5e1bd520d6b43b83677b6cccd14c8aa4ab3295270c0a9cab11c83d6b3e5d41e69649e4606499da476e06e7725989c63924d7a93e37aad73aa7efdfbfbb6f76d74ad77eebd5a56d2c77cb8ae6d73287bd7f95bddfbde8fd3a1f7edaf8a62d1dbc3965e38f10e89a9f88a3d6af2e6dee5a513c305948b2aa0695153ca6704042c30a7032db72766f7c51e18b5f1069b2ea3aedac572ba56aa925b4d7d0ddac3e69429fe9440725f6fca8cdc8e83835f9c82e9546d5000f41c0a05d2a8daa028f41c0aca1c6b5e30f66a92b5d3d5b6f4b6ef76f4df4f46651e28ab18722a6ad75bb6de96ddf57a6e7e83787bc75617ba6784ef350f10d88bbb8f0fbdac72dcdc217b7d69e350249a3c7c8768752c71c9db8f9865da4f8cb4cd1aeb41b7f166bda65df8a6c341d416fefe3b88e4877bb44d14266223591d88c81b549c13b4679fcf8fb58e7a73c1f7140bb551b57000ec38159438c71118c5385dab6adbd6dcbadbbde3a3dd5da263c4d5925ee6aadd5f4b74efa6fd0fbbbe1d78fe2f12f82aebc67e319daeb55f044d7378b23a81bc5ddbb08d70a001cb14007f7457c8571aa5c5e5c4b7776fbe79e4796563fc52484b31fc589aa5ff0009d78907867fe10e5d4245d1bce339b450815a42dbf2cc17791bb9c16c67b5739f6cf7fd6bc8cd335962e8d1a4eedc16adeee5a2beeef64924deaec79b98662f134e95377f756adeedf7eb7d12577a9ee1f07ae3cdf8b1e135ff00a7e98ffe49dcd7e9c0e95f955f03ae3cdf8c3e135cff00cbe4e7ff0024ee2bf55474afd23c38ff00917d5ff1bffd2627dc704ffb94ff00c4ff00288514515fa09f621451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145007fffd4fdfca28a2800a28a2800a28a2800a28a2803e2cd4bf638d3ae351b9b8d37c53736b6b34d2491412d9a4cd12bb16d9e60913705ce012b9c6339392697fc31947ff4384bff0082f5ff00e3f5f70515f352e10ca1bbba3f8cbfccf0df0d65adddd2fc5ff99f0fff00c31947ff004384bff82f5ffe3f47fc31947ff4384bff0082f5ff00e3f5f70514bfd4ec9ffe7cfe32ff00317fab3967fcfafc65fe67c3ff00f0c651ff00d0e12ffe0bd7ff008fd1ff000c651ffd0e12ff00e0bd7ff8fd7dc1451fea764fff003e7f197f987fab3967fcfafc65fe67c3ff00f0c651ff00d0e12ffe0bd7ff008fd1ff000c651ffd0e12ff00e0bd7ff8fd7dc1451fea764fff003e7f197f987fab3967fcfafc65fe67c3ff00f0c651ff00d0e12ffe0bd7ff008fd1ff000c651ffd0e12ff00e0bd7ff8fd7dc1451fea764fff003e7f197f987fab3967fcfafc65fe67c3ff00f0c651ff00d0e12ffe0bd7ff008fd1ff000c651ffd0e12ff00e0bd7ff8fd7dc1451fea764fff003e7f197f987fab3967fcfafc65fe67c3ff00f0c651ff00d0e12ffe0bd7ff008fd1ff000c651ffd0e12ff00e0bd7ff8fd7dc1451fea764fff003e7f197f987fab3967fcfafc65fe67c3ff00f0c651ff00d0e12ffe0bd7ff008fd1ff000c651ffd0e12ff00e0bd7ff8fd7dc1451fea764fff003e7f197f987fab3967fcfafc65fe67cb3f0dff00661d37c05e2eb3f175debd3ea92e9e246b6805badba0964468cbb90ee5b08cc02f0327273818fa9a8a2bd8cbf2dc36069ba585872c5bbf5dfe77ec7a583c0d0c2c3d9e1e365bff00570a28a2bb8eb0a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2803ffd5fdfca28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2800a28a2803ffd9}\par} @@ -140,164 +139,7 @@ git push -u origin master\par} {\pard \ql \f0 \sa180 \li0 \fi0 \f1 git remote add origin git@github.com:phodal/github-roam.git\line git push -u origin master\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u22914?\u26524?\u20320?\u23436?\u25104?\u20102?\u19978?\u38754?\u30340?\u27493?\u39588?\u20043?\u21518?,\u37027?\u20040?\u25105?\u24819?\u20320?\u24819?\u30693?\u36947?\u20320?\u38656?\u35201?\u24590?\u26679?\u30340?\u39033?\u30446?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 \u29992?\u22909?Github\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u22914?\u20309?\u29992?\u22909?Github,\u24182?\u23454?\u36341?\u19968?\u20123?\u25935?\u25463?\u36719?\u20214?\u24320?\u21457?\u26159?\u19968?\u20010?\u24456?\u26377?\u24847?\u24605?\u30340?\u20107?\u24773?.\u25105?\u20204?\u21487?\u20197?\u22312?\u19978?\u38754?\u20570?\u24456?\u22810?\u20107?\u24773?,\u20174?\u27979?\u35797?\u21040?CI,\u20877?\u21040?\u33258?\u21160?\u37096?\u32626?.\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u25935?\u25463?\u36719?\u20214?\u24320?\u21457?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u26174?\u28982?\u25105?\u26159?\u22312?\u25199?\u28129?\u65292?\u36825?\u21644?\u25935?\u25463?\u36719?\u20214?\u24320?\u21457?\u27809?\u26377?\u20160?\u20040?\u20851?\u31995?\u12290?\u19981?\u36807?\u25105?\u20063?\u19981?\u30693?\u36947?\u28689?\u24067?\u27969?\u26159?\u24590?\u26679?\u30340?\u12290?\u35828?\u35828?\u25105?\u25152?\u30693?\u36947?\u30340?\u19968?\u20010?\u39033?\u30446?\u30340?\u32452?\u25104?\u21543?:\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u30475?\u26495?\u24335?\u31649?\u29702?\u24212?\u29992?\u31243?\u24207?(\u22914?trello\u65292?\u31616?\u21333?\u22320?\u35828?\u23601?\u26159?\u31649?\u29702?\u36719?\u20214?\u21151?\u33021?)\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab CI(\u25345?\u32493?\u38598?\u25104?)\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u27979?\u35797?\u35206?\u30422?\u29575?\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u20195?\u30721?\u36136?\u37327?(code smell)\sa180\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u23545?\u20110?\u19968?\u20010?\u19981?\u26159?\u36828?\u31243?\u30340?\u22242?\u38431?(\u22914?\u21482?\u26377?\u19968?\u20010?\u20154?\u30340?\u39033?\u30446?) \u26469?\u35828?\u65292?Trello\u12289?Jenkin\u12289?Jira\u19981?\u26159?\u24517?\u38656?\u30340?:\par} -{\pard \ql \f0 \sa180 \li720 \fi0 \u20320?\u23384?\u22312?\u65292?\u25105?\u28145?\u28145?\u30340?\u33041?\u28023?\u37324?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u24403?\u21482?\u26377?\u19968?\u20010?\u20154?\u30340?\u26102?\u20505?\u65292?\u20320?\u21482?\u38656?\u35201?\u26126?\u30830?\u30693?\u36947?\u33258?\u24049?\u24819?\u35201?\u20160?\u20040?\u23601?\u22815?\u20102?\u12290?\u25105?\u20204?\u36824?\u38656?\u35201?\u30340?\u26159?CI\u12289?\u27979?\u35797?\u65292?\u20197?\u26469?\u25552?\u21319?\u20195?\u30721?\u30340?\u36136?\u37327?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u27979?\u35797?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u36890?\u24120?\u25105?\u20204?\u37117?\u20250?\u25214?Document\u65292?\u22914?\u26524?\u27809?\u26377?\u30340?\u35805?\u65292?\u20320?\u20250?\u25214?\u20160?\u20040??\u30475?\u28304?\u20195?\u30721?\u65292?\u36824?\u26159?\u30475?\u27979?\u35797??\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 it("specifying response when you need it", function (done) \{\line - var doneFn = jasmine.createSpy("success");\line -\line - lettuce.get('/some/cool/url', function (result) \{\line - expect(result).toEqual("awesome response");\line - done();\line - \});\line -\line - expect(jasmine.Ajax.requests.mostRecent().url).toBe('/some/cool/url');\line - expect(doneFn).not.toHaveBeenCalled();\line -\line - jasmine.Ajax.requests.mostRecent().respondWith(\{\line - "status": 200,\line - "contentType": 'text/plain',\line - "responseText": 'awesome response'\line - \});\line -\});\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u20195?\u30721?\u26469?\u28304?: {\field{\*\fldinst{HYPERLINK "https://github.com/phodal/lettuce"}}{\fldrslt{\ul -https://github.com/phodal/lettuce -}}} -\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u19978?\u38754?\u30340?\u27979?\u35797?\u29992?\u20363?\u65292?\u28165?\u28165?\u26970?\u26970?\u22320?\u20889?\u26126?\u20102?\u29992?\u27861?\u65292?\u34429?\u28982?\u20889?\u24471?\u26377?\u28857?\u25199?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u31561?\u31561?\u65292?\u27979?\u35797?\u26159?\u29992?\u26469?\u24178?\u20160?\u20040?\u30340?\u12290?\u37027?\u20040?\u65292?\u20808?\u35828?\u35828?\u25105?\u20026?\u20160?\u20040?\u20250?\u24819?\u21435?\u20889?\u27979?\u35797?\u21543?:\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u25105?\u19981?\u24076?\u26395?\u27599?\u27425?\u20570?\u23436?\u19968?\u20010?\u20010?\u26032?\u21151?\u33021?\u30340?\u26102?\u20505?\u65292?\u20877?\u25163?\u21160?\u22320?\u21435?\u27979?\u35797?\u19968?\u20010?\u20010?\u21151?\u33021?\u12290?(\u33258?\u21160?\u21270?\u27979?\u35797?)\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u25105?\u19981?\u24076?\u26395?\u22312?\u37325?\u26500?\u30340?\u26102?\u20505?\u21457?\u29616?\u30772?\u22351?\u20102?\u21407?\u26469?\u30340?\u21151?\u33021?\u65292?\u32780?\u25105?\u36824?\u19968?\u26080?\u25152?\u30693?\u12290?\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u25105?\u19981?\u25954?push\u20195?\u30721?\u65292?\u22240?\u20026?\u25105?\u27809?\u26377?\u25226?\u25569?\u12290?\sa180\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u34429?\u28982?\u65292?\u25105?\u19981?\u26159?TDD\u30340?\u27515?\u24544?\u65292?\u27979?\u35797?\u30340?\u30446?\u30340?\u26159?\u20445?\u35777?\u21151?\u33021?\u27491?\u24120?\u65292?TDD\u27809?\u27861?\u35753?\u25105?\u20204?\u20889?\u20986?\u36136?\u37327?\u26356?\u39640?\u30340?\u20195?\u30721?\u12290?\u20294?\u26159?\u26377?\u26102?TDD\u26159?\u19981?\u38169?\u30340?\u65292?\u21487?\u20197?\u35753?\u25105?\u20204?\u20889?\u20986?\u36923?\u36753?\u26356?\u31616?\u21333?\u22320?\u20195?\u30721?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u20063?\u35768?\u20320?\u24050?\u32463?\u30693?\u36947?\u20102?{\f1 Selenium}\u12289?{\f1 Jasmine}\u12289?{\f1 Cucumber}\u31561?\u31561?\u30340?\u26694?\u26550?\u65292?\u30475?\u21040?\u36807?\u31867?\u20284?\u20110?\u19979?\u38754?\u30340?\u27979?\u35797?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 Ajax\line - \u10003? specifying response when you need it\line - \u10003? specifying html when you need it\line - \u10003? should be post to some where\line - Class\line - \u10003? respects instanceof\line - \u10003? inherits methods (also super)\line - \u10003? extend methods\line - Effect\line - \u10003? should be able fadein elements\line - \u10003? should be able fadeout elements\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u20195?\u30721?\u26469?\u28304?: {\field{\*\fldinst{HYPERLINK "https://github.com/phodal/lettuce"}}{\fldrslt{\ul -https://github.com/phodal/lettuce -}}} -\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u30475?\u19978?\u21435?\u20284?\u20046?\u27599?\u20010?\u27979?\u35797?\u37117?\u24456?\u23567?\u65292?\u19981?\u36807?\u34917?\u23436?\u27599?\u19968?\u20010?\u27979?\u35797?\u20043?\u21518?\u25105?\u20204?\u23601?\u24471?\u21040?\u20102?\u27979?\u35797?\u35206?\u30422?\u29575?\par} -{ -\trowd \trgaph120 -\clbrdrb\brdrs\cellx1728\clbrdrb\brdrs\cellx3456\clbrdrb\brdrs\cellx5184\clbrdrb\brdrs\cellx6912\clbrdrb\brdrs\cellx8640 -\trkeep\intbl -{ -{{\pard\intbl \ql \f0 \sa0 \li0 \fi0 File\par} -\cell} -{{\pard\intbl \ql \f0 \sa0 \li0 \fi0 Statements\par} -\cell} -{{\pard\intbl \ql \f0 \sa0 \li0 \fi0 Branches\par} -\cell} -{{\pard\intbl \ql \f0 \sa0 \li0 \fi0 Functions\par} -\cell} -{{\pard\intbl \ql \f0 \sa0 \li0 \fi0 Lines\par} -\cell} -} -\intbl\row} -{ -\trowd \trgaph120 -\cellx1728\cellx3456\cellx5184\cellx6912\cellx8640 -\trkeep\intbl -{ -{{\pard\intbl \ql \f0 \sa0 \li0 \fi0 lettuce.js\par} -\cell} -{{\pard\intbl \ql \f0 \sa0 \li0 \fi0 98.58% (209 / 212)\par} -\cell} -{{\pard\intbl \ql \f0 \sa0 \li0 \fi0 82.98%(78 / 94)\par} -\cell} -{{\pard\intbl \ql \f0 \sa0 \li0 \fi0 100.00% (54 / 54)\par} -\cell} -{{\pard\intbl \ql \f0 \sa0 \li0 \fi0 98.58% (209 / 212)\par} -\cell} -} -\intbl\row} -{\pard \ql \f0 \sa180 \li0 \fi0 \par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u26412?\u22320?\u27979?\u35797?\u37117?\u36890?\u36807?\u20102?\u65292?\u20110?\u26159?\u25105?\u20204?\u28155?\u21152?\u20102?{\f1 Travis-CI}\u26469?\u36305?\u25105?\u20204?\u30340?\u27979?\u35797?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 CI\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u34429?\u28982?node.js\u19981?\u31639?\u26159?\u19968?\u38376?\u35821?\u35328?\u65292?\u20294?\u26159?\u22240?\u20026?\u25105?\u20204?\u29992?\u30340?node\u65292?\u19979?\u38754?\u30340?\u26159?\u19968?\u20010?\u31616?\u21333?\u30340?{\f1 .travis.yml}\u31034?\u20363?:\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 language: node_js\line -node_js:\line - - "0.10"\line -\line -notifications:\line - email: false\line -\line -before_install: npm install -g grunt-cli\line -install: npm install\line -after_success: CODECLIMATE_REPO_TOKEN=321480822fc37deb0de70a11931b4cb6a2a3cc411680e8f4569936ac8ffbb0ab codeclimate < coverage/lcov.info\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u20195?\u30721?\u26469?\u28304?: {\field{\*\fldinst{HYPERLINK "https://github.com/phodal/lettuce"}}{\fldrslt{\ul -https://github.com/phodal/lettuce -}}} -\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u25105?\u20204?\u25226?\u36825?\u20123?\u38598?\u25104?\u21040?{\f1 README.md}\u20043?\u21518?\u65292?\u23601?\u26377?\u20102?\u20043?\u21069?\u37027?\u24352?\u22270?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 CI\u23545?\u20110?\u19968?\u20010?\u24320?\u21457?\u32773?\u22312?\u19981?\u21516?\u22478?\u24066?\u24320?\u21457?\u21516?\u19968?\u39033?\u30446?\u19978?\u26469?\u35828?\u26159?\u24456?\u37325?\u35201?\u30340?\u65292?\u36825?\u24847?\u21619?\u30528?\u24403?\u20320?\u28155?\u21152?\u30340?\u37096?\u20998?\u21151?\u33021?\u26377?\u27979?\u35797?\u35206?\u30422?\u30340?\u26102?\u20505?\u65292?\u39033?\u30446?\u20195?\u30721?\u20250?\u26356?\u21152?\u24378?\u22766?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u20195?\u30721?\u36136?\u37327?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u20687?{\f1 jslint}\u36825?\u31867?\u30340?\u24037?\u20855?\u65292?\u21482?\u33021?\u20445?\u35777?\u20195?\u30721?\u22312?\u35821?\u27861?\u19978?\u26159?\u27491?\u30830?\u30340?\u65292?\u20294?\u26159?\u19981?\u33021?\u20445?\u35777?\u20320?\u20889?\u20102?\u19968?\u22534?bad smell\u30340?\u20195?\u30721?\u12290?\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u37325?\u22797?\u20195?\u30721?\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u36807?\u38271?\u30340?\u20989?\u25968?\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u31561?\u31561?\sa180\par} -{\pard \ql \f0 \sa180 \li0 \fi0 {\f1 Code Climate}\u26159?\u19968?\u20010?\u19982?github\u38598?\u25104?\u30340?\u24037?\u20855?\u65292?\u25105?\u20204?\u19981?\u20165?\u20165?\u21487?\u20197?\u30475?\u21040?\u27979?\u35797?\u35206?\u30422?\u29575?\u65292?\u36824?\u26377?\u20195?\u30721?\u36136?\u37327?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u20808?\u30475?\u30475?\u19978?\u38754?\u30340?ajax\u31867?:\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 Lettuce.get = function (url, callback) \{\line - Lettuce.send(url, 'GET', callback);\line -\};\line -\line -Lettuce.send = function (url, method, callback, data) \{\line - data = data || null;\line - var request = new XMLHttpRequest();\line - if (callback instanceof Function) \{\line - request.onreadystatechange = function () \{\line - if (request.readyState === 4 && (request.status === 200 || request.status === 0)) \{\line - callback(request.responseText);\line - \}\line - \};\line - \}\line - request.open(method, url, true);\line - if (data instanceof Object) \{\line - data = JSON.stringify(data);\line - request.setRequestHeader('Content-Type', 'application/json');\line - \}\line - request.setRequestHeader('X-Requested-With', 'XMLHttpRequest');\line - request.send(data);\line -\};\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u20195?\u30721?\u26469?\u28304?: {\field{\*\fldinst{HYPERLINK "https://github.com/phodal/lettuce"}}{\fldrslt{\ul -https://github.com/phodal/lettuce -}}} -\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u22312?{\field{\*\fldinst{HYPERLINK "https://codeclimate.com/github/phodal/lettuce/src/ajax.js"}}{\fldrslt{\ul -Code Climate -}}} -\u22312?\u20986?\u29616?\u20102?\u19968?\u22534?\u38382?\u39064?\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Missing \u8220"use strict\u8221" statement. (Line 2)\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Missing \u8220"use strict\u8221" statement. (Line 14)\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u8216'Lettuce\u8217' is not defined. (Line 5)\sa180\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u32780?\u36825?\u20123?\u37117?\u26159?\u23567?\u38382?\u39064?\u21862?\u65292?\u26377?\u26102?\u21487?\u33021?\u20250?\u26377?\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Similar code found in two :expression_statement nodes (mass = 86)\sa180\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u36825?\u23601?\u24847?\u21619?\u30528?\u25105?\u20204?\u21487?\u20197?\u23545?\u19978?\u38754?\u30340?\u20195?\u30721?\u36827?\u34892?\u37325?\u26500?\u65292?\u20182?\u20204?\u26159?\u37325?\u22797?\u30340?\u20195?\u30721?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u37325?\u26500?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u19981?\u24819?\u22312?\u36825?\u37324?\u35828?\u22826?\u22810?\u20851?\u20110?{\f1 \u37325?\u26500?}\u30340?\u19996?\u35199?\u65292?\u21487?\u20197?\u21442?\u32771?Martin Flower\u30340?\u12298?\u37325?\u26500?\u12299?\u19968?\u20070?\u21435?\u22810?\u20102?\u35299?\u19968?\u20123?\u37325?\u26500?\u30340?\u32454?\u33410?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u36825?\u26102?\u24819?\u35828?\u30340?\u26159?\u65292?\u21482?\u26377?\u20195?\u30721?\u34987?\u27979?\u35797?\u35206?\u30422?\u20303?\u20102?\u65292?\u37027?\u20040?\u25165?\u33021?\u20445?\u35777?\u37325?\u26500?\u30340?\u36807?\u31243?\u27809?\u26377?\u20986?\u38169?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs36 Github\u27969?\u34892?\u39033?\u30446?\u20998?\u26512?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 Github\u27969?\u34892?\u39033?\u30446?\u20998?\u26512?\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u20043?\u21069?\u26366?\u32463?\u20998?\u26512?\u36807?\u19968?\u20123?Github\u30340?\u29992?\u25143?\u34892?\u20026?\u65292?\u29616?\u22312?\u25105?\u20204?\u20808?\u26469?\u35828?\u35828?Github\u19978?\u30340?Star\u21543?\u12290?(\u25130?\u27490?: 2015\u24180?3\u26376?9\u26085?23\u26102?\u12290?)\par} { \trowd \trgaph120 @@ -548,21 +390,9 @@ https://github.com/joyent/node {\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u24037?\u20855?: \u22914?{\f1 Homewbrew}\u21644?{\f1 Bower}\par} {\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u36164?\u26009?\u25910?\u38598?: \u22914?{\f1 free programming books}\u65292?{\f1 You-Dont-Know-JS}\u65292?{\f1 Font-Awesome}\par} {\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u20854?\u20182?:\u31616?\u21382?\u22914?{\f1 Resume}\sa180\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs36 \u21019?\u24314?\u20320?\u30340?\u39033?\u30446?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u38382?\u39064?\u26469?\u20102?,\u25105?\u20204?\u22312?\u19978?\u38754?\u38656?\u35201?\u24590?\u26679?\u30340?\u39033?\u30446?? \u22312?\u19978?\u31456?\u20013?\u65292?\u25105?\u20204?\u35828?\u21040?\u20102?\u19979?\u38754?\u30340?\u20869?\u23481?\u20250?\u27604?\u36739?\u21463?\u27426?\u36814?\u65306?\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u24211?\u21644?\u26694?\u26550?: \u21644?{\f1 jQuery}\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u31995?\u32479?: \u22914?{\f1 Linux}\u12289?{\f1 hhvm}\u12289?{\f1 docker}\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u37197?\u32622?\u38598?: \u22914?{\f1 dotfiles}\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u36741?\u21161?\u24037?\u20855?: \u22914?{\f1 oh-my-zsh}\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u24037?\u20855?: \u22914?{\f1 Homewbrew}\u21644?{\f1 Bower}\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u36164?\u26009?\u25910?\u38598?: \u22914?{\f1 free programming books}\u65292?{\f1 You-Dont-Know-JS}\u65292?{\f1 Font-Awesome}\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u20854?\u20182?:\u31616?\u21382?\u22914?{\f1 Resume}\sa180\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u19981?\u36807?\u65292?\u22312?\u22810?\u25968?\u24773?\u20917?\u19979?\u65292?\u25105?\u24819?\u25991?\u26723?\u31867?\u22914?\u36164?\u26009?\u25910?\u38598?\u20250?\u27604?\u36739?\u21463?\u27426?\u36814?\u12290?\u20294?\u26159?\u65292?\u24182?\u38750?\u25152?\u26377?\u21916?\u27426?\u30340?\u31243?\u24207?\u21592?\u37117?\u21916?\u27426?\u21435?\u25910?\u38598?\u36825?\u26679?\u30340?\u20869?\u23481?\u65292?\u26377?\u26102?\u20505?\u25105?\u20204?\u24819?\u21019?\u36896?\u30340?\u26159?\u19968?\u20010?\u27969?\u34892?\u30340?\u24211?\u65292?\u36825?\u20063?\u26159?\u25105?\u26368?\u24819?\u20570?\u30340?\u24320?\u28304?\u39033?\u30446?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 Hello,World\par} -{\pard \ql \f0 \sa180 \li0 \fi0 So\u65292?\u20320?\u21487?\u20197?\u20174?Hello,World\u24320?\u22987?\u35797?\u35797?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs36 \u21019?\u24314?Pull Request\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 Pull Request\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u38500?\u20102?\u21019?\u24314?\u39033?\u30446?\u20043?\u22806?\u65292?\u25105?\u20204?\u20063?\u21487?\u20197?\u21019?\u24314?Pull Request\u26469?\u20570?\u36129?\u29486?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 \u31532?\u19968?\u20010?PR\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u25105?\u30340?\u31532?\u19968?\u20010?PR\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u25105?\u30340?\u31532?\u19968?\u20010?PR\u26159?\u32473?\u19968?\u20010?\u23567?\u30340?Node\u30340?CoAP\u30456?\u20851?\u30340?\u24211?\u30340?Pull Request\u12290?\u21407?\u22240?\u27604?\u36739?\u31616?\u21333?\u65292?\u26159?\u22240?\u20026?\u23427?\u30340?README.md\u20889?\u38169?\u20102?\u65292?\u23548?\u33268?\u25105?\u26080?\u27861?\u21150?\u27861?\u36827?\u34892?\u19979?\u19968?\u27493?\u12290?\par} {\pard \ql \f0 \sa180 \li0 \fi0 \f1 const dgram = require('dgram')\line - , coapPacket = require('coap-packet')\line @@ -576,7 +406,7 @@ https://github.com/joyent/node END\line exit 1\line fi\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 CLA\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 CLA\par} {\pard \ql \f0 \sa180 \li0 \fi0 CLA\u21363?Contributor License Agreement\u65292?\u22312?\u20026?\u19968?\u20123?\u22823?\u30340?\u32452?\u32455?\u12289?\u26426?\u26500?\u25552?\u20132?Pull Request\u30340?\u26102?\u20505?\u65292?\u21487?\u33021?\u38656?\u35201?\u31614?\u32626?\u36825?\u20010?\u21327?\u35758?\u12290?\u20182?\u20204?\u20250?\u22312?\u20320?\u30340?Pull Request\u37324?\u38382?\u20320?\u65292?\u21482?\u26377?\u20320?\u21040?\u20182?\u20204?\u30340?\u32593?\u31449?\u21435?\u27880?\u20876?\u24182?\u21516?\u24847?\u21327?\u35758?\u25165?\u20250?\u25509?\u21463?\u20320?\u30340?PR\u12290?\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u20197?\u19979?\u26159?\u25105?\u20026?Google\u25552?\u20132?\u30340?\u19968?\u20010?PR\par} {\pard \ql \f0 \sa180 \li0 \fi0 {\pict\pngblip\picw1430\pich276\picwgoal14400\pichgoal2760 89504e470d0a1a0a0000000d4948445200000596000001140806000000b85963c700000c16694343504943432050726f66696c65000048899557075853c9169e5b5208092d100129a137417a95dea54a071b2109104a080941c58e2c2ab8165454b0a2ab208aae0590b520a25810017b5d2ca828eb62c186ca9b24803edfdbef7def7cdfdcfbe7cc3967fe73eecc640600457b964090852a0190cdcf134605fa3013129398a43f01027020070c80368b2d1278474686827f94f737a03594ab969258ff6cf75f4599c315b1014022214ee188d8d9101f0100d7640b847900103aa1de60569e4082df41ac2a840401209225384d86b524384586ada5363151be10fb0140a6b258c234001424f199f9ec3418474100b1359fc3e343bc1d620f763a8b03710fc413b2b3732056a4426c9af2439cb47f8b99321693c54a1bc3b25ca442f6e3890459ac39ff6739feb764678947c7d0878d9a2e0c8a92e40ceb569d991322c1903b729c9f121e01b10ac4e7791ca9bd04df491707c58ed8f7b345beb0668001000a382cbf1088612d51863833d67b04dbb284525f688f86f3f2826346708a30276a243e9acf15f9478fe2746e70e848cc65fcacf051bc359517100c319c69e89182f49878194fb4359f17170eb102c49da2cce89011fb0705e9bee1a33642719484b321c4ef52850151321b4c3d5b349a1766c5664939a843ec95971e1324f3c512b8a284d0516e1cae9fbf8c03c6e1f2634738637076f9448df8160bb22247ecb1addcacc028599db183a2fce851dfee3c38c16475c01e65b02647caf863ef05799131326e380e42812ff0034c20862d05e4800cc0ebe86fe887bf643d01800584200d7081e58866d4235edac387cf685000fe82880b44637e3ed25e2ec887faaf635ad9d312a44a7bf3a51e99e029c4d9b826ee81bbe1a1f0e9059b2dee8cbb8cfa3115474725fa13fd8841c400a2d9180f36649d059b10f0fe53f7dd93f094d0457844b84ee821dc0621b0970b739630e48f6516079e48a38cfc9ec92b14fec49c09c2400ff40b18c92e057af78ddae0c690b503ee83bb43fe903bcec03581256e0f33f1c63d616e0e50fb2343f1188befb5fc793c09bf1f731cd12b982b388cb04819e3ef3b66f57314df1f6ac481ef909f2db165d861ac0d3b8d5dc08e630d80899dc21ab176ec84048fcd8427d299303a5a94945b268cc31bb5b1aeb5eeb3fef21fa3b3461808a5df1be47167e74916846f8e608e9097969ec7f4863b329719cc675b4d60da5adb380020d9df65dbc75b8674df461817bfeb729b01702981cab4ef3a960100c79e02407fff5d67f0062eafd5009ce8648b85f9321d2e7910000528c295a10174e0bf8729ccc916380237e005fcc16410016240229801ab9e0eb221eb59601e580c8a4129580dd6830ab00dec04d5603f38041ac071701a9c03974027b80eeec2b9d10b5e8201f01e0c2108424268081dd140741123c402b1459c110fc41f0945a2904424194943f8881899872c414a9132a402d981d420bf23c790d3c805a40bb98d3c44fa9037c8671443a9a82aaa8d1aa3135167d41b0d4163d0e9681a9a8b16a045e84a74235a85ee43ebd1d3e825f43ada83be44073180c9630c4c0fb3c49c315f2c024bc2523121b6002bc1cab12aac0e6b82dffa2ad683f5639f70224ec799b8259c9f41782ccec673f105f80abc02afc6ebf156fc2afe101fc0bf1168042d8205c195104c4820a41166118a09e584dd84a384b37045f512de13894406d184e804d7662231833897b882b8857880d84cec223e260e9248240d9205c99d14416291f248c5a44da47da453a46e522fe923599eac4bb625079093c87c7221b99cbc977c92dc4d7e461e925392339273958b90e3c8cd915b25b74bae49ee8a5cafdc104599624271a7c45032288b291b297594b3947b94b7f2f2f2faf22ef253e479f28be437ca1f943f2fff50fe1355856a4ef5a54ea38aa92ba97ba8cdd4dbd4b7341acd98e6454ba2e5d156d26a6867680f681f15e80a560ac10a1c85850a950af50add0aaf14e5148d14bd1567281628962b1e56bca2d8af24a764ace4abc4525aa054a9744ce9a6d2a0325dd9463942395b7985f25ee50bcacf55482ac62afe2a1c9522959d2a67541ed331ba01dd97cea62fa1efa29fa5f7aa12554d54835533544b55f7ab76a80ea8a9a8d9abc5a9cd56ab543ba1d6c3c018c68c6046166315e310e306e3f338ed71dee3b8e3968fab1bd73dee83fa78752f75ae7a89fa01f5ebea9f35981afe1a991a6b341a34ee6be29ae69a533467696ed53cabd93f5e75bcdb78f6f892f187c6dfd142b5ccb5a2b4e66aedd46ad71ad4d6d10ed416686fd23ea3ddafc3d0f1d2c9d059a77352a74f97aeeba1cbd35da77b4af705538de9cdcc626e64b63207f4b4f482f4c47a3bf43af486f44df463f50bf50fe8df37a018381ba41aac3368311830d4350c339c67586b78c748cec8d928dd6883519bd1076313e378e3a5c60dc6cf4dd44d824d0a4c6a4dee99d24c3d4d734dab4caf9911cd9ccd32cdb698759aa3e60ee6e9e695e6572c500b470b9ec5168bae0984092e13f813aa26dcb4a45a7a5be65bd65a3eb46258855a155a3558bd9a68383169e29a896d13bf593b586759efb2be6ba36233d9a6d0a6c9e68dadb92ddbb6d2f69a1dcd2ec06ea15da3dd6b7b0b7baefd56fb5b0e74873087a50e2d0e5f1d9d1c858e758e7d4e864ec94e9b9d6e3aab3a473aaf703eef4270f17159e872dce593aba36b9eeb21d7bfdd2cdd32ddf6ba3d9f6432893b69d7a4c7eefaee2cf71dee3d1e4c8f648fed1e3d9e7a9e2ccf2acf475e065e1cafdd5ecfbccdbc33bcf779bff2b1f611fa1cf5f9e0ebea3bdfb7d90ff30bf42bf1ebf057f18ff5aff07f10a01f9016501b3010e8103837b03988101412b426e866b076303bb8267860b2d3e4f9935b43a821d12115218f42cd4385a14d6168d8e4b0b561f7c28dc2f9e10d11202238626dc4fd4893c8dcc83fa610a7444ea99cf234ca266a5e545b343d7a66f4dee8f7313e31ab62eec69ac68a635be214e3a6c5d5c47d88f78b2f8bef499898303fe152a266222fb13189941497b43b6970aaffd4f5537ba7394c2b9e7663bac9f4d9d32fccd09c9135e3c44cc599ac99879309c9f1c97b93bfb0225855acc194e094cd29036c5ff606f64b8e17671da78febce2de33e4b754f2d4b7d9ee69eb636ad2fdd33bd3cbd9fe7cbabe0bdce08cad896f1213322734fe670567cd6816c727672f631be0a3f93df9aa393333ba74b60212816f4e4bae6aecf1d108608778b10d17451639e2a3ceab48b4dc5bf881fe67be457e67f9c1537ebf06ce5d9fcd9ed73cce72c9ff3ac20a0e0b7b9f85cf6dc96797af316cf7b38df7bfe8e05c88294052d0b0d16162dec5d14b8a87a316571e6e2cb85d6856585ef96c42f692ad22e5a54f4f897c05f6a8b158a85c53797ba2dddb60c5fc65bd6b1dc6ef9a6e5df4a3825174bad4bcb4bbfac60afb8f8abcdaf1b7f1d5e99bab26395e3aaadab89abf9ab6facf15c535da65c5650f6786dd8dafa75cc7525ebdead9fb9fe42b97df9b60d940de20d3d1b4337366e32dcb47ad3978af48aeb953e9507366b6d5ebef9c316ce96eead5e5bebb6696f2bddf6793b6ffbad1d813beaab8cabca771277e6ef7cba2b6e57db6fcebfd5ecd6dc5dbafbeb1efe9e9eeaa8ead61aa79a9abd5a7b57d5a2b5e2dabe7dd3f675eef7dbdf586759b7e300e340e94170507cf0c5efc9bfdf381472a8e5b0f3e1ba234647361fa51f2da947eae7d40f34a437f4342636761d9b7caca5c9ade9e81f567fec39ae77bcf284da89552729278b4e0e9f2a3835d82c68ee3f9d76fa71cbcc96bb6712ce5c6b9dd2da7136e4ecf97301e7ceb479b79d3aef7efef805d70bc72e3a5f6cb8e478a9bedda1fde86587cb473b1c3beaaf385d69ec74e96cea9ad475b2dbb3fbf455bfabe7ae055fbb743dfc7ad78dd81bb76e4ebbd9738b73ebf9edacdbafefe4df19babbe81ee15ec97da5fbe50fb41e54fd69f6e7811ec79e130ffd1eb63f8a7e74f731fbf1cb27a2275f7a8b9ed29e963fd37d56f3dcf6f9f1be80bece17535ff4be14bc1cea2ffe4bf9afcdaf4c5f1df9dbebeff6818481ded7c2d7c36f56bcd578bbe79dfdbb96c1c8c107efb3df0f7d28f9a8f1b1fa93f3a7b6cff19f9f0dcdfa42fab2f1abd9d7a66f21dfee0d670f0f0b584296f42880c186a6a602f0660f00b444787680f7388a82ecfe25154476679422f04f587647938a23007bbc00885d0440283ca36c85cd08622a7c4b8edf315e00b5b31b6b23224ab5b395c5a2c25b0ce1e3f0f05b6d00484d007c150e0f0f6d191efeba0b92bd0d4073aeecde2711223ce36f97dcadc06583a5e067f917e94b6af9cfd2c7fc0000000970485973000016250000162501495224f00000019e69545874584d4c3a636f6d2e61646f62652e786d7000000000003c783a786d706d65746120786d6c6e733a783d2261646f62653a6e733a6d6574612f2220783a786d70746b3d22584d5020436f726520352e342e30223e0a2020203c7264663a52444620786d6c6e733a7264663d22687474703a2f2f7777772e77332e6f72672f313939392f30322f32322d7264662d73796e7461782d6e7323223e0a2020202020203c7264663a4465736372697074696f6e207264663a61626f75743d22220a202020202020202020202020786d6c6e733a657869663d22687474703a2f2f6e732e61646f62652e636f6d2f657869662f312e302f223e0a2020202020202020203c657869663a506978656c5844696d656e73696f6e3e313433303c2f657869663a506978656c5844696d656e73696f6e3e0a2020202020202020203c657869663a506978656c5944696d656e73696f6e3e3237363c2f657869663a506978656c5944696d656e73696f6e3e0a2020202020203c2f7264663a4465736372697074696f6e3e0a2020203c2f7264663a5244463e0a3c2f783a786d706d6574613e0a36eba8fb00004000494441547801ec9d07bc5e43fac70709910821848434355a4427ec8a6e2d56b796d556dbc2aabbcbea75d565f15f6557598bd53babad2889846821420a418a12294813e13fdfb979ce9df7dcf3deb79c7baf7b737fcfe773effbbee79c9933e73b73e67dcf6f9e7966a1efbdb90aecfdf7df0f4777ebd6ad82543a540444400444400444400444400444400444400444400444400444400444a0b1084c9c383164bdf2ca2b37d6290af25db8e0933e8880088880088880088880088880088880088880088880088880088880088840090212964b00d26e111001111001111001111001111001111001111001111001111001111081420212960b79e893088880088880088880088880088880088880088880088880088880088840090212964b00d26e111001111001111001111001111001111001111001111001111001111081420212960b79e893088880088880088880088880088880088880088880088880088880088840090212964b00d26e111001111001111001111001111001111001111001111001111001111081420212960b79e893088880088880088880088880088880088880088880088880088880088840090212964b00d26e111001111001111001111001111001111001111001111001111001111081420212960b79e893088880088880088880088880088880088880088880088880088880088840090212964b00d26e111001111001111001111001111001111001111001111001111001111081420212960b79e89308888008888008888008888008888008888008888008888008888008884009026d4aec2fba7bd6ac5945f769870888800888800888800888800888800888800888800888800888800888c0824b401ecb0b6eddeaca44400444400444400444400444400444400444400444400444400444a0510854edb1bcf4d24b374a8194a90888800888800888800888800888800888800888800888800888800888406504a64e9d5a59829c47cb63392740251701111001111001111001111001111001111001111001111001111081d64640c2726bab715daf08888008888008888008888008888008888008888008888008888008e4242061392740251701111001111001111001111001111001111001111001111001111081d64640c2726bab715daf08888008888008888008888008888008888008888008888008888008e4242061392740251701111001111001111001111001111001111001111001111001111081d64640c2726bab715daf08888008888008888008888008888008888008888008888008888008e4242061392740251701111001111001111001111001111001111001111001111001111081d64640c2726bab715daf08888008888008888008888008888008888008888008888008888008e4242061392740251701111001111001111001111001111001111001111001111001111081d64640c2726bab715daf08888008888008888008888008888008888008888008888008888008e4242061392740251701111001111001111001111001111001111001111001111001111081d64640c2726bab715daf08888008888008888008888008888008888008888008888008888008e4242061392740251701111001111001111001111001111001111001111001111001111081d64640c2726bab715daf08888008888008888008888008888008888008888008888008888008e4242061392740251701111001111001111001111001111001111001111001111001111081d64640c2726bab715daf08888008888008888008888008888008888008888008888008888008e4242061392740251701111001111001111001111001111001111001111001111001111081d64640c2726bab715daf08888008888008888008888008888008888008888008888008888008e4242061392740251701111001111001111001111001111001111001111001111001111081d64640c2726bab715daf08888008888008888008888008888008888008888008888008888008e4242061392740251701111001111001111001111001111001111001111001111001111081d64640c2726bab715daf08888008888008888008888008888008888008888008888008888008e4242061392740251701111001111001111001111001111001111001111001111001111081d64640c2726bab715daf08888008888008888008888008888008888008888008888008888008e4242061392740251701111001111001111001111001111001111001111001111001111081d64640c2726bab715daf08888008888008888008888008888008888008888008888008888008e4242061392740251701111001111001111001111001111001111001111001111001111081d64640c2726bab715daf08888008888008888008888008888008888008888008888008888008e4242061392740251701111001111001111001111001111001111001111001111001111081d64640c2726bab715daf08888008888008888008888008888008888008888008888008888008e4242061392740251701111001111001111001111001111001111001111001111001111081d64640c2726bab715daf08888008888008888008888008888008888008888008888008888008e4242061392740251701111001111001111001111001111001111001111001111001111081d64640c2726bab715daf08888008888008888008888008888008888008888008888008888008e4242061392740251701111001111001111001111001111001111001111001111001111081d64640c2726bab715daf08888008888008888008888008888008888008888008888008888008e4242061392740251701111001111001111001111001111001111001111001111001111081d64640c2726bab715daf08888008888008888008888008888008888008888008888008888008e4242061392740251701111001111001111001111001111001111001111001111001111081d64640c2726bab715daf08888008888008888008888008888008888008888008888008888008e424d02667fa66957cecd8b1eed9679f7503070e74efbefb6e52b665975dd6f5efdfdf6db5d5566e934d36718b2fbe78b26f417a3379f264f7cc33cfb8366d6aab75a79d76721d3a74689197f9fdf7dfbb37df7c33d465dbb66ddd628b2de6a8cb4d37ddd42db4d04299d7c4f123478e741c3f77ee5cb7cb2ebbb825965822f3d87823e7a2ed4c9932c57dfbedb76eedb5d776ebaebb6e7c488b7e4fdbe0faf87bf9e597936b59649145dcb6db6eebb6d9661bb7d9669b95c52a49ac37ad9a006deae9a79f0ef7daf6db6fef965c72c956cda3255f7c6baccb77de79c70d1f3e3c7c3feeb8e38e6ed145176dc9559894dd7e07f09dd6af5f3fd7a74f9f645f737b3367ce1c3764c810f7e8a38fba175f7cd17df3cd37491137d86083f09b8defa715565821d91ebfb16be5374fd7ae5dc3efbc787f35ef3ffcf043f7d24b2f55fc1ba2d8b9ac8c2da13e8a5d43b5db5f1c31d90d1d35c5f16b6dcf2d5672bdbab4af36ab56936ed294d9ee804b873a7ffbba3dfbafe88ed975d5cc6b3fe3df23dc0b9eef220b2fe4eefb737fb764fbdadffd9909e66fa44e86bc37c575eeb8a83b68db9e217d7dc737d77d1f7f3ecbdd33687c28ded67d9773fd56eed45c8baa72b51002dc73b73c33ce4d9f31d7f5ecd2c1edbe79b71652f29655cc275efbd4fde5ee1a8de6e2c3faba8d575bba655d804a2b022250944079bf448a266f1e3b781038ebacb3dc5b6fbd9559207ed83ff4d043e18f03fefce73fbb9ffdec676ee185172c876d44d14b2eb9a480c1ca2bafecd65f7ffd826d2de1c3f8f1e3dde1871feea8bbd87af4e8e1eebefb6e87205acc2ebdf4d264d7c48913dd09279c907c2ef666f4e8d1ee0f7ff843b2fb98638e592084e5993367ba6baeb9c6dd79e79dc9b5c56fe6cd9be79e7cf2c9f0c77618ecbdf7de0bdcbd115fb3de370c01fa1bbbd7a64e9d1aeed786c959b93435813c753961c204f7c9279f84c1bedebd7bbba5976e190f0923468c48da6fb76edddc861b6ed8d4d8ab3adf575f7de5f8be42a864a0b567cf9e05f9c4bf030e3becb0662b2c2328f3dd1c8bc9f185bcf6da6b8ebfbffef5afeec0030f74bffbddef0a06cd3936bed6727e1bc4f967bd87e9b5d75eeb9e7aeaa9643703f3bbeeba6bf2b9d23771199b737d547a5de51c3f6ccc54f7c8cb93c2a16bacd4b1626179eeb7dfbb816f7d16c4cf45db2cecb6586b59dfcf149e79f297dfb8d7c64e0d426cb765dab9757b2d5578400bfbf4c09009e15a28f6807597cb2c3dc2d79077bf08fb56ebb684ebb878f98f72d4c9a3afd4d4c94acb2eeeb65f7ff9cc7334f78d93a6ce720f0d9d188a39f9cb3912969b7b85b580f24d9f39d7fdfbd98fdcbcefbe77ed175bc4edb24957d766915487d302aea3391711f1fecee73f0e4584ed5a3de490d29ceb4b6513814a09b47865f591471e717bedb5571d5179d555577578ebfef8c73faee38974fef9e7bb5ffef297eeebafbfae9457b33ebe3eb1b559173c55b8d9b367678aca1c56cafb78bdf5d60b0fa196e5edb7dfeede7efb6dfb98f9fadd77dfb9534f3d35d9b7c61a6bb8030e3820f9dc52df20ceefbcf3ce89a88cd7d785175e9878873dfffcf3eefefbef77279f7c72728f5c7cf1c5eee8a38f5ee0ee8d965a87cdb9dc717f536c0641732ebfca564b204f5d0e1e3cd81d75d451eec8238f0c82676daecdfb5deca1dc920699274d9a1458c39cdf3f698beb92593ecdd1eebaebae2014c7a232e5de72cb2dc37716427f6cfffef7bfdd6f7ef39b309b28de1e5f6b972e5de25d55bdffe28b2fdc73cf3d57909641596631556b71199b6b7d547b6da5d2b56b5beb0080305ca9cd98f3adbbe89ef7dcb9ff19e92ef41e6e083e697bff93afdd8577bd1b3ce0ee78ae46b0481fd3523efb9fa2eee1a135a2eff29d162b2aba3cf3e6676eeebc1a16fbfdb87b1db1bdbeeb8deba4bee39afbbe368bd4b6a7c5dad6be6feee556f99a2f81b6be4d3103005ba25d9b8aeeabe67b55cdab641f7c3ac3f1876dd3b78bebe0057c990888c08243a0fc61ee6678cdfff9cf7f128f238ac783e205175c10a6f4b76bd7aea0c43c8ce1e9faaf7ffd2b6c7fefbdf7828076f3cd37d7f1822948a80f4d4e004fa6b4a7b21562955556099e71f639eb1581e3bffffd6f92c769a79de6eeb9e79ea2f58c37fbb871e392acce3efbeca2c7260735f3371f7df491db73cf3d9352e2d1ffd39ffeb40ebbf6eddbbbfdf6dbcfedbefbeec1b319211e2fb1934e3a297c8e1f8a93ccf44604444004e61388055a4210b514237c82f56f71f8a8e65e7e2b33e54cffce69ee65a77c84636200d38c014fbe739959150bfc7c27e33d4cb81d8cefa5ebafbf3e08cc96367e65764e5e7be18517ea785013566dcc9831cdd6f33bef3537e7f426f4202817137a6281b1dda22d5b601c3c72b29bf5cdbc50257bf9d0212672c57584b66e2120165f7411d77fcdcef16ebd17011168000273e7f9511e598313b8777ef81a669eeceb07c5642220020b168116fb2b8c58ba360d9b2a21c6270f2c03060c08a220537311d7f040c188bf77ecb1c706ef4df37ae581e1b6db6e0bfbf5aff91098366d5a4161102ef01a1a3a74a83bf3cc330b1e3e0b0e9cff01b1940106333c771196b30c013b7ec8fdf5af7fedf0766fc9466c69bcbbccfef18f7f8458d37895328d7aa08f417eebadb786419661c3868529d578521d7ffcf1e11e211ddb1f7cf041cb42af22200222b0401160a08def14fe16a478facdb992befcf2cb20225b19991dc477336148625199fdbd7af5727ff9cb5f0abecb6eb9e5961076c5d237e42b3397ecf720bf397efef39f27d93ff6d863c97bbd1181c620c014f17b074f08592328efb841765cf15113be72c461c67eb2d10aae1a4ff09058ff44400444a00909cc99fb9dfb9f9f6d81add87971d7dbc7b1968980082c58045aa4c732d3121118cd983e79de79e78507937befbd374cf7b77dbcb280cd6f7ffb5b77f5d55787f88f84c7b00785ebaebbceedb6db6e45e34222c47dfcf1c78e07228c85ff565a6925d7b973692f01e2d77efef9e7eeb3cf3e73e64d43fc49fe965b6eb93adea3e104a97fc42e45189d31a366ea48c78e1ddd8a2baee83a75aa6ca10ac4da0f3ef8c0b1580e5e655cc3f2cb978eadc6f57ffae9a78ef470e7fa11e6b9866596592655daba1f2b4d4f8cc3f4b453e2441347d2f695e35d86f7d3befbeeeb98728b11a79176c2759b911f6dc2a6e32eb5d452eea0830eb2dd99af08d1d427e22de528b72e6807fc910efed41f5377cbb996cc82d4b31141988115ecf2cb2f0fed9f6b7df8e187dd39e79c5327253195a9cf1b6eb821c45786130b29fded6f7f0bd392b3bce2c88fd8aac48fe43ded921897763db4333cebec33278debd5b6c39318e97c860b79d8c08f15946b81b99d8769d25965b2e3390f69a64f9f1ecec9b1c422a5bd66856c88cb6579147bb572a7f7d38688e74d3f4139b9063cf18a2d9c49dfc07188195c37e5220f06c3ec5ea74e68af69c1257d6e3e739f71cdd6cf70ee72eeefacbce26d9493d91ed433e560813ef8c3218b659cd6de57cac6d2d92b9ce2b6065beebbfada006967cd9a1598c0c6ea8476c07d5ea935747d55db8f50ee6ad336445dc6dcb86f6807f46966762f51e7d6ae6d9fbda6db2aeddcda941d53ed6ba5fd6c563f953e37e5a5fdd97727f755fcfd4fe8263858dfd0d06d252e0f7c8d31db69d7fcc1bb549805fa07ee63ea8bfeba543f6ae74dd7579ebe85c5852d0419bf2588ff5fea3e6646cd1d77dce1f82d04db37de78238439b3f235d42b8e063673090705d678b8efbefb025b42461d71c411815b439dafa9ea23dd3e693f5c27df555931d1abed6fcbe54208873113bf76c4c5fdd6bf5f6e291ff2a1fb92fefba530078ec37b97f260df7cfb9dffbee4759e239c83ffca0ce120d86ec6a1fccdf4e9e229d69ce7bbf9f920c4f2f6fd4f66b8895366b9b93efd123e46f16add3abaa597283de362dc6733dd84c9b3dc9cb9f382a8dba5533bd76bf9f6f50abc9411af6b2bb795377efd74da6cf7d6b8e961d3a66b2c537431be7b5e1c1f8ee1fa7fb65961c818cb6fc69c7981f1179e31d7bba28fa5dccb8b38a429d7885dfd8167f4d5acb9e1bb9e6becbd7cb610c4f9dafa78a9a5446eeab30d15edcbc1f169abe49ce9b4c53e73ce5113be7653befa26b4a54e4b2cea565ea183ebd4a1785d37647ba15c955e173c61698cb817de787f9a9bfaf5376edd9e4bb9ae3e96b8d99733bf0da105b83e6c297f5ddd7d7d735fe535cacd40c66ccf90f2f4f2f54f5c6eb374396dbbbd56c3ded2f2da50e9b90f98d9b0c2d2edfc7dbe44721f84f2fbed6ddbd46d8b7139b2de7ff4f94cc70292f4036d3d9bd557ece8085f93d7a8eb773efa32b457f2aaa43ed3fd5a071fce833aabaf5ce97b92f30f1b3dc5d1aea8f32e84e4f1fd73dc77b0efbdf15f85be8163e85f8af50d318fe7defedccdf6e232f673efad9ceef3edd8982df5d67db9d2fd17d7c1f5338b83b212879efbdefa2f84ecb8eeed5c59afe4f3aebfbe4fa6ceaee9333a2ceaeb7789f03d91757c9aa1a59fe4bf5fb0a57d9fc3b9f99e9189c0824ea045b672442fc4560ccf12421d2072fcf18f7f74fffbdfffead4190f223c14989d71c61941c0629a250f642cfa87d81c1b62176224e7ca32bc5a4f39e514474cdfb4f14398f00a175d7451c83fbd9fcf941b4f5944bc2c2b757e564c2736ee6aabad96953cd986b882787af3cd3727dbec0d69afbcf2ca2070da367be5218b873e56472f66f531a8343d0f3f089c3c6ca58dbc36db6cb3b099f8bf3cf09532da0383092cc2630fa4c4d686854d25666a6d1ca31216882159469ce6b3ce3a2b79f08c8fd961871d425d2090a48db01ea79f7e7a28437a1fe538f1c413438c702b53fa984a3f234a325882d1b6ac7ddd74d34deefffeefff32b38bbdb9d75e7bed10a39a768f00c014e075d659274947db66660002b50904b6936bc0c30cde788cd3c61f7df4d1205a938ef01ae48ba0f0c0030f84d0347853a78d859a985dc0b9897dcd4370da8e3beeb810073b163739079eedf14c86381d423ef7beb525f6513f2c0a558ec5d763c723e4fef39fff7478d265198356e49f1e8441e467300ca36e10a55954346d9c13817fa38d364aef0a9f19f4a19fb2e9e2f141dcdfd453a93e224e63ef6149dd518ff491b151cfb469bc0debb36ad9589e94e189279e08d7902e03c7707f331094be7710c2fefef7bf27834a969fbdd277f29dc12046b9d650f5556d3f4239ab4ddb107599e644ddb2002ef77a6cccf83063a02a5e381671f6aaabaeca6cabd4217d3b6b1f98406bf994f35a4d3fcb3df3a73ffd29644f0cdf3e7dfa149c0a01ff8a2bae0861950a76f80fcc90fad5af7ee5e887f8ce8abf971aaaada4cf4919294f6cfc86e10fa33f615d89d818d8e2fb93c568d375c5712cd6bacf3efb84df4f713ade3774df82a019f793cc902967809c6ba08c84c1c0e2818cb0a101fe718fc4bf05e0c800d48f7ef4238718ceefa8975f7ed96dbbedb6b9ced694f5c135b1983383eb6badb556f80d38d0cf56a2efb3fe94df049b6cb249b8a66afbdb728120bedcf2cc87eee6a7c7d5498210f087bdd6703b6db842d8f7c46b9f8698c9f181d3bc50b0c3e9cf874d2c048890f1df570b7f2f0e7ceb73bfd8df73e19883b6e9e90eddbe979b317b9edbf3fcc14198465cf8e9c65ddd3f9ffc20335ef39add3bba730e5cc72dbbe4a2f1a9c3fb07874c74d73c3226896d9c3e60b74dbbb963775bb5207c051e7a7b9c3738096f71eabe7d8a2e96f7b05fe4d06248133739cbb89617464c0ebb10b2ba2fdbbee03084b2f37d3cea97e62fec17ef6ce7e3109fe4192f5e22a629f14fcfbd6364120735ce63c9f66ddc9ff75bd36db27a8d530982f95ee7bfe4be9efd6d38ece2c3faba8d57abfb3b989dd73ef6bebbf3859a18d85bf94509cffac55a49d6959c334954e20de2d785778d7443de9b927924757dda7e6bb96e9ddb15ec6fa8f642a6955e97bf65dd09ff783388c80c72dc734affc0ec8627de0fa219799eb4e7eaeea7cb74755f7821f93c5fd708ce5986b07cc6fe6bb9757a56be38dac77ee0e49cdbdf716326d55d870851fed73bafe24ebff5ed2012a6eb92b254cbdeae236f7adae50577beeb1032d3c67d401bfef7c08f82380ae7bbfeb479d98bf43dfff66477c9bdef256d3ece7f15cfe69c5faee35844b45263d0ecf20746250b6ba6d3d3779de2fb8fb53316bba3ddd046fee317c5e37dda680bbfdf6d35bff869a143dc6b63a7b9137d7bc3e81777d8607977c20d6f26fd90e543ff7ce961ebb97eab740aeda218d74b7eb55ed1f646b96cd13e66646cb54edd85499f7ee33377e583a333d91247fd80013ddc815bf72c10b92923fd398b2e62bfdaa1b71bfade17eeed0f6b9c01c3c6f9ffc8e3889d56767bf55f31de9cbca78cb73c33cefdeb7f1f6672dc76bd2eee4ffbf429682b6986303efdd61175187212be238efbd96a75ca9f14406f4460012090f21168fe57c48fdfc71f7f3c2928ab6ce385c6434796a89c1c18bde9dbb7afdb71c71d932da3468d4adef306e18c05018b89ca1c83e8c58325319b299319ef79f83bf7dc73931fefb62f7ee5873d0fa5c4894e1be72d757e44d1fdf7df3f78a1a6d3c79f11e8b244658e616579bc7ad302210f1f887bf589caa43706c4258cad9af4786ee21156ca6221b1d4b13cc421269bbdf2ca2b8eb26108d9b1d73bd71b0ba8e1a0f9fff0563ae4904332054e0e79f2c92783d73b42446ca44354cc7aa0e738bcaf185c40d08edb509c47a5ef1111ec7c881d7899f2401c8bca0891b018346890db669b6d0a4ec194703cf24c241f316244b29f3222622046a4db0c07713d0c7620465afab8be1094311ed2b9ffb24465f623a0fce217bf087f59a232c7708f313bc18cf6437d161395390eaf67ea83450bcd988d50ad51df886bb15892ce8b01a65d76d9c511d33db698cba1871e9a292a733cfd04f548bda68dba613a7f96a8ccb1dcdff4118435a9c4a86706c518483101224e4f3db38fbc8b591e36e4497d1277351641d2e762e00b7139f6e044544684b2990ae9347ca6ef649abb0d4e661d93ded610f5556d3f4259aa4ddb1075996651ee67ead08cd055dc2bc5da2a6d8afa647031ab6fb17cb25eabed67e3f3d027c546db60508858fd59c680256dc80642e3f611bfaff6de4e9f937a8cfbadf47e3e8f1d3bb6ce66fa43bedbec3b217d00df3ff04b5b63f42d0c96db3dc780597a303f5d86f833eb263078c0dfaebbee1aef6a90f7f41b368b8def290644a847da80196b74d04ef35853d7878582c33b9ddfcd7c77c77dba0da457dbdf56c2e26c2f546589cae4e19b7758a46fc8bb3522e0c88feb8a02f1b9f0687b754ce1a056bc9ff7a3bd5734f6ad8f95cafd83f7e7842f66b9ebfffb7ee6433fc78efcf82bf7f38b863884b5d8ae7e788cbbc20b1e78f315b387864e747fbce9ad702d760c9e9e9cbf94d1553ee4856bac8b1781b2c423f63d3bfcb32090f31e7104c1c70c0fbdbdbd809e252a730c9e820891c5ea806310ad0fbb6258a6a8cc7e043faef1f16135823e31b057f59e78668f0f9b646f0b5eb9bea7dff834d9b65314e6a3d2732699d4f3064fd2bd2f185c54542629757de06543eb1cd310ed85fcabbd2eea11ebe4bd246f7cea83d05eb93fccf010c593f817170f2d2a2a73ece7d3e7b863af7b3d785e5ada725ef1d43cf8f297334565d2e3e97ff28dc313cf53af1116581ef66494373d832bfbfd6548a6a84cfedc07a7ff7b441095b97f68c3f17dc431c5ec9a47c6ba336f1b91297c9266ac6773d0652fd7e93f8ae567db11c2f7b9f0a5a2a232c7d177fdeeefafbbe7fce0596ca43df48a571c0b97c6ed243e86b6709a1f08b8e1bf1fc49b0bde3ffaca24f7fbebdec8ec1bc9f7c47fbee9f6f4836459a23219c1f5b8ebdf08031e0519cfff30de97df16edfbf13acbd6f1debdfcfe51eefc3b471665cb20dd8d4f8d73bff7e7b001383bcfdc6f6b6f1044e62c519963c983be9cc55ed3461ff5ebff7b2d0c7e16e3c8a2a9075c32d4cf72a93d5f9c0f0c4fbde5ed3ae5b363f88eb8da0f4eca44604126d0e28465c4471e52cdb6db6ebb30353816a97868c18b10f10ce1d6442ed2308d1ae10c4f19db1e3f08bef3ce3b411cb3fc4bbde24d88579d19628ec5e9b36dbcf6efdfbf8e4714db79d088c533446e04e7720df1054fb66a8d876b1ed6cc7850c6b3346d84a328f62088679a3d70559b9e1ffee518827025b6f1c61b173c1c2288e16d872869a2006de2a8a38ecaccf6d5575f2d10a71109f130e521130f79338409eacd442ea69922189be1398cb71e1eb5784dc79eee2c9897250a58da4a5e69f318de7778aaf2c018c7904618c60b8b36cfd4693c82b97e8cb00bfce13188e732168b2f8842dc57665c13f71dd3851948b17cd85f4cc8b0b4f68a3088c7f48d37de5810db9a410b8c7b192f68c27be089ddab57afb09d7f70b4f63072e4c84418601f620af5c414ea0b2fbc30b9d7d987d7b2a55b7df5d583d88c475ffcc7800cdee4b1316d9829e418f58ce77c7c9d9c13519cf8d5b1e7260ff21c9b8e1d1ee7cd7b78e269cbb5e27dc8b59bd18fc5f708c26d3c0b83baa62fa25dd3a758df467aae253de861f966bde24d1e7bb1134a887251cfb4e95231c81b820d75177b1012331c06b0c5abd50cd1dc3c19d986906fd78a17ec09279c10ea8401c0b85fa54e103263a69667b9af95d457b5fd0865c993366f5d166341db64b08d7b040e66f41f7c7f309b877683e1a9cc20ac19f5c200147da185a2b27d088fa4b7ef13db5eec354f3f1b7fefc7f9d337309863021ce54590e39ea01dc562639caebef795b49562f9b0182bbc197433a31ef81ea2efc213bf9811be827e94fe81fb85c17833fa0deb0fd9d6587d4bcc9bdf13711f6565a9ef350e3752df71d5ec23ceb67dd7f11d6ffd3c6dd8ca495f936720322e5753d5878551e2bb3b1e4867f68e796553ae6afbdbf89aca7d8fe7ddc97baee1aefbdd860eafe258d4b9d97b8bf153b06fafa5dcf6fd96775bf725645c6dce03bca7eb8edeab0e61923fbcec365cb5d6439663090fb1fdfacbbb4d7c38098ca9d4b4bdb4288cf7d86587afe7ce3b689dc40397e3112d8ebefad5443c40c47b60bee8cb7ecaff7bef757699f7ce3b61f7d55de78eb5dfd388ddaf8d2d2e78230265d9b03153124165375ffe628bf6e19188b5f122399ea2662ce877bcf734b469e66c5faff752ee8283d771571dedc3c2fd68a5028e962e7e454c473433c33b192fc7bf1dd5cf1dfd939593b00cecbfe4bef71ce23ebcf78cbcff1818c8bac6719fcd4804a7f6de63daeaac9a735af98abd72fea3a8bf68106023ef450d0bea9a3665465b3bed5f6fbb4fa7d53ab5e46d2fe49de7baacbd23c2dde6bd6acdf0b65cb5eb12de9b7eb12038c79c77f6b1b62f3c785d779ef79635af7fd2717d78d796f97815bcfb8ff7c25d7c3cf7096d80bcf1f2aecff2b2cf9b9e729fec055066379851f7171eb2aefbeb11eb393c4e63e3f87217e96316852d9a491ecc9a38d37bdd936f1c9286fee3d86b5f4ffa8ff87c59ef29038335537c981333389337f7ee2fbd876edc1f9ceb0787a67e5d737da4a5fd7ee8c3f39859ff4adfb6f796850b80defedc477e80a726c6b11d9f7ee5be3f718fd5c3b96957b14d9f5973de3efeda8de976fd6a9972edb6385f9c8ef7f70d1a9fb4ab7d7fd4bd6037fd1a3336ccf02ac7f3f8727f0d78c72f13f5b1840bbae89e42471d4b17bf9a87370cd3fdd793af7f5ad0a793eebc3bdf09830d96c7367dbbb84b7fd5b7cef7c3675ea43febf6da7ed28e8f5fadfc9c1b2f730683cc98f9f2f5ac6feda35e45608123d0a6a55d110f40f6108467098bf2c52208d7834865d35a1141100d79a8c236df7cf320a8f1439307c6d8d2229ced4314c2938a8738bc9911d16223ef2db6d8223c8c2070c5461a04191e243044e4430e39247988611b0f2cbdbc60c6f9111fd3c643399ec53c2430cd9607c1d8b85ec4a462c6432da20ad77bd96597d5f1c466aa279eabe4fffaebafd7c9060f57c4480cd1083132f60e272e2c622d0f63d5a6e7da79e8a50c084836bd977332e51e1111836725463d23ac515e1e1c1180d30239eccc9b36ce9b32c5754da8823df6d8233904a171abadb60a21191018f12ae50195b680686d0faa949973d814ef555659c56dbae9a6c123d3c433da4529c12e397191378864e6614c5d70ed8481216f0c4fce744805e25bf2475909e94119c9c77898f0c6f4e35828e79ee0bee21c186105b8b7f0e233612fec28f28fb688481d7b89237820da1837442a845a13ac89abcb20065eba883efc519f949f5012665c472c2222ba5227dc43562f9491fc11f86391dff2e0d53cd8780f0faedfea905905e67dc77eda6bcc76cd35d7740c7ae1d56be5a47dc7021be9cc68a3717c6fae15f1c54424ea11b1cdce0f1713bef0e0c3b3d7fa33e29173cf33cd7fe0c081e1380459a69e9732fad6d8bbfd80030e082ce37a66908cc10a0657b22c2f1bea08211be39ae8df6ca0836db0a53e11ff305850b7c4bd1d3e7c78d8c63f662b5007664c07a78d12b315c3939ffeccbcf6ecb8725e2ba9af3cfd489eb40d5197c558d00e691b1821036c760fdf85f6ddcb3efa8f78a0957b196f72842d33166ee3fb05b119e3fb907a8cc368d8b1e957bb9fd9de50fd2c3370c8d7f2a49d733f9a3130c577126106cab14ada4ab1fcb8ff2ccc05dfb70c4662e44dbf5e9fd117c4df3ff40ffc2641a8a61fa41f61d0cb7ea33456df120f9e226c5b9f525fd99b621ff758dc46e3d96c2c044cd8139b01c17742bc306e35e5fb21eb83fb8fefd0383c52b5fd6d3c38512e871dbce0cb83b619712bd7f653f51156b08fbc4082d0b38d1780f8c3c36cd03b5f04b19238a14ced9fff93c3b208de69e6bd8cd0cc54e3fa8cf4d7fe76c31033d38edb62cdce21ac86091633bdd7e3a3defb76772ff2beffc9d789071a696f3c6ea34428d860d54e6e974dba064f37628e6278c29a704ad889edfc3513b3174f58e238679909c60848b130181f3bce0b8d782d621c138b158443306f40f61fb1636ff70b3f6ddc8c7008fb6cd93d7853120f34cbae7a687422fc201c5dfdebf513416b5d2ff4efd17f4577c4df5e0d823282d6df1e1a138417c26220a4206a93f79b1f4caf130e034f6b33ead562da567b4ecb2bebf5bec11392d023ec27c40a8b1c9a51d77b6c3e3d783e721d8861d73d3e36b42d3b267eadb4bd90b621af8b368168bcf1ea35032894f92aef7569860077e0d6b575cd547c06562cc401030073bcd84e1d95b27b078f4f062732afdbe7fdd707463b3c2fb32c2ffbbce947f8d8c4dc7f660c8cecbe7937fbe8faaddcc9878358d69d73c73bc9b672def8af8810a2c18e65b6c0ef765dd53e867c77df6c4577e455c3c28006c2f623af4cf4edacf677437270ea0d332be27026076fdbd31db25dafe428ee5d069b7e71f1909037ed15af61fa26d2be32ba76202bddbf6ee043571ce8fb8143fefa4a22b6ffdfa3631c03740c4ea58df042d71fb361b28f73fbd315841c2236f2517ea0c90ca60c08102204232e71dad88f308f11a37bf5a81fa48fbfe5e971611fff10846f3a6ee3a48f58df5fc33e5e20c74bdefa79663f1cea19c5b1c6930cfc1beef173fd40086d18e33ae8bf0ebefc95a47c37f8992b3fdda86b380f5ef8cf0effbce660ffff9c03d7763f5abb76f03dfdfdc0ac10eeab1ecb158622228374f939f7a6be8fdcd77bd1c38158ff0c6429de72825b6f163002a5bf699ad905339ddd8427442516e88ac55c449674ec4f1e0eccf06045bc44284b7b45e12599f6fe454043c0e047340b57319d372de2521ea6c66619e7c08bd904ba5ebd7a85fcc867f7dd770f8ba3996882374c3afc048209de8f882678ce203eb12d363cb8d3d762fb11bb1093396ff7eeddc3c3b03d40da31789459f94cb8b2077f130ced58f60f1830c03e86571e4c1168b03ce9e1cb830f0b1bc68648ca3eae9ff016951adee967794fe52ca3bd206c641922b989873c0c52676983136103cc6807c6d2b6218ea5c5561eaa99264d1be0011fb139af912782358680463b7ffffdf7936c4d504b36f837dc4378fd61a4c1981560030488e71871c84d6c4190e5be480b0370ce5a1c306490fac7c3792c2ab39b7ab632f0196f531395f98c710e1be4e0b395c18470b6b14095b5473e63f4017842c2fbe0830f2e19db13d11101c98c87717b90468888674820eec4a2b2a541c0212c8819e22e53aed3064f1390e37d3cfc1b0ffa3d4b4b5b32a1033e0872262a5b7aee43c466e38717b409d1764cd62bdeb1e6854d5a3cca8db11dcfe7dffffef7090fdbce6b43b089057dc470eb1fe3f3c0db6263735d88916963ea7dfa5e44aca7ecb403da30f748a556697de5e947f2a4cd5b97e5728963ded29fc4c6547cbca6cd1838b5ef16dbc6ebd65b6f1d6619d836c2cbd0962ab186e8673927039b66dcbfb1a86cdb1173d3fd97ed8b5f2b6d2b71da62ef63deb6d067b16311db1960b2ef653b8efed006b2b87fec7bae31fb96b8ac78575773ef59f91bf295458ded771f8324717f435f170bcdf4bbe9365e49597ec8fae03b12278c5854a6ec0dd5df96e2c0a24a27faf8b069db68b565128160f6dc79ee0bef216c86206bc64339a24adad86e36637eac5ffb9cf57a8c178410b4d386581b7b34e27997ee8216f6ed617c2a4c86dfe47efbd355dc5a3ef62922027f6688bf089bc4564614cf3a2f1ed1c3bd188b21a2c41ed0960fafe62dc9f9105acc101affe33d11cdf0a4dc7fab1ef63179256ef44587ae9b7c8edfe0613b6c7e681184ccbf780f4f5e63e35a486fdb11c3667ff39dc393766b2f169ba5c361c09029e41865ff99f780c5f29c336490f18f73591c577623b4c5a2b22541283ffa27b5bfb911c588599c6595b69786bc2e58df74fcc689a89c553e063e6803b1adefc53e3cfb69933b7acf7e5b04303e26fd1e76168e857df0c96aaf88b5cbf8c5c8d296977ddef494e781972624c5c2633f16956d071eebb16868dbeb7b7dca0b9936208330fa9b9fd68aca968ec52d89616e86909aae17db17bfde36f0c3e423319a0fdeb657f2d9de70efee10858f193b3ff6f5ad3e16b019036f7fd8bbf6fcb69dc5fff05e36c3dbf9e5513521876c1bafb435bc90d38233f790197df861dbf7b68fc9ebcfbca85e9f313868fc98e110ffec7eca7b0fdb4c0bca70c591fd1251d9f2a4dfb8f8d0be61613eb6c115efeb2c6346c499bf583bf435f17efa2fbccbadff62f0d084eadbe6c767e678060ab3da07df0fe69dcdf99fc9f0fca69c677b51da06ceecfcd4419cf63dbf20a64c041654026d5ada85c52b9ff3231d6f33139ab916a6b6c74208c2421c0318af350c8f281350cc63913018b1913f9eca694364e481d11ec6d86f79a58f45f0451ce1a1176f4c8422bce8f0ec4c1b5e89b191c61efee2ed9489c5c0ccd30ec138fde068c72358c5a21369383f5e495986770e7fb1710d3c14224052c638b4821d67ccf3a6b7fce257bca1f31a9ec52cbc8377b6190f5a884c5676db6eaff1b457d2d2ced28225c7c642091ea20898d40fed8787761e44995ecb147eca816732a21dc223e25f43196ddd42484c9a3429886a884b18832db4d9b4515eca4879cc631a31da84705b740e2f3933da64b1f646fc7204584b6f69d2af2680a7b7db67d8d9bd6adbec354b9088eb109111af744451cec375e3d53c60c080f067f9147b45908cbdd2183888bd30e1c5c25618e5dc79e79d8b65153c6b19c84194271da23d027a6cb48d623c4d18e678bb4606d3c80b4390430c434c4f1b654388a7ddf247bdc6d7913e9ecf71bdd15ec923cbe049e88ff4626279d970bd168f9a7e8b98dff4ad6981987dd65e291fb170f154b78110b6e1f5cc400fed953e9e1048708e4369705ca556697de5e947f2a4cd5b979572c93a3e6eabb4bd62f73469990d62df4b949d769d75afc7e769e87e96f66b7d1d6d316bc088f3532eca6b82645ca6f87da56d254edb10efb947d203b5966f3c486bbf11e2fa6ae8be25feee648609f7b4f56956a61fe235760a60d0d17e575959e883ac0fa71f25463b3326aab1a6ac8fb48305036936386a65a70ef2f4b7a5ee4f3b0faf84a688bd6c6d9f7f164f0403b62d9c1234ed385e7970cf63880a84d8286678f99a088ae7ddcc39dfbaae4b2f1eceeb510561fb57570e0ba133f00ac53399c5bf102aaff11ebed5d863de33da0473bc01b30cafbe67e78bb37815a617ed8b45d174ece538bfb57b2c1584ebf878f6138395ebc356f3319329cfc42fea7a1ee2814d1d2212710ce2f2667d96f1de932b267197892d8cd86f753dfe8b99899720f1a37b7bf10ccb7bce9049ea1fe5b2c105daca0191276fead010bee0261fc318510b2f42d2a545fd6ada4b9eebda747ef8162b2bdeddddbd90191bd78557a479a8e369396cf4a0703d3f5a7b3987c0097b1619abc460f7e5fc5007e1ba234131cec77ff5058f685b88d1f6e565dfaeed22b9ea0eb11bcf53b39fffb8eee08aeddbdd7b12d34ecb35c47bb32dbdc733612bbef1eda6c07cbdc4f7e518ef4d8ce732fd4331e39e23a6b4198b7616ebe39889813733df99b453d2da0c06d2ffd2871532d1d4f2b357fa0c16d534ef66c239a40defdfe57c9895b4cdef16c26606bed2a269faf8f467ca79f78b1f87cd59f7d3c7936b9fef69ff88e85946bb3bc85fff758fbf1f764f29321044589262655c61e9760e2f6ee3402c7fce69f71219330363e214dff7c517eeb7b769b390ebb3d292492891fff95918e941804e5e40eed5a5d691311474febf8e8bd7b6031be82156f3034326b8625f6b84f3e9efbdaf7b16c933ce5fef45a0b9106871c2b22d2c66422ea2631cbb34f68a013202b23d38f0a08898c7032b1e8818dbcc4325fd90532c0e200f614cc78e8565c4ac437c880b1ec608db60e50b27f1ff10675924c716ca210fa61293066fdc2ce32124fd20c071948bbf722c2bef58902996070fcc84754098c47bb352cb9bbed2f3953a9ebac5b393410613e5982a8ff056cc62b18e58d6e51879e35146bd1197f33c1f2bd70c8f55fe30c468bc26114079004cb73d4b53e9ab3de811122316e32c34469c1ff78a853d60c0837b8134e60d8bf716ed1c8bdb73dae329ce93811fa6b0db3d17efb3f708fa2c2654ca8a89ad59e9283f228e8516a11e08e16246ac4c3ccf08e390e58168c7e1151cc7db66b602830ab11162c0bc0611d22d06677c8cbde71a10264c5846284cdfd3b1186ae9ea7b45fc3123340e7fe558294f3bea3ef670af2f662be763f647daf2b241283441943e13a1a71ce35ea5fcf4a978c85a1e0cb4c49ee788cfdc7308436981bf9cf3704ca5f595a71fa9362ded3f6f5d96cba3bee3e2ef66be1b4dc0cc4ac3773bf7067547d9b917ebbbb7c8a3a1fbd9b8fd2284c73321d2652ec763b9d2b6923e47decf08f9f69d504e5e8dd5b770eef8370b83f8fc0eabaf3da4cb6bbfedf0b66ea8ef4b5b6fc1ce45dc7506cfe3c16c06d16cb60ec7111a85ef9b4ab85afe3f647d64f5e7f499d65756d3dfda7595f38a60f9431b820ce268315bbe53bb20ca9977f4573e1666f7e516777b6db192bbe7c5f149323cfecceb0f8f5dc4093c4337efd3d9b7cde4b0926ffc2de01e7c6962380e5162bdded9bf4707fa05bbccab8fb2c4e7f055e8a6cd8fb98a70b3fe2a352113b24e8e38432880742883c95fd60a4d2cdeb6d7052f6525afb3edab5973c33662ffc216c11a2ff3d7c6d408ceeca4ec9411dbd57b2b9bf895f79c353916fea73ce6d48e4886005bcc105fbbf9fd8891948f5026e9a9edd5b49786bc2e44a52c23c637edcfbcf569a7fff65e97fc6178be52cf8450e01acab1981d6988b55bcc18244a0bcb71fa6ad8afdb6be15c75b752e7f605c278bca864fa3ad658b163729fa7f7657d9e3cbdd69b9db03516ba26eb58dbc660058b77fae5016d539d57da1db33430eee9be45ee7ff6e349bc9c1f9831a3efb08100d232f3a398b17f357fcd26a8322044288dd8d6eabea4ff4e8bb7d47d4f5f57a93140479f82e1099c0e0111cf502144477d46881e334461fa9ab487f5ca2bd4ff3dc37ee3f0a10f67411d1847f23ec32fec588e3110451dc7b6d2b2ed1db35acab5197ee012a1dc0616b3d2e1dd7c968fb72d13819642a0f25ee207be32841a042f8c8767c238c40f2cc4e32434043f9859942e8e696ade4d2c18649e464c13b587c7386406f99bd727efd3c6d4f4d8eca1072117f1d0bca0e363e2f7fc88672120e226c602757c4c961818ef2fe73d1cd2c6b98b195e454c3147f0c6e3af5251396ffa62e56a88ed08a726b453e7b6b85456de70b3701059fbcbd986707cf3cd370761317d3ced8798c2787d2264e20995d778d8e68117c3ebcec44f3e33c062212ff8ccf5e1896b82315eeca4c71bcbc45916fbe1a19a63d96e167b9ed9b64a5e697f880a0d693ce4535e84fc2ccf6cc402ae97702678d966dd039489d8ccf6a0cdcc04c295a40df1c9bcda6201227d5cb99f09735389c5826125e9e2f6502c1ddedae55a96f09f970de2b7798c965b0e8eb3fb873e93b01f78ab67795b3ff9e49361960022671c27be927355525f79fa913c69b99ebc7559099362c796d3e68aa52d573c6cc87e360eb555ac5cb6bd9cf255d2562cdf867c650d8a72ca69e76cccbec57eb7712e7eb755d236182865b60f7f2c0cd950df1f7cc7db7720e5e27be1f9e79f0fa1757016e0cfe287b31f235c19bf0dabb11faa3ee80b99d996b6bcfd6d3abffa3e23dafed086a8b15051ffb01af1262ea3794f13eae2ec03d62e5844ca8ec39b98500a7ff68b68ed77d19064612ddb5fdfeb1b1f4c4b16ed6291b4b448425a7ec2dff5c2c7211bf6e3c51adb975e4c35811781626ab408587c9cbd673a7bda46fad8b4d598099b0852889866ff7df593f01691d7de23286f17798be73da79d2b7e9de1a7b7fbd3042b7751b6387dfa7d35eda5a1ae0b7d6a4d2ff665195e9df79dd63f846ec9d2b1c67ab1fc5f3e4cc2de7e80e08ee76ada4e563ef13662c6d62770c5c7ce471c6f7279d9e74dcf7d608bf621f8957b2d051791f181363c727c75f7474676059b28f3e4c87bf83b1b1529382afbc3b7fe79c5ae913e221647b352cc8bc20ad93d121fd710f74b9c9fbd67b13aca87a517ede372dff10271b916e369bb088bb2d64d49d889faac53e4410e07eaa014bbacfce8f7d38647745699d2c755f2b98e677c258975ac08fc00048a0f49fe008529e79488194c3d374f4b629d1262e2a1871e0ac9119b633139ce13c182f8ac1c8321a6c5611fd222517d0f0171f803f2b29001bc67da240b93f1c082c83d68d020f7e8a38f26e7e51833ca82e7ac2d4e67db79452c415cc83213b2d987976896c89395aed436b822c8a70d910dcf6ebcb41e7ffcf182b87cf1b179d3c77935e6fb52e2260fe3b4158b794dc80cc2ac58db89cbc6b1c61fd1359e620c2f565cc7fb8e588e08bc885b71d815445b4262100bbb120faeb80cf61eef588cb6f3c4134f844519f11ea6dc786c23be525ee284c70fcc78f2232a1c73cc31213df705758e713c5ec8c6c262fd869da97f5c3ff1987f08a39c0cd4f08738cc145fee3fc224c48bfb31dd9e7b340e47c37dc6e27c1c8f2182b01059567d20b657228a946251ec1e2f962e0e27c04286c409cff2468edb25e52de53dc9f14cfd8fdb45b132b09db01e69cbcb86c13d3c45696b8821679d7556180ccae26de23e65e0fe330f42fa43060408818100440c7e04223cbbe3fb9719050cfc94e3791a5f6725f505d36afb1106c2f2a4cd5b97f13557fb3e4bdc2f37af4a3837543fcbf73adce93f1199eb2b830d40d5773df5a5af2f5d43edab7410b0b1fa16ae27fe5ec4339ac1fd62a146d2d71fafa3c12c23eeabbc46ddc4f1b4cbcd8fdf0e84d4ca0a53562a8fe6541f94b521fadb52d76cfb7fe87b817220ba7e1fe63867b79f38a633c7c742cf8fd759d6f1474ce4b7c64d0f1ea343dffba24048260cc231d7beee6e3961e3c433977c8a99c5034674c59b37cb98a66d53fc1166d38bb02de9a75833cd9ae9f9dc164bb6af5f58216441da08e9f180178030e2ea123375a6f7c84b1bf79d4d3347f058a7678d930fc7edec17c2fad7331f06b16bd0c8c9c1c31a1eb69817f9120ac3ac21ce6979d96b07ef8d1e8b4fb6bddad76ada4b635c5756f9b9d6d37ebe66087951b388db14376cd454f7f647d313218f74d7fb45cabaf930075b95f006c55b9b768858f9b5af7b5ef99c65710806db9f977ddef4dc0778fd5b9817ae617957dbdeac9cbc1246a15c2115041b7b6f60f3f22776f5dabeddcfc9b88fe2fb833006b188199fdfde53e60eedda04411c4fd7b6de8bbe5c6be34773ac7e782d75df2fe207a59adaf01f7af4959a41586240a76376c396591a93a6d40c44952a5fdc1c19d4ca9247a6951858b3d91d762eb82debfba5493efc05fd27e12d085f9225e82e1a796c33e3c1f85b5e2cd05a892de5cf4d3cfbb4e7739cc7b219e149e2fd7a2f02cd8d408b139601180bcb88724c6f665bbc084931d0262c10671311cdc488ace311da988a9c8e5198259e21e82142214ef3c0c9170c9f1106060c18e0fefce73f07cfe4a79f7eba8e883c6ad4a82054a57f78737ef242048b0df12b16cf7910362fd3f8b84adfe36d986648c802c4fb584847304f1fc7b9f2a6afb4bc8d7d7c2c8ae0155f5f5c60ea9dfab369ba886eb413da01dbf0a4246c027f7829c31011de42a3e0198e4771a9a9dfa5ae99e9e488c288c9975c724910ce2c3e245ebbc405cdb25864253d825e7c6fc403278447219c4096b158573c6d38eb98c6d866fcb9e710379922cf1f210f88973c6edcb8b08895c5a0e67e61012e138ef172bdedb6db42d1a877de934f96b1dd444df2a32e395796d1064c1421df2cafb1ac74f56db3410c8ea1bdd427ced0df21ca963bf8445f6286b8cb80423123544eda1a820df78b19d3b78bb1e51806d8ec1eb3cfbcdaf5e2bdce1f6d9ad92908cc0c12d9f700de89950acbe45f89e5e947f2a4cd5b97955c63b163632f553cc4096d12b7df381d7d8789b5f4b7e5842a69e87e366ebff463dcdbe9ef7f2b336d6741b3b86e1aba6fe1bb89c14a1bb86280af9c45fcf04e8e056006b8b9e7f31a838d3658ca7d8673427d7d0d2176981183b1b8e4fefbef9f7c0fe42d4bb1f479ea23fd7bb2d839f2f4b7c5f26caedbbf9cf9ad8fe33aafe8347f04b3c40bd7b7b18edec399459ed8468bc31b0e6f511600e30f439038ffce916ec47cafdf895366b9cfa6cd4916240c0765fcc3bbf2f5b153c39e7e7eb135f2cd323cfe309afcde5bd65d2783ed940b6119a165d8e829eea71b77cdcaca0be5ce0d7aa76e6cd958304168d979a3c2678e383316ec63fa3e8b6421ae98113e01e168e4c75f8529ea849618e5a7719bf8b3878f6b1bdfb60d714e3bb7bd22b0233e219dc397fa4c87b7b063a953ea0ea35c2c7a98b66ada4b9eeb3256e972a43f9b67aed5c19add3b7aefe68eee201f67973c1e1ff689bbf4fef712f64ffa05d24a09cb313b061f60532cb62bf165d316a7af867ddef4d4216d17611906c3fd6c00428264d94bef7e91b0c9da9fded66ed1da764e3bd97593ecfb8b74b419844244c3b8bda7f3e433fb97f1f70dbc10f2dffe70ba2b160ee2b5b1d3dc697e5604033b5badb39c3b7ef7d593eb252dd7940e6f61e78487f5356c63f0a3296cb01f6042e0c708e1931662d91e875c216c0eb1eb8b9985d4603fa14eb26678704cb13ce0102f9c173c8c7d5ec4f736a35f2fd667700c75e5ab2df4b996a6da57ea7f231ffb5a26020b1281dadeb2055d1542d911471c919418011bd4cd6e00004000494441548d07164238c4462c5862e6c5c22cc7218a3145154fd28103072649d20203e283894dc941fe0d69d2e219c22b3fe44f3df554b7e79e7b06010f4fea588045e038e49043ea2cd886070c69636f21cec7f9e3072ab6719c89917cc610fd8a8960354794f79f8798f48315d34e635199f35b189174ae79d3a7f3fba13f5b7c61ca415810ea29cb104368534cd345c4e4381e52f9ccf6ac901a3cb4c3360edbd0100fcbe4415c600c2fd6abaeba2a847e48c7d5e6819eb6b9d9669b2597c4c3f505175c10c44a04d978ca711c13f9befbee0b1ed849c2e88dcd1c883635fa5bdae41ffff8c7c07b9b6db62908f96127efd5ab57f048b6cfb1e8c6e0940906ec47f08ffb0c4b63af70b238cddca388d2c58cd90a16ea86740d719f726e1b80201e36e2579621c8b07827ed90d00ff5799a5bfa58f8bee38e3b8aa66110e9ce3befb464c96b5e36b45f8bdd0c5b8bf79d9c207a83b06df718654564c6839b6d7c17a4ef57cb9b366e8600ddd896a71fc993366f5d3604178465da04c60c82fa6633c4dfb57c0fc5035bc5cad2d0fd6cbafdc68bbdc665a0cfa71f5cd0ac31fb16ee3ffa23330466c4da52c6f7140383180381f50d768583cafcc7cc213306ff4b852de1b7a3b5653cae6d768be5d118af8d591f94d7fa44de57dadf92a6298da9cf790d01e6e1972716cde6fe972624fb58ccaafd626d82c7e71ee70d76bbfbbfa7bc4097368efbdb51eb97bd00a1a52744045e8d188b766519d3ad9f7cadc69b6f251f0fb87797ba4299bfad0a44d15b7d0804ae33cbdef4629b7974c6fb57f7f1576d41a957c74c4d04d7f818de234cef73e14b0e1e3b9ff962415e94636f2f1e99c1f2392f1461084ac49f8ead21ce19e7c77bc27c205062fe67a1bbf9e971e17dd63fca67dedb788b5abaf8d86ada4b635c575c26842d425c5007bfbcf4e53a754d3decbcf10aeee89fac92242b27366e9adddd514cf12423ffe6e3c9b3c2a28df136dea7d357ca3e6f7aae3b8ea97defa00975d8504edab0cd14e0733916c72dc72b3f3db3c1f280cdcfce1d14ea66ff8b87649edf8eb5d7d8d398d8cdb4db2c7bcc7bfed25e6b84eb1a519af8ef66770cfca8e8f9f06867c0c7ac73c7c6ffddcb75dc3bb8a63fe5fe27067d96c5319111c76db0277d2c7de12dd1fd4c4ce82c6350c50607d3fbe9fb986d62c68c0bdacd7abd6b665e50665b1cd08e895f1f7e7952a85bbe0b2ebd6f54bc4bef454004e613c8ff4bed074289e7938972080808ba089b4c7be761106f22c406bc4cf14ee433afc43ee63d71568971dbab57afe40a7af7ee5d2736325e352c02464cc0cf3fffdcdd7efbed41704b12f937885484d5c062cf4e3e5f78e185e10104f10b43904e8bc53d7af4080f2c887fe9d8cc9c1f519378992cfc850096f64e464c893d5bc289aaf887f7d7a79f16fe70467cb7b01b5c03e1158a893d79d35751e4464dc2c084b58f77df7d3778ff5a3dda89f94c1d9999e7ba097f6ca7feb2a6c02208c68b5b59de1c4b1c7044e1cb2fbfbc60112e3b4f7daf84b5609a3fc6c3fbc5175f1cc452bc98a93bc418da3e0306dc077cc6939e3f427558fdeeb7df7e89b883106d622b82f5e9a79f5ee79a9e7df6d9906f7cedf595b321f79988c6c331f7a8b18ccf61022fdb2c262ff7753c2005abfa626f9316c12b1ed8a27e5914326db419fa25b3c30e3b2cf415f6b9da57a69473cf635c2fa23a426fdae8e74c90a14dc49e69e963ed33a28df5abc5ea19c19a3021e65d6a69796d0836083866c4cc370f47dbc62bd7cbfd61b6ca2aab843ed4060cf04c1e3c78b0ed2e788ddb41563b2938b8013ee4e947f2a4cd5b97d55c7aba1d221033d06a76ecb1c766c6d0e63bcdfa1d8e65464e39c272dcd754dacf5a99e257cec9e0af19218398e9111bb32388c5cebdf7431bdfb90d698dd9b7504e6657d8772a9f19e4e1f750b198c9fc9e63f68c19df49d63fd9367ba57f43282dc768a7f7de7b6f722871ba4ba5457866069a19e91bbbff68ecfae05aaaed6f8d4353bde2f936ff6774d15366c5bd4c1ffccf273f7043de9b92deec9e1dfe79120f989dc43cf6dd81f724ae15616e78e2834cd1022fe558ccb0101a6c6331a8536e7ecb9df4cfe1de6b705a382fe2962d06c8f4fdf5bdc772960d1ef945b2681fe233e5c9b27d224fe64fbdb7f4c5f7bc57e73042789c7a4b769832ca80d73406e3df5fff4688999bcee4ee173f4e3c10f1e6c62b33b64dd7e89c84ea4054362fee2dfd4272e945bb1aea9cf1f9e173c0d63d924dd4a9714e36fa3743de9d12060c6cdbb63e6e35d3dfb3acd2f6d218d715970b01d606013ef3a146ee9f2fdec5c7f09e102a66f138034c688bb4c90bef7a3708ad1c07bb7d7e543b30400883a7df28f44c9eee45ed637da897acfb302ffbbce9b9865f7a8f6d33bcd5af7c70b47d0caf7038edd6b793b031053bebf9b0890f85b1840f598121ec5f70d7c83a0c6072d543b5e75bc52f68691eba08cec6fce41b8727e173f8bada7fabda4125bcfcef78eea33a256131ccd84bdc664b10b6c18cb670a6ef6be85b62e3be3fcedfcf6684a4d878f5c6f792fd74daec44c46571d3d833d9cac2ebf63ebc0f6d1a2bd6f7704d27fb366b0b98c2b558e820c4f73fdef4561d919d3c4efae79bc976bcfd097182c579d1e7322891366280dfe8bf3bcc982120130111a84ba0a6a7acbbbdd96fc1f38f45f2988e68dec38864fc31c59d45ccccfb16f1e895575ea9e3618478173fe4f0508910c4c34b6c7852c5de54f13ede23b2d90280c4778dbd3679f8e421194f1ba682c6b15e2d1f3cec6c4a3e2251ecd5c331c46be62fcb38efbefbee9bb5abe26de485874cec01893727e54358c45339eb61daca9e377dc5056ee404b487e38f3f3e4c9de754081788afd4274226030dd48b79e1e1cd64224a2c4ec210cf65c45e6b6fb024c488099c88b636f51bc6f7dc734f520f789b566adc0378a85266ceff939ffcc49d71c6196edb6db72df09a6540820766c4bb73cf3d37290f0318f135701c1ecc8411c0389e6b4294654144061c6c5a71dc7e2a2d7735c72308e0616dc2145c1116e91bb836069e107ee301800d37dcd0ff88f93e2cf216b769c460425764091d08fe887503060c08fd0b7569c22dedc4e21d132663e0c081a17fb2eb41f02c1686c48ea9e495d025763dd42f9eda9481810d842f84bab81f3af2c823933ea6bef3d0e689c51dd733ed8f7e91f004f45fcc02b1ebceca8bbe370f1bee05e297b2b8298688075bfa56ea93fa61b0cfee1d8426fa27da2861912c1d3cf6de7befd07f213a116a8658f7dcc3664cab6f6ccbd38fe44d9bb72ecb61138b6b279e7862e803f94e60a14cdacc215ea8c5bb97fb8cc10afa480666b86719b46400381e3c40e84acfde29568eb88faab49f2d9627e7a74dd900c4e1871f1ee2983348cd36063be23ea3583e4db19db230c0c37787f54d79cfdb587d0be5a23db39e046dc01822deffed6f7f0b7d3103ebf49f8401a33fb7ef56d2d287d28f1533fa7c062eccabb8d87188ca08c9f6bb917c095155caf89e61169a79b13ff7dc738ef02df63bb354fa6af7575b1ff17d59dfb9abed6febcbb321f7d9751092e2a0cb5f763d7d2c58bcfcfeb8779f3a422ba2c06ffeefb5e069bcc9eacbf8c5a26a85322b13e205a21afb091981572adec32f8faa159b113a7e367f313ae22a232e62c40cdee98c171c422e9ea9d8b0d1538327b3790993d6c4e859becc43bc179e7926139f151be1e3e09ae7707d8bf621e4624cf9de76bde253c457f653fe37f653aa5ff165c1087df0fafbd38268d565a976213cc683436b17d10a07a5fe1dbdf32aee952b8785ad5ce7ae67bf18c4f5cdbc58cc02570f780fdfd8ebf117037ad4998adea1dd226e0b2f223ff366a120b9eba6d9a1031ae29ca9cbf0e1005674373d352e11c0af7974ac7bea8d4f43dc68ea265dd7885447fe64e57436c9e74adb0b09abbd2ece55caf03eeeebe3d25a7be5fa9e1f31392ceab8a417fb891ffc98f7da8c85651b34206f4244e0958e218213b6c12f83163eefd97fc51027db3cb909f172efa0f1e15e6171bfe7defebc8ea01a12ceff97977ddef4abf9f008f17d8087297dc2763ebc02f7e2e3c32625f76239aceddafcd7963b74fb5eeeaa87c7844d88f3af8e19e4fb81ee8e738ef7c2f1ed5e10863de6bf2adc61dbf70eeff937c90f3c1973f6cdf6e2a7733503191b7971b3f7f21d92fa62f0ea451fae66cffe2b85503c8ff86be0b319f7fafa2bd708c3bc67d0c6f60ff2d7bac7f983dc01037a86503cf44dccd088aff5d8dd564b046fcbb3315e1998b03eb1d88c0cce0bdbdff8c5512fbbbfc603d8fa1e4267f4edb5941be70748fefdec470503773ff1a17a8a850e22cf377cdf87473f8b05129e67eca419ee76efd16d613938e690ed7a25f1e2e1c8f781dd53573f32c6f7a19fb89ff8b8f1c42747d8bfc7df07763df423c5c26d90b74c045a3381162b2c53693c4c3195928712bc14cdeebefb6ec75f31e3c1e3e69b6f0e8bb1a58fc1f3edda6baf4dc209a4f7a73ff3e08e5867b6c9269b042104813b36c4ad2c51190f1ebcafcd58208e07afd88bd2f6a55f797847443341323df53b7d7ca9cf3cf41177faa8a38eaa73280fedc58c0744a686b2a84edef49cc31e248a9dafdaed888531a372ce83f8411d136e051b3d7a7488d59a5506c458f3eae561136f75c4580c46eccf32da23f99bd739f560627dd6f1e56ce32118011c8fc7134e38215c370bf7f167c20db17711e9e2c51a290b6274da739e73c28258e12c3689714d7854d767316344a5c6b2fefdfb8701161397f1324c7b1adab9118d10b628bf79e3db3e849afa8cd00903060c080209defcf1c016a2257f6983293139ed3e657fd66274e974e9cf314bda19831ad431c6b55c74d145e924e13331bd634fbbcc83a28dd43362aef561e6b91c1d52ef5bda6f1e36644eff8788475c5eac3eb62cba68f70ec213694c14648086bf2c4374ae2f6e7a9c266f7d55db8f5086bc69f3d465cca0d8fbb8afa01dda8c1cca8db04c5fc87d453b34bbe1861b1c7f695b638d358a2e9a993e96cf79fad9acfcd8465be2f701829e79e5b3f0237fe558deb652ea1c0cfe72dd56361b40a27fa16f8abfe34ae595b5bf31fb16ce47fefc3e63c0c1062169370c161533fa6c66d9d88c043b2e7dadf177991d937ea51f8dd331305f6e88220468bce429376566908a76529fc5e7aaefb862fb1abb3e386fb5fd6db132dbf6393e166fa566debea4c3abacbb17926df13aa649f3170b626b78819758bfe6316ce267da43162f4f1378c91b11c184043e9b2134fedf6f3648e207136ff3302f2adde8c54a0c91e6ae17c687f7e97f8846e71eb84e2258b4f1e13b6a3ce10b15430b33c0b9762e120f79bcf7b8b498a25bf7ede2e238afe9f3f2f92f87f475875df98afbf0b399613702cddf1eaa11c2b28e4f6f435c39dd2f0677ee7f46865d5c27f19d2dc6737c3c7141e3b017f13e04f95858a6aefaf6caf6c8ce73ce620b65f99f1feea6e337f6612286261e8ea3267ced2eb9b7ae1737f575c591fd1cf1a1d3566d7b219f3cd7952e47d6e733f65f2b8424310198e9fdf114ff38cdba5e9cdb6d936ec9a6c5a278b25c7f6cdc47371ee79f492f7f25b99f6883d60ee363b3dee7659f373dd7c37d70f435af3ac23f600ce0541afa22ebda10ddb9b76c113f4252d88053faf8c377e8ed56e9da21d94c3f50cc7c17e0fe7ac47a6eff8b8726a159e8c310f5d3467f71a15fec0d4e66671fb0b69f61f0ba8fcffc65d844b9fefed858db5df07ae44e2bbbfe6b764eb615bb879203aa7c8377f063afd484f061c1ceb57b2c596f4ebb6cd235f4eb88f3187d0f330db2661b6ce1cb7ffccf56af373f767e35ab78fdece0071ae2591e1c7fe1c1eb16f49ff419a326d47aa0730c461bbbf8b0bec9f7436331ac399bfe8b40cb2310754f2daff0949887408433c483529ebb3ce432851bef4504dc6286d88b9081c75531439ce3013aedddccf13c4023f8e23d58cc109bf074c6fbcf44113b96b8b7a5cecf39086dc083b8196138d20f5e353f6aed889ad7f494781e54ed383c3911b6d3f9580e78042208c45390797022540796373d79c4abc7f3395d5eb655633c3c1a2f845bbbe6527951c78878c5ea1351930765bc466363c13004c562e93896bc89d1cb804663185ec584a8e01eb13ac53b908774c43f7b10272cc669a79de6060e1c98292a5bd9f0bac553d642bfd8767822b2e2cd855717163386b5798595239a577a0cf93300c0fd8d089165dc7378b1223ec30201b4d218bb71de36b0859726796371b9798fe72dd3b90945111b6177ccca6987cc06e02f36043d3c9377d965977873f21e41827b1961b19c732409fd1bfa1706d87af5ea156f4ede134bdc3c83d998eec3f2b0213fea06a19cc1186bb76c8f8d32a6d9728f13fb19a1c4ea244ec37bb8e025c9ec10ce538e35447d55db8f50be3c69f3d665293eb411ea298ec30efbf8739f3e7dc2ac86f83b1a71d48ce3e97f6853e58a7c96b621fad9f4fdc12029f7166d24be0ecec977088319f18045dcfe1ba2add8b565bdc287f69bf6eab60545e9cbed9e89cb959517dbe8a7e2ef73b63566df42fefce6802f0b6a5a59d99e36dac5d9679f1dc256c46b3dd871fc5628769fdb31e957ea7aecd89a076fae9ddf34e51a65b53044a4e1fbb39470dc1cea23fe5ecabad66afbdbacbce26d7da23898e97b2c3ecede239c1062c1cc57953bcb0b272cc2c57b330430fb8c97ec9ff75bb34e28038e890d519918acd7fe768320fcc5fbec3dde8ef79cea67dc2c5fbb802cfb98627fce816b8785b6ecd8f42b5ea1371db7b1db60d56c1195e3dbfa32114e002f4a8c38a14c4dcf323c451158b07dbd877429e3ab8cf3e31d686ce2346c43583a78dbdadf22e93ad9c68784f8c7ef372a88d91ce7d1ce7bcb9ee0170dbbc40b2b59e7e0d8b57b2ce55814cb0cef42161c2b66d59e13af752b435ab8c39bf1c133b6081ee9764cfafc7828def5a7cddd3a3db345af3ced8573557b5d564ee23e1733da3ced943002c50ea3ae8ef69ed8577ae1bcd8cf1c6288a7d353770f9fb945f0d8c7333336429f1cb3ebaaeecaa3fa259b1b9a7ddebae35aaffbdd86c10b361dde843e81590a779fb27912b2a558ecf6acedc7efbe5a187c61c1bd2ca37f4124c69bbf9851aff403b1b1f8e683a7d7df5e09d742bd20d4c6c6f512e31dafdfb8bee27a65a083019438ec06793068469f8ba5eb316c4cfd2bf7986163a684702324dfcd0f34d93952d9157c3c62a7de41dc2566bd591c1b9cb677e21eabbbf30e5aa7687b26dd29fbf67187efd8bb4ebb661fdf2d27edb97a3886cfb159ffc90298c5cacbf743bacfa89421e7ecd2a9f61ae332e8bd082c080416f2de1bf37fba9477394c51c410699ba3315d9d298ec40a36cf211e0678384cc73f2ea7fcc430fcecb3cfc2145e8e4788e281382d7e16cb8b69e94c97346f4d7b88e3412efda32e2b0fbc62a64c9912c21af01e71896ba9f4e13b2beffab6d12c60c8f471acd2ebce9bbebeb2fd90fb082f415c64da196dc0fe4a958976004b1efe790f4fda637d0ffe087b0c50f0ca60474318e13b264d9a14ca407edc1b5dbb760d6529a73dc665e081da62aa5a7c4beeb95d77dd3578d3217c205e977aa88df36ca8f7b0e68f72e1954c3d957bcf555306da3b1e843ca0f39e7b1541a1befaade63cc5d2d04fe14547dba21e5934ad9afe2e2b7ff2a5ddd3e6692fa5da6d3a8f86604319b8efc88b7b68b9e5962bd907722c6968a3d4036d93b02d5cc30f6dd5f623943b4fdabc75d910dcb837f84e45bca57ef84ea34d55daff6495a59a7e362b9ff436f2a53dd197d9772f0382840fc2186c2514c582688dd9b7182f7eb3d126e06cc6f71221a7ca1dfcb1740bfa6b53d44735fd6d73e53e63f63cb7e7f9838307264213a212c2019e7d9f4c9ded66f8d8cd1d7cfc54c4e4b4189d754d08c378032feebda9798f38d7ad73bbb2d2929fef46dcf33ea400b14f1137e305b8e2f3e1993dd887d120b62b1e76b150141f97f59e7310ba8078b0f45bcb7931aadb328b57940731452779af693cff38372135b8cec6b4c638a7b1a0ce09fb30fb9befeaadeb866e2ff06a8cebb27ae0fa26cd6fc7b45fe28c53df6951d58eaff4b566b138ffbbcbe7ddc1b779ecdac7de7777bef071787faa17f28a8505a8947dc830fa97373d59114287d90cc8a708b818b1ce4ff8c79be13df18af100afd4b87f3ff37184c9bb5387455d27dfb7e09d9fd7ec9a17f6edf5ab99737d9b75219c43397d13e7a6dfe09e45fca67c089fe9d91b79cb582a3dccffe7c3e1ccf16c76f6034bb1e05d2a2dfbe95727faebe8beece26eec273342380ada74312bd61ee90369bf18e98b0de265e5cbf9e9e7994183c0ddd3872bb1f69f75bcb689407325d0d4ba6dad6b4073255261b91010f02a8c3d0b2bcca2e07004405b18ac6047991f10b6f278dce28d83871d7f4d693ce4e7396fdef44d79ad959c0b4f4cfe2ab5b81d1027b6948d19332688ca08190d59f70872fc556a169712f114911b4f7bca961e601934685032453bbdafd273e6391e01913faca104d6faca437baf866b7d7956b28f7eaa21db497c6e04f9b44763bcbfd4fb8660534d19386f9e7297baae3cfbabed4738679eb4d570cc739d5969f94eb3efe78616f92bed67b3ca170bc60cec11c739fd1dce20058366664d358064e76bcad7c6ec5bec3af2fcd6b03c5acb6b53d44773e8271abb3e594c6ac9f6950f32224e9940858762a58648bbd5baa57f83e1b9b7979f7e5f8d718e9e5ddabb9ed5249e9f061165551f3fb629ad31ce692cf25e47b5ed85f336c675d9f5707dc4816d088b053a66016cd7af4b9d45d710ae2d1c04e74c7bdfc6e5c8cbbed2f4af79c1f8c4f982316237a237e174f83343b8fdd7ff3eb48f7e21c442efe1644789377856f3d7d05678cd95f72ff41b16d1bc31ca57cef5c29bf016d55adcc7aed77ba96ab309a27ab589b9a71aeabeaab60c4a27022d9140753d6a4bbc529559045a080144dc5ffffad7a1b44c8167da707332164922f4477a813bb69f74d2494951098df143782b2705d01b11100111a89080859420190b9ea6d746c06394f00c16c7bb478f1e6ecd35d7acf02c3a5c044440044440049a0f813864c9e57e3135e2ccc686e7f5effefe7a120b1801718b356b435ac5c7fe10ef898b6df6b45fb0f171bf88616c88ca573c383a2ceec67644dc7d7fdc3d3e44ef454004444004721058e03c9673b0505211681604106cf188238eed21871ce27ffcd4fe58faa10ac8f46f62b5da826ec4f864b125c25e2cbffcf2216ef93befbc93140fb185d8d33211100111684904e8b7f0a4fefaebaf83a84ccc78bc96599897b056f7de7b6fc1e510db7d41f6582eb8587d1081164ca05aefc4167cc92a7a0e02adadbd107ff88ee73e76f3fcf47f16063ceaea578357ee5a7ef1b5a95fcd756f7d38bd80e6113e66772c4617ecfc013e10df1b8f5dc24120225fec176cbcf2a1d16ebdde9d42f81b16ebe4dacc36efd339c46fb7cf7a150111100111c84740c2723e7e4a2d020d4e8069d7ac36dfdcc48a030e38c0e1adf7f7bfff3d5c3331961f78e0813ad7cf625a2cc4d5dcca5fa7a0da20022220022902c47ebeedb6dbc2a01eb166b137de7823fcc587321b8345fc586c57260222d03c09cc9df75d2226f15e2602f51168cded8585fbaef9f5faee986b5f772c5e88114bf8f9b727d741c64276bb6ddaadcef61f72030bb0dd70ec46ee37d7bc16628c531642772028a76da70d577027efb9467ab33eb74002b3e7ce6b81a556914560c124b0c02ddeb7605693ae4a049a0f01e22cbff8e28beecd37df0c0b01e2d9c702312c5eb5fbeebbbb55575db5f914562511011110812a08d0a721280f1932c48d1d3b3678304f9f3e3d2c76badd76dbb9adb7de3a2c3c5845d64a220222d04404585cebae17c6bb6fbda8bce91a9ddd9add2b5f23a3898aaad33403026a2f350b4c124ae2b9b73e771f4f9ee5173cf40b757bf16ea9f66d437cf07d7fd4dd755cbc79fba5bd36669a7bca5fc33b1f7d99947fb1b68bb87ede7bf9c06d7ae48abfdb0c9aa98a101120b6f6f00fa685854ef7f071e959a8532602225043a0a917ef93b0ac9627022220022220022220022220022220022220022220022220022220022d9c40530bcb5abcaf853718155f044440044440044440044440044440044440044440044440044440049a9a8084e5a626aef389800888800888800888800888800888800888800888800888800888400b272061b98557a08a2f022220022220022220022220022220022220022220022220022220024d4d40c2725313d7f944400444400444400444400444400444400444400444400444400444a0851390b0dcc22b50c51701111001111001111001111001111001111001111001111001111081a6262061b9a989eb7c22200222200222200222200222200222200222200222200222200222d0c20948586ee115a8e28b80088880088880088880088880088880088880088880088880088840531390b0dcd4c4753e1110011110011110011110011110011110011110011110011110011168e104242cb7f00a54f145400444400444400444400444400444400444400444400444400444a0a90948586e6ae23a9f08888008888008888008888008888008888008888008888008888008b4700212965b7805aaf822200222200222200222200222200222200222200222200222200222d0d404242c3735719d4f044440044440044440044440044440044440044440044440044440045a380109cb2dbc02557c11100111100111100111100111100111100111100111100111100111686a0212969b9ab8ce27022220022220022220022220022220022220022220022220022220022d9c8084e5165e812abe0888800888800888800888800888800888800888800888800888800834350109cb4d4d5ce71301111001111001111001111001111001111001111001111001111081164ea04d0b2fbf8adfc804cef8f708f7c288c96e91851772f7fdb9bf5bb27df54de699373f73af8f9de696ead0d61db67daf90676314ffbbef9cdbe7c297dc94afbf71dd975ddc9d7be0baeedec11f8753edb5c54aae6797f68d71daa2797ef3ed77ee9f4f7ee066ce99e7b6ebb7bc5baff752e158db3ecb6fdfac4f67d77fcdce45f32867c7f7df3b77c7731fb9cfa7cf71dd3a2feef6f6d7bad042e5a4ac3dc6ca942e6bed114dffeee3cf67b97b068d0f27debaef72aedfca9dea148263ae7fe27df7eae8a96ed637f392fd6b76efe80ed8baa7db2227db24c356f666f297dfb8c12327fb76b4906fbb5ddce28b2e523181ef7dc37ce28927dc8c19335c870e1ddc0e3bece0165eb8e9c734bffdf65bf7d4534fb9975e7ac9cd9c393394e557bffa95ebd1a347c5d7d49c12705d8f3cf2889b3d7bb6ebd7af9febd3a74f732a5eb32ccbb061c3dcb871e31cec76dd75d7d0169a654155a84623f0ce3befb8e1c387bb4e9d3ab9edb7dfde2db248e57d5ba3154e198b800888800888800888800888400b2250bd4ad8822e5245ad8ec0f41973dd9077bf088957ebb684ebb878f5cd05d1f3a6a7c6b9095fcc0a62e72e1b77755d9769575dc14aa41a36664a1095396cebbe5ddca7d367b9875f9e14524df9ea1b77de41eb94c8a16177231cdf3b68829bf7ddf7ee7f5e5c7fe88c2d82a81e6f47747ff0f42d5c9b452a548253457d6cd82709e32dd75ab662c67199e2b2a64ed3a41f274d9de51e1a3a319c73f29773ea08cbff7df51377d13def659669e4c75fb9d3fef5761096cffde53a150bed9999b6a28d373ef5817bdcb7290628365a7569b7f832958b2f88b87ff9cb5fdcd75f7f1d445c449ca636cab0efbefbba4f3ef9a4e0d4bbefbe7b8b1796bff9e61b77c51557247cefbefbee442443387debadb78290dfb66d5bb7e69a6b8641820208adec03031db7dc724b18605874d145dd8e3bee2861b995b5012e77c48811eed24b2f0d57befcf2cbbbf5d75fbf1552d0258b800888800888800888800888407e024def3696bfcccaa189082076ce9de715616ffbfdb87b6e516eb1b6b5cd6d61ef01dd5876cf8b35dead7859efba69b782d32c1a95a16047237e68b3c8c28977f612ed6ac579b61b06d854ea5d9c55e445dbd432ceda5f6a5bb1b2964ad798fb299359dc86d8f69af7804f8bca1badb6b4db6adde512e61c3768e417ee76efcd2d2b9fc0f8c9b3dc93af7d9a24a8f69ec513b05dbb9a41a425965822c9af29df0c1c38b040545e76d9659bf2f48d7a2ebcbf118db134df3973e6b8e38f3fdee1997dda69a7b9ef98ce212be08437beacf511605041260222200222200222200222200222909f40adca953f2fe5b00011f0ceb549f801a6bfe70dd3d0546898ba8fd888113261d92517755fce5c2c888cdf794fb558d86daa32c5e7993baf50d841fc46b06ba87211aa047119efe86a85402b6fbaacb6bdb9bcd2462fbf7f54529c157df88fab7fbdbeebe443ad6073bffdde9d72cb5beed53153c3e7db077ee4f6ddb2bb6bdb4642520052e41fb30b9e7bfb7377c19d23433b2a72588bda3c6a546d3b39efbcf3dc4e3bede4e6cd9bf78384e4680c708b2db698ebd2a58b4b0be626eae32dce7e990888800888800888800888800888800888800834240109cb0d497301ca6bd484afdca429b3c315fd64a3158258d9122e8fb00888aa183186b19557e8e09e3effc7e17d73fad7a1dd22eef1737ed46045c2f1ee8a23fb35587ecd3da3773efa3284fda09c08f4571ed52f1195d98680fca77dfab89f5f3424b409622f13777bf94e8bb15b161198e1c3b5fce1c6e1eeab9973dd781fae0671794131421f4c9a54130a072fc54d37dd345cda821253156f70622ccb44400444400444400444400444400444400444a0a909b4786119f19329db5fcd9aebe3d32eec96e9b8a8ebe517675ba28c78c0084da3267ced88bb8bf8d06989458308691e8fe9caf8d68785c0eb15e1b25ddb45ea0d5dc0e2676d7d79d2de9108387894b69d1f4b9750136fbc3fcd4df582d7ba3d97aa1313f7cb99dfbaf7bcc88be053edf57de1e3d2625d3ab5736b755fd27be9a5afacee670b278158f9b3cd0ac349d8d1941d710f7e188bf2b158de724b552fdc71bd1f7c3ac37b19cf0de216f5b88caf971ecbb52f596e66793ff0d2845016ea90900866d4357a7387c50a63c4b2bd0d40fc755227086aef8e47549f15922eedcf4d7ce972dad3479fcf742c22c70278b0583d4a47fbca32dad41c7f7c7bef156e33b2ad9d3145dbda49565ab671ae747b4cb7b1acb4d594150f60b374bbb6edbc96537eceffc9d4d9eeeb59dfba0e3e3c087f08be95b49db9fedacd365d6319d7d9dffb69a33fe8e2f3a59fa00adef3755b4c58e698f73f99e1e6ccadb947b95f56edba44c97637eeb3996e82ef83e274bd966f9f391843dd50a7c5429694c3d8daecf7eefba2f9a43994fa0c4bd8d8a04ca9e3f3eca75d733f7cfae9a7ee8b2fbe080ba82dbef8e2ae5bb76e05210aea3bc7575f7d15425b103b195b6185151c7152b32c7def111e026f65b6b76953f72b9098c513274e745f7ef9653886f012e4cfc283c58c58c6589cdfe4c993433e6ccb8a6dccfecf3ef3e186e6fabedd1fb3e28a2b8685c48a9da3beed5c0ff9e0b96ca11d2813d7c23e0caf65ae996d84ceb0e3eacb37bd8f3cc78f1f5fc0062fe9a596aa5990347d7cfc199e5c2f75c6f552e7a45b669965e2c392f794d31679e478ca3e61c284d06638a863c78ea1cd5898952461856fec1c53a74e0d03107064d0a16bd7aeae73e7f21654b5b24d9932256933d4673565b3b649d812ab2798bdf7de7ba1ce181cc9f24e8fcbcf79b91f5898ae94c119aed40fb6f4d24bbb95565a29619f4ecffd031feac48c36c1fd4c5be8d9b3a76d0eaf71fea4237fee756b7f2c3a495e717e710679d85256bb9761497dc2cece1d9f47ef454004444004444004444004444004aa2350fb64505dfa1f2cd55be3a6bbb36f7fc77d315fd44c1784300867ecbf965b7a899a69f1f17ec4cb0bef1ae986bc3725de9cbc5fb37b4777da7e6bb96e9d0b1797bbe189f7dd5d2f8c0fc79dba6f1fb7fdfa75850cffecebcef8f708f7e23b93fdc38b73b79db469108bd97ec23fde0c223265bae794feeece173e76e4c93eeca43d57773f5da66b784f4887b36e1be14678e136cbd65fa5e6fab24470c4ab8bee7ed7bd3062729da494e9c89d56763fff71f73afb6cc38cd9f392b4abafd8d18bc5ed6d577845c0bdfc8151eed1576abc000b76fa0f842438c5f359bbc792e95d453f23329efb9f9141a8ce3aa89c720f1f372d690fbbf9d8cab6101ea1314ef4ecb13d365fd11dbbdbaae17dbcfda77e31c12dd6eaec4ebf7544a6b8467ec7fd6cb550a72171f48f45eefefac068f7f5ec1a7129dae536f6e2f66f76593578d45abc6adb3f67ee776ef77307b9d9fe75252fc8df72fc266edc6733dce17f1b16da045eb80f9cd63f53d4a6cd701c4228467bdcaedff2491b23eddda76c5ea7fd575b561672dce7c29742cc6ddaef5d7fda3ce16bd7c32be5b1f213e7f8ac5fac15ef760c585cfbf8fb998c397015ef5dfe9743fb8610260509333ebcf5e1f4642b030059e69b7b1804b27d59c2f56b63a6b90b7c7f50ac2f6160e5985d6bead0f2e1f5c12113dd358f8c49e290c7fb784f9ba1ad5117dc33075e3634990570be5f40321d5e863eedd8ebde08d9d0de6f396193305013e7fba2bfa74ff7fd0b666da69c81a2388facf74bb66febb65daf4b4d7b02da7c1b33f16b7bdb20af085dcf3df79c3bfbecb383d099ce74b7dd7673c71d779c5b72c9ecbe03f1eaaf7ffdab7bfae9a7d349dd6aabade6ce39e79cf0ca4e44d0bdf7de3b08a1763022d72ebbec123e22d03dfae8a341e86203e2dd3ffff94fc7c26e5946d97ef7bbdfd5114211d5580410bbf9e69bddca2baf1cca6165ecd1a3878b17d47bfbedb7dd59679de5c68d1b17d2c4ff76d8610777f2c92727658af7157b8f10bac71e7b04a17dcb2db774975f7eb97bfdf5d7dd51471d5590e4dd77df759b6db659d8068333cf3cb36c810d91f3ce3bef74975d7659419ef681f39e78e289ae7bf7badf2b63c78e75841f6111c12c5b75d555ddb9e79e9bd41bc79066bffdf60b879f74d249ae5fbf7eeee8a38fce6c337ff8c31fdc3efbec53f6b5c465a00d8c1c39d25d7ffdf5eecd376bbe23e2fd1b6cb0813be594535cefdebde3cdc97b44cf279e7822d4376d2b6dbffded6fdd41071d942ca698de9ff5f9e1871f0ebcd8477b620002066983c955575d15daf9f9e79f9f794f10f2e54f7ffa53e6800da22bf9df70c30de9ac1d5c2eb8e0023760c080827d037dac72cac27eda378b61c2dfdaf2a1871eeab8668cfbefa69b6e72d75d775d411e7c60a0e6e28b2f7677dd7557f0b65f6badb5c2b1f12c823c6cb9b67ffce31f21cff4c93937ed91810d990888800888800888800888800888407e022d52581ef2ee94103bb5becbc70bf8804b86ba074eef5fe0d58747e9afae7ca5a818449e233ffe2a8840171cbcaedbcc7b429a2d845b6b1936c14f25378be3dc22ce619d3a2cea6e7cea03779b8ff91a9b7931e239f8dbbfbf5e547c23cdeb5e2cddfb8297dc6d276f5ae0818920fdcb4b8706b132cedbde23485ee785bd0fbc0088f89b65cf0eff2c78c2b26faffe2b1688a978c8ee7fd1d01052202b2ddbb8fedff9f2232a222e963244e5032f7db9deebb57223d2edb3654d888b74bef70e9a103621caedec85e22c9b36a3eec33fc721921713cad9ffd0d089414845608ced96673e74373f3d2ede54f0fe95d153dda17f7da5609b7d98edbda5cd43748617a5f18647945fcc7bb42336b3efa577bfc81cc04004fdd07bca6230d968b59a766a6d8cbcc8dffb618763f897a7ac78cbd778797def3d6e8b2f3438d97bc75357982f5681b1c81ea14aeab3b1be5d1e7cf9cbee7e2fa8dbfd50ecf89d37eaeaefcfcee13c2baf90bd28dc682f8ce2018fc109efe5d8ee1d3cc15dfdf09878539df708c8c37c3dde7cfcc689984e1ad2d667b419ee854b0eeb1bbc9e57f2756be16506fbc504d3c2f2ebbecf3283e1f00fa6d511965984d06ca70d5728e94d6dc7967aa5aed2fd016588072f4ae5516a3f9e8a83070f0e7fc58e7de8a187dc534f3de5eebffffe3af182478c18e10e3ef8e06249dde8d1a3ddfefbefefaebdf65ab7d1461b39c4a569d36a99164de87720de9116afcf6246d9fefbdfff06b16a8d35d6480e33af6936e0b19a168ddbb7af1d98e3ba10018bd9934f3ee95e78e185cceb2f960661996bc5cc63f6fdf7df2f7678d83e7cf8f0b0905f2ce4154b804078f8e1873b04f162f6e28b2f3afe102ad759679de430c45a160eaccfc68c1913ea1536595ee7975e7a697dc9834089b7eb9e7bee59ef71e99d5c3b5edc2684a6f7f3f9b5d75e0ba2b5b5a9f818c4760632ea0b4372cd35d7b8a14387baabafbebaa8476e9c27ef636fda430e3924bd3bf9fcc61b6f8401053c7eb98e2ca3bdb28f0181b8aef1f8a7bd230c6719223902f2b1c71e1b84713bc6ee278465dad009279c103ce06d3f1ef31865a2cd309891659c17c11d23aff81e615b1eb6dc8ffbeebb6fd16be3dc944d260222200222200222200222200222d030045a9cb08ce7dfa5f7bd975c7dbbb60bbb5f0ce8e1d6f66124a6f970120fbf3c297805730053c66f7a6a9c3bea272b87e311458fbafad502519970097b7af1943009cfbcf1a97b76f8e7e1584495d3fef5761de136ec2cf10f6133cb6c3b4297895d1cb798bf06bc82975d72313f9dfe3b77dcf56f248223fbb7e9dbc511e7180fdc47fcf53de33d643184c753fde264371cb35110986073d455af26a232e7fbc5563d1c610226fa69feb7feefc32426ed93af7fead6f41ec5bba7c25cc0e13fcf7f1cf2e77cb1300c933fdef45681a88c77f7be3fea1ecafeb2f700bffdb98f92b2e381dcb777a73a5eb321f3f9ffc8f3cf9eb309ac9479d74dbab9add6f182b47fff9a5f788df2d8fe7b078d0ff5854818db342fda0f7daf4674ebdb6ba902b13d3eaed47bdad3015bf70c0bff4df4e1302ebb6f5422b223301eba5dafc483f8e551530a4465ca74f0b63dddfaab2ced3e9f3ec7ddfde2c76190a2d83963b19663b876dac236de73f4b161350ffc88dd599ef1cffbc5d58c09deeb7811c3d2da18f9c5831a79cb4a7e66f52deac7356519deb8b1a84cdcebbdfaafe47af8b0359f4d9b1d168a644007238c0cc2eb801283122cccc85f31e37effe34dc393ddebf45cb2205c06214f625139be5f98d570dbc00f93fa4320fefb636383e73283370ff8b660c660c0de7eb0a387bf8739ee9667c625decf2c1cf8dad8a96ec35597f6f77057c74003f68a6f3bd49fb563ea6e881f44c06803f40330c093de8cfb9b7b0ca3ac3f5a7b59dbd568af94aba12c166d11b910a5108011b110546fbdf5d670aa59b366b9238f3c327833daf47884df238e3822290adec9c71c734c081ff1c1071f04b1d6f2470c4304c63b9a7c105ef1ecfcfff6ee04deea39ffe3f8d75e5a505aa468b3458b081565674c636c83c9328331924198c190c14c0ccace5886b265df22c65a195b449631591af30f95a6488584f0ffbebfb7cfafeffddd73ee3de7deceb9ceb9afefe3719dedb73e7fbfd3ff3fefdfe77c7e1a5aafaa2af599d6ab50cb82539b5fd31d7ae8a1e1067faa9a54187ecd35d7e8ed308f422955955a9b8138b0d33ec54395bc3d7bf60c61e1abafbe5a295456d5f0fefbef1faa495f79e51577e185178659b5ffaada56486bfb1f2f33fd5cad1ce26dd0e71b6fbc71a8ae565b0555615b35adaa7e15fea9ad471c60a69769afb5ffaa808e4365556eab425a6d2c14f66bbb2dd85445b78256b50f91fb99679e698b0a55aada2f1d3b6d8f826805af1a7a3d71e24477f0c10727d3a79fa8d2d4e6570b9533ce38235c10d074575c7185db6bafbdf26a3d612d426c3d76cce5131f0f7d6ee7547c734455e3c6a1f2d0a143dd800103c27ec7e7b396a58a687d5edba17345363ace77de79a71b376e5c5894be17364e3cf1c4b07eab44d63668c8f9a38f3e721d3b760caf15daeabb63a1b2be033a4e9b6fbe796833a2efa1e6d190ab8e57dfbe7dc36b3b6774bc75ac6d68bb76d86107a7ea739d33aa468e4365d9fee4273f09dfb749beead98ebbe6d7b18f2fcee8bddada6addfa3584ed9b96a56af69ffffce7a1425995fcda36fb3ee87306020820800002082080000208d44da0e48265f55256ff5d1bba59d926ed9bd9cb10caddf0f8f26a605501faffad118298fb7d85a1c2661ba7eebf49086ced75ffcd5afa56090bdd893ed8d53c0a7eaefbc7fba1a5864db3221f152afdd55745f7d9789d64b10a5155adaaa1f068d4913d5defae6b279fabc5c7001fba9eeddb646828a09ef9e9e2d083f8c1c9b392d057cbbefdd46d5deb65fd8ebbfbb0758fde6d5c5c35faf7c7feeb7eeac3aeb85fee0cbf3c85631aaa888cab4655fda94a701b0a517fed83561b0aeef6f641f5e08b2687f05e7ecff800341d5edbf47a5488f891efb7aba1fdbdf6b8addcc6eb370daff59fde3e3455d06aed151416ead8a4c71353ff975c3050d05d9ba18070ccb03e8987f667db8d5bb8032f981cc2655501ff6fc1d72158d636a8f2dbc65abe95c058ef1df770dea9472b179f8b366d4d8f3fdf6efd24587eeb8345fe7c5fea9aafb9fcabaa75ebc2800db5f7a86e14725bab5b6ffc995ac3d8d0f76c846f05910cefac63ac160f6af5a011f74f4ea6cbe389ce93c32f7ed9e9828386be0f7f3c70b364096993c6bec7b5aaffe3d6396a8da21627aa3cd650303ee4275d7cbb882f92505fe7ece8615b27df137d57076db39e3bf66f5343cf62cda7c05cc1f236fe5cd2f749db36cf5776eb628f7a926be83dfd8a4043a1b286fa97abe7b27d3f67f90b1d9f2dabb8d7f75ae7abc633ff9a17f653db92cf5863b555dceebe9d4f75f355f7593eeb8aa75590a5d610ea416b433d88fbf7ef1fda1de8bd0f3ffcd04d99322509b46ebbedb6240cfad9cf7ee6860f1f9e84a9eae9aa00573ff95768a5d048e1d849279de4060f1e1c56f1c1071f84b059eb56a5645c21a979d4cec246ba3a55dbb6ebaebb860a4f2d5bc1ef7df7dd576d25ae42c4c30e3b2cf4c8d57215e6a9dd830d05790a676d74f2ad16060e1ce80e39e4905035ad504e95ae32a9cd5098ad3f85bbb25600d9a74f9fb0cd160ee6b25cf5a755bb021b6a21a0f60a36d4e643dba8805cc1bc0247b5bc5010a96368019f2abcd562240eca15582a005720aaf1e59715e7bf2d3b7ed4f155e5b2cdaf637efffdf7872a65ed9b8e8baa69153ed766a8bd8a82511b3a1e3bedb45352c5aee5cbc1c261ed975d6c50a83a7af4e810ccdafce9f359e7afaa68e360daa6ade951017a5c8dad73472d61264f9e1c66d5fa6fb9e5161757d1eb38e9d8d905011d9b8e1d3b86e95f7cf1c5e47d5d0050486d3db235cd565b6de5b4bd975d7659987ee4c891952ef2843797fd47ebd671d13960bdaaedbb66d3299ceed7af9fbd0c6d45b48e238f3c32792f7e52175b55ea3ffdf4d3c9e21422efbcf3cec96b9d37bbecb24bf86ec6dff964029e20800002082080000208208040de0299cb0bf35e4cfdcda0aac3f450ab0405b0dd7c45aeaa3d158ea8daef2e1fdada50a0a22ae0f45000abf0c8c63fdffa24a93eb4f756c4a382ae31fea7f571a8ac6dbce7d9e50187fa20c7a1b2ad777b5fa968bd621590e9e6859a77ecc40f6d12f7e743374f42e5e44dffe40ffb6de2daaed328bca550f7ed998be28f43e5a8de9059bae5842a386da817eeaf76e9682f93475590eede7bb9ebfb1f67fe896e3243f444615997f5aade204b019ada2fd8d0b6c543fbfec0b29bf6ade96fced767595b88789a9a9e6b99e77a330bf16c7add846fd75eadc34b59eb468a1a0af4adbfb15e9f79f066954265bda771d4ee9d9caabaf319ba619c1d2385f356896dcb501b0ceb7dab4034be49a14d133f16725be3f554f73c6e23b3abffee651abae9e68a183a1f7e75c994701140cbd3b1bdf4e89e95aad8f59d79c3b79ab071c111dd2b85caf6fe11bb754caa8a15f82ef217b6e2b1b25fb896150fadefb89f7609fffee8e284fe34746eeadf240d9d4baa66b6a163641794ecbd85fe02dac79f2d5fb6aa9c359fc64efe570cfa3744afaf7ee47d77d9b8e9210457109eebdfc5fe971f3abf8a3d1454c5a1b2ad5fd5cb715b02f5f45520abe0d0c24d0561ea41ac402b1e0a1c1536eb730d85650a033554c5a830584355aaf6be5e6bf9eac56a4395a9da8ef45020a59eb336145cab9d40a6a1aa608566ba59980d554a5a90a590541594e9a19b8a59d5b23e534b106d7b5d465c95abe056fb9bcf500f6a1beaffbcc71e7bd8cbe451fdb0e39050c1627a683e0b85e3cf32f5648e3fd7735d0cd04583f4fcba3860ed14744ccd373d7f4daf554d1b87ca36bd42e0f878e81cb4f3e8d1471fb5c9c2050c55fba687ce23abead5f6a97239dfa165a4cf1505b8bbedb65bb228f5a28e43657da069acef7732a17fa2e31ff754d645140b95e3e97441c6fa71eb0241365b551ecbce42652d63c28409c9a2542d1c87caf6418f1e3d2afd02c1ded7636d6df55dd12f096ca8ca5b1707d243377dbcfcf2cbd36ff31a0104104000010410400001046a29b0bc0cb2960b28f66ccd1aafe67f2abe8aaf4e5d1a56ad404515853ff1d5b5db6dda3254f1290c5490140f552aab8fad86829f4376da20feb8d273ddac6b8cef81aca04755aa9aaf65b3d52b4d53d717aad0b46a455b96aab1f5a7a16d544b884cc3e749a1dfabb64bd5670a7375c33d9b5761633b1fc6aa22d2a57289c63edc5aaf4523a7bec61aaa7654eb080d05671397b5d9e8d4a64968cf113ef0ff51bea1fed4360ef2a1b7b631d3d04dee54cdac6dabc9ad49a355dc23e7f84a31bfacd57ceb8d78a85ff00cdf47f87a5f59ad8ace6c63da478b92fdd10dd3d2e170b6f9e2f77513c46cc1a6ce391bb68d5609abf71588abb23ad390d12fb6efe0fe7cc7b44c1f677ccf6702a105c28d4ffc5ff85ced5de276186a996081a05a95c455e5991658c86dcdb4be4cef0dd9ab7308d9d3c766e9773fb8b9be6d882a95ef7866f9859f4ccbc8f5bd11774d4bce07f9abea5f178ce2a1c0d6323b552977eb90f966713a2fee3a7d3b1fc8fce0f4bd6ada7855b77849e370ee6b7e1d87a32e7f255423eb18a93259cbd3faae3e76cb7895611efd0ac0aafeb5cf56cdaf1ece1a0a8b8fddab8bbbcadf1450cbd70d2637685511b8c737e3d48df66c346db46a68bd62af737ddcd4efb3d657cca1e057d58ad9867e2e6f3f9357e5ab02b9850b172661b082228563ea259c1e0a20d59e4255b3fa53f5e2a69b6e9a9eacd26b2d5fd59f1a9a5fed14b20d5565aa225615959a4f2d071452c5433704d30d03d343ad086ca86252dba7161ce9a170d9862aa9d5e7d6c2727bbf588f0aea74133d1bd5dd204fd5b8b2d3bff966d2a54b975055ab8b00e92ae9458b163905d056156bebc8f4a8f60aad5ab5caf45168e9611fa42f36d8fb353d2a80cc361480b66fdf3e04ab0a95e7ce9deb54a5fdeebb15edb8b4ceeeddbb876aedf445007da66db7a17ec70ae7e310d63ecbf6a8e96bda2f6b53915e46da5c9febbc9d356b569854fbd5a2458b8cdbaeef42c78e1d93aa68f59ad6eb7828f4de72cbcaffc6c9206e81910ec5e3f9f52b8038e4d6679abfb6b60adbedbbac6569dd990cf4992e68a8a23fd30d1bf53903010410400001041040000104721728b96059a19baa43ff78d3bf92bd54e5a8aaf6f4a7a16a65056e0a71d4335743a1ab15e7b5f2bd8ced67e4e1c3d47f14d42998d57215eee8667a16eea426adf5cbf48dbbb4a06f7dc86643db98bed1987da647553feacf46bc7f0ad1b3dd30cea6b7c7cf7c5f6a1b937cc86c5593fbf76f1f8230fb4c0e4bbefd2ebc5cc96751ea9d9c6da837b35554679b267e5f61a3f6fdf9699f3af50256f0f6d1278b93e02f9e36d373f532d6d0762958aecd68effbe3aafa34d7317b59bb104dbfb9af48ad2ea0530f6405d2f1f1ad693d3a7775534005976a89f0d917df267d941f7de5e364765d04a969147a5b6b5abf7daee3ac8b132fbcfd897bc557ebaaea3a0ebd6dbaba3cea3b6b7dd2b59c337cfb8b4c55ffdff88b2836f4ef85ced96c237d71a443abc64edf8f7b9f9b99cca2f3567f1aea91acbee67bf8cafdbefe62577c5ae97d3b175431ad0b26aac6b7ea65b53c51406d17539ef72d44143eeba2cf3bfe028a46b808e22ffc6868d9d71fbf55cedf9530d3b2ffa443fef8b3423d57d01b57f2a6d7a3605895a2aa525690a73f05cb365491185725dafb991eadba34d367f69e6e32a676111a0a117583c16c4315b30a112d5856589c6e6da01bd759b01a2f270ec2d5033697a110d0b62d97e957f4340af9acf7ad82c64ebe3d44b6a1f03353e5abccb40cb5645038a91bbebdfcf2cbd91693f1fd6eddbae515c6665c489637b55fe963184faafd525b0b55ecaafa5bc751a1a4ce4f0dbd57dd0d25e365d98d15e3f76a7aae7621358d468d2a7e8154d374fa3c3edfb54fd55d48899717f71fb7f777dc71c72aa1b7ce19b3d1459676edb2ffdf27fd6ac1beebb6cc78fe7c6d75c1e9e38f2bfe6fa3d6ad0b1bd986c27d55d1132c6713e27d0410400001041040000104721728b96059bbb69d0f67d4d774d47def3955aba6878249fd5df1d0f4a447f197beed838af3148d5677f3b1f4b20af15a61d066be5a303dd4bbd5c2476da3c2dc5cc787be4fb155b1e63a8fa65bf24d45c0a675ddfd6c4540ab904d15d5f1500b804f7c65a90d5570aea8a14acc736f9f56abed57a5f6e4772a02bd4d7daf6d6b2191efb669be3800ac69feb8c5c73a4dabaf66577058513995bb99c24cf59a567f5e1dd7177d95f25ebe758bda23581b8c366bafe193a1dc51000035bf49444154366a57f1d3ffeab6b7d0db5addbaed33fd02fff7a3df70aff90adc420eeb0fae75a85d4b5cd91bafd782dcf8bd7c9eabd545777fc3d0cbfdbf31f37d6b92782804560b1dfde902cb75bfdb2a69b3a15edc5dfd31d37155b5b62e5aa93d8685c6fa77a199af8a6eef7b2f2b24b73ecbeff9162c76d147ad70e2203c7e1e6fc78ff1b982db6c5584dade7475a6a655e5716d462ea1ac82360bba2d44adcdba6c1eb50f48ef83c232b5c228b5a1603eae3ed57ee43b7473bb73ce3927dfd92a4dbfde7aeb557bce549a38cf170a9675b3beea46fa62835cd41e22dfa12af57c47a6aaf67c97114faf8aebda6c87be27e9916ebfa1cf656355ee0a86f36dbd52175bcd6bd5d87aaed62f6ad3926dd474dcb3cdc7fb0820800002082080000208205059a0248365ed825a355c3d744ba7c058e1cbcbefce7753a6cf771ff8d60936f4bf834f1df366b829976eaab602b3505bc50a7d5cd757292bdcd476578491b92fbe73dba64925a47eb2ffdb3d3bbbeffc827ec8b0d3ab2fabe256886d95db711fde5d7bb5492abd6d0b9afb76104dfc4fee5561aacaded57c55f78a18ea91fd277fd3361bdaff9d7dff58b5125095b802365590db0df46c3a7b7c7caaff59fab23619ba699fe6afcd58ea83fc7c862ab61f9c3c3bccf2f957557fd21e2fabe222417ea18cf6236ea1a11bc7295856fb04bbf8a08ad8ea2aa56d1b0abdadb61e3d66e2b7ef611c2aebbcd3c50bf593d671d6df8dbefdcced93f20f6ce2f54f8dfa160ff2d5ebd9ce077d5f6cc4fdbbedbd5c1e076cb1aebf91a6afae5df48dfbd78c85a16259fdb0555d6e639ebf1873fcb5afb99b4fee138e95b647df2f05cb1a0ab8d76eb27a121af7efb66ed866b5f551b0ac5f1fe8467f5396b5cad03cea0f5faa43c14f7501a5c2a878685a55acdaf8e94f7fea74f33e0547e9a110dafaf02a54aeaec2d6e655b5672e01b44d5fd363a62050dba53eb4ba699a866e56a79bd6a922393de27dd0b29a34a9da733e3d4fa15eabeab34d9b36a15582c2f274605ed37a27f9561e71a8ac3622aaeed5715158dcb265cb1004aa47707523936975d3e7f399b534d1be661be96a5df57656e5bd8ea78269eda302cc4ce7915db4d0b2756ee6d30623dbf6d4e57db92b28d73ea99a58bdab15fe66fa4edab6cb3f5b2b92f4b658a5b05502670aa46d1e05dc6a89128fbad8eabba22a68ed9b8e4b75c754eb542b1b06020820800002082080000208d45da0e4826555f97da1dec27edf9bfbea3f05c67d365a27fcf91a45a71bd2ddf0f8ff25377353b5e72b3e70deb17beba46259e1a82a1bb3b5b75050f9b1fa13fba12068135f09abf1f5b25610e14596ff68deb8f54096c932bedd66ed462150d6327483360556aa4acd34d47f573fc5571071fa2f36753d3b2def21ab6d1eb4cd7a95aa1ae36528e853e5abc261f9698c5b16926ade03fccd0fd343efb7f055b4b293e95b1f2cf4a699fb5eaa2fecf05bde0abd8e076ed1ca9dbcefc6e9c525af27be393779aeea4eddd0d0b6c93e505572a6a1ccfcdee767868fd41624537b914cf3ad88f7d41bda866eaaa6f3325be5a8c24e0b836d9e5c1eb53f6ae5a24a555d3c51c8386199978e87da65e43256c4b62a78b7f0a1ba20f6df7e3bd363913fd7de8c6e94a76adf4ce7587abebabe6eebbf4fd9c6fafe82850db5a4d0399d29a4d777e5a4bfbf1e425e4d337a589f5051acefa83f044efddcd5e37ca71eadc29f96a97f3bcebbeb6d6716b3e7fbdeac0bbe0ebdcdf5f900ff9df89b6fdba3e54df617c474c14643c7d47a41eb57190ad9b57ef5d4d6bf611a3acf376dbfbc0a4f9f5f78ef3b615d8dfc05a55c875a81b4f4db3df2c81e19f73bd7e5e43b9d2a3d15e6650b7d3efdf4d3e4a7f4160e5958ac752914cb74733ddb0e6b1fa16ac4783efb3cfda860d902b4fffce73f2194cad61a4101dbdb6fbf1d16a16dcbe5c673b63e4d6fa373e7ce6edb6db7b597551e5539adef9a4236fdfb5e5f43ebd63eaa6a5941be7a22ab1548a6a12ad5534e39251c57f5b65558fce0830f26931e75d451ee98638ea912acd677d0aaf345ad1bd48225d3d0850e3be60ad6adcd898e8d8ddebd7b57db4e4395b3b28ce7b1798bfd185f1cd0f743e761fc5ebc3d3a07752eeaf35cdb6d683fedfb235b9d17baa09069a83d8aa6498fd8291f5b6daf2e84d872df7bef3db7cd36dba4171f5e2b4c7ffcf1c7337ec69b082080000208208000020820909fc08a293bcd6f9d759a7aeafb9fb97d47bce0f6f17f7fb9735a956529783961efae4e7d6d6da8e25555bc7613368531ea5f9b6d3cf0e2ac10e2e97355e7da7cba31970dbbd996bdb647858cf693757b2fd7470593762f2d854e8f4ea9e817989e5f6d051e9d3227ac4761a346331fb2b75e16a4295c57256fb671baef4f2dc341e73ce7d457593fdd7f62d9f4ed7d2569a7d699abe414e4dbb8f39f1f85d0cb5ec78fda6e6dd7a2c54babad12d771b0ca4dcdaf9b96a54365bdaf8b000af2d2432d21ec028042d69a6e62979ebf2eaf7551c2824885edcff95eb89986f6716c2dab70d5ab5715ac1a3a1fee7e76a67b7b5970bbf1fab9b7fd5811dbaaf36b5d1ffc6be8a287f6393dfc26bab8ffb37daef3c0866e6cb75fbfaa172ee4a4f0bcaee3447fe3c827fe32c04d387fa0bf99678bac8b8bfb93ffcf87bed9d6fdbf054bdc9bbe1a5955e9fa9ee83baafec7f66fd093af55dcf82d5e916e8e79c5315b867f73ecfd95ed8beddf509b930d5b570453ffe7ab92ef5b7671446d32d6f32d593454516de7f31dcf7ce8de9b55f1337a9d0fe9dec86f7db0c8cdfce4abd02245df895cfed43a476d38e45ecca12ac5175e7821eb2a274e9c987cd6ab57af5079a82a446b4770f7dd7787f03799287aa2b068f0e0c16ee0c0814e37f9fbfcf38aaaf068922a4f15f86af91a0ab9c68d1b57651a7be3f9e79f0fbd76f55af3e51ab6697af5e9b571cd35d784debcf63a7e54c83960c080b00f43870ecd3a5d3c4faecfe3c02ed779cc5dd3df77df7d21f0ce34ef3ffff9cf60337dfaf4f0b1aa4115d46bc8ea90430ea9122aeb3385d5f53deebdf7deac9ba05059bd8835743144e78ac2d33e7dfa84f774cee89ccc365e7ae9a5702c754cefb8e38e6c9315ed7dedc3e69b6f1ed6a78b3cafbefa6ad6755f71c51561dbb7df7e7ba71b69e6326413ff52e09e7beec9780eebbb7ad34d375559645d6c356f7ce163cc983119d7ad95ce983183feca55f479030104104000010410400081da09945cb01c879b0a452d7089775fc1ab058ef6be6efa77c84e1bd8cb7083aff8e65bf681faf52a38b2a11ead0ac334ac85849eab2f703a405685b12a156b3b14240eda66f9cd6e6e9df8819bfa9faa3d69f5fefc6537dd53b8d9db87e8caadf6eb57119068fd973e383d0447e96d51eb09b50cd1f0ff3bcc75f1ad085e78fbd3645f0e1ad0c10700e9b92aa6fde5c00ec9070aa51478a587b6d7aa6af5992a39ab1b16ce6a9ad7fc4583f490e9b0eb5f4fde56d8b652a8155dde135afb91cb4dec9285ac8027eac9dc23aa121f71e7db6ec6ff96b761b1555cfb8ff743b5abbdcef731de2f5d0cb1734e3729d47ee73256c4b66a558d56aba88855c8add61ce9719ddfd7f4f74ed37cf9f5d2a4625b21f3675f56ad52bbf9e919a12fba2dd342557b9dcba342d22b1ffe8f1b7eeb5bee8c9bff1582f86cf36de28379b5d3b171d6adffaed4c242ef2b28bfe09e7792f05561700bdf4f5b2d6b6cfcddff3a22d3450f5529c7efc73dc975dc74833e0d4da3605b4317c3acea5dc17797f52ab64fdf01996bd87ce1c5b2ffe88297fe54e59ceb9fa6efbfd9bae1c259bcac623c3febacb3dcbbefbe5b6555bab1db65975d96bcbfdf7efb8530523f71570b0c0d0579a79d765ab8095932e1b2270a371518696cb8e186395588aa62f6e8a38f0ef3e83f0a7d9f7df6d9e4b53d51d5ee19679c612fdd91471ee99a365dde4e25f920cb13dd84ad63c78ee1532d4ba19afd02c066d1ebdb6ebbcd5e86902c5b356932511e4fd45f379fa1a06e9f7df6496651bfe438f8b70f5495faf7bfffdd5e868af278bb55f5ab1b1da6872a4a6353ab1c4f4f57e8d70a961f7becb12aab59b06081fbc31ffe90bcbff7de7b2795f60a5b6d8c1e3dda3df7dc73f63279541b882bafbc32795dddcde492890afc44c7f417bff845b21655995b5fe2e44dff4461fa5d77dd15ded28501b5d0c875a8558d0db9285c8e87ce737dcf5459ac65a7475d6c77dd75d7647153a64c7163c78e4d5edb135d703ae18413ec6595476d9fce7505eb975e7aa99b34695295697803010410400001041040000104960bacbafc69693cdbb85d33d7d4ff745ced3014241d73d5abe1065d0a4a14ccaa57f0832fce0e9f6b8ffcff8e4a5a59ecb3ddfa6ecc933392cfaef63f477ff2f5fff95072fd505da8b0ec655f716c43a1e76f7fd2d95e862a42bda7904715b9fbfee57977dca0ae3e785e3dccf7f0cbb393102a9929cf270abfc74d9e158238eddf2937be117a0e2b505aec03badb267e18f6d116bbcf76ed5c537fb32f8d78ffb48d43ae9eeab6f7158e037dcb0ab55450e03bf1cd7936ab0fa4d771aa50feebdd1561b842ad5d7a56045ec944d193ad376a11c238196b285453a5ae2a5075c3b1f12f7f5ca972b7b3bf79da969d975779478b0a4f756c74833add6851e3613fffc79f2d71d63b58fd84e3905ad3ccf53d6beff237191cb079ab10eeeb3d55ef765877f94f93f55e31c6effcb13feaf257c2aae47dc46553427b8abebe3faeda3fdcffc2ac4ac7aa36dbb4f9066b8530d32e2468193a0707f81bb8e533eabaad3a569b766896ec8fdacde822c5a03eeb8563f24035fbaa63b39a3fb7d40e444e075d30d9fd7ad78ea16a57d5e80fbd34bb4a20adfed53aaff5bdce67bce45b4bd80dfcb47dbad862616dbc1cedcf90bd3abbd3c65454e2a935ccfee7bfe0060fdc207c2f66ccfdb2d2bf159a7788afa8d77ceaabac56341aeaa1bce79f9ef5fdb0db87f350efe9d70caa64d6be6ae8d7127118adf7d4224617b0f41db7a1f3c686d6a33ecb7145bff6236e79a36935dd49fb6c64b395c4a3c26155b01e76d8616e975d760955850a6f6ebdf5d664fbdbb76feffaf5eb97bc3ef8e08393d075ead4a96ee79d7776279d7452085ff5737d05410f3df45032fd6f7ffbdbac3ff14f265af6a46fdfbeae63c78e4928ade55a2f67859de96d53a0bcefbefba61753ed6b05d85aaefa2b6b28587beaa9a79c5a44a8ddc4bc79f3dc8d37de9854862a7053b0be2286f5ad5685eab061c3427fe7b5d65acb1d7ae8a119ab88e3752a10d7317afae9a7c3dba79e7aaa53c06a21ab82e61b6eb8219965b7dd76736af5a100b36bd7ae6ece9c39e1f82a883ff9e49343b5ac8ed78409135cba52f81ffff887ebd1a347a5aad364c1057e327cf870f7cc33cf04735dc85085eee5975f9eb46a5050ae6a781b6aef70f8e187bb5b6eb925bc25579d337beeb967e81dad4a67859276a33c9dcf6aebf06318f1f9ae16276a5df29bdffcc6e9c6933aefd43b5ae7a78d030e3820696f61ef55f7a8decd3ab7ec22c9a851a3dc934f3e19d6a3f5e97cb1bed5fab7203dea62ab79e3752b1c56b8addedeaabe9f366d9abbe4924b92e39a5eb7bdd677d32e16a8fdc98e3bee681ff1880002082080000208208000022981920b96fdff3e777ffd75f770432cdb97a7df98ebf497691cbef386492f65cdab1ebe878d7a29a9fc54c5f3c8fbaa56cf29b0b9ecb7bdc2cfd66db9eaa5aabec2b62e558f5efcc07bf671c6c7b85231e304a937d7f63d5b2f3ca24708942d7452b89a0e58359b2a2e8ff5fd6a6d68fffe765c6ff71b1f765ab5a482df4c6d1af4b3fb730fdddccdf4c19e02388d9dfc4df31aadee179265a82afad2a37bba5f5ef452d22a44c157a62a6d859f3a4edaa6eac6a03eed7c2b80594908a7502e5b9b112d47260ae4146edb3e1ed0bf7d08d8b2ad27db8df9b2bd9f6d39e9f7159c9f75f066be254b4530afcf75712253356f7ade5c5fcb6faf3e6dc305059b675b5f996a1713ecbd9a1e57c4b6eabbf4c4d4e581a9827ffdd534d4e379077f21c0ce6105ae16cc669b57171bde9bf5b91b77567fdfbfba6a1b946cf3c595cea1badd9fb3d9c6361bb70801b7b5c5d1b9a5b625995a9728a0562f770db5163972b78e6eb4bf48a5a1f9d4a624d3d0bf237f39748b2aed2bdaf88a7755925b85b7a6db62c3e57dd2b52c5df8d185301bdade78ffecfd423edabf415a47beff96a5b74bc18e054afa4c41721c26dbf4fab9fef5d75f5fa947b2022305af0a623514485d78e185364ba547054bba595e3c32ddeccf3e57e8ab9fcdfff297bf0c41a8de7fe49147c29f4d638f0ade6ebef9e6a4d7aebd9fcb63fffefd4305ecc89123c3e46a1ba19ba7651a23468cc8da9b36d3f4d9de53af69f5a456b0a7a1d0507fbaf99cc2fd9a8602e2b3cf3e3b54985b4b0805f871886fcb50e0aefdb1bec9ba7060e19cc26ddb6f9b3efd280fb5ff90bd85e1e96956e46b85c5f17a64644ee9f55c7df5d5558ec7ef7ef7bb50d9ab905ca3ba734621752e3dbfb59c4c3701d4fb2b6ae8f85c7bedb5218055eb150d85bdf105025bd7269b6c128e89bdcee551e78c2a82e7cf9fef1e7df4d1308b6ee66737f4cb651975b1d5ba67cf9e1d2e5e685dba10a5bf7c46dc035efbc340000104104000010410400081ec0235c47ed967accf4fb6d8b0b9bbe5e46d5cb70ecdb36e467b7f73aef30edf220447f1440a87c7fda9bffba9afb4ccf6bf1714e0dc7d7a5f1ff4545dfe99076de6f6edbb7eb2485562dad0cde7aefbdd564e6d0a3414aeaa92373dd4b7b9baa19fc4dffe876d5dafce6b679c4cb30ff195d4379eb875d2e7d726ece0f7fbfee1fd4255a5bd173f6a5eb557b8f78cbea19fb1fabb5a787460869bf6c5f3eab96e56a6b0af3a3fb50f79f8ecfeaef5b29ebce965c4fbdfa1556377f5b15b861ba0d97431cf66be4a76ecefb775c7ffacab7d1cb6d7c2675571aa82b4baa1f629b6cc5557597ecac7bd87e3f7ab5b96f5b1b66976f6fb7aad0ff3e3b60af6991ebbf8f05917285431ae91edc677d9ded73cb2d6b964639fe8fcb3f7d28fb1b17d56d76d55107afdf15b55bad862ae5a87cefbdb7ebf4da84ed6ebb88a7cb80fe0e3ef4d1c90ea97060a6afff1e71dc2af1134af86f641cbcf76fc2aa6aafcdfea2e8c549eb2e2d5af76d9d05d7c54cfe4c67ae969f49dd6bf23f1f9a7690ef321fb9ffd8519ddd032dbd0f7778cbfd95fefae55bfc73a9cf1cd175bf9f61a5a573c366ad734396ff4be2af98b3dcc536d50d6a9665f73d92e85ca0a3315c0a9b235d35028acb604ad5bb7aef271cf9e3d4365f2a04183aa7ca637143e5f75d555a12a370e83f45c95b01a718b86f0c6b2ffa82a51379b536b00fb797e3cad9eab4255dba6361bd9464de1a16e6aa7803cee051b2f4b55da6a1da08aecda8c741f65edbbf669f7dd774ff64bcbcda78d8796a9eae2d826de36d91c77dc71ee89279e70aa84b6b1d5565b8500d3fa34a73d35cfe4c99343b5accd638f3afeb68d35996a1e2ddbd663cba8e951a1b282536d77dc0e259e4f6d191e78e0818c378c5440ab8b1bba0860db1acfabe7763e5777cea4e7e9d4a953f2567c1e276fa69ed4661add604ffdc455d99f69e83ba09633aac8ced64bbcbaf5cae6dc73cf0dd5c1ddba75abb40aad5be792aaddf59dd5489fb775b1b579fff4a73f553ae76d23b46fbac8a1e366a3ba7dd1c51906020820800002082080000208641758c9f793f3f576b98ffffeb7a2ffb07eeefa63184bbe518fd225216c5465a376a69d6fef90e92670e9edd59eeb26560aedbef72fb4ac8e6dd6cca92a503febd74db214b6cdf1ed1b1430b5597bc5ff0f106dd3cc4f16fb3eb5df858ac1b57dbfe78efee67a0adc6a1a4bfd367e3077716811a21b8fa952b4abefa9ecff375f325431f9c23b9f86406f77df6e2397e5dacce6a71b937dee5b09e897ff6a6d118786366d2e8fea25bbc0f78e5edbb71699ef6f10b7be0fc9e3e3f891bf41d927bef54013df0a65896f45a28ad68ebe6a7beb6595a4b9aca390d32cf437b4531b06592b2c55709d6f657121b72f5e765db755e78d6e68a7f35ec72ad7ef8dcec919bedabca50f52f5bd51e57cbb961537acd3f6e97ba51be9e99fa50dfd796efdcde36d2fd47399a8dfb12aace7fac736fe6698f1b6655bafe6534b8cc6be2fb29eafb9c6aa61beda7e0fb2ada7dcde5715b1c266f5a25578a530319710510eba399ce6555b0585420a345bb4c87eb3c67cec74eea9925301959eab3a3a9f6dcb755deaf5aa3ebe4b972e756abf607fb9ce5f1fd3998dcc75fcf45aad0f6a3a6ee6a99bb6e94fe1a27c6da81a5ace3a8e2d5b2e6f09639f17e351c741dba9fdd2fee87cd231c975e87cd4f194895aa8b46ae55b50f9f3fac73e14b0ab158bb659d5d23a3e0a7ce3e353d77dd0f755be3a6f2c44d6ff2f79e0810786451f7becb1c9af1132adabb6b676be5a4b92e6cd9b87e35a5d909c69fdbc8700020820800002082080402909143bb72df960b9940e2edb8a000208208000020894ab806ee6a8ca7c8de38f3f3ef4374eefab025f550ddf7df7dde123b5afd02f02180820800002082080000208205077816207cbcb4b86eabeed2c01010410400001041040a0810ac4d5ebd75d779d7be5958a1bdc1a87426505ca162aab35855ab530104000010410400001041040a03405aa36002ecdfd60ab11400001041040000104ea51a043870eae6fdfbee126916a6f3264c890d04a668f3df608bdb0d5afdb5a536833d587da7a2dd7e366b36a041040000104104000010410a8a500ad306a09c76c082080000208208000029505d4377df8f0e16ed2a449953f48bd1a366c981b3c78f00aede79c5a052f1140000104104000010410687002c56e8541c572833bc5d8610410400001041040a03002ba69e1a851a39cfa2dbff8e28beef5d75f0f55ca0b172e74cd9a3573fdfaf57383060d0a37712ccc16b05404104000010410400001041028960015cbc592663d08208000020820800002082080000208208000020820804081048a5db1cccdfb0a7420592c020820800002082080000208208000020820800002082050ae0204cbe57a64d92f0410400001041040000104104000010410400001041040a0400204cb058265b1082080000208208000020820800002082080000208208040b90a102c97eb9165bf1040000104104000010410400001041040000104104000810209102c170896c5228000020820800002082080000208208000020820800002e52a40b05cae4796fd4200010410400001041040000104104000010410400001040a2440b05c2058168b000208208000020820800002082080000208208000020894ab00c172b91e59f60b0104104000010410400001041040000104104000010410289000c1728160592c020820800002082080000208208000020820800002082050ae0204cbe57a64d92f0410400001041040000104104000010410400001041040a0400204cb058265b1082080000208208000020820800002082080000208208040b90a102c97eb9165bf1040000104104000010410400001041040000104104000810209102c170896c5228000020820800002082080000208208000020820800002e52a40b05cae4796fd4200010410400001041040000104104000010410400001040a2440b05c2058168b000208208000020820800002082080000208208000020894ab00c172b91e59f60b0104104000010410400001041040000104104000010410289000c1728160592c020820800002082080000208208000020820800002082050ae0204cbe57a64d92f0410400001041040000104104000010410400001041040a0400204cb058265b1082080000208208000020820800002082080000208208040b90a102c97eb9165bf1040000104104000010410400001041040000104104000810209102c170896c5228000020820800002082080000208208000020820800002e52a40b05cae4796fd4200010410400001041040000104104000010410400001040a2440b05c2058168b000208208000020820800002082080000208208000020894ab00c172b91e59f60b0104104000010410400001041040000104104000010410289000c1728160592c020820800002082080000208208000020820800002082050ae0204cbe57a64d92f0410400001041040000104104000010410400001041040a0400204cb058265b1082080000208208000020820800002082080000208208040b90a102c97eb9165bf1040000104104000010410400001041040000104104000810209102c170896c5228000020820800002082080000208208000020820800002e52a40b05cae4796fd4200010410400001041040000104104000010410400001040a2440b05c2058168b000208208000020820800002082080000208208000020894ab00c172b91e59f60b0104104000010410400001041040000104104000010410289000c1728160592c020820800002082080000208208000020820800002082050ae0204cbe57a64d92f0410400001041040000104104000010410400001041040a0400204cb058265b1082080000208208000020820800002082080000208208040b90a102c97eb9165bf1040000104104000010410400001041040000104104000810209102c170896c5228000020820800002082080000208208000020820800002e52a40b05cae4796fd4200010410400001041040000104104000010410400001040a2440b05c2058168b000208208000020820800002082080000208208000020894ab00c172b91e59f60b0104104000010410400001041040000104104000010410289000c1728160592c020820800002082080000208208000020820800002082050ae0204cbe57a64d92f0410400001041040000104104000010410400001041040a0400204cb058265b1082080000208208000020820800002082080000208208040b90a102c97eb9165bf1040000104104000010410400001041040000104104000810209102c170896c5228000020820800002082080000208208000020820800002e52a40b05cae4796fd4200010410400001041040000104104000010410400001040a2440b05c2058168b000208208000020820800002082080000208208000020894ab00c172b91e59f60b01041040000104104000010410400001041040000104102890c0aa055a6e4116bb74e952377efc78f7dd77dfd56af99a7f871d76700b162c706fbef96658c6ce3befec5ab76e5dabe5157ba61f7ef8c13dfef8e3ee8b2fbe70eddab573fdfaf52bf8267cf2c927eee9a79f76abaebaaadb60830d5c9f3e7d0abe4e5680000208208000020820800002082080000208208000023f6e81920a96bff9e61b77d965978560b5b6ac9d3a75721f7cf0811b356a545844e7ce9d4b26585ebc78b1bbe0820bc2fe2be4bde79e7bdc2aabac525b8a9ce69b3f7fbe1b3972649876f5d557778f3cf2885b679d75729a978910400001041040000104104000010410400001041040a03c051a5c2b8ce6cd9b3b05a436565b6d357bfaa37f5488dca851a3b09dc5aab24e07d72badb4d28fde890d4400010410400001041040000104104000010410400081c20a9454c5f29a6bae19aa74d5d2220e3cf55c95b4575c7145d0da7efbeddd39e79ce354e16ce3fbefbf772bafbc72a84e7ef7dd77eded927d54f532030104104000010410400001041040000104104000010410a80f81920a9605d4aa55ab8c4e6badb556f27eefdebdddda6baf9dbce609020820800002082080000208208000020820800002082080c08a1328b96039975dfff6db6f7399acd234aa829e33678e5bb870a1d373f5116edfbe7da872ae3461ea85a6d50deed48b58eb55557593264d5c8b162d92b615f12c9ade866e88a7f1f9e79fbb8f3efa28ccafea6b85e76ddab4b1c9f27efcfaebaf2b5574db7a6c41f3e6cd73fad3f6aa15884278b5d6484f67d3f3880002082080000208208000020820800002082080000208c40265192cc73b58d37385a98f3ffeb83bf3cc33ab4caa5ecc6aafb1f5d65b57f94c01b16e9e77f1c51757f9ccde183a74a8fbd5af7e9584bc3ffcf083fbfdef7fef9e7bee39d7b871e330ff1d77dce1c68e1d6bb3248f1b6db491bbfcf2cbf3bab1a096af65e90687364e3ffd7477c00107849793274f76679d7596fbecb3cfece3e45181f629a79ce2f6df7fff647bf5e177df7d974ca3275a0703010410400001041040000104104000010410400001041ab640830f968f38e288ac67807a340f1932c4dd76db6d6ed34d374da653bfe661c3863905b5d58dbffded6f6ec18205eee4934f4e2653a0acf1d5575fb941830625efa79f4c9f3edd1d78e0816efcf8f1ae69d3a6e98fabbc56e07bedb5d7ba1b6fbc31f94c21b685ca0f3cf0803befbcf392cfd24f14205f74d1456ee6cc99eea4934e727693beb66ddb86ea6d85d19d3a7572cd9a354bcfca6b041040000104104000010410400001041040000104106860022b37b0fdcdbabbbae1df35d75ce3c68d1be7468c18e154ad6ce3ce3befac54a9fbd8638f550a950f3bec3077d34d37850a64551977efdedd66750a74172d5a94bccef4e4d0430f0df3df77df7d4e55ce36bef8e28b50dd6cafb33d2a545695721c2a6b1f0e3ef8e0308bd6afedb2a17dbdf2ca2bdd5d77dde5aebaea2ad7b3674ffbc8dd7efbedeefdf7df4f5ecbc16e94a850d902e764029e2080000208208000020820800002082080000208208040831368f015cb3ae2279c70823bfcf0c39383bffefaebbbce9d3bbbc1830787f75e7ffdf5d012426d3314e23ef3cc33c9b4975e7aa9db61871d92d7aaeaeddbb76f58de3befbc13e64bb7934826f64f54651cb7da38f2c823437fe5b3cf3e3b4c366dda34b7e79e7bc6b3547aaeed51a5b1da72d85058bcdd76dbd9cbd03b5a21b58682e251a34625fd94bb74e9e2b6dd765b77eeb9e786ea684d3363c60cd7b56b573d75aaceb6edb765840ff80f02082080000208208000020820800002082080000208345881065fb1ac1bf459801c9f05ea71ac805863eedcb9e1067bf1e77aaeb61671b5af7daeaade0e1d3ad8cbac55be5a6f1c2adb0cfdfbf74fda5f4c9d3a350976ed733dea06811a0a842d545665f10d37dc5029540e1345ffd134bad9603cb4bd6a09b2cf3efbb8fdf6dbcf296cb6d1a85123b7c9269b8497da56ab5eb6cf7944000104104000010410400001041040000104104000818627d0e02b96d5e75895c89946dcdbd85a40e8f1fcf3cf0f95cbe9f9befefaeb7063bc091326b8279f7c32d3222bbdb7d34e3b557a6d2f14e6ea4f15c2f136d8e77a7ce38d37dc69a79de6264d9a94bc7dc92597b85ebd7a25afed498b162d42a5b27a465b6f67b5ef18387060a84cd63a36dc7043377cf8709b2579d4fe5a5fe575d65927799f2708208000020820800002082080000208208000020820d070053227aa0dc843ad2bf21d56b5ab9611fffef7bfdd9429539c2a8b67cf9e9d2c4a21ac6e78976d68190a7c6b1a8b172fae32892d3b0e9535d1534f3d15aaac575eb97221fabaebaeeb4e3df5d4d03bda1676ebadb73afd69b46edd3a542b0f18302054275b886ed3aa1d86c6b7df7e6b6ff188000208208000020820800002082080000208208000020d58a07202d900215ab66c99f75e2b303eeaa8a3dc01071ce0d40b79fcf8f19542652d50d35457e1ab5ec76badb556deebb6652b2c4e8f871f7e38ebcdfed4e64237188c6f2c68f3abd5c7f5d75fef7413c1638e3926544adb670a99ad1546dcdec33ee711010410400001041040000104104000010410400001041a9e40830f9675f3bb7cc692254b423f62b5a2b071e081073ab5a1183b76ac7be289274205b35a6c5457b16c37c4b365e4fba83ec90a7c9f7beeb91008dbfca79f7e7ad6f56eb1c5166ecc98316ee2c4896ef4e8d16ed8b061ae5bb76e366b7854e5b55a62c4db67e17b9b366d2a4dcb0b041040000104104000010410400001041040000104106898020d3e58cef7b0cf9a35cbcd9c3933cca6aae3fbefbf3fb499b03612d6de42fd960b3974d3415520ab17f3d1471f9d5447ab8ff245175de4ac7d85b641dbf2e5975f3a6baba19ec93d7af40881f42db7dc12fa41efbbefbec9e6befcf2cb6ed1a245c9eb35d75c33dcb42fdd533a99802708208000020820800002082080000208208000020820d0a0040896f33cdcfffdef7f9339860c19e236d86083e4b53d59ba74a97bfbedb7ed65411edbb66debac977293264ddc79e79d97ac47370e5455b28d871e7a28dca84fe1f76bafbd666f278f6ad9f1c73ffed129acb611f759de6db7dddc4b2fbde454f1cc4000010410400001041040000104104000010410400001040896eb700e4c9b36ad52cb082d4a95c2575e796552d5ac9bf4a9b279450fab3eb6e5f6e9d3c7edbdf7def6d29d75d6594eed3234e25ecfd75c738d53f09d1e6adbb160c182e46d6b113267ce1c77e9a597867dbaeaaaab9c5a813010400001041040000104104000010410400001041040a0610bacdab0773fffbdefdcb97332d3534f3d1582d6830e3ac8356fdedc4d9f3edd5d7df5d5957a1c7ff5d5574e15c33beeb8a32b648f625518ab67f2840913c2cdf7d41263d4a851eefcf3cf77bd7af54ab6593d9455b97ceaa9a7ba8e1d3b86f7df7aeb2d77c30d372437ed5335b4da6568a825867a476b28203fe4904342fb8df006ff41000104104000010410400001041040000104104000810629d02083e56fbffd36ef836d15bc9d3a75723d7bf67476f33edd3c4f7fd50d05bc9f7efaa91b3a74a853d05ca8a1705b2d314e3cf1c4b00a05df6a63b1cb2ebbb8bffef5afa1dd853e50e83c62c4888c9ba1f078e4c891cefa29abe23a1e718b8cf87d9e2380000208208000020820800002082080000208208040c31128cb5618ea395cdd50386c2397a0b471e3c64e7f1aea6bac5617aa52b6d1ba756b7bea7af7eeed6ebdf556377efcf84a2d30d658630da775e9a6791ae9c0365940ea49972e5d925ecaf147baa15ea6d1af5f3f3768d0a0e4236dab5a5f2860bef9e69b5df7eedd93cfd24fb44fe3c68d735aa70d0b98f53ad76db679794400010410400001041040000104104000010410400081f21458c957e2fe90cfaed9cdebe29610f9cc5f4ed37efdf5d76edebc79a187f1fcf9f3c363d3a64d935d541f64f5285638dbae5dbba40a3899a09e9e68bbd4e262b5d556737aaed0bb458b163f9aedab2716568b000208208000020820800002082080000208208040c90a143bb76d90ad3056d4d9a140b67dfbf6617199aaa45555fc630ce0b55d56f1dcb265cb15c5c17210400001041040000104104000010410400001041040a0810894652b8c0672ecd84d0410400001041040000104104000010410400001041040a05e040896eb859d95228000020820800002082080000208208000020820800002a52b40b05cbac78e2d470001041040000104104000010410400001041040000104ea458060b95ed85929020820800002082080000208208000020820800002082050ba0204cba57becd8720410400001041040000104104000010410400001041040a05e040896eb859d95228000020820800002082080000208208000020820800002a52b40b05cbac78e2d470001041040000104104000010410400001041040000104ea458060b95ed85929020820800002082080000208208000020820800002082050ba0204cba57becd8720410400001041040000104104000010410400001041040a05e040896eb859d95228000020820800002082080000208208000020820800002a52b40b05cbac78e2d470001041040000104104000010410400001041040000104ea458060b95ed85929020820800002082080000208208000020820800002082050ba0204cba57becd8720410400001041040000104104000010410400001041040a05e040896eb859d95228000020820800002082080000208208000020820800002a52b40b05cbac78e2d470001041040000104104000010410400001041040000104ea458060b95ed85929020820800002082080000208208000020820800002082050ba0204cba57becd8720410400001041040000104104000010410400001041040a05e040896eb859d95228000020820800002082080000208208000020820800002a52b40b05cbac78e2d470001041040000104104000010410400001041040000104ea458060b95ed85929020820800002082080000208208000020820800002082050ba0204cba57becd8720410400001041040000104104000010410400001041040a05e040896eb859d95228000020820800002082080000208208000020820800002a52b40b05cbac78e2d470001041040000104104000010410400001041040000104ea458060b95ed85929020820800002082080000208208000020820800002082050ba0204cba57becd8720410400001041040000104104000010410400001041040a05e040896eb859d95228000020820800002082080000208208000020820800002a52b40b05cbac78e2d470001041040000104104000010410400001041040000104ea458060b95ed85929020820800002082080000208208000020820800002082050ba0204cba57becd8720410400001041040000104104000010410400001041040a05e040896eb859d95228000020820800002082080000208208000020820800002a52b40b05cbac78e2d470001041040000104104000010410400001041040000104ea458060b95ed85929020820800002082080000208208000020820800002082050ba0204cba57becd8720410400001041040000104104000010410400001041040a05e040896eb859d95228000020820800002082080000208208000020820800002a52b40b05cbac78e2d470001041040000104104000010410400001041040000104ea458060b95ed85929020820800002082080000208208000020820800002082050ba027907cb2baf9cf72ca5abc3962380000208208000020820800002082080000208208000023f7281efbfff3e6c6131b3dbbc53e2d5575f3d6ce492254b7ee49c6c1e020820800002082080000208208000020820800002082050fe02df7cf34dd849cb6e8bb1c77907cbcd9a350bdbb560c182626c1feb40000104104000010410400001041040000104104000010410a84660fefcf9e153cb6eab9974857d54ab60b951a3466ef1e2c56ece9c394e95cb566abdc2b68a0521800002082080000208208000020820800002082080000208542ba06c76f6ecd921a355665bcc6079a51ffca876eb327ca820d942e50c1ff316020820800002082080000208208000020820800002082080409104142ab76ddbd615b3c772ad8265f3f8fcf3cf9dfed4c383aa6553e111010410400001041040000104104000010410400001041028ac804264f554569572312b956dafea142cdb42784400010410400001041040000104104000010410400001041068380279f7586e3834ec2902082080000208208000020820800002082080000208208040260182e54c2abc8700020820800002082080000208208000020820800002082090558060392b0d1f2080000208208000020820800002082080000208208000020864125835d39b3fc6f7bef8e28b4a9bd5b469d34aaf7981000208208000020820800002082080000208208000020820501c012a968be3cc5a104000010410400001041040000104104000010410400081b21120582e9b43c98e208000020820800002082080000208208000020820800002c51120582e8e336b410001041040000104104000010410400001041040000104ca468060b96c0e253b82000208208000020820800002082080000208208000020814478060b938ceac050104104000010410400001041040000104104000010410281b0182e5b23994ec080208208000020820800002082080000208208000020820501c0182e5e238b3160410400001041040000104104000010410400001041040a06c040896cbe650b223082080000208208000020820800002082080000208208040710408968be3cc5a104000010410400001041040000104104000010410400081b21120582e9b43c98e208000020820800002082080000208208000020820800002c51120582e8e336b410001041040000104104000010410400001041040000104ca468060b96c0e253b82000208208000020820800002082080000208208000020814478060b938ceac050104104000010410400001041040000104104000010410281b0182e5b23994ec080208208000020820800002082080000208208000020820501c0182e5e238b3160410400001041040000104104000010410400001041040a06c040896cbe650b223082080000208208000020820800002082080000208208040710408968be3cc5a104000010410400001041040000104104000010410400081b21120582e9b43c98e208000020820800002082080000208208000020820800002c51120582e8e336b410001041040000104104000010410400001041040000104ca468060b96c0e253b82000208208000020820800002082080000208208000020814478060b938ceac050104104000010410400001041040000104104000010410281b0182e5b23994ec080208208000020820800002082080000208208000020820501c0182e5e238b3160410400001041040000104104000010410400001041040a06c040896cbe650b223082080000208208000020820800002082080000208208040710408968be3cc5a104000010410400001041040000104104000010410400081b21120582e9b43c98e208000020820800002082080000208208000020820800002c51120582e8e336b410001041040000104104000010410400001041040000104ca468060b96c0e253b82000208208000020820800002082080000208208000020814478060b938ceac050104104000010410400001041040000104104000010410281b81957ef0a36cf6861d4100010410400001041040000104104000010410400001041028b80015cb052766050820800002082080000208208000020820800002082080407909fc3f0ffcc44c9d4fe7460000000049454e44ae426082}\par} @@ -584,7 +414,161 @@ https://github.com/joyent/node {\pard \ql \f0 \sa180 \li0 \fi0 {\pict\pngblip\picw1418\pich382\picwgoal14260\pichgoal3840 89504e470d0a1a0a0000000d494844520000058a0000017e08060000002ca42e9d00000c16694343504943432050726f66696c65000048899557075853c9169e5b5208092d100129a137417a95dea54a071b2109104a080941c58e2c2ab8165454b0a2ab208aae0590b520a25810017b5d2ca828eb62c186ca9b24803edfdbef7def7cdfdcfbe7cc3967fe73eecc640600457b964090852a0190cdcf134605fa3013129398a43f01027020070c80368b2d1278474686827f94f737a03594ab969258ff6cf75f4599c315b1014022214ee188d8d9101f0100d7640b847900103aa1de60569e4082df41ac2a840401209225384d86b524384586ada5363151be10fb0140a6b258c234001424f199f9ec3418474100b1359fc3e343bc1d620f763a8b03710fc413b2b3732056a4426c9af2439cb47f8b99321693c54a1bc3b25ca442f6e3890459ac39ff6739feb764678947c7d0878d9a2e0c8a92e40ceb569d991322c1903b729c9f121e01b10ac4e7791ca9bd04df491707c58ed8f7b345beb0668001000a382cbf1088612d51863833d67b04dbb284525f688f86f3f2826346708a30276a243e9acf15f9478fe2746e70e848cc65fcacf051bc359517100c319c69e89182f49878194fb4359f17170eb102c49da2cce89011fb0705e9bee1a33642719484b321c4ef52850151321b4c3d5b349a1766c5664939a843ec95971e1324f3c512b8a284d0516e1cae9fbf8c03c6e1f2634738637076f9448df8160bb22247ecb1addcacc028599db183a2fce851dfee3c38c16475c01e65b02647caf863ef05799131326e380e42812ff0034c20862d05e4800cc0ebe86fe887bf643d01800584200d7081e58866d4235edac387cf685000fe82880b44637e3ed25e2ec887faaf635ad9d312a44a7bf3a51e99e029c4d9b826ee81bbe1a1f0e9059b2dee8cbb8cfa3115474725fa13fd8841c400a2d9180f36649d059b10f0fe53f7dd93f094d0457844b84ee821dc0621b0970b739630e48f6516079e48a38cfc9ec92b14fec49c09c2400ff40b18c92e057af78ddae0c690b503ee83bb43fe903bcec03581256e0f33f1c63d616e0e50fb2343f1188befb5fc793c09bf1f731cd12b982b388cb04819e3ef3b66f57314df1f6ac481ef909f2db165d861ac0d3b8d5dc08e630d80899dc21ab176ec84048fcd8427d299303a5a94945b268cc31bb5b1aeb5eeb3fef21fa3b3461808a5df1be47167e74916846f8e608e9097969ec7f4863b329719cc675b4d60da5adb380020d9df65dbc75b8674df461817bfeb729b01702981cab4ef3a960100c79e02407fff5d67f0062eafd5009ce8648b85f9321d2e7910000528c295a10174e0bf8729ccc916380237e005fcc16410016240229801ab9e0eb221eb59601e580c8a4129580dd6830ab00dec04d5603f38041ac071701a9c03974027b80eeec2b9d10b5e8201f01e0c2108424268081dd140741123c402b1459c110fc41f0945a2904424194943f8881899872c414a9132a402d981d420bf23c790d3c805a40bb98d3c44fa9037c8671443a9a82aaa8d1aa3135167d41b0d4163d0e9681a9a8b16a045e84a74235a85ee43ebd1d3e825f43ada83be44073180c9630c4c0fb3c49c315f2c024bc2523121b6002bc1cab12aac0e6b82dffa2ad683f5639f70224ec799b8259c9f41782ccec673f105f80abc02afc6ebf156fc2afe101fc0bf1168042d8205c195104c4820a41166118a09e584dd84a384b37045f512de13894406d184e804d7662231833897b882b8857880d84cec223e260e9248240d9205c99d14416291f248c5a44da47da453a46e522fe923599eac4bb625079093c87c7221b99cbc977c92dc4d7e461e925392339273958b90e3c8cd915b25b74bae49ee8a5cafdc104599624271a7c45032288b291b297594b3947b94b7f2f2f2faf22ef253e479f28be437ca1f943f2fff50fe1355856a4ef5a54ea38aa92ba97ba8cdd4dbd4b7341acd98e6454ba2e5d156d26a6867680f681f15e80a560ac10a1c85850a950af50add0aaf14e5148d14bd1567281628962b1e56bca2d8af24a764ace4abc4525aa054a9744ce9a6d2a0325dd9463942395b7985f25ee50bcacf55482ac62afe2a1c9522959d2a67541ed331ba01dd97cea62fa1efa29fa5f7aa12554d54835533544b55f7ab76a80ea8a9a8d9abc5a9cd56ab543ba1d6c3c018c68c6046166315e310e306e3f338ed71dee3b8e3968fab1bd73dee83fa78752f75ae7a89fa01f5ebea9f35981afe1a991a6b341a34ee6be29ae69a533467696ed53cabd93f5e75bcdb78f6f892f187c6dfd142b5ccb5a2b4e66aedd46ad71ad4d6d10ed416686fd23ea3ddafc3d0f1d2c9d059a77352a74f97aeeba1cbd35da77b4af705538de9cdcc626e64b63207f4b4f482f4c47a3bf43af486f44df463f50bf50fe8df37a018381ba41aac3368311830d4350c339c67586b78c748cec8d928dd6883519bd1076313e378e3a5c60dc6cf4dd44d824d0a4c6a4dee99d24c3d4d734dab4caf9911cd9ccd32cdb698759aa3e60ee6e9e695e6572c500b470b9ec5168bae0984092e13f813aa26dcb4a45a7a5be65bd65a3eb46258855a155a3558bd9a68383169e29a896d13bf593b586759efb2be6ba36233d9a6d0a6c9e68dadb92ddbb6d2f69a1dcd2ec06ea15da3dd6b7b0b7baefd56fb5b0e74873087a50e2d0e5f1d9d1c858e758e7d4e864ec94e9b9d6e3aab3a473aaf703eef4270f17159e872dce593aba36b9eeb21d7bfdd2cdd32ddf6ba3d9f6432893b69d7a4c7eefaee2cf71dee3d1e4c8f648fed1e3d9e7a9e2ccf2acf475e065e1cafdd5ecfbccdbc33bcf779bff2b1f611fa1cf5f9e0ebea3bdfb7d90ff30bf42bf1ebf057f18ff5aff07f10a01f9016501b3010e8103837b03988101412b426e866b076303bb8267860b2d3e4f9935b43a821d12115218f42cd4385a14d6168d8e4b0b561f7c28dc2f9e10d11202238626dc4fd4893c8dcc83fa610a7444ea99cf234ca266a5e545b343d7a66f4dee8f7313e31ab62eec69ac68a635be214e3a6c5d5c47d88f78b2f8bef499898303fe152a266222fb13189941497b43b6970aaffd4f5537ba7394c2b9e7663bac9f4d9d32fccd09c9135e3c44cc599ac99879309c9f1c97b93bfb0225855acc194e094cd29036c5ff606f64b8e17671da78febce2de33e4b754f2d4b7d9ee69eb636ad2fdd33bd3cbd9fe7cbabe0bdce08cad896f1213322734fe670567cd6816c727672f631be0a3f93df9aa393333ba74b60212816f4e4bae6aecf1d108608778b10d17451639e2a3ceab48b4dc5bf881fe67be457e67f9c1537ebf06ce5d9fcd9ed73cce72c9ff3ac20a0e0b7b9f85cf6dc96797af316cf7b38df7bfe8e05c88294052d0b0d16162dec5d14b8a87a316571e6e2cb85d6856585ef96c42f692ad22e5a54f4f897c05f6a8b158a85c53797ba2dddb60c5fc65bd6b1dc6ef9a6e5df4a3825174bad4bcb4bbfac60afb8f8abcdaf1b7f1d5e99bab26395e3aaadab89abf9ab6facf15c535da65c5650f6786dd8dafa75cc7525ebdead9fb9fe42b97df9b60d940de20d3d1b4337366e32dcb47ad3978af48aeb953e9507366b6d5ebef9c316ce96eead5e5bebb6696f2bddf6793b6ffbad1d813beaab8cabca771277e6ef7cba2b6e57db6fcebfd5ecd6dc5dbafbeb1efe9e9eeaa8ead61aa79a9abd5a7b57d5a2b5e2dabe7dd3f675eef7dbdf586759b7e300e340e94170507cf0c5efc9bfdf381472a8e5b0f3e1ba234647361fa51f2da947eae7d40f34a437f4342636761d9b7caca5c9ade9e81f567fec39ae77bcf284da89552729278b4e0e9f2a3835d82c68ee3f9d76fa71cbcc96bb6712ce5c6b9dd2da7136e4ecf97301e7ceb479b79d3aef7efef805d70bc72e3a5f6cb8e478a9bedda1fde86587cb473b1c3beaaf385d69ec74e96cea9ad475b2dbb3fbf455bfabe7ae055fbb743dfc7ad78dd81bb76e4ebbd9738b73ebf9edacdbafefe4df19babbe81ee15ec97da5fbe50fb41e54fd69f6e7811ec79e130ffd1eb63f8a7e74f731fbf1cb27a2275f7a8b9ed29e963fd37d56f3dcf6f9f1be80bece17535ff4be14bc1cea2ffe4bf9afcdaf4c5f1df9dbebeff6818481ded7c2d7c36f56bcd578bbe79dfdbb96c1c8c107efb3df0f7d28f9a8f1b1fa93f3a7b6cff19f9f0dcdfa42fab2f1abd9d7a66f21dfee0d670f0f0b584296f42880c186a6a602f0660f00b444787680f7388a82ecfe25154476679422f04f587647938a23007bbc00885d0440283ca36c85cd08622a7c4b8edf315e00b5b31b6b23224ab5b395c5a2c25b0ce1e3f0f05b6d00484d007c150e0f0f6d191efeba0b92bd0d4073aeecde2711223ce36f97dcadc06583a5e067f917e94b6af9cfd2c7fc0000000970485973000016250000162501495224f00000019e69545874584d4c3a636f6d2e61646f62652e786d7000000000003c783a786d706d65746120786d6c6e733a783d2261646f62653a6e733a6d6574612f2220783a786d70746b3d22584d5020436f726520352e342e30223e0a2020203c7264663a52444620786d6c6e733a7264663d22687474703a2f2f7777772e77332e6f72672f313939392f30322f32322d7264662d73796e7461782d6e7323223e0a2020202020203c7264663a4465736372697074696f6e207264663a61626f75743d22220a202020202020202020202020786d6c6e733a657869663d22687474703a2f2f6e732e61646f62652e636f6d2f657869662f312e302f223e0a2020202020202020203c657869663a506978656c5844696d656e73696f6e3e313431383c2f657869663a506978656c5844696d656e73696f6e3e0a2020202020202020203c657869663a506978656c5944696d656e73696f6e3e3338323c2f657869663a506978656c5944696d656e73696f6e3e0a2020202020203c2f7264663a4465736372697074696f6e3e0a2020203c2f7264663a5244463e0a3c2f783a786d706d6574613e0a63581b9400004000494441547801ec9d07bc15c5d987477a1395a25244040b58100b76632f51630bf6c4de4d8c25eaa751636234d6c4d87b37c6de63ef5850aca804115041b0d04191eab7cfe0bbcc59764fb9e79ccb2dff97df65f7eceeccce3c33dbfefbee3b4bfc1499ab818d1a35caa7ead5ab570d522b89088880088880088880088880088880088880088880088880088880088840a509d454b76d52e982283f111001111001111001111001111001111001111001111001111001111081fa45404271fd6a2f9556044440044440044440044440044440044440044440044440044440042a4e404271c5912a4311100111100111100111100111100111100111100111100111100111a85f042414d7aff6526945400444400444400444400444400444400444400444400444400444a0e2042414571ca9321401111001111001111001111001111001111001111001111001111081fa45404271fd6a2f9556044440044440044440044440044440044440044440044440044440042a4e404271c5912a4311100111100111100111100111100111100111100111100111100111a85f042414d7aff6526945400444400444400444400444400444400444400444400444400444a0e2042414571ca9321401111001111001111001111001111001111001111001111001111081fa45404271fd6a2f9556044440044440044440044440044440044440044440044440044440042a4e404271c5912a4311100111100111100111100111100111100111100111100111100111a85f042414d7aff6526945400444400444400444400444400444400444400444400444400444a0e2042414571ca9321401111001111001111001111001111001111001111001111001111081fa45404271fd6a2f9556044440044440044440044440044440044440044440044440044440042a4e404271c5912a4311100111100111100111100111100111100111100111100111100111a85f042414d7aff6526945400444400444400444400444400444400444400444400444400444a0e2042414571ca9321401111001111001111001111001111001111001111001111001111081fa45404271fd6a2f9556044440044440044440044440044440044440044440044440044440042a4e404271c5912a4311100111100111100111100111100111100111100111100111100111a85f042414d7aff6526945400444400444400444400444400444400444400444400444400444a0e2042414571ca9321401111001111001111001111001111001111001111001111001111081fa45404271fd6a2f9556044440044440044440044440044440044440044440044440044440042a4e404271c5912a4311100111100111100111100111100111100111100111100111100111a85f042414d7aff6526945400444400444400444400444400444400444400444400444400444a0e2042414571ca9321401111001111001111001111001111001111001111001111001111081fa45404271fd6a2f9556044440044440044440044440044440044440044440044440044440042a4e404271c5912a4311100111100111100111100111100111100111100111100111100111a85f042414d7aff6526945400444400444400444400444400444400444400444400444400444a0e2042414571ca9321401111001111001111001111001111001111001111001111001111081fa45404271fd6a2f9556044440044440044440044440044440044440044440044440044440042a4e404271c5912a4311100111100111100111100111100111100111100111100111100111a85f042414d7aff6526945400444400444400444400444400444400444400444400444400444a0e2042414571ca9321401111001111001111001111001111001111001111001111001111081fa45404271fd6a2f9556044440044440044440044440044440044440044440044440044440042a4e404271c5912a4311100111100111100111100111100111100111100111100111100111a85f042414d7aff6526945400444400444400444400444400444400444400444400444400444a0e2042414571ca9321401111001111001111001111001111001111001111001111001111081fa45404271fd6a2f9556044440044440044440044440044440044440044440044440044440042a4e404271c5912a4311100111100111100111100111100111100111100111100111100111a85f042414d7aff6526945400444400444400444400444400444400444400444400444400444a0e2049a553cc75acc70eedcb9eef1c71f77f3e6cd734b2cb184db79e79d5dcb962d6bb1047563573ffdf4937bf1c517ddb7df7eeb7af7eeed060c1850370aa65288400681f0d85d669965dc565b6de58fe18ccd17596ce97ffcf147d7bf7f7fd7a74f9f45b6a9e482dade5f25cb5e6e5e5677ceb33569ab72f7df10d27ff2c927eec30f3f746ddbb6753becb0836bd1a24543a856de3a589dd9688d35d6706badb556deed1bd34a63b3f4d24bbbedb6dbce356ddab43155bfc1d4d5dab1a11dd713264c70cf3fffbce3deb236aeafa57488411f4f70833f9de49a372dcdcfa57d9b66eec0ad7bba26a5255ba468c3c74e778fbf3dde2d11ad39709b9eae53fb05e772caf5e6f0496ec9d6d17eb659d1b56ed1b88ee91f66cd738fbf35defd77c878f7e5773f447d6721bace4bb574ebafb28cfbf526dd5def2e6d17ae08e6c67c37d3ddffda58d7b4c912ae47e7366ef78dbb066b6b363bf4f3a9ee99f7bef17d65eebcf9ee90ed5672cbb46b5eb3cc944a044440044440041a19817a2d14cf9e3ddb5d76d9656ec68c19bed9565a6925b7ce3aeb34b2265c50dd471f7dd40d1a34c80b104f3cf1841774ea0a88e1c387bb9933677a41bf5fbf7eae7973dda8d595b6c92ac7f4e9d3dd881123fc8362a74e9ddc8a2bae98b569e6f27ced1e1ebb3d7af4705b6cb14549624932fd7df7dd5752facc4267aca8e6febefaea2bf7f5d75f7ba19c7318626c6d1a42f0d0a143a307e826fed8ecdbb76f8e689fac7ba96d559b75a9abfbfaf8e38fdd25975ce28bd7b56b57b7de7aeb2df6a256bbdf85755e7df5d5dd2db7dc52d56374b1032da100219be5965baed1deb718b26af745db4fa5a7613bd695e3ba983a16babe4f9a34c95d7cf1c53eab430f3db4ea2f628b29b36d33e4b3c95e90b4dfc54edbb46cea7eb3d58aae8997788b4db5e8764fbef375bcffd5ba2fe9761ed0c56f44b99e880464ace772d10bc17597f3f38de1bf47de1ce7fef528f78be9b5fd6eea2cf7e490affd1f82f1f907aee59a37436a5f68e327cf748f0e1ee717d056bb6cd0c5356b9abbcdc2ad0bcf5196cb1e19e1467dfd7dbc71db56cddc51bfec15ffd68c088880088880088840368132dfad67675c1b6b10365ab56a551bbbaaf3fb68ddba755c46bcabeb8ae19172e9a597bac30f3fdcfdfef7bf8f45fdba523e95239dc0f8f1e3dd91471ee98e3aea28efb59fbe55f6d242ed1e1ebbeddab5cbce28638d899aacae49fa8c6c331757737fafbffebae70c6fc4f9dab659b366b9134f3cd11d76d861eecc33cf74f3e7cfcf2942b96d95935923fd117a10c3b32e58b5fb5d58e7ba50dfba5406b1c96d8d6af7c5dcbd55ee57d88e75e5b82ea67685aeefa1877b5dfb4aaf55f39a79ea765cb2856b52817be370ff2d9a2d3c9787cb23a7d84663ff7c78841764932271f74eaddd2a5ddb2de2593d64c46477c02583dd9cb9b9aa72b3c043bc5d24e896db546327ce74a3bf592812d3204f45227f72bf8da6a1545111100111100111289140bdf6282eb1aeda7c3111e8d8b163bce7ba2462c785d2cc2204c207c59abe8ca976bbf300bbecb2cb3a3c9e6bc3aab5bf506c581cdef6b4356dcc9719f094559e40b366cd626f5ae6eb822dee7e571718a80c7583407ded8b75f1b82ea6452b717d2f663fd5de66bd95977127ecb68a9b3b2f121df388b373e6ce772b2edba6ecb013f9ea137abf360f04e47c69eafbbabb5f1e137b01539756cd9bb813765fd56dd77fb91cd68480405036e1160fe373fefdb13befc0355311cc89c244946b8f465ece49f17acaf773dcdb2326b94dfa2e7c2629773f4a2f022220022220020d9540dd78626da874552f111081aa1040d8243e796d596defafb6eaa5fdd40e01e2e7f327130111683804745c2fdeb6ec107909e3b95a17ecf01d5672fc35169b306db6bbe999d17175976ad3dcdd75ea86ae6d143622696bf55ccadd7cc2faeedcbb87b9173efcd6af7e7dd84437320a0bd17bf9f498c5c93c4af9cd4751780f637826f7efb5b47b6fe414fffbc1d7bf9250ec49e83f11100111100111c84fa0410bc5c4d6b4cf01f1fce0737862e14d9c38d1535972c9251d71e56aea3119a265f00f06939b33678ef71cebdcb9b3f7cecbe741cb405c94cb3ccc8815faf9e79fbb69d3a6b9b458a5c4952396e90f3ffce0cb4c6c4306c3c1929f8b87650be7c372b2df6eddbac57984dbd97ca965b4744c6d90c1b06ce4c772dac2ea1da6613e2c239e2fc5b04ce691f59b58c9df7cf38dfbfefbef7d1908d9413fc02bd5fa4a565a96c39ffe435bd16f48d7a143879c98ae59e9cb491b3229a6dd082780d967a393274f767c6e6afdb34b972e2ef4f80dcb4cddf833a3adf8e378b2fc6c5ddab4a6ed4e5e9493baa6f5f1e4bed80ff5a14c69c7197580f9d4a9536bd45ec5ee2f64657d9a3a8c1b8747cb4f8b1cab962fe9d89e3a98595eb0c6bb38ad5ee1798074c434e63c66fbb6bc8a99b23ff6054b0caf626bebacfd5bbea5b495a561cafe380f739ec3287ff7eedd8b3afe7c82c47fe44799f14a84177d87fc99629c3fe8ef692c594fdde160e959465acec59c2fd2e2aad7a40dd807fb0af7c3be422b870d65a5de9cdb386f725ee31a91bcbe518e9af4bbb09cd59ea78c66d6af8b39a62c4d382d8729fd0aa6c46c659e30375c33934cc3fdd93ce760ce01f4738e25ceb778ec67f5434b97354d6392b52dfb36af51e3176e1b5e4f8ab9c6d664df69fb0dcbc07c4dfb624d8ebfe4beb37e7ff7dd778e3fcecbb41bf758b45b567d8c75d67af64379e9476c4b9e1c97e1f537799fc57982fec6bd939d87e9c75f7ef9a53fbec9b3a6e74d9887edc97ef823ff42d777aea71c0bb029e5fe39d95ecb2fbfbc67403dca310628ab848d1cffbd1b376966149660be238e6db78eadfd5fa9e10f18d00dcfe2302405e59b393b5a4ec8a148b46c1eadff71f67c37fcabe96ed2f405d72e067b23de71325d5add3eff36babe4d98e966cd89ae2591e7f2b24bb78a6222b7292a2de2eee8489c9d3e738e3f0f916ea5289e724dec9e57c6b879f317848f6000baeb7ebf5eaa481ce6fdfb5d5776af7e1c1d5b788047f6cad0efaa2214bf3e6c829bf1e3826b48afa87ea70dece3f6bbe8cda89f3bf7fea8296e62c49d5024321110011110011110816c020d56281e3972a4db679f7d7ccdfff8c73ffa919b8f3efae8d418b9a79e7aaadb6bafbd6af400f7fefbefbbbffded6f5e544862e6e182d89fdb6ebb6d4ededc943350c8bdf7deeb18e4e7d65b6f752fbdf4928f0fcacd3a76f5d557bb0d36d8c0cf7373cea07dcf3df79cff1dfeb7fefaebbbb3cf3ebbe000581f7df4913be79c7352cbb9fdf6dbbb534e3925278f52cb189689791e44070e1c98c39bbaedb2cb2e7ed3a5965aca31e85ef8c05d1396c9fd66fd9e32658abbf2ca2bddc30f3f9cba09e2cdf9e79fefb6dc72cbd4f5afbefaaa3bebacb372ea631bf2d0c3ba0d37dcd016e54ccb495b93763bf7dc731d831b22823380d6f5d75fef3ef8e0839c32f163dd75d775a79f7eba7f29612befbcf34edfd7ec37d36bafbdd6ff314f5fdf71c71d994db562db3d4c8cd04e1ffff39fffece80349db75d75ddd69a79d96f310cb83ea1e7bece1d36db6d966ee1ffff8472c34d277efb9e79e78f0b0647e1c971c331b6db4517255e6efacfd2128eeb6db6e5ee01e306080af0379bffbeebb8be415d6234c176e78cc31c7c43f6fb8e1869c41ae101aaeb8e28ad4f300620fe7b7dffef6b79982469cf1cf33efbcf38e8f8d1c2effdffffe1773e158a54d42ab495b597a4412ce75d42b69858ebfe4f6f6fbbffffdaf6f4b7e5f70c105eeadb7de720f3ef8a0ad8ea7b4f919679ce1e82ba1d1ae9cfbc78e1deb8e3ffe78cfefc61b6f74d75d779ddf8c72858383d6b40dde7cf34df7bbdffdcee7996c571696c30621927ef1d0430ff9fc93ffedbbefbe8e7ed5b66d5b2f805b7f0db7cbd7efc2ed6a633e3c364a39a692652b8729e790a79f7edafdf5af7ff5025a32efe38e3bce1d78e081b1181bae67bff42106ef4b1ad70acea1e19802c96dd27e731d38f8e083fdaa3e7dfab8db6ebb2d75df6c40dfb563ece4934f76fbedb79f4fc77f35b9c6c2827ba84283e5223e5246ce21c50c5e18b6735cc068265f5face9f117e69f35cf31ca759c176049e3fc0acb5ffffad739dcb927fbbffffb3fbf39d74eda2634ae87dcbb3df5d453e1623fbfdd76dbf9b8f0279c7082bf8e71fe662c07ecb1c71ef3fd8479fa112f1cfef4a73ff133c7383f5d7ef9e58efbc062ac26d777ce1bb429634ca4b1c977ffcc4bf97ffef39fa9d7ac555659c51f5f4c1797dd3f68acbbf6c951b1e0199683300ac7eeb2b2fb5534a85a3176e78b5fc61eb67f3f682db7519f0e3ed9bb9127ebc9372eb8ffda62adce0ecf5b1bb42d99ef2fd75fde9dbcc7aa0ee135690c1877d5e39fc5226b72fdae1b7675c747426c5a5a423ee0cd6ba11fc2b4eddb34737fdaa7afdb60d505e50dd765cdcf8e04751bb88f6d76dba8ab5b6ee996599bc7cb976edbdc6d1c857d78e5a3097e19f954daa2d3957b20f21a36db61bde5ddb29110df73d9b6befe88db781b1fb0650fdb445311100111100111108114020b47624859d950162196fde637bf4915f9a8e345175d94f9909d8fc17ffef31f7f638fe7599ae1618c1077e18517c61e7bb69d7935e309f8e4934f3a6eb64d24661bbc48b051a3467971354d2466fd9021431c02d4fdf7dfcfcf544340e0012eab9ccf3cf38ccf83879ad08a2d6398c6e6f13ac13b31cbf07ee3cfac1c969647d6149178f7dd77cf148949077b1e865f79e5959c6c7848462845f0cfaa0f2227c2017508ad9cb4e453d376338f42f852ae349198fc113311c9e84318e54dd6dfaf08fee3054c3e2bb5ddc90b0102f12a4d24663da2374271e8998ec087208399b71ff36c83b8c9319f651c97887685ea1aa6cfda1f5ee8e6b9f7f6db6ffb63354d2426afb47a84fb48ce87f5a50d6194751ec003edaaabae5ae4e54c32cff037e7967cf6e1871fe63067db9ab415e9f028436431018b65a1d9f177fbedb7878b0bced32e660836692231eb6973049964fea4e7783143d43091d896d9b49c36c09b3fcbca618370c6f93f4b24669f9c97f8449ef3603116f6bb62b6aff4369538a6ca614afdfff297bfe4bcb84dd691638d736be899c936889ff4f3349198f55c2b10037969518ae1716f837622da8d19332635399ea9888c1822e2565b6d156f57ce353614b6b33ca239861106b1366ddac4fb2d6726ec8be51c7f85cac0f1c335214d08252de757ee13fff5af7ff9eba4e517de1384f733ace7e513c7669a48ccfa679f7dd6f112873e81855cc3f9430e39245524260dcc1198e91385aca6d777bb7fce629375fffcf1c71ffbf34ed6358b815b798961f71f85ca5fc9f5888967ddf9b1bbea8991a92231fbfa71ce7cf78f873e75973cf86951bbc64bd72c9cb7657827bf1c79d06689c46cf7e490afdd41ff787b9101d7ae7cec333f609c79e25a9ee1947c4fbb65a8f79a0d97bffaf10477e86543524562b69bf6c35c9f8e7d176b1f7d31cd7b49b33df542282ed6fe72c01aee99737fe19ef9db2fdc51bfec556cb2a2b7c35b9898c818a2f9d66bf3158773bb04823ff18b7d5ceba273d58622200222200222d0f80834588fe2b4a6c49b07b1000f0644501ed64c1cc52b63a79d76caf1704dcbc396bd147900876294e5ddab572fff79201e3f43870ef59b23e2f2e9f341071d64c963ef476ea2c31b693cdff0f4c4e39687cea38e3a2a4e83208557c7c61b6fec059ce79f7fde7b2ec51ba4cce03578de79e7c56bf012e44196874e6ed011b1311e726083c79f7d4269a118f29531ce3831d3be7d7bef19c403e3030f3c108bd47881f6eedddb3fe0f0208b95cb32b1eb9c9f3c1c51477ba0639f7ff8c31f620f1c1eb0f0eeb6f577df7db7db74d34d63f18fbae31d66b6f6da6bbb430f3dd4adb0c20afe010f4fd6cf3efbccafa63ff4efdf3ff62a2a276db9edc6836d68bc28c113984f4bc376671b3c291131f91476cf3df7f4e202c2d6bffffd6f9f05cc10cae98fabaeba6a98ed22f3a5b47b3231fdfba4934ef26d834080d8c24b0c0c8192cf6e7bf6ece97f8762925ff0f37fc3860d7378999a51ef6db6d9c61fd7bc28e1a1d61e78f1fce5213ef46ab774c969d6fe92dbf1bb987a20fcf0f2867c070f1eeceb475a96231ef0a288be8421061e76d8617e9effc2fc11fff078a5fd30c4095e782064b15d3ea32d1147e82b37dd7453fca20ae1817e82275928588479856528d456ace7bc658208fd09efb835d658c39f87efb8e38eb8fe9c87393f738eaba9e1358cb727616110c339ff599b27f30fdb9575a1c19f1040b445b96dc07ed2ac1c3688dc5c1fecdc45fec71e7bacfbc52f7ee1db9ef32afd00631bce8308a0c5f63b9fb08efc579bfd8df34e18ffdc98c29bf311fd15e33ccad71aacc7b8d6c0d7fa39cb7811c70b1e84d6f7de7bcf9f7f10f74a35c21f70edb697915cfbc37382e5477fb7fdf34512f713187da19cfb15cb3fdf343c96b8561432ce03c5f6c5728fbf7c65c1231f01d88cf3075fa3c18e1014bcdcb297ad5c13117f575e7965bf79d6f911c19ef3a8b535fd178f64da0436dc13da39dbf65b684ab90e38e0001f66887bcbd0db9d7ec10bd2acf258dee55cdfed1eb798fb67eeab8f38e208dbad3fa7730d206ccbe8d1a373cec976ff515b83d252a83b5efcc20d8a045433c2101cb0550fb74ad725dde791f7edf54f8d8ac233ccf5abf19cdd6cf54eb187b0a5494e97c8379a5eb431e2b419deca076fdbd3adb1e252eeab8933dd1d2f7ce1a7ace77738d01be1221e8e844d33c2620cdcacbbebd1a98ddff6b6e73ff7a11458ffce6793ddbb23273b06f9c3c644212afe7cd7c77e9efff01e3e64db955cef2e6ddd275f4ef31ed0263e5ffce0f0a83ced5d8fce855ff244ba6b6c784877ed505a9ce8e6cdc21ce2ac2a32f3df21e363f17fcda83e166202c1f8daff8ef41ed9df4683e97d32669aeb17c54e96898008888008888008a4136834423137d93c289908bae28a2b7aef336e9cb9a9e5861ed1859be142c60363f8d095cc1bb1788b2db6f09f1cde75d75d3e3bbcd478c020ae5c9a21dcf240127e86f7c8238fc402070f55889894db8c6d096b81b094668810842130439c41a8354304a19c3c7c20a4209a225a2194a6595a19d3b663191ced4116cf44443a1e96111c436fa36ab00ccb84d7a979acc0f0befbeef30f2bb60da2f57aebade70552fa40e85d48d9c207c8bdf7dedb8b7026faf4e8d1c38ba97832bef0c20b3e4ba67c7e5a4eda4ab71b5e929b6fbeb955d98b5f789ae1cd43bb536fc2a020785858094459138a799043f028c68a6d771ea443a36ff0f04cec4633043ec4173cafb05028b66d92533ed13523a40a2f3fcc385ee8dbb423620ae219c73ee26ca5ac947a70dc61bc144208c7089f107ebe4cfded1cc27a8e41daca042096d17f695fc2c760f4778eb975d659c7ffcefa8f971efcd157392e60c1a7fe1cb7f9048752eac8bedf78e30dc7a7f318e5e7bc469d31847fca1f7e126d6179ec5ced372cf23fca8e4063e5e718e5fc4c3fe0d372ac50fe6ccf4b04c26c60b401a180cc2ad906e5b079edb5d7625190731b0226e73333ceefb427621cf6f2cb2ffb78b9c5f43b9fa08efc579bfd8df3c235d75ce36b8eb877f3cd37fb171a86a26fdfbefe1c421fc3e8b79c4feca50402ae192fa5b6de7a6bfbe9afddbcb4223c0c2f744a35ee1f4c28e6dccccb10fbf2c8f2b2176bfce69ccdb5aadad758db77a9538eef62fa6235cf8194d9ae05cc731c85f7891c4f8494e20580bd3ce05ec68462d2a419e1a64cb04fbbefe0fcb2da6aabf973515afae432aec1b4b719822bf799fbefbfbf5fc4d738bcf0cb77cee49c58d3eb7bf21eb7d0fd33c78589e4bffad5afbc773ec713465af2e3bee9a5e80506db71eee2deb0547bf1c3efdc8b1fbe5c30199ea5779db2a10f8f302bf214befba52fe3340c7476e9616b47c7ca8245888b3baddfc51dfaafb7dd17513c60ecb1b7c615148a17a42efc3ff188effce306714c61f6b7c3bacbb90bef1f1e0fc0f6c6ff26ba2fbffbc18bb6a3be9e110b9f5113fa41e1884d8cadbb72f40229f2943de6ea77ddf0b1d3fdb26163a6c742f1158f8e8805ea3e510ce42b8f59270e4dc100737b6cd2cd1d71f93b7e5f08d9973ffa99bbe4b07e3e9f7cff0dfd626abcba5deb66ae0905ab03163df2b847de58780fb8cb065de352216823cc13a31823c6b284e2188f66444004444004446011023fdf1a2db2bc412de0469d9bd2e44d3482a5dd7c73b35aecc31b9e41f610c0432c9e1dc9bcb929c773d54428f227e6619ad983702812f3496bf8f92a0f16a1486cf9f0c0128ac1b69c29e5b43a71638e6753d2109cccab987588723c98252dad8cc96dd27e8779f12063e1026cdb4ab3b47cd3a68862692f02f0a4c513366961d91087109b4c24b66df9cda7a1669f7efaa9f7f62e376da5da0d8fda5024b672226c84ed8ef8187e3a8bb860168ae7b6acd0b450bb27d3230a872231eb39861055cc605bc8e8a76684a4487e1ace318fc72da148f0f0b7c1202d4db9d39ad423641db60165e1cb8730ae36b1684391d8ca8bf04f5b9bf145032f1c8ab1d0fb9cb62e94ae943a9257186e82302e2612876543f0b098d1bc10b0fe1f6e53681e51182f3613896d7bcecdc485e518c6c8dfbe02b06d6c4aaccf4b2fbd341689595ead3628870d69f9fac38caf634291d896e3b5cd172a18d7205e0698e5eb77b64d5d98d6667f0bbf4640b8825fd2e823166f1aa6bc98e17c67211fd81eefdf30ec83e5c10060e1cb475b5ecc946b3de220c6009dc97003bc7cb33007f4756bf7f05a5489fb9562ca5aea36f9fa62b58ebfb432226686c708db703ee11acf3503c782b4e32ccc8b63d3047d9633f601c26ed210f2d75c73cde4e2457e730f698270b892fb45fbf282d03a845b29d642de85aeefa5de3fc38ffb098c7ec80b4c1389ad7c9c93cf3cf3ccf89ccccb438ea56ad9fce8f89cfff3c06bcfbef78d0f2bc1be109089276c22b1ed9fdf47ecb8e0586319a26d919753cb22758a9efaf783d78a45e270a353f65c2df67ee5163c2d140482ecd8c84b3834f23c6ee7de6ef51eed1da2337f18dec443220f638c7a5e10ed97696808ce171eb27039222a03ed15b2ef7f1e288eed565fa1fd22fc0aa5afd6faf7474f7193662ce8470c2ab8d91a9de25dc18938ce6683874ff26137ecb7a6222002222002222002b9041a8547310f588c7c9f667c5e6d96bc99b5e5c969e8b58857669ac8481a4444c44584290ce12acd885998fcec0e81cb6ee0b951cf1a288dfcf092e4863cfc0499e5611c433c99589f14ced82e149ef0f0a0bc2117b6492b23cb4bb5a488536996c9f210568018d05852cce71350622ae2b1997c38647b3e773543b0a41dd20c2f33f324831bed5e4eda4ab61b824596f5ebd7cfbfc8409443a0e46133ed654456fa529627db3d4c0bd7b5d65a2b5c14cf87a3b0e7cbc31284db20e0f0193eb144397e78e0a63f6cb9e596fecfd2546a5ac97a58991084ec011a4f630689ca32be16c0930ba33f2358245f6c64a52d7679a975a4ec762cc01f2f5dbcd8c31709ec9b7c7bf6ec197bfd12e799dfa518216192c7b8a5e78500428ff1c12b30f4dcb6edf0144d5e07aad506e5b0e19c6d5c6197f51508c7032f17101199cfba5659fdebdab436fb1be7bee1c3877b04f401ce49697d9575a14729e22c0393597c5e32e0a56c782e0ab912b688979616ce205c976f9e63f9e0c83b9c97c6182f75c3f32665b7eb185ecef6d2acdad7d87c65aec4ba6a1d7f5636ce49f4338e47ae835c33b9def3b515edccbd157d0361b318231f5e4661a4cd1a688ef6e49c6d5f5b64e54d79b2ce6be46f96d5df6c7d4da7a5de3f87edc5cb12ae4369f7be30e7bccc7d297f844d493b27e72b3742271eba730a0c8ad673b9b66ed99f075b332f61f2fdc59a9d5cab16912a9c629b4683aeddfb7f1bf9354b4583b045cd55b6ad1495a357f49766e4bf7f34c0da15513c62ece3283404827197655a47e79205a12b1888edb07f0df103cf6db7ce72de73789976cd1ddec15745dec2a17d178557203db64ad776de2b79dcc4dc2fb958d7ba65532f5ccf9c3dcf6f83586c03f1b13ecd66475ed966e327ffe8f7431917b73df4fac27bf6adfb2deb08f111da166b76f6cb883f0dcbe73ff8c6edb1f1a22f71c2349a1701111001111081c64aa05108c5882b95144c787834338f0efb9d9c86c21b9f3e1353325916f3fc09d372e36c4231825ebe077cbc9488a7699faf5b3ee1cd399f4e16633ce484de269626ad8cb6ae9c69b92c93a24e5a5978c84220ffe4934f7cdc68061d7bfdf5d763012e2d0dcb42efce42f54f7a499693b652edc68358f205445857d821722314e355ca7ec3fe1a6e5bcd79442f1335cadd0fc7230fd6f69930fd99d01b661c273becb083db64934d52bdbc6cbb9a4c2b590fdb7f3800190fddf9fa3b1ed9b43762110fdd78986585bab1fc4b9d965a47044a3b9fd0cf88035f8c85e78562b6671bfb7a236b7b423198a5792cd307d3bc05abd506e5b0095ff815ba3ef0b2257ce1620ceac3b436fb1b2f2f4c68e57c188e29908f15e74dc4301bb030ab1f591e5cff3907952a14939e2f83eca530316e8f39e698f8dc197eb144d81db3f058aac4fd8ae55b5bd36a1d7f567ece990c26cc5707668442b058d4f4415e32f1d29170118504d9f0b846f8cc776d2bc6a3383c6f59f96a735aeafd3342b1195ef6a1a7bd2d4f9b86f74c69ebd3966db9566777fade7dd256652efb61d6dc78ddc67d3ac6f3693388d095b4de5dda79d1372b4f8464b33191173362e60a9d5bbb5f6fdadddd3f68acad726f7d3ac9ffb1a06524866eb85a87287cc5f28efa98603b61da82c17ed9e67f51588a5f9fff06b3052d6d20be64a2be91f7b2c54d1e3b21f2b68ece9d4d6dc7c98d537e4ff97ec1176b84832821594a4e0b174d8df21c3c7c62bce099c8737c581487985023662d225688c4660f46c2f26e1b76abc84b00cb5353111001111001116828041a8550cc4072856eee8b6d501e26f1762bd67880340b63f3da32c43c3c8c92c6c327221756ccc030c98711cac927a795b0ac32969b77a559669587d1b7f12a457c2fd6281bf1436b62e5a6ad64bb1512882a2d24d68417e14092b1366b920f69106118d48730068439480a82c472e40f23540303ece4135ffd8645fe57c97ad82e4d64b5dfa54c2b75ce0bf7596a1df1522fe5b8b37d21b6946aa1775d5adaf0654e1a1bc20ca49da3abd506e5b021f4910980c55c1fd278d48765b5d9df10aacc13b41436f46fd29a8737f3bce4cdf772b7d079396bffe4c9cb163eed67bf0c6a6603a4592c77c44913176beb1a9b55de4a2cafd6f117960d2118cf59c2ced820c4b69ee394410bf9e3853103d8e63bd794725ca79d876cbf362534d6e2b452ef9f79495913ab493bcf99b7f0feba987d127de2bd9f63d416b37da5b7b181d5b2f2c5bbd70c01d54454424bac15c5d7fd57147378d2f4dc101d08a1af7c34c1ff216c5ff7bbf51c5ec6c3228fe49ad8ec02ded9e4d9a9fd42019d41ff105fdb0665cfb7df57a34104cfbe73c1007b08e3371ebf7e4584dae73ff8d60f5417ee9bf01bf98c301e23c64d77ab45f19b65222002222002222002b9041a85501c7a5fe556bff45fdcd8f3197bb12262e83d5c8a60c203b2790ea58917c99227f3a69cc4a6b572122f79d555578dc5e7303ddbdaa78db04a869d08b7ade47c6db044280c3dc310bd89638a272d9e423c842152daa086563fca867064fcc238aeb64dd6b4dcb4956a375e3410133af912212cb7894de1b2da9eafb4d0057f06ede10f0f413ec9c67b8f4fc4c3cfb00943c07196351864a91c2a5d0ff64f7fada9211255da4aad2322032f23e8675dbb76f5b1e279799656367b59c039282b5450befa148ad1197abaa5e59355b76ab541396c100c2917c77831d787b4fad68765596d9255f67298c2119195733e6ccf39e71c2ff6a60958d6572907d74eae99c4a1a59f9336df399734c958fd2c2bd610352d062cf1cb19b09078c5762ee70598bdfcaa8d6b6cb1e5aee976d53afe92e5c1bb977121388f8c1e3dda0f08cae0807c8964869300212810948db1adb329f71576ef86689c76aeb36dcd83dd7ea74df3a54fdbbed2cb4abd7f0ec323edbcf3ce8ec1ecd2bc85e99b76dfc931662f372a5dfe303f42f4f65ebe9d1b3f69c18bc839f32a7f8d0cf7979cff664afe17a03367cdcb49125ec20993c1df8469b3ddd0cfa77a8f623c6827cf58389e04e1267e7fed7beeb69306f8b014e6f5bb6ab7766eb78dbab91f82d8c2b623daa179b3084c648494583312a40bd9d251280eb3b911c397877e170d00b8bc2dca3b7df7e7b8c96cc44078d1eecb365e00dcffda428feb5232c4abb854aff452f2d7b622200222200222505f09340aa1b8d28d137a93f050b9ce3ab9b1c1c2fd7df1c517f14f62d5f17051cc8d3f37d0f630fae1871ffa87c0ac30020820492f18761a3e6031084ebe38c73c90532e1e96b9712ca68c71c5ca98299765a15d13a7d60c6fa0cb2fbfdcc7a9b5654cb3bc17111dccf0f2cd8a35083bc46704303e5d27cc4739692bd56e88483c88660dd886f83d6cd8305f45fa25214ceabb593fa63ec423e698e18f18aec71e7bac23362d035bda606684a86050a1ac87fec5cd23f4827de18517fc4b0f7bb84e968d419f4c78e078af0bed1972a5dc9c83c265611d38e7d07ed676e1ba62e61177b2cec5e46df167c92b397062befcabd506218752d970ce422ca6bdf96202712beb386780b6abafbeda8b327c5e5fcce7eef978d4e575e530b5eb9fd58feb45d635976df01ae65ac93593b4f429e2cd72de65e04d3c7dd38ceb441826226d9b7ccbf07cedd9b3a73f97bdfaeaabfe98e1dc8071ed485ee7cbbdc652b7f0cb287ea7197dd1ce3f69eb6bbaac5ac79f9507d11e31d4da92f326e15cf843744780e7f879e8a1877c92b7de7acb4d9b362d33ac0fd71dbb7733cfffac175fafbcf28a15a3c14cc3eb132f09b3ee9ba830c70a22311ef661ba6ac2e8d671e180b76f45039a65099c843238e81f6fbb9fa27fcb2eddca5d7bdcba8b0c06576a39898fcc478659f18e877fb5704042f6c9e0753f44e2315ebee8a9c44aeed4be85dbaa5f67ffc7fe11bdcfbb67988f69ccef7193a2f126a6cc728459306b1f8578c8aa27db3080dd8f73e6b9363fc72bb6745953623ec3f1ab890b3c76fffdd2976ec728f44556bd2c1feafedcfbdfda4fb74614c222aa62d9f6d9b819b1f84f7eb79e38c0f5e8dc2633dfab9e181987f278e1c36fdd897bacba483ce3ccc45a21022220022220028d84c0c23b894652e14a54330c158157a279f224f3e606f8924b2e8917973250070f1b36523637d3cf3df75c9c4f72e6e5975f4efdbc1baf59b36baeb9c6c7a1b5dfe194873be2ef31780b625a29deb3613e3599af264b1e68c391e1093300d7a485025bb82ef4ac6614f334cf32b6671f885023468c88dba19cb4956cb7fbefbf3fac52ce3c22b18566c003cefa5bce46f5e807ed7dda69a7f97ebcf5d65bfb87f964f11158fef5af7fc58b4311255e5887661049ecc5017d2ced859015974119cd10b8c2af196c79a169a5bd53e95778e6637cd6ffce3bef64168197389c8388c39aaf9e5919dc7efbeda98375b23d422a82a919625bb156ad3628870d82a8092b78eb11ff3ecd10f8f03e45b0b2633d6dbb86b2ac1ca6088578e7625c73cd6b378dcde0c1837d5fe5ba79f7dd777b91311c580ecfd4aceb282fab6a129fd8cac171cdc08d186dffe0830fc6f707c4264ebe3028f71a0b97f5d65bcfef0f2e59fd88b8ffd5b06a1d7f5656623d73dea12dd3c23e21769e7efae93931d06192659cafed5a0a2f1be836b93df75db45d4333ea6e21ad3886b2ee8f3937edbffffe9e3df1f70b7d1152294e78b19abd366c424ecc5a5bce7470140778ea0f73dcb41fe6baa4a76fb85d29f3a3befede873a484b8388fac89be3e255abafd0de0bafd73f35caedf1b7d7ddeed1dfb351dcdda475e9d0ca5d7ed43aae758b85612b9a44aed3ab765bd2356fbaa09fbe1379f19a1775323dfbddebef6ff87decf4e7416e6222b445727b7ee399bdef2f1686cc4330beea890583f0a56d6fcb6e7a76b49b1178356f11c598ceb28cf751a99bdffbea9878398305aed0295b2466c35f6d4038c20549f0887e210a5b21130111100111100111c82520a138974751bff05ab381937810409c4a7aa572138c48cc033ac6032c0368156b3c0ce2a56a465ea177ac2dc79becdc73cfb59f39d3555659c5f5ecd9d32f43ccbcf5d65b17f114465c43ec36e36137f4cab2e5959a263f63ac36cb502c8355d27838217eb11902af3d04d25ef6c083d7f695575e99e359451a3c20fffad7bf5a72b7cd36db787ee5a4ad64bb2114137221690c1074ca29a7c48b77dd75d7cccfa5cbf94cda76906c775b5ee9a989221c97fffef7bf17e9efec2f143a92215b2a5d9e52f34b9e47107c098b6276fcf1c7a7c651c5333a14b60e3becb01a09c57c2a5d49e358c263dbece4934f8e63b9da32a6b4c93df7dce31721b4841ef9e176f9e6c983f8a149818e73319eb4d6d63d7af4f0f148f3e515aeab561b94c3068f45dad88c73d0c89123ed673ce505235eae182f45b204f264bf637bae0df42b047c06847ce9a597585ca7ad1ca6548c97146637df7cf32203c4b20e56575c71856d160f80b8edb6dbc6cb1830357c71632bb8de700c976b5c5f684fae4fbcf8324f5ec252d8f5cbf651896bac79c892e7934f3eb9c879956beb45175d64bb2c6b9aec8bd53afeac90768de7372fd4d3ae55889de1a07a1c1b59c63dc7c1071f1cafe6decde2e2db42ee1b4e38e104ff42c2962dae6925aeef61d9b98722e40496757fcc3abca979698231886e4d5e52366f5afa230c22a109a8888467defe91f7f2f505f9f93fbc892f7b7844bc68f3353a95ed4d6c999d78c30739e1226c39f187bf9ebc20340522e6ce5139b1301ef00d4f8ff6dec596c6a6781187b185e747b118080fd1bfd7d27e13baeb1fae7fdf7d9f086dc1cafb068d89c5db2523119d01e68ab19dd6efe2dab55a28ba13c2e11f0f7dba084bcbebd6e73e77781e9badb7f232ae4f466c60da156fea62ecfb1fe7b9d73e99106fbac726dd6211385e9898e91e09c93d975d3870e00351d80a3ba4399772bde31c7fd96597c5f70d892cf453044440044440041a3c818557f9065fd5ca5590078133ce38c37bdf922b71ebf06064e46c443ee2a012c3ce1eded8063132dfe0366c93343e21ed1909bd76337df4d1477bd18511d379187cedb5d71c0fb35946394f3cf144477c628c87208403040604b5efbefbcedd74d34db1f71e024d284a65e55bea72841a8c87061ea0f07a62d9e1871fee1f76abc51246c4653633e17ecb2db7f4fcf06ee493d2d0f0f4c2431bcf321ec4f1b03eefbcf3fc263cf8f3d9e9ef7ef73b1fdb16af471e8ea917c6f62616f0d053d3b4956e37622a5227da968738ca8db860e5e6c5009e3d59461fa32ff3492ea203fc8ab17ced6ede90c5e453ec36b43721264c30bdf1c61bfdcb95fdf6dbcfc7a24640e453edf0c5089e72d57c31524cd943d101219576a24cbbedb69b238404c70c9e67b4171e84ace7251275e5f3773c1a070d1a14ef0ab12b8c1319afc83363e22a5ebf08181c3778f2f1e975b9b6f1c61bbb9e3f9fc7283ff5e2d867c041ce3984efe1dc643670e0c0bc9ffcdb766953da9ef331f9230833c0d855575d159f434943fd4aed7fd56a8372d8701ee5fc858845dfd8679f7dfc39071111f1877e117e89c27520fca2a250bf8315e9ad6f71fc177bec93767159394c89597ee081073abcd331fa0aa217f1ce8967cf57188808f6d28117c684a8c048cbf162e7170476d811231f319258b7bcc8b0f3ae4f54c3ff38366d503bcb8265e6bd6fcb9856e27e25bc8e728c31d8ee01071ce0afe3bc40b8e38e3bc25d963c5fa82f56ebf8a3a0fdfbf78fcbcbb903cf62eee5386761bc68e15a626d4e3b170aebc33998be612f25391f11ab977b3a96714dad443ff0052cf3bf9a5edff3ed96b8ff761cd8fd31f7a238222092f3020a4f6eb3238f3cb246d7e167220fdb1151d881b9f316dc635a7e69d3252301f4f2a3fafbf00dc4ebb598b678dbee71de6beea06d7a7af170f0a71323f174a170d834729fdd6f8b1e6959d668d9ccd9f3dcafcf7f3df26aedea36e9dbd17d1bc5157e281259477ff37d9cdfbabd978962292f1032894b7cd333a3fd3a6210ef78f6ab6eafcdba7b8f61160e1931d97b1acf23506f6478169bb87cf44ebddddbff5a107e8db4bffacb20b7eb865ddd46ab7574d366ce710fbff1951b366661b88bfdb7ece19afdec85ec33cbf35f9326ce5d76647f77c415436291f5b1b7c6bbc7df1eef765c6f79bf8f9651f88b8fbf98e69e18323e67103e98fe699f855f3c26770393032e191c0bfac9f5f69b18d3bf8c622333981e46be5bacd9d956674ef188de65832eee8ac7167841c37ecc841f7cb80ace6df6928ffb93708c93cc0cb542044440044440041a20817a2d14234499c0916c9bace5c9ed6afa9bf883e79c738eff230f6efaf15a4b3384d9bdf7de3b6d55de658819d75e7bad43e8b2cff7eebbef3ec75fb1869884e7e8c5175fec93101e8118ad6946f97908aaa421de31389b7d7e8987350fe1e10d583559f2c086806b0f793cbcd8034c5a3d69477821c0502e3cb4887d8a772a063f13de93e911a4f01c372b276db9ed86d0181e03cf3efbace32fcd2877b2ddf97c144f2e7bd9610f75c58a4585da1df1222c5f5ab96ab20c918c63cdc4623cb992de5c962f0ff2a1d7be2d2f659aef1c546c3e6bafbd76bc29fd8f3027187d00a19876e0613e146d6fb8e106c75fd2565b6d3577c1051794f4d04d7c48e2485aff40b8e58f5039260695d356b435e731ca6ffd09e185bfa4517e5eb09463c49fce3ac7e1cd891054aa55ab0dca61c34b9febaebbce7335d189f356f2e51775e505165f0d8456a8dfb16d783ee3982ec5b242f514caa3dc63aa1ca6948d1781887916f7f789279e70fc258d6b182fdcc2970ef42f5e145b5a4432fe2a6db44538a81df91f72c821716cdce4fecabdc6120e89fe622133788110be8448eeafd4df85fa62b58e3fca49de7ffffbdf7d78097ee7bb97a3cdb9970adb9c3449633d5f702198da39efb1c71e73fc156335397642b1bdd03e0a5ddfcb39dfb36fee277042b0af1e607ae18517a6168beb02f788c51a3183430b05d67079727ee9b6736341f3989d7b7b6116911823bc848986c9747fde7f75d7be4df98f4a9c3ecd6b95e9a383c7f9bfe4fe88fdfbf783d68a17136bf7d0ed7aba9b9ffddc2f23edbdaf8e8dd78733ece3dcdfac190f4ed72b129bcfdab7af3bf73f0bc6a2202de12dc21017967efd5596710337ed6e3f8b9af6eed2368addbc9efbdd35ef3a1b18907d3c39e46bff97960942f6d551bce765dae57a2e27c57ef3ae4ecbc39645bb728f47e2b4d986ab75f003e4d9ef7cd35f4482f2b5ff1de9cb4d997939707214ab78713b0ee42bb3d689800888800888406d1288de09d75fc33b0a61c12c7c90b591a75957e8a69e6db839083f41645921db65975dbce888079319fb35a36c3cb41f73cc31999f8117ba29e121e691471ec97cabcda7c4bcfdb6cfbbd3f2c3d38c9bf63086a2959129e21ae2335ed169969667da7659cbf0c6c2632464439e617b558265dafee1079fd06b88873d33c41346360fe3d6b2ce3eb5a58c279d7492f722b3702396d6a6e4c1e7b8496fae72d2927739edc6831e02399ea8471d75941535678a88ce003d6983cd706ce1819df44c352e391965fcc8d7eee1b15bec27a716f731b9bb303dcc11fa114bb3da8bf6c7bb09311946a55ab8bf4ad4a367cf9efe2553d7ae5de3a250c6f037a22d0360852f9ce8db666c8fe7382f6128532906333c99f1500d8f0d6353893ada798cf3409ab15f42f8d4a4fc96dff5d75fefc588b00eb68ef324e762bc45b32c6cd7b46daad506e5b0e14502b197c37e11961d161cc70861c9f37831fd2eccabd479ca665688ad6dc77471f7378466442d5e9cda3110968f79c42d42faf0c97c6896f6ecb3cfce39966c1bda03a1317ca9ccf15713a34fdb398eb6b5af59b2f22ae71a4bbd78a1187e71145ecfe97f88e3760fc1a0aea429d68ae98bd53afe28e376db6de76ebbedb6cc7b24b6e17accbd18754bb3643b122b1acf59ce6be1b99cb4dc1b72cf118e2110dea7aeb4d24af12e92f9c62b82195ee8842f758255a9b31c63f9aeef95b87f46fca7fef4bb34434c269c175efbc5d4d1f258a6ddc2fb375b56ccb4c3922de2700678945e72583f775c241887b17dc37cfaaeb0a41f148db013599655eeb4e588913b0fe8e2ce3b70cd9c900d9637a7818191a7f06d270d88855e5bf7dbad57747ffdcd1a8e3a641961266e3961805b77e505e1266cbbadd75ed6ddf887f5dd6a19611e5a455ebf27edbeaabbf8d07e513b58aae2a7ab766be71e3e6b53b7c7c6ddf286e720ef03228fe5c7febc69e4b9dd66911d2cddb645c9fb5f22623a79c69c38af3d37e916cf179ae918b1b4d01c6cfbfea829cebcb22d2de7d5e475d3d6692a022220022220020d9dc01291174274a92ddd468d1ae513850f83a5e7d27052f0391d9f2cf1d08fd72ca2339f8256d2f0ca601fec8b9b171e444add07311289b5471c3e3cd2ecaf92e52c37af6ab1a4ee7caa8f68818771870e1d7244353c7f18cd9c872862a4a6ddece3d96d31fdf88c9ed1ccb3c484248772d216db6e1cce84f2c03b14510231839027b437f5a3cc3c905277dabea11bedc91f6d4edb53678ecdb4b6ad2f2c380f104b98e39f63198180f6ac2f75e22506616f78e980e71c1ea48806a5084bd656083716a31d0f6b42a360f475ce231c0f9c2393037c59fa9a4e4b6d83ac7226f75f0e1bbb3e708c536ffa3a824fb9fd82703b787913fa884fe8eb9b95c394ba72dee63883297d96733ed78842c6f6f443fb9a85f370258f53c2aa10c605e3a51f612d8a3d86cab9c6d2bf180096f328f723c5f228c4ab94f5a51e7fa5e40d1bae19b435f37c7141bb85426e29f9d9b6763ee2decdfa4fb1e705cba3be4eb967e2388201e723cec930ad2bc6406fdf4783ac51b6e951488615a3f8b5498fd79a96f5dd9153dcc9377ee0936fd5afb33b7bbfd5fdfc8469d1757cca8f3eb6f0d291f8bd62e4395c8c504bfc64c248b46ed9d431dfa66533d7b5632bd7a259e11733c4281e1f0d3c377d2675756ed9a55af9b435ad5b5aba91e3bf775f7ef783e7c8fae834e8f06c5ea3c752d1f9292d85968980088880088880085493404d75dbf2bfa7aa66adea51de0851e635d5b367cfaa941ce12f1922a0d41d113aa0507cbd52f3acf4f6d56219d63d2d5e34223f7ff9ac54aff330af72d286650ff32c348f0887f1905b6edf29b4afbab89e76b6b6ae4b0fa6e5b0e23c609e84c5bea428677f954e8b5052edbe58e8382eb74ea5b641b19ef8e5b0a9c4f521c9851754365867e8e598dcae2eff2e8729f5e2bc5d937337a213222a7fd530be8431c3d3b758919834e55c63793165e79fc5f5b2b1d4e3cf3815330dd91097ba26160ac084d8e18b26bb3fb4fc784976cb2db7d8cfb285e838a33a3883d85eed737e39d5eed2a1f08b9f72f24f4bdba97d8b289670b687705a1a962d150d52c71f46988a52ac6d242eafdcb5f4afa84ad907e128f893898008888008888008d46f027abf5bbfdb4fa5170111100111a8a304f044c57bfae1871faea325cc2e161eb1679d7596ff42868101b7d8628bec8db5a6ea04680f3c5db1912347c631ca7959c4e0abb2ba43207c31441812e256878687ed5ffef29778b03b8e2fe240cb44400444400444400444400444a02e109047715d680595410444400444a0411140d83bf5d453730633c313b2be79e612c3fefcf3cf6fd01e8ff5a1e3f1d93ef1f02d948595999020a5c4a7b5749a568f00c70c023e6d85484cbbe155cca08284ed78e0810772764e5cfd72435be464a81f2220022220022220022220022250060109c565c0535211a88b049242425d2ca3ca2402952040acd2fa64c40faf74bce46ad59fd009175d7451eaa06cd5daa7f2cd26407b849eaa6cc9006f03070ecc4ea4358b8500c73883e81e7cf0c13e362f8578fffdf7fd5f5820c2a230a8dd461b6d142ed67c03223077de82f05f54697e8d468469403054151110011110011110817a434083d9d59ba6524145a038026fbef9a61f7c8998807831c944a0a112e013fc112346f881dbf0e24378a94bf6d1471ff9cfcbf124eed7af5fc118e875a9ec2a4bdd22c080a4d75e7bad0f05423c62fad3eebbef2e4fd4bad54c39a5e1ab020462aec99cab78893b75ea543f58eeb6db6eebb6da6a2b7983e7106b783fbe9efca37bfcadf1ae7934d8dc2e1b74711d972c3d2e71c3a3a21a898008888008888008d416819a0e6627a1b8b65a48fb11011110011110011110011110011110011110011110011110011110812a13a8a950acc1ecaadc30ca5e04444004444004444004444004444004444004444004444004444004ea3a0109c575bd85543e11100111100111d0c3da930000400049444154100111100111100111100111100111100111100111a8320109c55506acec45400444400444400444400444400444400444400444400444400444a0ae1390505cd75b48e513011110011110011110011110011110011110011110011110011110812a1390505c65c0ca5e04444004444004444004444004444004444004444004444004444004ea3a0109c575bd85543e11100111100111100111100111100111100111100111100111100111a8320109c55506acec45400444400444400444400444400444400444400444400444400444a0ae1390505cd75b48e513011110011110011110011110011110011110011110011110011110812a1390505c65c0ca5e04444004444004444004444004444004444004444004444004444004ea3a0109c575bd85543e11100111100111100111100111100111100111100111100111100111a8320109c55506acec45400444400444400444400444400444400444400444400444400444a0ae1390505cd75b48e513011110011110011110011110011110011110011110011110011110812a1390505c65c0ca5e04444004444004444004444004444004444004444004444004444004ea3a0109c575bd85543e11100111100111100111100111100111100111100111100111100111a8320109c55506acec45400444400444400444400444400444400444400444400444400444a0ae1390505cd75b48e513011110011110011110011110011110011110011110011110011110812a136856e5fcab92fddcb973dde38f3feee6cd9b57a3fc49bff9e69bbbae5dbbd6287da513fdf4d34feec5175f74df7efbadebddbbb71b306040a57751e3fc264c98e09e7ffe794719fbf7efeffaf4e953e3bc1677c2418306b9134e38c1b568d1c23dfae8a3ae53a74e8bbb480d62ff763cfef8e38f6ea38d36723d7bf62cb95e23478e748f3df698fbf2cb2f5d9b366ddceaabafeef6dd775fd7a489de65d5e56370cc7733ddfdaf8d754d9b2c51749bcf9d37df1db84d4fd7a97d8bd434f37f72eed6e73e773366cef5eb57eed2ceed3460f9d46df32d1cfaf954f7f01be3dcbb2327bb29dfcf89376dd1ac89ebdda5addb69fd2eee97eb2fbf48d9bffaea2bb7db6ebbf9edafbefa6ab7c1061bc4693523022220022220022220022220022220022220020d9940bd148a67cf9eed2ebbec323763c68c1ab7cd4a2bad546784622a817089908988f9c4134fb8659659a6c6752b252122dfd0a143bd20d7bc7973d7b76f5fb7c4120b459f499326b98b2fbed86779e8a187d6ba503c7cf8703773e64cff52a05fbf7e8e32d6c4a64c99e2ce3cf34c9f74e0c081ae63c78e35c9a6cea541d4fafaebaf7d9bd1a76babdf8420c2e3b1478f1eeebefbee734d9b360d37c93bffcc33cfb833ce3823679bcf3fffdcedb3cf3e39cb1aea8fba7e0ce6e33e7ef24cf7e8e071f936495db75af725ddce03baa4aefb70f41477c70b5fc4eb10a17fb16627d7ae757197ab89d367bbd36efed08dfcfafb388f7066f6dcf96ed898e9feef1f0f7feacedca7afdb7aed65e34dba75ebe65f28718d39fdf4d3dd534f3d55e3f34e9ca96644400444400444400444400444400444400444a01e1068b4ee7aeddbb7af53cdd3ba75ebb83ca1501b2facd2ccac59b3dc89279ee80e3bec302fa4ce9f3f3f674fa1e0d7b265cb9c75d5fe8117f3a5975eea0e3ffc70f7fbdfffbeac1703b7df7ebb4f8f107fe08107e688e1d5ae4735f37ffdf5d7dd51471de58e3cf2483762c4886aee2a336fbc7e5bb56ae5d72fbbec42c12d3341b062ce9c39ee1ffff847b0c4d5a917383905abd28fba7c0c16aa72b3a695bf843cf0da5739bb9d17b9183ff7c1b739cbb27ee0e1bcdf856f2e22122f1989cc2b776de7965f66413fb5f4d129c69dfb9f61eeb6e7170ad3acdb75d75d5dbb76eddcd4a953dd030f3c609b6b2a022220022220022220022220022220022220020d9a40712e5a750c019fa6e3b588275e2864328f37eee5975fee4bbcd9669bb973ce39c7e1f16886108ab055aaa065e91bda1466887c7867d74526a1e76f4d05743eddffcf7ffee39b8e4fca1b52c809846fb39a7a5b5bfa4a4c7ff8e18792b221dc0aed8375efdeddb713fd31796c9794693ddbb8ae1f83c5e25caa4d7377c961fdfc4b98a64d177e95904c3f7bce7cd7b543ae606bdb4c8d42440c1e3ed17ec6d307a2f016bb6ed0353a77c78b169921ede1970f7173e645eaefcfb669df8eeeb85d56765d82fdcd9c3dcf3dfed67877cd7f47462175166c48a88ba5db3677bb6db4201c112f12f7db6f3f77c30d37f8ebc90e3becb058bcf5ad1e9a8a800888800888800888800888800888800888406d10a8974231603a77ee9cca67a9a5968a97afbbeeba6ee9a5978e7f6ba6711220f6adbd2cb0d8a38d9344ddab35718dcdb6df7efbd833b959b37a7b6ab2ea34ba69cbe64ddc4acbb75d24e66f29209e8f3c874de85d25f2001e3fe94737e3c7b9eeab8933dde86fbf77bda3fcb3ecbc7b8639c24a981db7736f3770b3eef6339eb66ed1d4ed152ddf7c8d4eeea07fbc1da7b9e2b1cfdc56fd9675eddb2ce87b3beeb8a3178a3977700ee14b0499088880088880088880088880088880088880083464020d5a8de1b3f6520c4160dcb8716edab4697ef0363e3d5e7ef9e55ddbb6d9e24429f94f9f3eddc793c5eb12afc9e5965b2e16b293211fb2f2c5fb122f4cea86272282399ec035f1b6c56b933adba080781513ee816578a7e6cb93b8b8c42fa61c4b2eb9a40f1760e107b2cacefe28bfa5c3331cb61d3a748805424b4b99d87fc8055191e594b158219134f7dc738fcf96f8b92bafbcb2ed629169c896b627566958274204c03cdc37ac6cc0b570793273ea4e5df2710dfb07e98937cc808b69f9921fcbc33ece322c5ffb25f741ffa61f1663f9f8581f2a261fb6617bb85999598677346d6b79513fe6d98675d61f397e88614ceceab4b8d5c93ae6e3c87ec332186beafac5175f78c6b4197d873e111ac700c722652ef61808d333cfbe6bf318649fec8fd8d69ce730f8e0cd6dfdd82facc17f73a241eaca3106b163603c333c819f883c7f9f7dff9b8871b46ed05877dac0d56c75ce74cc84996ec86793e3657b6ed22d55248e378866084371cd71eb7a2f64f227c4c5dd2f7fe98efa652fbfd90a2bace0d65c734df7d1471fb99b6fbed9edbdf7de39e70336a27fd2fe98f51dff43ff89800888800888800888800888800888800888403d24d0a085e262db03e1e9a69b6e72b7dd765b6a12e255feee77bff38266ea06051622283130d273cf3db7c896ebafbfbe3bfbecb30b7ed6fcfefbefbbbffded6f5e204b6682504c9ce16db7dd3616d392db247fbff3ce3b3eb66db8fc7ffffb9fdb68a38dfca25d76d9c5fdf9cf7f0e577b51976d88173c79f24251c6363af5d453dd5e7bedb5481910c3081542bce12c3bf6d863dd41071de48558443a069c0b072b44dca24c185ee384180945dcac7c3ffcf0c338b401424f9a98f3c1071fb873cf3d3795ed6f7ef31b5f2ef82218adbefaeaee965b6ef1e51c3972643ce0dad1471fed6329a795e3b5d75e737ff8c31ffc2a3e655f679d75723643b4bbe28a2b52fb07c23479fff6b7bf8dcb4e7fc5333ad906c71c734c9c6f723fdf7cf38dfbe73fff99ba8f555659c5fdf5af7f754cd3ac109f030e38c0951abf1a0f4dfa7368d75e7bade30fa3cef407fad3d8b163ddf1c71fef19dc78e38deebaebaef3db201e87033f96ca914c10f9fef8c73ffa81248913fef0c30ffbbeca7e92465fa01c9f7df6991f7c0fb13a69279c7082838789dac9f5e1efda3c06d92f2f3a6ebdf556ef251b968379589e7ffef96ecb2db74caeaab5df9f8d9be13d88d9619b964dddea2bb47784a94028c69e8ba67fd86d15d72af25c4eda6d51e8889ff55ad72c0a7b71c48e0bc4dee476c9dfbd220fe5ad232f623c99b147de1ce70edab6a7df07c2f91e7bece18f7bce451cff9cafcde897bbefbebbff99ec8bb68da622200222200222200222200222200222200222509f08347aa1185192589449d12d6cc4471f7dd48f7c8f40b8da6ae91e6de1f6e1fca851a3bc275ab82c9c1f3264881f38295c969c27beee25975c925c1cffc6abf1f4d34f77084fa79c728a1731e3951933942b9f21b086debc6c9baf0cacbfe8a28bbc98b9e79e7bf2d31b79209ebdf9e69bb628757af5d557bb2953a6b8934e3ac97b1c87227132019ea4fc15128a11015f7ae9a53879fffefde3799b79e69967bce867bf93d33befbcd3f1678617749ae51306699f2c43846520c12cc363f1aaabae728f3cf2882f47d2ab352b5dd8761f7ffcb1175db3b665103c8e0144da500863fb52f964ed23b93cf4e24daeb3df784b7ffffdf7f6d30bddfffef7bfe3dfe14c391c6d2049fa14b168b38c7e403f4628ce325e08d12f79d151c86aeb18a41c7859d3c6bcb44a335ec4209823842fae100b0fbdb170103b4240346fb6845b6fe5655cbb56cd7cf889b951ece1573fface6db74eae073c9ec89f8c59e01d4dddb6edbf5caa989c566f96edbdf90ab150fce39c79eef36fbe777dba2fe9370fcf19cf3fff7ccef181f01e5abe7340b89de645400444400444400444400444400444400444a0ae1268d4423162d5e1871f9e2312e335486c4a44c6d75f7fdd5d73cd35beed1052d8164fc862e31ee3f979d45147c56d8f7728deb81b6fbcb11761111ed23c17e304d10c426728d0122a00e1b557af5eeecb2fbff45ed043870ef549eebfff7ed7a54b97bca2a0e5bdeaaaab7a2f698448bca9a91f862727dea18484c8123eac0c78a04e9c38d10bad08ee180309eeb4d34eb188fbd4534fe588c478c66eb3cd363e7fc27c507f2bff430f3de419339014deb188b20f3cf040ece98b775fefdebd7d59f1e02b64d4edadb7def29bb13de50eedd34f3fcd1189110cf1ee86cdd4a953bd77292f0942a34d4bb5ac4ffaf1800d4562fa074239622da239deb2b67fbc1711f2108da9cbc1071fec43050c1e3cd87bc35226c207ecbbefbe3ebc85095cb4cb11471c11179936a30f125663f4e8d1eebcf3ce8bfb3f2221fbb3c1fe6ac227de518199b5d65acb8b9283060d72efbefbaedf9a98e25b6fbdb5f77ca50de00613cc06a8f43fa2ffa8df4a2bade4eb5a538e96b7e5194e8f3bee38b7d5565bf9f00c78da9a386c53da002fecbe7dfb7af1f5ef7fff7bdc4fafbcf24aeffd5ee845466d1d83bc34a0cd4d24a6ec7ffad39fdc1a6bace18fdf3beeb823ee4370a68f708eaa8999576fa96967459ec32f7db8f085ca2e1b74f159445dc06dbdf6b2eed1c1e3fcef075effca0bc151549ad8a6ff30c74d98ba50b4dd69fddce33cde306366e52eed5cc7255bb889d3677bafe4515f2f148a09cb42680e5e24bef1c61b3e54887d95c0f925340b41112ed3bc08888008888008888008888008888008888008d427028d5a2846a44280334b7a54220211ce014f3c84543c0e112e4371cfd2a64d9f7df6d95884439cb9fbeebbdd8a2bae186f8a2043fe887b6986476528126fb6d966feb7091588c55b6cb1850f6b71d75d77f92cf82c9f5019881bf96cedb5d776fcb10fc24220280e1830c0d72d4b2026bf6419a8cf830f3ee8f022260f38217222ca229cbcfcf2cb7131087db0f9e69bc7bf11fa10a4f06024a405c20b7fa435c678367f1e7de28f884bf8872c8fde38d36086b220f862b0228eac1965c343dc0c4f7104f350dc23feed7aebadb748080e4b53ce94fd5b9b910f9ec2f7de7baf8f376df9b26f78e1258ee17d0e0f425710de00230c07fd18bbe0820b5c9f3e7dfcbcfd8717acbd04f8d5af7ee5ce3cf3cc587ca5ed68cffffbbfff732f452f24d80ed110ced5e6036ffe786960030c5296f0580807bab3fab00d623e71ad31ca8937ba59a91c2d9d4d118fe907c4a635bbfefaebfd31655eee08f27035ef6e4477427decbcf3ce9e211c8bf178af8d63903a2070123601a3cc78a7dba09f3d7bf6f47d9cfae00d8d5d7cf1c5be2fda79c62f2ce2bfc933e6b8edce7c25ef964d9b2ce1ee3a6543b7dcd22d73b67b39f214fe31128bb165976ae918c8ce6ce7015d62a1f8d3afa6bb31137e703d3a2ff4ec6fd6b4c9cf2fb57ef203e975e9d0da9216354574ee14ed13a11823ec8519e76d8e2918f26500623bed8fd90b2d3871ce2ce5dc64f96b2a022220022220022220022220022220022220027589c0a2c11eeb52e9aa5816bcec426f5ebc29939fddb37bc4343c0acd10d2f88cbb90e1ad1c0a91885ba1486ce9195c8df8b869f6de7befc55e8008a5783026c51b040ae2df9a788148f5f4d34fa76597ba2cf48ae333ff3064413201a209a262b20c0824f6b93afb0fc577cb83f2238c258df233689459285223029a51cee4a7deb62e6b3a7efcf858a8372f59db9698bd08f9667ff9cb5f7244625b8e7734c27ba50d4f6ce2e19a11a39858d349c3ab152f7733e268876d140e668738191ac23de233864098169684b6443c36d113119136ac2d3ea1181cd625ac87cd737c12e7da446296578aa3ed8358d9a148cc725e30841eb6787d1b2f4bc75706e14b90b01fdb3659d36a1e83f415446c335e8699486ccb98eebffffe717c72be54483b86c3ed6b3a3f3f3aa6e7132b22300ef37b5e19132fd971bde5bde06b0bcce397df6cfb68144738cbc89f41e94a31f2fc2a1a0ccf6cf0f04936eb05e08e1d3bfadf1c17e695cd027ba1452c6dce7fa5c6e98e77a21911100111100111100111100111100111100111a823041aad506c6218ed80008a2098659b6eba691cb68074c5089608c5165f95fc37dc70c3acec1df927852736263483195ecd78b0a5199fe8138ec26cd2a48542872dabc41451bb73e7cea95911aac2cc3ee9472c436427aeebabafbe9a537e1822bae0651d0ab69647dab414f12d999eb006562ed659db308f008977739ab14f425e54daf074a62f61782c32485e9685fb47fc0d85e2ac342c0ff781e04c3afa46f20fb1d8c2a9e0354becdcc5cd27ad5e844509db3059c74a70cc779cb23f8ee5acb6ca0a319256979a2e2bf518a48f119a03e36512223b6114927d80902a3d23ef62330b0762bf8b9de2298c4770d6df326d5b446d18b9f0063676e24c373a8a0b8ce171bceb465d83b52e0a41e2dcc0cd1678f1b2e2c977be7673e6962606e76498f8111de2ae735466b3d57e8e4fcc6f8eff70f0c964ffb3349a8a800888800888800888800888800888800888404320d068434fe0c9681e8c8418c817aa01218d98aa089b082f63c68c89e3b8667502043713dbc83f4be4253d1e8bc45cb51002966738c05ee8d168ebc369e8ad8c304b6ce44a8b1a0864a58a615606c24730a8dadb6fbfed63d28622b8c5000deb53e9796b6bcb174f5433426e58396d5938256c45a5cb48780e3344dc7cfb274e2a1ed188c488b878b4e7ebaf96af85dde037b1b5f92bc6f04c9e366de1e0608b834fb29c78a4139f3a69e57234819c7cd947d7aeb92265727ffc4e7ad4a76d53ad65a51e83e1790e2fe17c2fc4c23287e79e7079be79c4e17f9fb2911776f36d975c8787305ebd18dec0475ff98e6b827afbb3b568dec48d9ff4a3fd743fcc9ae7de1e31c96dd27781a7efdc79f37d0812db20e9b16ccbb3a649c9b96d107a222b8d968b800888800888800888800888800888800888404324d0a885e2e6cd9bfb36adc90065853a031e7be6315a4cfe8854a11176a114afbed0cbb45ab1321928af54af5e04270661fbe0830fc2eae5ccb30dc2a709eb392babf483cfebcd0a89ae88b8f9845ccba7946952b82e256db16d80a85c13a36c8b9b4fb2dc0cbc96d6af2bc9911010e171942c435df85dea31485c5d8bad5c4af9c39020c5a69b1309b6847e882206179b24e2eddc136f8fcfd97ec2b4059ef6390b133fee7d754c2c14b78e84ddb6ad9ab929dfcff182f3a04f26b8bd020fe444d2457ece8c84e7b151dc63b30ed1c076a17df2c927e14fcd8b800888800888800888800888800888800888408325d0688562062d2b47642ad423885f493809449a34812b993e29e62006f2193c83281563a1a76f32af62d217b30de1344a31c4a6430e392427dee9de7befed63a1e2254b180b445ae2033ffef8e3feb3fe52f22f65dba4172803099a158a398d8018c691b574e54c096150530b6337e7cb230c91c0406b0c66978c634c7afa9af1e198200c47186f7571f049d62beb654b6d704c966571fe2ef5184458e618e3650cded2c418470c4feb43f6e28c7d6485982954f7c011b8d0a67efdebc326b899b3e715b56db8d1475f4c7308ca9ddab770cda3c1ecba7468e58562b6796cf038f7eb4dba677a3613e662c5ce6de3f54fbf1b85b298b7c0af98f2afb8ecc2303ae4c7d7240c622a1301111001111001111001111001111001111081864ea0510bc5268c7cf6d9675e48490e78668d8f70326cd830ff13612a1c7ccdb6494e11de2cff0f3ffc306ffe8408183a7468328b9cb8c508c661accce4c65f7cf145bc8898bb95f6808d332f6186d8a8362816dcfef39fffb81e3d7ae4e48060554ccce79c4445fe08c55d06b6635fe68d1b7a7013239901e3b29859ff48ee36cc3fb9ce7eb3cfe1c387dbcf781a0e28f6c20b2f3806c432b136dee8e719c264107602230c06a14a8ab1303fc4c2b4c11a2d1fbcdf118911884917861ea8291fcbbb9ad3dae058cdf2573befb04fd3aebc7c0a9785fba7af22c8b39e1769d5b66877ee81d717c44f665f849238efc03533773b35f218defb8237ddecb9f37d880a04e143b6eb191dd3ceedb7450f77f69d1ffbb463a281e9de1b35d9adb7f2328be4f5663450dde9b70e752b2dd7d65d71cc3aae75f3a6ee96673f8fb7ebd77329d731e1511c86618937d48c088880088880088880088880088880088880083440028d76303b84cb6eddbaf92645247be49147329bf7b5d75ecb113c8b1151d826ccffb9e79ecbccffe5975f4efd3c3c14a4efbcf3ce1cf12ecc0c81ef924b2e891731a8574dac18cfe752f20d431f301059522426af50842f25ef62b65d76d96563b19dcfc7c3b002e1bafffdef7f2eebf372c43304ee34336f4dd60d193224277fdb1ee12d6db03e044ef38645484e7b516079dc75d75d36eb631587dee3f18a9419fa9f85d5b8f7de7b33fb0f5cf6df7f7fb7c5165b38e225e3415c093e2945aaf8a2dae058f142e7c9b0d2c7202f4408db81114ee49d77dec9dcfbe5975feefbc0669b6d96b73f666650e28a89d367bba19f4f8d53edb9c982f371bc2031b354dbe6ae7fafa5e3a58f4642f1dc9f3d8137eddbc9b56bbdf0bde769b70c759367cc89b765e6fb1fe7b9b3eff8c82fc3ab78e079afbb63ae7ec7cdf871e19712876dbf92179e2d21c77f1836277cf962db682a022220022220022220022220022220022220020d8540a3158a11db8e38e288b81dafb9e61af7eaabafc6bf6d0611f18c33ceb09feed0430f8dc5c77861ca4c327f845cc4c4a431c0dbb9e79e9b5cec7fe341dcbd7b773f8f987dda69a7b964ec50443ef266a03d0c6168934d36f1f3a5fe473cd36a19426cd20397b25f71c515b1088f27a389a769e528f5b37bc47ac27f60886461d8050631db65975de2ddfcfef7bf7769f5e705429ad04bc2d033133189410e43a37e175f7c71aa408bf7fa9e7bee196f7efcf1c7e7c405b61584e440e4353becb0c33207144cf68db66ddb3a424e6059fd8775afbcf28a63b0418c4111112b2bc1c76758e5ffaac1b1ca45ce9b7d5a1fcc9ba0c04a3ce8f7da6baf78ab934f3ed9e1e99f343cffefb9e71ebf9863909720d53606b163f03a6ce948045e7ba5852270d6be7fbde942319998c41f8c5e302864743a7727edbe6a9c8c7c0fb878b0fbf4ab19f1b2b6ad9aba0b0ee91785aa581043f9c739f373d6afbfca326eadc8a33834ce5923478ef48b38b7862feff0f2ffe73fffe9cf61975d7659eacbbe302fcd8b800888800888800888800888800888800888405d27b0d005abae97b40ae5db78e38d5dcf9e3d6391ecc4134ff4c21ab15c091bf1d24b2fb93beeb823de33a2e31e7bec11ff2e34c367de61fe78d522daecb0c30e3e04029eca37df7c73663688cd88d4c71e7bacdf86c1edb6de7a6b77eaa9a73a62ec8e1b37ce5d7ae9a5715802363aeeb8e35cfbf6ed33f34c5b61022e62ea09279ce0565d755587a726e118ca31c22498e1518d90b9cf3efbf8f28d1831c25d75d55539222a42eea38f3eeab6dc724b478c670cb11543e83cf8e083ddf6db6fef971d7ef8e1b108ec3748f98f300a1b6cb081cf93f453a64cc94943fdcc5b98b8ceb43b8271fffefdfd27f80f3ef8a0cbe7098e108df7366141c87fbffdf6f3ed053f42815c77dd7571df4a299eaf0ffb202d754738e6e5c5a69b6eea07f6bbfbeebbdda04183e2a4787a8671875981c7a3192220792060efb6db6e3e4cc5befbeeebf046c7acffd0cf89bb8ab7334234cccd8e3cf2c858002f978fe559ed29fda25c8ed52e63a1fcab750cb2dff03c473fa36f70fc6cb4d146fec50cfd9717656603070ef49eebf6bb1a530eeb7010bb1dd75bde35fb59c0cdb7bff557eee05ab7681ac7357e300a5d612126b6ead7d97d32a6bbbb7fd0589f05b18f8fbaf21db77297766efb75978b620fb7713fce9eef966cdddc4d9ab1e880797fde6ff54576cd3162615f88dd1d867d61c052f3f6475c277c8c4c04444004444004444004444004444004444004ea3381462d1423c4de72cb2d5ee0338fdc279e78c2f197348480db6ebb2d4728486e93fccd67cad75e7badcfdf62bede77df7d8ebf620da1f39c73cef17fa44154fcdbdffe969a1c6f53068b2bc51053895d6b5eb38846fc21801e70c0018b7801979237c2cada6baf1d7fba8de8190a9f6979e11d4d4c5e046fbc2137df7c73f7fcf3cffb4d69a3db6fbfdd8b5bc58832a4ffc52f7e110bc58478300f6d32448cbee9a69b1cdc30c43a3c038b35fa0f821bbc30da86b62ad6f086e5454128c8df70c30d8ebfa4adb6da6aee820b2e88455c5b0f5f33f66fc2376233427db28e6c73e185175a929c29e580b759326da97c2c9f7c531348f36d53685db91c434ff342fbaac6fa6a1e8394977eca7988f635d1f3c61b6f74fc258d7e662fa692ebd27ecf9db7e0454edaba7ccbde8f3c814dac8d0e53f7cbf517bc18ca9786755155dc76eb2ce7083b810d8e620e13c2c2e20a1fb773ef48086e961377f8b3f133dc674f2cf42cf60953fe3be6ea77dd1547afe3bd9b6df5e8d1a3634f6142b3845f1184f3b6bda622200222200222200222200222200222200222509f09448fdd0dd7f8f4be90e121f6f0c30f3bbc312dec412800307fe08107baa79e7aca7f965f28bfe47a442cc21764099b2bafbcb2f74ab3cfc3c37d5b5e8448c02b14cf403362c89a21ee5c7df5d5ee98638ec90c4b60db26a788a9d41d4f5dab3fdb58c88630566d31f13929bfc5c545a022b4045ec46661b9d75d775defb18d576bb86f8433b31d77dcd1e1e51aa6631f94bb18631f5697c71e7b2cf650b6b408adb4cfb6db6e6b8b72a670b9fffefb630fe79c95d10fd223c2d93ec2f6a3ccacbbf5d65b7db2908de58320fff4d34fe708fcf41933b89c79e6995e204f8b8ddd33f288e7c541d7ae5d2d896719fea68c300e436dc41b473308c2575e79a5f7264f722d954fa931763b74e810b3cbd7bf0ae55b538ed4b75fbf7e1e47d876219f70be52db847956f318b4fdd879886329cde86784b6e1454c5a3f4b4bc3b2a5dbb68863fa366f5afce5e49dcf26c759aed66d49b742a736f1ef42333b0fe812ef931013c3c74ecf4972e0d62bba9bfeb0bedb60d50e39cb933fba776aed36eed3315e3c361a046fe0f96fe4c4367ef1c517e3f508c55946bf28a66f64a5d77211100111100111100111100111100111100111a80b0496883e5d5ff8ed7a0925b281cac2f0022524af939b82028f3b044ee6f1be44eccb2760955211f2e373653e674654200e2c211e4a31d29207c20f1eb688b2a5e651cafe2ab5edac59b3dc77df7de7cb4bf929b789abec837a511f582372568a39ed489c60e2fc22861166211462c3fa5106bc99191c90d0239d3b77f6a2192133084b815738a11ff0424f1385a89ff51d4266903e29bc86fb4bced33f88514bbf204c06315111524bc9239967f237ed403da82bf9d277d8473196c5a798b4b5b94d6d70accdfa547a5f7871d357e9e3f475fa2a2f0be8bb0dcd083531fcabe9eeebc93fba5973e6b925a27f4bb76bee568dc4e9e5965ef042eacdc82bf9ccdb3ff2f192fb745fd25d75ccba110be743e5ecbefbeefe9ac08b08be28493bee1b1a33d5470444400444400444400444400444400444a0fe13a8a96e2ba1b8feb7bd6a5080009f8f9bc7f69ffef4a792e24c933542b10946f984e202c5d06a1110813a4ae09b29b3dc650f7feace8ce214b76dd9d497f2adb7de8ac37010ae659b6db6a9a3a557b1444004444004444004444004444004444004442097404d85e286e74296cb45bf44c0119e61d75d77f52408b13077ee5c5111011110819800dec57f3f78ad5824c6cb9a301c185ef7c43a978980088880088880088880088880088880088840432720a1b8a1b7b0eae7432c109b95d01353a74e2d38a09e90898008346e02c3860d736fbef9a68770c61967f8301d8d9b886a2f0222200222200222200222200222200222d0180848286e0cadac3afa18acc71d779c2771d65967b9e9d37307c0ca878898ae849fc066cc98916f53ad130111a8e704f8e2801035d8faebafefb6dc724b3fafff44400444400444400444400444400444400444a0a11368d6d02ba8fa898011183870a01f9c9001a95ab56a658b0b4e5bb66ce9ce3cf34c1fb2a26ddbb6151d5caee0ceb581088840ad12e0c5102f95083fb1f1c61b6b00bb5aa5af9d8980088880088880088880088880088880082c4e021acc6e71d2d7be45400444400444400444400444400444400444400444400444400444a0820434985d05612a2b11100111100111100111100111100111100111100111100111100111684c0414a3b831b5b6ea2a0222200222200222200222200222200222200222200222200222200229042414a740d12211100111100111100111100111100111100111100111100111100111684c04241437a6d6565d4540044440044440044440044440044440044440044440044440044420858084e214285a24022220022220022220022220022220022220022220022220022220028d898084e2c6d4daaaab08888008888008888008888008888008888008888008888008888008a41090509c02458b44400444400444400444400444400444400444400444400444400444a031119050dc985a5b7515011110011110011110011110011110011110011110011110011110811402128a53a0689108888008888008888008888008888008888008888008888008888008342602128a1b536babae2220022220022220022220022220022220022220022220022220022290424042710a142d1201111001111001111001111001111001111001111001111001111081c644404271636a6dd55504444004444004444004444004444004444004444004444004444004520848284e81a24522200222200222200222200222200222200222200222200222200222d0980848286e4cadadba8a800888800888800888800888800888800888800888800888800888400a0109c52950b448044440044440044440044440044440044440044440044440044440041a130109c58da9b5555711100111100111100111100111100111100111100111100111100111482120a138058a168980088880088880088880088880088880088880088880088880088840632220a1b831b5b6ea2a0222200222200222200222200222200222200222200222200222200229042414a740d12211100111100111100111100111100111100111100111100111100111684c04241437a6d6565d4540044440044440044440044440044440044440044440044440044420858084e214285a24022220022220022220022220022220022220022220022220022220028d898084e2c6d4daaaab08888008888008888008888008888008888008888008888008888008a41090509c02458b44400444400444400444400444400444400444400444400444400444a031119050dc985a5b7515011110011110011110011110011110011110011110011110011110811402128a53a0689108888008888008888008888008888008888008888008888008888008342602128a1b536babae2220022220022220022220022220022220022220022220022220022290424042710a142d1201111001111001111001111001111001111001111001111001111081c644404271636a6dd55504444004444004444004444004444004444004444004444004444004520848284e81a24522200222200222200222200222200222200222200222200222200222d0980848286e4cadadba8a800888800888800888800888800888800888800888800888800888400a0109c52950b448044440044440044440044440044440044440044440044440044440041a130109c58da9b5555711100111100111100111100111100111100111100111100111100111482120a138058a168980088880088880088880088880088880088880088880088880088840632220a1b831b5b6ea2a0222200222200222200222200222200222200222200222200222200229042414a740d12211100111100111100111100111100111100111100111100111100111684c04241437a6d6565d4540044440044440044440044440044440044440044440044440044420858084e214285a24022220022220022220022220022220022220022220022220022220028d8940b3fa5ad951a346e52d7aaf5ebdf2aed74a1110011110011110011110011110011110011110011110011110011110810504e451ac9e20022220022220022220022220022220022220022220022220022220028d9c8084e246de01547d111001111001111001111001111001111001111001111001111001119050ac3e20022220022220022220022220022220022220022220022220022220028d9c8084e246de01547d111001111001111001111001111001111001111001111001111001119050ac3e20022220022220022220022220022220022220022220022220022220028d9c8084e246de01547d111001111001111001111001111001111001111001111001111001119050ac3e20022220022220022220022220022220022220022220022220022220028d9c8084e246de01547d111001111001111001111001111001111001111001111001111001119050ac3e20022220022220022220022220022220022220022220022220022220028d9c8084e246de01547d1110011110011110011110011110011110011110011110011110011168260495273077ee5cf7f4d34fbb79f3e6b9e6cd9bbbedb7dfde356ddab4f23b5a0c39fef4d34feee5975f7653a74e751d3a74709b6db6995b6289251643496a7f9761dda9f38e3beee85ab46851fb0549d963d42ceeee97bf7413a6cd4e599bbd68eebcf96ead9e4bb9edd6592e7ba322d6b0ffdb9effdc4dfd7e8e5b71d9b66ef78dbbfa5456aeefa6ce725d3bb6760337ed1ef5972232d4265525307bee7c77d333a3ddcc59f3dc467d3aba4dfa76aceafeea43e6f4d527877ced1e7b6b9cfb21e2d2a27913b7e37acbbb5f6fd2ad3e14bfd6caf8da6bafb9c71e7bcc9ff74f3ef964d7a953a75adb777dde5178fd485e3bc78e1debde7aeb2dcf749b6db671eddbb7f755fdeebbefdca04183fcfcda6bafed7af5ea559f1154acecc685fbaa2db7dc32e655b11d282311100111a820017b2e9c3d7bb6ebd3a78febdbb76fd1b9dbf98e04a5a62d7a277936b4b2f34ccbb5698b2db6a833cf7dc6a6d4676ceac2b379dbb66df3d4bcf02adb3f5b86d768635693f62ebcd7bab7857128a51d6883f07ea7eed5aab225b27bc0499326b9155658c10d1830a0b23bc8c8cdf65bdf749b628e21583ef3cc33eeabafbe72cd9a35736ddab471fbefbf7fd9c77506ca46b9584271159a7dd6ac598e87e9f9f3e7fb8be9861b6ee845d52aec6ab164f9f6db6fbb891327fabaadb1c61a15abdbb469d3dc679f7de6ebc48374cf9e3d6bbd7e3cb07ff3cd37be6eec9f728416d61d913cb93edcb6b6e7ff1b895c5f4d9c59f26e1197cb158aa7fe30c7ddf9e2976edefc9f5c9b964ddd2e1b7471cd9a2e5084ad5c08c49baddec975e9d0aae4322a41650920103ff0da57bebd9effe05bf7c8599bc6ed55d93d159fdb9cb93fb997867eeb9a3659c2b568d6c46d1af515fa4c6d1822f11fae7fdf0dfd7c6aceee86769c2aa138203279f264f7c4134ff825bd7bf7761d3bea054380a7e06c78fd08af9d43860cf142311974ebd6cd6db0c1063e2f6e82070f1eece7b93e4a28f6285cc865faf4e9ee80030e58b0a288ff0b5de38bc8429b641010db0c305a5cab041018860e1dea9a3469e2c583d5575fdddfd3d76a21123b0b9f0bdf7fff7d77f6d967c70e4485ca1b9eefb80e942232278a91fab3d0fec3b2b76cd9d26dbef9e671d95333acc585219b52768bb30f8277b94271b8fff01afdffec9d07b82545f1b7470525e72549b8e48ca42587052447c92849444051415414e503248ae4a424254ace48060109c20292b364c93967ffdfbcbdfce6d6e9db3367e6cc9c7bcfee763dcfbd33a7a763757755757575b5c599dfdf55ea39bac4b578a852672bef544937bac6950cc81319ba291dc2a38f3e9a7cfcf1c74eefb4c0020b3823458b2395cbb8b7b2a78dd36befede6d0934f3e999c78e2892dd5a67da4ab3baf5b321dcb7f4445711706003b6a0828288a0106ee9804ecda74035e7ae9a5e4dc73cf75592308f5f5f575a398c23c59b0df7efbed2ece061b6c902dd895080b7141aff5eb37520bc84ea009c5edb85ffbaa53f0a1289e68bc715a147c28fd22f41606c649fb2bd5c7265fa4d562dcf40289fae093cf9383ce7f2cdb6c184ce5f583cfbe334049dc0b38e9ad519324175f7c71b601bade7aeb8d71bcaddbf8cee39df6648ae53136be0def763d7b3d7f8b97aa7cb81d8feff5b6f772fd226e7bb977c69ebaa12838efbcf31caf42b16995b2438505d685a255d072bd539f76f5b5f4ae1b7ca05df9764debd77da8f0a9722d6e1456e609fe2ddf2d932614c7966ffba6a8bf43f98cee61160fa37b5bba597f3b462c0da8532616c3175d74913be94d9e7da9eec457408f8efd53348768f355575dd582b6f1c71fdf29cb5b02e38fda18e88ec6af76b56206bd8c014cfb213ab2986eaaae96905962da54fe65f2b182c350d5a14c3ddbc5f9c1aab324cbcd375582a56452b04ff179ea8260b6e9266a975da5ef9fa5ee2c2c4c32c138ce421425f257d14e46e8090c60b94b7fa0d8ef0528da6ce876fd9e78f1fdac88b967983839f6478ba4b84992cfbe60024500031c2d7cfcf1c71d321044870d1b1611531103dde29d15ab3156471f53787c2f7662c46d2ff6cad85727abd84479d09442a62e263120e26fbcf15a4fd50d757d87bafcba78557af8eb76db6de7fa1b3ce70116d4934e3a6932d144cdae7dfcf2f2fadb8f37a6fdaed20fbe42734cc3c560b5073a876b092044ef4657d9336f0ee1b6843589dabbc30e3b38053973dbea925c84f8af16067a434350ab0931f160620002c4848cd0db189876f2f1525fc1130c7925d3e1921cb1fd42435e8f5881560c4c38ded7922bf759ae35702cfef5cadb1f67addf20f549ac35c6b85fba4fc93e8ec52fd75f7f7dbaf1344a71ce91cd08d530107967357cc5d8110311031103630a06500eefbbefbe634a737ab21d6c544d3bedb44e193fd4151c9bfbbb97fa61a8c7412f943fbaca9e45738853109f7df699432f4a707c3e035149ecd0d0e8bfa8286e149dddc98c5d13fe9814ecfc7279d034d34c13dc350ad580b4afbefa6ac24e0b130f9f40da496557867c399e15da850ae54718be70b0b8a53e02f21768b2e2b309bf75b6ee30721f540f1b8e520262409d43c025013830a70c8036917727be69b40b25c2437e6a0fe51459177ff8e187c9cb2fbf9ce02b51fd136a23795aa07de006df4e00f5a66fd819ac0b52e8d4c9076bca879f7b3779f3bd5117e44d3ae1b8c98c538d9f0c9bf41b95b3fd80cbc1521714bee2eda34fbf7056cfe37f9d637989bb0ceff117de4fdefbe833371ebf995e8037c7f413b96f4585befbe1e7c9d3af7cd0515dd17d3dfadff79297dffad829c2269bf0ebc99cdf9c289968fccec8e3e729defef7a5428d36f3fad4cb1f242fbef951f2596ac14dbe734c3f7132f944fd6e4cfcb6f9f8a22fee7deaede4adf73f4d169879d2017e9ec12378a3afe8fbc926fa7a32ebb4132693a57d5604ae9cd40dc5b8e3842dbdebe2e6c997fadb3d616ab94c7ff2475f5ba07da3c6c228452497ede1b9e7d3cfbf48c61b77d4d8b0f1ebf4b7cd47ef9f7ed66f058faf6480fa84caf6fb9376f54d336132cd64f9f38231f149daa609be1ce7e44f1bf089fcfec79f272b2c302c2dabd502e6b9d73e4c9e7df54337662863ce6ff68f99507ee46901dfe34fa7e34e73a96f9a099259d27a7602d0fb071f7cd0258557cc3efbecee1dba2d5a239a9f973f7454563ea1b8d071e8e8471f8df2b33ed96493397a188a4b192a9b932dd0e722fe051f8136e7e5e5d719da4ffe2c78f2f20527e4c777cb079597f8879f4f88772a4d53cf106ec0ffb3cf3e9bc0af00f08b70ad3e292adbca20b4193e45fa32d0695adaf0e28b2f3afe087e279e78e2c2f1d0ae2e65787ca8afab8ecb76f5f0bfc3ff19f7c81ee016bc4e37dd74b9fde28f1ff0f4d4534f39f9a3af6fe09153fa1d3903f904a8daefd48f3291c398fb934f3eb9b3c6b3ede814b775ea66cbf7dfc109774dbcfdf6db0eafd41df910ebb5907ca5b94a3ea211656557bfec76bf990f65701aca87763df7dc732d322feb01ac23db419db4d078c628f50657e0933548110d10bdcfa38faa2ff9f934bc4e7fd04eca165f625e913f79b6e313aa13fc827a5b0b797de34919e4efd7dbc6511b786a0d433aea63d75b75ea8bbb3eee0d204fc6f7f4d34f1f1cdfb65efe7b9df2190fafbffebae3d965c684caeed6bc17ce554ea74f78246b4b9ef01e70cb780fd18ea23242fdadf8d0544063035c8a0f50266bc8321705db3ea85ad75eee07ea56657d0faedbcd49e13e240fdab1231e00ad4606513fb5a379cadfca0cfebc105d52dcd093b694e55fc48556d97c691fe1006342e0cb0e0ab74f5b77c2a1f1c87bc2898dcb7b086f4df24eda11a2996a9fea43fb5597bcba2a6e7c56c340679a906a65c4d81d62e09e7bee492eb9e492a0cf15049e15575cd1fd85163714f9d0430f25e79f7f7eb6f0b6d5e076d6b9e69a2bf309bce9a69b260b2fbcb08d127c6732e23c9c85090bccdffef6b78e89127ef8e187bb4bee08ffd9cf7e96fcfdef7fcf2ea7b399b1fb8355324417c097d8dd77df6da324f7df7fbffb23905b5157596595ec3bcc1b5fc6386f0f018bdfcd36dbacf4454b1f7cf04172c00107648455795e70c105097f00f85968a17ecb58700e313ef5d45393471e794449b2a7dfc6ec43fa02aeaebbeebae41ffff8470b71571ccad978e38d5b08bcbe0dc61305dd61173f9e5c7ee74bc1e250f4edbec9dcc97c334d12fc6e03d3a626bb9e749f5372e2eae0bcdd97ca14a47fb9e66977011ef1719571c7636f240f3e3b4ae96ff3c087ee0f579f3578a9d81ba96274bfb31f71f9db347a47a9bde7e6f326f3cf3cb0aed4edd4eb9f494efbc7b3693f2845ff73e56f4d9dfc66e3b92b5df2f6c1c75f241bec7f5baae0fc9f5388ae357cba8476e276c38779669c38d9678bf993a926f97af6c9e20b45f2f9bb2f9d9c73f3f3c989573f95d5f1971bcc99ac35c5742e0dcac603cf7d24b9fdb1519b0d59465fbe50c61e9bce9b4c3f65eb660bf5dbfca03b923753c533e59cfb9ba55ada591737e7dff2dfe4b82b9f0ab61b85e88fd79e3d5927bdf010b8fadfaf247f38af752ebffdc167c9aaffef9feefb5ca92b883fff789154184a923afded3233ff68e3af4fbe3fb9f389b74c68921c7ce163ee8fc0dfa6e35c173d129f7e38fb9fcf677d611332d6765e778ef412bed60bde3e4995d0dfd9ef36a7785e75e169925fa7636a9f331f4e6e7a50c7a69264c1be7ee5ffcd0fbd9e1c7cc163a982b77fe34de5acb4e0d4c912734f91f6f9287cd9fa290e1b26fb9ef588db3851989eb881f9dda6f3248bcfd97a49a7bee73da1c712c2e01d08620883071d7490a39bd0c35d77dd35d71d05f41d3a0f2078eeb6db6e99220c25167c8a455208a0871b6db4d1004115ff6437df7cb34b92c7bfa0b5a79f7e7af2f0c30f3b61fa57bffad500df6d7e99f7dd775f72d65967b960166ab4cb2a53c9f34f7ffa53f2fcf3cfbb38f8d3df7aebad5bb221ce61871d966d02f29ddbea43bcb32561433f2c6eb8019a8d62788e0ff41bb85d74d145fd4fee379b03f48d16b53612cacc2db7dc32179f9da60577d4ff9ffffc67903f8e1831a2f2a57e6579bc95813a1d97164745ef5cdc7bce39e7640a5c3fee924b2e99acbbeebad9d8032f1a3f282e90bdc0d1d5575f9de1c9deab409f31e790037da0df575f7d75779993ff8ddfb7dc724b72c51557384558e83b7dfffdef7f3f99649249924e705ba76ea1fa280c1a85ccccc53d7900fd825e684e83d74e65d7bc3242e15570eaa74721890fcabc7671a9e8269b6c92cc3cf3cc7e52d7879da66d37175150e3ab9ecbe22cd84b86b85829efb2c9db6ebb2db9f4d24b5d52d1f03afdf1ef7fff3b5bd3a83e8ccf3df6d8c3fd9c618619929d76dac9f1027df79f763db2d4524bb9f6d9388cddfdf6db2fe38776ce291ebcf10f7ff883c33de36cf7dd77770ac17df6d9c7293dc457b8e44cf7b2286da8befac613c5136b8e33ce3863c09a85efd08db2f70794c517f90a5072a33c3bedb4d3b20d0b7de3c9faeb073ff841a600b5dfba35ef6d1975dee9b7bffded6f6e4335940f978fc14fcb1823a1dcf2fb9bb1c0f896fcc06ffa0adeac8d3c5b2ef38b7911bac4f699679e71750da5230fd2505778850fbddc0f9daeefadcc235ae2b71bdc87e441cbc3904fb7d9669be4e4934fce5c39d87c8ac63732ecd9679f1d9465c91779a968b3a12aff42910def823f0868e311471ce17ea22486f64133243b30e6a4b7511a9e9dc83b7568b52d3bef3d34879e7efa69d7169bc6d24cc63bf4d62ac86ddcf85e1d03ad264cd5d3c7145dc200821d8b08087a089840d75c734d72fcf1c7b71009c5bdf5d65b1d41947596c2f56431ec0b28fad6eec9a4042012ecfa0964750bd18250b1100a018ce0c8238f4cde7fff7d97475e3ca5d58e1ebf218cfbefbf7fae9298382ce00f39e490c238c4ab02b4d582da18521213cfb6d14f77ecb1c726f618b7fdce3bc2e3c1071f9c09a2fef76efe4681b8f181ffca551253f60b6f7c94fce4cff724373d304ad1d5ae3eefa44a3f002bdb8f532b4d812c37f98d3235a424e61b8ab6632efb4fa61c230cc062f2bb7fbc2357494c9cd7def924f9d9f1f7388b617e0be0ab3ffad3bf53457158494cbcebef7b35f9dec177a4169dad7daf3c42cfcf53ffcc8c152ca7c1d309578595a5a47de4f9f792cd0eba3d79fef5511694ca4ff8c2b2f9afd73eedf2b0c30f2b65e0f9d73e4a363ae0b65c25317128638b43ef1810e7a3d4c21b4b5300dfc02861057570433dffdf190f25c75efe6450494c191fa7fd79d8458f27875c38cadfed23cf0fdc1c505d783e9f5ad6a268afd3df363ffbfee29b61fa6ae3f0cebcf8fe11772667dd1456121387b1b6c7e90f26275ef5343f3360cc332e04bbfdf5fe4c49ac303d2fb8f58564cf147f21253171fe71ffab03e681d2f244c9bced11770595c47c6763e1d7273f905c795758294b1c1f18cfd02481940208646c8801c4e122ab10f04d1784f27d996596c99434f0a1638e392628582b2fca66c105bfb080b2ab0cbcf1c61b59b43269b4814922ac75c4ef94091b8456a98d859f6fddc0e20d6b4600815516d8ca0b9c58dea9bc9b7ada769e79e69941253165510f1423a14dd7cb2ebbcc2923f26410acd9e0b35894f9d0695aea834c73d34d37b9baf9f9f2fbc61b6f4cfefad7bf863ed50aa36c419d71a93c8a9ec867279d74525039a074cc99430f3db4656c69fc30f7aebdf65aa750b7f5960c86c2033929a424267fd25c79e595411990f1c026bf5d7caa4e7ad2f7d44d9b470acf7bda3ad6a95b5efe84535fea94a74c555afad61f3fc29be4ba3c99344fae53de79cf3a3805c7183214b50b1af7e73fff3979e081075aaa50372d4a88a2b9884f4c14862869f2c0d2223f8ea5cdf65ba7fd012d2e02d60f45e39ab458cf0990effdf8d07e3bee436b0094194a37d34c33b9d310d07b85415399139dd477e4c891ce40c5e739aa337403fa5b063a299f3e8367338f43c0fa8bef6aabe2746bde2bffba4f146528f7397593076c804057b1e26e07a1fe561af17e70c45a3f4fd9cbfc3ae1841306c856f0ebe38e3b2e371de560ccf5c73ffeb165ac12decbfd50677d5f446768b7c0d21ca54146d33b721bfa0bf9fb553a3df3c6376383745636541a9ee47bf4d1472728f843c058a8cabf904ffd7966f3e69b7440921da03b1a7f8a5b47dee99456abeca267680e59da1b4a8b6e2c42b3188816c5cde2b391dc10cceeb8e38e2c2f26e24a2bad9420707014032b2a3116880e42283b6802c2aca0407a2c72498f65110b04110fa5a9f21441258d7d0fe531c71c73244b2cb184dbd5fcd7bffe954090000818bfbffded6f278b2db698635e305f09e8e44b3a16e5d41b80404068ad8044fe4b2fbdb413ba502860f906400c1160b120e3a86411b0438e251165c25cc548387646384c042b94dc3c6d1500004000494441543c68d7466b0dcd6e230289807c870f1fee0837029e2e8b82a9b0b3ed5baa295d379e29ca9c12092b530116a99b2c37636af5fa8d64646ab57ae64da952e44bebd87d534bde0567992cb310561aff69f539ed2eb3c35a79ab95674ea69f62fce4a167df710a645d2876cd3daf24f3a456cceb2f39bd2b02252a0a3cc19a8b4d9b5ee037ccd5ef96875f4faeba7b94328c7661a179d2cf16cb14a2fb9df370f258ea6e4280a5e69ac3a7754acc4b6f7f3119f9f8280bdd5753e5dfde673e94ecbfd5fc8a5af81cc7295dbfd2522f12acbbc4f4cebd00ee0c6cfee072c763ee4e2ede6399ccfd83f08565287f022cab679c6a02d717b47b87349d70439cc5e6983cc1bf2edd73fdbdaf2437dc3f4a914ffbf738edc1e46fbf5a22738fa07aa63325cda31f87e4530737a7dff06c724baaac144c39f1d793efad389373b5f14cda1614e7528262b1beecbc53396bda0f534beccf539a7063baf9407d8111a93b06da8cdb85afa648a9d3dfa3721cf81fabf1d7dffdc459356b5c2f905af7ce346c02e72a65c5745c087fb88110304ebfbbc24cc9b4538c97fcebd137928b6e7b219b17cc915952b71fdf5e686a17dde29a316c016bf269261b2f192f7549811b8a63fedebfb986e5f536dfee4be64b5d8df8b8b379e89d0d87bdfed66f3d88f5f0f7bf3d4b7a59e584ce850c9b311a2f584dcf975ad9d3ce7600bdd5661d34528a542c13965b6e396779481e580dafbaeaaa0376f2e155f02d80343a9941982c77ddc7f41f347fc1051774423afc4156bb088c2c3ead25b2d2b47bb6e3517efaa9a79eda2deca9377c8a0580ea4c5c16025618457984c06e2ff7838f49809f73ce39dd91677892ad8b7df7ebd08ddf581d8e48ad71399e8c85b53dd1824513278c5427fa1265a6004bbce5975fdef17178ac14ffb4110515161c3aee57272d0a4ae4170116abf04ffa84f18272b413d9a50a8feff6b884ff5bf90c9cd32fe09fb174c30d3764e31e59e4f2cb2f7796c5e044fdc318b40b52643cac14c1177d72d451476563d4e6cf3865935a320e16855848613909807bfa4fc0f1673676c03f320956b19a93c8668c23368ecaca4f75eaa63ae53d191b5681c3bc5b7cf1c5dd6616b802af929b91f3509880af3ca822d7e5e541782738850602d00c94da76938cfe82ee626df8d8638fb98d13d11ae8e92cb3cc929df2ab9396d372ac1704a21fb8ef40398a35b0ca65f306be602df295aee859c5eaab4c7fd076c6253c0ba539f803c027f409cb3acda1bc7acd3ffffcd94609630485915d43c00f00f2634da28d42db16e685406b07ab8ce21bf5a8535fad0bc983797de18517664a41e83374b3c87a913ad4299ff4f06b2cc6c1379b056c20016c1ea270257fa09bf3de1560fea9cf4d50db57f8b96f7445bfb136a5df50ce6bb39cb6303738358b3c9307a1fe56dcd018d45a165e65792c6938d9ca6901640ccad74957be310e385dcc77e804ba03e81b80dc045d5c638d35dcef5eee876eadef5dc3cdbf10eecde796d7b2e31b25acbff9c829ad451659c4cd49c64fdea6ad0aec847fc103a06d8c19e89d36f5190bd06370ca37c0b6dbbe7743de2943abd5eea267680e218b208f33d6a52f620e305fa143d03cdbbea2fce3b77218888ae272781ab458302c7b4414e1ece73fff79b608e3e80b42e25ffef2976c92c0c0100a10e060922c2c04101294a55ac4f5f5f539e6c7ce97150215bfc927475a61b402caa68e08ec008204135a8a547e6be2a33c5d7ffdf595d43d59b8da9d303f7f162c288d61f8e001a688529ce33745006ec80be018a7eab7f9e69b271c2b16840410bf0ea1362a3d8b1529b209e318ca7cf3cda7cf6ec1c5220dc53fc0ae313bac560191456ef372407a349dbf7630757a5cfeccdd9648700bf1c48befb758e76e9d2a6c51540970dfb06eaaa4fdee1f6f770a27146b1c9f97e256f13a7d2e33cf94c9be5bce9f8e89513950de7752c5e7d687dde9fc07137a62aa685c6bb1e99c9b8447536b5901ae2bb6481592028effe332e017a9db0b007faff88845f986bf602951f9b6cf16f3a50ae6a97875403d50321f74fe63ee378a40d29751aa7d9945f6a02dc7edb4a8f379ac403fff0f53ebdecbef7a29178ff4cd815b2f900c9fb37fc303f707289d05bb6d3857b246aa281750c677967a27d9f9847bd3b990fad44bfbeaf82b9f746e381427f4ac831b2cbfcfbab1dfa267a159274b0efdc1b752617a5449f4e79a69df6d7be49dcef72ea1978d7cd129e1574a15b6a4bff5e1379c921d7fbfb80cd158a00d9df677a89d8491f7f757e9739fa74c37424e4f5d90001ba6630e9fc1027c3f5bf714b88fc0f58a6091d9264bb6183153b2cde17726b8cc00fe74f97f9ca27b9c9ccbf05034ff71db05d30d91f15c7cdaf7bbd3462d4009c08dc519bf5cdc29abf91dc21de1168ebef409d7d784cd9dbaeb38e647e926573a760094dfcca51f1e75b71bcb9477d4a5ff490ef9c12885848b94f38f85b714a358105be50ac2303413010dc10d85328a0c0bb820801603f02f7ccdfa7c8a05d7ce3bef9c29a1898b90cda629341c4051c546635565844b5ce11f75a10c8ef5032cfaada2588a0265495be05b964ecb9f3371ba5d5fd5a3e8092e399a2ec06a8e0d588e5702c802f421bc90bee2f8be0045e13aebaca39fee482b8a459491a46191c44208de5b272d8b1c29a0290c2b6c8e304be867f143b9585861b15705aaf0782b3f353d2e192bb87410b019cde6873d1e8c1c73f1c51767b840265873cd35076cc09007f5db263d268b525480024f8a45be933fc75e81bebe3e37af9031a41046c183bc058eec62967a6cb5d556cad62922588c717457f13466cac84f6444ff765ab7ac228117f06a95736bafbd76b2ecb2cb66313986cd917cac0119afc467119d0755e4babc3c142e5cf1bb2c4e95167a2aa50f61be1b36e604ed920b20e61f0a03e649ddb44f3cf184aae1c68ca51fd0719453b8d791a51af306a5058bfba6a16c7f303ef9835f311ee863c63eb2bce848bbbac19f504620af834fe8bdd6318c1b9dbed0f8f1370a4983021f60fe5919df2fbbd3fafaeb42e6351b4d071e78a06b33f5845fb65314775a3eed42516aef6281067152541b586c884951dcad79efe313daf2bbdffdce0f0efec63da1f83a3453320ee304bea3534024867eb08180bb0f00ffb16cb6599eef3e74f82f44afe0bbacd3a1b1f4277c03c321364a197302dc38b2912ba04fed3a96f14b7adad54bfdc018b2865cdd5adf0b2f559e55c737722afd048067faa42f9d9302e6263222a7884240ff74c2bf987fd26fb081cbdca3eef06deb1e85fc434078d3f24e595a1daa4f993036ed98bbd0d93df7dcd3d13bda8a0b20da1ea1790c44ac368fd35a39e297580c8b410fc14180b70021da76db6db38b1698ecece8030807ec1009602c7e7a1112f2e916c064255cd932b0f0d06466f759c4953812bc78d7ce18ef0044410b777eb3f00de50f71d6ee29f158b0cb8a84dfedc0d6c7af839fb66a1ba580261ff010122051bc4878a15fb58bed97ddd46f2ed2120ff9db8dcf66d9ce965a446ebd725ff65b2f5840aeba48bf42f2c9975a8f832b5ed5e704dff85ab2d777e74b996c6b4adc2c1cfec36f650a2f94aa77ff67e0b1afa75ec68d496bda855345e56a8b4c93cc9b5a21af96d65917e9fded86e7b2886ba77e72ad92581f565f74dacc22947cafbfb7dfb24671ca3c7fbaceec2d4a62a5217fac590517dcfadf748ceb57ff1345dfc93f1fdea22426de39a9a25880e2d22a89158e7270c73566d3cfe49f0fbeee7cfc660181973ab8b936b596c5ad0420e5b6cfb7f98dbf69010a78b59b0bda04584ccbc25761f659a5bf6dbabc777b999db55227be14c8bca3c0de6da3b9786d012e7a3c74bbfe53076fbdff596695de1231fdc1e6cc29699f4a49ccf757defed85d46a8b807a416ec7231a2307067375214ce136be2bbbe9c17e0fe0fdb2c90cd19c523bf83bedf1fcee5881f7f1a18744af0e513e15374d1dfad4740c3f7aec03f1e0d0d438928c02a15c0e2c82afb10fc64a9acb83c5758618504eb0401d690f0826e038b2d0102be7813ed91a240df79ea2408efd44fca1d789dad3fdf071b50462244fbc0c29e8d5b009903eb390019441bb258a9aeb5d65a2edcfea3af36dc70c32c08cb547053272d79689ce5c928c82c219926ab4889179541549fc7777b5cfaf9e3e7d72a89557d36cf2527d137212b6abee33fdb2a89197b588a0bd88c969258613ce93b5949b211242b612b134a0eb1e9784789960745b8ad5bb7bc32fd70f0228b5cfb8db6a10414d8b62a8c6755b9cea60dbddb72aae2d4ca8cf885e6049e0f6cdc210f0b64d559272d7456c0f8d14680c27842fb7ff8c31f664128e92c1dcc3ed47ce9a43fec38847657e119f497dddcb38a7ef2922254cd82eec9c0853036dd4457982b76cc298dffac525feab7c5165b0c58d7d11f1a5fd4c9ae03fdf2fcdf55ca272d6b2cab24268c7ac9e887df726b3158f39e32ab80781cf5d35d07a4474661ccf9c07a0dc32b00fc42cb9b00e403bba9a53c51425b1ecbe68355102b9e3da1aa30f243b9cd66306399bee9b57e0087fc01d46d30d6f7c24fbb6795f10d4db01bdc9cfeee4bf5103e30a6f8d60e3ae15fc22379f30e4f2f03be3c52570eef845697a967288ee62fdf249f87e2c5b0fa1868d540d6cf2fe650130358900ad885b2d65b0ae70931c1ba40d65652865a9f352cf27c66ae3cd89166b1e70b3dfa5ef79977390e8a06ea0e63e0b8000cac0c4014247c91066b863cc09a82631c2cb0209aa42b23ace5e597175ea58dd4c3e29abea5af2c81a71cac31b0c89382180b3afa199c558189c71fc71dd9ff1f7e08720085d8fa4ba5b799a6568ff06b7cde0a365d7ec6014a5b7ddb65bd395225f2ccaeef702dd004ac975a2a8f3b4e782c4c3bf97809569bb2eac4a7ed92e9855e5865ca350316c2773d716b423eb89fe89b6694eb002ea3b3403b9586702ef5727e6a3d348d93d665ee192649aefb52418c6f5814e755ba0185dd2a0b4d638b6f79ff6e6a858a1f64e0e5b73e4e3efce473d767361296b6334e35be0d7296c41fa40a7e80e9836b873c001f27a72e3a50e0e2239a74797d561737d635c3f2f34f95ba53088f59ac9dcffdcd92aeca2858f3706a4903ef9df4771e5eca8683137c4d0bb65c69e6010a587d9b659a0993e1a9fb0f8d53dc96840045b96f69cc1894627c86b4bf679d76a250d2648674cc530e96df16f08f4c5d8139a69fc8e5f5e21b1f8f0a30ffc74f37645018638d4e79288b994b658185874f8b38e1a2c534f48a0bb8b439c9c6a54eae70044e1646282545fb58e08636cd5427e89facdb5098c13bfc3a286e534f943228f0507e50267c9930ab28e0c82d7cf799f4b83e8a61bed16eab28c0e2af9d55575375cecb075ea3fef0e3a0441688175b3e45bf80036d5edbb8d69a0aeb452c0beba465ac08b0deb27553384f8e8fa3c89745acfd56f7bddbe3d2f27cc617f32904cc09dc7930d6c1036348f345f1c101329e05e424299549c746802d5371998b7c93ab06ac50999b582ee33ec61f2f28923882cfc63bd6539d40ddba1595c9d8c5c2111cf97567d10c0eb058b3e3332fbf2a725d5e1e36bc539cd216bb1e4081a5396af3e79dd3772891f98eac5b37ad5c939037ca8d3c7acb1a024597e8b39dc3a46d029ae88f3cbce5d50fda8ea53d78c42253b41d4b52d1c2d5565bcd9d3e645ca32067dd01c89a987714f855cb265d511a684368539574ba3380f73a96dd45e5f32d8f5f439b05caa39bf35e65d9676863cc7ee79db5a736b8a197a299d419770321e01b1b73ac2779cf5b9b87d21685b1199e076c7871ba041cc20b902de019d45fca7d9d3ec1708a36b1b6678c6cbffdf62dd9f65a3f30a74457a85bafacefe9db2ae39b76a82f489b47afe80c4e7fdc981af5d1971648d714ff225ff22b0375e51d9fc6e4b5bd53bd4f9936c438ddc7405414771fc7954a90c2974421ab089b993de28b45888479c5092deaf50d4282254a19c15969aa3c65ad529406025b1660e4086d00bbba30c33c60a1c077da461a765ceda2362f5dd5f02a6da41e763798e39b6500e6a9769789af38bff8ce9c2dc7e7159ef704b51f7fa6a333e9d84b7d0fe7014a2e8ec63709798a3195c17729e09e4dad50819d538535be8465018aefdb33526b61fe00aca297497de0e22e43ca51daf9ee87fdceeeb938ac0ca06045d19a5efb5626ba8b439928e6f200dfb428ed643d4bfdf1c76b61e954a9ea0397d049ff3f2c75998002350fc87ffaf43b8a45da8e5fe63c171a757183a25bb0d4dc03ebad6f3c3b193f9df4b72db393778b1364afc5e6c857aaf27d8e6f4e9c8d5394b0be5b16360f164e373d7cc04fb260de1927490568fd6a7d52c6f0b40ebea2d8a67f34ede30d0ff8576bc29c5fbad030e7f380e010cd86cfa09c8077a194c1ba4a8b305ced482846489612c72a1438c6ec0b9cb660363b4947d9d050845b59c2da784dbeb3804159809f64e82f56c4288aada20065260a1514c52c74a44cb64708f304e726ebda2e2f7c125701f02b4029584631088ec041a7691937289b05d6e593c2ec93bee986a2b8dbe3d2ce1f2cbe8ac67dbbcded108eac9c447f70195919603340c05c632ce3871605a03601f4bdd36713752b2a5bb8643ea2aca3ee2856c08380385ad42bcc7f5691ebfcb479bf3bc129734a4a49e4f5bebebebcecdd3892b52391a0b975d24a56a5dca213117cc78d8d14c56c9849619a5bd98a1fbad11fedaa4099fcb1c1c0f8612dc1f17e594cd36e94c0d07ad65eda28647c49514c1c7844d3c0e610790f15a0a4b40ae976f5e8f6bcb7e5a324ae7a8f81a507cca12245331b6cf2f96acbedf49d7e2c5acb329e9075b44e6763af2fa503587e9e72ca2959b17cc7bf3f7f00bc051e89f298fe027ab91f6cdd867a7d5f757c23f74ac66d377ee0e9d015bb11e73a27fdd714ff527e659e75e51d9f36fbbf4375b03250e87b0ceb3d0cb46a257aaf7e63558d100c755ca74cc3892f401085e9e80821e1f6bbe20dc69345b6155a9b2853bbb8e4d50b84a66a1b618412beabe043c27e9534c495f2b46cba7753e5e3ebc602b2c812b96c9e55e261595a04934dd4ff3dd5b539c00dc6857b2c9d1c7ed1e30916bf663ab8ef4fa6ca51fe4e4b7dcf6e9f5a716ebec28c09edb48ae2a232ed37fce756858952abeeaf1428967dab52ffa2bf743a27f3a44a431f3e48dd6f8003d4fafe45747edc2abfebe006c5f53da962b49bd0497fd7ad0f17ecc9d297f1c5d8c1fd441e7c61dc67689cdab86c1e4c1618eb8f3cd7af9ceba7ea3665f1bb4d5f1cb3f56b553ad19a7ad42f6821471d75ba85cb545014c37f702700c09bf0832aa843c3076b918cc5268a62008b694eb15845011bb55a54d2565c69a0d446c1068017ac79871aca08efaa23edb03284c2cb3ceba4257f59b796294b8bdf3271abc4e9f6b8b447d4abd4cb8fcb1cb08602fa8e62548b568595794ace202df75ff87eb8cbe4d12e4eddbab5cb1fa51e172b5a630b3f0d4a2116e47938aa2ad7f9f9877e778a536446acb805ccafb250272df5157e2893bc8a6888e252b7a6697337faa30c0e69076e1ce4c6059a8ea258f31745294a1f8e5a432f5126b3b98212576b381480e20f65ca2c1b87be681acf65cb261e6dcf3bed11caa7dbf3de9609fdae324f486b5d207692de965ff59d7e6ca7780e29e591af76d9651777a95d885fb371c1dfa5975e9af95beee57ee8a5f57dd5f16d4fec94911ff2649726f857d5f157a6be7979fa3468a868755efd62787318888ae2e670593b2726de2ce9f13f084619b01315411f06699dda5b2b91507e4df958f2f3aecaa8fdf4a1df1c69ea46bea1b2ca8455ad0bcc07e5397d4bbf714c90e34121428dd25f00538100771b26197f5c67cdca655c5f4deb376e6a893a98f0f6fbfd563fa172df4e7dbe8660c2d462778fcde6497031c1657c773ef16672d7e36f250f3ef74e3a5efa539c70d553ce27ec72f30f4ba64aada15f4a8ffaa7cd74ee24264f95d0d647ad527d3dbdf84e80652ed6a055e0adb44da917ae3449389df5c94bbe6595f3b45916c555ead32eee24138cdb316ef0ff3c5b6af50d5e81cf8cc2b45db955be57ed6f7b295d957214779c74eea9df7982a322f85a8a8722c853eccfcd86c0eda32c2a193745605d6128dea2b34f9e5cfc65fa39bf3951ea82e59bc9875fba27511c9ed01eb97861cccf3ff3289f7b364ed1bbac1efc3858ae5c73cd35ce5a0f8b2a16cef01f1627005667d672264f58f6f30dfdae4a7b43799409c3521abec32206ab4a78ac1468a2e73ca1d7d0719409584dcb472896bc21ffb365ca6e324e157c313e3869249f7b58cde13e438a445b2fe26a3ca080437152276d5f5f5fd0d2c696a977faa41bd0ed71695d81593edf545bb07aa74fe80f9439f85a4491171a032a9fb8cc4de27073bbc63875229c0d13c632a7b2f8639e737cb62ad4a95bbbb2180f5cfc64ad87b1aac3ea1a3fb128f0b0cc3bf6d863dd0933c66e0842780ac52b1b5607a71cd785fee0d285faaabfca945d272df2a6644e9ee455048a5b14a7d36f4df747957a70a2538a622c877181247fb0acd36837d6d6f882a69e28ec984b92e99937ddc00d650c25a87d65ebd0cd791faa43dedc0ec5258c751969e843e658d5f479f99609a74c4ed32047e4419e8111bc64a79d7672f209638f534f3a45a1bcc81f9acea571bddc0fbdb4beef647c33cfe1b36568b4e551eaa7a6f897f22bfb6c52de61ac45183331d0af911a33db37dab5ca320c8eedda4b15fcc6d89d440479160876079b9d6d885e8878b1f0d371313fdf5efc8db02a068ee05c74e32c6d96b29d3456793e946db3441921b4c81d866e9246993c18c0ba698ad4da11453116940f3efb4e32628161c1a2fffde4dbc91ea73de8144e2ba48ad75d5337177581e3f2ab2c1cf6e70bff79ec85f7b222f0590c5057808bf050e4ce33e3c4ee6fabd48f2c69aebcebe5e4908b1e73efc4bb26bd6c6df9b4bee38ddbef0e62c50587e5ba62200d65b0a46c67f14c5c1fdefdf0f3d427f017a972314c6651f8c9a213e53c7ea5cbc0c4a9525f16c5d48f7cf2dc4990bf94b7f4f15c33f45fe6e397453bebe0c6bac018f9d89bc99a8b4deb17e17ebf93d679ebc3ee744af4a953f71bc7edb448a68c0d26f832b093feaeab2806672887df78ef53372ffef5e81b03dc49a8ce8cb97b9e7c4b3f1394b765c1bae27838b52efeecf3ffcb14ba360f2cdbef4a37437cb09b1ad4370ff7a4e3023bdccc68def879f9bfade08cd52702a168b1e242a7b09e65418dc08ce5151b91121eb9c1dba6b1274e889bc7a7c81f5aaf3ac01fe51b30a4bc547df4245de8989fbe173d11fef155878b03dac4424cee115014c06f89c3820d0502df68bfeadaa97fcaa23a0dc637cba7e09d793e1ba90b8b58fa987ea17feba4ad22fbe053b71bd0c4b82caa97f5298cc517e32aa44c02a7279c70823b724c1cacc7ac6c97578614f77ca73fb834d786d9749441fff15d0a49ace2056bafbd76f092257daffab4f5a85ab7766571719716e0e4bde38e3bba0d0e9b8ef66a6edaf06ebe83df4e714a3bd87c4116640ce05223cf1d1dcafd534f3dd5c9fa1c39c767719db4cc451da986eee5b99300a7766341978095c13369a578ed661f749ab72ea2030f6c788207f11cb95662ddc5fa8af672da4416e0f45d37dc4e74da96a14cd7cd79df44bba0abd4913ec475127d9867417ff5d55727b7dc728ba3ad9b6cb249ed3e660e2027e595c7a680d6b2b495394d98364a99a7d06e362ce42206c533feb5751a0adac15adffadd6d9afed6ed8726d6f79a9b4575a18f3b9507f3f265ec804f80b153a49bc0d58375f7a03c878a7f755bde51fbe273f4c640bfc9dce8dd8e9eae3dcca02c588b130413cb246c1e10c5ebaebb2e0bc2fa0960112da205c3208f10703b7919c21a4a3b1461bad085b2c12797d5e5c16db7ddd6b26868671191974f93e1f409162e00f5bfe28a2b72b3e7e8f6befbeeebfe2eb8e082dc784d7fb0d69267fff3f9b49ee112aeb8f3257719168ad0a62c5b51ea4a69ea978a92ee8167fa8f60620589d270a3d40feb77f6bb2dd9f29091997b00a5856faf397cda64c735665350f28dd44298f06fcda29b8b93e4f82b9fcabefb2f978d7cc9e5bf7e5ac621173eee7f6efb1b85fb6523fbfd6efa092efad70b59d074538c972aeeca298ac7fffad752a5f228cb56fae894eb9ec9f2f15f28838bcb8051cae87c8bd8bab8c1d586e0d6475e7717e8e9b77dde91fa957e2775e1c0f8f92875a3118271bfd6ca9a3aedef50de55c2c0c98cc3fa2daacebaf1b901634df961d1fec8f3fd1b1a534e9cefa24269f4c4d73465011fa63841211d826bd3cd0e2e26f461ced4373256ddc0ddff792bdb1cf0e3a56b8664e30347cd9b35f7bac529c0fd38fe6f16cc526659e5af1f8fcb9604dc600d8f0110a4fd45b3ac78f88e32a548f177f9e59713cd01b45c759152820f799b9e2cdeebf03994bd02165f5aa04951005dd7028d761007a08e211fb2caab979ff88c165c7ffdf56e61aadff6c958d8679f7d1c9f3ae8a0839c32ab4e5a2bfb60959ee742803ee052b56e4013e3b2a85ef698310b461d53f7d3f00dc520c7fe19bfa1cd7e3f0dbf511c48a18cfc57e4c7f9e4934f767db7f7de7b271825307e0558c22fbdf4d2fa993d915df2ea9c45ca79a953b79c2cb3607025c0b8022b781f5012e4c9d37edca67ed7c52938134053f3d61277de79a79379294f713a4d0b4db3460cf82847d9140236c7acc18a36f164bd481ac64b283d757df6d96743d9361a5676eef88542c365a883720e3e046ead2ccf7ca6ad00340bd91d808ee45d38e72214fcebb4be055956fad474f9dd9cf7a18669fc87be85c2aca28f717ad75d7785a2b931cc3c831e6b532a18b162203c360fd87856598c473626d858d7faf0acb3ce1a909431b9de7aeb259617b3813bd8fd30a06205014dacef07431e0c350199543a06c6decd37df1c8ae6c250de8768e150f1af6ecb3bb988881f462b0cb4aec647abaa8f3e95adc278114ce4ff09a273fcf1c7678b53b51842831f392d806120b2fac162056b27c199679ee9762cf59b2744e9a28b2e2abdf8b06907eb5d6d5379b491db97052c6cd8d9f501c5b816eb7cc3cf58a7c77fa514f0cbe8f4b7fa88f41c53e6166e1f2893a39d82901f427d2b7a62615b055052e1c357c0a56767ddf49c7e66cf7fffe76de70f580158e4360128337f7df203039470ac4f7ef997fbb270ac20b9cc0b65a91463afa6be952fbaad5fe96aebf3f42b1f643fa5d45e6789e9b3b0db1e7923b9e0d68169f103fcd76b9ecee261addc09fc25cde3f6d4bad6871bee7f2db9eaee97b3e075d33aa543bc1410ef7b2bce94c525aff36ff96ff65b2fb73ffa6682cb0dc1cadf9a3ac1cd4611d4c1cd3a8b4f97f5096e35b03af7d79758131f71f1135915969b6faaa035f1fba9db8494fc6550a7bfb34c3a7cd97ae5be2c25636daff40244bf5dafbffb69b2cb09f766f1f0633c7ccef216c5334c357eba81d17fc9dd3e67a597e4bcfe51961f2f6c961c76f1e3ce7abee543fa03bfc70bcd3a2a3d78db39ad0b63d887f36e793e01b70016ec93b671a5413c84601653008b7babfc70815ffed3a576fc84c7c805035670d6d294eff0296d9cf1fbbcf3ce0b2a0da0e5585e0a565d75d54c516cf92a8a439f67601d74f6d9672b69474f144ef063da8fa588af282053f921e61bca5300e53a42f8e808b88fc04a09c09af19c73cec9944f6a0f6dbde4924bf4d3294be0d175d25ad90719e7b8e38e1b60014af849279d34203cab48c5179fc737312e8baa800b16ab403aedb4d39c8b169b06dc9e7beeb919ce194b656518945858ef0b2ebef8e2a0d526969cda5c210d0a0814cb3ad6ce1cd7a926e5c513e3043b1fed1cb4f178f7715ba76e7ede45bf515efa8b717e63712ba50b75919c5d9457dd6f75704a1d57586185ac0af459e862491447f7dd775f160f7a5b272d19e11a4dc0a6c519679c3100a7d057d62702362898ff80f805ef58d9f99b0bf4071b151a6fc4eb16b0d9c29cea04701f2180fed32e4ecf88b683676d14c27fe4ee0feb4de8612750a7be9d94e7a769ba7c70d4294df2ebd6ee37f488f2aa00b209272f04b81b614ef9808b11f52f7d6b15b17edc2abf919542864f9cde820f08909750f6da53a66cb0638dea03f3cbdf141bcc7ef0ebd3ee37f8acbbbeb7bca85bf260a81d7edd478e1c19dc6ce09e0b36fbda4113fc8b4dd132d06d79a74c1d629cdec7c038bd5fc5d1bb860828071f7c702658e4b58689cd91b1b5d65a2be1c8df85175ee8a22264fdfef7bf778c160530b7aec3c82c21c03fa476f26106ebaebbaef3d74606308c430e39249977de79dd628e63623026c0e6e1027ae81f8a54fcc9b13b8af089b51afe1f51a26a01c20daf58ad712c0e668ff58c2e1ba22910707cf455012b507211000c079c729191556c54c95371b19842a9a05b912fbbec3277d913fd87ff3cfa06e5377d06b090b1166dcaa7cc73ef331f76ee086c7b42e938ca3e2255f6fe68cdd992c55205ec2cd34c9848b97ae2d54f27b73cfc7ab2c1d23338a5d2df530b5b7e0b669d76c264e159cb2bc3942eef796f7a191a16c29b2c3763829fd5275ffa203933b5e094628b74db7cbbefcb23f95f49164c156b2353eb54e0d8cb9f4cfef9d0ebc94aa93274925401f6666a857c456aa5acb610478a34eabdf89c5364698ff9fb7f52b7142f276b2c369df3638c32fcfc5bff9b29a75152e6b9c520df22607db2fb290fb8f2d61a3e9dcb1305b1ea4d5af25f6fc97ee575517efab67eea83f6e46b9fc97043fbafbdf715e79b96fcfc32f0afbbfd1ab32a79eeb30e6e70cf816f5c700760d9fa9dfd6f757ea0fba69e30b9e3f13792f35285b6d66cd469f315fa15dea4d178c5aa76abc34626330f4b5d0da4cacc5f6f3477c7fd4dbe75009c2c3bef54d9d8bf35dd5ca05ddf1b31738225f85d4fbce52cc7d52ecafad9ba730415e079f5606df3d375664f7e70e4286b16acd1b73a74a42b77b6e9264c70f722abfa3ccbfb1dd3397ce797e95f4b15daebfcfe96840d8825e79ad25de278716a5d6e2d9ebf3b62a6c4bf5031543f6830b40bcb31fa07c541487105bdb597da292fbb4854184f8e471f76d8612e4f681e1751b1c066730f451542b53d2688506b2d93b1e4a24cd2a200c2ba759d75d6717583c622b06b3cd972abbcb3f8401180902fb08a02c2c00dfcc72aaabbe59f5275e8e6139ca29087ff016ccab270a66f5174a20cc747ad2c7ee18fc407eaa65d7df5d5b372e9fb3df7dc3319316244c22604b20f8b75f17f576007ffec98f0793c8bffbae3b2a84ae06acd35d7744a32e231cef7df7f7fd746cae688bb957188834c483a5b6fc2f3c0ca49cc8d638e39c6c97fdab041a9489f0a2897b9055e5184a1bc23dd81071ee8148628b6e973ac257de50316526c24c99acbd63184db4eeba6bae63dfbfafab24f2fbffc7272e8a187baf18a5c8ceb07ea699592b40f3c233b5ac57d9649432fe0b50e4e917da91f631f60e30c5a044d05eff4095687026891e4d43a69c9873583f2e6b9df7efbb9718adf6ae46c9fbe62c5c8fc07a81bca54c60b630285324a6fd63028b6a0ed75e7b1da9cf7d4584459cf7860c30545db461b6d94d5332fadc2e131f03a29081943e0d72ac2c1b37c192b9d2c91f5bbccb3a8be65d2d78dd3cdf2bb35effd36239bb0deb6fde3c7d16fd6bfb8a861830325257ef9e95ff0c066243c9c7e64fcc077a02b02e80663bc29c0aa58f31af92224bfc0070036f5d8c865fe50d7a38f3edac94cd060e410ea09bdd3fc8277c8fde260f5432778b175237dd5f5fd60c88379ed62a3c1f2edf3cf3fdfe923300e03fff7de7b6f76c971288f3afc0b5a0d68fef23ceaa8a31c9d82cf6dbae9a62d9b0b7ef9dd9477fcb2e2efd113035151dc857e13b351d62c206569a4b0d0132607407410b0588c014c7c1488210b5a843926ba0508c7965b6e999c7efae95930829e84be2cb0e117bb502e9bb5881bf15984b23097025b47dac490114277dd75572708a82c844e88b20f10e7edb7dfdef974f2bf15fde6b8b08e8e5037f95f63918580a8728bf2f0bfd9366ebdf5d64e89af4b9ea87f684798fa6fbbedb695acbed3eab6c073aff51f256df9e0fd78e5ed4f5c087e6f0fffe1b792cdff7847e6ae00c5d2fee73ce2a5482d46d2c8076eb3402a700ff8542be0bd8f3e4fb0c20dc1aaa90fe38d979d21fbb4e7e6f3ba63f472ad80224dcab42cd2972f0bf44d9aacbb78bf32f6c0ad1748b63df2cee4d95747e1e8f117de4f1e7fa1dfd255e9d36e48feb8ed82412b4ec5093db176b617baa118b6ca61a5018f7ffaf12295f307ef27ff7c78ea76e38ecc15016d38f882c79475f6a40d476cbf503265ea83ba0cd4c1cd8fd69acd29e7511203b89738fab281d6197cdbebbbf3b6f86fc65a7cc65431fcd4cba3acc0f1adcc1fd6b2ff4b07779dfea6bc22f824f5d95b04bfffde7ca995ee3da9efee775d34daf5e72b9e0c26d97ef55993a5e79932f8ad281085f43e5bcc97ec995a2c0bd898b19b330a0f3d49ffffd28b1df73d7bd47c851e5c925e70c79f0f8bcd3179b2d132fd73c9ff6e7f438b50d04a518c25a2161e361eeff6523b7eb308636113028e37430f4f39e594ec338b25ab94d50716f83ff9c94f5a16f82881a0cb08e100b4591bac4ae73f2d2df6bfe5fd66b3ced6c9571458453a79085f79f95509172fac9286b875f9146e07504ee928350a4d164221586db5d5b2e3d77caf9b167e2897092c747c254ca80e55c28a783c4ad3bae3b25d5dd82c5e659555322b32c6248a08fe7c0097b258f4bfe5fd464e62ae70b99bc64f9efcc7bcda628b2d5c56281f98e7b24e953235af1cc2b12ea6bf50e8a39c6987db4eeb565407bea180c47fa7362fd864b016efa1f48c6dac62b7da6aabdaf325943f614de0143916d72eb286860e874e4a80db6db6d926a39192813b494bdd19172878e51e021a90e7320d830ceb6a87ba401774349e31ce7a466b1af22f82baf40b9acc3c96728ff5147f28e1aaf000dac19cd0e59ed4d9b693dfac5bec462165c81d05dfcb40bbfa6a1e97c9ab9338edcaf7d7b455cbe8d6bca71e3e6eb0c42d03cc0f681c409fb1de4241acf1011d142db4f9b1be96d29670bf7c1bb7ca3b6335cfd5209b1b1a539ae79cb8112003490e52989e28c1e54a6630fb41e5977d52b73aebfb3af260ddf18dde828b05e1b9e405b04169fdd317e1a10eff4286662c4397b4a108fd64b38170f806e33b0feaca3b7569755ebdda85d7edb376f9c7effd186858cdd39ff1d8fc06d32db3a3e9e3c81e85c3b206a10f4b5301c28800017f830d3670422e04d6072cb37ef18b5f386b5c888505ac1c103e59ac08fc380a2f7ada34bc4b7960c38bd2a344b07547a8de6cb3cd0658abd923253083bdf6da2b193e7cb82382a1fc5988edbefbee495f5f5fe8736118049bdb8d6d5fd01e941d4db491f6fefce73f7765d8b6db4ab130eca4fe534d524e1168cbe25d97c3f18e55e825ff6f9904ebd7b4d941c085c1657b2d934c3de93782df7dffb28a848fdc3cd87d93b993ed569b25582647e47fb9c19c09712c4c38ded792f37fbb54b2ca42d304d31177bcd42ff18ea925ed91a9a2d44e13de4fde6578c2c577286b43303c55a69dfb9ba592f9679e24f4b9300c253197bb71511b0abc10903ff5ef9ba6df0fa18d57842fe2d1df97ec59dc57584e576d431ddc80ca437eb060b253aa30c6b23904b8f138255572e376c202c363ef54213b5b8a2f3b5470a3c2ef3afd6dcb09bdcf3d637f1f87e81738396a8785931f7bedb2f5a49f51c85b172e7e59797343f1c0c969bb2eee2cd06dde7cc73d051b39df5fa54fd153bcb48e5d2cea4fda79b1dc4b0b990fbbae3f677270baf9e125cdf20cbd6059237aa5cbdd42f1104865d1c677145d4a178a8fafdf5ffef2972d692cbda77d58b2eeb1c71e993b049b0fd6129421b07c178bb69ffef4a7ee240adfa987361d15bfcc13e5a1e5bdbea2803ada302ceef82b02bfdff2e2824fc5b56dcb8baff0aa2e8b42b8f9ce77be936cbef9e6b99badb4113962c488112a367bd649bbf1c61b27fc210f84004b2f36c20555f0429a221eaf3ceb8e4be593f744c6d86ebbed5ae43b1b97b1cb0290d36121d098087d230c198f39632df06d5cd263c1f5bbdffdae05cfc85f763ed9b9c81cc0721cff98b66fc84bf52983db4eeb66ebefbf337e91ab2cedb173167ca210de79e79db3ba9207eda3ee756557bf3ef6775d9c420350c417c9bc9cc2d87befbd33ffd42abf4e5a708ac5254a315f1e56fe28cd76d86187161719fac63ccdb3dea56f98e3daa4200deb01a089fe200ff246b9a6b149de946b7f13d60ec0ad80b4beff6bc690a5b7acbddad1243bafc8bb5d7ded3d01edf2565d854ffd2e7ab62b1fbec9da0bf0eb9e97af9493fade8d794fde587c57ed53d291c68e6bf8fc6ebbedd642438827203ea741a021cc0d41191e9d8733f2f9d18f7e944ba7c119dfd980b7d0d7d7e7d6f776dcd9efbc93161e62d7f90aef8437f8f9fbbf6d3fe4b5d74fe3ffaebbbeef541e6c627c33dee1a7babfc26f1b65a0d381470276ccd6e15f2a077741f07bcbf728c396e397abb49dca3be4dd4ddea9faf1f4c714f8647338f4cd05c67f8d61e02be9ee996787582e6ff929b38259b994cdc452f979b90d55bdf2ea53271c5f71ec8643f8d97544798ce05b05e46f0e2536138e6e3ff2c8235d7e4c761864decdab55ca19ccb8b4e1b5d75e734c9b7776ce38a6e71394c1ac53d5b2e8572cc9a93f041e81d02ec2aae6d764fcb44a0956c95f4db57fefa5978fe1e317971028ee9a80e3ae782a39e7e6e75d56bf4d95c072ef4099586c02c3526534fe5edb01757de9ad8f930f52ffabd40f971aa46de79357f9be985aae725cff7f6923bf912ad3664e5d704c985ab856850f3efe22d960fff432c5cfffe7ca3e6ff7a59c229af6bcfc65fd261c6f1ca71c6e0a8fd4517d85d21bebdb8f3ffd5f611979f50cb5b70e6eb008a64fa031ef7df4593273ea82a26c9f84eaa2b0bafdad7c3a7dd22eacdfa748adb45f7dfb63e7e6c55ee6d769be7e3a2ef103b0b666bcd0eeed8ebacb595da7284dceda6dc9dcf9818fe297def8c8d593b8534f3a5e32fd9461e59b5faeff1bfa74e289273a0b42fa12cb0f7f21481aac6b7001012d46f865c34bc29c9fa7ff9b349cb460818b55108220ca48ca6b075817e0db0d1e465acaacb2506e97ffd8fe1dcb4bf814fdcbc2984521cf3250272dfc112b51caa54cc6c360f3f73ae3b20c7e90cdc02d7c9f27e3b6dd4643997c1587b9c1bc42bec0fa072b3a1dd3551cff491aac9358b8339f304cb075e2bb2c4dabf8500e9553b56e7e1efe6f8e5c2317222773928f7a33760458c6e23f9d71a4536cfad6cd671338b5322fede077d936d4490b5e988bf8af85b6324ea1ffd0e832401fc30fa803e38f315386ae97c93bc619fd30d0094d1acc5642f3a11d72ef00af636dd9c498650ed8b53732127456f48132d90c60bd5f86c75257e623f9920700ed2bb38eece57eb0f48a77da59767d4fbb86521ed4f8815ed297c8a565753643cdbfa87ba772f860ced15856750c486f5a553f1a5d4f54c7f5a0a78059886168372aaf1296092198fde637bf714c48e9950e22aa635930bfb2bbd44adf0b4fea8dc0393a030c9dbf5e04f433334f2d6bd7720b8226da3153ea7ea02a50d7e9537fb19d0269eba46f57ee24138c93ba59e85facb68b5ff57b6b5fb54f6d7dd3b6b372ad831b7cf87603eaf677dd3ad1ae51779d8fb2ecae9b5f2a07670a6094fd67ff7a4967318edb0d0b4fbcf87ee69a038bf33c6b78d2b0d131fbf4cd8c39682d160b279c70825b907014177fc03ee0a2014113401829ab24263ed63db24eb08a1dbeb503f897ac6baaa66d9777fc9e381942166555f141ba4ed3f6027fac332ecbe0caca7756195b266d9938cc0d1d5b2e139f38a491cb98d07ce27bd5c546a8ec4eea16cac786a120112df0e55ee2a1f4c67a70b0a1099cd69179eba40557564ead3a9f4777397db0c7ca985e5e37e67d933883e68bfe35996f282f29772d7d08c5cb0ba3ae9dceaf5eee873af48a76890784f8571e2e9b0aaf337e869a7f755bde690ac7319fc1c34033a6818357df5852050cb0738f9f622c0f2ca020e6e22001027f55c14f69e33362206260f4c2c03ba9952a17cee952b4cfbef85faafc1bbdda3026d7968becf63ce3c1ccaa5e6dc577f34f8fbb473fdde58c9dba9bc932a9f0c226a5846f14c5f2cd87c5211b94587eea0234b2e5f2a208110311031103110311031103110311031103110311031103a31706a245f1e8d55f6d6bcb2edc8a2bae985d22c1c5171c05c6971847593852c09f80f86bafbdb67ec667c440c44043186867a9db503195b2e1b2bf9f1d3feaf22f255c68d6c9126b61acf0f81c3c0ca46438d962c599937dce7ad815ca2592ebed7babf36f3de3541324cfbcfa4176f1221188bfd3da836b1507afd870c30dddb149ac606ebbedb664b9e5964bb854e59d77de694116bc6628acf65a2a117f440c440c440c440c440c440c440c440c440c440c440c440c54c640b428ae8cb2de4fc02512feb160ac881f7cf0c1162531470cb8ac022572848881c1c6c0c79f8df2a735d8e576b33cac73b1080578ef35f8e8d3569c73e1dc4fd799a3d7aa3956d667c50587253f5967f696b663457cd383afb52889e9332ed69b25f5a33dd800af5874d1455db1575d7595b322f67dc6a250e622215c1f4588188818881888188818881888188818188501b9e78af8881888188818e8750c448be25eefa10eebb7cc32cb248b2cb24872e79d77268f3ffe78f2c61b6fb8e3c130282e4be1c66b6e528d8bf90e111c93d5c6c0f2f30f4bf0c13a517ab9db4adf1abd7d4d0b195c3ab6cdb7fb92cf5325f112734d59e843566906f339ebb413253bac31abbbec6f86a9c64f462c30ace7ea3898f8e8b5b2365cfa9bc9aa0b4f935c79d7cbc9c8c7df4c5e482fa3e382453655a69e6cbc64fd25a74fd65874ba946e0f5dcd3981c2e51cf881c39f1a372d3ff1c4138ebfe063959bc1ad3fcba1ab692c3962206220622062206220622062a03730c046faf2cb2fef36d9b9107274bb44be37b0186b11311031305818f84aea5bb023ef949dde9ed754c3547e5e7e4d5cb49197770c8f18881888188818881888188818881888188818881888188818881888188818881888188818e8450c486f5a553f3a847649bd88c658a78881888188818881888188818881888188818881888188818881888188818881888188818881b10f0351513cf6f5796c71c440c440c440c440c440c440c440c440c440c440c440c440c440c440c440c440c440c440c4400b06a2a2b8051df147c440c440c440c440c440c440c440c440c440c440c440c440c440c440c440c440c440c440c4c0d88781a8281efbfa3cb63862206220622062206220622062206220622062206220622062206220622062206220622062a005035151dc828ef8236220622062206220622062206220622062206220622062206220622062206220622062206260ecc34054148f7d7d1e5b1c31103110311031103110311031103110311031103110311031103110311031103110311031d08281a8286e4147fc113110311031103110311031103110311031103110311031103110311031103110311031103130f661202a8ac7be3e8f2d8e1888188818881888188818881888188818881888188818881888188818881888188818881868c1405414b7a023fe881888188818881888188818881888188818881888188818881888188818881888188818881818fb301015c5635f9fc716470c440c440c440c440c440c440c440c440c440c440c440c440c440c440c440c440c440c440cb460202a8a5bd0117f440c440c440c440c440c440c440c440c440c440c440c440c440c440c440c440c440c440c440c8c7d18888ae2b1afcf638b23062206220622062206220622062206220622062206220622062206220622062206220622065a301015c52de8883f2206220622062206220622062206220622062206220622062206220622062206220622062206c63e0c4445f1d8d7e7b1c511031103110311031103110311031103110311031103110311031103110311031103110311032d18888ae21674c41f1103110311031103110311031103110311031103110311031103110311031103110311031103631f06a2a278ecebf3d8e28881888188818881888188818881888188818881888188818881888188818881888188818881160c8cd3f22bfe8818c8c1c0e79f7f9e5c7df5d5c9175f7c914c32c924c90a2bac907ce52b5fc9891d83c7640cfcdffffd5f72dd75d7251f7ef86132f5d453274b2db5d418d55c8df54f3ef9245978e18593596699a567daf7d0430f258f3df65832f1c413272bafbc72f2d5afc6bdbe263be785175e488e3efa6897e5061b6c902cbef8e24d665f3bafd75e7b2db9e5965b5c3edffad6b79259679dd5bd6bcc7efae9a7c9dc73cf9dcc33cf3cb5cb22837befbd3779eaa9a792092698205975d555c79af1068dbbe9a69b9237df7cd3d1b761c38639fe074d58628925926f7ef39b85f87debadb7925b6fbd3561bef26e61aaa9a64a165c70c164e9a5974e269a6822fb698c7a2f1a9377dd7557c25cfbdffffee7c6d584134e3846b5bda9c668be7fed6b5f4b188355786d11fe9baa5fcc278c813beeb82379f9e5979d8c3ceeb8e326abadb6da58433bc31819bb43358f279b6cb264c48811c9c30f3f3cd6ca7196b7ce38e38cc9f0e1c33b1e1c91cf16a34ee38e58565e2c4e357a7fd5f87ae79d771cfd5d7df5d593af7ffdeb3dd7a8279f7c32b9f1c61b9d7c48fda69f7efa8435475cd3f55c578df5158a8ae2b17e089443000b6416be2cecbef18d6f24cb2db75cc2e225c2d0608045e0030f3ce098ca38e38c93cc3befbc83a6b847417cc30d3764630165da983416ec58bfefbefb92bdf6daab6798f7134f3c918c1c39d20d3a144e28b22334870114808b2eba6872f7dd7727975c7289c32f0bfd5e01149728218077df7d375314db318b7277cf3df7ac3d2711b8afbdf6dae48d37de70b485793ec51453f40a2aba5e8f3befbcd3b5fda38f3e4a36db6cb38cfff5f5f5e52a8ac1d979e79d97fcfbdfffceaddfebafbf9efce31fff707f280d58c8f41afcf7bfff4d5e79e515d7efb4b7937ecf1b93e088f63396d96c66d3792814c58f3efa68f2f1c71f3b3eb6c0020b24bd34cf351eec7c47eeaac26bf3f0afbce3b33b18604c5d76d96509329a608e39e648669f7d76fd8ccf3108036568a5e631f48e398c9208398e39bdd24a2b8d41d828d714f1569eb3cd365b65fe32a6f0d972d8ea3c96c61d395879b1f31c47a524affffce73fee07b20132c26042bb39a7f1c57c5b76d9652b8faf6eb7e5faebaf77b2b52d07c536e33a42c440af61202a8a7bad477ab43e2802d9e94251cc822a5a130f6d47b108442121c57d138aa1b22db26361fcf1c71fe3c682dfbeb278198c78bdb8333e18ed1ecc32b0febae79e7bdce90916fcecf2f70ab02924b08a2dc6ac687293f4d996a1fc55fe98fe54dbf554fbf5f4db0f2d3ef2c8239d82d57ea3cfb00645718492d82e06b0284111ffbdef7dcf2619f2772c7e6fbffd76578f4e2deb8bc6a4a56379f8ec2612e8838b2eba2891d5110bdd4e94e1ddac2379dbf95e95d716e1bfdbf51e9bf3bffffefb5b94c4e002238ba8281e334745195a69e73158d0ef2679f5e8845df154ea5c95fe8f497cb6db7da671463916e775cb7de9a5979273cf3dd765c3e9b5c15614b79b73b6ad55c7575ddcb44bffd9679f39432b1bcfca43363cbe470cf40206fa579dbd509b5887888188815218f0959943c50cadd54ca98a8f6691c6f4f68d66dd3128d5c5b50ec22f6e03b04cc0eab31795483e32d8c8e36fbcf1c6f33fc5df5dc6008ac7934e3aa945493ce59453261b6db4518beb1ae261f17dc1051764ca244e86fceb5fffaae456a0cbcd6939aa69175d55cbede53189e21545313054fcb30a3e3be145bd8cff2a6d1f5de232bf510afb80bba8f7df7f7f8c7635e3b7796cf96d953c7568e5d882af3aed1cd3f86c1d5c0c65da6e29a0cbb669749e73afbefa6a26fbd18edffef6b74e6687bfb3ae8f1031d06b18888ae25eeb91589f888188818881888121c500ae755014b330c11ff7269b6c32a4f5695738cae17df7ddb75db4f8bd4b18c0e724be9c056c346cb5d5560314902824711783bfc0030e38c0298f4873e595573a5f8d7601a6bc46d7671c9343db7311ff838f7fdcb5f007e0d79dbb04f88d1524a754e02b11220622063ac340e4b39de12da6ea1d0ce09a4880db1519768c49b29fda179f630606a2a2b80bfd082160d2b79bf8b210e1296261abc3c5445cf8823f20808b6fa69d76da5c7f7e5c34876203a1949ded222b195c17b07bd5ae8eb63ea1777c20719c163f8eb4619a69a649b8b0a11de0649fb4e08a74f8ea9a7cf2c99349279d744052f000d85dc40191d200e1936fa176910fbe8dde7bef3d979c7a729902563755215416fd44fe1c2d01b7f890a5bfca00f8e0cfa60597a13ea49f690b7d0d90863ea74eedfa3daf2e55fa232f0fc285178b7fc607e398b0902f65f0c6c52f8c21807697c11b786011f6f6db6f3b1c308e9823587f622dd60e2cce49c765024a27dcda3c9833f4473b1c6b1ef264cc86fad0e6ebbf33275e7cf145374ec11996897963c14fabdf3e4e19ebf8dfb5fda2b83cd56fbc2b4ea7e319dc310f98df00fe47295bb875811dfcc33736e344f3973e638e8568869f3d75222d75a2aded68d54c33cde4c61256605880aeb3ce3a03eaaf7ea62ce1cc2fb7cc6fdac5fce009dda05df477557c511f6801ea98e6420000400049444154b4b468cc716cd0e281f1c55f519aa276583c10af135c34c1ebc8e3d9679f7578a41e75e83be9cb0263eb9a6baec9a283cb2db7dcb2109ff09c8d37de3839f9e4935d3aeafefcf3cfb7581f6719a62f965689b714d184d07c260fe80a9037fe4947ff318e04ca8b3a5ada1792216803e5c86f619931497b00c62473543c101ec0fc0e81c65c27b20e6919eb96c6d316c201d5c72fb76a1f84dace1c7fe699679cdc33187e914375f0dbc5ef3a34c1e285b103adcf93013596285374a2ccb824be05c68ae4ceaa349371dc941c68ebc4bbdcb5f0ce255dc814679d75163f9da5f132cb2c534ade84f7c213a82b7862aedbb9808cc05cb463b5cc7c741531ffaaf49d49e65eaba40df53bf300b73bb40f9e37f3cc336763820218bbcf3df79c5bffd04e94ee65e5f5ba752b3326abd04a1f77657e937f19fa569417e3081919ba039e91299097e0512160bcc19ba08fe0dc97e57c39399487c2ac0ceaf31b4b7b15bfdd7374e1b34d8f6be63a000e812a7cd22528f1cfefe722995d3cc5664b7ae88fea68bff15e257f3fadfd5d66ced9f8f69d39a0f50363bbecfabca9ba8337e69695ada0e1e4cf37cd395b67de2d2d53bd8b643ff58f5d07f8728795f52d1f467ea30cea05ad85e65a404ec0221aa8420b6c1ef17df4c340541437d86730f5430e39c41172b22df2ed07b13ff8e0831d918078ecbefbeed9a46452e3ff87cb5642c004e6721d9fd95f75d555c9cd37dfec926cbae9a6c18bae204aa79f7ebabb751762f1ab5ffdaaf2b16a08100bced34e3b2d5362db7a52bf1ffce00741a671cb2db724575c718513806c1abd4f37dd74c9f7bffffd84e3dfc05ffef297840bbc002ebd59638d35dcbbff8fcb214e3cf144170c01e33807780560b4f8f3c542d00770c06542e45d16c0e1e1871fee845ccaf8d9cf7e96fcfdef7fcf9cfbdb7cb02ad961871d9ca06fc3f58e95099766491850384f88f58a2baee8fe44d8b92449bea114f7830f3e48f6d8630ff7738619664876da69a7422585d2f1acda1f36adffcee2eb98638e71c1f8dc9c75d6595d9fc09c01c68df5a54cf8d9679fed98b78b60fe8137c6f05c73cd654247bd222c8033dc02e401167ba4d718b0f1b8a00eff94219c73e9ccda6bafedd2c17005e79f7f7e825f2c006bc1adb7de5a9f5a9ed080030f3c30b314dc628b2d92f9e79fbf254ede0fea73ce39e7248f3cf2c880288c850d37dcd0e170c04713401f5057e1dc7c72af0b2db4903b0e2fe180c0a6c633f9607dcb4555bcfb40d928c71044aa008a6116dbd662d3a667e1f3ddef7ed72d346d38efd403baf8cf7ffe335827d2aeb7de7a6e03c3a665dc2cb2c8222e1d7d0aed586cb1c5b22876ac774a475948fded6f7f73cacd2c63f382b501ed2a73d117c2e73efbece3845004e05d77dd75c0d82f9aeb8c2fc6fd124b2c616ad0fe954bffa0ad82bcb2f5dd7f36c1ebc011c22b63cf07fa06f70f5c5058154263389407bc5056847c5f7ffdf507e03e940e5a03af623302b0f446f1abf207d2c10fb056263f1476db6cb38d5348cbcd82f2e66979b54d67e3e026833f4072c54d37dde4aca0c12fbc077a835c219a0a8d4461d86e4c921e7a47df6903c896cdfca44c7889854e651d7002ef664e0be8e7238e38c2fd8436d11ebb49d3491f301fb1f047f1021d81ee31d71f7cf041570eedeeebb25fe46ed304da02af519f0b9f3c91e3d82cb12e7becf8aa322e6dbe2861c06368ac108f71023d605ef9403d9b9403fdfc914b748925fd0bbfc3f88131c5b863431be52f732e0f507ed33e16e43eb071b2d65a6b39b99bbe65a341becdcbcc47c69ba06adf291dcfaa69fd7edf7efbed93e38f3f3e73fb62f35e6595559295575ed9f9f064f3cda7c1e0153e85c23d0475ebd60d5a19aaa7c2ac1ca6304b3b0813cdd5f7324f2e1a4396cc9b27d0b7cd37df3c9973ce39b3ecec1a8a0bf7a0e1d0744b2b1579c92597747213fde143915ccfbc872e58faeaa7cffbddeb7cb6e971cdd8ffd39ffee4369091479153abf2c93c5c2a9c32aac8ecd04f643e0bf864e70f60ee32870555f357bad0d3d211fbdd974fa0bb02c6270aec534f3d35b8ae2a5a9f375977ea636516d5cfe2ced273be774bee6043eeaf7ffd6ba6bf60ad804e066b7d1f9051d1c7a083610d16e2f5c8d6c8d8215ae0e7177f8f9e18a86e4a397ab673506a0d31c7124d80df41884d082002fa8670ab9d1b768ff6df7fff5c253179b1eb8342da5724979da8ece20bcaa6517c9ea4472188a22304d48fefbe80019341a1ea87db3c10900f3df4d0ccc271965966c93ec3a0428b69224840e77dc10517cc16ead4117c8694c4c4a50f38f6eb2b5ff95604285600dac2225337c0fa69508470c1919401f63bca4a84b910f1251e0223c23242b57086854511307e14b7281edf3ae98fa23c61e40216456c845885a5158ae90ff066bf2b2d4ff086b59d94b3fa46db181f454a62e2a20c8619fac06db3790c8fb830441409e0de020c5380bf41593f2b4c4ffa477d8d35f1dc73cfad4f854f70c7380d298949487d50aa5f7bedb5b9f9d066e65d1e4e4988752cca1bd55199d51dcff4cbb1c71e9b805fd135e5ad2765332658509705e6ef41071d94ab24261f1460c71d779cb312b3f9520e7dc9223aaf4ea465c30b21ce07acdf05be708cf069a12a1d45d1fc873ffc2157494cde2cdc18136fbdf5962d2af88e424af31e7a62dbcb3b0bbe22dacbf8821e5d78e185c1fc4381f8e28486085064ecb2cb2e19ed5578deb3295e77e699670695c4944bdba9a3cf2bf3ea64c3d5a7cc75deb5e9e4d306e69d00a5beafd4d437ff497e2825f7db6f3fb7b9e45f76d5097fa00c1453aa3b74183a1b521213378f57f32d041a57a21f94837206ffcc968f41eb8bc6a4f266ccd2ce3c8506f53ee1841306f001b54ff9e43d7d59870d7acd93501abe59dade691fd0762babb0e10d9e06138af05f972670c9e719679cd1d2e7b66dc871c8a8283e0575c72573183a9f37562887cdc43ffef18f03784cb7e440b58d27320d380730e2c0ea0b0b3b4b0f64c8e12279ffe009c83621253151e1eb8c23d11f3b07cacc4715d749dfd549ebf73bfd93478f906fd8e4bafaeaab5b7898ca67dc52ffd05ceaa45d7eddba412b5577fbd44606b4463455df7ddaa1f0b24ff811f4b8689e502ef2759eac3872e448a75ccba39558ce836f1f90598ae47af8d1d1471f9db0e153157a9dcf76635c8b9e74ca278b704c9e556476c669de3a57e5e8c412bfabe6af3cea3cfdb9441d188f79ebaabcf57937ea5e65ddd36db9c3aef7e0d3212531fdc07a980d6f688595ef6c1fb136baf4d24b6d507c1fc330102d8a1beed011234638650cd9c28459e45bab0ac2216656f1a0dd7108094cd42e3050502dbdf4d22e0d8a16eddc91070a0e2c82b15aa80256c0ac922e14170b3476c2a833ca1609b92c1038062c452f82816d334a05da3df5d4533b4b0bacdd58b4022861205c287cb1e263c713c28d304cfe58cd5ae01b170201b48d237f00e1471d75548b604dff60a5ca8211a5961692289ab1f4586aa9a55cda4efed157e00321904d020936d483df76a715e5d51d77dc911503e15e69a595dc460356272c2824e8813b941d5816804ff003be69b31823b86271cec2a44cff76da1f5985032f56117cf9e597b7c4c0d2907ea36e8c0d1699027675c10d5648285a5924680eb05bcc0ee8b061c35c7416125671864504d60fe4c17cbbe1861b32bcb168648128eb7414bc56d18aa2e6dbdffeb65bc8b170b1635075d373bef9e6736e24b4f866d18aaf511fac629b9d6d8b133fae7ed3872843b400249c7e5e7ef9e59de5050b50eaa6be563afb64cce888abc2198b8c0bdac6f8d3fca20d289477db6db74cf9a534f659653ca3c466a12bc0a29b7948592c2a1e7ffc71f789850216537916d94aaf271b2556c0821e60a1cd9c022fa229e006ebb69d77ded98d317e6345a06352e4c7e29df90f3d4670bcedb6db5c3e7cbbf1c61bddc2def629348a85246311fc520ff5a7ad13e98bfa86ef16e867bbf9c337f045db288f451ab41ea09db483530b5254ba0fde3fbbe0e593a5015878832b019b929c54c0e2134b5836caa41ca36c14e4ed363864c1a63c51866cb7dd768575545c9edde075ea5f8e7bc33fac653b3c04ba6ff162ebe3bf136fc71d77747c02e52fb8e7d40fe3b788df62054e5f54018d299ba653fe60f3f0dfdbf16af81fe39fb6433bc51bd9f0229c76314e01e191f1c9a2c602b41a5a5f34266d7cbd4bd6e1e409728e3dc6eff301a569f7543d150f0b65682265c03fb5f881c7a0d8635cf20da8d307b6ed76139b7ce1478ca176aeb4885b076c1dc8c7e2a20e4d80e6da0bdbe86b7815728fed37c6c69ffffc67376f42635c6d6b372ee185e425ab76d2212f41c3e837e44264299d3881e7c0e775fa8cb4dd9603a1fff068015656a2d7585fea541c0a4e68ad6f51c9388427583e423a64089419c835e2df2ac33ed5b745f391f875faae4e5a5b57dea92fb217f412990f1ea4b623b301c874580f233bc2afc18100d91d994ced6eb26e94d16e4c56a195e4473b7ff18b5fb8714cdf335fe0b1cc51fe8ac0ca8545f1f8465ce42081d615cc21d60d182849b600dfc8409c7ccd039b9e35131bc9927da0cfc8ed1acb183bf8c619cc034e549006d9c2ca2179659609ef553edbf4b8d6f8b638698a4f5695d9b973011995f9c91a4c4a63eac87c617c5943b9aaf9b75b13c097cbca27165f7a1feaf50cf31d1cb199a28d32e411e452e6ad7037547207bc069e43dd2ebef8e26c4da0b501fdcc7ca7beacb5d92892fc04ff5d75d555335a209cc7e7988181a8286eb81f596cf0c7021c468cb21081d602df60ba00c40f0206207c23e40a30e787300b58c0a334964089508880c551bbc1068460941728530428edb09ed52e358a230414c00a08b403a62340d867018ad59be249518852a3afaf2f5b04b0e8f215c5089ac29b2c39c81b41469616d417c5987ce79127020c0a58844c004537caada2458d8b18f8e7f715f9a39092708bd25c0053407121a0ce3ffff9cfb3721182b8f404eb113163843b883478e28f3c50862080d1268e9185840a95e13f8567c2abf4879f4fbbdfd415dc20700a701ba145017df9e31fff385b548137c638e3088b43e2111f2514ef76e79345c4b2cb2eab6c9dc21746871526422bf125d4f2ce5c11b008613c589f5ad41525b5fa4c71793226181b5a20c318ad529138cc4759bad01765371d58e0daa3ebb84219912a3405e084f1c0ceafc6b9bef1a46d5631cf5847610a1d1230d6ad720f8517b4c96f83e25719cfcc776d60919ea3852ce2048c2fe698ac4f51b2d3b752fe2b9effa45d76718c20c2668a807c69975cce9027fdcd58c3b2418b73e213cf5e48c71c832e1f76d8616eac10071ca244d2c20d450e821cb49af9463b457ba470923286f15416589c911fc038c14d8fb52645e98a325c9b298c0d9476edf0152a9f7250820b7c852eb4171e83d58594ea8ced90a298fe00a093364f360ae14155e84fd3bcceef5f94e008def2014cdbe02955683bb401a5b3803ef6fb199cd80d12598a294d274ffaac53fee06f4a537e155ecdbc072c1d84b7700cb91d408fa1dd94076811d12e1ddf43b49c8d64c625fd069e391ed96e31d9ae2ce415c94bd016e634f5451eb12e5e9aee03ea059f67ae87faa85dbd9bfc5e8726c0e3e0c702fa08ffed02e80b7c0fc52cfd061f4641c4b8f0a1cab864b18ac254803b2fd162c27cdecd629c31034d1a0c39107e2a3a40bbecf167e462781278077f6c50b0b96d017ac877803affe4273f711b798a03af634306da5c16fcf958a7efeaa4f5eb0b7e7c591c7e6a37ba7db9105acee68a4ebc6044419de0bf4dd7adecbaa62aadf4f93746322190428cf9c31fbcac2cb016d2388257e182cff23c943ce05216804534da5f972087921ed76ac859cc2fc6bd14c5c897d417600c33474923202deb19ac9dabc2e8c2679b1cd7211c35c5273b91d931f0610d0ab09ed5da947511eeb62c74927fbb3501e3b8cc9c63acf8d00beb19c63f7ff0090c7500d62176a386b9dba4ec4719bedc11c28fef2211bd0d271ea1ad006b21c6b6e45b681271e43e953c431ba02e71fc37da636094443fda37a3771a0083948530b542b0d364532db5a3cb6f765c2180c4c18fa68085af55122b1cc62b4b09c2504cc9f2547106e3491dac92983269bb1809bf115a047c1358215a613c4382938f4f1452124694d65a71b2b389200a3eb19a11a0bc929258613cf1fb2a0b3176fbac62cac62b7a47c913ea2b1603d405c0125af566575fc21cdf11a8ac30477cdabdedb6db6656471062ab9c515ec44568f3c718e145d0697f14e5e97f43e98692c12a8911362460d076fc1f09474a0f2e68bbc251a4fa0a52be91bf0fb44b6e5cf8a676a26c437811502fab245638cac83c1f822c80951f63db9f77cfa496df12bc61ce5651abfcfda7dfaf2c9042feb2b14203272100a74f3ffd74f609ffe5a1b2c9579b5244c62a27346eaa8e67ab5867cc5b25b12a059dd3bca7cd96062a4ebb27fd475a0b2826a0952c7e784ac94bdb04cc7b09980ae38962e8873ffc6116c4a6922c9f09a4afa518a45c3b7ea470c2ca1f0574682c65199b17f06d8f1f63596495c48a0a0e593c03944d1f77023eadd926f557ab79a5fcf8cde6840081dd1f17e08236a24cb7740805107e32352f9447d193bc9be47508b156d856d92868a49483deca524ddf9b7aa20c13f49985b1c2aa3efd3eeb843fd832abf26ad25afe229a66f3f4df995f6cdaf963cb8f17fa0d4db21b7e8a836205fe2ce0448855162abc93a7a523bcc3fb2d34dd07d0207c016a3cdab206fbdd6f5b159a405af1622c3df199eb03bcc7f61b9bfb16df8adfc9b8545a2965f59b2763087e002f90e519b46630e440e47cb591cd252b6b22ff589e684fb2506fea68ade7c14b4839888f522dd4495704a1f958a7efeaa4f5eb09bfb4f8e13b0a142b03337e7c5a62377149239ed364dd3a1993556925752f02f040ff215bb0a9151a0b45e9f58dcd5e8b538597c90fdca23cf2d3233359398e9356006b103b86d9d00ff142641dbbd9af3a9579f63a9f6d7a5cfb3869924fd695d9e96f41483ea89bbff2ce7b569973bdb69eb1b286c5236d8596d5d50d589c95913be095fe3d3aaca1ad3e06bd8ecf7bd09bd838a2c7b6fcf83e6660205a1477a11f1168d8b1850860c68f928a63f50042a12c589958b23a44f816c125dcb742b6d5240d47eb202808a7a4b3ca311bb71befd4cf0abeb60cab30b18463cd35d77447137cc103820f8e5078b3231d026b91e1bb9f009fb2e244b09410033e75640245020b342c0325ccab1c76eff9267706587bccf2a515b4e2b47ba2040b013bedd4893ab258103e50c4081090e51a41617a9296cb016409eb2b26158fa7f2b66145ef75faa3285f7da3ee08dd3ed0d7ea031654e046479c6d5cfa85b1423f12076531822fd61ea4f7c711cc97fec532c72af494a71532619eece486003c62bd8bdf531f50fea2c86533813aa1ec24ae00cb29019b45e0a00cd87e255d5e5fb200669edbf8e48f024c384590cf9b9bc4653cc9d296f9413ba45ce53b50653c53aec537e33934cf280305bc14c458335397221c8107702e6b6b3689a83b56e3083628241807d65298fa53273ba65898e495431e08e0c209163202ca47f120a5848f27c5abf204e7a24be4cfc65608f8866209dace7b1e8d08a5b561c21d61e00c5a18022cd670ad003086c097c614618c13ac73ed465a5faa145d77dd75f95c099ae675be92c156c6b6173c7603acb06fc75da76535c91f68731e3dc8e3d555eb0d3d6593a653086d8c292f64298e418a0f6019ceb86b1afcb1d1641f505736629aa01f4db4bb0e4db0b49e71853ca685adea062eadf524a73be0bf9667571d97c852c85052103026504cb1418f5c009f806e71a19485c19003a18d5649c678f6c7137282781ff8e74f6b02eaa80d10e86ede5cd237bbc966dbaaf7bcf958a7efeaa4b5fd4e1b90e78b80cd593b7e6c5c1faf7c6baa6e55c7a4ad57afbc23d7e2f31e5ae3e30a39116386906f61bffecca590b101f1b479cebb681a3c50739372f36448d220bfdd78e38d4ea6e07759e8653edb8d71ede3a5293ed94d999d3a773b7f1f2fed7ee78dc5d0fa7ca8eb3e147207a7718a80f91c3a61481a9fc614e513bf8dbe18888ae22ef41d0b3016e50886101e2eded2821acb52297a60c4586500280f880b604986e09b07085e7c4740220d8a8c3cc12a2f8f3ae108ec5658289b17f58610e26f0cc58c1610edd2531e0b4629d879ead821969d52b04b91467e169f08e25c6a5506e4aaa24c5cc59145b27e879e56c851ff138f761581b56e4549833026e1ac285d996f9df64799bc516cc922d2c647512c60dce226a20c48b9a6b623f06261c6384279401f0b8823a155615681c33841b0cb0384ed501e3045ac967444122b222984e95fb9c5206f6d58e495a170e6afc61ce9f214d8c4e73b8b73bb2825dc2a375577c24380252cfd4e7d599cb278f0c7afff3b948fc633f5d7229778b88f2903cc59d1bba2f81c69c3ca57e5310eb05690c5028b6d949c2c3eb45966eb449fa108ce03be63612345311b12dabccb4b5327dc8e4be6078bfa3c60b384bf3a60ad17dab90f08cd575b36f4077ca9dfa0dff47d555e60697313bcceba87b0f51d8c77f0018d167d81bf5701c683f8178b73a02e7fb0e577caab6d1eedde51fc14d1d3a2f4e0af48d6810eb3912b65101bba7d5d5014fb756cb20fdad175bfec6effae4313ac553e1bfb799bfbb60dd00bf8337c4750755c82434eca9c72ca29cac28d092ee8e40f60530f3738288fc91fb0b4a65b7220bc43739832b918193729a29384897ff14e387706e81484ad237253113d6553ac9da2386f3ed6e9bb3a696dbfd33ebb41053e7c6073af0a3d69aa6e55c7a45fef5ef90dbee1cb18d0e0e60b9e244398b275645d0a6d2e0bd04b364c8076720d721a32a6786699327a9dcf76635c5bbc34c927a13fdd94d9bb9dbfc54b99f75e5acfb4abef60cb1dd0d932f2b3a5e1edda10bf8f7918e897dcc6bcb60d698bac0501d673587032d9ecc5261cdb153346d0d4bb152a87b411398523c85a4bad9c682dc10811f8dcc5775c2780f2468a622c0bf1d5c42252561ae489b24880f250828bc2ca3c7deb98766920b4ed142c360f98a875c961bf85de892f60fc688c28acd367ddfe68572e56d92161df5a24b6cbc37e57bf60adca053996a1da78bc4b996efbdf2a70fc23347e7ac6551e9e51d432f6597422e8f2c7260de35aca6a1673f2dbe6e7edff6691c81f407d511a2374e64168ded5a1177e3bab8e67ea6e85cebc7afbe1ea4f3fdcff0d2ef6d8630f6755081db5f381b8f42b7fb89a906f67f0a8be273e752c12161597fc7c7c5499aba46f07d455ca62facd6f4fbbf455be93378aef26c1d697f1cec600ae11aa40d3bcaea86fabd4abd3b8daa020bdace9fd719497377e47e53a0979007faf55c69ced8f107fe88457e7d5352f1c5adf2980a7769b21458ab34ecb2d4a074e9bec03689836018aca1d8c6f756802693be5df7edb3a19975835edb2cb2eee52bb503da075fc719a4f7edf07430eb497d8d14e785b3bc51c722bc623ccd94eebe8e354bf43f3b14edfd549ab3ae9594656291347f93559b74ec6a4ead14b4f4e2096d9c029aa333cb52c0f231ff13ddecbf49f3672885f167a99cf966973993879b868924f765b66ef76fe79380a85f7da7a2654478541cb065beea04cad47548ff88c18f0311015c53e461afacd2e0d9632289238768760cbc541283b000818d60f0276d999b4a303546578b48bdb70ad9218dc70e4013ca168e3ef9a6bae7147924238201e82020a42f089351b9680723b8172cf1eb1c5d290308820ca35dc20a0100ae118611d206e917553a85ea1fc42f11406c3479047b02a035658630152b5bc50194df447285f1b96c77cf01785350d40ffb10160ad719407eda6ff00c65b5f6a45463c2e379242966f5811612989af24ac20b03e3bf6d8639d95bdc51de9552e824c1150f73c3c335638ca445ec461f30205a5753b81dfd9b28042993f14c4d4b79d82d9b65d657422742baddf4effb7e2e53d595cb151c278a6fedc648e5224442334cfc88b3a87361242e5401bb126db78e38dddbcc7c2182b2e2ed4b0f5e59235e62f744079f36c8753c50d95cdb8c17abd290057e0897a830f3b469b2a43f9903716e4a235797352f1db3dc96fa79d7672c2ac2ec3c137367ed5f22e450ce5d934afb36320545eb7c3aca21a9f8d2889a043ed807a5bdfe2f03770dc247f08cdc376f51accefe0000bd7226570271b5175da3026f7016deb942690166b559d68c14502326d68d38fb8e2dfd01d3667ed865ca7e392ba4383900590a9b198d4a922f539630a79f357bffa9573efd04d39106bd64e36e3e0e39c40e24419b20b3c08fc209bf0cce34955ac30850f9e75fa0ebad454bfdb3a35f15ea75d4d8dc926dad1541ebe953f7216f22aa75e983bf025d64eba0038afdcaab202eb2d8d612be7e5e51f9263f3e22abc97f9acead8ad67937cb2db327bb7f3af8263f0560586b2eed0b2b149f6abd22f31eed062202a8abb847f263d3e85744b2fee2750a0e89839ae29ac028377d200284265a918aa1e42b616ffa4911b8690c0eea7276da7c2a69f57d9df2cf4ec82d8bfb9b54c3e0821580ce39b19403981c241f844396415665aa410171c71c9960d235c0033a18e7c27cf6e835d14631d5da464b1963328cbf3da50a5ce4df44795f26c5c2b448287d025808a8f30c998c6e28c74d66a973edd71c71ddd4255f179d297a145a8ed57148d08c279b8e4b2bd22411977132c96290bcb2094a3ba048dc507ae2dca02ed105d203f16bdfe8de8ca8b05e4430f3da49fd9d35ab45377da6ff19c454c5f98fbc20ff82fb25eb6e98adeedbc63e15be40607da0694b5b0537c8d01163cfce1df187c618d098de51de0c406b495b6e93824ca843c7712a4b31b58fec572a22f2ef306fee16a8271471fa064c0158b5d00d922aebefaea046b35c6087e98695755906b23d28187bcf9069e0f3df450973d75fcc94f7e92f1239589e530bc860d1edcaec8d7e979e79de72e23b2744d6942cf26785d28dfa10a63c3934bfea0198ca71b53ff8b3a565e5427f0273e4e3cc63560f1d8097f282307b8827ae01ff8e2a2c6bc39004e2d8e645556a68dccb14e659d31b90fead0044beba105793ed6195ac819f42fb88486853684cb0e41c681d2931ffc1c9742722bc466031b85da0c8657c24badf10075685a0e440e95ac004fc3cf7b1eef05176c748b6ee2420263114b0f917918eff692208b23199ad8b0b2ef75faae4e5af55bd97a568dd7cb75abda963af1195fd66001975c5c48e76f3a300f9a06641ae58b4c53b47ec5559a759756b62e63339fed944fe6e1d6ce99a66576caec76fe79ed6a227c28eb3e26cb1d4df44dcc63683090efa87368ea3346950a0196d0c822fdbaebaecbdac731530b58bd4a710c539042d4c6d13bb7266b4716e6ac7456c981901c02145a651659a1b49d86b16010a048f3dbce37dadceed805162c127af04fcbc565025f1104c195ff4f1611725ba1f8f6c9254dfbeebb6fb2f7de7b272cccbb0decec0b18177621ac709ef4931d33790a488d319bb6e8bda9fe282a23ef1b8b4b2968516ae6b59d85de01071ce0fa65cf3df7744a3f6bd989721d6b261f500e84f294d50ef1518a8514ae7c631ccaff2dbf4380d52aca3200a1181f899a532c9cd5be505a3f8cf9ab8d1ebe71433b6d0f019b2d21971bb252250d7dcb858c7980424b00ddd07c5258d527f5c7aa1b0077f866cc03948bcc33fe2eb8e082bc685938fd840f6be21f72c82103f042d9c3870f6fb93411218f70abacc6ca260fa758d7d8cd18ab38a73df65b957ecd1ae1bdd805157592db012f9aab2f9b8b8c2bd17a3f4e99df768304dff01aa77e5ae82963873febc354f1c0a9362478df72cb2db38521ed28eb9b9afc9ae075aa572f3c5110e16e46c0621dba5e048cadf3cf3fdfcd19e28193bed47a1d689a3fb84c7bf81f6e63f200ab4b8d7f68159ba540b7659d5eed03c64d5da84313ac0f7dfa4d4a52bf4e28fff7d9671f47bb0f3ae8a05cfaeba7cbfb8dac20dea13b026c5c3612d75b6fbd161ffff0826eca81d03deb76824db822590cbac926b340a70f7c7a68f3545c9ee0b413eb65e551a7efeaa455f9dd7af672ddbad5e650bef06df96b66ac71bf4348beb3324d289f4ec29025b50e8546dd7cf3cdb9d9b09993278fe5264a3f8ced7cb6133e19c22763a35b323be5753bff509b9a0a1beabaf7aadcd1147e633ea32706a2a2b88bfd86402e2b3016e05242a2c0f4957e30f495565a29ab0d714302230b502c27045c9a85f215b0422a2e197ca50042c4d9679fada483f64480d182023cc84ad0560085a815826d5b140fbc4941c78eb58e402240f8f884e05ba19c5bb2b93ccd07c2a454278d16a27ebc267fa3e464710020541d7ffcf199b58cca4190c2a7b3fa90f19167bdc371c52a0bc8a6fa4375adf2a4afac90126a3bf931f6658982006a775af98e82cf1736f97deaa9a7668a05fa5378c6628d633d02e6812c7b14c61345a72e4eb2e1f69d7cf1410e8077c6210a40fa28cf62d3a6f7df9517e1585aa040f281b97b8ab9c8c77ec7424c38251c0b4fdc32f800ddb0736cd555570d2e24fc74ed7edb718932d26ee0282d7d896b1981ac27f53bf4a4efa49c052f6c9085c0f6a3e60156de02d29e71c61903c60b3865fc09a02f1cb11540b374f9227d6bebcca2fda4934e727dc23c2d6b798cf2c25a8cb3318012c407362b942765dbc5b01fb7e8b7ddb8a03dcc0f7fde408fa18f02781665160163cee2984d8c3ca5b79f0f79d7e5757e9e43fd1bd746d0050173350f1f6c6631662c3f5a65955532fedd347f509d3a7d8a0e779abe5d3a3600431be3b8f0e0623001344e7cc0ca074dc83af489855eeb03ea469bed18b3f5adf25e8726401fa568866e9c73ce3903640f68f025975c925549c7d2b3800e5e901b046c84a264f501bae66f1283af6ec981183668e39672caf07e2c9cc5d3c0139ba7d0432b03b0d164efdea09de09abb19c4dffcb697f95da7efeaa42d53b73a717aa96e4dd04a68111baff010640c7be2a9084f1a57c4619c8414c26c08dbf5a3a5a34579b7fbe6f374c67088ff61a0d1ee32c6a2b2c6643e5bd46ebe75c227f3f26c5266d71ad596d564fe36dfd07b1373cee63b9875b7e5f2de8b72875fc732bf3ba56165f28e71061f03d1f54497716e2fb55351102218ab0fb856409922c287a52247dbb09645c18055ac8eb893963c609c0209e408cc58e160d1c1e5382892111060de75044d9553f589520121064505753bf0c0039d92619a69a671561208cbbe80cfae330a426b3984300e2e7c010801dd0a49aa9fc527e51e73cc3109c7b1b0f4069f1ce393f29e342863ecb14ce5d3f4937ec3fd86dc92a08cfafdef7fef16342833517ca140b28b57da68ad1da993fa12c52fc7c6b19a6521bdd1461b05c797dad1547f28bfaacfb5d65acb1dc1249ddace9ce0b21a3612e87bdbc723468c70fddbf7a5c51de950e6d2e665975dd6e1054515e9b421411cfa9cf9c49861a796b9c0d14f7d3bfcf0c39dff367c1c532e8ac8764a629738fdc7820f45a6acdd2897fae51da156bad093ba7184561b16b84f607180eb1a949784cbd545283d61588f1c76d8616e4cd06e1695d4918d24daf6ffdb3b0f685b8a2a81368a193167c52f888a09501144852f1830105454400982a2630045612d9034800cc14450411811c504981104474404464ca0a0a2620ea0a8a098e3fcdd33e7ceb9fdbb6fe8bef785fbf659ebbdeedb5d555db52b9f3a5dcde03cbf864d198845aca63047bd4efcb1a8a48d413ef1894f945b405066d9138fb4a0f8275e08dc783b60985047510e45b8b487288578059172ce249dc948ceb350981327ea3a168908c7c30e3baca02c61114e3b5a6d0fb148cbed32dc227f795eae7fb00c052fed52b81b9626eea324253f2933d4612683a4894122751925714e13e537ac7546093fbb41c1423b18ca7be20c0794bcb417b0256fa22d21fd94bb51e4094f7842c93f3edc447b461d8e85cb4161e4b61977e3f67583c29e8f7b58b0d3bec4decdc481051fb60fa11ed036d0afb35083a578d405dc5156b3326b52fd0361b795280ff8274dd43bca3979de76d162505cb09642890007ca6cdd78857e236412639d4823c7638f3db66c6bc897e73def7965199e441f1df19dc49105afa38f3eba76ac93c3a75de195f3a6ef2d746913289b2c30463967fc449b423fcc223e0b6817acd87a252b5071df5558c047414d1d22bf8e3beeb8b26f637c483f417b49ff1f6367ca6abca993db1af27752e3409e17c2587694b123ece9a3a2afa71f609188724f1d887e84856cda65fad5ebaebbae7c4b28ca6b3c73dc6397bcebe277dc788eeb7ebee396f365126d2563000c82622ccb1ec3a3084a5fc62831ce43d9ccb89ab1256319c695281bb3f01ce6988c3fba0a0be079fe4affc79c9538501f59fcc090a08bcc5a3f3b2e8b71fbc9a6f0273966274ff92e0c6f75b068c3375a26197e5d1a06d5b99803d4f91be5dab4e33e280eb4650b6ddc3128be4df7dab6614de1797d7e09a8289e327f06b80c22c3ea8d86a0a9e3e7de5e7bed554e0662950ecb893a0b433adedd77dfbdfcc05b248141024ad0b046208c5046869bea3137b8d57bf9772835f2b551cfc3b23af65763b09ead0bebc261424ddad976202b8151fe30200a252a1c9888d7093cd96b13e560b8476114caa3ec07451093ab5125f26754f7b8cbac1954a11c675215f79818f05715d28c22300b9d3283a6502811167f4c44f273b29f38ef9a1f114edb231df1f6db6f5fc42ba4c49709137f556190cb241441891e1f34e43703e26cb9c4b5aab00881e5e8ce3bef5c0e5ef27371cb4076d0b624d5f0e23765303e6a17d7eab654897bc38e2f7ce10bcb72ca17d01114e831191fe697fb9405d2f8ae64758ce2a56e8b0dca3af582fa11d2b53cf36cea59c49fba5b67f5457ddd75d75d7bd693f1fca623f9c51624318166a2c35f9d2c5ba18c635212427dc66238acab992c356d8dc1821b0b0659587c08851e83cfdc0e552d7148d7a8421d85010ae2a8abb48dd13ee670a82b594116ed587633ec9c8127fd4f28b6e1d054b69efffce7f7ac3687854bf9897cc72dacb0dc662fe3613cbaf6755dcbebb0b4b5b94ffd275dd93a1b85d9a0ad6cb0528757ae8b3cbb4bffd0a5af8e745317e2f561ca6858b531be9886a298e7d297356d49c3e227cae190ae631dca27698c7119e509e534d7a3ade9920711cfaec76a7d8f459961e1d2f636298af1dba54da09cc38dbe15a13d691acf3de5294fe9e55b977249fdd865975d8a134e38a17c26ff18e7c658b777f1ff4e588ca34f44f03be9712016beb96f85c9b036efffa2562edc85a2980935e794c557bffad5e5e277e4396f1ce4b70ec27f9763dbbce3996dfd76c9f751d33a9f719b745bc93863d4b294f9e0876f37e4b730a8a3514fb3db38a7eee29e6ddca2dcc5bd718f8c89f8d024e340f21c610cc5df2485bc9e957eb60d9771fac941791a63b73663761605f33c3c0c7bb2414397f087711954e718ab771d1f4e33ee83f28474cfc5b8a30d9f617992efb76dc372189e2f1c02ffaf295838719aa998d07967c5301d72b64cab26967b071d7450b9f766d360012b033e9ab16c8562a42a58c3d0918664e5067b4cbef295af2c07aadca7b3cd0d7bf8a93be22ee25d5592d4b9e75a0cd439df6ebbedfae295c3c02204ab13f6a08bd71af143faab0c42c9c97d0425fca00911561efbefbf7fa3f524e16371f2bad7bdaeefd9ff1b7afd7ffc84b54a357ef53e8ad23214de59b6d8628b72f283d565082c4250e8f151a49d76da69254502cf4511c6e439c701fff97784553d4e2a3f723ee667e47297afc739160c7beeb9678f635c8f23e978e6339f59ecb6db6ebdf4c08fc9545e31cebc28dfb022dccc20c791e7326944015727f0447113e166bf55f7592989952c0afdb6126963353ec73dc2e31aca4c26024d8235e76b5ffbda3e3e39fe8481d29dfa50ad675dcb73c49ff855cb79c417a57f53bb156eaa47e249ddc4dab68e0beec9aba73ded692b29dc88071f3c44d14afe84e4702807e4779d156d7e7592bd90272928dbf6d9679fbebccae11347d24459ce3c513247fc9bea58ce73c2c4fd8b5ef4a252399439e4e7a1b06491327ffc29df8f67e66b9cc30f2bd31094f8750b04713f1fbbf475791b901c66d3390c47edeb9ac218e53a7dc96b5ef39abe2d4ceafc11173e50c8c4ba9a5fe1be6dffd0b5afe6f92cca51977379a10cb4dd9aa9298df4717befbd7763b9a3fffeb77ffbb7dac5e0ae631dacea79ab22da7ad24d1a73596f9b078415d294f6b83fe888757e8ecf20b7f95e4e13d7ab7120cc2e6d027d338b78f171c1fc6cce199361c8b07cc51b1c215dcbe5b215e35dead6a0ba4f7961928f956e96498f0351d6c4849f76988fd28d2a8cdf73bd0a2b4bde463af8e083cbf168be4fb8d493adb6daaaecabe2394ded7fdc6f3ab6c9bb08ab8ddf71f3bd5a56e3d9f958e7662ee2461cf2bc86df936e2b09b3adf0a6168b6a4d658337cc78a3a86eac9abfe3d1e4bf1a2fde78cb021bc66b8c45eb84b2b0cb8a051f98216dda36fc2dc67eb6aecc92962c4d6e18bfd00f36bd05d8d44f0e1a2f1226f3a9366376c6e5cc21ab6f8fe5f877093f33a93b1f54e728530b753e435a98efc30669aa67d31c778ccb67943a3acc4d533a4b08fe5bf0045659612dd2eaeb18b1d76556dacc656ae3f94dcf9caf7855e303de934e3aa9b73728835856c34611fcf2da198d0ae758baa018cd8d715338ace8b28f2b834fac5018d0573bf526bfd3bc4ebcb046414940bc180067452ff7c30290814bb523ea1237c266f59449142b6a58c0c52bac5dc29d845f2c54b008a6c367124267121f8f9a44f84d61cc677e449c785d94b4b3d7321d0ee9ce6522dce5237ea81b70e27557dce7b282a5c435d75c53d69558fdcefe39873956c99405ca04835c06b2a30a1f493be79c734ae7ac02a3d49f8444bd8f3d6ae1413a8775c6f9d9b4159475ea3cf58c74c1689c307278e39e939fbc2a4d5a604b5dcecae971c3c33d619116f29e36907c834dcef741e14619a32d246e83f29b6730a14219c0607bbffdf65b695047fb81b533e508651779d446c82bca30cf248d3c8f767e5a7905079e45f8d4b949b7b36d1844996fd3d7b579de5cf8a16da50fa69d228ff94d1da03d6a5aa86a8ad77cf50f4df199c6f5e88b289b4c2ce80ba90bc324384f7bac33cb79d0a54de08d1ddad3682b698f47c9b761f93ae83ef529fa17f21fa1fd1da58fc1fd421d07e6343386a15da42e44ba782326f67865a18405d42ed225efbaf8ed12e751fc2ee4b88d127fdcb0750456eb6df339e68e8c53f863bc130a2ac2c70a947ac4188ab676d212e31ac6189461da679e356989f67fd6fa59eafe31c71c53ce0719ab6164c1bc99f432871eb79f1cc67d1a63f6fccc69879f9f35e9f3f98cfb2c8f3b269d4f86379840e84dc7d58faa281eccb5f35d141b471d755439e063bb80030e386024456fe7071b8004243035020cbcd96b9b57cb19c4edb1c71ebd576ca7f650039e3302ec5f1cdbf6f0fa74b69a8d48b0ff2cdb0a60fdc51639a32ce0855f8f1290800424200108640530967a587e56858551deba430187ecb0c30ee556735577fe5efc04d8268aada910de800b0bc9c59f3253302a81aaa29837d050b62b12908004da1068ab28ee7f17becd93f5534b00eb0a1a7af6dce388b097aeca845a5c5e94c0a220c02a3e82554f7cb007eb4ffe94d920c02240ec2b8b254cec919d53c79eade186d79c6dd7331dcf2520010948605402f433212c5056b7ef61dcf1b6b7bdada724c6e8a46efb8008c3e3e225405e9f72ca29650296add86ea5ed763f8b9780319780042420818542c08fd94d2127c2d22c07cd2b3fcbd37e6df99ee71290c0c227c0feabf9633a11632c4ef32b7d71dde3e224c09e91bc0982b08f6975bf4faec7fe947c14aa4e918c1b45021290800424308c005b57b195158b94580c1f77dc71e56be66bacb146c116548c3db2b087a58b9399c8ec9cb3b500c6457c4f836d271c5bce4ede9a12094840028b8d808ae229e458581de6a0b7dc72cbc60f7f64779e4b40020b93005f28af0afb8d8fbae778d5afbf171e0114c01ffce007cb88b1bf331f17ac133e4874c41147d4ddf29a042420010948606402bc52feb297bdac78fbdbdf5eee418a47f6d9bdf2ca2b570a639b6db6e97d907aa59b5e58f404d8dffb90430e712160d1e764f704c43633dd43320409484002ed08a8286ec76da02f5e17e2836cec29c6e6f35812afbdf6da03fd7853021258d804f8181c5f5c6721888fc3f12119bebeaccc0e0114c5b4d7587661e5955f099e9d549a120948400212584804d887960fa85e7ef9e5c515575c517e04933904ca223efafcb0873dac5cb81ce783bb0b297dc66574025a8b8fce6a565df2ed130c15d8e28e0f11ba3ff1ace6b4e992c0c226e0c7ec1676fe183b09484002129080042420010948400212908004242001094840022313f0637623a3d2a1042420010948400212908004242001094840021290800424200109640237c93f3c97800424200109484002129080042420010948400212908004242081a5474045f1d2cb73532c01094840021290800424200109484002129080042420010948a08f808ae23e1cfe9080042420010948400212908004242001094840021290800424b0f408a8285e7a796e8a2520010948400212908004242001094840021290800424200109f4115051dc87c31f1290800424200109484002129080042420010948400212908004961e0115c54b2fcf4db104242001094840021290800424200109484002129080042420813e022a8afb70f84302129080042420010948400212908004242001094840021290c0d223a0a278e9e5b9299680042420010948400212908004242001094840021290800424d0474045711f0e7f4840021290800424200109484002129080042420010948400212587a0454142fbd3c37c51290800424200109484002129080042420010948400212908004fa08a828eec3e10f09484002129080042420010948400212908004242001094840024b8f808ae2a597e7a65802129080042420010948400212908004242001094840021290401f0115c57d38fc210109484002129080042420010948400212908004242001094860e9115051bcf4f2dc144b40021290800424200109484002129080042420010948400212e823a0a2b80f873f24200109484002129080042420010948400212908004242001092c3d02ab2ebd244f3fc57ffffbdf8b73cf3db7f8c73ffe31f06137bff9cd8bd5565badb8cb5dee52acb1c61ac5ad6e75ab81eebd2981c54a20d789d5575fbdd874d34d8b55565965b126c778cf20816f7ce31bc5b7bffdedb21dde7cf3cd0bda67e4baebae2b2ebae8a2f27cdd75d72dd65c73cdf27c21fcfbd7bffe557cee739f2b7ef39bdf14f7b9cf7d8a0d36d860ec6845fa6e7ad39b16cb972f2fa89fca6408d8ee4d86a3a1fc2f81284f7ffdeb5f8b073de841c53aebacb3a4d0d0ce9d77de79c5cf7ef6b362d555572d6e7deb5b173becb043719bdbdc66c17388b6fab7bffd6d39f6d9628b2d7a7dcc828fbc115c9404624cc3587be38d372eee76b7bb2dca74cc4aa4731b70c73bdeb178dce31ee73c28656ef46f7ff9cb5f8af5d75fbfb8dffdee97ee7a2a0109cc070115c553a04e2377f1c51717fffce73fc70afd094f7842f194a73c652c3f3a6e47e0aaabae2afefce73f9779f4b0873dacb8d9cd6ed62e207df5080c629aebc42d6e718be2f18f7f7c81624a91c04221f0ddef7eb7f8e217bf58468709d5231ef188f21ce5c4a5975e5a9effee77bf5b508a6222f5a52f7da9f8f5af7f5d1ed75a6bad8209c83892d377e38d3716cf7ffef3c7f1aedb01046cf706c0f1d6d8047279bafcf2cb8b030f3cb0733fcae4fc8a2bae286e72939b94cad7073ff8c10b5279f1bdef7daf38e9a493fa98a10083c9425114fff4a73f2d7ef18b5f94fc962d5bb6525b1c6d35f14649346e5bdd97787f2c6a0293a877c3ca5b1ed3dceb5ef79a5345f124d2b7a833b821f2b90d78c8431e32b13680b1e9d5575f5d3e957685f667b149eedfbef6b5af15071d7450d92f8d928e5948ff28e9d48d04e69a808ae229104701c6a07b5c45f1673ffbd9d2c20085b1323d02acea7ee4231f29c2b2a36e403fbda7cf66c8c398e63a81525e6be2d92c078b395561414c1a72f9c4722d64212e28e538e578479c871d73fadaf81f16fe52be6fbbb794737ff269a73c451d9d543fcae4fc8c33ce28c7ab2ce24e42f93ce99433bef8d4a73ed5172c6fe0b1d8bf90e4cb5ffe72f1852f7ca18cd2b39ef5ace2d18f7e745ff4bab6d57d81f96351139844bd1b56def2982697bdb9003789f4cd453ce7fa1979bc35c9675f73cd35c5e9a79f5e06c99b268b51519cc74be3be613d0be99f6479302c094c8ac0ffcf802715a2e1f4116050bff3ce3b97ab860c7643586dfdfdef7f5f7cfdeb5f2fbef295afc4e5e2d39ffe74696930d79d7a2f024be4844e0845311213af2592f4a92553a653436bc0734080416a483e8f6b1e25200109cc37018c10f8bbe52d6f3991a85427e70b713cc4366e6c918310bf97bce425a5228471f4b4142f6de0cea762ae4d7cf5337f042651ef1672799b44fae62f77a6f764b6cba1cdc2906c926d6d6e0767417f40db3e8ecc5afac749bb6e25304d022a8aa749f7ffc2bee73defd9b8efe3031ff8c082d74fdefdee7797aee93c787d64a9ed3d3707d9e02324200109341260db1fb7fe69c4e30d0948609e09a01c3ef4d043e7391673ff78ac13fff6b7bf950f46d1c27eec48560e9417fc270109486081128845ae051a3da3250109486025022a8a574232f90bc33e6ac74749d85388bd229141afd36195ccbe54e196bdd9d87b6adcd734aaa924bc5ffdea57c59ffef4a772cf3b3eb2c73e9d75e1921ee281529b95cb41aba20cf05959ce037afc33e8e735c7f0fbc73ffeb1f8e10f7f58a6bd6ecf603ede42bad94313b9fded6f5f4e16b0ac19477836cfccd6ddc431f288b8d609d62cfc116fdcdcf9ce772ef944fcebfc0cba96574b339baa9f60cd73eae2364ebe55c39e6fa6c427c79f4930658ebc1d260ba11e54e348f9203dd45fd242f9bec31dee50dcee76b7ab3a2dcb5bb50e5107f8981a794dbdbaeb5def5a7ee8327b26fc6bafbdb62c87e3f09a545ee7b8c4397b831127da0e843cbcfbddef1eb7fb8e75e51e6e3ff9c94fcaf24dba5102dcf6b6b7edf3c76b65bffce52fcb6bb44d2cbed5b54dd9137587fd226fb8e1861e2ffcd2d636f9ad6baf72985dcec7291fd5e764c6d57ccf6d59d55ffc86c5cf7ffef3b27cd28ec0977e6350db83dfc8afec8e7e223e2655b79f29e9e48fb6127f3c67589d8ef8914e9e491aef74a73b957f83dad8b6fe824b3ef25cc2c34aabe999d46dd2d4d41e07af0827879fcfdbb67be3d463e2506d63f0ffa31ffda8a0ad41daf6a391ce260e39adc398e5f2324adf1acfe619b95ce667721ee91f258ed96f5d1b40fb443cebf67eecd217e5fc24edf417b46d51fe825d4e27e9aa8e9f72fcb94f5d1fa52ee19638441b42b88ceb60dc34b61b37bd75f11d36deaba68730b210872807994db8c9ed25d728e7c3da3b5893e61867f1ccef7ffffbe5987359cd7ec3f12c8ec48578c02f24e2075fc26d1258d07f32b68df2dfd47fe630c6cd87ec77d839fce83b891be9a2bf641c439b3c4ce0f6e31fffb82c7fb8a5cf65bc5c370eaa86d5c52f3ce048db0afb6a3f597d16bfc91be610c3da08c2abce77882bcfccd7096f94f615bfe3d6bb1cff51ca5bb421d91fe73c3bb70fa3f60194852813a49b3241def231f6ea3cac6bfa88675ddbc7f5aa443d8b3cafde8733e315ca34429ca95f83f635ef522eaacfaffb5d6d6b7013e9e03cda34e2ccbc97766550db00efdcf6100679445f463da813ee8fa34ba832a9fa87eb28e372e292fbfcaa3fc21d57daa4bf4db91814afbafc6b723fa86c57ebe7a863e17856664b391a65fc1d7e071dc997aeed6b973233286ede9b2e0115c5d3e53b52e874e87920494351152ad87ffdd77f15e79f7f7e6f509fddacb7de7ac5739ef39cde2037df1b748e72f6bdef7d6f4f015b75bbe69a6b965f95a6310f61afb8cf7ffef3e5cfe73def79e5d749e35e1c89ef7bdef39ee29bdffc663908db7befbdcb49169d19163134d27c2c8a38f3fc2bafbcb2f40a8b6569504e83cafe797cbdb72ab8e5cbd19b6eba69f556ed6f1ad037bff9cde5c02e1c10cfb7bce52de54f3ae2fdf7dfbf4f8974d96597151ffbd8c76a95f7e419fb49f3d734288be7e4e31ffef087e2f0c30f2f076c70dd77df7d6bf38d46f998638e29f31be579fec8549b7c8b38cc07d3cc07052a0355ace863f01671e388a270b7dd76ab1de02ca47a1071bee8a28b8ab3cf3ebbaf5cc53d8ef7b8c73d8a17bef0857d6f15e43a44be32b939e79c73b2b7f27cf5d5572f5ef5aa579583c877bef39d65475d7544f8f0ca7534dc4c32af23cc38523e3ff0810fd4c609ab2fda06de980821efa87f7c788d89c55e7bed5572a38da8cada6baf5d32e3632cef7ffffb6bebdf231ff9c862db6db75da9ee3160a3cef2d190265977dd75cbf8e5090e6deb79e79d577ad965975d0a16f026216dca473c77106326783beeb8635f7b15fee20873cada85175e58db6f2c5fbebcf1e37c4c228e3ffef83228ca287d011f93224e48753f53daf033cf3cb336af28a3c415455b16e2c77ef1f111c17c8f73dad8673ce319c5861b6ed877abadbfbe40d20f3e9c423943506a503673d9e0796f7ba66617d20000400049444154dbdbca050ddcf0c60f5b4a65c1cd9bdef4a6b22e739dfbf9abdd5ddabd36f538b7313becb043b9d0c218a22ab4cdd423ead328423e9f76da69a55326dbfbedb75f6dff8503c600d1776fb0c106c5b39ffdecde23daf4ad93e83b7b11a839f9dce73e57b6c330612c4059270df047f2de8fe477db31196d146d678c7b725428f3db6db75dc1372ba883798cc0f8e990430e299502d5723a6e9df8ea57bfdadbd3329e0f5fd28ddcfbdef72e5efef297f7dad736e91d77bc17f18863dd07ec721c331bfcc08b3628daa808278e8c9329eba188e13ae9a25d43294c789467dacb73cf3db7d766d6ed371c61e63219d7387ee8431f2aff38a72fe4d921942f9438a79e7a6af1ad6f7d2b2ef78ef49f6cafc1a26b55dae443358ca6dfbccdf8c10f7eb0713e807270fbedb72f1ef08007ac14040a53daf2a67e1725f3739ffbdce2bef7bdef44fdc263501f87827aebadb72e58d4cc92cb56757c9ddd5d72c925c5c73ffef1f2529eefb46d5fc7ad77392e9c8f5aded65f7ffd3eafcc6f68afc6ed03aebffefab26f44f95f2794e53c0feb9a3ecad11bdef0865e3f3aa8ee316e3efae8a3cb7a4a7fcd5c2a8c0c506cb3672f1fd9ae13e619b4b3d5c58faee5a2ee59712db735c497b6863687eb796cbcc71e7b14679d7556efe374e19f63b56d607e9cb7afc40d5b5af2876cbef9e6c5939ef4a4f29c7f6dda8fcc847dd7e907e917c9abaa6cb4d146657da35c548571166d44f4a7f93e637ec67a70a9d38164b7f97cdcf4b72d17f999d5f39c7fa43bf41d5577f4fbfff11fff51d6e16adf45186dc6c2f18c36e3eff03be848bcbab6af5dcacca0b8796f6e088c678e3937715a724f4169c64a2d4223c3003d0b8df15bdffad6e2339ff94c6fe09aef73ce17b0e930f3aa56d54df5371de809279cd03828c43d83e7a38e3aaa2fdcba0ea01a36bf510885841f14c4b913f8cffffccfdac912fe5022befef5afef4d3423ac38d280a15c8b0dfce37ad39141455dc716eeb91756915ca3d166d05cd7a9719f49108aa5134f3c7160b8b8cdc2802d78306189f3ec8673f650268d4876d336df0867be991207ca050aa83a2531f7b1dee27e35af165a3d20ae0c5218d055e3cabd10ac61dff8c63736d621164aea94c4f887118b0a471c7144e3e497f0a9c7d5384c3aaf233d1c51feb0c0d23421673076ca29a7147c6c254b2c8811572603754a62dca320664189309aea1f83e398c0c5330817d64d93d570c78015c57b965cf7f3797633ee79dbf2c173189c0f628ca5f471c71d57b0685427b41db44d28bfa21da9babbe0820b56e2106e989086f02cfa979cdf59d9f2894f7ca2541e36e5156594fcc61a3984bc22fe4d4a62dcd1c6d20ec7c224d7dafac36f9364850cfd444e3b7e50eae4b43369cefd186eb0088413421b7ffffbdfbf3c8f7f6ddbbdb6f538f719ef7bdffb6a1504c48db241396d9a5047fce388854a28d1e1d4a440a02c7ce73bdf29bd11978d37de388268ddb776ed3b7b116838e1bb1108f165e275f2c927f7b53f51e629836dc7647061b258a724e6d9947926e1283d89471e23307ee2d908e144bd6e53279af2ad0c7cc53f16d6e3596dd33bce782f9e9b8fc3c6b3b00aa14d67dc90eb69dc8b23e36414ed91cf713dea3b9377be13c2c438d8e226faad703fee3187855f78d2b6d72989b94fff899140359e6df381308709fc28eff1d65e9d7bfa45fae42a63f28971caa07e97f6efed6f7f7b71c51557f405ddd52f0ab6417d1ce3688c12c8d326c96d65d54d9ec7e47bd9cf38edeb38f52e3f6f9cf36a79c3ef38718c67a124a6df1f14679ec5f835fae8416e0937b72bf19c7ca46f59638d357a97fefbbfffbbaf2ef66eac3861b131d2ca42762889790673c7417d1af30cc62483dce43ccecfe5bca95c54dd557f475b43bc691f43a28d89b681459b3ac96d036134b90bbfe8174226d17e305e63818bb0ea848f79321eac0afa8b26a30fdc32e6a72ee736bd1a46f5f7b8e99f54b9a8c683df917f9c37951bc6913146cefd3a2cdb8c857916d266fcfdbf3e07ffa76d9e44fbdab6cc0c8e9d77e78a8016c57340ba3aa18c47d260b0ea87f55bc85a6badb5d26bdb589e306908c11a0eeb1c3a191ae5988c314945e954b5740a7ff948c384c543088d1c96b1acf63338bdf4d24b4b2531f7790e83e7a73ef5a9e17ca4635d6399277aac3c67c17a92572f79f597f81d7becb1bd4e83b096afb07ec34291893c9d4e74d484c3eaf0631ef3981cdc4ae758163cfce10f2f2de118ac46834d9a5114d02862f58530f08441087c36db6cb37200c36b4c0c8a62408da2868936d606e30acf6c929894e6fb5df26dbe99e674c43996825873504718c8a350425028f10adffdee77bf705a5a602da47a40bee7957c5e677bec631f5b6e19415dc49294c128c20001a528e5af49582062f59f3a427d0bbfb98c6085cfea2ce10de2358dbc8e7893376151c8352c1cb058c06a9449029658d1e6d1c650bf783db149b0b4c20a8109dd473ffad1de624d286ba9fb844fdd6782caa028ea2e75f4c94f7e72cfaa166e4c6e42b07c821771c42f567a516f5904430947bb83d4b557114e9b6397f2c164a2aac8c6e293fca73c30f00a4bcda6b8b180411c4248271cd9d284360c56c138dce4636e7f3ef9c94fe65ba5d52de51566d4818b2fbeb8779feb9b6cb249692943ff461f855026511460f543d82849f224068b12fa355eb5a3ec63e11de58889e8a31ef5a8329fdbfaeb45b0e604264c32291bc413257db600a4ece4090c9335faa15cae99b0e117a1dcd16744fcab8f1cb5dd9b743dc67a8a7e945744698ff21b4a589a51c786d503fa68da6518214ce4733b1d69e57e30e3b9a18c9f54df9adbc578661c73d98d6ba31c23ed706781220b791d8bf86dc7644c6c591c0f6501e153eee93718f750af516686e03ea7338f9f7013f16d5327c833fa11ca28e3219e85d047c18f7a18e1b74d6f8eefa0f15ef9e09a7fd44bea2163d2508850af1803136f2c5c8923ed59bc1110c150c7480bfd0a6534fa53c6b32894f7d9679fde8247a4937ace5f08cfc2723bfa88b89e8f8c19b1de240cfa941897929f5c8701f16d12f29fb8a2a4269e286c11ca20bfb33560db7c687a765ca79e62891d12e3dd282328e4a25c524eb0b2c5d213e1377d55566a331e7ffce31f5f6e37c1765a17ac58908cb6917c22dcb0a4ece21785556c49455ca27de3cd15ea04f18ce71207daa0aaa52dfe0609f937aac4f307b5afc174947a57f7dcaee56d94385296c9d7ac10e41a6329c6eb9c531f69cb832f6300dab1aee923cdf45151dea88f8ce9eade46cae36f9e8dd05ea274cb7d2f758c854ad244b8616dcb6f1611b000a55f1b47c62917395cd885e4f3b8968fc3da86273ef189e5b888712c8ca28d245cda14daf7ac749f64fb91db08c6421ffef0877b7d15633eda2dda67843680f166088b01c41de53eed739e2b859b518f8c0b4749ff5c958b41f1cefd61eed7dbf4dfc1b6edf87b503cb917f57f92edeb38656658fcbc3f770454144f9935958d55cbaa5061621215f79884ecbaebaef1b33cd24946a7c6055edfe5e37721bc4e454381a21261759455b33c810db7f9888280c96e08afb9c524886b0c6c51f8a0584198f49196611d5be978cc7f0c5c78753e0f0418e0c5c0934e85413daf5a23cb566c4d81c28434c74001a5194a864113441479bc828b3069802d61efb4d34e7dfb55912ff9f52ce2f7ea57bfba1736ca7c06c14cf8a26366f041c798d3503e68c2ffbae41b9df77c310dc55ee0803baf57e5bdf850ae604513133594c20c3a9185580fb2a28e7a48390a41394a1dcaaf5ee7816bb88b2383d8adb6da2a7e96d688587264a5e72e95ed10184462c513791ad68c04328dbc8ec8b1b0455b80d066bcec652feb4db8a99ba4857ca41dc21dee5ff4a21785f7bee30b5ef082e2a10f7d68ef1af98df5744c3e986c53f79954225833e2063684cd1f75824113e7d94299d7d81ef7b8c7f5c266508a421a4b131435b8cf83b59ec3099d74291f4cc0a2bcd0e6d23ec33604851e6d0f166075427d0b052df7b16ea58d8df69bf2c9c2da3bdef18ee2073ff8415d10b5d728d3bcba4dff85904f79a193c9da965b6ed9f30b739ec3a21fe9813bca30ca48d4731cc7f629e191b680bca22cd01ef31c16285040b4f51761d71d698f5020f0ca394239ca8ae2508a865fca0efc733f9b2d449b9411e3b67b93acc7f499bcfa1d425d6212898520c284803c1ad487865f16028209e59c3c8a32116e72f923bf49fb42ee5b23ded523ed48c49f7b5dfa22163f43614958bc129f17b8a92fbcd65b557ae27690b4a913d465fec813ca3b6d21632cb6168876826776496f5d9cebc67b75eeb886f286d7c3a9ff071e78601947b63b4149497942a88b79218beb7beeb9676f610237947ddad4787387be1285eca07a4a7f4b3b344ca82fb489481e33c391bc0c219e55c11f8a8e10da78c69031eea6bc844c3a1f225c8e2cf0520e10165579253eb703f437b415f1064f1ecfb1d887823ca4faaa3b7d0d6df991471e59b62fe4250b1394fbae7eb1420ca9b66f8cd3317e613ba05898a19cb078d056c917cfaa3b569fdfd4be8e5aefea9ec1b551cb5b9dff51e3c8335032328643680f5ef18a5794e3af0817bea425b6c7a3fda08c774d1fe1a3d0e78f376d0993ba4a5e66e11e0a4a04e539e361048575b6d4add631c6eab4e7bc6d45d89447da85981b96812c807fd578d7b50de44b2c24d156c47c94b9f036db6cd3978a49b61fd5393171a38de04d992807b4b1312e8f769708d1be30a6cf7b27536672dbd917f1013fc649ff422e176dfa6fc6c294ddb6e3ef0158cb5bb4cd936c5fc72933c3e2e6fdb925f0bf23adb97da64f5b4120066519060a8fe898e37a0c18f9cd6a6e5612871b2ccd62524bc7172bb1717f9463b6d40cf7285998b8304064409d270fe1a6eb918909fb4166052b8d1f964e2128c743491cd738b2df61ac0233a8c913b0ecae7a0ea310cef19b05eb89c81f261d2869f2a019b7b040a98f220b211c2c16e65a46cdb7f9665ae582757a5612733f77fafcceafb02dc47a90eb43d43fe29d058ba86142d9461991857287e546088abeea9eb9b8a99be84e33af51d6c56094e7b3f732c72cd415ea465c67129907eee196b8672531d7b1eacccc1804879238fc51e7b39b9c0fe18667d7596fe3365e4fc46d9ddf08a3eb31873d4ef960a09d956cbcc9c040bc2a9409eed509d67ba16886058b18393ef8e1376f9f54dbb6baf0b8064f941f5921485b19798be5ddd39ffef495bc33e1cb7bd31237dacb3c51a0ef23dd595008617542ff43d98fb6beadbf1c76dd39939510ca78c487b8d6bd9e1a6ff2e0873a17ca1278c7a435c28be338edde24eb31fd545800465c38a2088bbe973e0fcb9c5184f485450be50c8b982c28926201021e51fe1753df4a7a98ac330e220d215dfaa25cafefb762c12b2b89237cca61dd382feed71dbbd48968270897324fb9cbd225bd391cceebc67b553775bfa38de15ed4cb70479f14658d6b28966973aac2b72c72bde4adb46a5af1435e33261d45495c7d46669995a95577fca6fdce4ae270c3383fca1b6f58459893cc877856dd91b6b6ae4f40f15927395e2cf8d16657058b6c949421f1e65817bfe45f08e58aba5a15fa9017bff8c5bdcb2caae776bb77a3e3499bf635f29547d7d5bb51a294c31856dedac431e2c0db98e46d5550fe64a57b1e63e4b88d9b3ec2090b619ec99b63d5ba9ae7b9cc8129b3b889c55efc51e6eaea18e3a9fc862c8bbcf1a619fee65bc66d1b886f6e17ebca42ae6b5d7409e40d061ed53682ba16fd3c6326def24050e867452863c8dc5f958e56fce3cd40949f6d6550fa177ab9c83cc6190b77197f0fe33cc9f675dc32332c6ede9f5b025a14cf016f3ad9dc81c623b1e8cd03605e5963dfb258b9a5b1cd0d2c2b76aca0723d0b1d350d6c749cacbeb2aa1f83cdec36ce99e431e18fce9c57be99c4d0a93250640040c3bffbeebb8797a91cf908421e68f01098d058220c6e98c8d6a59b5564ee85d525560a4cbec6956ade64653dcc9b5e3b842f9c63b5742e061a6df36dbe99e63c8177d344387798912f0bb51e3ced694f2b0737d50113758ad7a9187c62c5344cb070185457f1dfc42b18e5674c33af4957b43fbc5ec9002c5eb5cd71a06ec285b8e006251a75294b56cce5eb714edaaacaf17c2fcee3887bacd4895f354f580ca20dc1aa20b7a9e1771ac7b6e583016fb4cba469d047c6b0d462810ac659b27539ca78dad13aa1be910ff166469d1bae513ef3c42adc6596945126e2b1c8166e4843b6bcc552010b2fae8710df030e38a04c2bf1c1529db60ee54ef563a56dfdc5b39a8e4c845994200db168cb35f223d2c9e20dedfc0f576ce94199e61e650d6bdc989c6141174ad4fc2ce2dd548febdabd49d663ea5eb54e44dc72d9c86ce37edd91f240d98bc92756e2796186574d63e2c6b3b122421672df5a4d27caa7acdce27e97be88459d50901156b55c732d048bb7fc46425c6f3ae67c1ba72ed58597c3ea925ec64655a91bef55dd8cfb9bc58de89318b336d531c2254e6125451da7ddac8e3f697f58f49ab634b5ebb41dd42fe2c6189dfce89a0fc3c61758871e76d861258b9cff30802fed5dddbea3c42bd769de34a8fa0f8e5838a244e63e8bb55dfde6710775ab298d2c1ab04010f99efbc6885bd7e324dad7266e5de316fec78d237dd2bffffbbf97f955ad23f4df2800799333daf9784ed371dcf4d19f60c14ef88c3b795e28aba91b316621dc5870a3cf8c7e98eb552be41c37fcb01d02e315ca22feb21141763bd7e7e3b40da3c4ad6bfb919f411b5bb710879be8e7398f3213d6fc5ca34fa5ada913f28b3775d94b7bd2b2d0cb45ae1be3f4df312e85d7b8e3efaa014e664e799964fb3a6e99c971f17cfe09a8289e721ed000f0e5e82665230a012cacd8df87cac91faf1d62d180e4ed21788d7d14a1c3239c41c2a00acb8b77bdeb5d3d67343aec6bc91f823531136394c7d98aace7a1e30971a8eb3418c047fc69e0d94c7d148957f047713bc84d56f8e6c96f9d9fbc028a4533f9191d649dfbaed7dae6db7c33cde9a62ce50145be57774e5958a8f500e50b13252cea98888412ac2e1d4dd796adb06e1826599134cced34f39a017b08d6ec6ce3308a10a72c946314cdc3a449b9d5e42fea1e135b9455e4094a3cda9110dc842236ae4debd8a67cd0fe84e297454606d74dc2c4064bdb3ca8a3be500e43f2ebcf712d1f69e363d295afe773fa2fe252956c81caa2c8280b23c48ffc40d148df176f45709d8f1fc6071079268b28bc4699add9dafaabc6bdfa9b32090bf605252e5811333165821aca6f94eeb0a67c9106ea3e6ef296274d93bc71dbbd49d6e351ea5a95c7b0df4cb4c96fca2a4a73dae868d7f3fefed932ac6bdf3a2c4e93bc8f452965220be5a26d5f04a7f03bacfda3bcd3768caa8499569de8925efc6621cd75e3bdeca6cd7956fc117ef4017561f1165370252f68bfe24d85703facbd0c775d8fd5e7d68517f93fc97ca87b0ed7e0021316b869fb58d408238c263fc42bda46e63a83c632e44bee43a80f5dfc465de2b9d952bc1a57ee539f42514c5b158ac5aadbb6bfa7d1beb68d4b93bf3671a44c3056a27f633c053b2cf8ab75bbe9995dae33e6a5bfc5008ae7f1a1c4d89e8db2197d094acb58d8c97d26650d83a726216ddc67de4bf88c43f2827693bfb9b83e4edb304a7c485fd417dc77d125c09a3a35aae4b1296f8755fbd41c4eb4df931e9f2ff472d1b6ffee32fecedcabe7b9bc4ca27d1db7cc54e3e3eff925a0a2780ef8c760afee510c9e980863d513fbd2d1b032f8c52a2f37ee75feebaec5e0abee5ebe86b5deab5ef5aaf2a37675db363028e08f555df6b7e47598490a8a00569aaa8262271425d57b837e8f9aee4161d040e62d0f06b9e51eee4318788cd38186bf718f6df26d3e9956d38732215bb155ef577fd3c92fc47a4019659fead8abb31aef517f4f7a5034cdbcae6b27464967b56e526f269d6ee281d5301f4c8b49445ddc782eed6e9b36a62ebca66b6dcb477e7b6250df11cfad5bc41b36c10fbf1cebfce7fb9cf3a64675804f1eb62d0f8449782ca2b21f3c1f07cdca7cee3308e62d17fe5004c436276dfd11e630c19a1045318245271649f1aa326d3b0b83a1b827fdbcf28ef229b65e206e586ed5c9b8edde24ebf12813cfba380fba46ffbd6cc522176304ca3a0a265e69c58228f656a57f8fb77ce0b5d0fbd69cde8877bed6a52fc26f58574dbafd9b569de892decc8df3a6f15ed5ddb8bf4769239bc2ac8ed7a28e37b99fd475f22b2b4d87853bc97c687a166fc68db2d097fd13afbc784cb91e55baf8a5bd89fe9b6712d6a0362edc12b76a9e8f1adf41ee063d7b90bfb9bcd7268ef4817c203df39bcb3863619adf94e52d2de6592c3087f0f645e429465271dea55d88b0e7e3386edb304a1c27d97e508e82f128cfce6fd10cb262252cc6e5e3843dcaf371b3d0cb459bfe1b4e5dc6df83d84dba7d1db7cc0c8a9bf7e69e808ae239603e4ac317af0545e7861f26960c26511cf09bd7b69878859b1c753acf1026fe343ca308935c26eb34a4343a581284155ef86720c69789db7c1936c2a83bd6a503775868d161a0d041a1c82bcf345c7583d048376e07ad1ed73dbfee1a9c9920c27c14c17d08cab0ba38c6fd491ec7cdb7f9645a4d7753be57ddc5ef85580f50165127b29298f287a209cb0d2c13f83befbcf38a0b566c0d309732cdbc66b128146958e9609943db5115ea05751821bf978d60355d0d63dcdfc483ad7bb2c2313e0ec59ec6ac6ab355cd5bdffad6d27a24d7dd719f35cc7db4996dca07f947fb4d9b17eddba0e7e5f4e28e74c13b5b720cf25f977f55f7754a7d9e83d565ecbbca6bfa6cbb505d148838457920ac98301006fb50f387752e7d0f7f70cbe9e21adb23c53ebb6dfd55d355fd8dc50b964c30c12a9bb4441e463bc4917ca15ca320c61a242643d4fd485b35ec71dbbd49d6e369f54b6c9f80a218a15d60d11bcbb3282fb0897c27cf1643df5acdb7fc3bca409b31196337fe62116b50bdc34d30cccf1f743e8d3ad125bdd531e8b8e57f505af3bd5116bab2fb7c3ead7a919f51773eee7327990f75f1a9be0d0253de8c60618cb126fd26ede149279dd4e79d6d32682f5900a1fc8dd25f45005dfc52b6a27c71acdbea279ec331dce66b933c1f373f27f9ec51c31a378e58d866cb53f297f1edb215630bc6b68ca7c8eff880d9a8f118c71dfd29e36ac6329431e6a88c31d85e11215f790b2884b2386e3ac3ef42394e23fe936c3fc6ed97282f316740613d48087b1ae95f0ce5a24dffdd75fcdd9417d4ab683339766d5fc72d334df1f2fafc10f87fede2fc3cdfa70e219007c16c8330e8d598b0566132324ca8b83151a113a121c56a2b5ee1624f4ff69f8a061ea50593752c86ea1401d5e7312918555151f51b134baed378f2cc7c2dbba753c1da94fba46112028f90af7ffdebb51f0c8bfb79458f414d533cc33dc7dc190e1a58875556d56f9b7ccbfbf6cd07d39c8636e70bad1ec0337f40878fd1f1d1a38520b90c4e3aaf7379a59ed47d282418a0e8a3ad88fd8aa731008c6771e4e319a15c24dd2f7de94bcb494576431ca6a5b0c8cfa14d6a5b3ec83fe28f60ad453bdad4eef3e6497ef53ae2304e1bc6deee6d25d74bf615de70c30d1b838209fc891be98bdfd1769346feb01042e0f7ee77bfbbb75f3dd64d5b6fbd75f9f151c219d75fae174d9164504cdd662b0efa3c164e631b0f949c84811b94274ca4b9c76bb951a6509647de353d63d4eb39be8439d7fde028f164bc40bf4b9fc4161de4696c63429cabdb708c532eebfa569e13ed486e8baa71adeb3bab6edafece657e9c3159947d94c09c53be590ca8131620229d75f7abd7dad6a55cc6aa61c6efb6e90dffd33e66cbdcf8086553d9a02d8dba4a59c4ca79b1c8b4f28172c61ee3216cf7c3c7aa425110d7ebda35aeb1fd11730fda4bb6e469daae8d05b7534f3db5542ea2dc63cfe22e7ec93fea52b4d34ddb4990be58ec232df166649483485fdd11bfb13552ddfd59be16ca58d2481d7bf5ab5fbdd21c2be622d3e240f9623192ad1911b69f607e1bdb0cb235455662711ee594323968ec44fe8741107e18bf20b35a2ea6d57e94d006fccbf372dece62fedbd4efd07e4f43a9388972312089e5addc5fe7f3ec8f6d5beaca57dbfe3be7e9b8e3ef1cafea39f5a16bfb5a0dd3df8b97c06866a78b377d0b22e64d8d468e1c0ac9dc80e087ca8a451cc2efb3cf3e3b7be93b674fc0430f3db4fcfbd0873ed477afee070d72b88f2d2fb23b943b4ccaf39e72d128c5400bf7288feb840e611485729d5f1aa878bd1785754c3cebdc9e72ca29653a0e3ef8e002869310940021280a623011d7e248fa786d3a046bb45184f4c5e486d7ab43c19ffd92dfb15767bede36dfe69b694ec3b8e70bb11ed0b187604118caadb8c6913c1ce755ebecb7cbf934f39ac1480cf2288b4d7583c9dbe1871f5ed6cd030f3cb06745d7255dc3fc32490d597ffdf5575212732f4f0ec2ed348e5dca0783da98fc5086d896a14958c8837555721b868567583156dd31d163cb80b692fb07be92dc34c867807cc8218794e5e1c8238f2cdd1d7ffcf1e56f3e9893f75a8bb8a0987dc94b5e123f7b5b64b4f1471b32aae40f98b1581a93e1f8b02261c5822af98c1b04c5ca24f7379d663d1e95c53077a439143494c34f7ef293bd6d2778e3a0faba732e976dfad62e7de7b0b48c72bf4b5f84dffcd6131fd6acabbb5cbbf0c20b47894ee98636625275a2aa60ed92de9113d0d1216329e289501f072d7c513e436863abcad0b8b7d08ed3cc07c6d8d1fef21c14b8755cf2c24de6439d0ca1dc521eeb04251f0bb9e451b869eb9778e6c5d3d82bbdeeb92ce6e5b8c7e240bcb1811fc669757591b84e73d129e25bad77717dbe8ee44f66f6f4a73f7d25253171cb0b2f83e2da257d2c3c847ffa8c3ce7aa8ebb7903358f9df8585d935c72c9257d8605e16f21958ba6b88f7b7d9aedc7b0b8f0365fb427cc759b3ed24a998b8fe30e0b73dcfb932817839e095fc6ab08e9685a5caa9bd3e3be6dffdd76fc5dd7d6e5f44da27dcde179beb809a8289e83fc8b4eaee951341e1ff9c8477ab7d99c3f14a5d9420b2b132617556122cb2bee21f9036b71ad7acc56c70cacb1c6ab0a8d499d2228a70725435521cca0f3031ff84035b8917fd348e50fe0f0ca715dc3cbb55054e3078bde369215f4f847c9147be8d2889f78e2893d6541840f1bf6a78db4d311e6bc0a774dc750ba134e5de7c1a2401dfbb6f936df4c9b388c7a3db35d08f580c95528c5984cd429fb19d0c66bd9a433d79b51d3ddc6dd34f39af29717afeaea0671bee8a28b7a758601789e10b649d3b87e981c560743fcc6a2295b1d473d1f37fc61eebb940fda92cd567cc53d046bafba36820177934229b761a4fb84134ee85b88246cae9f7cf2c92b5d8fe78e72e4d5b7b018a10e7cf0831fec2901c23f6de8c73ef6b1f8595a5192c6e8e3b84f1bcfb12a61cdcb75da5adcb4f5570dbbe937afb6522e58106122cc33a95351eef117fb10730f2538c284281600cb0b1dff4db31e778c5a9f772c9dc94f78b17764f4a7bc61411ab2e47209bbbaf6837239a86f6ddb77e6787439efd2176dbef9e6bd4753b672bde0064c78dd1b8bb92abb9ec79a9349d5095e0d260e59baa4378733ad735e81cf75f38c33cea855eeb1a093fbe3273ff9c93d05c634e2160b4c930a7b5af9100bbfc493bccf0ac2883b8b8db120c6b518cb5046b1f80c614c5eb7cf318bcad94215e55f17bf3c8fadf84278abe6b4d34e5ba9cf672e421b13423da1cf4272ba7973a7baa84f3b84214a8cf3228c691cebeaddb8cf997479a34d0fc916d971adca36ca44dccfc72ee9637c81e530c2583b0c82c8cbaa710e71ce6327dc3216ad0a0ae75c9ed75b6fbdde96510ba95c54e33deaef989766f7d36a3ff233eace592c0e252af7d10df0f6515598f3f261c1494835fd932817c3e295cb0ddbb155fb51c6ebb14d5b35acb6fd7797f177350ed5df5ddbd76a78fe5ebc04dc7a62ca794763f1e637bfb9f6a36d3c9ace3614171195bca28f050e9352066ac8273ef1897232c62bdfec1b46074e47c8a00661829b2da2ca8b35ff50aac62ba3c4f1b8e38e2be82cb116662246838db55a0c3e18d4c5ab39acb8d2f0f24ce28ea5d8965b6e5976b4c413c546b591ac89c2c04bec6d88f29be7f31c56dc78258e0126f163d01903060262658d09c3a812f1e378ecb1c796130d9ef3bce73daf4c075b09c4eb4e0c22b17a43794d87472777fef9e7f726c43c93fc084b8561718025cafce82ccf3df7dc5211ce849b012f2bdd71af1a56977c9b4fa6830691d534d6fd5e68f580572619183089a0dcb04f1b1d2b8b3c288eb0f0af2afaa94f284db3457e5d5a27716d9a798d75097b0123513718846271c9409e74e6c9e6f2e5cb4b5651e72691beba30962d5bd6bb4cfbf5c637beb1dc0e847ac96bdec42b4ffac837da182c22b3a5632f900e27b4455dca076d41b47f44e3cc33cf2cdfac8033ed071f7861c1a449689fb7d8628bf243a4b8412985653779c1e48af605eb8d68df9bc219769de7a070e183a7086d324a019484589452172e58b1477758341377dc7364f2178a1bb66fa00e91174c2cc827d2180b81844dbf433bd2c65f1ec413d620e119580c67cb171648b21298f2423f942724ecdf088f49ca34ebf1a4e2c92467d98aba177949b8f0cedb1dc5b3e0d3a56fedd277461cba1ebbf445f4df94ad28d7f413947d14e82c2eb120146dd4a8ed65dbba94eb443c8b38d06eb2e8c1e2deb6db6e5bb68dd3188376cd87ec9f31f39bdef4a672dc49bbce074d297f8c69e9935850a30d0ca17d0ee5535c9bc4313812166d228614e40f1fc5cccaec36cfea52ee063d8ff68e3e32f8b050413f4339851d8b3ff96d1dc242d176d96597957bd6a2ac60dc1363561470b49d8c9719ef44198f38908e60d1c52fe13027a0fe201c0f3becb062f98a3e0ecb7dde6aacce45784b32da68e2469bce388d7c43a18cd29b313e86339499aefd63a4b9e918e5a5aede453c9bfc723dfc735e2d6fd9da90fbe3086596fe3bdaf418cfb29510f7609d15ff84cd5890b79f7013fbf447fcdaa62fe29c3f6a17d728a3758c729f89dbb3ce3aab2cab8c2de8b37943353e50cb7dc2e03b38210ba15c445cda1e191bf22d0ede0ca68e6db2c926f3da8ea31f883903ed333a11ca096f60d1c630e79d9492186675e9ef5a2e86e5056d5a18f2516f8e39e69872d1823a502d7339acaefd779bf1777e7ed379d7f6b5295caf2f3e022a8aa790670cf4a38324785653f91b45b6db6ebb62595278e067e79d772e1b59be828e3088a9b300a6c1d975d75d7babfda5e3867f748ebbecb24b6969164e9898c71766e35a1c59a58d57bd1854a2b00db74c9643a91aeeabc7cca37aafee37f17bc52b5e51a63b2c94189cc4a030fb6142c39e6aa30a9ce8a062604bfc5170733d94f6286a1840a2e440883f0af9bad56906ab4c54c6112c8b1880d369220cacb362a229ac2ef9369f4c613b6e19a8325868f58089660c9643e9588d73fecde0817a8bc22e2b98b29b499d4f33af19406cbffdf6456c5943beb2525eb75ace6433efdd3ccd7433c143811f4ac93a8bbd2a5f26402cd651b69a24da9fa6fb75d7c30aa66df960f2ce4746195c87e20865377fa30aaf6552de62eb1eca280b5c93169e435b0a4b84817f7ec3253fef294f794a6f5f56266e285262324a3eb06856272c80d237226dfdd585db748dc5d6dc1e3309c88a352660d4835810a17dab533c55c7024dcf6bbadea51eb7a96b6dda68d29e3f6a475a50d03129af93ae7d6bdbbeb32e2e6dafb5ed8b60f5c217beb05cf80e6b79daaba63703468d5f973a4159666c171375c63dfcb13812e5a16d7a478dff3077c3ea11f1278eef7ad7bb7a41358da9182f32b6a46e4d5a1857c65641b00b4b4cc6cbb4215debe434f28132499d3afdf4d37b3868cba33def5d4c27b4f1b8e7ed0b0c5676df7df7822d8562fc4cbb58f75621cc9977047b9eddd62fd161dc8f8237b687205e4d5bf4a10ccc5b031107faa33c8e61bc1f63fe94dcdad3ae79394abdab7d70ba38a8bca128ee1247dae9bc3d0e8b5bb1c095a2d03ba5bc9f73ce39e5e2007e2791be089c05b6bc1841de55f7bf0fb7dcdb6bafbd8aa38f3eba977ec6412cb65725ca1fe3c690aee522c219f7d825af78168a7dc68d315e8db1098aef90b6ed478419e18c7bacce19f0cfb834c6a6e38657e77e58fabb968bba67e66bd4c53cffa03f7ddffbde979dac741efd6b97febbedf87ba5c8d45ce8d2be762d3335d1f1d23c1198fc48699e12b2901e4b07992795c3e2c6c0158bd4fdf6dbaf9c6055ddd3c0f1210106739cd7090a997df7ddb758565132d7b98d6bb87dcd6b5e535ab7c6b5ea11cb0b3a17be4a9f05cbdbbc3f544e2fabf4af7ce52bcbafc1e38738e7ce2ac2a1531b243c7bfffdf7af9d80e38f4e9e55c2d7bdee75bdd79f078597ef61fdc9c43e4f66098fbf102cf218d432100ec9eec9b7673deb59c54e3bedd4982fe1af7ac46a6e8f3df6283b96b8979f4dbaf6de7bef5e390a253d6e9775c8b7f9624afe87c5f5b07c0f1e39cd5c5b68f500c555ae03395d9413567ad9073c5ecd270d51c646d91e06f75d649a798df5e49e7beed97bcba01a4fd2ffcc673eb3d86db7dd7a758ab4c75b09b9ac57fdc6ef71dd44f9086b25c2c9f5957689ba4abc73d839dfe2d9f988c224dce7762ebba93bef523e088ff24fdb167be3569f419da27d42418e441cb3bbe73ce739057fb90ce6fbe4e38e3beed8bbd494bea6ebe191bc66f1204fb8e21e472cbc50082c5f61ed15427c5ffce2179793f5a62d407043df483f10564a6dfdc573473932c9ce65272b18f04f1cf235d297f79f8d674ca2dd6b5b8fc76d639afae948cba023e38f9c8779eba83a7f5dfad62e7d675d5cda5c8bb6a6cd980cbf8c8f783323ca74c481b668830d3628c78251fe9adaa77cbd4b9dc02f13422cf6390fe1f9f1bb4b7a23bc1cdfb836ea917a146d4b5338b493af7ded6b7bd6aa849ddd9216162d694b9adac348efa8f1aabaa32da64ce4ba409828ba388ed3ff1136d6fab00f99443e4458f9c8c218d6e34ded3c0b3f58eb62145127f4912c8053769b1812c6c1071fdcdb3a28c2e9e2171e7cb496ba54651ee1a3a462affbbc4546dca3ff23dd9971dca3fcd37766239478451c375ddb57380dab771197a6e3a0f2d6358e8c3f5ef6b297f5c6ed8497f396f43347d96aabadfaa217edd624d217011356560cb34011f38970938fdc3be8a083069647de92689a33772917391e83ce334bcebbb60db4698c39ebfa948847dbf623ef33dcd446c433e298eb0ad760ca021df5b14ee87fa8a7517e72db5de7be7a6d94f4772d17d567e6dfb0459f42d90c89b4f09b79093a1e5822b96d27ffdb8c85cb8056fc6b33fe0ebf838e5ddad74994994171f3dedc115865c58ac6bfda3c2eac80f2a4bc4d386dfdc4f39bfccf57bc9ae233c9eb587bb0450159474344856c1af88efa5c2c0122ccb06043413a2c5cdc6219c3e4edfaebaf2f07f3d50e62d4380c72c773b0a826bdacbc621d175b600cf237a97becbf097726edac14c226bf8adce539848bc579ac46b2723e6a27d936df88ef7c33edc20cbf0ba51ec0118b4a0621d4011610b2d288fb61f1425dad0ee4ba7218c5ff34f39ad733a30c33e0a15ee4f48f12bf49bb214ed75d775d594fd9fe80f864ee581e5d73cd35653d0b4b8449c721c29b44f9a09e930eda0906eab4b7e3b63fe411d68bacf4c30226a3b6339196518e5806d397f01c94003c8be330c11fafaf527fd8a3157fb4b379425517465b7f75612df46bd3acc75dd28ec516db5721f4915874d5295fea9ed1a56f8d76a74ddf591797b6d7baf445bc961dd637514fb0443de9a493cae8608dbac30e3b8c15b569d7892ee91d2b212d1dd35e325e642c4a9f8ca299f66e585bd2f271f3e66d1af940bf49dd658ccd1f0ac35c97b154842ffd0f75bd2acc4b220cfa597e8fdac776f14b3c727b401f44dcc9fb5184f2423a8903e966ac366be565140e756e684fa24f660c415dca7343c626f4dd5c8b4591ba70da5e234f680f63de8ff1525ea81d146e2e539c5376c79963cd72b99846fb31282fe21e7d3e6ffc3197674e3f4e3d8d30ba1ebb968b41cfa7dd237d8c5fa91bb425a3b64384dba5ffc66f9bf1f7a0f4c4bd2eed6b84e171fe0844fb39ae7e5445f1fce5994f968004242001094840028b9a00af99c7565458f7b1a7a4b23281ac00665f62deccaa4a552982b5e7739ffbdcaa337f4b40021258120458ec39eaa8a34a253e6fec1e70c0015359e45e12304da40424b02409b45514ffff3b4d4b129b899680042420010948400212189500ca4c2c5710949fb117371679f915e151c35b2aeef26bbb28d6f9785d16b87ef4a31fed59ce61d1a8d23d13f25c0212582a0478d38236f1431ffa507924dd6c45358d37a1960a53d329010948601c028337891d2724dd4a40021290800424200109cc34015ead3ce28823ca57b4734299c4b37588524f608d35d6285f47e5154e14207c60e9631ffb58b9cf384af6ef7ce73b7d4cd977972db614094840024b89001fb6fdec673fdb9764dac8e5e93b077d37fd2101094840021327a045f1c4911aa0042420010948400212985d02d5fd3bd95fb7fa61a3d94d7dbb94a1e8e023b6ecc918c23e8d2888afbaeaaa3e253196d9f94393e1dea3042420815927c07726aab2e5965bf63e6a59bde76f0948400212983c012d8a27cfd410252001094840021290c04c12609fc8b5d75ebbb7fd045ffa666f625f091e9edd7cf089afa35f7df5d5c565975d56fcf8c73f2e3feac34796f8b00f1f1ad96cb3cdfa94c9c343d58504242081d921b06cd9b2f223d02ca4f1a1682c89e973140948400212983b027ecc6eee58fb2409484002129080042420010948400212908004242001094840025325e0c7eca68ad7c02520010948400212908004242001094840021290800424200109cc2e01f7289eddbc356512908004242001094840021290800424200109484002129080044622a0a278244c3a928004242001094840021290800424200109484002129080042430bb045414cf6ede9a320948400212908004242001094840021290800424200109484002231150513c12261d4940021290800424200109484002129080042420010948400212985d022a8a67376f4d9904242001094840021290800424200109484002129080042420819108a8281e09938e2420010948400212908004242001094840021290800424200109cc2e0115c5b39bb7a64c02129080042420010948400212908004242001094840021290c0480454148f84494712908004242001094840021290800424200109484002129080046697808ae2d9cd5b5326010948400212908004242001094840021290800424200109486024022a8a47c2a4230948400212908004242001094840021290800424200109484002b34b4045f1ece6ad29938004242001094840021290800424200109484002129080042430120115c52361d2910424200109484002129080042420010948400212908004242081d925a0a27876f3d69449400212908004242001094840021290800424200109484002121889808ae29130e94802129080042420010948400212908004242001094840021290c0ec1250513cbb796bca24200109484002129080042420010948400212908004242001098c4460d5915ce9a833816baeb9a6b8e8a28b8aabaebaaaf8c31ffed017de9def7ce7e2c10f7e70b1d1461b1577bce31dfbeec58fbffffdefc5b9e79e5bfcf5af7f2d1ef4a00715ebacb34edcf2388f04aebbeeba325f89c2631ffbd8e2ae77bdeb3cc666e93e3af2e1a637bd69b17cf9f262f5d5575fba304cb9042420010948400212908004242001094840021268414045710b68e37841c17bca29a714dffbdef71abdfdea57bf2a2ebcf0c2f26fc30d372cb6de7aebe22637e937f6fecb5ffe525c7cf1c5c53ffff9cfe2f2cb2f2f0e3cf0c002a518c233aeb8e28ad2cfaaabae5a2a9d57596595c6e7796372047ef39bdf14975e7a6919e08d37de58ecb4d34ebdc07ff7bbdf15575f7d75f99b058065cb96f5ee79325902d57c78fef39f3fd907189a04242001094840021290800424200109484002129871022a8aa798c17ffef39f8ba38f3e7a250be29bddec66c55dee7297d23a18257116948ebff8c52f8add77dfbd4f598c523894bff88f73fca2443ee38c334a25f22d6e718b3e25720edbf3e91240499f052bf2d34f3fbdbc8405b88ae24c67b2e7997dae1b937d8aa1494002129080042420010948400212908004242081d925d0afd99add74ce79cab0fc3de69863fa94c4280ab116bec73deed18bcfbffef5af723b0a148a7ffad39fcaeb3ffce10fcb6d269efad4a7f6dc718295317fb7bce52dfbaea344e63acfbcd5ad6ed5a744ee73e88f8913b8dded6e57b2271f619f252b2f51ee2b129080042420010948400212908004242001094840021258a80454144f29673efde94f17d75f7f7d2f74b69478e6339fd9fb1d27583f626d7ac00107146f79cb5b8a5ffef297e5adcf7ffef3c5a69b6e5adcfad6b72e7fa31c3ef4d043c39bc70542e0ee77bf7b71f8e1872f90d8180d0948400212908004242001094840021290800424200109b423a0a2b81db781befef6b7bff53e7086432c89b7d9669b817eb0087ed18b5e541c71c411a56530d6c1dff9ce778af5d65bafe7ef1ffff84741d86c2f11afd7738d0fdc61d18a701fbfec5b5cdda2a217d090933ffef18fc5cf7ef6b38223d6caabadb65a71b7bbdd6d258bd9ba60880b7ed99f17c12fcad4dbdce63675cecb6bf821fda489e79126d2cef3b1cabdfded6f5facb1c61abd34e3897b3ffde94f4b2b6cdcdce94e772a9f537d0861c10626c103bfdffef6b7cbf0b8c607e8d80a240b7bde5e7bedb5254f94f4a49f78d409f127fc6ce91d7995dd130fb609c9eef2fdba73b62f218e704108f7fbdfff7ec17ec894abeac70f890b5cb88f10e7fbdce73e25dff2c2807f84fde31fffb82feff8d02256d3c384b4c10b6e94bd61cc080f7748b6bc662b16ca0fd7f8c0639473dc11bf9ffffce7e533e071dbdbdeb6b8d7bdeed5e71f774d42be13c76043d91c357d4d617a5d0212908004242001094840021290800424200109cc0a0115c553c8c96f7ef39ba58291a051743df7b9cfed5378353d32145f3ff9c94f4a27dff8c6377a8a6214c0871c7248192ecaadbdf6daabfca85dec811b61fee10f7f28f6df7ffff2e7bdef7defe2e52f7ff948cfc603caddf7bef7bdc58f7ef4a308aeefb8d65a6b153becb043add217251c71b9eaaaabfafcc40f9495db6db75da9d08d6b1cf9c8df49279d545e7af4a31f5dacbffefae56f14af59e0b8db6ebb15c481385e79e595f976798e421565fb7def7bdfdebd4f7dea5305d6d9081f38439179ce39e7f4eec7c9eaabaf5ebcea55af2a9597ef7ce73b4b8562dc8b235b861007148c2139fe8f79cc63caad45d82ffa2b5ff94a38298f5ffffad70bfe90cd37dfbc78d2939e549e37fd43f10a1794c23c6fbffdf62b3f7678eeb9e7f616059ef5ac671530435028f35cca4c5560b7c5165b9416ead57bfc86f5473ef291e24b5ffa52dded32cf28c3996b38249e30e6638c9c57052533dbada0f4cd8232fbf8e38f2f2f912f6baeb966995e14b948de6b7bd833962f5f5efa2f3dd6fc4331fcfef7bfbf645973bb548453aeebd257e7de6b1290800424200109484002129080042420010948601609a8289e70aea2d4e2837421583cdee10e77889f038f28f45074a2f443b2a56558ad729dfb3c07ebcf4172dd75d7954ac0b0461de416c5dddbdef6b6d27d933b94a2af7ffdeb8bbdf7debb2f4d3c876d33b0f86c1294df6f78c31b8a9d77deb978d0831e54ebec8b5ffc62c15f9d90de934f3eb9dc8a03a5749da04c3ff1c4138b7df7ddb7b436c50d4c43503037094a72b69040695a5552871f3e4e77c20927944a7a2ca0ab82929e785e7df5d5d55b7dbfb18a1d45080f4151cc56269ffdec67fbbca11847883b1f4d24fd75429c508ef3914414be59b0eac58afdf7bfff7dbedc77feeb5fffba78fbdbdf5e2ada1ff6b087f5eee1f7d8638fed6d97d2bb914e7efbdbdf16ef7ef7bb0b94b928ab43226dfcbee1861bcaf847b9e75a947de24e9eb26f77935c70c105057f75029ba38e3aaa67bd5ce7863892af2caab0b8a2484002129080042420010948400212908004242081a5484045f114723d2b32b1f8cccaca618fc39292bfaaa0eccde1707ebffbddafdcca0005ed15575cd1b3e87cf8c31f5e2ada78fd3ffba98619bf43c19a15a4ebaebb6ef1a8473daadcf200e5ede5975f5e3ac7cda9a79e5aecb1c71ee57606280b8f3beeb83e25f1da6baf5d6cbcf1c6657cf01796b428fd501a5615cd118f38b22f334a45b684f8f297bf5cfec5bd608b42ef894f7c6271f39bdfbc542ee7f85d74d14545f54380e19f237eb1ea85290ad8b0e08ead1070f388473ca2b4d665ab082c665112236c8d80c535ec9b046e2828d9a33a94c6e403fb54131edb688c22917758d986a52dfe501063558e1534f981b23694c4f84129fbc0073eb0b49efecc673e53a0e845befad5af96db5060f98c901f584f67253196df8f7ffce34b2b5bb6e740011be502ab5cd28de21abf9483d8539bf0d8fe8367b31dc6b7bef5ade2924b2ee9f9251cb6efc0621c094530e79ffce42739f484b49147a4e5acb3ceea53129366acb1291b6c5141fec547207b01a493f3ce3baf4f494cde3cf4a10f2de385f575587e939e33cf3cb3d873cf3d47aa33e9119e4a40021290800424200109484002129080042420819920a0a278c2d988c2292bdec2eab3ee31d982b2ee3ed706ed678b32973f94846c7781a2933d69b7df7efbb1945d28f4b2a291ed15ee7ffffbf7a2c4b60028d74e3bedb4f21a96a9281fd9d7f7e28b2f2ef7480ec7db6ebb6da9608edf6c3980d218ab50d8a074c4ba9557fdeb84fd8c5ff9ca57f6f6e45db6621f5efc85420f3f7ce42f2b82891f698fed28f24704abcf202e5b6db555ef32e9c41a37fbd965975dfaac9e517c636d1cf98a056c93a0dc8c6d25502887a278830d3618ba4f755398711d2b66e2f680073c202e95cad88817f7f7d9679fde5ecab043e19db7c240e94d5c50d462d9ccd61621d52d31d88a61a38d362a8e3cf2c8722180bc63410245337ebffbddef86d7f239d95a992d429ef08427146f7ad39b8ab01e4621cc224693853b6599f2137586faf1852f7ca1f70cf28ab2190a74e2475cdef18e77143ff8c10f7aeee28472138b005c7bf2939f5c6cb6d96671bbdc0e033eb1f50996f194a3787ecfa127129080042420010948400212908004242001094860091050513ce14cc6ba312c1c516835ed7bcaf614ec0b3b48f23ead83dce52d1f5074a1d06b52c655c3c16dece1cbbd4d36d9a44f491cee1ff290879456a6bca68f020ecb5a2c48d99b3604a51b169b5541618962f7ecb3cf2e6fa1d065df58f664ce82a293ad29aa7127dc501463411c8ad8ec178561288af3f57c8e12fd19cf7846be545a45b39d42a4036564756b0ce285256ce6d41748c30ff22264944581705b77240eec4b8db56d087977fef9e7c7cf62c71d77ec29897b17579c3cfbd9cf2e15c228c3b16846798a6570deca82fd97b1d0ae0a16bcf08ffd8bc3b21a4be510b8a2e0ad0a1f307cf18b5f5c6e4bc23d14da7ca4709d75d6a93a2d15c82c7064c1023aca36e9df69a79d7a4ae270471da3cc1c76d8617d96c3713f1fb1caa6ec86a2997b2c32903eca3316cfd5b297fd7b2e01094840021290800424200109484002129080046699808ae229e72e8ab93ac95b09d4dde7daad6e75ab3ea55693bbeaf5ac08abdeabfeae2ab6d91ea14e081345250a4fce5120721e0a50ae6141da242872d92600cb659475f8ab2a8ad9b2808f9f0d122c55f3b60583dc56ef61dd8cc27190a010af937198d6f9ef7a0d6bdbac24263cf6ad8e450914e8f0e3637df0cdc28203f7c26a1aabe0652b94f758d086b040d094c66db6d9a65422739f3c23fcd8ce02ff58e9367145f98a4576581fd75963e3375b88479cb25b2cda49639d60750f9f584c0837c497c50c2ce011b640211e5849131e71a32c654be8f0eb5102129080042420010948400212908004242001092c35022a8a279ce35824a2f8c21212851a0a61ac35abc2160b581bd7293dd90e00bfd922b5ea7f52bfc36293f050d2621dda24d5fd935152865212bf28e59a8474723fac3af9781e5b576461efde268563b8ebb22d00cad1613268ab8f617ea779bfce0a37f34769fce637bf79a42860d94bbee5ed4606b1a14c67053e96ccb15734ca5814c14dc27d3ee8188a62ca368b06595874c8e1738ff8e58ffed5a53f878155785551cc7d94dc5831475d821996d4614d4ddd640101e57175e12287efb904242001094840021290800424200109484002129875022a8a279cc361bd19568cd9f2323f0acbdd3aeb5d2c42d93377ae84ad0442598c322d14bfa33c3fac8b711b8ab851fc35b99944184d61733dd239c8cd42bc87b2958fcc55850fc9a1b41d575010a330651b919071f29d67c673f1475877b8c31d22a8958ee1961ba4a52a6c8351b7401016d055f775bf9b16105042efbffffec5473ffad1e26b5ffbda4ae59bf2cf1f5b69f001c5e52b3ec6a7484002129080042420010948400212908004242081a5484045f184733d947aa128665f5b944f7596c3758fc6d2761ca55d5d18e35cc3929338f34ce258a7c86b0a0febdbb98c6b533c96ea75ac61b1f64501ceb60c6cdf8052b62e4fa2fce116cb6eb63521fff8d01c791ef7476189523714bb1c0968efe5d80000118a494441546b9084db2637750a7ce2b46c850578d3424b35acd802a57a9ddfa473bbedb62b9ef39ce79456ca581863e1ccc706332b3ef4071bac93150948400212908004242001094840021290800424b0d408a8289e428ef341b72f7ff9cb65c8ec51cc87c0aaafdbd73d16a5d5b9e79e5b776b6ad7d86a026523d6bcbffbddef4a2bd326eb50e276d14517958a45f675e5c36fa15846e18852afba9d44449cf0b19646f073ef7bdf3b6e796c49807c0b81e9a31ffde8c68fb151b6d82e023fa1e067ab05f20de5f20f7ff8c3f28372115e3e7eef7bdf2b4e3df5d452998c1295ed1c6e7deb5b971f24c4ef55575dd558be792efe432833a30acf08617f613e28d824ecbb5c27a40fc1d21f653896d9fc6dbef9e6a592987afae10f7fb8a730e6037a2a8aeb487a4d02129080042420010948400212908004242081592730f8cb5eb39efa29a58fbd87d98338e4e31fff78f97a7bfc6e3a5e78e185235b503685318e652861a0380c652f4abf507057c3e71e0a6fb62d603f5c042bd6b0264521c8c7ea9ae4924b2ee9f9e379e1afc9bdd7871340911a7b4ab32051b7476f8472ca29a714871e7a6871f0c107971f75e37a56c452f6c8c33a21dfc97314cdb821fff282c0e73ef7b9de561455ffec33fc939ffca47799ad2046955c87befded6f978ae93abf58135f79e5952bdd4249fcfad7bfbe4cf71bdef08695e2483a36d86083be0fe9356d61b152e05e90800424200109484002129080042420010948400233464045f11432140514afb987a05c3bf6d8638b6f7ce31b71a9efc8fdb3cf3ebb38e79c73caebf86f2bf90367a38481620c4bd490f3cf3fbfb8faeaabe367efc8c7bff8081ac256026badb55679dc6cb3cd7a6eb0fac4e2b82a589cf25a7fc87aebad57acb6da6af173491ce3c371934c2ce5e4b18f7d6c2f48f6e165eb92aa702d3e26879f7bdef39ea5b277d34d37ed39c50d0adfaa5016d8db37e4e10f7f7879fac4273e312e1537dc704371da69a7ada488c542fdc4134fecb943a9fd80073ca0f77bd80916c42c46202c549c70c2092bed85cdf5934f3e79a5ebf8c16f585d1347162bea24b689e15e5696936ec27ed7bbde559c7efae92ba5af2e2caf494002129080042420010948400212908004242081c54a60d5c51af1851eef7bddeb5ea5b2f88c33ce28a38a02ea3def794fb9072a5b53a0acc312f2fbdfff7e69c59bf769c5edb8cae250706159fac637beb1b8eb5def5a5a8c6ebbedb6bdfd649b98a1ecfdc217be50ee754b3828c7d65d77ddf2557fc243497cedb5d7f6bcb38d4658046fb4d146c579e79d57a60507679d755671d96597955b11a084c6ca953d61435032b397ee52936f7deb5bc55bdffad6720b0494a59b6cb2c9441064fe284d8f3ffef8e2c10f7e70b98d04fc5176a2c00f41c17fe73bdfb9fc493cee76b7bb15a1284599cf6206ca67f2f7d24b2f2dbef9cd6f86d7d24a7ecd35d72c7f63edcb73e23ec7c30e3bac58be7c7959c6c9f32f7ef18b7d8ad7adb7de7a6859ec3d6cc50965850fcc61918fb0b5c981071e583e638d35d628e34dd96cda9f98f4135fac9111ca2696c794edd83a030bfa5cb6237db8673b8e5834b9cd6d6ed39716ee2b1290800424200109484002129080042420010948609608a8289e626e3ef2918f2c1583ef7def7b7b4a26945d83f621c65213a51bafec23a1001e144df65f652b805078b117307fa32ab770b7ebaebb960ae2781e0ac66c491acf4741f8f4a73f3d7e96cabcbdf6daab38fae8a3cb6d29b8f1b39ffdac38f3cc337b6ee204e5f7eebbef5eb0376e087b174f53a661c99be33b28fe2c16b01548b8892d1842c99ec3697b8e32f515af7845f196b7bca5f71cca4f287073b828475ff08217f42e457e1c79e491bd6d4188e3073ef0819e9b38e139bbecb24b9fa297b0b018e6a370085b5360195f272c0eacb3ce3a75b7065edb78e38dcbf214db6aa00cc7ea7d54d97efbed8bc30f3fbc973e94bffcd5c9b2151fcfdb70c30d7bb75034878cbb7013fe3c4a4002129080042420010948400212908004242081c542c0ad27a69c530f7de8438b030e38a0b4ce1da46cbac73dee512a5151143ff0810f2c63c5abfa28e8aa52dd87987051da11467e068aaefcbb1a4efe8da5e93efbec535a60e6eb714e384f7bdad38a3df7dc73a538b1efec41071d54eef7daf43cd2b4efbefb1628e3b260f91c698c6d02f2fdeaf9b86ef870d93405257ba4b91a373e1ab7dd76dbadb4cd4635ff86c52fc26f728785f0fefbef5f50d6ea04ff581ebfee75af2b3f6497dd107fac74d9abb7e9396c15c2dec6b11f72f827df5efad297960b07b14504f772382c2cbce4252f29f23617e13f8e556e713d8e6ce3c21f3ceb040be11d77dcb1772b87871fd2cd3616395e3dc72b4ea827946de2196531dfe79cc59826ff55b7fe9680042420010948400212908004242001094840028b91c02a2b2c48ebbf603524356c9980e457b5877899e8ed787e53a0f315afa6f8709ded25b014beeebaeb4a0b47148628dfb03c9da495e9a0388c728f0f97fdea57bf2a5fe9a778a04c648b82511465b8277d28dc38272cfc8eab1c1d259eba59990065ec97bffc65a9fcc49a1a0b5c16109a14a039849c77f1e1bab08aceee9aceb162678f6c2cc6d913182bf749976b9e71e38d3796d6d3ec737da73bdd69e4b245faaebffefab25c531ee173bbdbdd6e25457e53fabc2e0109484002129080042420010948400212908004160381d09b8eab1f5551bc1872d7384a400212908004242001094840021290800424200109484002121881405b45f1cafb1a8cf0309d484002129080042420010948400212908004242001094840021290c0ec1050513c3b79694a2420010948400212908004242001094840021290800424200109b422a0a2b815363d4940021290800424200109484002129080042420010948400212981d022a8a67272f4d89042420010948400212908004242001094840021290800424208156045414b7c2a6270948400212908004242001094840021290800424200109484002b3434045f1ece4a5299180042420010948400212908004242001094840021290800424d08a808ae256d8f42401094840021290800424200109484002129080042420010948607608a8289e9dbc342512908004242001094840021290800424200109484002129080045a115051dc0a9b9e2420010948400212908004242001094840021290800424200109cc0e0115c5b39397a64402129080042420010948400212908004242001094840021290402b02abb6f2b5003cadb9e69a0b2016464102129080042420010948400212908004242001094840021290c0e227a045f1e2cf43532001094840021290800424200109484002129080042420010948a0130115c59df0e95902129080042420010948400212908004242001094840021290c0e227a0a278f1e7a1299080042420010948400212908004242001094840021290800424d089808ae24ef8f42c0109484002129080042420010948400212908004242001094860f1135051bcf8f3d0144840021290800424200109484002129080042420010948400212e844404571277c7a9680042420010948400212908004242001094840021290800424b0f809a8285efc79680a24200109484002129080042420010948400212908004242001097422a0a2b8133e3d4b4002129080042420010948400212908004242001094840021258fc0454142ffe3c340512908004242001094840021290800424200109484002129080043a115051dc099f9e25200109484002129080042420010948400212908004242001092c7e022a8a177f1e9a0209484002129080042420010948400212908004242001094840029d08a828ee844fcf1290800424200109484002129080042420010948400212908004163f0115c58b3f0f4d8104242001094840021290800424200109484002129080042420814e04541477c2a76709484002129080042420010948400212908004242001094840028b9f808ae2c59f87a640021290800424200109484002129080042420010948400212904027022a8a3be1d3b30424200109484002129080042420010948400212908004242081c54f4045f1e2cf43532001094840021290800424200109484002129080042420010948a0130115c59df0e95902129080042420010948400212908004242001094840021290c0e227a0a278f1e7a1299080042420010948400212908004242001094840021290800424d089808ae24ef8f42c0109484002129080042420010948400212908004242001094860f1135051bcf8f3d0144840021290800424200109484002129080042420010948400212e844404571277c7a9680042420010948400212908004242001094840021290800424b0f809a8285efc79680a24200109484002129080042420010948400212908004242001097422a0a2b8133e3d4b4002129080042420010948400212908004242001094840021258fc0454142ffe3c340512908004242001094840021290800424200109484002129080043a1168ad28bec94d5a7bed14613d4b4002129080042420010948400212908004242001094840021290c0ca04fef9cf7f9617dbe86e5b6b7b6f7ef39b970ffdf39fffbc728cbc22010948400212908004242001094840021290800424200109484002734ae0af7ffd6bf9bcd0dd8ef3f0d68ae2dbdef6b6e5736eb8e186719ea75b094840021290800424200109484002129080042420010948400212980281dffce63765a8a1bb1de7119d14c5b7bce52d8b3ffef18fc5b5d75e5b60591ca6cde34440b7129080042420010948400212908004242001094840021290800424d09e00bad99ffffce7a58e169d6d1b45f12aff5a216da380623894c46dc3d09f04242001094840021290800424200109484002129080042420010974278092f8ee77bf7bd1668fe24e8ae288fa8d37de58f0c71e185a1507158f1290800424200109484002129080042420010948400212908004a64b00a5307b126345dcc69238623711457104e651021290800424200109484002129080042420010948400212908004161f81d67b142fbea41a63094840021290800424200109484002129080042420010948400212a823a0a2b88e8ad724200109484002129080042420010948400212908004242001092c21022a8a9750669b540948400212908004242001094840021290800424200109484002750456adbbb890affdfef7bfef8bde6aabadd6f7db1f129080042420010948400212908004242001094840021290800424301e012d8ac7e3a56b094840021290800424200109484002129080042420010948400233474045f1cc65a9099280042420010948400212908004242001094840021290800424301e0115c5e3f1d2b504242001094840021290800424200109484002129080042420819923a0a278e6b2d4044940021290800424200109484002129080042420010948400212188f808ae2f178e95a02129080042420010948400212908004242001094840021290c0cc1150513c73596a8224200109484002129080042420010948400212908004242001098c474045f178bc742d0109484002129080042420010948400212908004242001094860e608a8289eb92c35411290800424200109484002129080042420010948400212908004c623a0a2783c5eba96800424200109484002129080042420010948400212908004243073045414cf5c969a200948400212908004242001094840021290800424200109484002e31150513c1e2f5d4b400212908004242001094840021290800424200109484002129839022a8a672e4b4d900424200109484002129080042420010948400212908004242081f108a8281e8f97ae2520010948400212908004242001094840021290800424200109cc1c0115c53397a5264802129080042420010948400212908004242001094840021290c0780454148fc74bd71290800424200109484002129080042420010948400212908004668e808ae299cb52132401094840021290800424200109484002129080042420010948603c022a8ac7e3a56b094840021290800424200109484002129080042420010948400233474045f1cc65a9099280042420010948400212908004242001094840021290800424301e0115c5e3f1d2b504242001094840021290800424200109484002129080042420819923f03fc4c2ebefad5858430000000049454e44ae426082}\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u20182?\u20204?\u37117?\u35201?\u27714?\u25105?\u31614?\u32626?CLA\u12290?\par} {\pard \ql \f0 \sa180 \li0 \fi0 \b \fs36 \u26500?\u24314?Github\u39033?\u30446?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 \u20174?\u27169?\u22359?\u20998?\u31163?\u21040?\u27979?\u35797?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 \u22914?\u20309?\u29992?\u22909?Github\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u22914?\u20309?\u29992?\u22909?Github,\u24182?\u23454?\u36341?\u19968?\u20123?\u25935?\u25463?\u36719?\u20214?\u24320?\u21457?\u26159?\u19968?\u20010?\u24456?\u26377?\u24847?\u24605?\u30340?\u20107?\u24773?.\u25105?\u20204?\u21487?\u20197?\u22312?\u19978?\u38754?\u20570?\u24456?\u22810?\u20107?\u24773?,\u20174?\u27979?\u35797?\u21040?CI,\u20877?\u21040?\u33258?\u21160?\u37096?\u32626?.\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u25935?\u25463?\u36719?\u20214?\u24320?\u21457?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u26174?\u28982?\u25105?\u26159?\u22312?\u25199?\u28129?\u65292?\u36825?\u21644?\u25935?\u25463?\u36719?\u20214?\u24320?\u21457?\u27809?\u26377?\u20160?\u20040?\u20851?\u31995?\u12290?\u19981?\u36807?\u25105?\u20063?\u19981?\u30693?\u36947?\u28689?\u24067?\u27969?\u26159?\u24590?\u26679?\u30340?\u12290?\u35828?\u35828?\u25105?\u25152?\u30693?\u36947?\u30340?\u19968?\u20010?\u39033?\u30446?\u30340?\u32452?\u25104?\u21543?:\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u30475?\u26495?\u24335?\u31649?\u29702?\u24212?\u29992?\u31243?\u24207?(\u22914?trello\u65292?\u31616?\u21333?\u22320?\u35828?\u23601?\u26159?\u31649?\u29702?\u36719?\u20214?\u21151?\u33021?)\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab CI(\u25345?\u32493?\u38598?\u25104?)\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u27979?\u35797?\u35206?\u30422?\u29575?\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u20195?\u30721?\u36136?\u37327?(code smell)\sa180\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u23545?\u20110?\u19968?\u20010?\u19981?\u26159?\u36828?\u31243?\u30340?\u22242?\u38431?(\u22914?\u21482?\u26377?\u19968?\u20010?\u20154?\u30340?\u39033?\u30446?) \u26469?\u35828?\u65292?Trello\u12289?Jenkin\u12289?Jira\u19981?\u26159?\u24517?\u38656?\u30340?:\par} +{\pard \ql \f0 \sa180 \li720 \fi0 \u20320?\u23384?\u22312?\u65292?\u25105?\u28145?\u28145?\u30340?\u33041?\u28023?\u37324?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u24403?\u21482?\u26377?\u19968?\u20010?\u20154?\u30340?\u26102?\u20505?\u65292?\u20320?\u21482?\u38656?\u35201?\u26126?\u30830?\u30693?\u36947?\u33258?\u24049?\u24819?\u35201?\u20160?\u20040?\u23601?\u22815?\u20102?\u12290?\u25105?\u20204?\u36824?\u38656?\u35201?\u30340?\u26159?CI\u12289?\u27979?\u35797?\u65292?\u20197?\u26469?\u25552?\u21319?\u20195?\u30721?\u30340?\u36136?\u37327?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u27979?\u35797?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u36890?\u24120?\u25105?\u20204?\u37117?\u20250?\u25214?Document\u65292?\u22914?\u26524?\u27809?\u26377?\u30340?\u35805?\u65292?\u20320?\u20250?\u25214?\u20160?\u20040??\u30475?\u28304?\u20195?\u30721?\u65292?\u36824?\u26159?\u30475?\u27979?\u35797??\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 it("specifying response when you need it", function (done) \{\line + var doneFn = jasmine.createSpy("success");\line +\line + lettuce.get('/some/cool/url', function (result) \{\line + expect(result).toEqual("awesome response");\line + done();\line + \});\line +\line + expect(jasmine.Ajax.requests.mostRecent().url).toBe('/some/cool/url');\line + expect(doneFn).not.toHaveBeenCalled();\line +\line + jasmine.Ajax.requests.mostRecent().respondWith(\{\line + "status": 200,\line + "contentType": 'text/plain',\line + "responseText": 'awesome response'\line + \});\line +\});\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u20195?\u30721?\u26469?\u28304?: {\field{\*\fldinst{HYPERLINK "https://github.com/phodal/lettuce"}}{\fldrslt{\ul +https://github.com/phodal/lettuce +}}} +\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u19978?\u38754?\u30340?\u27979?\u35797?\u29992?\u20363?\u65292?\u28165?\u28165?\u26970?\u26970?\u22320?\u20889?\u26126?\u20102?\u29992?\u27861?\u65292?\u34429?\u28982?\u20889?\u24471?\u26377?\u28857?\u25199?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u31561?\u31561?\u65292?\u27979?\u35797?\u26159?\u29992?\u26469?\u24178?\u20160?\u20040?\u30340?\u12290?\u37027?\u20040?\u65292?\u20808?\u35828?\u35828?\u25105?\u20026?\u20160?\u20040?\u20250?\u24819?\u21435?\u20889?\u27979?\u35797?\u21543?:\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u25105?\u19981?\u24076?\u26395?\u27599?\u27425?\u20570?\u23436?\u19968?\u20010?\u20010?\u26032?\u21151?\u33021?\u30340?\u26102?\u20505?\u65292?\u20877?\u25163?\u21160?\u22320?\u21435?\u27979?\u35797?\u19968?\u20010?\u20010?\u21151?\u33021?\u12290?(\u33258?\u21160?\u21270?\u27979?\u35797?)\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u25105?\u19981?\u24076?\u26395?\u22312?\u37325?\u26500?\u30340?\u26102?\u20505?\u21457?\u29616?\u30772?\u22351?\u20102?\u21407?\u26469?\u30340?\u21151?\u33021?\u65292?\u32780?\u25105?\u36824?\u19968?\u26080?\u25152?\u30693?\u12290?\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u25105?\u19981?\u25954?push\u20195?\u30721?\u65292?\u22240?\u20026?\u25105?\u27809?\u26377?\u25226?\u25569?\u12290?\sa180\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u34429?\u28982?\u65292?\u25105?\u19981?\u26159?TDD\u30340?\u27515?\u24544?\u65292?\u27979?\u35797?\u30340?\u30446?\u30340?\u26159?\u20445?\u35777?\u21151?\u33021?\u27491?\u24120?\u65292?TDD\u27809?\u27861?\u35753?\u25105?\u20204?\u20889?\u20986?\u36136?\u37327?\u26356?\u39640?\u30340?\u20195?\u30721?\u12290?\u20294?\u26159?\u26377?\u26102?TDD\u26159?\u19981?\u38169?\u30340?\u65292?\u21487?\u20197?\u35753?\u25105?\u20204?\u20889?\u20986?\u36923?\u36753?\u26356?\u31616?\u21333?\u22320?\u20195?\u30721?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u20063?\u35768?\u20320?\u24050?\u32463?\u30693?\u36947?\u20102?{\f1 Selenium}\u12289?{\f1 Jasmine}\u12289?{\f1 Cucumber}\u31561?\u31561?\u30340?\u26694?\u26550?\u65292?\u30475?\u21040?\u36807?\u31867?\u20284?\u20110?\u19979?\u38754?\u30340?\u27979?\u35797?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 Ajax\line + \u10003? specifying response when you need it\line + \u10003? specifying html when you need it\line + \u10003? should be post to some where\line + Class\line + \u10003? respects instanceof\line + \u10003? inherits methods (also super)\line + \u10003? extend methods\line + Effect\line + \u10003? should be able fadein elements\line + \u10003? should be able fadeout elements\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u20195?\u30721?\u26469?\u28304?: {\field{\*\fldinst{HYPERLINK "https://github.com/phodal/lettuce"}}{\fldrslt{\ul +https://github.com/phodal/lettuce +}}} +\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u30475?\u19978?\u21435?\u20284?\u20046?\u27599?\u20010?\u27979?\u35797?\u37117?\u24456?\u23567?\u65292?\u19981?\u36807?\u34917?\u23436?\u27599?\u19968?\u20010?\u27979?\u35797?\u20043?\u21518?\u25105?\u20204?\u23601?\u24471?\u21040?\u20102?\u27979?\u35797?\u35206?\u30422?\u29575?\par} +{ +\trowd \trgaph120 +\clbrdrb\brdrs\cellx1728\clbrdrb\brdrs\cellx3456\clbrdrb\brdrs\cellx5184\clbrdrb\brdrs\cellx6912\clbrdrb\brdrs\cellx8640 +\trkeep\intbl +{ +{{\pard\intbl \ql \f0 \sa0 \li0 \fi0 File\par} +\cell} +{{\pard\intbl \ql \f0 \sa0 \li0 \fi0 Statements\par} +\cell} +{{\pard\intbl \ql \f0 \sa0 \li0 \fi0 Branches\par} +\cell} +{{\pard\intbl \ql \f0 \sa0 \li0 \fi0 Functions\par} +\cell} +{{\pard\intbl \ql \f0 \sa0 \li0 \fi0 Lines\par} +\cell} +} +\intbl\row} +{ +\trowd \trgaph120 +\cellx1728\cellx3456\cellx5184\cellx6912\cellx8640 +\trkeep\intbl +{ +{{\pard\intbl \ql \f0 \sa0 \li0 \fi0 lettuce.js\par} +\cell} +{{\pard\intbl \ql \f0 \sa0 \li0 \fi0 98.58% (209 / 212)\par} +\cell} +{{\pard\intbl \ql \f0 \sa0 \li0 \fi0 82.98%(78 / 94)\par} +\cell} +{{\pard\intbl \ql \f0 \sa0 \li0 \fi0 100.00% (54 / 54)\par} +\cell} +{{\pard\intbl \ql \f0 \sa0 \li0 \fi0 98.58% (209 / 212)\par} +\cell} +} +\intbl\row} +{\pard \ql \f0 \sa180 \li0 \fi0 \par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u26412?\u22320?\u27979?\u35797?\u37117?\u36890?\u36807?\u20102?\u65292?\u20110?\u26159?\u25105?\u20204?\u28155?\u21152?\u20102?{\f1 Travis-CI}\u26469?\u36305?\u25105?\u20204?\u30340?\u27979?\u35797?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 CI\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u34429?\u28982?node.js\u19981?\u31639?\u26159?\u19968?\u38376?\u35821?\u35328?\u65292?\u20294?\u26159?\u22240?\u20026?\u25105?\u20204?\u29992?\u30340?node\u65292?\u19979?\u38754?\u30340?\u26159?\u19968?\u20010?\u31616?\u21333?\u30340?{\f1 .travis.yml}\u31034?\u20363?:\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 language: node_js\line +node_js:\line + - "0.10"\line +\line +notifications:\line + email: false\line +\line +before_install: npm install -g grunt-cli\line +install: npm install\line +after_success: CODECLIMATE_REPO_TOKEN=321480822fc37deb0de70a11931b4cb6a2a3cc411680e8f4569936ac8ffbb0ab codeclimate < coverage/lcov.info\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u20195?\u30721?\u26469?\u28304?: {\field{\*\fldinst{HYPERLINK "https://github.com/phodal/lettuce"}}{\fldrslt{\ul +https://github.com/phodal/lettuce +}}} +\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u25105?\u20204?\u25226?\u36825?\u20123?\u38598?\u25104?\u21040?{\f1 README.md}\u20043?\u21518?\u65292?\u23601?\u26377?\u20102?\u20043?\u21069?\u37027?\u24352?\u22270?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 CI\u23545?\u20110?\u19968?\u20010?\u24320?\u21457?\u32773?\u22312?\u19981?\u21516?\u22478?\u24066?\u24320?\u21457?\u21516?\u19968?\u39033?\u30446?\u19978?\u26469?\u35828?\u26159?\u24456?\u37325?\u35201?\u30340?\u65292?\u36825?\u24847?\u21619?\u30528?\u24403?\u20320?\u28155?\u21152?\u30340?\u37096?\u20998?\u21151?\u33021?\u26377?\u27979?\u35797?\u35206?\u30422?\u30340?\u26102?\u20505?\u65292?\u39033?\u30446?\u20195?\u30721?\u20250?\u26356?\u21152?\u24378?\u22766?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u20195?\u30721?\u36136?\u37327?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u20687?{\f1 jslint}\u36825?\u31867?\u30340?\u24037?\u20855?\u65292?\u21482?\u33021?\u20445?\u35777?\u20195?\u30721?\u22312?\u35821?\u27861?\u19978?\u26159?\u27491?\u30830?\u30340?\u65292?\u20294?\u26159?\u19981?\u33021?\u20445?\u35777?\u20320?\u20889?\u20102?\u19968?\u22534?bad smell\u30340?\u20195?\u30721?\u12290?\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u37325?\u22797?\u20195?\u30721?\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u36807?\u38271?\u30340?\u20989?\u25968?\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u31561?\u31561?\sa180\par} +{\pard \ql \f0 \sa180 \li0 \fi0 {\f1 Code Climate}\u26159?\u19968?\u20010?\u19982?github\u38598?\u25104?\u30340?\u24037?\u20855?\u65292?\u25105?\u20204?\u19981?\u20165?\u20165?\u21487?\u20197?\u30475?\u21040?\u27979?\u35797?\u35206?\u30422?\u29575?\u65292?\u36824?\u26377?\u20195?\u30721?\u36136?\u37327?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u20808?\u30475?\u30475?\u19978?\u38754?\u30340?ajax\u31867?:\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 Lettuce.get = function (url, callback) \{\line + Lettuce.send(url, 'GET', callback);\line +\};\line +\line +Lettuce.send = function (url, method, callback, data) \{\line + data = data || null;\line + var request = new XMLHttpRequest();\line + if (callback instanceof Function) \{\line + request.onreadystatechange = function () \{\line + if (request.readyState === 4 && (request.status === 200 || request.status === 0)) \{\line + callback(request.responseText);\line + \}\line + \};\line + \}\line + request.open(method, url, true);\line + if (data instanceof Object) \{\line + data = JSON.stringify(data);\line + request.setRequestHeader('Content-Type', 'application/json');\line + \}\line + request.setRequestHeader('X-Requested-With', 'XMLHttpRequest');\line + request.send(data);\line +\};\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u20195?\u30721?\u26469?\u28304?: {\field{\*\fldinst{HYPERLINK "https://github.com/phodal/lettuce"}}{\fldrslt{\ul +https://github.com/phodal/lettuce +}}} +\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u22312?{\field{\*\fldinst{HYPERLINK "https://codeclimate.com/github/phodal/lettuce/src/ajax.js"}}{\fldrslt{\ul +Code Climate +}}} +\u22312?\u20986?\u29616?\u20102?\u19968?\u22534?\u38382?\u39064?\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Missing \u8220"use strict\u8221" statement. (Line 2)\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Missing \u8220"use strict\u8221" statement. (Line 14)\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u8216'Lettuce\u8217' is not defined. (Line 5)\sa180\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u32780?\u36825?\u20123?\u37117?\u26159?\u23567?\u38382?\u39064?\u21862?\u65292?\u26377?\u26102?\u21487?\u33021?\u20250?\u26377?\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Similar code found in two :expression_statement nodes (mass = 86)\sa180\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u36825?\u23601?\u24847?\u21619?\u30528?\u25105?\u20204?\u21487?\u20197?\u23545?\u19978?\u38754?\u30340?\u20195?\u30721?\u36827?\u34892?\u37325?\u26500?\u65292?\u20182?\u20204?\u26159?\u37325?\u22797?\u30340?\u20195?\u30721?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 \u27169?\u22359?\u20998?\u31163?\u19982?\u27979?\u35797?\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u22312?\u20043?\u21069?\u35828?\u21040?\par} {\pard \ql \f0 \sa180 \li720 \fi0 \u22859?\u26007?\u20102?\u36817?\u21322?\u20010?\u26376?\u21518?\u65292?\u23558?fork\u30340?\u20195?\u30721?\u35835?\u25026?\u12289?\u37325?\u26500?\u12289?\u21319?\u32423?\u29256?\u26412?\u12289?\u35843?\u25972?\u65292?\u28155?\u21152?\u26032?\u21151?\u33021?\u12289?\u28155?\u21152?\u27979?\u35797?\u12289?\u28155?\u21152?CI\u12289?\u28155?\u21152?\u20998?\u20139?\u20043?\u21518?\u65292?\u32456?\u20110?almost finish\u12290?\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u20170?\u22825?\u23601?\u26469?\u35828?\u35828?\u26159?\u24590?\u26679?\u20570?\u30340?\u12290?\par} @@ -604,7 +588,7 @@ Web Developer\u36335?\u32447?\u22270? {\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u29256?\u26412?\u31649?\u29702?\par} {\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u33258?\u21160?\u37096?\u32626?\sa180\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u31561?\u31561?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 Skillock\u27169?\u22359?\u21270?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u20195?\u30721?\u27169?\u22359?\u21270?\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u22312?SkillTree\u30340?\u28304?\u30721?\u37324?\u65292?\u22823?\u33268?\u20998?\u20026?\u19977?\u37096?\u20998?:\par} {\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab namespace\u20989?\u25968?: \u25925?\u21517?\u24605?\u24847?\par} {\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Calculator\u20063?\u23601?\u26159?TalentTree\u65292?\u20027?\u35201?\u36127?\u36131?\u35299?\u26512?\u12289?\u29983?\u25104?url\u65292?\u22836?\u20687?\u65292?\u20381?\u36182?\u31561?\u31561?\par} @@ -710,7 +694,7 @@ line 21 col 62 Strings must use singlequote.\par} \u10003? should return book label & url\line Link Test\line \u10003? should return link label & url\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u27979?\u35797?\u29992?\u20363?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u27979?\u35797?\u31034?\u20363?\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u31616?\u21333?\u22320?\u30475?\u19968?\u19979?Book\u30340?\u27979?\u35797?:\par} {\pard \ql \f0 \sa180 \li0 \fi0 \f1 /* global describe, it */\line \line @@ -762,7 +746,7 @@ it('should return book label & url', function () \{\line \});\line \});\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u26368?\u21518?\u30340?\u26029?\u35328?\u65292?\u20063?\u31639?\u26159?\u27979?\u35797?\u30340?\u26680?\u24515?\u65292?\u20445?\u35777?\u27979?\u35797?\u26159?\u26377?\u29992?\u30340?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 Code Climate\u26469?clean code\u19982?\u37325?\u26500?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 \u20195?\u30721?\u36136?\u37327?\u19982?\u37325?\u26500?\par} {\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u24403?\u20320?\u20889?\u20102?\u19968?\u22823?\u22534?\u20195?\u30721?,\u20320?\u27809?\u26377?\u24847?\u35782?\u21040?\u37324?\u38754?\u26377?\u19968?\u22823?\u22534?\u37325?\u22797?\u12290?\par} {\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u24403?\u20320?\u20889?\u20102?\u19968?\u22823?\u22534?\u27979?\u35797?,\u21364?\u19981?\u30693?\u36947?\u35206?\u30422?\u29575?\u26377?\u22810?\u23569?\u12290?\sa180\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u36825?\u23601?\u26159?\u20010?\u38382?\u39064?\u20102?\u65292?\u20110?\u26159?\u20598?\u28982?\u38388?\u30475?\u21040?\u20102?\u19968?\u20010?\u21483?code climate\u30340?\u32593?\u31449?\u12290?\par} @@ -1091,6 +1075,7 @@ SQLiteHelper.prototype.getData = function (url, callback) \{\line SQLiteHelper.prototype.basic(sql_command, callback);\line \};\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u37325?\u26500?\u23436?\u21518?\u30340?\u20195?\u30721?\u27604?\u21407?\u26469?\u36824?\u38271?\u65292?\u36825?\u20284?\u20046?\u26159?\u20010?\u38382?\u39064?~~\par} +{\pard \qc \f0 \sa180 \li0 \fi0 \emdash\emdash\emdash\emdash\emdash\par} {\pard \ql \f0 \sa180 \li0 \fi0 \b \fs36 \u21019?\u24314?\u39033?\u30446?\u25991?\u26723?\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u25105?\u20204?\u38656?\u35201?\u20026?\u25105?\u20204?\u30340?\u39033?\u30446?\u21019?\u24314?\u19968?\u20010?\u25991?\u26723?\u65292?\u36890?\u24120?\u25105?\u20204?\u21487?\u20197?\u23558?\u26680?\u24515?\u20195?\u30721?\u20197?\u22806?\u30340?\u19996?\u35199?\u37117?\u31216?\u20026?\u25991?\u26723?\u65306?\par} {\pard \ql \f0 \sa0 \li360 \fi-360 1.\tx360\tab README\par} @@ -1141,14 +1126,15 @@ React.render(\line document.getElementById('container')\line );\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u32780?\u19981?\u26159?\u38656?\u35201?\u32321?\u29712?\u30340?\u27493?\u39588?\u25165?\u33021?\u36827?\u34892?\u19979?\u19968?\u27493?\u12290?\par} +{\pard \qc \f0 \sa180 \li0 \fi0 \emdash\emdash\emdash\emdash\emdash\par} {\pard \ql \f0 \sa180 \li0 \fi0 \b \fs36 \u27979?\u35797?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 \u19968?\u27425?\u27979?\u35797?\u39537?\u21160?\u24320?\u21457?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 TDD\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u34429?\u28982?\u25509?\u35302?\u30340?TDD\u26102?\u38388?\u19981?\u31639?\u30701?\u65292?\u28982?\u32780?\u30495?\u27491?\u22312?\u23454?\u36341?TDD\u19978?\u30340?\u26102?\u20505?\u23569?\u20043?\u21448?\u23569?\u12290?\u38500?\u21435?\u24590?\u20040?\u25945?\u20154?TDD\u65292?\u23601?\u26159?\u19982?\u20154?\u32467?\u23545?\u32534?\u31243?\u26102?\u30340?switch\u65292?\u25110?\u35768?\u26159?\u21463?\u38480?\u20110?\u24403?\u21069?\u30340?\u24320?\u21457?\u27969?\u31243?\u12290?\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u20598?\u28982?\u38388?\u22312?\u24320?\u21457?\u19968?\u20010?\u29289?\u32852?\u32593?\u30456?\u20851?\u30340?\u24320?\u28304?\u39033?\u30446?\u8212-\u8212-{\field{\*\fldinst{HYPERLINK "https://github.com/phodal/lan"}}{\fldrslt{\ul Lan }}} \u30340?\u26102?\u20505?\u65292?\u37325?\u25342?\u20102?\u36825?\u20010?\u36807?\u31243?\u12290?\u19981?\u24471?\u19981?\u35828?\u25552?\u21040?\u30340?\u19968?\u28857?\u26159?\u65292?\u22312?\u25105?\u20204?\u30340?\u24320?\u21457?\u27969?\u31243?\u20013?{\b \u27979?\u35797?\u26159?\u30001?\u30456?\u20851?\u21151?\u33021?\u24320?\u21457?\u20154?\u21592?\u20889?\u30340?}\u65292?\u26377?\u26102?\u20505?\u27979?\u35797?\u26159?\u19968?\u31181?\u24456?\u20855?\u25361?\u25112?\u24615?\u30340?\u24037?\u20316?\u12290?\u20037?\u32780?\u20037?\u20043?\u65292?\u20026?\u33258?\u24049?\u30340?\u24320?\u28304?\u39033?\u30446?\u20889?\u27979?\u35797?\u21464?\u25104?\u19968?\u31181?\u33258?\u28982?\u32780?\u28982?\u30340?\u20107?\u12290?\u26377?\u26102?\u27809?\u26377?\u27979?\u35797?\u65292?\u21453?\u32780?\u21464?\u24471?{\b \u27809?\u26377?\u23433?\u20840?\u24863?}\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u25925?\u20107?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u19968?\u27425?\u27979?\u35797?\u39537?\u21160?\u24320?\u21457?\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u20043?\u21069?\u27491?\u22312?\u37325?\u20889?\u19968?\u20010?{\field{\*\fldinst{HYPERLINK "http://www.phodal.com/iot"}}{\fldrslt{\ul \u29289?\u32852?\u32593? }}} @@ -1178,7 +1164,7 @@ req.setOption('Block2', [new Buffer('phodal'), new Buffer('phodal')]);\line \line req.end();\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u20889?\u23436?\u27979?\u35797?\u33050?\u26412?\u21518?\u21457?\u29616?\u19981?\u23545?\u20102?\u65292?\u36825?\u20010?\u19981?\u24212?\u35813?\u26159?\u27979?\u35797?\u30340?\u20195?\u30721?\u21527?? \u20110?\u26159?\u23558?\u20854?\u25918?\u21040?\u20102?spec\u20013?\u65292?\u25509?\u30528?\u21457?\u29616?\u20102?\u19978?\u38754?\u30340?\u20840?\u37096?\u21151?\u33021?\u30340?\u23454?\u29616?\u36807?\u31243?\u20026?\u20160?\u20040?\u19981?\u29992?TDD\u23454?\u29616?\u21602?\u65311?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u35828?\u35828?\u27979?\u35797?\u39537?\u21160?\u24320?\u21457?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u35828?\u35828?TDD\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u27979?\u35797?\u39537?\u21160?\u24320?\u21457?\u26159?\u19968?\u20010?\u24456?\u8220"\u21476?\u32769?\u8221"\u30340?\u31243?\u24207?\u24320?\u21457?\u26041?\u27861?\u65292?\u28982?\u32780?\u30001?\u20110?\u22269?\u20869?\u30340?\u24320?\u21457?\u27969?\u31243?\u30340?\u38382?\u39064?\u8212-\u8212-\u21363?\u24320?\u21457?\u20154?\u21592?\u36127?\u36131?\u21151?\u33021?\u30340?\u27979?\u35797?\u65292?\u23548?\u33268?\u36825?\u20040?\u22909?\u30340?\u19968?\u39033?\u25216?\u26415?\u27809?\u26377?\u22312?\u22269?\u20869?\u25512?\u24191?\u12290?\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u27979?\u35797?\u39537?\u21160?\u24320?\u21457?\u30340?\u20027?\u35201?\u36807?\u31243?\u26159?:\par} {\pard \ql \f0 \sa0 \li360 \fi-360 1.\tx360\tab \u20808?\u20889?\u21151?\u33021?\u30340?\u27979?\u35797?\par} @@ -1188,11 +1174,12 @@ req.end();\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u32780?\u23545?\u20110?\u36825?\u26679?\u30340?\u19968?\u20010?\u29289?\u32852?\u32593?\u39033?\u30446?\u26469?\u35828?\u65292?\u25105?\u24050?\u32463?\u26377?\u20102?\u20960?\u20010?\u26377?\u21033?\u30340?\u21069?\u25552?:\par} {\pard \ql \f0 \sa0 \li360 \fi-360 1.\tx360\tab \u24050?\u32463?\u26377?\u20102?\u21407?\u22411?\par} {\pard \ql \f0 \sa0 \li360 \fi-360 2.\tx360\tab \u26694?\u26550?\u35774?\u35745?\sa180\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u24605?\u32771?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 TDD\u24605?\u32771?\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u36890?\u24120?\u22312?\u25105?\u30340?\u29702?\u35299?\u19979?\u65292?TDD\u26159?\u21487?\u26377?\u21487?\u26080?\u30340?\u12290?\u26082?\u28982?\u25105?\u30693?\u36947?\u20102?\u25105?\u35201?\u23454?\u29616?\u30340?\u22823?\u37096?\u20998?\u21151?\u33021?\u65292?\u32780?\u19988?\u25105?\u20063?\u30693?\u36947?\u22914?\u20309?\u23454?\u29616?\u12290?\u19982?\u27492?\u21516?\u26102?\u65292?\u23545?Code Smell\u20063?\u20445?\u25345?\u30528?\u35686?\u24789?\u12289?\u35201?\u20445?\u35777?\u21151?\u33021?\u34987?\u27979?\u35797?\u35206?\u30422?\u12290?\u37027?\u20040?\u65292?\u24635?\u30340?\u26469?\u35828?TDD\u24102?\u26469?\u30340?\u20215?\u20540?\u24182?\u19981?\u22823?\u12290?\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u28982?\u32780?\u65292?\u22312?\u24403?\u21069?\u36825?\u31181?\u24773?\u20917?\u19979?\u65292?\u25105?\u30693?\u36947?\u25105?\u24819?\u35201?\u30340?\u21151?\u33021?\u65292?\u20294?\u26159?\u25105?\u24182?\u19981?\u29702?\u35299?\u20854?\u28145?\u23618?\u27425?\u30340?\u21151?\u33021?\u12290?\u25105?\u38656?\u35201?\u33457?\u36153?\u22823?\u37327?\u30340?\u26102?\u20505?\u26469?\u29702?\u35299?\u65292?\u23427?\u20026?\u20160?\u20040?\u26159?\u36825?\u26679?\u30340?\u65292?\u38656?\u35201?\u20808?\u26377?\u19968?\u20123?\u33050?\u26412?\u26469?\u30693?\u36947?\u23427?\u26159?\u24590?\u20040?\u24037?\u20316?\u30340?\u12290?TDD\u21464?\u26174?\u24471?\u24456?\u26377?\u20215?\u20540?\u65292?\u25442?\u21477?\u35805?\u26469?\u35828?\u65292?\u22312?\u29616?\u26377?\u30340?\u24773?\u20917?\u19979?\u65292?TDD\u23545?\u20110?\u25105?\u20204?\u19981?\u20102?\u35299?\u30340?\u19968?\u20123?\u20107?\u24773?\u65292?\u21487?\u20197?\u39537?\u21160?\u20986?\u26356?\u22810?\u30340?\u24320?\u21457?\u12290?\u27605?\u31455?\u22312?\u25105?\u20204?\u23436?\u25104?\u27979?\u35797?\u33050?\u26412?\u20043?\u21518?\u65292?\u25105?\u20204?\u20063?\u20250?\u21457?\u29616?\u36825?\u20123?\u27979?\u35797?\u33050?\u26412?\u25104?\u20026?\u20102?\u20195?\u30721?\u30340?\u19968?\u37096?\u20998?\u12290?\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u22312?\u36825?\u31181?\u29702?\u24819?\u30340?\u24773?\u20917?\u19979?\u65292?\u25105?\u20204?\u20026?\u20160?\u20040?\u19981?TDD\u21602??\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 \u36731?\u37327?\u32423?\u32593?\u31449?\u27979?\u35797?TWill\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 \u21151?\u33021?\u27979?\u35797?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u36731?\u37327?\u32423?\u32593?\u31449?\u27979?\u35797?TWill\par} {\pard \ql \f0 \sa180 \li720 \fi0 twill was initially designed for testing Web sites, although since then people have also figured out that it\u8217's good for browsing unsuspecting Web sites.\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u20043?\u25152?\u20197?\u35828?\u36731?\u37327?\u30340?\u21407?\u22240?\u26159?\u20182?\u26159?\u25343?\u21629?\u20196?\u34892?\u27979?\u35797?\u30340?\u65292?\u36824?\u26377?DSL\u65292?\u36824?\u26377?Python\u12290?\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u38500?\u27492?\u20043?\u22806?\u65292?\u36824?\u21487?\u20197?\u25343?\u23427?\u20570?\u21387?\u21147?\u27979?\u35797?\u65292?\u36825?\u31181?\u21387?\u21147?\u27979?\u35797?\u21644?\u19968?\u33324?\u30340?\u19981?\u19968?\u26679?\u12290?\u21487?\u20197?\u27169?\u25311?\u25972?\u20010?\u36807?\u31243?\u65292?\u27604?\u22914?\u21516?\u26102?\u26377?\u22810?\u23569?\u20154?\u30331?\u38470?\u20320?\u30340?\u32593?\u31449?\u12290?\par} @@ -1308,6 +1295,7 @@ beforeEach(function() \{\line .toEqual(data);\line \});\line \});\par} +{\pard \qc \f0 \sa180 \li0 \fi0 \emdash\emdash\emdash\emdash\emdash\par} {\pard \ql \f0 \sa180 \li0 \fi0 \b \fs36 \u37325?\u26500?\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u25110?\u35768?\u20320?\u24212?\u35813?\u30693?\u36947?\u20102?\u65292?\u37325?\u26500?\u26159?\u24590?\u26679?\u30340?\u65292?\u20320?\u20063?\u30693?\u36947?\u37325?\u26500?\u33021?\u24102?\u26469?\u20160?\u20040?\u12290?\u22312?\u25105?\u21018?\u24320?\u22987?\u23398?\u37325?\u26500?\u21644?\u35774?\u35745?\u27169?\u24335?\u30340?\u26102?\u20505?\u65292?\u25105?\u38656?\u35201?\u21435?\u25214?\u19968?\u20123?\u22909?\u30340?\u31034?\u20363?\u65292?\u20197?\u20415?\u20110?\u25105?\u26356?\u22909?\u30340?\u23398?\u20064?\u12290?\u26377?\u26102?\u20505?\u19981?\u24471?\u19981?\u21019?\u36896?\u19968?\u20123?\u26356?\u22909?\u30340?\u22330?\u26223?\u65292?\u26469?\u23454?\u29616?\u36825?\u20123?\u21151?\u33021?\u12290?\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u26377?\u19968?\u22825?\u65292?\u25105?\u21457?\u29616?\u24403?\u25105?\u38656?\u35201?\u25105?\u19968?\u27425?\u21448?\u19968?\u27425?\u22320?\u37325?\u22797?\u35762?\u36848?\u26576?\u20123?\u20869?\u23481?\u65292?\u20110?\u26159?\u25105?\u23601?\u35745?\u21010?\u30528?\u25226?\u36825?\u20123?\u24212?\u35813?\u25484?\u25569?\u30340?\u25216?\u33021?\u25918?\u21040?Github\u19978?\u65292?\u20063?\u23601?\u26377?\u20102?{\field{\*\fldinst{HYPERLINK "https://github.com/artisanstack"}}{\fldrslt{\ul @@ -1585,6 +1573,584 @@ public class replaceTemp \{\line \}\line \line \}\par} +{\pard \qc \f0 \sa180 \li0 \fi0 \emdash\emdash\emdash\emdash\emdash\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs36 \u22914?\u20309?\u22312?Github\u8220"\u23547?\u25214?\u28789?\u24863?(fork)\u8221"\par} +{\pard \ql \f0 \sa180 \li720 \fi0 \u37325?\u36896?\u36718?\u23376?\u26159?\u37325?\u26032?\u21019?\u36896?\u19968?\u20010?\u24050?\u26377?\u30340?\u25110?\u26159?\u24050?\u34987?\u20854?\u20182?\u20154?\u20248?\u21270?\u30340?\u22522?\u26412?\u26041?\u27861?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u26368?\u36817?\u33804?\u21457?\u20102?\u19968?\u20010?\u24819?\u27861?\u20889?\u28216?\u25103?\u24341?\u25806?\u65292?\u20043?\u21069?\u24819?\u30528?\u20570?\u19968?\u20010?JavaScript\u21069?\u31471?\u26694?\u26550?\u12290?\u30475?\u30475?\u65292?\u36825?\u20010?\u24605?\u36335?\u26159?\u24590?\u20040?\u26469?\u30340?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 {\field{\*\fldinst{HYPERLINK "https://github.com/phodal/lettuce"}}{\fldrslt{\ul +Lettuce +}}} +\u26500?\u24314?\u36807?\u31243?\par} +{\pard \ql \f0 \sa180 \li720 \fi0 Lettuce\u26159?\u19968?\u20010?\u31616?\u32422?\u30340?\u31227?\u21160?\u24320?\u21457?\u26694?\u26550?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u25925?\u20107?\u30340?\u20986?\u21457?\u28857?\u26159?\u36825?\u26679?\u30340?:{\f1 \u20889?\u20102?\u24456?\u22810?\u20195?\u30721?,\u29992?\u30340?\u37117?\u26159?\u26694?\u26550?\u65292?\u26368?\u21518?\u19981?\u30693?\u36947?\u25910?\u33719?\u20160?\u20040?\u20102?}?\u20107?\u23454?\u20063?\u26159?\u22914?\u27492?\u65292?\u24403?\u33258?\u24049?\u20570?\u20102?\u19968?\u20123?\u39033?\u30446?\u20043?\u21518?\u65292?\u21457?\u29616?\u26368?\u21518?\u20160?\u20040?\u20063?\u27809?\u26377?\u25910?\u33719?\u21040?\u12290?\u20110?\u26159?\u65292?\u23601?\u24819?\u30528?\u20570?\u19968?\u20010?\u26694?\u26550?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u38656?\u27714?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u26377?\u36825?\u26679?\u30340?\u20960?\u20010?\u21069?\u25552?\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u20026?\u20160?\u20040?\u25105?\u21482?\u38656?\u35201?jQuery\u37324?\u30340?\u36873?\u25321?\u22120?\u12289?Ajax\u35201?\u24341?\u20837?\u37027?\u20040?\u37325?\u30340?\u24211?\u21602??\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u20026?\u20160?\u20040?\u25105?\u21482?\u38656?\u35201?\u19968?\u20010?Template\u65292?\u21364?\u24819?\u30528?\u29992?Mustache\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u20026?\u20160?\u20040?\u25105?\u38656?\u35201?\u19968?\u20010?Router\u65292?\u21364?\u35201?\u29992?Backbone\u21602??\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u20026?\u20160?\u20040?\u25105?\u38656?\u35201?\u30340?\u26159?\u19968?\u20010?isObject\u20989?\u25968?\u65292?\u21364?\u35201?\u29992?\u21040?\u25972?\u20010?Underscore?\sa180\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u25105?\u24819?\u35201?\u30340?\u21482?\u26159?\u19968?\u20010?\u31616?\u21333?\u30340?\u21151?\u33021?\u65292?\u32780?\u25105?\u19981?\u24819?\u24341?\u20837?\u19968?\u20010?\u24222?\u22823?\u30340?\u24211?\u12290?\u25442?\u21477?\u35805?\u35828?\u65292?\u25105?\u21482?\u38656?\u35201?\u19981?\u21516?\u24211?\u37324?\u38754?\u30340?\u19968?\u23567?\u37096?\u20998?\u21151?\u33021?\u65292?\u32780?\u19981?\u26159?\u19968?\u20010?\u24211?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u23454?\u38469?\u19978?\u24819?\u35201?\u30340?\u26159?:\par} +{\pard \ql \f0 \sa180 \li720 \fi0 \u26500?\u24314?\u19968?\u20010?\u24211?\u65292?\u37324?\u38754?\u20174?\u19981?\u21516?\u30340?\u24211?\u37324?\u38754?\u25277?\u21462?\u20986?\u19981?\u21516?\u30340?\u20989?\u25968?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u35745?\u21010?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u36825?\u26102?\u20505?\u25105?\u21442?\u32771?\u20102?\u19968?\u26412?\u30005?\u23376?\u20070?\u12298?Build JavaScript FrameWork\u12299?\u65292?\u21152?\u19978?\u19968?\u20123?\u24179?\u26102?\u30340?\u38656?\u27714?\u65292?\u20110?\u26159?\u24456?\u24555?\u30340?\u23601?\u30693?\u36947?\u33258?\u24049?\u38656?\u35201?\u20160?\u20040?\u26679?\u30340?\u21151?\u33021?:\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Promise \u25903?\u25345?\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Class\u31867?(ps:\u27809?\u26377?\u19968?\u20010?\u22909?\u30340?\u31867?\u20351?\u29992?\u30340?\u26041?\u24335?)\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Template \u19968?\u20010?\u31616?\u21333?\u30340?\u27169?\u26495?\u24341?\u25806?\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Router \u29992?\u26469?\u25511?\u21046?\u39029?\u38754?\u30340?\u36335?\u30001?\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Ajax \u22522?\u26412?\u30340?Ajax Get/Post\u35831?\u27714?\sa180\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u22312?\u20570?\u19968?\u20123?\u23454?\u38469?\u30340?\u39033?\u30446?\u20013?\u65292?\u36824?\u36935?\u21040?\u20102?\u36825?\u26679?\u30340?\u19968?\u20123?\u21151?\u33021?\u25903?\u25345?:\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Effect \u31616?\u21333?\u30340?\u19968?\u20123?\u39029?\u38754?\u25928?\u26524?\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab AMD\u25903?\u25345?\sa180\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u32780?\u25105?\u20204?\u26377?\u19968?\u20010?\u21069?\u25552?\u26159?\u35201?\u20445?\u25345?\u36825?\u20010?\u24211?\u23613?\u21487?\u33021?\u30340?\u23567?\u12289?\u21516?\u26102?\u25105?\u20204?\u36824?\u38656?\u35201?\u26377?\u27979?\u35797?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u23454?\u29616?\u31532?\u19968?\u20010?\u38656?\u27714?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u31616?\u21333?\u35828?\u35828?\u26159?\u22914?\u20309?\u23454?\u29616?\u19968?\u20010?\u31616?\u21333?\u30340?\u38656?\u27714?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs24 \u29983?\u25104?\u26694?\u26550?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u22240?\u20026?Yeoman\u21487?\u20197?\u29983?\u25104?\u19968?\u20010?\u31616?\u21333?\u30340?\u36718?\u24275?\u65292?\u25152?\u20197?\u25105?\u20204?\u21487?\u20197?\u29992?\u23427?\u26469?\u29983?\u25104?\u36825?\u20010?\u39033?\u30446?\u30340?\u39592?\u26550?\u12290?\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Gulp\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Jasmine\sa180\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs24 \u23547?\u25214?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u22312?Github\u19978?\u25628?\u32034?\u20102?\u19968?\u20010?\u30475?\u21040?\u20102?\u19979?\u38754?\u30340?\u20960?\u20010?\u32467?\u26524?:\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab {\field{\*\fldinst{HYPERLINK "https://github.com/then/promise"}}{\fldrslt{\ul +https://github.com/then/promise +}}} +\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab {\field{\*\fldinst{HYPERLINK "https://github.com/reactphp/promise"}}{\fldrslt{\ul +https://github.com/reactphp/promise +}}} +\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab {\field{\*\fldinst{HYPERLINK "https://github.com/kriskowal/q"}}{\fldrslt{\ul +https://github.com/kriskowal/q +}}} +\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab {\field{\*\fldinst{HYPERLINK "https://github.com/petkaantonov/bluebird"}}{\fldrslt{\ul +https://github.com/petkaantonov/bluebird +}}} +\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab {\field{\*\fldinst{HYPERLINK "https://github.com/cujojs/when"}}{\fldrslt{\ul +https://github.com/cujojs/when +}}} +\sa180\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u20294?\u26159?\u26174?\u28982?\u65292?\u20182?\u20204?\u37117?\u22826?\u37325?\u20102?\u12290?\u20107?\u23454?\u19978?\u65292?\u23545?\u20110?\u19968?\u20010?\u24211?\u26469?\u35828?\u65292?80%\u30340?\u20154?\u21482?\u38656?\u35201?\u20854?\u20013?20%\u30340?\u20195?\u30721?\u12290?\u20110?\u26159?\u65292?\u25214?\u21040?\u20102?{\field{\*\fldinst{HYPERLINK "https://github.com/stackp/promisejs"}}{\fldrslt{\ul +https://github.com/stackp/promisejs +}}} +\u65292?\u30475?\u20102?\u30475?\u29992?\u27861?\u65292?\u36825?\u23601?\u26159?\u25105?\u20204?\u38656?\u35201?\u30340?\u21151?\u33021?:\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 function late(n) \{\line + var p = new promise.Promise();\line + setTimeout(function() \{\line + p.done(null, n);\line + \}, n);\line + return p;\line +\}\line +\line +late(100).then(\line + function(err, n) \{\line + return late(n + 200);\line + \}\line +).then(\line + function(err, n) \{\line + return late(n + 300);\line + \}\line +).then(\line + function(err, n) \{\line + return late(n + 400);\line + \}\line +).then(\line + function(err, n) \{\line + alert(n);\line + \}\line +);\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u25509?\u30528?\u25171?\u24320?\u30475?\u30475?Promise\u23545?\u35937?\u65292?\u26377?\u25105?\u20204?\u38656?\u35201?\u30340?\u21151?\u33021?\u65292?\u20294?\u26159?\u21448?\u26377?\u19968?\u20123?\u21151?\u33021?\u36229?\u20986?\u25105?\u30340?\u38656?\u27714?\u12290?\u25509?\u30528?\u25226?\u33258?\u24049?\u19981?\u38656?\u35201?\u30340?\u38656?\u27714?\u21435?\u25481?\u65292?\u36825?\u37324?\u20989?\u25968?\u26368?\u21518?\u23601?\u21464?\u25104?\u20102?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 function Promise() \{\line + this._callbacks = [];\line +\}\line +\line +Promise.prototype.then = function(func, context) \{\line + var p;\line + if (this._isdone) \{\line + p = func.apply(context, this.result);\line + \} else \{\line + p = new Promise();\line + this._callbacks.push(function () \{\line + var res = func.apply(context, arguments);\line + if (res && typeof res.then === 'function') \{\line + res.then(p.done, p);\line + \}\line + \});\line + \}\line + return p;\line +\};\line +\line +Promise.prototype.done = function() \{\line + this.result = arguments;\line + this._isdone = true;\line + for (var i = 0; i < this._callbacks.length; i++) \{\line + this._callbacks[i].apply(null, arguments);\line + \}\line + this._callbacks = [];\line +\};\line +\line +var promise = \{\line + Promise: Promise\line +\};\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u38656?\u35201?\u27880?\u24847?\u30340?\u26159?: {\f1 License}\u65292?\u19981?\u21516?\u30340?\u36719?\u20214?\u26377?\u19981?\u21516?\u30340?License\u65292?\u22914?MIT\u12289?GPL\u31561?\u31561?\u12290?\u26368?\u22909?\u33021?\u22312?\u36981?\u24490?\u21327?\u35758?\u30340?\u24773?\u20917?\u19979?\u65292?\u20351?\u29992?\u21035?\u20154?\u30340?\u20195?\u30721?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u23454?\u29616?\u31532?\u20108?\u20010?\u38656?\u27714?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u30001?\u20110?\u65292?\u29616?\u26377?\u30340?\u19968?\u20123?Ajax\u24211?\u37117?\u27604?\u36739?\u65292?\u26368?\u21518?\u21482?\u22909?\u21442?\u29031?\u30528?\u21035?\u20154?\u30340?\u20195?\u30721?\u33258?\u24049?\u23454?\u29616?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 Lettuce.get = function (url, callback) \{\line + Lettuce.send(url, 'GET', callback);\line +\};\line +\line +Lettuce.load = function (url, callback) \{\line + Lettuce.send(url, 'GET', callback);\line +\};\line +\line +Lettuce.post = function (url, data, callback) \{\line + Lettuce.send(url, 'POST', callback, data);\line +\};\line +\line +Lettuce.send = function (url, method, callback, data) \{\line + data = data || null;\line + var request = new XMLHttpRequest();\line + if (callback instanceof Function) \{\line + request.onreadystatechange = function () \{\line + if (request.readyState === 4 && (request.status === 200 || request.status === 0)) \{\line + callback(request.responseText);\line + \}\line + \};\line + \}\line + request.open(method, url, true);\line + if (data instanceof Object) \{\line + data = JSON.stringify(data);\line + request.setRequestHeader('Content-Type', 'application/json');\line + \}\line + request.setRequestHeader('X-Requested-With', 'XMLHttpRequest');\line + request.send(data);\line +\};\par} +{\pard \qc \f0 \sa180 \li0 \fi0 \emdash\emdash\emdash\emdash\emdash\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs36 Github\u29992?\u25143?\u20998?\u26512?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 \u29983?\u25104?\u22270?\u34920?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u22914?\u20309?\u20998?\u26512?\u29992?\u25143?\u30340?\u25968?\u25454?\u26159?\u19968?\u20010?\u26377?\u36259?\u30340?\u38382?\u39064?\u65292?\u29305?\u21035?\u26159?\u24403?\u25105?\u20204?\u26377?\u22823?\u37327?\u30340?\u25968?\u25454?\u30340?\u26102?\u20505?\u12290?\u38500?\u20102?{\f1 matlab}\u65292?\u25105?\u20204?\u36824?\u21487?\u20197?\u29992?{\f1 numpy}+{\f1 matplotlib}\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u25968?\u25454?\u21487?\u20197?\u22312?\u36825?\u36793?\u23547?\u25214?\u21040?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 {\field{\*\fldinst{HYPERLINK "https://github.com/gmszone/ml"}}{\fldrslt{\ul +https://github.com/gmszone/ml +}}} +\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u26368?\u21518?\u25928?\u26524?\u22270?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 {\pict\pngblip\picw800\pich400\picwgoal11620\pichgoal5800 89504e470d0a1a0a0000000d4948445200000320000001900806000000562504340000000473424954080808087c086488000000097048597300000f6100000f6101a83fa7690000200049444154789cec9d7b5c5475feff5f0322205e0151040d6f28e6fd12ddd4b44c2bb7b6eca256565a5bd945fd6697ad6d736bcb36bbb8df757fed77b78bb6955959e9ea2615a664199a6869a2602a2a606080a222209cdf1fef3e30c00ccc997366e6ccccebf978f818993933e7337366cef9bc3eaff7c5a6699a0642082184104208f10221be1e002184104208212478a00021841042082184780d0a1042082184104288d7a00021841042082184780d0a1042082184104288d7a00021841042082184780d0a1042082184104288d7a00021841042082184780d0a1042082184104288d7a00021841042082184780d0a1042082184104288d7a00021841042082184780d0a1042082184104288d7a00021841042082184780d0a1042082184104288d7a00021841042082184780d0a1042082184104288d7a00021841042082184780d0a1042082184104288d7a00021841042082184780d0a1042082184104288d7a00021841042082184780d0a1042082184104288d7a00021841042082184780d0a1042082184104288d7a00021841042082184780d0a1042082184104288d7a00021841042082184780d0a1042082184104288d7a00021841042082184780d0a1042082184104288d7a00021841042082184780d0a1000a74e9dc2534f3d85499326213a3a1a21212158b66c99c36db3b3b33169d224b46bd70e313131983163068e1d3be670dbd75f7f1d292929888c8c44727232962c59e2c9b741082184104288e5a10001505c5c8c679e79067bf7eec5d0a1430100369badc976478e1cc1983163b07fff7e2c5cb810f3e7cfc7dab56b3161c20454575737d8f6fffeefff70d75d7761d0a04158b264092eb8e0023cf8e08378e18517bcf29e082184104208b122364dd3345f0fc2d7545555a1acac0c717171d8b66d1b468d1a85a54b9762c68c190db69b3d7b36de7aeb2decd9b3078989890080f4f4744c9830a14e700040454505ba77ef8e0b2fbc10ab57afae7bfeadb7de8a4f3ef904870f1f46c78e1dbdf706092184104208b108744000b46edd1a7171710080e6f4d8ca952b3179f2e43af10100975e7a29929393f1fefbefd7ddf7e5975fa2a4a404b367cf6ef0fcfbeebb0fa74e9dc2dab56b4d7e07841042082184f80714202e929f9f8fe2e2628c1c39b2c963a3468dc2f6eddbebfe56ff6fbcedf0e1c3111212821d3b767876b0841042082184589456be1e80bf5058580800888f8f6ff2587c7c3c4a4a4a505d5d8db0b03014161622343414b1b1b10db66bddba35626262505050d0e4358e1d3b86b4b434242525213232d2336f821042082184b84d4545050e1e3c888913273699e711d7a10071918a8a0a004078787893c7222222eab6090b0b434545055ab76eedf075c2c3c3eb5ecb9eb4b434dc72cb2d268e9810420821847882b7df7e1b37df7cb3af87e1b75080b88872252a2b2b9b3c76e6cc9906db444646a2aaaacae1eb9c3973c6a1c3d1b3674f00f2854e49493165ccc43ce6ce9d8bc58b17fb7a18c4093c3ed685c7c6baf0d8581b1e1f6b929d9d8d5b6eb9a56ede46dc8302c44554e8950ac5b2a7b0b010313131080b0babdbb6a6a606c78e1d6b60cf555555a1a4a404ddba756bf21aca45494949c1f0e1c33df11688013a76ecc8e36261787cac0b8f8d75e1b1b1363c3ed646cddb887b3009dd45121212d0b973676cddbab5c9635bb66ca9eb1f0200c3860d038026db7ef7dd77a8adad6db02d218410420821c10405880ea64c9982356bd6e0c8912375f7a5a7a72337371737dc7043dd7de3c78f477474345e7df5d506cf7ff5d55711151585abaebaca6b63268410420821c44a3004eb57962c5982b2b2b2ba0a55ab57afc6a1438700000f3ef820dab76f8fc71f7f1c1f7cf001c68d1b873973e6a0bcbc1c8b162dc2e0c18371c71d77d4bd564444049e79e619dc77df7db8f1c61b71f9e597e3abafbec23befbc83e79e7b8e4d08092184104248d04201f22b2fbdf412f2f2f20000369b0d1f7ffc313efae823d86c36cc983103eddbb747626222366edc88fff99fffc1638f3d86f0f0704c9e3c192fbdf4525dfe87e2de7bef455858185e7ae925ac5ebd1a3d7af4c0e2c58bf1e0830ffae2ed11834c9b36cdd74320cdc0e3635d786cac0b8f8db5e1f121818c4d6baef537f11a59595918316204b66ddbc6a43342082184100bc2f99a39300784104208218410e2351882450821c414727373515e5eeeeb611042885bb46bd70e7dfbf6f5f53082020a1042082186c9cdcd457272b2af8741082186c8c9c9a108f10214208410420ca39c8fb7df7e1b2929293e1e0d2184e8437538a78beb1d284008218498464a4a0a1333092184340b93d0092184104208215e830284104208218410e2352840082184104208215e830284104208218410e2352840082184104208215e830284104208218410e2352840082184102f919494849e3d7bfa7a188478940d1b36202424047ffad39f7c3d1462512840082184102f62b3d90c3d3f242404e3c68d3369340db9eaaaab10131383dada5a9c3e7d1aefbcf30ea64f9f8efefdfba36ddbb668dfbe3d468d1a85975f7e19d5d5d54e5f67f7eeddb8f1c61b11171787c8c848f4efdf1f0b162cc09933679a6c7bfcf8712c5ab40837df7c33060c188056ad5a21242404e9e9e92e8ffbd8b163888f8f47484808468f1eedd67bafa9a9c12bafbc82c18307a34d9b36888989c155575d85cd9b373bdcfef3cf3fc7430f3d844b2fbd1431313186f6ad282929c1dcb9739194948488880824242460d6ac59c8cfcf77b8fdebafbf8ebbefbe1ba9a9a968d3a60d424242f0e4934f1a1a839e63d71246bfeb2470612342420821c4cff0c4c4aebcbc1ce9e9e998366d1a424242909191815b6fbd1531313118376e1caebbee3a94949460f5ead5983f7f3e3efae823a4a7a7233c3cbcc1eb64666662fcf8f1a8a9a9c1f5d75f8feeddbb233d3d1d4f3ffd34d2d3d3919e9e8ed6ad5bd76d7fe0c0013cfae8a3b0d96c484c4c44e7ce9df1f3cf3feb7a8f77df7d374e9d3a05c0bdcf46d3344c9d3a152b57ae44fffefdf1c0030fe0975f7ec18a152b3066cc18ac5cb912575f7d7583e7fcfdef7fc7ead5ab111919893e7dfaa0b4b4d4d071f9e5975f70e1851722373717975e7a29a64f9f8eecec6cbcf9e69b58bb762d366fdedcc43d7be8a18770e2c409444747232121013ffdf493a131e83d76ce484d4dc59e3d7b101b1bebf6584880a3114bb06ddb360d80b66ddb365f0f85104274c373986b9c73ce395acf9e3d0dbd86cd66d3c68d1b67d288ea79efbdf7349bcda6ad5ab54ad3344ddbb16387f6eebbef6ad5d5d50db62b2f2fd7468c18a1d96c36eda5975e6af0d8d9b367b59494142d242444fbcf7ffe53777f6d6dad76fdf5d76b369b4d7bfef9e71b3ca7b4b4545bbf7ebd565a5aaa699aa6dd76db6d9acd66d3d2d3d35d1af7b265cb349bcda6fde31fffd06c369b367af468ddeffddd77dfd56c369b76f1c5176b95959575f76fddba550b0f0fd7e2e2e2b4f2f2f206cfd9bc79b3b67bf76eadb6b6563b78f0a0dbfb56fcee77bfd36c369b367ffefc06f7ffeffffeaf66b3d9b449932635794e5a5a9a76e8d0214dd3346de9d2a59acd66d39e7cf249b7f6efceb10b245c3d87f15c670e0cc1228410424c66c9922538f7dc7311191989c4c4443cf0c003387efc7893ed4e9c3881458b1661fcf8f1484c4c44787838e2e2e270cd35d7e0db6fbf6db0edd2a54b111222976d1563affed9c7da2f5dba1453a64c41af5ebdd0a64d1b74e8d001175f7c31de79e79d66c7fcf1c71f232a2a0a13274e04000c193204d3a64d43ab560d8325dab66d8b871e7a0800b071e3c6068f6ddcb8117bf6ecc19831633079f2e4bafb6d361b5e78e10500c03ffef18f06cfe9d8b123c68d1b878e1d3b363b3e471c3a74080f3ef820eebcf34e4c9a3449f7f315afbefa2a00e0cf7ffe738315fe912347e2a69b6e427171313efcf0c306cf39fffcf3919292029bcd064dd3dcde37009c3c7912fffef7bfd1b66d5b2c58b0a0c163f7df7f3f7af4e881b4b4341c3870a0c163975f7e39ba77ef0e0086c7e0ceb17386b31c90fdfbf7e377bffb1dfaf4e95317e63678f060dc7befbd28292969b06d6565259e7ffe790c1a3408515151e8d0a103c68c19830f3ef8a0c9fe0e1e3c88909010dc71c71d3878f020a64e9d8ad8d85844464662d4a85158bb76adde8f8378180a10420821c444e6cc9983071f7c10c78f1fc7dd77df8da953a762ddba759830614293bc89ddbb77e30f7ff8035ab56a85dffce63778e8a1873061c204ac5fbf1e63c68c415a5a5addb6c3860dc3534f3d054092d9172c5850f7cf3e2764f6ecd9387cf8302eb9e412cc9b370f53a74e455e5e1e6ebdf556fcf18f7f7438e6caca4afcf7bfffc5c489139b845439428992c6e264fdfaf500e0500cf4ecd9137dfbf6c5a14387b07ffffe16f7d1129aa6e1f6db6f47a74e9df0f2cb2fbb3d013f73e60cbef9e61b44454539cce1b8e28a2b00005f7ef9a5a1f136c7b7df7e8b3367cee0a28b2e4254545483c76c365bdde7e9c93178e2d8d9878315161662d4a85158ba7429060d1a843973e660c68c19e8d9b327de7efb6d1c3d7ab46edbaaaa2a4c9c38118f3ffe386a6b6b71fffdf7e3d65b6f454e4e0e6ebae9263cf1c4130ef797979787d4d4541c3a7408b7dd761b6ebae926ecdab50bd75c730d366cd8e0f2b889e7610e082184109f71fa34b0678ff7f7dbbf3fd0a68df9affbcd37dfe06f7ffb1bfaf4e9832d5bb6d4adea3ffbecb318376e1c0a0b0b91949454b7fd80010350585888e8e8e806af939f9f8ff3ce3b0ff3e6cdc3eeddbb0188233164c810fce94f7f425252925331f1e38f3f36c915a8aeaec615575c81e79f7f1ef7dc730fba75ebd6e0f12fbef802274f9ec475d75de7d2fb7ce38d3700349daceeddbb1700909c9cecf0797dfbf6456e6e2e727373d1ab572f97f6e58cc58b1763e3c68df8fcf3cfd1b66d5b1c3b76ccadd7f9e9a79f505b5b8b5ebd7ad5394cf6f4e9d307009093936368bccdd1d2e7a6c6909b9bebb331183d761f7ef8214a4b4bf1d7bffe150f3cf04083c72a2a2a1a8895975e7a09191919b8f2ca2bb17af5eabae3f2d4534fe1bcf3cec3c2850b3179f2645c70c1050d5e67c3860df8d39ffed420117ffaf4e998346912162d5a844b2eb944f7b88967a000218410e233f6ec01468cf0fe7eb76d03860f37ff75df7cf34d00c0134f3cd120a4283c3c1c0b172e6c52bdaa7dfbf60e5f2721210153a64cc192254b70e4c811242626ba3c0647657ec3c2c2307bf66cac5fbf1ee9e9e9b8f5d65b1b3cfef1c71fa375ebd60d426f9cb164c912a4a5a561d8b0619839736683c7549859870e1d1c3e57dd5f5656e6d27b71c6eeddbbf1f8e38fe3de7befc5f8f1e30dbd96b7c61cec635002232222a2c9639191910dfe7ee38d3710121282975f7eb98128ecdcb9339e7cf249dc79e79d78edb5d79a0890a4a424fce10f7f68709f0a53dbba75ab5be3269e810284104288cfe8df5fc4802ff6eb09b2b2b260b3d93076ecd8268f5d74d1450e57d8bffefa6bfcf5af7fc5e6cd9b515c5c8caaaaaa068fe7e7e7eb1220870e1dc25ffef217a4a7a7e3f0e1c3a8a8a868f07841414183bf6b6b6bb17af56a5c72c9254e0591e2a38f3ec2dcb973111f1f8f952b57223434d4e57199457575356ebdf556242424d4e52600cd57bf5abc78719389f3b5d75e8b214386786c9cf61c3f7e1cafbcf24a93fbe7cd9be774c26f363b76ecc0279f7cd2e0be4e9d3a61ce9c395ed9ffd5575f8dc71f7f1cf7dd771fd2d2d270f9e597e3e28b2fc68001031a6c575e5e8e9f7efa098989890edd18253877ecd8d1e4b1a143873afc1e74efde1d99999926bd13620614208410427c469b369e71227c855a45eed2a54b93c75ab56ad5a42ce9c71f7f8cebafbf1e6ddab4c1840913d0bb776f444545212424045f7ef925366edc88caca4a97f7bf7fff7e9c77de79282b2bc39831633069d22474e8d001a1a1a13870e000962d5bd6e4f5befaea2b1c3b760cd75e7b6db3affdc9279f60ead4a9e8dab52bbefcf2cb06a1640a35997694706f7fbf3b09e78a850b1762c78e1dd8b06103dad8c5d1359703f2d7bffe15797979757fdb6c36f4ead50b43860cf1ca984b4b4bf1f4d34f374858b7d96c983973263a74e8e095317cfffdf778fae9a71bdc9794945427403c3d861e3d7a60cb962d58b06001d6ad5b878f3efa08808883f9f3e7d78565a9fdc4c7c73b7c9dae5dbb0270ecc4381b5bab56ad505b5bebd6b88967a000218410424c424de28e1e3dda2414eaecd9b33876ec187af4e85177df934f3e898888087cf7dd77e8d7af5f83edf3f3f39b54996a89975f7e1925252558ba742966cc98d1e0b1e5cb9763d9b2654d9ef3f1c71fc366b3e1b7bffdadd3d7fde0830f307dfa7474ebd60debd7af47efdebd1d6ed7ff576b49e5133426373717369bcd699e812b64656541d334872e13006cdab409212121e8d0a1034a4b4b01a049f5287b7af7ee8d909010ecdfbf1f3535354d5c1d95776164cc494949cd4e80d5e7e62ccfc48c31dc76db6db8edb6db5a1c83278f5dfffefdf1de7befa1a6a606df7fff3dbef8e20bfced6f7fc39c39731015155527c80034484ab7a7b0b01080f35031e21fb00a16218410621223468c80a6690e85c3a64d9b9a4c42f7eddb8701030634111fb5b5b5d8b46993c37dd86c36d4d4d4387c6cdfbe7db0d96c9832654a93c79c89994f3ef904175c708143d70600de79e71d4c9b360d898989d8b871a353f101d487c7ac5bb7aec963fbf7ef476e6e2ece39e71c87792aae72f9e597e3ce3bef6cf2efa69b6e0220eed39d77ded9ec64db9e8888085c74d1453875ea14befaeaab268f7ffae9a7006038d7a439ce3fff7c444444e0ebafbfc6c993271b3c565b5b8bcf3efb0c369bad490e919978e3d829424343317cf8703cf2c82358be7c390060d5aa55008076eddaa177efde3872e408f6eddbd7e4b9aa12d8f040b24e83100a10420821c4246ebffd760052f54aadbe0352eaf5f7bfff7d93ed7bf6ec899c9c9cba555d404289162c5880ecec6c87f1ec313131387cf8b0c3fdf7ecd9139aa63529d79a969686d75e7badc9f65959593874e890d3f0ab65cb9661c68c19484a4a42464686c3b02b7bc68e1d8b949414646464e03ffff94fddfdb5b5b578f4d1470100f7dc734fb3afa1701652357bf66cfcf39fff6cf2eff9e79f0720d59afef9cf7f62f1e2c52eed0700eebdf75e00c01ffef08706216a5bb76ec58a152b101717e750d4994554541466cc988193274f36e903b264c912e4e5e561e2c4892d7efe4670e7d855545460cf9e3d4ebf8ff6646565390cef524e877d38ddcc9933a1691a1e7ef8e106a2fdd8b16378e69967eac2d788ffc2102c420821c4242ebcf0423cf0c003f8dbdffe8681030762ca9429080b0bc3aa55ab10131383f8f8f80613eb79f3e6e19e7beec1b061c370dd75d7212c2c0c5f7ffd35b2b3b3f19bdffca6c1445071d96597e1bdf7dec3d5575f8d61c386212c2c0c63c78ec5e8d1a3317bf66cbcf9e69bb8e1861b70fdf5d7233e3e1ebb76ed425a5a1a6ebcf146ac58b1a2c16ba9387c4702e4cb2fbfac9b085e72c92578fdf5d79b6cd33889392424046fbef926c68f1f8febafbf1ed75f7f3dba77ef8ef4f4746cdbb60d175f7c31e6cd9bd7e475e6cf9f5f574657393f8b162dc2bffffdefbaf15d73cd35cd7ef6461af14d9d3a151f7df4113efcf0430c1b360c93274fc62fbffc82152b5640d334fceb5fff42dbb66d1b3c67d3a64d75a24eb9163939397522d466b3d555457385e79e7b0e1b366cc0cb2fbf8c1d3b7660d4a851c8cecec6ead5abd1a54b17fcfdef7f6ff29cd75e7badeef3526ec1ead5ab71e8d02100404a4a4a9d786809778e5d666626c68f1f8fb163c7b6d8a3e4adb7dec23ffff94f5c7cf1c5e8d5ab173a75ea849f7efa09fff9cf7f10111181b973e7d66d3b7ffe7c7cfae9a758b56a15860c19822baeb802a74f9fc6071f7c8063c78ee191471ec185175ee8d2fb52186dd4484cc6ebbdd78943b66ddba601d0b66ddbe6eba11042886e780e6bc892254bb49494142d3c3c5c4b4848d0eebfff7eedf8f1e35a525292d6b367cf06db2e5dba541b3a74a8161515a575eedc59bbeebaebb45dbb76690b162cd0424242b48d1b3736d8bea8a8489b3e7dbad6a54b172d3434540b0909d1fef4a73fd53dfecd37df68e3c78fd73a75eaa4b56bd74e1b3d7ab4b66ad52a6dc3860d9acd666bb0ed800103b4214386387c0f4b972ed56c369b161212a2d96c3687ff1abf17c5eeddbbb51b6eb8418b8d8dd5c2c3c3b57efdfa690b162cd0ce9c39e370fba4a4242d2424a4c93fb57ffb313be3c081039acd66d3468f1edde2b68e387bf6acf6ca2baf6883060dd2222323b5e8e868edaaabaed2366fdeec707bfbcfc7d9b8f5525252a2cd9933473be79c73b4d6ad5b6bddba75d366cd9aa5e5e7e73bdcfef6db6f77380675dfb871e3748f41cfb153dfa9c6fbf9f2cb2f9b7cd7323333b57befbd571b326488161d1dad4546466a7dfbf6d566ce9ca9fdf8e38f4d5efbcc9933da73cf3da70d1c38508b8c8cd4dab76faf8d1e3d5a7befbdf79a6cab8efd1d77dce1f03d5d72c9252d1e0f57cf613cd799834dd32809ad40565616468c18816ddbb631ae9110e277f01ce67fe4e4e4a07ffffe78eaa9a7ea3aac136206ebd6adc395575e89850b17baecc0f81a57cf613cd79903734008218490204455bf6aa9fc2e217a51d5bcf4f4af21c105050821841012843cfae8a3a8a9a9c1e0c1837d3d14122064646460debc7978eaa9a7d0b66d5b4c9a34c9d7432216850284104208218418e6cb2fbfc41b6fbc81810307e2f3cf3f474c4c8caf87442c0aab60114208218410c3309f88b80a1d1042082184104288d7a00021841042082184780d0a1042082184104288d7a000b11867cef87a04841042082184780e0a108bf1c413be1e012184104208219e8355b02c465999af47400821ee939d9dedeb211042886e78eef22e14201683028410e28fb46bd70e0070cb2db7f878248410e23eea5c463c0b0588c5a0002184f8237dfbf6454e4e0ecacbcb7d3d146251727381a9538137de00860c91fb3efb0cf8fdef818d1b81b66d7d3b3e42dab56b87be7dfbfa7a18410105884eb66ddb86279e78029b376f86a669b8e0820bf0c20b2f60883a9bda919d9d8d79f3e6e1ebafbf46ebd6ad71d55557e1e5975f466c6cacd3d73f7e1ca8ad0542989d4308f13378e126cdb17fbfdcfee63780ba0c9e3e2db7b1b1c08001be191721c4fb709aab83acac2c5c7cf1c53878f020162c58803ffef18fc8cdcdc5d8b163919393d360db23478e60cc9831d8bf7f3f162e5c88f9f3e763eddab598306102aaabab9dee43d3e882104208093c7272804e9d809898fafb1213e5f6c811df8c8910456d2d70d555c0faf5be1e4970400744074f3ef924a2a2a2b079f36674ead40980c43b272727e3f1c71fc7871f7e58b7ed73cf3d878a8a0a6cdfbe1d89bf9e61cf3bef3c4c9830014b972ec55d77dde5743fc78e01d1d19e7d2f8410428837c9c9019293019badfebe6edde4363fdf37632244515202fcf7bfc0ac59be1e4970400744075f7df5152ebbecb23af101005dbb76c5983163b066cd1a9c3a75aaeefe952b5762f2e4c975e203002ebdf452242727e3fdf7df6f763fc78e993f76420821c497ecdd2b02c49ed6ad81b8383a20c4f71417cb6de7cebe1d47b04001a283aaaa2a44464636b9bf4d9b36a8aaaac2ae5dbb0000f9f9f9282e2ec6c891239b6c3b6ad4286cdfbebdd9fd508010420809347272807efd9ade9f984801427c4f5191dcc6c5f9761cc10205880efaf5eb87cd9b37a3b6b6b6eebeaaaa2a64666602000a0a0a00008585850080f8f8f826af111f1f8f92929266f34028400821840412bffc22212e8d1d10004848600816f13d7440bc0b734074307bf66cdc7befbd98356b161e79e411d4d4d4e0cf7ffe338e1e3d0a00a8a8a868701b1e1edee435222222eab6090b0b6bf27868e85cbcf452477cf249fd7dd3a64dc3b469d3cc7e3b841042885750755a1c0990c444e09b6fbc3b1ed23c5bb648a96407d39880a5a80868d50ae8d8b1febee5cb9763f9f2e50db62b63a52053a000d1c1dd77df8dc3870f63d1a24558b66c190009a97ae49147f0ecb3cfa2edaf45cc55985665656593d73873e64c836d1a131fbf1893270fc75ffee2897740082184781f2540faf469fa181d106b71f22470e185c0b265c0cd37fb7a34dea3b858dc0ffb36088e1680b3b2b23062c4082f8f2ef06008964efefce73fe3e79f7fc6a64d9bb073e74e646666a2a6a6060090fcebd28e0abd52a158f6141616222626c6a1fb0188f2660816218490402227479c8ea8a8a68f2526ca75efd7f539e263f2f3819a1ae0d7e08ea0a1a888e157de840e881b74ecd811175e7861dddf5f7cf105ba77ef8efefdfb0300121212d0b973676cddbab5c973b76cd982a1438736f3da1420841042020b5582d7110909725b5000f4eae5bd3111c7fc9ace8a5f7ef1ed38bc4d511113d0bd091d1083ac58b102df7df71de6ce9ddbe0fe2953a660cd9a35386257da233d3d1db9b9b9b8e1861b9cbe1e050821849040c351095e059b115a8b6015202a048b78073a203ac8c8c8c0d34f3f8d891327223a3a1adf7efb2d962e5d8a2baeb80273e6cc69b0ede38f3f8e0f3ef800e3c68dc39c3973505e5e8e458b1661f0e0c1b8e38e3b9ceea34387fa5859420821c4dfa9ad0572738199331d3fae1c10e681588360152045454033012ac464e880e820313111ad5ab5c2a2458b70fffdf7e39b6fbec1b3cf3e8b55ab56212424a4c9b61b376e44efdebdf1d8638fe1c5175fc4e4c993f1f9e79f3bcdff00c40109b61f3d2146a8aa027af706366ef4f5488837a8ae9644661e6fffe1c811c9ef70e680b46b07b46f4f07c42a2801126cd1187440bc0b1d101df4ead50bebd6ad7379fb010306e8da1e10015252220960a1a17a474848f071f830b07f3fb073273076acaf47433c4d6929f0d34fc0f6ed3cdefe4273257815090914205621181d909a1a79bfcc01f11e74402c46a74e80a6c9459610d2327979725b52e2db7110efa0ce8daa6b31b13e3939d25f2129c9f93689890cc1b20aea38049300f9e517997b5180780f0a108ba11ae0049bf54988bb2801124c17cb6046f500fbf967df8e83b84e4e8e8449b66a26e62231910e8855282800dab6ad9f9407036a41832158de8302c462508010a20f3a20c18572402840fc87e64af02ad88cd01a689a0890810325bfeed4295f8fc83b1417cb2d1d10ef410162313a74905b0a10425c830224b8500e0843b0fc87bd7b817efd9adf263111282c94587ce23b4a4b81ca4a60d020f93b589c653a20de8702c462b46f2fb7c1f2a327c4280c1c77db730000200049444154c10a2ee880f8179595c0c183ae392035353caebe4625a007a30069ddba7e0e463c0f0588c568d54a12d1e98010e21a7440820b7b072458e2d3fd99fdfba50f484b0284cd08ad41b00a105582d766f3f54882070a100b121b4b0142882bd4d64a19deeedd29408205e5809c39039497fb762ca4655c29c10bb019a155500264e040b90d16015254c4fc0f6f43016241284008718dc242694c376c984c4c6b6b7d3d22e269ec4b94330fc4fae4e44845a5ae5d9bdf2e36564260e880f896820239163131405858f00890e2620a106f43016241284008710d157e356c98888fe3c77d3b1ee279caca806edde4ffcc17b03eaa02564ba12d361b9b115a818202f97dd96c224282458014153101dddb5080589098180a10425cc15e8000c173b10c664a4beb2b2ad101b13e7bf7b61c7ea5603342df939f5f2ff0834980d001f13e142016243636787ef48418212f4f7ae7a80ecbcc03097ccacaa4a95d68281d107f2027a7e512bc0a3623f43dca0101824b80d001f13e14201684215884b8465e1e70ce394074b4fc4d0112f89496cac4a873670a10ab73fcb81c23571d103623f43d8d054830cc45aaabe5bc4207c4bb50805890d858f9319c3debeb9110626d9400898991bf8365b52e98292b13d72b2e8e2158562737576ef584601d39c2f2cabea2b6560a7ba88a64c1e28028914507c4bb50805890d858b9e56a2e21cda304486424101ecedf4ca0535b2b02a45327a04b173a20564795e0eddbd7b5ed1312a4bcb27da533e23d8a8ba51964b08560a9850c3a20de8502c482280162d4faacae067af502d6af373e2642ac86a6d50b109b4dc2b02840029b93274584d001f10f7272442876e8e0daf66c46e85b540f90601320c5c5724b07c4bb50805810154e625480141602070e009b36191f132156a3a40438754a0408103c17cb6046ad8cd301f10f54095e57613342dfe248809c38218b99810c1d10df400162419403627432a54e26ca062724905025789500a10312f89495c96dc78e2240e880589bbd7b5daf800548b3c290103a20bea2a0403e7f3511578ba1817e5e2d2e9630dea8285f8f24b8a000b1209d3a4948895107440990bd7b8d8f8910abe14880d001096cec1d90b83811249595be1d13718ca6e97740c2c244585280f8868202f9fc5bb592bf83a5b8872ac1db52b34c622e14201624345426536609909c1c56152181475e9eac5aa9b8dd9898c05fa90b761a3b20407dfc36b116478f4ace8e1e0102b019a12fb16f4208048f00611342df40016251cce805a24ee2274e305481041e7979408f1ef5ab560cc10a7c9403a292d001e681581515faab57802424d001f115f63d4000f3c2c1ad0e9b10fa060a108b628600292890500580792024f05015b0144c420f7ccaca244e5b85ea005c5cb12a3939924fd0ab97bee7d101f11d8d05889a3f04fa79b5a8880e882fa000b1286609908b2e9215620a101268341620d1d13241ada9f1dd988867292dad9f14a9154b3a20d6242707484a92fe3c7a50cd0889f7692c405ab512b731d0054871311d105f40016251cc58cd2d2890d5a773cea1002181872301a269c0f1e3be1b13f12ca5a53221026462dbb123058855d19b80ae484890858453a7cc1f13714e75b53801aa14b222189c653a20be8102c4a298e58074eb2665102940482071ea945c141b876001817fb10c66541774059b115a17bd257815aa1921c3b0bccbcf3fcb028ebd030204be00a9ac943c590a10ef430162518c0a90d3a7e5629d9020ab502cc54b0289c625780171400026a20732f60e08c0668456e5ec59e0a79fdc7740000a106fd3b809a12226c6f862a895611774df4101625162632594c4dd0ea4858572dbad9b5c04f6ed636c3c091c9a132081bc5a17ecd001f10f0e1e1411624480300fc4bb34274002f99caa04081d10ef430162518c96bfb33f9924278b9051933642fc9dbc3ce997e3a8663d1d90c0c53e091da0036255dc2dc10b006ddac831a600f12e0505525d4e9d4715812e40d402061d10ef43016251940071d7fa6c2c4000e68190c0212f4f62c555c75e409a1246445080043265654d43b0e880588f9c1cf92daa7c0ebdb014aff7292800e2e3a574b23d812e401882e53b28402c8ad184dafc7ca997dfae1dd0bdbb548ca100218142e30a588a40bf58063b8d1d90b8389940d4d6fa6e4ca429393940dfbe4d27b3aec26684dea7711774454c8c2cea689af7c7e40d8a8a64aed4a68daf47127c50805814331c906edda407486828d0a70f0508091c9c091076430f5c2a2b818a8aa60e484d0d8fb9d5c8c971af0296820e88f769dc0344111323f93c274e787f4cde8025787d07058845e9d851568f8c0a10054bf19240820224f8282b93dbc60e08c03c10abb177af7bf91f0a3623f43ecd091020709de5e2620a105f4101625142428c95bf6b7c3261295e12285455c9f79b2158c18512208d1d1080792056e2d429110f4604484282884a77ab4012fd1414346d4208182f8863758a8a98ffe12b28402c8c915e208e04c8a14312c240883f73e488c423d301092e4a4be5960e88b5d9b74f6e8d3a209a565f4e9e78963367e4bc49078478130a100be3ae00d1b4a6ab19ea62a02e0e84f82b8e7a8028a2a303f74219ec387240dab5936a4b1420d6c148095e057b817817fbbe618d0974014207c4775080581877c349cacbc5066fec8000cc0321fe8f12203d7a347d4c556c2181872307c466633342ab9193230b018dfb49e84195ef6522ba7770d6841090ea501111812b40e880f80e0a100be3ae03e2e864121b2b2b871420c4dfc9cb93d8ff8888a68f4547cb4a794d8df7c7453c4b599954f48b8a6a783f9b115a0ba309e8805cab2223e980788be6040810b8b975a74f03274fd201f115142016c64c0162b3c945810284f83bce2a6001f5abae6ab59c040eaa0788cdd6f07e3a20d6a1b212f8f453e0a28b8cbd8ecdc652bcdea4a040045f870e8e1f0f5401a29a10d201f10d142016c65d01a24edaf1f10def67295e1208342740a2a3e59661588147e32ee80a3a20d661f56ab966cd9c69fcb5d88cd07ba826848dc5bdc248454e2b4301e25b28402c4c6cace4735455e97b5e41815ca81b77f664295e1208508004278dbba02bba74a10362155e7f1d38ff7c60c000e3af4507c47b38eb01a2085407449d371882e51b28402c8cbbf5b79d9d4c9293e5b502f144428283da5ae0f0e19643b0f81d0f3c4a4b1d3b207171e280689af7c744ea397408f8ec33e0ce3bcd793d3623f41ec12a4094034201e21b284074f2dd77dfe19a6bae41b76edd101515859494143cf3cc33a868d460233b3b1b93264d42bb76ed10131383193366e0984e0f534da6f45a9fcd091000c8cdd5f77a845885a347c511742640d40a391d90c0a3acccb90352512195ff88ef58ba545cf71b6f34e7f51212e45a565b6bceeb11e7386b42a8085401525404b46f0f8487fb7a24c1492b5f0fc09fd8b973272ebef86274ebd60d73e7ce45747434bef9e61b3cf5d453d8b66d1b3ef9e41300c09123473066cc1874ead4090b172e447979395e7cf145ecdcb9135bb66c415858984bfb530e883b02a44f9fa6f7abfb7272c42627c4df68ae07082089949191142081486929d0bb77d3fbed9b11b66debdd3111a1b61678e30de0a69ba4378b192426ca62c3b1638cd1f734c1ec80f0bbe53b284074f0de7befa1aaaa0a6bd7ae454a4a0a00e0ce3bef446d6d2dde7aeb2d1c3f7e1c1d3a74c073cf3d878a8a0a6cdfbe1d89bf16343fefbcf33061c2042c5dba1477dd75974bfb332240c68e6d7a7fdbb6b2cac14474e2afb4244080c0bd58063bcd392080ac663a1228c4f3a4a7cb6f73d62cf35ed3be192127899ea3bc5cfeb524404e9d922a6781e416b009a16f6108960e2223230100718dce865dbb76456868285ab76e0d0058b97225264f9e5c273e00e0d24b2f45727232de7fff7d97f7d7a183d4bdd7234054177467271356c222fe4c5e9efc2e9c958b0424119d0e48e0e12c09ddde0121bee1f5d781fefd810b2e30ef35d98cd03b34d7055d11a8b97574407c0b05880e66ce9c892e5dba60d6ac59f8fefbef71f8f061ac58b102fff8c73ff0e0830f22323212f9f9f9282e2ec6c891239b3c7fd4a851d8be7dbbcbfbb3d9f497e22d2911dbdad9c984bd40883fd35c052c051d90c0a3b616387edc71127a4c0c10124201e22b7ef905f8f863493e7756c6d51de2e264018e89e89ea5a5268480fb0571ac4e511105882f6108960eba75eb86afbffe1a575e7925860d1b5677ff1ffef0073cfdf4d30080c25f9713e21b37e1f8f5be929212545757ebca03d1f3a36fe964929c0c2c5b2617f410ca4fe2671c3cd8b200a10312789497cb39cb9103121a2ae74996e2f50defbc23c7e6d65bcd7dddd050b98ed101f12c6acee060ca5247a03a200cc1f22d14203af8f9e79f71c515570000fef5af7f212626066bd6acc1b3cf3e8b2e5dbae0befbeeabab8615ee20503222220200505151e15480cc9d3b171ded96f98e1e05befb6e1a80692e8d519dac9b13201515b25df7ee2ebd242196212f0f183fbef96da2a3eb73454860505626b78e1c1080cd087d85a649f8d5d5577b662599cd083d4f7ebe54826aae8043200a104d732d046bf9f2e558be7c7983fbcad409891882024407cf3cf30cf2f3f3919393836ebfcef07ffbdbdfa2b6b6168f3efa28a64d9b569727525959d9e4f967ce9c01509f4be288c58b1763f8f0e1757f4f99a2afbca45acde8dad5f1e3aa146f4e0e0508f12f348d2158c14a69a9dc3a7240009944d001f13edbb6013ffc002c5ce899d7673342cfd352052c40847f4848609d574f9d92c5d8961c9069d3a661dab4860bc0595959183162840747171c300847079b366dc2b061c3eac487e237bff90d4e9f3e8d1d3b76d4855ea9502c7b0a0b0b111313e372f815a03f07a4a0407e50bfe6c33721290968d58a7920c4ff2829918b0643b0820f3a20d6e4b5d7c4a59838d133af4f07c4f3b82240424244fc079200514d089903e23b284074505d5d8d9a9a1a87f703c0d9b36791909080ce9d3b63ebd6ad4db6dbb2650b860e1daa6b9fee0890e64e26616140af5e1420c4ff70a5042f2002e4f871e0ec59cf8f897887961c902e5de880789bd3a781e5cb813bee907c0d4f4007c4f3b8224080c07396d5f9823920be83024407c3870f47565616721bb5125fbe7c394243433178f06000c0942953b066cd1a1cb15bba494f4f476e6e2e6eb8e1065dfb345b80002cc54bfc135705888a57569356e2ff2807c459f9e5b8383a20dee6c30f8113274480788ac444294070e284e7f611ecb4d4055d1113a3bf279995a103e27b284074f0f0c30f23242404a3478fc69ffffc67fcbffff7ff70e5955762d5aa5598397326bafe9a78f1f8e38fa34d9b3618376e1c962c5982850b17e2861b6ec0e0c1837187ceb3756cac849dfc9a3ed222ae081096e2f51cb5b5c0a38f4ab526622e7979404444cb178ce868b9651856e0505a2a49b2cea257bb74916daaaabc3bae60e6f5d7a52044af5e9edb877d3342623e2df50db327501d10556298781f0a101d0c1e3c181b366cc0b061c3b068d122cc9b370f070e1cc073cf3d87575f7db56ebbc4c4446cdcb811bd7bf7c6638f3d86175f7c1193274fc6e79f7fae2bff03d05f7fdb95d58ce464e0c0015eac3d416e2ef0c20bc09a35be1e49e0919707f4e8d172af8140acd812ec949539cfff00ea45a95ad5249e252707c8c830b7f3b923d88cd0b39495c9e266300a90e26209e9d439252326c22a583a39efbcf3f0e9a79fb6b8dd800103b06edd3ac3fb5393a963c75a1616353552b6d71507a4a606d8bf5fbad712f3f8f65bb93d7cd8b7e308445ca98005d00109449c75415774e922b73fffec5a380931c61b6f8820bcf65acfee475dcbe8807806579a102a024d80b009a1efa10362719403e24aec655191080b570408c0302c4f909929b71420e6430112bc9496bae6803011ddf39c3d2bcd6c6fb90568a6a2bc2984874b92301d10cf10ec028409e8be8502c4e2e81120ae9e4ce2e381a8280a104f4001e2395c1520e1e1f2fd0ea48b65b05356d6bc03a2040813d13dcf7fff2b4ebba7c3af142cc5eb3994b06bae0bba22264616026a6b3d3b266fe14a1342e25928402c4ebb7612a368a600b1d99888ee092a2aa429576c2c70e890af47635d0e1ed49fa47fea94080a570408c05e2081464b0e4844847473a603e2795e7f1d183e1cd05951de6d588ad773141488b0080f6f79dbd858111f81d2049c0e88efa100b138369bfcf05d59cd2d28908641aea87a96e2359fac2c094fb8f65ab9603a68194300cc9d2b9f91a6b9fe1c574bf02a2840028b961c1080cd08bd416121b076adf7dc0f800e882771b502161078c53de880f81e0a103fc0d55e20050540d7aeae3585a203623e9999b2127bd555f5050148538a8a801d3b44b0b98a5e011268f1cac14e4b49e8804c26e880789665cbc4919f3edd7bfba403e239825580681a1d102b4001e207b8da0048cfc924395956b3cacb8d8d8dd49399098c1801f4ec297f330fc431cac27ffd75d79f939727c2dad50a477440028b96caf00274403c8da649f5abebaf6ff958984962a2ac56bbda0b8bb88eab4d0881c01220e5e5d286800e886fa100f103f438207a04084017c44c323381f3cf07ba7797bf29401ca39acabdfbaee4cdb8425e9e5c285bb958389c0e48e0505929df135742b0e880788eafbe923e47de0cbf02ea27c82ac7919847b03a20ea3c4101e25b2840fc003d02c4d5d58cbe7de59602c41c8e1e9549726aaaac0e4645518038a3ac0c983913387e1c58b9d2b5e7b85a014b41072470508e594babee717174403cc9ebaf03bd7b0363c77a77bf6c46e8196a6b250ac255011248d50555c3528660f9160a103fc0130e48c78e72c1a6003107557e3735550a0774efce4a588e387346fe8d1a055c7289eb61581420c14b69a9dcbae28014177bb64c6865a58458ae5fefb97d5891aa2ae0830f803bee90f39b37510284e7537339764c8aa6b83a670002c759a603620d2840fc0057aa605555c98f4acfc98495b0cc2333530a00a8f0ab1e3de8803842ad6677ea24a11c1b3600fbf6b5fc3cbd02242606387102a8ae766b98c442e87140ce9ead172c9e203b5b4a486fdae4b97d5891bc3c0983bbe002efefbb5d3b1197bc56998b9e26840a57f351ad4e519108691556467c0305881f101b0b9c3e2dff9ca12a2ee93999b01296796466d6bb1f8008110a90a6a8c961c78ec0942940870e92d8da1c555572b1d4eb80d8ef8ff82f7a1c10c0b361583b77ca6db09d37f7ef975b5560c3dba4a488f823e6a142da82d101292e96f7e24ac550e2392840fc005792bfdc59cd5002444f3f06d2949a1a60eb5611200a0a10c7d84f262323a59ce7d2a5b272ed8c2347e43bea8e00611896ffa3c701013c9b88ae04c8debd9edb8715397040266bcae1f536030600bb77fb66df814a41812c9829e1ee0a8122405882d71a5080f801b1b172db9cf5e9ae0039718295638cb2678f94f56b2c407efe5956ef493d8d279377de298990ebd6397f8ede1e204060556c09764a4ba5fa595454f3db79db0109a6859b0307e49ce66a153ab3494991cfbcb9850aa28f8202f9cde839a6812240d884d01a5080f801ae0a90b0307d318daa14af9ed5bcddbb81fff99fe0baf8b64466a6ac248d1a557f5ff7eef21979b3724b6d2df0f0c33259b02a8dc369860f07860e6d3e195d09901e3d5cdf0f1d90c041f5006929f9b97d7ba0756bcf3b202929c1b77073e080efc2af00f9ccababeb43c18871f414ad51048a00292aa200b10214207e80ab02a45b377d154a7af796ed5d8d673e7b16b8e516e09557a41e3c11befd1638f75c499654a850056f566ec9cd055e7c51fa6b5895b23299244644d4df376b16b0668df395ebbc3cb9584446babe1f0a90c0c1952ee8407d3889a71c9092125950983245fe0ea63c102b08108061586612cc02a4b8982158568002c40f888a921adc2de580e83d998487034949ae5f485f7a09f8fe7bf9ffb7dfeadb5720a312d0edf1453342754cac7c6cd464d25e28df7cb3c497bff596e3e7e8ad800588c869db36302e96c14e69a9eb9db7e3e23ce74ca8f0abdffe56dfc24d20e06b01121f2f052b98886e1e7afa86296263a58c7a730571fc013a20d68002c40fb0d95aee05e2cec90470bd146f4e0eb06001306f9e3c47f5bd08764e9e0476ed6a2a40a2a26415de9b02441d93cc4ceb86c8a9701a7b3a759255e5d75e733c6e770408c05e20814259996b0e08e0590764e74e09731d3c58be8fc12240cacb45c8fb5280d86cac846536ee3a20807f2fec681a1d10ab4001e227b4547fdb9d9309e05a29deda5ae0aebbe4f59f7e1a38ff7c0a10c5b66df2f934162080f72b616566ca4a6171b1f42ab022cec26966cd92efe1d75f377dcc5d011228e102c18e1e07a44b17cf3a202929224282a984b9ca29f3a50001e4b3670896399c3d2b423d1805485999bc7f3a20be8702c44f68c901c9cf775f80ecdb27a5649df1af7f01191972dba68d4cb6bfff5e1a53053b9999e2769c7b6ed3c7bc29402a2a801f7e00eebdb77e5c56c49103024857f49e3d9b26a3d7d6ca6748072478d1e380c4c579d601193448fe9f9cec9b52bcdf7c232130dec42a0264c000a938e8c94ef7c1c2cf3f8b13108c02442d50d001f13d14207e427302e4f469b948bb2b40aaabeb2b0d35e6c811e09147a45ceaf8f1725f6aaaac206cdfae7f7f814666263072a4e38646ddbb7b2f093d2b4b8ec9555701bd7a595780387340424280993381f7df970a438aa347a594310548f0e26a123ae0390744d324d45209907efd5a5eb8319beddb818b2e02962df3de3e011120111140d7aededd6f6352528053a7e49a448ce14e13422030044871b1dcd201f13d14207e427302a4b0506edd152080e3d53c4d0366cf9615fe458beaef1f34482e48569de47a134709e80a6f3a209999724c060d92f158f5d838734000e0f6db657577c58afafbdce901a260085660d0dc77a631717132493d75cadc31e4e5492e84bd03d2dcc28d2778f659b9ddbcd97bfb04ea13d0f55458f404ac84651eeef40d03a4d475ab56fe7d5e550b141420be8702c44f888d75fea377f76402c824393cdc713cf3fbef03fff90ff0f7bf379c008485012346587792eb2d8e1c9195a4f3cf77fc788f1eb27a6bf664c811ca89090b1301929565cd2688cdad6627260293264932bac28800a103e2ffd4d6ea4f4207cc0fc35215b0060f965bb570e3ad3c901f7f0456ae941c2f6f9f777d5d014b71ce39528a9b89e8c629281021a14afcbb8acd26e7557f1620c5c512b1e0ea3985780e0a103f4139208eaa04191120212140dfbe4d2fa4bffc023cf00070fdf5c0b5d7367d9e9557d9bd857affcd392080775c107b27e6fcf381cacafa92c956a2a5d5ec59b3802d5b24dc051001d2bebdeb2be0f6c4c45080f83be5e572ced3e38000e68761eddc29635095069b5bb8f1040b178a407fe619c983500d3dbd8155044868a884be518018a7a040c46c881b33c0960ae2589da222994fb9f3de89b9f010f809cdd5df2e2890e4f0f6eddd7b6d47a578e7cd939c82bffdcdf1735253a5d292a7123efd81cc4c991438137ede1220478fca445d0990a143a50f86d504626d2d70fc78f32b4f93274b72a04a4677b70216202b75e5e5d67482886ba889b6151c904183eac3904243813e7dbc2340f6ed03962f071e7d14183d5aeedbbad5f3fb0544fc59458000ac846516ee56cd04fc3fb4952578ad0305889fa092bf1cad3cb8d305dd9ec62525d7ad03fefd6fe0e5979d271eaac9aed526b9dea4b9fc0f40564b6d36cf0b90c64e4c78b88810338e4d5a9a4c3eaaab8dbfd6f1e32daf66b76e0dcc9821dfbfca4ae30204706fb5383d5d92f9295e1c5355254d4cd7acf1ec7ecacae4d655072426467e739e704054fe87c25ba5789f7f5e264cb366895bdda993f7cebbc78e4908a95504c88001e28058b5cf91995454c86f2c3dddfcd776b76f18e0ff02844d08ad0305889fa062359d0910774f26805c480f1d92135e793970f7ddc08409c06db7397f4e8f1eb2da18ac02e4ec59e0bbef9a1720ad5bcb67e4e94a589999221495e302981722f7de7be2749971c15193c99656b367cd92fdad5e6d4c8018a9d8b271a3acfceedfefdebe039dc387e5d82c5eecd9fde87540545cbb990e4865a5843d3912209e2ec57be89054bd9a3f5ff21f6c36e0bcf3bc77de55df7fab0890941409ab54958c0299cc4cf98d39ea8d64946076408a8ae88058050a103fa12501e2eec904a84fa8dcb70f78e209d9c7fffd5ff38e8acd16dc0d097ffc51c2e19a132080772a612927c6fe78a5a602b9b9c67220340df8ec33f9bf19171c5727932929c085174a32ba190e883b9f818a33f745af077f401507484fafef13e109f43a2080ac6e9ae980ecd923e5761b0b907efdea176e3cc50b2f001d3a00f7dc537f9f5a5cf0860b60951e208a60aa84959121b79e70d98259801417d301b10a14207e8212208e7ef8ee3621542801b27429b06489947b74e582939a2ab1c8c1d8182a3353e2c0478c687ebb1e3d3c2b406a6ae418341642eaef2d5bdc7fed5dbbea0b1c98e980b832999c354bc4cfc993be11206a82132cddaef5a20448bb76c09b6f7a6e3f4ab4ea11205dba98eb80a80a58030736bcdf7ee1c61314168a089f370f68dbb6fefed4545924f2a4f0531c38209fbd3b45203c419f3ee272054322ba1220662f825456caf9dcdd3943731539fd01866059070a103fa14d1bb1e01b3b209a66dc0189899155e9975f167bff81075c7b5e6aaa348ddbb3c7fd7dfb2b99993221898a6a7e3b4f3b207bf648d85c6301d2bbb71c57230e555a5a7d83456f3a200070e38df5932ea30244efd8cf9e15f708a00071465e9e84fd4d9b2602c4530df9cacae47bd0aa95ebcf31bb19e1ce9db290d0a143c3fb3d5d8af7a597a4b7cffdf737bcffbcf3e4d61beeb39512d001096bedd327f00548559574bdefda55be5f66ba5d46aa6602725d292b93f3a4bf515b2b7328866059030a103fc25133c2f27249123422406c36b9988685c98a9ba3aede8e1839529e1b8c61589999cefb7fd8a30488a7c2253233e5188c1ad5f07e3362c5d3d280f1e3e5ff663a20ae546b6bdb16983a55feefae00090b93157abd0ec84f3f49d2bdbaf893a6a8d0b83bef947e382a54cf6cf4744157c4c599ef80340ebf02e47cdcb1a367be23c78e01afbe2a8b418d854f6cac2c3004a3000182a31256569684f6dd71872cf29929a8cd102080774b419b45498988103a20d68002c48f70547fdbe8c94431772ef0cf7f360d33688ef6eda52a49b009901327e402d852fe072002e4d429cf9dac33338173cf958976638cc48a9f3e0d7cf51570e59532c932cb01e9d0c17581fbd863927cab4aabba833bbd40d4e4e6ea41931b800000200049444154ab29409ca104c8c8913239576593cd464f177485271c104702442ddc78e23bb278b1bcfe9c398e1ff756fe9d150588aa8415c8646488bb7ed34df2b799df31b304883f8661a9e2057440ac0105881fe1c801314b804c9d0adc7ebbfee7a5a602df7e6b6cdffec6d6ad32a9775580009e0bc3faf65be7e3484d95c9b73b31ea1919122b3c71a27949877a2793bd7b038b16b95f5e1a70af6b6f76b68c73cc18e9b172e284fbfb0f549400b1d9245f67f56acf542672d701f9e517734a4797968ac3a33aa037c61302a4ac4cfa2fdd7baff34ed5a9a9b24a5e5969eebeeda9a991247bab09909414b9ee1d3feeeb91788e8c0ce0a28ba4d081cd66be008988703fafc79f05885a98a003620d2840fc88e604487cbcf7c703c88570e74e59e50f163233c5fde9dfbfe56d7bf4905b4f089093272551dc990031122b9e96264d16fbf7372fe9d09dc9a451a2a3f53b20d9d9b2cadaaf9ffc4d17a421b5b5f27d56a171b7dc2293a47fffdbfc7d9596bae78000e608a25dbbe4d6910302c877c4ec24e1254b44583cf490f36d5253254fe0fbefcdddb73df9f922e2ac284080c075416a6a804d9b64012422427e67660b10237dc3fc5980d001b11614207e84a38960418184b5b4940ced2952536542b26d9b6ff6ef0b323325e722c4855f4f972e9240eb0901b26d9b7cf6ce044874b4acd0ba2b40264e948b94af1c10337067ecbb77cb24a76f5ff99b02a421858532315502242606f8ed6f250ccbec5ca7b232f71c10c09c30ac9d3b25974889d1c62427cbf7cbacc9d8c993c02baf0077dde5bc092c000c192209d99e0cc3b25a095e45fffe725e0a5401b273a7b83b63c6c8df66f79b315ab4c6dde21e56a0a848aec756a9ea16ec5080f811ce1c10234d088d72eeb952a12b58f24034ade50ee8f68486caf1f18400c9cc14e179eeb9ceb771a721e1e1c372719f3851fe76947be40efee080d4d64a65b1941411f65dba5080344695e0b52f0e306b960837b3c3318d38206624a2efdc2913deb030c78fab4a58aa6a9a51fef10f292cf2f0c3cd6f171e0e0c1be61d019294e4b97db8439b36f2dd0b5401929121c7571516313bcccfe89c212c4c2200fc558074ee6c2cac97980705881fa10488fd2aa3d1d50ca3b46a2527ca601120870ec9c4c655010278ae146f66a624013797d49d9a0aecd8019c39e3faeba6a589bb73d965f2b73f3b207a05c8e1c392803f6080fceda924637fc69100b9ec32f9dbec64745f3b203ffce03cfc0a9092b08039df918a0ae0c51781db6eab0fdd6c0e771617f470e080b83091919edb87bb047225ac8c0c39b61111f277bf7e92c76756a96b33e60c662d4a791b3621b41614207e444c8cc4fd9e3c597f9fd1268466e0e90ba19550ef53af003974c8336369691ca9a9122eb36387ebaffbd967923fa2267e6609105f38207ac7ae26352ace9c02a42979792224edcb29878448c9d0152b1a9e9f8ce2ce77263252aac2197540344d72409a13206ddbca6ab219df91d75f9709d2638fb9b67d6aaa4c4c3db5126dc50a588a40ad84a569224054f81520e7a0eaea7ae16f14b30488bf3a201420d68102c48f501551ec571e7ced800072213c72a43e213e90c9cc9490043da5613de180e4e7cbbf967a910c1e2c76beab02b1a606f8e28bfaf02ba0be94add1f87e5f3920a74eb95e2d283b5b423cd40ab412209eeae3e28fa80a588db9e30ef9acdf7fdf9cfd9c3923ffdcf9cec4c51977400e1d920a68cd0910c01c915a5505fce52fc0f4e952fdcd15d4e2c3962dc6f6ed8c0307805ebd3cf3da46494991f15554f87a24e6b277af88d0c602043047e49e3c29dfe9601520c5c54c40b71214207e44630162461774335017c26070419a2b7beb8c1e3d44a0d5d69a370e579d98d6ad81e1c35d8fcddfba55569d1b0b909a1ae3652f7de580a87dbb4276b6c4fcab0203fdfa494cbe998dedfc1d6702a4470f60c204f3c2b054e34a77be335dba183f663b77caad3704c85b6fc982c2ef7feffa737af5926b82a7cebb5676405252e4fa677605325f93912121b5175c507f5ff7eeb28864860031ab6cbfbf0a103a20d682024407b7df7e3b4242429cfe2b2c2cacdb363b3b1b93264d42bb76ed10131383193366e098c1a0492540d40fbfa44456ce7c2d401212e45fa0f703a9ae96dafb7a0548f7eef25c339ba37dfbad94c975e5d8eb09914b4b931567fbceea66945daca81017c2170e08e0fad855052c855a7d0cb4898e119c09104092d1bff9c69cf0182540dcf9ce98d18c70e74e2944a07af938a35f3f991cbabbc070f62cb0702130654a7dee912bd86c122ae9090172e68c4c56ad2c4080c00bc3cac800468c90d03e4568a8e41a518018870e88b5a000d1c13df7dc83b7df7ebbc1bfb7de7a0b6ddab4c1b9e79e8bf85f9b711c39720463c68cc1fefdfbb170e142cc9f3f1f6bd7aec5840913506da03b969a082a1d63d6c9c40cbc9107f2c51712fea427a1ba2566cf968bfe7befb53c81f8e107d9b73b020430370c4b4f25aed45459cd74a52f425a1a70e9a5525c4061860031b29a6d0425405c4944d73499d0d80b905ebdc40d31e3e27fdf7dce3b5bfb0b9ad6bc00b9e61af9be98e18228d7ca9def4c5c9c390ec8c0812d57cc494e16819d9fefde7e56ad02f6ef079e7842ff73d579d7ec10c1bc3c794dab0a904e9d24413e900488a6011b37360cbf5298558af7c811b9353a6730ab379437a9a99131d301b10e14203a38fffcf3317dfaf406ff92929270faf469dc7cf3cd75db3df7dc73a8a8a8c0faf5eb71fffdf7e3f7bfff3dde7fff7d7cfffdf758ba74a9dbfb8f8c94b2ab561520df7d675ea50e477cf6995c18b76f37ef3557ad92c9e9b469c0d0a1f2b7b38b7966a64ccc870dd3b70f2540cc4a443f7b563e6b3d02046859209696ca36f6e157803902444d267dd10704704d801415c938ed57a1c3c345f49a2140d6ae95e3e6cf9494489e873301121e0edc7aab8414555519db975107c40c01e2ac03ba3d4663f4d7ac9130afa143f53ff7fcf3e53b6b56196085557b80d8136895b0f2f24420381320669c837ef8414225ed1d1677500e883fe5c6a9f1d201b10e14200679f7dd7761b3d9307dfaf4bafb56ae5c89c99327233131b1eebe4b2fbd14c9c9c978df6086a67df93b5f7741b727355526263ffee8b97d28e16196d3a212e75f7d55c246e2e2a4a1da79e78913d0f8e49a99290dc0f496a58c8991928a6639203ffe28a5625d15204949f2de5afadcd6af1717c81302c4570e88da9f2b636f5c014b61c6c5bfa44426186686e1f9024725781b336b96b86d6bd618db975107a4a8c8fd09525595f4836929ff0390df57ab56ee7d47344d16562ebf5cff7301395701e6bbcf070e48e88fdd25cc72045a25ac8c0c71db2ebeb8e963fdfac90296d1a4fbac2cc909344a4c8c84159b59f1ced3a8732f1d10eb40016280eaea6abcfffefbb8e8a28bd0e3d7b239f9f9f9282e2ec6c891239b6c3f6ad4286c37b87c6fdf8cb0a040d47cebd6865ed214468e9450154f8561699a9c3c01f3f6619fc87dc10512e2b57ebd7c9e9326c94ad4c68d0db7d71b7e05c845c5cc4a58999932391831c2f5fdbb122297962609d88d7b10b4692302ca0c07c4db02a4552b2917eb8a03929d2ddb37ae42648600513f7b7f4f667745800c1c2813e3d75e33b6afb232391e6ddae87f6e972ee214ba5a7ca0317bf7caf35d1120616112aae7ce7764d72e398f3716fdaed2b1a34c4e3d21407af468188a69355252c4f93110d56c293232e4fbe6e81ca95cb67dfbdc7f7d4d93f3905e07df11662c4a791b0a10eb41016280b4b4349494943408bf5289e8f10e6c89f8f87894949418ca03692c40ac107e054868d8a0419e1320870fcb243239d95c01d238917bdc3860d326e0bfff1597e1924ba4b24f5a9a4c4adc1120805ccccd14200307ca67ee2aa9a952aed3599e8ba6c97b743611329a7468249cc628ae8e3d3b5bbe5f8dbb5e2727033ffd241352775102a4bcdcbf4b87e6e58903d85218c3ac59f27d5231e7eea0aaa6b9d3b5d868334255016be040d7b67757a4a6a5c9e7397ab4fee72a3c917f67e50a588a9414111f3ffde4eb919843e3fe1ff698518af7d021b9869ae58000fe2540540e2443b0ac03058801de7df75db46edd1a37de7863dd7d15bfce2ec2c3c39b6c1ff16b6bd38a66662073e7cec5d5575fdde0dff2e5cbeb1eb74ffeb24213427b3c9988aedc8f7bee918ba319a12c99998efb68d86cc0155748bcfeca954061a1382240cb7d379c61b603a2771ca9a95246d75922e3debd7281f29400292d95fc005f745576b51b7ae30a588a7efd64a273f0a0fb63c8caaaef58efcf6158797922a65b120553a78a6b6620e5cd50df18d5a7c75dc7e9871fe437ebeafe55252cbda4a50163c7d677bd7687d454e0fbefcd2dcee10f0244e56a0542185661a1b839ce04486cac7c178d0810b50812ac02a4a848ae41eddae97bdef2e5cb9bccc9e6ce9deb9941061914206e72f2e449ac5ab50a13274e44273bcf34f2d71956a583ce67677ebd424436330b5bbc783156af5edde0dfb469d3ea1eb7aa0302c885f0c71f6595d76cb2b26455f3da6be56fa342c795446e9b0db8ee3ab9b8bff30ef0f0c340dfbeeeedcf2c0172e2844c94f53a31a346c9fb71f6b9a5a549e8d9d8b18e1f375af5c4174d0815aa91624b34ae80a53063f571fbf6fadafefe1c86d55c052c7bdab7076ebc1178e30df7cbd31ae91b638603e24af89522395926ed7a12ef4f9f06befacafdf02b456aaa0864338b73f88300e9d245ce29812040befa4a6e9d3961369bf15050750d352367d41f05882ac1abd7519d366d5a9339d9e2c58b3d33c8208302c44d3ef9e4135454543408bf02ea43afec7b82280a0b0b11131383b0c6311e3ab0ba00d134696667362a76f59c73e4c2635480ecdae57a227768a874287ee105f7c2410011200505c6e395b76e95cf58af00e9d041f23b9a1320a3473b8fb737c301f176fe87223abae5b19795c92aa4a33e0c8989b242edeec5ffe4497198aeb842fef67707c41501024818d68103c0860deeedabb4d47dd1dab1a384d2b92bf6dc11203535524ed7553232a4378e51013278b07c3fcd729f4f9c10c16e750162b3054e25ac8c0cf90e75edea7c1ba3a5785502babbd7307ba2a264c1ca9f04089b105a0f0a103779e79d77d0ae5d3b5c7df5d50dee4f484840e7ce9db1d5c12c7ccb962d18ea4ead453b9400a9a9018e1eb59600e9df5fec4d4f8461d99f3ccd08f5d29bc86d94eeddeb3bd71b2133535697fbf7d7ff5c679f5b65a54c129b9b08d9575f73075f3a20ae8460a95554470e484888385fee0a90efbf9763af2a1d0583030200175d24a149ee26a39795b92f5a6db6fa4a58eeecf7f061fd0204d0f71d494b93f3823bbf657bc2c2e4dc685623587f28c1ab08944a58cde57f28dc0df3539895800ec8efcbe835c1dbb009a1f5a0007183e2e2627cf1c517b8f6da6bebf23aec9932650ad6ac598323761998e9e9e9c8cdcdc50d37dc6068df3131123eb46f9f88102b0990d05009f5315b80fcfcb34cdc55ec6a4b09d5ae909929130c772aecb88359cd083333e5330e71e3979b9a2ab1eda74f37bc7fd326498c6e4980f8ab03e24a085676b65c54fbf573fcb891f087eddb65923878b08cc55f1d9053a7e43be0aa00b1d9809933818f3e72af1a9511070470bf17c8ae5d72ab4780c4c7cbaab05e0172f9e5e6ac489b997fe74f02242545ca251bb916f89a921271dc5a1220c9c9f2fb73e73cdcf81a6a06fed60d9d0e88f5a0007183152b56a0a6a6a649f895e2f1c71f479b366d306edc382c59b2040b172ec40d37dc80c18307e38e3bee30b4efd858b9fde107b9b59200013cd39957c536abd59bd4540913306247bb5b52d75dcc10209a666cdca9a9225a5542bf222d4d2650cd4db8cca882e54b07a4a5b167674b3f0767e95946044856967cb6ad5b9bd320cf57b85282b7313366c882c93befe8df9f11070490cfda1db1b773a7949fd5e34ce88dd13f7c58be7346c3af14a9a95224c10c717be080fc0e5422bf954949910515b30a7cf8824d9be4b6a54a68ca6573a7e964e36ba819508010a35080b8c1bbefbe8b2e5dbae0b2cb2e73f878626222366edc88debd7be3b1c71ec38b2fbe88c99327e3f3cf3f3794ff01d40b105526d28a02e4e851732f08595992c3d0ab97fcdd5242754b9c3821177f6f0a90f6ede53d18f95c0e1d92c9abbbe31e344826168d3f375756626362e442ef6ea51d5fe780b434f6ddbb1de77f28faf5936377ea94fefd6fdf5ebff2e86e58901570478074ed2a93ec8f3fd6bf3fa3df99b838f7c4dece9d223ef4f657d22340d2d2c4c5747209d18daa8a67860b72e0808871339c194fa37eb3fe9c079291210b542dfdaefaf4915b7716421a5f43cdc0df040843b0ac0705881b7cf3cd37282c2c84ad9933f4800103b06edd3a9c3c7912bffcf20bde7aeb2d7436e1db6fef808484586f954a4d8ecd0cc3dabe1d183ab4fe82d8bebdac7cb9bb0f7713b98dd2bdbb880877b16f9ce80ead5a49c348fbcfadb050be4b2dadc41aad7a62349cc6086aeccd856139ab80a570b7115865a584f4a895477f77404243f52f7a5c70814c80f4b8a2b5b55236da1721587a13d0157a62f4d3d2a459a359a2bc470f738a7300fe51014bd1a38784d1fa731e88caff6849f0b56d0b2424b82f40860d3357541aad8ce84daaabe51a4407c45a5080f8196a32f5c30fb2baa87a0b5885ae5d6525c74c01a212d0ed3112f36c2491db08464bf16666cacaa411d1999ada3059f5b3cfe4a2346142f3cf332a408c86d318213a5a6e9d0990d3a7257cc51501a2f7e2bf6b978420058a039298a8bf3bf6b06172fcf5f451397142048b510744ef67ad69ee0b90e46411f4274e34bfddd9b3c0175f98177e0598579c03100162e64ab927090911e1e7af02a4bc5cae6f2de57f28dc0d053533015de14f0e884a96a703622d2840fc0cd548e7c001eb855f29cc4c882c2b93d2968e0488a3846a57c8cc94d5477712b98d60860031eadaa4a6ca185495e8cf3e934a60ca59738611015253637c35db082d39207bf7cac4b3b910ac981811327a2ffedbb7cbf76cf060f9dbdf1d103de1570af5dbd5d3a7a2ac4c6e8d3a20274fea3b471c3922df55770508d0728cfe77dfc9fb33538000e614e7d034ff724000f9ddfa6b08d6e6cd727ed42340f4e63e3abb861ac59f04885a88a003622d2840fc1035a1b2b200f9ee3be33d2f0060c70eb96dbc7aa312aab76dd3f77a4613b98d6044805457cb7b35438000f219d4d68a0051e5619bc38800512bc2be76409c8dbdb912bcf6b8b3fa9895254e9baab6161727ab7167cfea7b1d2be0ae00898f1731d0b8f84173a8aa59461d10409f0ba28a7bb823405493d296be23696922ac468dd2bf8fe630a33847519108367f12202929f21b36b3f089b7c8c890557967d5f71ad3af9f085c3d22d3d935d4283131e2e0e869bee92b8a8be5960e88b5a000f143d46ab59505c89933f589f246c8ca92c4e9c627e881036552a7d769319ac86d841e3d64f25951a1ffb93ffc209fa9d1712726ca8430335356a48f1d736d25b6634759c9774780a8c9a4af1c10b55f670e4876b67c261d3a34ff3aee0810fb04744026e29ae63f2b87f6b82b4000f90c7ce18000fa1ca79d3b253cb3470ffdfbebd851448f2b02e4b2cbf487b2b584d1e21c807f95e055a4a4c839c61f431b5dcdff502427cbf5233fdff57d38bb861ac595dc3aaba0ce017440ac0505881f627501327cb85c5ccd08c3dabe5dc2571a5fac1d2554bb82ca7ff09503024898875e3233e53d1b5dc5b28f154f4b9370be0b2e68f9792121b21aedcec4594d267de580b46a2593436717ca962a6029faf5ab0fd772859a1a6942687fccd405d0dfc2b0aaaaa48f801101e20f0ec8ce9db2b8e16eb26e4b22b5b4547e7baeb88e7a51c5398c3424f44701e2af95b0ce9c91ef82abe157807bb9685959c09021e60b5ea37981dee4a79fe47c1015e5eb91107b2840fc10ab0b90c848110d6608104709e80a77724d5422b72f5642940071a7125666a65c449cf5a9d0436aaa5402fbf45360fc786992e70aeec6fc9a3199344a73bd405aaa80a5484e96f7e2ea67b077afac5636764000ff5bad3d72448497bb0264d83029cfad728f5a4289d6965ca9e650e1167a1d1077c2af142d55c24a4f97f019b3f33f1446f3ef0e1c90dfa991cfdddbf4ee2d936b7f4b44dfb24584bd1e01929424ef558f00f144023ae05f0264efde7af146ac0305881f627501029893887efab474b96d4e80d82754bb82aff23f00097f02dccb033173dca9a9929cbb6993be8990bb6517cd08a7314a74b46307a4ba5a62aa5d152080eb177fb5e23f7468fd7dfeea80b8d303c41ebd89e8a5a5e2ce1959b56dd54a5fe7f9ea6a39df181120ca0171e692a5a5494e903b215eae909a2a22ca9de21c80ff25a003b280d2b7afff09908c0c117a7abe6f616152a1ccd573504bd75023f89300c9c9a100b12214207e88bf08903d7bea279feef0c30fb25ae86cf5466fcf91ea6a9914fa4a804444c8aaac5e01525a2a2b38668d7be4c8fa10133d02c4880362b3f97655d5d9d8f7ed9384705742b0f43602cbca92c982bdf08a8a927ffee6802801e2eec43929493e0757c3b0cacafe7f7b771e1f5579ee01fc3703210909eb6411080844130942836c06051144c146c484e5436bf1bad05e1704ac5bd54b5b45d40bb6b8f416515cda8bf40211172cc82288562168524a4920618b068210482060424272ee1f8f27ebcce49c3333e79c197edfcf279f819993e1256732739ef7799fe7f54fc0aaa7ebd8be7df21ee16b0072e68cfbf3ab281280042afb01186fcea10ac6000408ce4e58dbb601d75eabbf95be9e4e58ad7d86faa24b17795fb77b00a228f29eedef1a18f29d9f57059219d499871e3dac1d8737eacebcd9d9c6d73be7e4c82ce69557ba7f3c214182b01d3b8049935a7f3eb5905b1d9b158c74c2cace965b7f8dbb4307f9995656eaebf7ef724950a95779b9ac4f37bbed71635dbbbacf9469ed800548d3839e3db50720cd0bd055c1d88ab7a848c61d1161ecfb1d0eb908d29301f1c792bdf878e9c877ea544337344fd4a619be0620805c2036dfaf67df3ef9dd0f6400d2b839c7c891fabfffd0212023c3ffe30ab47efd8065cbac1e85763535c0975f02f3e6e9ffdee464e0fdf7b51ddbda67a82fdab4914902758f8dd6e4e7cbfff7fcf9d68f0d0b035e78a161d2c717c78fcba4003320f6c30c48109a300178fcf18640c48e2ebf5c36255cb7cef873e4e602fdfbcbde279e34df58cf9b1d3be48d2d10b3415af5eaa53f0059b54a96bea86d3efde1c92781679ed1f73dbe6440acacff0064ecee9660e5e7cbd8b4d60469ed84a5289ed75e07e36684be74c052e92944f75706e49e7ba40d699f3ec0d34f7bdf2470f76e99d4f0e5b59a9828c196bbd7c8279fc87bd975d7197ffed6186dce0148e6e4db6f833303d2af9f4c30f8927137536e2e70ee9cbefa0f555292048a5adadfe6e64af0e1ed33d4175a3f132e5c007efe73edafcbb56b810f3ef06d6c2af577910188fd300312842ebd1478ee39ab47e19dd309dc761bf0de7bc01ffe60acab8cb70274d5f0e1c0fcf9f2e1d95a2a5b2de4363a8beb0f3d7b4a21aa561515c0dffe063cf288f1ce3cee4c9ba6ff7b8c0620feba98f485a72274b50396d69f6d72b22c9d68cda143b2a15d2865407c0d40060d025e7c515b36c25f41ebcf7e068c1d2bb3a90b16002fbd043cf61870fffd2d3be2f85a800ec8855eefde9e039091231bf6840994e1c3e53d43afe262b9500cc600445d42999fafadab9fd5b66d93d78191da8ca424595675f0a0d41379939313d80937ad9f092fbe281d0177ec9000b9358307fbafa6a7a040dedf1313fdf37ce43fcc8050c06466ca8c9a91f5c8d5d5c0bfffad2d00397b56dbfa5f2b0bd0557a9760ad5c29858477de19b83169e572c985616dadbeefb34306c45311bad60e58aaa4246d1b81a933fdcc8034507f97d58dd1bc292bf35fd01a1f2f9320070e48e0fde4937231f2ca2b4d9783f8230001dc67c9aaaa80ad5b03d37eb73923cd3980e06cc1ab4a4e968bcc602944dfb64d02a576edf47fafd66618d5d5f29a0e4401ba4a4b00525000fcee77c0430f690b3e00ffd6f4ecdb27930281ca0291710c402860aebb4e2efcb2b2f47f6f5e9ebc81b6367b336488645b5a4bedfabb90dba89e3d25ab71fab4b6e3972d03c68d0b5cd71c3d5c2e595aa47799831d32202e97d4bc34de04b2ae4e6a5af40620e7cfb71e44e6e4487d52f33a0020f832207575f2fff53500494a92595f2dcbb0cacbfd1fb4f6e801fccfffc805d18409c09c39b2acf1f5d7e522aaa8c83f0188bb56bc5f7c21afbd40d67fa8f436e750a90148efde7e1d8e29222365dcc11080d4d5019f7f6e6cf915209ba64645b51e80e4e549ad49203320ad7546acab0366ce94dfbddfff5efbf3fa73777b76c0b22f062014306ddb02b7de2a0188de37929c1c99d1fac94fbc1f171d2d6b5c5bfbb0ddb9536eed108000dab220f9f9c0575fc93a763b30da76d12e1910a06916a4a8482e0ab574c052699d7df454800e346440fcf1e16a8663c76432c0d700a44d1bf97dd652881ec8d74c9f3ec05b6fc905da35d700bffc65c352167f6540f6ef6f9a29fce413b970f4c7f3b7466dcea17743c24387648c562e51f545b074c2faf7bf25c0361a80381cda6ad1b47e86faa2b50cc8ebaf4bb667e9527d4b0ffbf5939f913f266ad801cbbe188050406566ca92953d7bf47d5f6eaebcc94647b77eac963d47b66f970b1a7f16721ba1270059b64cdee0274e0cec98b4f22500b13a03e22e00d1d3014b75e9a5d2c8c0db87bfa2785f7b1d1f2f59146f05d176e2eb1e208d692d4437236b969c0cac58216bd3afbd5666d05b5b53af455292cc3cab3f374002901b6ff46f1d9737a34649a7243dcb2583b505af4a9d35b7bbeddb256befcb64989656bcb9b9f21ad7f2196a94b700a4b81878f45199401b3346dff3fa6b77fbda5a990c6006c49e18805040dd7083b460d5bb0c4b4b01ba6af8700970ce9ef57ccc8e1dc0b061e65d0078d2bdbb7cf8b416805457037ff90bf08b5fd867edaad1002410cb69f452c7de3c00515beb6ad5b6add40f780b404a4a24c3e12d030204cf322c7f06208306c98593b7dfd5aa2af932eb35337020b0668d5c80fbe377ad712b5e405e0fbb779bb3fc4a3577aefcfbefbda7fd7b422100397cd8f8268c66c9cb93f6b29191c69fc3dd32bfe6025d800e3474176c9ecd5514e0befb64a9d8c285fa9f373151267a7c0d288b8a64328001883d3100a1800a0f07d2d3f50520b5b5322ba92700a9ab937effee288a042056eeffa16adb5682906fbff57edcdab5c08913c0dd779b332e2d8c04208a62af0c48e3b1e7e5c9458bdefd499293bdcf3e7a2b40071a7b86ac650000200049444154ea4282a510bda8483691f4c74692575d25af897ffdcbf3316a8d91d5af19a37af694f73df50271c30699f81837cebc310c1b261997f9f3b52ff50bf600242545feaf5a37e9b38adec617ee2425c9d2484f59d4da5a69f610c80274403e136a6b5bd634ae5c097cf411f0a73f19fb3d6edbd63fbbdbb305afbd3100a180cbc89019c0c2426dc717164a8f74adb337fdfa499ad9d332ac8307e5c2d3eafa0f95964e586fbc21171181d840caa8f07099d1d2138054554936c7ea0c48e7ce7211d83c0362e442a0b5f5d7b9b912f0786a1c108c19107f643f00d9d7272cccfb32acb232b9b5fa356394d329174fea6be4934fa4ad684c8cb9e378ea2909f4d6ae6dfdd8ca4ae0e8517d1b93da8dfabb6cf76558fe0a4000cf9fa9858592093223030234fd4c38791298350b983c595af11be58f9a9e7dfbe4734b4f969bccc30084026efc7849376b5d0ed0da0c72736dda0043877a2eba54039361c3b43d5fa0b516801417cb458b5d8acf1bd3bb17887a3169f56cb6ba6baf3a7645f12d00397cd8f38ebeeaf2414fcbfdba749119be60ca80f82b0069d74e826a6f85e8c19e01011a96c8d4d5011b379ad37eb7b99123a516444b16445d6617cc19904e9da488dece01484585bcf7eb697ce18e5acbe8692244ef67a851ee0290b973653f99575ef1edb9fd51d35350203f2bbd596e32074f0b055c5494b4bdd4ba0c2b37572e785adbacac31b510dddd07ed8e1db2e6d62e3bc7b71680bcfdb674a231b25960a0e90d40d48b493bcc6637de0be4d831199b910b81a424799d1d38e0fef1d6d65e3b9d9205b918332040eb85e8c19e01011ab26439394069a9b9f51f8d3df514909d0d6cdae4fdb860de03a4b1941459be6b577bf7caadaf1990ce9de53dc4530062e433d488e601c8faf5c05fff2afbee5c72896fcfddaf9fbc4fabef0746b005afbd310021536464482bdcd66a1f007d05e8aae1c3a5d8b3b8b8e56376d880b0b19e3d659cee82a5ba3ae0cd3781a953a578df6e5aebfbde9c5d32204043c12460ac0396ca5b2bde9327e535dedaeb375836235414ff0720830649d3084f19a450c8802425c9ebe0fdf7810e1dacdb9dfb861b243b3c7fbef7e30e1d92ac5c428239e30a941b6f9460cbae85e8eafb8ebfbaad79cb8004bafe03681a80545400bffa95d43add7187efcfdd78777ba3d882d7de18809029d2d365edf79a35de8f5314ef7b2878e269f3adf3e7e5f9ec1480f4ea25b511a5a52d1fdbba552e06ec547cde58b06740d4b1e7e7cbeb313151fff3c4c7cb45a5bb0f7f7569516b4b1f826533c2b232e958e5ef0c484d8de7d6dc6565726ef4ec1b60376a90fafaebd282342ccc9a71381c9205d9b64dbe3c397448de97dab4316f6c81909121f52cebd75b3d12f7f2f2e4e7ec8fd6b89e9a61a86dc0cd08402223e5abb41478f249b97ded35ff749b4c4af26d77fbca4a99046006c4be188090293a75929991d696611515c90588deb5abddba4966a17900b26b971441db2900510be2dc6583de78433e58aeb9c6dc3169e572b90f9c3cb1d3729ac64bb0f2f2e483a96d5bfdcfe37078fef0cfcd958b8bd6f69b09960c883f5bf0aa060e9465689e9661a97b8058dd32db17ea45cff1e3d62dbf52a5a7cbcffcd9673d1f13ec1db054975d26ff57bd6ddfcde28f0274959a01699e492f2a92dfa140d77fa85c2ee0e38f81575f95d798bf5e479191f25c460390fdfbe59601887d310021d36464005f7ce17de657bd2831327b73f5d52d03901d3ba4f03590bbc1eae56933c2b23229d4bfeb2efb5e7c19c9808487db6377e5e64bb07cb910f0b4fc212707484d6dbde831583220810840a2a22480f354881ec85dd0cde27235fc1fac0e409c4e999ddeb041ea41dc0995000490cf99b56b3d2ff1b392bf03908a8a96ef23be7c861ae172c9b2b761c3a4fb953ff9d2098b2d78ed8f010899e6d65be5c3f0fdf73d1f939b2b1767ddbae97ffee1c3816fbe910e1caa1d3b6426c82e9bf901406cac0445cd0390e5cba5a7fa8c19d68c4b0b3500d1bab7809d2e269b2fc10a5400a265e63198322011110dad83fdc55b21ba19bba0079ac321af91cb2eb3476bdbcc4c09fa3c6541422900c9cc94fd31366fb67a244d555549e30a5f3b60a93cd5a2f9f2196a444c8c2c317ce30dff2fe1f3a513d6be7df2d96397e633d4120310324d4c0c70dd75ded3e3beac5d1d3e5c8a0ffffdef86fbb66fb7c706848d399d52ecd93c0059b64c964bf8da3d24905c2e9959d45ae469a78b493503525626dd557c0d408e1f6fa871016436b2b050dbeb373e5e36efaaaa323e06331415c99a757f67e4aeba4a9647d6d6b67ccc4e41ab2f1e7aa8f5e26fb3b469033cf104f0e1872dbb449d3e2d3ff3500940faf797df4fbb2dc32a2c942623feca802426caef65f300c4acfa0fd5cc9952eb14883dabfaf593f7a073e7f47fafda01cbaeab09880108992c2303d8b2a5e986708d192940575d75957cd0aafb819496ca8c939dea3f54cd5bf1e6e4c8ceb5762d3e57e9dd0ddd4e17935dbbca05bf3af3eecb4ca4bb8dc076ed92cc90d60c0860ff2c88bf3b60a9060d9222517775346565f6095a7d3175aabd5a694f9f2e41c682054def0f9516bc2a87433e673ef8a06936dc6abe74de73273c1ce8dddbfa0064da34ff74bd72c797ddedd901cbfe188090a96ebb4d3e143efaa8e5632525f265b478ae7d7b294054eb40d4f5ce760c407af56a5a84be6c99a4ccc78fb76e4c5a180940ec7231a9f6c4ffe28b86253246b9db082c375796d669096ce2e3e5f6620e4000f7cbb0cacbed13b48692b030e0f1c78155ab1af6a300422f00016419d6c993de3b7f992d2f4f261efcb924a8f952d09212c9ee9a55801e686abb6223cbb0b80788fd3100215375ef0e8c18e13e3dae16a5fa327ba36e4808c86d4c8c3d3f581b67402a2ba5fee33ffec358572633e90d40ec7431a98efd8b2fe435111969fcb93a769480b1f1cc5c4e8e04c05a5aaeaa1910bb17a2072a00e9dc59ce81bb42743b65cd42cd1d77c87bf073cf35dc77e8904cdef8bbcec74a8307cb248f9d9661f9b3005dd5bc1b9f3f3e43eda4532779bdea0d404e9e942f0620f6c600844c9791211d592a2a9ade9f9b2b1726bd7b1b7feee1c36576eff4e9860d08edb806b4674fe0e85159039f9525e3bdeb2eab47d5ba50c8806cdfee9f42d0e6b38fb9b9da671e6363e5d6ce199073e7641963200210c07321ba9dea86424d7838f0e8a332e171f0a0dc77e890bce7daf17dd2287519d69a355277610781084092926499b1bad4cc1f9fa17663a41396ba34960188bd310021d365644821f3dfffdef47eb583902f1f84c387cb9ad1ec6cf9b2e3f22b400290da5a49992f5b068c1e2d1d73ecae6347c9d2046306440d40ce9ef5cf8540e300a4aa4a36d6d33af3d8ae9dfc5cec9c01519708063200c9cd6dda51adae4e8271bbbc6642d13df7c844c20b2fc8df43a90356639999f2feaad6045ae9c205c954f8ab03962a294936f554db65fbe333d46e8c74c252b342c1f0997a31630042a6ebd3472e3ede7bafe9fdbe14a0ab9293256dbb7cb9ccbedb39000164e7f3ad5bed5f7cae72389ab6b36d8d9d32208d37b7f36700a228d279edc2057d6bafe3e3ed9d0109c41e208d0d1a24c1865a830048fb5445b1cf6b2614b56f0ffcfad7c05b6f01c5c5a11b808c18211d05edb00cebd021d91037101910a06122c4ec027433f4eb279b0a56576bff9e8202e934191515b87191ef18809025323365f7d4ca4af97b5999bc49fb5a3ce774ca86482b56c8df870df3edf902450d40e6cf97802933d3daf1e8a17533c2da5ab9a0b4cb6cb6d3d930167f2dc13a774e66597373a503dbc081dabfdfee9b111615c9ffa9478fc03cbf7aa1d47819565999dcdae53513aaeebd17888e06fefbbf433700713a81499364a24bebbe4581e2ef0e58aa9e3d65595d4181fcee1c3e1c3a05e8aa941499dc517736d78205e8c1810108592223432ede366c90bffbb3786ef870992db9e20afbcea476ee2c1700fbf6013ffb996f05d1668b89d116809c3e2db7763a076a0d8bda5dc5178d671f7372e4e242cf79b4fb66844545127c04aa3182ba595ae34274755f153bbd664251870ec09c39c09fff2c934076d82c31103233e5a2dc5db30333e5e5c9f2d5eeddfdfbbc4ea774e42b2808bd0274951ab4e95986c516bcc181010859e28a2b6466435d86959b2b4b03fc316ba12ebbb2ebf22b409602a9599060597ea5d29a01512f26ed349bddb5ab5c0474eae4fb73f5ed2b1902f5c35fefcc6330644002b5fc4ad5bc109d1910f3cc9ad5103087620604908d6fbb76b57e19965a801e88da0cb513963f3f43ed243656cea1d600a4ae4e8ad043ede7108a1880906532336567deea6ab908f9c94fe482ce576ae7abb434df9f2b90faf4015253836fc6cae592ee48ad512f26ed349b7dc925c08001fe79ae76ede41ceed9239b10ea3d8fc19001312b005197c83003629e2e5d80071e9059f4500d40c2c28089135bd61b9a2d2fcfffcbaf546a2d9a3f3f43edc4e1d0d709ebc811c9ea3100b13f062064998c0cb9e0d8b2c53f05e8aad858e01fff907d35ecec4f7f923691c1d6b1249833202fbd042c5deabfe74b4a924d35abaa8c65404e9c905a193b32230019344882b09212f9bb1ab4fa234345adfbed6f81cf3f97e541a12a33535ab3eb6de5ea2f8a22ffbebf3b60a99292644fa97ffc23f826b3b4d2d3094bed80c500c4fe188090657ef21359c6f2d7bfca1bb43f8be7d2d2a438cfce7af70ece7eed5a03103b66402ebd543628f397a4a4862e4ea9a9fabe372e4e960b68ed2866a69a1ad9a7c68c0c08d0b00cabbc5cea13ecbe2167a8080f976e51a1ec861be43565d532ace262ffb5fe7647bdd02e2a0abd027455bf7e728da065b2a6a040de3f82f1b3f562c300842ce370c8ecd48a15324b14aab337a1c6e592027375f32b4fcacbe51c87f26cb6fae17fd965faff9ff1f1726bc76558c5c5121c053a00e9d54bd677ab05b4dc059dfc2d2202f8e94fad5b86a5665e021d8000a1fb199a92225966b535b8370505406222273182010310037272723071e244b85c2e44454561c0800178e595579a1c939f9f8ff1e3c7a343870e70b95c983163064ab52c9cbfc86464c8854e5818d0bfbfd5a3212dd44e52a74e793faeac4c2eca9d21fc2ea37ef81b99798c8b935b3b16a2077a0f1095c3213fbbc619103b65cc2834646602fffc67c3eeef66cacf9720285033f22e9704eda1fc19aaa713165bf0068f10be34088c0d1b36202d2d0da5a5a598376f1e5e7ef965a4a7a7e3c89123f5c714171763d4a8513878f0209e7bee393cfcf0c3f8f8e38f316edc38d4d4d458387afb19364c5a7d5e79a514f592fda901486b4b87ecb40961a0a81f7446661eed9c015103107f2e57f344dd111d6006840263c2040902ac5886959f2f9daa02551cee70c8fb50287f86f6ec299b0a6a0d40d88237383049a5c39933673063c60cdc72cb2d58bd7ab5c7e3162c5880caca4ae4e6e62221210100306cd8308c1b370e6fbffd3666ce9c69d6906dcfe904162e0ced59f250a33500292f0ffd8bc98404e0d1478169d3f47f6f5494b441b56b06242ece9cfd69060d92f78093279901a1c0888a02c68f9765588f3c62eebf1dc80e58aa5fffdafacd1603c9e1909f616b8d04aaaba5268f1990e0c0cb3e1dde7df75d1c3f7e1ccf3efb2c00e0dcb973a8abab6b715c565616d2d3d3eb830f00183b762c929292b072e54ad3c61b2ca64f37760147d66006a481c301bcf082b136a60e876441ec9a0109f4f22b959a3dcacd65068402273313d8be5dea9bcc949f1fb80e58aa295380a95303fb6f584d4b27ac83076549370390e0c00044874d9b36a163c78ef8eebbef909c9c8c0e1d3aa053a74eb8efbefb70fefc7900c091234770e2c4090c1932a4c5f70f1d3a14b9566fc94ae4a3ae5de5961910dfd9753342330390cb2f07a2a31b0290500f5ac91ae9e95227b1668d79ffe68913f23e19e80cc8c540cd8078cbf4b0056f706100a2436161212e5cb88049932661c2840978efbdf770d75d7761c99225b8f3ce3b0100253f36b4efd6ad5b8befefd6ad1b4e9d3ac53a100a6a6161b26f003320beb3eb66846606204ea7b4e4cec961d04a81d3b9333076acb9ddb002dd01eb629292029c39d3b067903b0505329971c925e68d8b8c630d880e67cf9ec50f3ffc807befbd178b172f06004c9a3409d5d5d578edb5d7f0f4d34fa3b2b2120010ee66138a8888080040656525c2c2c2dcfe1b73e6cc41e766576dd3a74fc7f4e9d3fdf95f21f28996bd407831d9baf878d945dd4eeaea806fbf352f00016419d6860d5c824581959909fcea579299888d6dfdf8da5a60eb56e0da6b8ded2b959f2fc5e7975faeff7ba9a9c69db0ba77777f8cda01cb9f9bfbae58b1022b56ac68725fb9bacb2ef98401880e913f5664360f06a64f9f8ed75e7b0ddbb76fc715575c0100f54bb21aabaaaa6af23cee2c5ebc1857856a336f0a195a021066405a67c70cc8f7df4b31a7d90188dac99caf190a945b6f9500e4fdf7016fbd60eaea80d5ab65a7f8bd7b81175f041e7a48ffbf979f2f7b04856a772a33f5ed2b3fc7bc3cc964b913880e58ee26807372723078f060fffe4317212ec1d2a1fb8f6177bcda3ff347713f36f42f2b2bab3fa6c44d9eb0a4a4042e97cb63f6832858c4c4780f40148519102dd41a103b75b0316b0f90c61aefa3c2d70c054a6c2c306a94e765588a027cf49104c4d3a6c9de1d6969128c18614607ac8b45dbb692ddf05688ce3d40820b03101dd4c2f2e2666d348e1e3d0a00888d8d45f7eedd111b1b8b9d3b77b6f8feecec6ca4a6a6067ea04401d65a06a4b25266d1399bed5d5c9cecf07bf6acd523696045009292d2304bccd70c05526626b079b34c90a81405d8b811b8fa6a60e244790d7efe39b06e1df09fff097cf515f0e3c7bc2e6674c0ba9878eb8475e60c70ec18039060c2004487a93ff6b95bb66c5993fbdf78e30d84858561f4e8d10080cccc4cac5dbbb649a0b279f36614161662ca9429a68d9728505c2ea0b4d4f3e3ea873b67b3bd5393a976ea845554244d06cc0c04c2c2800103e4cf7ccd5020dd761b505323990e40028dd1a3811b6f94da814d9b802d5ba4ee03006eb94566dff576cf3a730638728419107ff2b617484181dc3200091eac01d12135351577dd7517de7cf34d5cb87001a3468dc2d6ad5bb17af56a3cf1c413b8e4c7d60b4f3cf10456ad5a85ebafbf1eb367cf46454505162e5c88810307d677cb220a66ad6540cacae496b3d9defdb87a13df7f2f6bc5f5aaad052e5cd0766cbb76da8a33cdec80d5d8555701df7cc3d70c05568f1e92e958b20458be1cf8e413e9c2f6d147c04f7fdaf277a44b17a939c8ca02eebf5ffbbfa3ced43300f19f9414a9993b75aaa11dbc4a0d4058f01f3c9801d169c99225f8ddef7e871d3b7660eedcb9d8b56b17162f5e8cf9f3e7d71f93909080cf3efb0c89898978fcf1c7b168d122a4a7a763e3c68dacffa090a006209e6a179801d146cd80182944afaa928ba988086d5ffdfa017ffb9b14d87a6355003274a8740ce26b86026df264e0cb2fa5dbdbaa55d2023a3ddd73809e91017cf699f7ac6f736a00f2635f1af283c69db09a2b2890f7d34e9dcc1d1319c70c884e6ddbb6c5bc79f3306fde3cafc7a5a4a460fdfaf5268d8ac85c2e97ccbc5754c8729de69801d1a66b57b9e836b2046bf76ef9be050b809e3dbd1f5b5707ac5c094c9f2ec73ff38cac757777c15554045c779dfef1f8ea8e3b80810381f6edcdffb7e9e2f2c003406aaa2cbd6ad3a6f5e3274d02eebd17f8e003e0eebbb5fd1bf9f912c84745f934546a242949f60dcacb03aeb9a6e9632c400f3e0c40884837974b6e4f9e741f803003a28dd3299d798c64407273e5e269ce1cc04b67ef7a33664831ed7ffd975c500d1902cc9fdfb0f61d908c9655199076ed80e1c3cdff77e9e2131eeeb995ab3b7171c0c891b20c4b6b00c20e58fe171121ed783d65401a77d323fbe3122c22d2ad7100e24e5959c3d21ff22e2ece58062427472e70b4041faab43429b2fdf453b9e01f3f5eb21ddbb6c9e3e5e592d5b2220021b2b38c0cf9dd397d5adbf1ec801518ee3a61290a3320c188010811e9a62500e1f22b6de2e38d67408cee597afdf5c0175f007fff3b70ee9c042137ded8b0df010310a2a63232a47bd6dab5ad1f5b59091c3ac40c4820b8eb8475ec984c9c3000092e0c408848b7d602106e42a89dba19a11e3535c0ae5dc6031040965d4d98007cfdb56ccc76f428f0cb5fca630c40889a4a489025825959ad1f5b502075570c40fc2f25459a0734de3b892d788313031022d22d2a4a96f03003e2bbb838fd1990bd7b81f3e7fdb3e6d9e190bd1176ed92b6a48f3dd6d09d8b881a646400ebd74bd6d01bb6e00d1cf567ba6f5fc37d0505524fd7b7af35632263188010916e0e87f7bd409801d1ce48062437576e5353fd378e366d809ffd0c78fe796dfb85105d6c32336579556b0d2ef3f3e5f7baf95e15e43bb5ad71e36558050540efded25c80820703102232c45b00c20c8876717112b055576bff9e9c1cd9b8d05d0732220a8cc444d9b4b0b56558ec8015381d3bca72b8c685e805054072b27563226318801091213131cc80f88391cd087d29402722e33232a410fdfc79cfc7b003566035ef84c50e58c18901081119c20c887fc4c5c9add6655875750c4088ac9299291d97366d72fff8850b7241cc0c48e034ee8475e10270e000039060c40084880c71b980d252f78f3103a29dde0cc881037201c44db788cc979222cb7d3c2dc33a7040bad43100099c9414f939575703870fcbcf9b0148f0610042448678ca80d4d60267ce3003a2556cacdc6acd80a805e80c4088cce770c832ac0f3e90d9f7e6d4a5415c821538fdfac9e74c61215bf006330620446488a70044dd299819106dc2c32558d39a01c9c991224c3570212273656602a74e019f7dd6f2b1fc7ca05327e0924bcc1fd7c542cd2ee5e54900121121ef89145c18801091212e976c06d5bc7b535999dc3203a25d5c9cbe0c08eb3f88ac73d555b259a7bb65586a072cb6b20e9cd8586982929f2f01c8e597cb3e20145c78ca88c8104fbba19797cb2d3320dac5c76bcb80288a644018801059475d86b5668d3485682c3f9ff51f66503b61b1056ff06200424486780a409801d14feb6684c5c552f8cffa0f226b656602c78e015f7dd5705f5d1db0772feb3fcca076c2620bdee0c50084880c692d00610644bbb8386d1910b5009d1910226ba5a5499d47e36558df7d079c3bc70c8819525224d8fbee3b0620c18a01081119e26d0996c3c15dbaf5d09a01c9c991b5cf3d7a047e4c44e499d309dc761bf0de7bb2341268e880c50024f0faf56ba83f6400129c18801091215dba48a0e12e03d2a9138b02f5888b034e9c68b99ebc39b5009d05ae44d6cbcc048a8a64620090002432520ad429b01a07790c4082132f1188c890366da4cec35d0684cbaff4898f97bef6a74e793f2e2787f51f447671dd7540d7ae0dcbb0f2f2a420ba4d1b6bc77531484800a2a3e5e7af66e329b830002122c3dced055256c60274bde2e2e4d6db32ac1327a4089df51f44f6d0b62d70ebad1280280a3b6099c9e1909f35b31fc18b01081119e62e00610644bff878b9f55688ce027422fbc9cc944e4c7979f2c50e58e679e411e0a187ac1e0519d5d6ea011051f08a896106c41fb464407272800e1d80be7dcd191311b5ee861be4f7f2cf7f96f73e6640cc33658ad523205f30034244863103e21f1d3a001111de33206afd078bfb89ec233c1c484f07de7843fece0084481b7e941191612e976c8cd7183320fa391c9205f19601c9cd65013a911d656602e7cf4b4dc86597593d1aa2e0c025584464183320fe131fef390372fa34b07f3feb3f88ec68fcf886f6bbedda593d1aa2e0c00084880c73b9a4756c5d9d2c0d521466408cf29601d9b54b6e198010d94f5414f0f39f33f820d28301081119e67249f071fab4643d2a2b819a1a66408c888f07f6ec71ff584e8ed4885c7185b96322226d5e7fddea11100517d680109161ea0650ea32acb232b9650644bff878cf19909c1c60e04059634e444414ec1880109161cd0390f272b9650644bfb838cf35202c402722a250c20084880c6306c47fe2e3811f7e00ce9e6d7a7f65a5ecb0ccfa0f22220a150c4088c8304f01083320faa99b1136cf82ecde0dd4d632002122a2d0c10084880c8b8c94afe64bb09801d12f3e5e6e9bd781e4e4006dda00575e69fe988888880281010811f9a4f15e206565d2ad2922c2da3105233503e22e00e9df9f3f5322220a1d0c4088c8278d0390f272663f8c72b9642f95e64bb058804e4444a186010811f92426a6690684f51fc6b469233fcbc619909a1ae05fff62fd0711118516062044e493e619100620c6c5c737cd80e4e703d5d5cc8010115168610042443e71b980d252f97359199760f9222eae69062427476e5353ad190f11115120300021229f3003e23fcd33203939405212d0a1837563222222f237062044e493e65db09801312e3ebe69068405e84444148a188010914f5c2ed9adbbb29219105fc5c5356440eaea807ffe9305e84444147a1880e8b075eb56389d4eb75fd9d9d94d8ecdcfcfc7f8f1e3d1a14307b85c2ecc983103a5ea4279a210d278377466407c131f0f9c3a25ddaff6ef07ce9e6506848888424f5bab07108c66cf9e8da1438736b92f3131b1fecfc5c5c518356a14ba74e982e79e7b0e15151558b4681176efde8decec6c848585993d64a280510390e3c7818a0a66407ca16e4678e24443013a031022220a350c400c183972243232323c3ebe60c10254565622373717090909008061c38661dcb87178fbedb73173e64cb3864a14706a0072f0a0dc3203625c7cbcdc7effbd0420bd7ac9de20444444a1844bb00c501405151515b870e182dbc7b3b2b2909e9e5e1f7c00c0d8b16391949484952b579a354c2253a801c8fefd72cb0c88716a06e4fbef59804e4444a18b01880177de79273a75ea84c8c8488c193306df7cf34dfd63478e1cc18913273064c89016df3774e850e4e6e69a3954a280ebd409703a1b021066408c6b1c80e4e4b0009d888842139760e9101e1e8ec99327e3e69b6f464c4c0cf6ecd983458b1661e4c891f8f2cb2f919a9a8a9292120040b76edd5a7c7fb76edd70ead429d4d4d4b00e844286d30974ed0a1c38207f6706c4b88808a06347e0ebafa5189d191022220a450c4074484b4b435a5a5afddfd3d3d33179f2640c1c3810bff9cd6fb06edd3a545656029060a5b988880800406565a5c70064ce9c39e8dc6c0a79faf4e9983e7dbabffe1b447ee7723103e22ff1f1c0faf5f26766408888acb362c50aac58b1a2c97de5e5e5168d26b43000f151626222264e9c88356bd64051144446460200ce9f3fdfe2d8aaaa2a36e2bcb1000010774944415400a83fc69dc58b17e32a5e75509071b9807dfb00874366f0c9b8b838e01fff90dbeeddad1e0d11d1c5cbdd04704e4e0e060f1e6cd18842076b40fca067cf9ea8aeaec6b973e7ea975ea94bb11a2b292981cbe5e2f22b0a396aa726b51e848c533b610d1a24011d111151a86106c40f0e1e3c88c8c848444747233a3a1ab1b1b1d8b973678be3b2b3b3919a9a6ac10889024bed84c5fa0fdfa985e84c84121151a8e25ca50e274e9c6871dfae5dbbf0e1871fe2c61b6facbf2f3333136bd7ae45717171fd7d9b376f46616121a64c9962ca5889ccc400c47f1a6740888888421133203a4c9b360deddbb7475a5a1ae2e2e290979787a54b97223a3a1acf3fff7cfd714f3cf10456ad5a85ebafbf1eb367cf46454505162e5c88810307e2ce3befb4f07f4014186a00c20274dfa901083320444414aa9801d1e1b6db6e43696929fef8c73fe2fefbefc7aa55ab3079f2647cfdf5d7484e4eae3f2e2121019f7df619121313f1f8e38f63d1a245484f4fc7c68d1b59ff4121891910ff99300178ec31a06f5fab474244441418cc80e8306bd62ccc9a354bd3b129292958aff6d2240a71cc80f84fefde40a3842a111151c8610684887cc60c0811111169c50084887cc60c0811111169c50084887cc60c0811111169c50084887c161303242602fdfb5b3d12222222b23b16a11391cfc2c280fdfbad1e05111111050366408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c407cf4ecb3cfc2e97462c080012d1ecbcfcfc7f8f1e3d1a14307b85c2ecc983103a5a5a5168c927cb562c50aab87405ef0fcd817cf8d7df1dcd81bcf0f853206203e282e2ec682050b1015150587c3d1e2b151a346e1e0c18378eeb9e7f0f0c30fe3e38f3fc6b871e350535363d188c9287e10d81bcf8f7df1dcd817cf8dbdf1fc50286b6bf50082d9c30f3f8c112346e0c2850b2d321b0b162c40656525727373919090000018366c18c68d1b87b7df7e1b3367ceb462c84444444444966206c4a06ddbb6212b2b0b8b172f86a2282d3220595959484f4faf0f3e0060ecd8b1484a4ac2ca952bcd1e2e11111111912d300031a0b6b616b366cdc2cc9933d1bf7fff168f1f397204274e9cc09021435a3c3674e850e4e6e69a314c2222222222dbe1122c03962c59826fbffd169f7efaa9dbc74b4a4a0000ddba756bf158b76edd70ead429d4d4d4202c2cacfefeaaaa2a0052b84ef6535e5e8e9c9c1cab87411ef0fcd817cf8d7df1dcd81bcf8f3da9d769959595168f24b83100d1e9e4c99398376f1ee6cd9b0797cbe5f618f545191e1edee2b1888888fa631a0720870e1d0200dc7efbedfe1e32f9c9e0c183ad1e0279c1f3635f3c37f6c573636f3c3ff675f8f0615c73cd35560f23683100d1e9a9a79e424c4c0c66cd9ae5f198c8c84800c0f9f3e75b3ca6663ad4635437dd7413fef77fff17bd7bf76ef1181111111159afaaaa0a870e1dc24d37dd64f550821a03101d0a0b0bf1faebaf63f1e2c5282e2eaebfbfaaaa0ad5d5d5282a2a42c78e1deb975ea94bb11a2b292981cbe56a92fd0080989818fcfce73f0fec7f80888888887c3262c408ab8710f41c8aa228560f22586cddba1563c68cf17acc9c3973f0873ffc01f1f1f1183d7a34feeffffeafc9e3c9c9c9e8d5ab17366edc18c8a11211111111d91233203a0c1830006bd6ac69d2725751143cf5d453387bf62c5e7ae9252426260200323333f1ce3befa0b8b8b8be15efe6cd9b515858885ffffad7968c9f88888888c86acc80f8c1e8d1a371f2e449ecdebdbbfebee2e2620c1a34089d3b77c6ecd9b351515181850b17a257af5ed8b973678b255844444444441703ee03e2070e87a3c54684090909f8ecb3cf90989888c71f7f1c8b162d427a7a3a366edcd824f8387ffe3c1e7bec3174efde1deddbb7c7d5575f8d4d9b3699fd5fb8e89d3b770ebffded6f317efc7874edda154ea713efbcf38edb63f3f3f3317efc7874e8d0012e970b3366cc406969a9c923be78ecdcb9130f3cf000faf7ef8fe8e8685c7ae9a598366d1a0a0b0b5b1ccb7363ae3d7bf660ca9429484c4c445454145c2e17468c1881e5cb97b73896e7c67acf3efb2c9c4e27060c18d0e2319e1f736dddba154ea7d3ed577676769363796eac91939383891327c2e572212a2a0a03060cc02bafbcd2e4189e1be39801b1d8f4e9d391959585b973e7e2f2cb2fc75b6fbd859d3b7762cb962d6cef66a2c3870fa36fdfbeb8f4d24bd1a74f1f6cddba156fbffd3666cc98d1e43835b3d5a54b173cf8e083a8a8a8c0a2458bd0ab572f64676733b3150093274fc6575f7d852953a660e0c081282929c1abafbe8ab367cf62fbf6edf59b81f2dc986fddba7578f9e5973162c40874efde1d3ffcf00356af5e8dcf3fff1ccf3cf30c9e7cf249003c3776505c5c8ce4e464389d4ef4e9d307fffad7bf9a3cc6f3632eb5a674f6ecd9183a746893c76ebae9a6fa36ff3c37d6d8b061036eb9e5160c1e3c18d3a64d43747434f6efdf0f4551f0fcf3cf03e0b9f1994296d9b16387e2703894175f7cb1febeaaaa2ae5b2cb2e53468c1861e1c82e3ee7cf9f57befffe7b455114e5ebafbf561c0e87f2ce3befb438eede7bef55a2a2a294efbefbaefebe4d9b36290e874359ba74a969e3bd987cf9e5974a4d4d4d93fb0a0b0b95888808e5f6db6fafbf8fe7c61e6a6b6b95d4d454a557af5ef5f7f1dc586fdab469ca0d37dca08c1e3d5ab9f2ca2b9b3cc6f363be2d5bb6280e8743c9cacaf27a1ccf8df94e9f3eadc4c7c72b9999995e8fe3b9f10d97605968f5ead568dbb62d7ef9cb5fd6df171e1e8ebbefbe1b5f7df5158e1c3962e1e82e2eeddab5435c5c1c00692ce049565616d2d3d3eb1b0b00c0d8b16391949484952b57067c9c17a3b4b434b46ddbb45fc665975d86949414ecddbbb7fe3e9e1b7b703a9d4848486832fbc77363ad6ddbb6212b2b0b8b172f86a2282d960cf3fc58475114545454e0c2850b6e1fe7b931dfbbefbe8be3c78fe3d9679f05204bb4ebeaea5a1cc773e31b062016cacdcd45525212a2a3a39bdcafa663fff9cf7f5a312cf2e0c891233871e204860c19d2e2b1a14387223737d782515d9c1445c1f7df7f8f989818003c3756fbe1871f505a5a8a03070ee08f7ffc233ef9e4133cfae8a300786eac565b5b8b59b36661e6cc99f5cb151be3f9b1d69d77de894e9d3a2132321263c68cc137df7c53ff18cf8d35366dda848e1d3be2bbefbe437272323a74e8804e9d3ae1befbeeabdf609ae7c6776cc36ba1929292fa4d0b1b53ef3b7af4a8d943222fd48d253d9db353a74ea1a6a686eb3e4db07cf9721c3d7a14f3e7cf07c07363b5871e7a084b972e0500b46ddb162fbffc727d6697e7c65a4b962cc1b7df7e8b4f3ffdd4ede33c3fd6080f0fc7e4c99371f3cd37232626067bf6ecc1a2458b3072e4487cf9e597484d4de5b9b1486161212e5cb880499326e19e7beec10b2fbc802d5bb6e095575e41797939de7df75d9e1b3f600062a1caca4a848787b7b83f2222a2fe71b20ff57cb476cef88613587bf7eec5fdf7df8f112346e08e3bee00c07363b5b973e762ead4a9387af428962f5f8e071e7800919191b8e38e3b786e2c74f2e449cc9b370ff3e6cdab2f6a6e8ee7c71a696969484b4babff7b7a7a3a264f9e8c810307e237bff90dd6ad5bc7736391b367cfe2871f7ec0bdf7de8bc58b170300264d9a84eaea6abcf6da6b78fae9a7796efc804bb02c141919599fce6bacaaaaaafe71b20ff57cf09c59e7d8b163f8e94f7f8a2e5dba60f5ead5f56bd9796eac959c9c8c3163c6e0f6db6fc7ba75eb3076ec58cc9933075555553c37167aeaa9a71013138359b366793c86e7c73e1213133171e2446cd9b2058aa2f0dc5844fd994e9f3ebdc9fdeadfb76fdfce73e3070c402cd4ad5b37b7cbacd4d45ef7eeddcd1e1279a1a65ad5f3d3584949095c2e17673b02e8f4e9d398306102ce9c3983f5ebd7e3924b2ea97f8ce7c65e32333371faf469ecddbb97e7c62285858578fdf5d7316bd62c141717e3f0e1c3387cf830aaaaaa505d5d8da2a222949595f1fcd84ccf9e3d515d5d8d73e7cef1dc5844bdf68a8f8f6f72bfdaa8a6acacacfe189e1be318805868d0a0412828284045454593fb77ecd80100484d4db56258e4418f1e3d101b1b8b9d3b77b6782c3b3b9be72b80aaaaaa70cb2db760fffefd58bb762daeb8e28a268ff3dcd88bba3cc1e974f2dc58e4c89123a8ababc3830f3e88be7dfbd67f656767a3a0a0007dfaf4c133cf3cc3f36333070f1e44646424a2a3a3796e2ca2169617171737b95f9d308e8d8d45f7eedd796e7cc400c44293274f466d6d6d7df12620e9bcb7de7a0b575f7d357af4e861e1e8c89dcccc4cac5dbbb6c91bd3e6cd9b515858882953a65838b2d0555b5b8b69d3a661c78e1d58b56a15860f1feef6389e1bf39d3871a2c57d353535f8cb5ffe0297cb55df7589e7c67c03060cc09a356bf0fefbefd77fad59b306fdfbf7c7a5975e8af7df7f1f77df7d37009e1f2bb8fbddd9b56b173efcf043dc78e38df5f7f1dc986fead4a9008065cb9635b9ff8d37de40585818468f1e0d80e7c657dc09dd62d3a64dc39a356b3077ee5c242626e29d77dec1d75f7f8dcd9b37e3da6bafb57a781795575f7d15e5e5e5387af428962c59828c8c8cfa598c071f7c101d3b76acdff9b473e7ce983d7b362a2a2ab070e142f4ead50b3b77ee64ca3500e6cc9983975f7e19b7dc728bdb37f5db6fbf1d00786e2c70db6db7a1a2a202a3468d42f7eedd71ecd8312c5fbe1c05050578ebadb73063c60c003c3776327af4689c3c7912bb77efaebf8fe7c77c63c68c41fbf6ed91969686b8b838e4e5e561e9d2a5080f0fc7575f7d85e4e464003c3756b9e79e7bf0e69b6f62ead4a918356a14b66edd8ad5ab57e389279ea8efbec873e3230b37412445763e7fe49147946eddba29111111caf0e1c3950d1b36583dac8b52efdebd1587c3a1381c0ec5e9742a4ea7b3fecf454545f5c7edd9b347b9e9a69b94a8a828a56bd7aeca2f7ef10be5f8f1e3168e3cb48d1e3dbafe5c34ff723a9d4d8ee5b931d7dffef63765dcb871ca25975ca2848585292e974bb9f9e69b954d9b36b53896e7c61e468f1ead0c1830a0c5fd3c3fe67af9e59795e1c3872b2e974b090b0b537af4e8a1cc9831433970e0408b63796ecc575353a3fcfef7bf577af7eeadb46bd74e494a4a525e7ae9a516c7f1dc18c70c081111111111998635204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444649aff07ce873914b7799b030000000049454e44ae426082}\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u35201?\u35299?\u26512?\u30340?json\u25991?\u20214?\u20301?\u20110?{\f1 data/2014-01-01-0.json}\u65292?\u22823?\u23567?6.6M\u65292?\u26174?\u28982?\u25105?\u20204?\u21487?\u33021?\u38656?\u35201?\u29992?\u27599?\u27425?\u21482?\u35835?\u19968?\u34892?\u30340?\u31574?\u30053?\u65292?\u36825?\u36275?\u20197?\u35299?\u37322?\u20026?\u20160?\u20040?\u35832?\u22914?sublime\u25171?\u24320?\u30340?\u26102?\u20505?\u24456?\u24930?\u65292?\u32780?\u29616?\u22312?\u25105?\u20204?\u21482?\u38656?\u35201?\u37324?\u38754?\u30340?json\u25968?\u25454?\u20013?\u30340?\u21019?\u24314?\u26102?\u38388?\u12290?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 ==,\u36825?\u20010?\u25991?\u20214?\u20195?\u34920?\u20160?\u20040?\u65311?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 {\b 2014\u24180?1\u26376?1\u26085?\u38646?\u26102?\u21040?\u19968?\u26102?\u65292?\u29992?\u25143?\u22312?github\u19978?\u30340?\u25805?\u20316?\u65292?\u36825?\u37324?\u30340?\u29992?\u25143?\u25351?\u30340?\u26159?\u24456?\u22810?\u12290?\u12290?\u19968?\u20849?\u26377?4814\u26465?\u25968?\u25454?\u65292?\u20174?commit\u12289?create\u21040?issues\u37117?\u26377?\u12290?}\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u25968?\u25454?\u35299?\u26512?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 import json\line +for line in open(jsonfile):\line + line = f.readline()\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u28982?\u21518?\u20877?\u35299?\u26512?json\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 import dateutil.parser\line +\line +lin = json.loads(line)\line +date = dateutil.parser.parse(lin["created_at"])\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u36825?\u37324?\u29992?\u21040?\u20102?{\f1 dateutil}\u65292?\u22240?\u20026?\u26032?\u40092?\u20986?\u28809?\u30340?\u25968?\u25454?\u26159?string\u38656?\u35201?\u36716?\u25442?\u20026?{\f1 dateutil}\u65292?\u20877?\u21040?\u25968?\u25454?\u25918?\u21040?\u25968?\u32452?\u37324?\u22836?\u12290?\u26368?\u21518?\u26377?\u23601?\u26377?\u20102?{\f1 parse_data}\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 def parse_data(jsonfile):\line + f = open(jsonfile, "r")\line + dataarray = []\line + datacount = 0\line +\line + for line in open(jsonfile):\line + line = f.readline()\line + lin = json.loads(line)\line + date = dateutil.parser.parse(lin["created_at"])\line + datacount += 1\line + dataarray.append(date.minute)\line +\line + minuteswithcount = [(x, dataarray.count(x)) for x in set(dataarray)]\line + f.close()\line + return minuteswithcount\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u19979?\u38754?\u36825?\u21477?\u20195?\u30721?\u23601?\u26159?\u23558?\u19978?\u38754?\u30340?\u35299?\u26512?\u20026?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 minuteswithcount = [(x, dataarray.count(x)) for x in set(dataarray)]\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u36825?\u26679?\u30340?\u25968?\u32452?\u20197?\u20415?\u20110?\u35299?\u26512?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 [(0, 92), (1, 67), (2, 86), (3, 73), (4, 76), (5, 67), (6, 61), (7, 71), (8, 62), (9, 71), (10, 70), (11, 79), (12, 62), (13, 67), (14, 76), (15, 67), (16, 74), (17, 48), (18, 78), (19, 73), (20, 89), (21, 62), (22, 74), (23, 61), (24, 71), (25, 49), (26, 59), (27, 59), (28, 58), (29, 74), (30, 69), (31, 59), (32, 89), (33, 67), (34, 66), (35, 77), (36, 64), (37, 71), (38, 75), (39, 66), (40, 62), (41, 77), (42, 82), (43, 95), (44, 77), (45, 65), (46, 59), (47, 60), (48, 54), (49, 66), (50, 74), (51, 61), (52, 71), (53, 90), (54, 64), (55, 67), (56, 67), (57, 55), (58, 68), (59, 91)]\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 Matplotlib\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u24320?\u22987?\u20043?\u21069?\u38656?\u35201?\u23433?\u35013?``matplotlib\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 sudo pip install matplotlib\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u28982?\u21518?\u24341?\u20837?\u36825?\u20010?\u24211?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 import matplotlib.pyplot as plt\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u22914?\u19978?\u38754?\u30340?\u37027?\u20010?\u32467?\u26524?\u65292?\u21482?\u38656?\u35201?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u26368?\u21518?\u20195?\u30721?\u21487?\u35265?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 #!/usr/bin/env python\line +# -*- coding: utf-8 -*-\line +\line +import json\line +import dateutil.parser\line +import numpy as np\line +import matplotlib.mlab as mlab\line +import matplotlib.pyplot as plt\line +\line +\line +def parse_data(jsonfile):\line + f = open(jsonfile, "r")\line + dataarray = []\line + datacount = 0\line +\line + for line in open(jsonfile):\line + line = f.readline()\line + lin = json.loads(line)\line + date = dateutil.parser.parse(lin["created_at"])\line + datacount += 1\line + dataarray.append(date.minute)\line +\line + minuteswithcount = [(x, dataarray.count(x)) for x in set(dataarray)]\line + f.close()\line + return minuteswithcount\line +\line +\line +def draw_date(files):\line + x = []\line + y = []\line + mwcs = parse_data(files)\line + for mwc in mwcs:\line + x.append(mwc[0])\line + y.append(mwc[1])\line +\line + plt.figure(figsize=(8,4))\line + plt.plot(x, y,label = files)\line + plt.legend()\line + plt.show()\line +\line +draw_date("data/2014-01-01-0.json")\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 \u27599?\u21608?\u20998?\u26512?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u32487?\u19978?\u31687?\u20043?\u21518?\u65292?\u25105?\u20204?\u23601?\u21487?\u20197?\u20998?\u26512?\u29992?\u25143?\u30340?\u27599?\u21608?\u25552?\u20132?\u24773?\u20917?\u65292?\u20197?\u24471?\u20986?\u29992?\u25143?\u30340?\u30495?\u27491?\u30340?\u24037?\u20855?\u25928?\u29575?\u65292?\u27599?\u20010?\u31243?\u24207?\u21592?\u30340?\u24037?\u20316?\u26102?\u38388?\u21487?\u33021?\u26159?\u19981?\u19968?\u26679?\u30340?\u65292?\u22914?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 {\pict\pngblip\picw514\pich428\picwgoal5160\pichgoal4300 89504e470d0a1a0a0000000d4948445200000202000001ac080200000020d958980000012f694343504943432050726f66696c6500002815636060327074717265126060c8cd2b290a72775288888c5260bfc0c0c1c0cd20cc60cc609d985c5ce01810e0c3000479f979a9201a157cbbc6c00812b9ac0b320b558e208f2bb9a0a804a8ea0f101ba5a416273330301a00d9d9e525054071c63940b648523698bd01c42e0a0972068a1f01b2f9d221ec2b20761284fd04c42e027a02a8e60b487d3a98cdc401622741d8322076496a05c85e06e7fc82caa2ccf48c12052303030305c794fca45485e0cae292d4dc6205cfbce4fca282fca2c492d414a05a88fb40ba1804210a4121a661686969a10916a522018a0788719f03c1e1cb2876062186b028b9b4a80cca636432666020c4479831478281c17f290303cb1f8498492f03c3021d0606fea9083135430606017d06867d7300c3af506fec25acb40000000970485973000016250000162501495224f00000019d69545874584d4c3a636f6d2e61646f62652e786d7000000000003c783a786d706d65746120786d6c6e733a783d2261646f62653a6e733a6d6574612f2220783a786d70746b3d22584d5020436f726520352e342e30223e0a2020203c7264663a52444620786d6c6e733a7264663d22687474703a2f2f7777772e77332e6f72672f313939392f30322f32322d7264662d73796e7461782d6e7323223e0a2020202020203c7264663a4465736372697074696f6e207264663a61626f75743d22220a202020202020202020202020786d6c6e733a657869663d22687474703a2f2f6e732e61646f62652e636f6d2f657869662f312e302f223e0a2020202020202020203c657869663a506978656c5844696d656e73696f6e3e3531343c2f657869663a506978656c5844696d656e73696f6e3e0a2020202020202020203c657869663a506978656c5944696d656e73696f6e3e3432383c2f657869663a506978656c5944696d656e73696f6e3e0a2020202020203c2f7264663a4465736372697074696f6e3e0a2020203c2f7264663a5244463e0a3c2f783a786d706d6574613e0a9c3576df00001f2c494441547801eddd7d905d657d07f01b08e64a2d9baa64690737554ca6b56c7ccb32b5093328d851924e9a0d53e8522dc651dc4cc560673a647c0b2a13aa8c41d0ac81313a7658a13549ad80339d04a8d9944a02ce64e31f66f58f046d598a361b5fb84402bdf7ee4b7643ee66cfeed9e73ee79c4f2643eeee39f7797ecfe777f67eef39f7de65ce3347874afe10204080405105ce2aeac2ad9b000102046a0262c07140800081420b888142b7dfe209102020061c0304081028b480182874fb2d9e00010262c03140800081420b888142b7dfe209102020061c0304081028b480182874fb2d9e00010262c03140800081420b888142b7dfe209102020061c0304081028b480182874fb2d9e00010262c03140800081420b888142b7dfe209102020061c0304081028b480182874fb2d9e00010262c03140800081420b888142b7dfe209102020061c0304081028b480182874fb2d9e00010262c03140800081420b888142b7dfe209102020061c0304081028b480182874fb2d9e00010262c03140800081420b888142b7dfe209102020061c0304081028b480182874fb2d9e00010262c03140800081420b888142b7dfe209102020061c0304081028b480182874fb2d9e00010262c03140800081420b888142b7dfe209102020061c0304081028b480182874fb2d9e00010262c03140800081420b888142b7dfe209102020061c0304081028b480182874fb2d9e00010262c03140800081420b888142b7dfe209102020061c0304081028b480182874fb2d9e00010262c03140800081420b888142b7dfe209102020061c0304081028b480182874fb2d9e00010262c03140800081420b888142b7dfe209102020061c0304081028b480182874fb2d9e00010262c03140800081420b888142b7dfe209102020061c0304081028b480182874fb2d9e00010262c03140800081420b888142b7dfe209102020061c0304081028b480182874fb2d9e0001027311102040205a811f7fffe99ffcd733519577d90716cd3bf79ca84a9a6131ce066608e8ee040810c8b68018c876ff544f800081190a88811902ba3b010204b22d2006b2dd3fd513204060860262608680ee4e8000816c0b88816cf74ff504081098a180189821a0bb13204020db026220dbfd533d0102046628e0e3630d018fdd76dbf307fa1b6e0ebe614eeb82dffbfce7834f6b420204722ee06c20e70db63c0204084c2e200626f7b19500010239171003396fb0e51120406072013130b98fad040810c8b98018c879832d8f000102930b8881c97d6c25408040ce05c440ce1b6c79040810985c400c4cee632b010204722e200672de60cb234080c0e4026260721f5b0910209073013190f3065b1e0102042617f03b851afa7cedcfcffae15bcf6eb839f886f3cf3dfb96e0939a900081dc0b381bc87d8b2d9000010293098881c9746c23408040ee055c14ca7d8b2d90408605fee07ff6bef2f17f8d6a0173afbba3546a89aaa41916e36c608680ee4e8000816c0b88816cf74ff504081098a1808b42330474f79ac00ffef7899e835f8aca62fd1bfffe0daffc93a84a520c8138059c0dc4d917551120402090801808046d1a020408c429e0a2509c7dc958554b2bcfddf7b3a7a22afa577ff4dc89a80a520c8158059c0dc4da19751120402088801808c26c12020408c42a200662ed8cba0810201044400c0461360901020462151003b176465d0408100822200682309b84000102b10a8881583ba32e0204080411100341984d4280008158057c7c2cd6cea88b00815269f79bcefa4e4b44ff13c06a4f6e7bf99cf3f2d51a6703f9eaa7d510204020a1801848086677020408e44bc045a186fddcf0cc2fcef9ef887e4fce89df9df3ab86c5da40800081690a381b98269cbb112040201f0262201f7db40a0204084c53400c4c13cedd081020900f0131908f3e5a05010204a6292006a609e76e040810c8878018c8471fad82000102d3141003d3847337020408e443400ce4a38f5641800081690af8f8d834e19a75b7dffccbb72adff94eb3663fedbcf3b77c39aedff972da2a7d9300810602ce061ac0f8360102048a2120068ad167ab24408040030117851ac0c4faed7f7feb590fbe3aae6b309b5f563a27562e75112070460167036724b203010204f22c2006f2dc5d6b234080c019055c143a23911d0810689ac09a63bffa9b9f45f4fbdeab1043274e348d6376267636303bae46254080404604c440461aa54c020408cc8e8018981d57a31220402023026220238d52260102046647400ccc8eab51091020901101ef146ad8a84f3d7fdd81e36b1a6e0ebe61c16f5fb6b954bafad82fff36b6374ebcf042700c131220909a80b381d4280d448000812c0a88812c764dcd040810484d400ca44669200204086451400c64b16b6a264080406a026220354a03112040208b0262208b5d533301020452131003a9511a880001025914100359ec9a9a091020909a8018488dd240040810c8a28018c862d7d44c800081d404c4406a9406224080401605c44016bba666020408a426200652a33410010204b2282006b2d83535132040203501bf683a35ca220ff4fd17fe78f3f15ba212b8e9858bdaa32a48310462157036106b67d4458000812002622008b34908102010ab801888b533ea224080401001311084d9240408108855400cc4da19751120402088801808c26c12020408c42a200662ed8cba0810201044400c046136090102046215f0f1b1583ba32e02044aa56f9e78fb8ee36f884a624be9152d511534e3629c0dcc98d000040810c8b28018c872f7d44e800081190b888119131a800001025916100359ee9eda091020306301313063420310204020cb02de2994e5eea93d9b020fdffda3e3bf39114fed0b5e7fde9b575c184f3d2a092ce06c2030b8e90810201097801888ab1faa214080406001311018dc74040810884b400cc4d50fd510204020b08018080c6e3a020408c4252006e2ea876a0810201058400c0406371d010204e212100371f54335040810082ce0e36381c14d174ee0d95f1effdeb61f879b6f0a33bdfecfcebfa8e3fc371df8d28b43c7a6b07ba05dce99b3b454fa70a0c94c139f80b381f87aa2220204080414100301b14d45800081f8045c148aaf272a4a49e065bffd55c7e3ff98d260e90c537edd55a5d25fa433965108a424e06c202548c3102040209b0262209b7d533501020452127051282548c3c42730746ee9a6f79d1d555d7ff9ba39574655906208944ace061c0504081028b480182874fb2d9e00010262c03140800081420b888142b7dfe209102020061c0304081028b480182874fb2d9e00010262c03140800081420b888142b7dfe2091020e0e363193b06fee9f9777efbf892a88ade5a7a79a9f4eba84a520c01025317703630752b7b1220402087026220874db5240204084c5d400c4cddca9e040810c8a18018c861532d890001025317100353b7b2270102047228e09d42396caa250d0bbcf2c40bf7fdeca9a8349e3dffd7c7a32a483104fca269c7000102040a2ee0a250c10f00cb2740a0e8022e0a15fd08b0fef0026d97fdfcac678f869fb7d18cc7db8e3ddb689bef1740c0d940019a6c89040810682c20061adbd842800081020888810234d912091020d058400c34b6b185000102051010030568b225122040a0b18018686c630b0102040a2020060ad0644b24408040630131d0d8c6160204081440400c14a0c99648800081c60262a0b18d2d040810288080182840932d910001028d05c440631b5b081020500001315080265b220102041a0b8881c636b6102040a0000262a0004db644020408341610038d6d6c214080400104c440019a6c89040810682c20061adbd842800081020888810234d912091020d058400c34b6b185000102051010030568b225122040a0b18018686c630b0102040a2020060ad0644b24408040630131d0d8c6160204081440400c14a0c99648800081c60262a0b18d2d0408102880c0dc02acd11209c425f09ee3370d1d3f114f4d1dcfcf5f1f4f352a092ee06c2038b9090910201093801888a91b6a214080407001178582939b3094c0cf4be75d7bfc9650b34d699ebf3af1fbaba6b4a39d088413703610ceda4c0408108850400c44d81425112040209c801808676d2602040844282006226c8a92081020104e400c84b33613010204221410031136454904081008272006c2599b89000102110a8881089ba22402040884131003e1accd448000810805c440844d5112010204c209888170d6662240804084026220c2a62889000102e104c440386b33112040204201311061539444800081700262209cb59908102010a1801888b0294a2240804038013110ceda4c0408108850400c44d81425112040209c801808676d2602040844282006226c8a92081020104e400c84b33613010204221410031136454904081008272006c2599b89000102110a8881089ba22402040884131003e1accd448000810805c440844d5112010204c209888170d6662240804084026220c2a62889000102e104c440386b33112040204201311061539444800081700262209cb59908102010a1801888b0294a2240804038013110ceda4c0408108850400c44d81425112040209c801808676d2602040844283037c29a944480407881731fde78cecf1e0b3f6fa3195ff89d57ff72f5371a6df5fd14059c0da4886928020408644f400c64af672a264080408a026220454c43112040207b0262207b3d53310102045214100329621a8a000102d9131003d9eb998a09102090a280184811d350040810c89e8018c85ecf544c8000811405c4408a988622408040f604c440f67aa662020408a428200652c43414010204b2272006b2d73315132040204501319022a6a1081020903d013190bd9ea998000102290a888114310d45800081ec098881ecf54cc50408104851400ca4886928020408644f400c64af672a264080408a026220454c43112040207b0262207b3d53310102045214100329621a8a000102d9131003d9eb998a09102090a280184811d350040810c89e8018c85ecf544c8000811405c4408a988622408040f604c440f67aa662020408a428200652c43414010204b2272006b2d73315132040204501319022a6a1081020903d81b9d92b59c50408cc82c0a79f7fcf0f8eaf9a8581a739e4abce39e78e69ded5dd9209381b48e6656f020408e44c400ce4aca19643800081640262209997bd0910209033013190b3865a0e01020492098881645ef626408040ce04c440ce1a6a39040810482620069279d99b00010239131003396ba8e51020402099801848e6656f020408e44c400ce4aca19643800081640262209997bd0910209033013190b3865a0e01020492098881645ef626408040ce04c440ce1a6a39040810482620069279d99b00010239131003396ba8e51020402099801848e6656f020408e44c400ce4aca19643800081640262209997bd0910209033013190b3865a0e01020492098881645ef626408040ce04c440ce1a6a39040810482620069279d99b00010239131003396ba8e51020402099801848e6656f020408e44c400ce4aca19643800081640262209997bd0910209033013190b3865a0e01020492098881645ef626408040ce04c440ce1a6a39040810482620069279d99b00010239131003396ba8e51020402099801848e6656f020408e44c400ce4aca19643800081640262209997bd0910209033013190b3865a0e01020492098881645ef626408040ce04c440ce1a6a39040810482620069279d99b00010239131003396ba8e51020402099801848e6656f020408e44c400ce4aca19643800081640262209997bd0910209033013190b3865a0e01020492098881645ef626408040ce04c440ce1a6a39040810482620069279d99b00010239131003396ba8e51020402099801848e6656f020408e44c400ce4aca19643800081640262209997bd0910209033013190b3865a0e01020492098881645ef626408040ce04c440ce1a6a39040810482620069279d99b00010239131003396ba8e51020402099801848e6656f020408e44c400ce4aca19643800081640262209997bd0910209033013190b3865a0e01020492098881645ef626408040ce04c440ce1a6a39040810482620069279d99b00010239131003396ba8e51020402099801848e6656f020408e44c400ce4aca19643800081640262209997bd0910209033013190b3865a0e01020492098881645ef626408040ce04c440ce1a6a39040810482620069279d99b00010239131003396ba8e51020402099801848e6656f020408e44c400ce4aca19643800081640262209997bd0910209033013190b3865a0e0102049209cc79e6e850b27b44bff7256f79732a359e78d39a175ff5da54864a6790dffcdfdc47bf7ae2b5cb5e7cdddbd21930a551cefe8f3b5f9c7fe10b6f5c9dd278e90c73d613ff3ce737bf38b1fc43e90c97d22867fd78cf5987bfff7cb5aa79af4869c8148699f3f4a1b3fbffedc41b57bff8ea8b52182ead219e3d36f73fef3af1877ffae245cbd31a329571cefede97e7fcf6d95486aa0ef2d8133f486ba8698f2306a64de78e04081098a9801898a9a0fb13204080c00c05bc363043407727408040b605c440b6fba77a020408cc50400ccc10d0dd091020906d013190edfea99e0001023314100333047477020408645b606eb6cb8fb8fa4a6570607fffc09123c72aa552b965415bdbc5eded6d2de5e02557068f0c3e579bb5bca0adb5e1f495a3479eae7f82a4a535589195a1c1a787aa3a67f8b3a06d61c3b2cf70d7049b478a99d7d2d63a7fe2dd2a4347066b34a7db346cdbb260e1ec3776ac8f13ab3be5ab80ed3b39f3d8c173f25be36f4d7ae08ddf71366e572a0303fbfa0f1d393654fd2198775e6b5b7b7bfba2b6535a3c1b136769cc1c7e6e2002fecade6d37aefa68ef4b2b59bde9fe3bbb2f0df0a0363675e5d03d175eb26ef8cbcfee39fca1f6d3ff00ecddd0b2aaa7be57fb969feeb9364c8503bd2bdeb6ae6facd446376edb33785dfbac57d4bf6df9db3fda5f2a753efad4d7168d9fad72e0b20b2e3d582baefb89a3b7b68dafb2b2efb20baea86e5afdd57d77af593c7e4bfab72b07565d70e9de338e1bb07d63b59cb18fb73d3678dde2f1a663779ddd1b47fab6bd77e58df5de4d9ca873d3a35bd64de8f2c4ed45fbca45a1f43bbe7ff3156319b0ba6bfd27366dbaa16be463903b37ac7cd7e67de94f39d988277ffc3eded377fae7de95035f1fce80ea38217f38e64d78506db488f3e635da92e6f7db3ad6d687dbd17f6402d2507fdfe8e348cfc1899b2a03fdc39b56774c6921332bb7bc602af70fd9beb17aced4c7f3c6f60c7863a86fcb5b4633e0e2ceae1b3eb5e913ebbb46e6dfb1e16defdc523ff90d5850c4538981b49b33b8eb5d37579f54569f566e7ee2a9a1bbb7dcfc91ee759fdcf2c04f7fb4e7fafa54076fbe62f7c44793b42b683c5e6fcfc1d31dfb83fbb7ef1cbbd3d363b766fdc6a2353dd5df6532f6f7a78f6da94fd9f9f0e193dfac6eed0cf244b265d1d265f5e91fea1f1cbff281be07c6be7c70dfc44dfbb6d737adbfb8ed64d68eed9cf28df2e2bbc7593d73f4f05d9db519967d61cf1860edc6b635b35f4aa3952d3fa571638585e9e0c4b20e7f71e586fa773abf7d60f0916d3d9fbc71dd4736f63cf3d4a1bbbadb6bdfefdff0b95d8727dea5b85f8981947b5f191a7ea06dbf6fd3daf10f0ee5d625b71cb86778b227a770413ce5b24686ebfb7adf4b0ffdcade5b6f2fd57f346667d2a98f3af208560ef2f4ffd4b2ca6dabebe76cf7eeee1f773a30b8f7e69397adeeddbd7fdca6a30777d437755f11e05ce0d46a4b23560bcacd7bd83fb5a605cd69dca965d4bfae3cf764fddf1beebf75d9c49fc3ce4df78c3c213b72bae744a71d2defdf1403b3d4e1fee79e1bf788313c495bc79d5dcb2fae3ee2be64cb2c15f1d261efbd75f7a9c7fe60df07ab8f66fda565cba3888297d61cea3bf3dfda597f82dddb77f28c68f0d0676ad377df777ffd4ca577d79363bdab1cb9b79e0237ac98e5570542ad3f67f30c3f9778ee344fb916aefe42f7c5eda505a5fa3b2772b6ec692d470c4c8b6d0a777aef92ee07fb0f8f3d68d4efd1fad75b1e78e468df751da77f9d760aa34e7b97f6dbeed956bbe8d17fe3de8997a40676d7cf513ab7fcc3fbe2fa3d8ed35eeab4efb8a8e38afa7d7b06468906fb77d5bed3d9b16c69c735b55bbd63af1c545f18a8bf60db7e797b6b6d8b3fd5139478ce4c4a238ff15baf5df2c5070e9c92054bd7defac89ea1bbd77668dab0801848f948282fbe7cf8a26da9b4e3bd972eb9707ecb07d67dea9bdb77f51f1a9c180929cf7ba6e1facf5bb4f4fafa2b645b1f38346ee7c3df5cb7a3fae50d6b97bf26a69fe1711586bb595ed4beba3edbde43c3af01540eeebebdfa8d6b56b497cb6defa89f2a7c77ff91e1829e1c4e88f6ae8b5bc25518f74cbdd5e37cefae5dbbc7fd7df0813da3911ab6f6f2e21bb6d41b562a7de6da4b2fbaa065d5daeeaff46edfdb7fe89448085b56a4b38981d41b33bf73dbe16f6c1a7d4f42a9b4b3f7f60fbf7fcddb2f595c8d84bfdbb87de0d48b32a917d060c072ebb2ae8dd56d7b37f48e3c92954a95febe3b6abb2f5fbd7461a9d2acca6a1544f1a7bcf81df533a287fa8685061faabf81ea1db537029597aea8f57467efbe7a9c57fa7b6bf1797157871418ebdd1def5fb3eaaa35578ffbfbde6b573e34d09ce73fed5d3d0fdfb3e9e2d1e2f6eee8fdf8bab5ab2eeda846c2656b37ef3d7474748b7f4b6260360e82f9577657df9370f8d13df7dff5858dabc75d73bff7f6b56f5bb8bc29ef14aabe54d1b27445fdd96ecf83fd233f038ff7d63f52d0d55d7d5fbe0ba5b5c7faaeda53c883b7efaf9d0e1cd9bfb57674742fadbfc6b8a06345edabbededac35ae5d077eb2f0c5cb37c51ed9bfed405aaefcbbcbeabeb9a717f5777762f9ad21b5d6743b0dcbe62dd2347077ff8d89efbbebaf9face93d73c0feed8b8ea92859ff64ea151f5b9a337fc9bb64079fea2f64bab7f3bd7de7877a5726460dfcecd2b3f537b06d97ff5926d3f39baae09cf22cb8baf5bdfbef3f6feea0708aedbb2b23cfa7181cf769ffc09495b2163e3bd6669f5e5816a93b63f59b9f1b97df51706ba570cbf11a8dcd65e7d87c9d652dfe30395f69681fa5b6c972f5b14fe659e68493befded2d394cf2d4c2a526e5dbca4faf7f2356b6fd956fd40f8a1dddb377ff0e6dacfe11d575d7bf9e1be654df8399cb4de666c743690ae7a657fefe68f6de83ef57d99d54bcbed977e64dbe07deb87df8db3af39174c4ba5b776dd585b706f4ff529edd0c8c705baaf6cf0d1e2746932315ab9ada37ec2d47f70e0d0c1ddb5cf818f7b23d0c22bebeddbd97f68a0bffe19c0e55df13dea3593b939577f4eb7e2c17df77c6cc34d9fdeb6676249e596b6259d377eed896fadafdfa9ff48b37e0e4f577313bf270652c61fe8ddb8b5a7f7ebfb862f2e9f327879d99ab5c3df6ad6cbb1e5c5cb3f51aba06fe7ee7dbb7b6fafde5ab6a9ab196f7b1f6688efbfe5b677d75f59dcd9b36d6b2d0526bc11e8f557aca97e6b6f6fcfd7b7d72e09adeeea68561fe383ab55148fc6b1815d5b7b7aeef868ff692f75b62d5f33fc51c152533ea1125ff3c440ba3d29b72dad3ddf3f78f3ca1d87263e11a9cff3f8aeedc3f39d665bba85341cadf5cafa3b28eeb8f68a0fd61ee64ad77bdbfb04abea05e5da4bc1d5c7fadafb4127be11a8b57d69ed25c7bedead3b6a1f147ff752015a6588f1cf796d4bea656df8dcf6f1ef8b1b297568ffeefa9b7d63acbc2935898194d947aeba944a1fbca4f52bb5372c8f3ce057860eefded6bd6af823a99d2b9b783161d1e5236724b595b76f9ef019cb94313239dc6bdaab2f0f8cfc59f6bee5132e1db7b45f73f233765dede33f9e3a7a17ffc620d0ba74c535f53ab6bebfe3033df71f197d9768a572b47fd7b68b566eac6fec1c7ef13f86829b5b831848d9bfbc78cda35fed1e1ef4e3b5372cb7be7a7e4bf5ef850b975c3df23b47bb1eded2c45ffc522ab5768c7eb2a174fd4d974f78984b19639ac335ef54a95670f5659ce14790eaed6b3a4ef984f0fc65a3bf25b0d4b5c2272d461b3cfa5c67f4ebe6ff5b5e7cdb63db86cbd8b9e1dab72c1cfd31bc60e1dbafaabf3c562addf5d8e6263e1b6b3ed1b80ac4c0388c946e2e5a73eb4f1ebbff86ce93cf1bc706befe0bdb7ff854cfecffd6e4b109ab8f6a238ff3e37e217ef9f2b51beb7b745e73f9c2b15de70defd9b4b7f78d15d2ecdf9253fda4d8c8a73eba96bee47162d1f2916dd7573f53365672f36ecc8be0eaf6bcf2f0e7a81bffdf2c9ae1537d42f6cce17d77ae1ff910d9f81296756f7ef847839d8bbdcb6b44c5ff6f60fce191f2edea19e8d0d343c72ad597a9e6cd6b6d59d0323f86078e9417693802910b54aabfefb1fa3f38aabd5a3cafbc60c182f9cd7ea2119d971888ae250a2240804048011785426a9b8b000102d1098881e85aa2200204088414100321b5cd45800081e804c440742d5110010204420a888190dae62240804074026220ba9628880001022105c440486d73112040203a0131105d4b144480008190026220a4b6b9081020109d801888ae250a224080404801311052db5c040810884e400c44d7120511204020a4801808a96d2e02040844272006a26b89820810201052400c84d43617010204a2131003d1b5444104081008292006426a9b8b000102d1098881e85aa2200204088414100321b5cd45800081e804c440742d5110010204420a888190dae62240804074026220ba9628880001022105c440486d73112040203a0131105d4b144480008190026220a4b6b9081020109d801888ae250a224080404801311052db5c040810884e400c44d7120511204020a4801808a96d2e02040844272006a26b89820810201052400c84d43617010204a2131003d1b5444104081008292006426a9b8b000102d1098881e85aa2200204088414100321b5cd45800081e804c440742d5110010204420a888190dae62240804074026220ba9628880001022105c440486d73112040203a0131105d4b14448000819002ff0f2d7f2d973eddd70f0000000049454e44ae426082}\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u36825?\u26159?\u25105?\u30340?\u27599?\u21608?\u24773?\u20917?\u65292?\u26174?\u28982?\u22914?\u26524?\u25226?\u26143?\u26399?\u20845?\u31227?\u21040?\u21069?\u38754?\u30340?\u35805?\u65292?\u38543?\u30528?\u24037?\u20316?\u26102?\u38388?\u30340?\u22686?\u38271?\u65292?\u22312?github\u19978?\u30340?\u20351?\u29992?\u22312?\u19979?\u38477?\u65292?\u20316?\u20026?\u19968?\u20010?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 a fulltime hacker who works best in the evening (around 8 pm).\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u19981?\u36807?\u36825?\u20010?\u26159?osrc\u30340?\u20998?\u26512?\u32467?\u26524?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 python github \u27599?\u21608?\u24773?\u20917?\u20998?\u26512?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u30475?\u19968?\u24352?\u20998?\u26512?\u21518?\u30340?\u32467?\u26524?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 {\pict\pngblip\picw844\pich438\picwgoal12260\pichgoal6360 89504e470d0a1a0a0000000d494844520000034c000001b608060000004c0b06e10000000473424954080808087c086488000000097048597300000f6100000f6101a83fa7690000200049444154789cecdd7b7ccee5ffc0f1d77d6fb323c3866dce739ce3cce6189b4d58ce9a952c7e7228613924f5951c561486282224426939554acc668ac46624c77288368631ec6087fbfafdf16977bbed1e5318dbfbf978ec71bbafebfa5c9febf3b977dbfdbeaf934e29a51042082184104208918fbea81b20841042082184108f2a099884104208218410a2001230092184104208214401246012420821841042880248c0248410420821841005908049082184104208210a2001931042082184104214400226218410420821842880044c420821841042085100099884104208218410a2001230092184104208214401246012420821841042880248c0248410420821841005908049082184104208210a2001931042082184104214400226218410420821842880044c420821841042085100099884104208218410a2001230092184104208214401246012420821841042880248c0248410420821841005908049082184104208210a2001931042082184104214400226218410420821842880044c420821841042085100099884104208218410a2001230092184104208214401246012420821841042880248c0248410420821841005908049082184104208210a2001931042082184104214400226218410420821842880044c420821841042085100099884104208218410a20012300921841042082144012460124208218410428802148b8029353595c99327d3a54b17ca972f8f5eafe7d34f3fcd57eefffeefffd0ebf5f97e3c3c3cccd6bb6cd9323c3c3cb0b5b5a56eddba7cf0c10766cb5dbb768d61c38651a142051c1c1cf0f7f7e7c0810366cbeedebd9b279e78027b7b7b5c5d5d79e59557484d4dfdf7172f84104208218478602c8bba01f7c3a54b97080b0ba37af5ea787a7a121d1d8d4ea7335bd6dada9a65cb9699a4393a3ae62bb778f162860f1f4e505010afbefa2a313131848686929696c66bafbd662c673018e8dab52b870e1de2b5d75ec3c9c989850b17e2e7e7476c6c2cb56bd736968d8f8f27202080860d1b3277ee5cce9d3bc7ecd9b33979f2245bb66cb94f774308218410420871bfe89452aaa81bf15f65666672edda352a56ac486c6c2c3e3e3eac58b1820103069894fbbffffb3fd6af5fcff5ebd7ef585f7a7a3a55ab56a54d9b366cdebcd998fefcf3cfb371e346ce9d3b47d9b2650158b76e1dcf3efb2c111111f4e9d30780cb972f53b76e5d02030359bd7ab5f1f8a79e7a8a43870e71ecd8311c1c1c00ad176be8d0a16cddba95279f7cf2bedc0f218410420821c4fd512c86e4952a558a8a152b0270b7f84f2985c160b863d0141515457272322fbffcb249fa881123484d4de5db6fbf35a6454444e0e2e2620c96009c9d9d090e0e66d3a64d6465650170fdfa75b66fdf4e484888315802183060000e0e0eac5bb7aef0172c84104208218478288ac590bc7b91969646993265484b4ba35cb972f4ebd78ff7de7b0f7b7b7b6399dcf947dedede26c77a7979a1d7eb898f8fa77ffffec6b25e5e5ef9cee3e3e3c392254b3871e2040d1b36e4d75f7f253b3b3b5f9d565656787a7a1638e7e9f2e5cb6cddba951a356a606b6bfb9fae5d0821841042145fe9e9e99c397386ce9d3be3ecec5cd4cd29364a54c0e4e6e6c6840913f0f2f2c26030f0dd77dfb170e1420e1e3c487474341616160024262662616191ef17ad54a952383939919090604c4b4c4cc4cfcf2fdfb95c5d5d01484848a061c3862426269aa4e7e5e2e2c28f3ffe68b6cd5bb76e252424e45f5daf104208218428793efbec33e397fbe2bf2b5101d3f4e9d34d9e07070753b76e5d264e9c48444404cf3cf30ca045e7a54a95325b87b5b535e9e9e9c6e7191919585b5be72b67636363ac2bef634165f3d69957cd9a3501ed17bfa0d5fcc4a367f4e8d1cc9b37afa89b21ee81bc668f1f79cd1e3ff29a3d7ee4357bbc1c3d7a94909010e3e747717f94a880c99c3163c63069d2242223238d0193adad2d99999966cb676464980c8db3b5b5e5d6ad5b66cbe5e6e77d2ca8ac9d9d9dd9f3e5065e1e1e1e6687fe894753d9b265e5f57accc86bf6f891d7ecf123afd9e3475eb3c753eee747717f148b451ffe0b1b1b1bca972f4f7272b231cdd5d5959c9c1c2e5fbe6c5236333393e4e464dcdcdc4ccae61da2972b77085e6ed9dca178b9e9b797cd5ba7104208218410e2d150e203a61b376e70f9f2652a54a8604c6bd6ac1900fbf6ed3329bb7fff7e0c06039e9e9ec6344f4f4fe2e2e2f2adceb777ef5eecededa95bb72e008d1a35c2d2d2325f9d999999c4c7c79bd4298410420821847834949880e9d6ad5bdcb871235f7a585818005dba7431a6f9fbfb53be7c79162d5a645276d1a245d8dbdbd3b56b57635a505010172f5e64fdfaf5c6b4cb972ff3e5975fd2bd7b77acacac006d73dc8e1d3bf2d9679f71f3e64d63d955ab56919a9a4adfbe7defcf850a218410420821ee9b623387e9830f3ee0dab56bc6e1719b376fe6cf3fff0420343494e4e4649a356bc673cf3d47bd7af5006d05baefbefb8ec0c0407af6ec69accbc6c686b0b030468c18417070309d3a7562d7ae5dac5ebd9ae9d3a71b37ad052d606ad5aa1583060de2c89123383939b170e14294524c9d3ad5a48defbcf30e6ddab4c1d7d797a1438772fefc79e6cc9943e7ce9de9d4a9d383be45e221ead7af5f513741dc2379cd1e3ff29a3d7ee4357bfcc86b2604e8d4dd767a7d4cd4ac5993b367cf02a0d3e9006d935a9d4ec7e9d3a771747464d4a851fcfcf3cf242424909393439d3a75e8dfbf3fafbefaaa7149f1bc962e5d4a787838a74f9fa65ab56a8c1c3992d0d0d07ce5ae5dbbc6f8f1e3d9b87123e9e9e9b468d182d9b3679b9d24f9d34f3f3161c204e2e2e22853a60cc1c1c1cc9831c3641fa8bce2e2e268debc39b1b1b132e952082184104214483e373e18c526602aaee4175f082184104214867c6e7c308acd903c218410423c9e4e9e3c69769eb110e21fa54b97a64e9d3a45dd8c1249022621841042149993274f1a57941542dcd989132724682a02123009218410a2c8e4f62c7df6d96778787814716b8478341d3d7a94909010e9892d22123009218410a2c8797878c89c0b21c423a9c4ecc32484104208218410f74a0226218410420821842880044c420821841042085100099884104208218410a2001230092184104208214401246012420821841042880248c02484104208f188983f7f3e0d1a34c0d6d616bd5ecffcf9f301d0ebf574e8d0a1885bf7785ab162057abd9e4f3ffdb4a89b221e53b20f9310420821c423e0f3cf3f67f4e8d17879793176ec58acadad69d5aa95315fa7d33db073fbf9f911131383c1607860e7286a0ff2fe89e24d0226218410428847c037df7c637c74717131c93b76ec187676760ff4fc125008619e044c42082184108f80848404743a5dbe6009a06eddba45d0222104c81c262184104288223565ca14f47a3dd1d1d128a5d0ebf5c69f5ce6e630e51eb773e74ed6ac5943cb962d717070a066cd9ac6329b376f262020005757576c6c6ca85cb9327e7e7e2c5ab408803367cea0d7eb898989c977eebbcd995abc78317abd9ea54b979aa47ff2c927e8f57aecededc9cccc34c96bd9b225b6b6b6dcba75cb247defdebd040505e1e2e282b5b535d5aa55e3a5975e223131d1ecb993939379e38d37f0f0f0c0cece8eb265cbd2b16347b66ddb76c736e775f5ea55dab76f8f858505efbdf75ea18f13258ff430092184104214a10e1d3aa0d3e958b1620567cf9e65ca942966cb1534642e3c3c9c6ddbb6d1a3470f0202024849490160c99225bcf4d24bb8babad2b3674f9c9d9d494a4ae2e0c183ac58b182e1c38753ae5c39264f9e6cf6dc356ad4b863bb3b76ec084064642443860c31a647464602909191c19e3d7bf0f5f50520252585d8d8587c7d7db1b6b636965fbe7c39c3860dc3d6d6961e3d7a50b56a554e9c38c1d2a54bf9faebaff9f9e79fa95ab5aab1fcd9b367f1f3f3e3ecd9b3b46fdf9ea79e7a8a9b376ff2cd37dfd0a54b17162f5e6cd21e73fefcf34fba74e9c2a953a758b56a15cf3df7dc1dcb8b924d0226218410423c76d2d2e0d8b1877fdefaf5e17e4f25f2f5f5c5d7d797a8a828fefcf34fde7aebad7b3a3e2a2a8a9f7ffe99a64d9b9aa42f5ebc186b6b6b0e1e3c88b3b3b3495e727232008e8e8e4c9e3cf95f9dbb56ad5a54ad5a951d3b7698a4efd8b1037f7f7fa2a3a3898c8c34064cd1d1d1180c06fcfdfd8d654f9c38c14b2fbd84bbbb3b3b77eec4d5d5d5a49e4e9d3af1ca2bafb07efd7a63fac081033977ee1c9f7ffe39c1c1c1c6f4949414fcfcfc080d0da5478f1e54ac58d16cbb0f1e3c48606020e9e9e96cd9b2c5a43d4298230193104208211e3bc78e41f3e60fffbcb1b1e0e5f5f0cf7b27c3860dcb172ce5b2b0b0c0d232ffc7bdf2e5cbdf9773070404b062c50a7efdf5571a376ecc912347b870e10293274fe6faf5eb444646326dda34e09f9ea7808000e3f18b162d223b3b9bf7df7fdf245802f0f7f7a77bf7ee7cfdf5d7a4a6a6626f6fcfc18307898989a16fdfbe26c11268c1df942953e8ddbb375f7df515c3870f37c9574ab16ddb369e7efa691c1d1d898989a171e3c6f7e53e88e24d0226218410423c76ead7d78297a238efa3a6458b1666d343424218376e1c0d1a34e0d9679fa57dfbf6b46ddb960a152adcb773fbfbfbb362c50a22232369dcb8b1b1b72920208053a74e3177ee5c63b0b363c70e4a972e6dd2de3d7bf6005aefd3debd7bf3d59f9494444e4e0e274e9ca059b366c6f2d7ae5d333b74f1d2a54b001c3d7a345f5e4444045bb76ea55ebd7a7cf7dd7754a952e53f5fbf2819246012420821c463c7ceeed1ebe9292ae656d5031833660ccecece2c5cb890f9f3e7336fde3c743a1dbebebecc9a358be6f7a18b2eb7b768c78e1d8c1e3d9ac8c848aa56ad4aeddab509080860d6ac59ecdcb9132f2f2f8e1c3942d7ae5d4d16b3b872e50a00b366cd2af01c3a9d8e9b376f9a94dfb66d5b810b3ce8743a525353f3a5efd9b387ecec6c5ab46821c192b827123009218410423cc6eeb47fd2f3cf3fcff3cf3f4f4a4a0abb77ef66c3860d2c5fbe9cce9d3b73ecd8b17c739bee95abab2b75ebd625262686cccc4ca2a3a3e9ddbb37004f3cf104a54a9562dbb66d5cbb760d20df7c21474747743a1d292929383838dcf57c8e8e8e00cc9f3f9f912347de535b67cc98c1b7df7ecb279f7c82528a65cb96c9de53a250645971218410428862ced1d191c0c040962c59c2fffddfff919c9c4c4c4c8c31dfc2c202d0e6f9dcab8e1d3b72fdfa75162e5c484a4a8ab1d7c9cece8e56ad5a1119196932542fafd6ad5ba3943269cb9db46edd1aa0d0e5f3b2b6b626222282be7dfbb262c50a424242c8c9c9b9e77a44c92301931042082144311415156536fde2c58b00d8dbdb1bd39c9c9c504a71f6ecd97b3e4f6eafd1bbefbe8b4ea733098afcfdfd397cf8305f7ffd35cecece3469d2c4e4d8912347626565c59831633879f264beba333333d9b56b97f179f3e6cd69d7ae1debd7afe7934f3e31db9e5f7ffdd53897e976969696ac5dbb96909010d6ae5dcb33cf3c437676f63d5fb3285964489e10420821c423e2dff4f014a477efde942e5d9a56ad5a51bd7a759452ecdab58bfdfbf7e3eded6ddc4709b45ea2888808faf4e943606020b6b6b6d4a85183909090bb9e27771fa9a4a4243c3c3c4ce6540504043065ca142e5dba44dfbe7df31d5baf5e3d962f5fce0b2fbc40c3860de9d2a50b75ead4212b2b8b3ffffc935dbb7651a952258e1c39623c66cd9a35f8fbfb3378f060e6cf9f4f8b162d285bb62ce7cf9fe7d0a143fcf6db6ffcfcf3cf052e6ea1d7ebf9f4d34fb1b1b161e9d2a5f4e9d3878888084a952a752fb7579420123009218410423c02743add3dcda9b95bf9f7de7b8fad5bb7121717c7962d5bb0b1b1a1468d1acc9c3993e1c3871b87e1010c193284b367cff2f9e79f336bd62cb2b3b3f1f3f32b54c054ae5c399a356bc6810307f2cd516ad9b225f6f6f6a4a5a515b8df51fffefd69dab429e1e1e1444545f1c30f3fe0e0e0809b9b1bc1c1c13cf3cc3326e52b57ae4c6c6c2c0b162ce0abafbe62cd9a35e4e4e4e0eaea4a83060d78e5955768d4a8d11def934ea763c99225d8d8d8f0c1071fd0b3674f366cd8808d8dcd5daf579440aa18b879f3a67aebadb754e7ce9d55b972e5944ea7532b56acb8e331999999cac3c343e9743a357bf66cb365962e5daaead7afaf6c6c6c549d3a75d482050bcc96bb7af5aa1a3a74a872767656f6f6f6aa43870e2a2e2ece6cd99f7efa49b56ddb56d9d9d929171717151a1aaa6edebc59603b63636315a0626363ef783d420821c4e348fece097177857d9fc8fbe9c1281673982e5dba44585818c78f1fc7d3d313b8f38a31000b162ce0dcb97305965dbc783143870ea571e3c67cf0c107b46edd9ad0d05066ce9c6952ce6030d0b56b57d6ae5d6bcc4f4a4ac2cfcf8fdf7fffdda46c7c7c3c0101016464643077ee5c860c19c292254bcc76510b2184104208218a5eb11892e7e6e6c6850b17a858b122b1b1b1f8f8f8dcb17c525212616161bcfefaeb4c9a34295f7e7a7a3a13274ea45bb76eac5bb70e80c18307633018080b0b63d8b061942d5b16d03641dbb3678f71dc2f4070703075ebd665f2e4c9ac5ebdda58effffef73f9c9c9c888e8e362e9d59a3460d860e1dcab66ddb78f2c927efcbfd10420821841042dc1fc5a287a954a95254ac581128dc64c9d75f7f9dfaf5ebd3bf7f7fb3f9515151242727f3f2cb2f9ba48f183182d4d454befdf65b635a4444042e2e2ec66009c0d9d999e0e060366dda4456561600d7af5f67fbf6ed84848498ec333060c0001c1c1c8c8199104208218410e2d1512c02a67bf1cb2fbfb072e54ae6cd9b57609903070e00e0eded6d92eee5e5855eaf273e3edea4ac9799adc67d7c7c484b4be3c4891380b6c465767676be3aadacacf0f4f4349e53082184104208f1e8281643f20a4b29c5a851a378f6d96769d9b22567ce9c315b2e3131110b0b8b7cbb5f972a550a2727271212124ccafaf9f9e5abc3d5d515808484041a366c486262a2497a5e2e2e2efcf8e38f776cfbe8d1a38dc30073f5ebd78f7efdfaddf138218428369482df7f875f7ef9e7c7d111de7a0bdab429ead60921c443b576ed5ad6ae5d6b9276eddab5226a4df156a202a6152b5670f8f061d6af5f7fc772e9e9e905aec56f6d6d4d7a7abaf179464606d6d6d6f9cae52e4b995b36f7b1a0b279eb3467debc79667bb28410a2d8ba7409f6ed83bd7bff09909293b5bcdab5a1450b387c18dab685a79e82b7df8666cd8ab6cd4208f19098fbe23c2e2e8ee6cd9b17518b8aaf1213305dbf7e9d37de7883d75e7b8dca952bdfb1acadad2d99999966f3323232b0b5b535297bebd62db3e572f3f33e1654d6ceceae7017228410c5517a3a1c38a00545b901d2a9535a9eb3b3161cbdf28af6d8a205942fafe5190cf0e5975a2f9397170405c1b469e0e15174d7228410a258293101d3ecd9b3c9caca223838d83814effcf9f30024272773e6cc192a57ae8c959515aeaeaee4e4e470f9f265936179999999242727e3e6e6664c7375753519a2972b77085e6ed9dca178b9e9b797cd5ba71042146b06031c3ffe4f60b4772f1c3a04d9d96063a3053e3d7a40cb965a7054b32614b455845e0fcf3c034f3f0dab56c1d4a9d0a8118484c0e4c9e0eefe70af4d082144b15362167d3877ee1c57af5ea561c386b8bbbbe3eeee4efbf6ed01983e7d3aeeeeee1c3d7a14c0b897d3be7dfb4cead8bf7f3f0683c1989f5b362e2e2edfea7c7bf7eec5dede9eba75eb02d0a851232c2d2df3d5999999497c7cbc499d420851ac2426c2a64df0bfff41c78e50ae1c3468002fbc00d1d1d0a409cc9f0fb1b170fd3afcf413cc9d0bcf3eab053c77d9570f004b4b1834480bc4e6cf871f7e807af5e0a597e0ef2fc7841042887fa3c4f430858686d2bb776f93b48b172ff2e28b2f3268d0207af6ec498d1a3500080808a07cf9f22c5ab488c0c04063f9458b16616f6f4fd7ae5d8d69414141444444b07efd7a9e7efa69002e5fbecc975f7e49f7eeddb1b2b202c0d1d1918e1d3bf2d9679f3169d224e3d2e2ab56ad2235355536af1542140f376f6a814fdea1757f6f128e8b8bd66bf4faeb5acf91b7b7b668c3fd646d0d234668c1d3871fc2bbefc28a15f0f2cbda79ffde824208218428ac6213307df0c1075cbb76cd383c6ef3e6cdfcf9e79f80162c356bd68c66b74d06ce1d9ad7b061437af4e8614cb7b1b1212c2c8c112346101c1c4ca74e9dd8b56b17ab57af66faf4e926abd5050505d1aa552b060d1ac491234770727262e1c28528a5983a75aac9f9de79e71ddab46983afaf2f43870ee5fcf9f3cc993387ce9d3bd3a953a707715b8410e2c1c9c981df7e330d8e0e1fd686dcd9d96901d1b3cffe33b4ae4a95c2f516dd0f7676307e3cbcf8a2d65b151e0e4b96c0e8d1f0eaab70dbaaa342082144418a4dc0141e1eced9b36701d0e9746cd8b081f5ebd7a3d3e91830600065ca94b9a7fa860f1f8e959515e1e1e16cdebc996ad5aa316fde3c4243434dcae9f57ab66cd9c2f8f1e3993f7f3ee9e9e9b468d182952b5752a74e1d93b2cd9a3563fbf6ed4c983081b163c752a64c19860c19c28c1933fedbc50b21c483a69436b42defbca3d858484dd5e611356aa40545a346698f0d1a68c3e48a5a9932da5ca6912361e64c983347eb791a3f1e424321cf46e242082184393a75fbe41bf148c95d1e32363656961517423c3c2929b07fbf698074e1829657b5ea3fbd462d5b6a8b343c2e81c7850b307d3a2c5eac0d077ce30d183e5c5b6c421409f93b27c4dd15f67d22efa707e311f8fa4f08214491cacad256a9cb3bb4eed831ad57a94c19f0f1d11668c85dd2dbcc06dc8f0d17176d518871e3202c4ceb690a0f874993b46bfc7bdea9b87f0ccac095b42b5cb879818ba91749cb4ac3c9d609673b679ced9c3128435137513c42ce9c3983bbbb3b03070ee4934f3e29eae6dc17c5f19a4a1a09988410a224510a4e9ffe2738dabb57dbff2823431b42d7b429f8f9c184095a7054af9e36e4aeb8a95e1d962e85d75e832953b45ea69933b57f3ff71c585814750b1f694a29526ea570e1e6052d10ba7951fb77ea6dcf6f5e202935891c9553605dbac48734af4d3c56740f6bbee343541cafa9a490804908218ab3e4642d38cadb7b74f9b296e7eeae0545c1c1dad03a4f4fc8b331778950b72eac59a30dcd9b3409060cd056d69b360dfaf479788b543c226e66de340976727b85ccfd3b33c77483771b4b1b5c1c5c707170a1927d255a546e61fcb731dda11276567624a7277339ed3297d32e131717c73b8bdf29a22b164288bb93804908218a8b5bb7203ede74ded1efbf6b79e5cb6bc1d1cb2f6bc1918f0f54a850b4ed7d94346e0c1b376af7edcd372128489b9bf5f6dbd0a5cb631d386564671883a082829fdcfcd4ac5493632df59626014fa38a8de8e8de1117fb7f02a0dcbcd2a54a17fa1b74170717e3bf6ba4d7e01d246012423cba2460124288c791c1a00543b9c3ea7ef9450b96b2b2a0542968d60c9e7aea9f85196ad57aac3ff43f342d5a689bdeeedc0913276af7b06d5b78e71df0f52dead61965e5647129ed92d92171797b882ea65ee45ac635936375e8a8685fd118f0d42e5f9b27aa3d61da13f4f7bfcbd99643af2b8643321f519b376fe6fdf7dfe7c891235cbd7a15272727ead4a9c333cf3cc3f0e1c34dca262727336bd62c366edcc8d9b3672955aa14dedede4c983081279f7cd26cfd5f7cf1054b962ce1c08103a4a7a7e3e2e242ebd6ad19376e1ccd9b373796bb75eb1673e7ce65f5ead59c3a750a4b4b4b9a366dcaa851a3f2ed1b99777ecee4c99379fdf5d7d9be7d3ba9a9a9346ad4882953a698ec5f99ebc68d1b4c9e3c9975ebd671e5ca156ad4a8c1b061c3e8d9b367a1efd7f1e3c7f1f0f0e0b9e79ee3b3cf3e33a69f3e7d9a5ab56a01101313c3134f3c61cc9b306102b366cd62c78e1df8f9f919d3cf9f3fcfbbefbecb962d5b484848c0c1c181b66ddb3269d224bcbdbdf39d3b3b3b9b254b96b072e54a8e1c39424e4e0ef5ead563f0e0c1bcfcf2cb85faf2c060303066cc18162c58409f3e7df8ecb3cfb09105681e4912300921c4e32029c97458dd2fbfc0b5bf3f08d7aba77dd01f38507b6cda540b9ac4bfe7eb0bbb76c1f7df6b3d4e7e7ef0e4935a8f538b160fe4940665e072dae57c018fb97f5f4ebb9ceff8f2b6e58d018f5b6937bc5cbdcc0e8973b673c6522f7ffe1f354b962ce1a5975ec2d5d5959e3d7be2ecec4c525212070f1e64c58a152601d3d9b367f1f3f3e3ecd9b3b46fdf9ea79e7a8a9b376ff2cd37dfd0a54b17162f5ecc9021438ce595520c1a3488952b5752a14205828282a850a102e7ce9d233a3a9afaf5eb1b03a6cccc4c3a77ee4c4c4c0c1e1e1e8c1c3992d4d45422222278e69967888f8fe79d77f2f7089e3d7b96962d5b52ab562d060e1cc8952b57f8e28b2fe8d9b327dbb76f37094e6eddba45404000fbf7efc7d3d393e79f7f9eab57af12161646747474a1ef59bd7af5a85cb93251515126e9919191803667283232d224608a8c8cc4d6d696366dda18d3e2e2e2e8d4a91357af5ea54b972e04050571e9d225366edcc8134f3cc1860d1b080c0c3496cfcacaa27bf7eefcf0c30fd4af5f9f9090106c6c6cd8b16307a3468d62efdebdac5cb9f28e6dcfc8c8a07ffffe6cd8b081912347327ffefc425fb778f8e47f4c218478d4a4a5415c9c6980f4f746db54aca8f5188d1ba73d7a7b43b97245dadc624ba783c0406d48defaf5f0d65bda3defd9539be3d4a4c95dab504a712de35aa186c3995b1ca18c75199380c7c3d9235f00e4e2e04245fb8a94b2285941725a561ac72e1f7be8e7adef5c1f3b2bbbfb5eefe2c58bb1b6b6e6e0c183383b3b9be42527279b3c1f387020e7ce9de3f3cf3f273838d8989e9292829f9f1fa1a1a1f4e8d1838a152b02f0f1c71fb372e54a5ab468c1b66ddb285dbab4f11883c140525292f1797878383131313cf5d4536cdebc19fddf8bbe4c9e3c99162d5a3063c60cba75eb46ebd6ad4dda141d1dcdd4a9539934699231edb9e79ea34b972ecc9a35cb24600a0f0f67fffefd3cfdf4d37cf9e597c6f4d75f7fdda4a7ab30fcfdfd59b56a15478e1ca1418306801614393b3b53a54a15222323993c79320057af5ee5c08103f8fbfb53eaef2f95b2b3b3090e0e262d2d8de8e868dab56b67ac7bfaf4e9f8f8f83078f060ce9c39633ce69d77dee1871f7e60d4a851cc9b37cfd89b64301818366c18cb972f272828881e3d7a986d737272323d7af460cf9e3dbcf7de7b8c1f3ffe9eae593c7c123009214451cac9d196f0ce3befe8d75fb5745b5b68de5c5b7ca0654beda75a35195af7b0e974f0f4d3d0ab17ac5d0b9327a33c3db9d9c80240530000200049444154bb2bc7473dc7d98aa5cc0e87cb0d8c6e5f1cc1d6d2d624e06959a5252ef6a6f3812ad957322e9020cc3b76f918cd97dcdb87ebfb2176582c5eae0f667f1b0b0b0b2ccd6cf85cbe7c79e3bf0f1e3c484c4c0c7dfbf6350996001c1d1d9932650abd7bf7e6abafbe32f64a2d58b0009d4ec7e2c58b4d822500bd5e8f8bcb3f73ca962f5f8e5eaf67ce9c39c66009a042850a4c9a3489214386b074e9d27c01538d1a3578f3cd374dd23a75ea44d5aa55d9b76f9f49fa279f7c828585053367cecc574768682853a74e2df01edd2e20208055ab56111919690c9876ecd84140400055ab56e5fdf7df273d3d1d5b5b5ba2a2a2504a111010603cfedb6fbfe5d4a9538c1f3fde24580270757565fcf8f18c193386c8c84802030331180c2c58b000575757e6ce9d6b32f44eafd7337bf66c3ef9e41356af5e6d36603a7bf62c5dba74e1f4e9d37cf6d967f4ebd7afd0d72a8a8e044c4208f130fdf59769cfd1fefd70e386f6a1bc41032d287ae925edb16143d917e821cabb38c2edbd40799f5ffebf449ed9a798b4fd1b3c377ec3c1a630b78325b7aab818039e26959ad0a956a77c73825c1c5c7028e520cb0bdf07f59deb133b2cb648cefb20848484306edc381a3468c0b3cf3e4bfbf6ed69dbb62d156e5b9c65cf9e3d005cbb768d2953a6e4abe7d2a54b001c3d7a1480d4d4547efbed375c5c5c68dab4e91ddb70e3c60dfef8e30faa54a942ddba75f3e5fbfbfb03101f1f9f2fcfd3d3d3ecef75d5aa55d9bb776fbe7354ab568d9a356be62bef7b8f730573db141919c9a851a3387cf830972e5d222020802a55aa307bf66c626262e8dcb9333b76ec303906feb99f67ce9c317b3f4f9e3c0968f73330309013274e70f5ea55ead4a9c3b469d3ccb6c9c6c6c678fff33a76ec18ad5bb7263d3d9defbefb8e0e1d3adcd3b58aa223019310423c28376e406cac69efd15f7f6979952b6b7361264ed41ebdbde1b66f7ec57f97959345526a5281c14fde217129b7524c8ed5ebf454b4af680c76ea94af43bb6aedb4e7bd5c3865551eab882806cd5fc60b1f5c4737ac97f67ae6f9b65e3c387656760faca7a7288c193306676767162e5cc8fcf9f38d43bd7c7d7d99356b9671a8da952b5700d8b66d1bdbb66d335b974ea72335555bf1f0dadf731d2b57ae7cd736a4a468ef01d70236a7ceed89caad33afb265cb9a3dc6d2d21283e19fcd8973cf51a952a53b9ea3b0aa54a942eddab5898989c1603018e72f05040450b16245acacac888c8ca473e7ce444646e2e8e8888f8f8ff1f8dcfb997768e0edf2decfdcf2274f9e2c3060ca5b3eaf13274e909c9c8ca7a727cd9a35bba7eb14454b02262184b81fb2b3e1f061d3dea3df7ed3368a7570d096f10e09d17a8e5ab4d00226f1af29a5389b729693574efe1308995921cedce2084eb64ec6de9e2a65aae0ede66d76489cb39d3316fabb6c60fb666718fd262c58a06d7cbb6c198c1aa56d88ebe4f480ae5e1457cf3fff3ccf3fff3c292929ecdebd9b0d1b36b07cf9723a77eeccb163c7707676c6d1d11180f9f3e73372e4c8bbd6991bc8fc95fb65cd1de4d67de1c205b3f989898926e5fe8ddc632f5ebc6836bfa073df89bfbf3f4b962c61dfbe7d44464652a3460d63ef55eebcadc4c4448e1f3f4ef7eedd4d7ac272dbb379f366ba75eb56e8f6f7e9d3878888887b6a678f1e3da85bb72efffbdfff08080860dbb66d26c32dc5a34b02262184b8574ac19f7f9af61cc5c6427a3a5858687bfab46d0b63c6680152fdfa5abaf8579452fc75e32ff627ec37f9b9927ec558c6d1dad124e06950a181d9e17015ed2b6265719f87393a38681bdf0e1f0ee1e130772e2c5a0463c76a3f65cadcdff38962cfd1d191c0c040e39c99e5cb97b36bd72e7af7ee6d9c3b14131353a880c9dede9e468d1a71f8f061e2e3e3f1f4f42cb06ce9d2a5a955ab16a74e9de2f7df7fa776edda26f9b9abd17979fdfb9ebdd2a54b53bb766d4e9d3ac5a953a770777737c9bf9755f27275ecd891254b96b075eb5676edda45505090312f202080b0b0303efffc73e3f3bcf2decfc2044c1e1e1e942d5b963d7bf6909d9d6d76ced99dbcfefaebd8dada3266cc18fcfcfcd8be7dbb71710ef10853e291161b1bab00151b1b5bd44d11a2e4ba7a55a91f7e502a2c4ca9eedd95aa5449292d6c52aa7a75a58283959a3d5ba95dbb944a4d2dead63ef62edcb8a0be39fe8d9a123545755bd34db9cc76514c41310555695625d56d4d3735357aaafaf6c4b7ea54f22995969956d44d369594a4d4d8b14a595b2b55bebc52efbd27bf1777207fe7343b76ec309bdead5b37a5d3e9d4f7df7f6f4c6bdfbebdb2b0b050cb972f377bcca1438754525292f1f9c71f7fac743a9d6ad1a2854a494931299b9393a31213138dcfa74f9fae743a9dead5ab97cac9c931a65fba7449d5a85143e9f57af5d34f3f19d34f9f3ead743a9d1a346890d9b6f8fafa2abd5e6f92967b8ea0a0206530188ce9a74e9d52e5ca95bb637de65cbe7c59e9f57a55a95225a5d3e9d4dab56b8d793b77ee543a9dce98f7ebafbf9a1c9b9595a56ad7aeadecececd4962d5bccd6bf7bf76e9596f6cfff336fbdf596d2e9746af8f0e12a3d3d3d5ff984840475e4c811e37373f7e8a38f3e527abd5ed5af5f5f252424dcf51a0bfb3e91f7d383213d4c4208915766261c3c683ab4eef8712dcfd1511b4e3774a8f6d8a20514300e5f144e727a32b109b1ec4bd867ec393a77fd1ca00d9df376f36670b3c1f8b8f9e0ede68d5b69b7477fc1840a15b49ea6b163b57d9b264ed47a9d264ed47e77acad8bba85e211d4bb776f4a972e4dab56ada85ebd3a4a2976eddac5fefdfbf1f6f6a663c78ec6b26bd6acc1dfdf9fc18307337ffe7c5ab46841d9b265397ffe3c870e1de2b7df7ee3e79f7f362e183164c81076eddac5aa55aba853a70e3d7af4a042850a242424101515c5e0c18379ebadb70078f5d557f9eebbefd8b469134d9b3625303090b4b434befcf24b2e5fbecc6bafbd66b287516128a54c9e8f1b378e8d1b37f2d5575fe1e5e545a74e9db876ed1a5f7ef925eddbb767f3e6cdf754bf9393134d9a34e1e0c183e8743a93451d5ab76e8dadad2d49494954ac5891468d1a991c6b6969c9faf5ebe9dcb9335dbb76a54d9b36346dda143b3b3bce9d3bc7be7dfb387dfa34172e5cc0d6d6168049932671f0e0413efae823befefa6b3a74e840e5ca95494a4ae2e4c993ecdebd9be9d3a7e3e1e151609b5f7cf1456c6c6c183c7830eddbb767c78e1d54ad5af59eae5b3c44451db1893b936f0a84784856ac50aa552bad570094b2b252cac747a91123945ab952a963c794caf36dabb8772919292aea74949af5d32c15fc65b0727fdfddd87354664619e5ffa9bf7a6ddb6b6adde175eaf4d5d326df3c3fd6fef843a9010394d2eb95aa564da965cb94caca2aea563d32e4ef9ce6a38f3e52bd7bf756eeeeeecacece4e952f5f5e797979a959b366a99b376fe62b7fe3c60d357dfa74d5bc7973e5e0e0a06c6d6d95bbbbbbead6ad9bfaf8e38f55aa995ecdd5ab572b5f5f5fe5e8e8a86c6c6c94bbbbbb0a090951070e1c3029979191a1a64f9fae1a356aa46c6d6d5599326554bb76edd4e79f7f9eafcebbf530f9f9f9e5eb61524aa9ebd7afabb163c7aaca952b2b1b1b1be5e1e1a1e6cc99a34e9d3a75cf3d4c4a29356edc38a5d3e954a3468df2e575eedc59e9f57af5ecb3cf16787c5252927afdf5d755a3468d949d9d9d7270705075ebd6557dfbf655ab57af56d9d9d9f98e59b56a950a080850e5cb9757a54a955255aa5451eddab5533366cc50e7cf9f3796bbd33d5abb76adb2b2b252356bd654a74f9f2eb07dd2c354b4744add16f68b474a5c5c1ccd9b37273636f63f8d191642dcc1c58b50bdba36efa8674f6dde51d3a6606353d42d7b6ca566a6127f219efd09fb8dbd47c7af683d75f656f678b97ae1ede66dfca95dbe367a9dfe2eb53ee68e1ed536bf8d8880ba7561ea54080e067d31bfeebb90bf7342dc5d61df27f27e7a3064489e10422c58009696da07d972e58aba358f9d8cec0c0e5d3c641c52b72f611f472e1dc1a00c585b58d3ccb5194fd67a92379e78036f376fea3bd7bffbea73c59187077cf9251c38006fbe09fdfac18c19101606ddbbcb86c44208f1889280490851b2ddb8011f7e08c38649b054085939591c4e3aac0547895a80f4ebc55fc9326461a9b7a449a526b4adda96575abe82b79b370d2b34bcffabd23dee9a35836fbf85ddbbb5794d3d7b6af3e1de790702022470124288478c044c4288926de952b879535b025c98c831e470f4f25193a5bce32fc4732be7167a9d9e86151ae253d98721cd86e0ede64de34a8db1b194618c85d6a60decd8a1fd4c9c084f3e09bebe5ae0d4b66d51b74e0821c4df24601242945c595930670e3cf71c94f0d5890ccac0efc9bfb3efaf7dc69ea3b8c438d2b2d2d0a1a39e733dbcddbc79aef17378bb79e3e9e2899d955d5137fbf1a7d369bd4afefef0cd37da50bd279e80c0406d853d9983208410454e02262144c9f5f9e770fe3cbcfa6a51b7e4a1524a71e6da19930519621363b97eeb3a00b5cad5c2dbcd9b9ef57ae2e3e64333d76694b196cd571f289d4e9bc7d4b5ab36cfe9adb7a0797378fa6998360d1a3428ea160a21448925019310a264520a66ce84a79e82c68d8bba350f8c528abf6efc65121ced4fd84f727a3200d51cabe1ede6cdeb6d5fc7dbcd9be66ecd296f5bbe885b5d82e9f5f0cc335aa0b46a95b6925ee3c6d0bf3f4c9902eeee45dd422184287124601242944cdf7f0f870fc3071f14754beeab8b372f9aac56b73f613f17532f02e0e2e0828f9b8f7141066f376f2ada572ce2160bb32c2d61d0206db8e8d2a5daf0bcb56b61f0606dd85e952a45dd422184283124601242944c33676a2b93b56f5fd42df9d7aea45d213631d624403a7ffd3c004eb64ef854f66168f3a178bb6ac1915b693774b202dbe3c5da1a468cd082a70f3f8477df85152be0e597e1f5d7a1a204bc4208f1a049c0248428797ef905a2a3b57d971e930022252385b8c438e372defbfedac7e96ba70170b476c4dbcd9bfe8dfb1b7b8eaa3b5697e0a838b1b383f1e3e1c51761ee5c080f87254b60f4686d0e5ed9b245dd42218428b68ac5f6e2a9a9a94c9e3c992e5dba50be7c79f47a3d9f7efa69be721f7ffc31bebebeb8b8b860636343f5ead5e9d7af1f478e1c315befb265cbf0f0f0c0d6d696ba75ebf241014377ae5dbbc6b061c3a850a1020e0e0ef8fbfb73e0c001b36577efdecd134f3c81bdbd3daeaeaebcf2ca2ba4a6a6fefb8b1742dcbb59b3a0766de8d5aba85b62566a662a3ffef923f37e9e47c8fa10ea7f509fb2ef95c57fa53f53774e25f14622bdeaf7624d9f359c187982e409c96c1fb09d773bbe4b5083206a94ad21c1527155a60c4c9e0ca74f6b3d4f73e640cd9ada52e4376f1675eb8410a2582a163d4c972e5d222c2c8cead5abe3e9e9497474b4d90f0bf1f1f1d4aa558b5ebd7a51ae5c394e9d3ac5c71f7fcc37df7c436c6c2c75ebd635965dbc7831c3870f27282888575f7d95989818424343494b4be3b5d75e339633180c74edda9543870ef1da6bafe1e4e4c4c2850bf1f3f323363696dab56b9b9c3f202080860d1b3277ee5cce9d3bc7ecd9b33979f2245bb66c79b0374908a1f9fd77f8ea2b58b4082c2c8aba3564646770e8e22193e5bc8f5c3a824119b0b1b4c1d3c593276b3dc9ffdafd0f6f376fea39d5c3425ff4ed1645ccc909de7b4fdb3f6cfa746d25bdf7df8737de80e1c3c146f6c3124288fba558044c6e6e6e5cb870818a152b121b1b8b8f8f8fd9721f7ef861beb45ebd7ae1ededcdead5ab993a752a00e9e9e94c9c38916eddbab16edd3a00060f1e8cc160202c2c8c61c38651f6efe10f111111ecd9b387888808faf4e9034070703075ebd665f2e4c9ac5ebdda78aefffdef7f383939111d1d8d83830300356ad460e8d0a16cdbb68d279f7cf2fedd14218479b36743850a3060c0433f75564e1687930e9bac56f76bd2af641bb2b1d25bd1a45213da566dcb2b2d5fc1c7cd8706151a606561f5d0db291e232e2e307f3e8c1b076161dab0bdf0709834095e7801ace4f7470821feab621130952a558a8a7f4f7c554addd3b1d5ab5707c02acf1f95a8a82892939379f9e5974dca8e183182d5ab57f3edb7dfd2bf7f7f400b985c5c5c8cc11280b3b333c1c1c17cf6d967646565616565c5f5ebd7d9be7d3b63c78e35064b0003060c60cc9831ac5bb74e0226211eb48b17b509f3932681aded033d558e2187a3978f9aac5677f0c2416ee5dcc2426741c38a0df176f366a8d750bcddbc6952a909d696d60fb44da218ab5e5d5b4defb5d7b4e5c7870fd716369932455b69ef11e84d154288c755b198c374afae5cb942525212fbf7ef67d0a04154aa548941830619f373e71f797b7b9b1ce7e5e5855eaf273e3edea4ac97999dd87d7c7c484b4be3c4891300fcfaebaf646767e7abd3caca0a4f4fcf02e73c0921eea3050bb4e59a6ffb32e4bf322803c72f1f67f5a1d58cd93a8627963f419977cbd07851635ed8f40251a7a3a8e7548f994fcee4a7177ee2fa1bd739f8d24196f558c6709fe1f854f6916049dc1f75ebc29a3570f0a0b67fd38001da634404180c45dd3af11f444747a3d7eb8da3610a63ca9429e8f57a76eedc79dfdae1e7e7875e5fbc3e3e16c76b12f757b1e861ba57952b57263333130077777776eedc49e5ca958df9898989585858e0ecec6c725ca952a5707272222121c1a4ac9f9f5fbe73b8baba0290909040c3860d494c4c3449cfcbc5c5851f7ffcf18e6d1e3d7ab4711860ae7efdfad1af5fbf3b1e2784f8dbcd9bdab2ccc38641b972ffba1aa514a7af9d3659ca3b3621961b993700a855ae163e957de85dbf37de6ede34736d4619eb32f7eb2a84289cc68d61e346d8b74fdbb7a96f5f68d64cdbcf2930f0b1591db2243973e60ceeeeee0c1c38904f3ef9a4c072f7b2a08b4ea733fedc4fc5715199c7e59a228e44a073d5d1b85263befce24bd6ae5d6b927feddab5226a59f1562203a6ad5bb7929191c1912347080f0fa753a74efcf8e38f54f97b23c0f4f4744a952a65f6586b6b6bd2d3d38dcf333232b0b6ceffcdb0cddf136e73cbe63e1654366f9de6cc9b37cf6c4f9610a290962ed582a6d1a30b7d88528af3d7cf1b97f2ce0d9292d39301a8e6580d6f376fe3820ccd5d9b53cef6df076342dc773e3eb0752bc4c4c0c489d0b52bb46dab054e66beec134527f703fbfdfce03e72e448faf5eb47d5aa55ef5b9da268cdfc692633fe9881ada52dcddd9ad36a542b5a566e49cbca2da952a60a070e1ca079f3e645ddcc62a744064cbebebe0074eedc999e3d7bd2a85123a64d9bc692254b00b0b5b535f640dd2e232303db3c731f6c6d6db975eb96d972b9f9791f0b2a6b6767f71fae480871475959daf2cbfdfa41b56a0516bb78f3a2c9820cfb13f67331f522002e0e2ef8b8f930bae5682d38726b4e457bd934543c26dab7d782a6ad5bb51ea70e1da063476d39f2162d8aba75827fe660dfeb5cec3b717272c2c9c9e9bed5278a5ecca0180c2e06f69edfcbdebff6b2eeb775ccde3d1b00570757ea67d52fe216164f257ec0a6bbbb3b9e9e9eecddbbd798e6eaea4a4e4e0e972f5f36299b9999497272326e6e6e2665f30ed1cb953b042fb76cee50bcdcf4dbcbe6ad5308719f7df1059c3ba7ad206686528a3e5ff4c125dc85ee6bbbf3e1be0fc951390c6d3e944dcf6ee2afb17f91382e91cdfd3633c977128175022558128f1f9d0eba74d186e97df515242440cb96d0b3271c3a54d4ad2bd1a64c9982bbbb3b009f7efa297abddef8636e5fc9f8f878ba76ed4ad9b265b1b7b7c7cfcf8f3d7bf698ad57afd71313136392aed7ebe9d0a103172f5e64c8902154ae5c194b4b4b93737dfef9e7346fde1c3b3b3b2a55aac4800103cc7edeb993d6ad5b636d6d4d5a5a9a49baafaf2f7abd9e21438698a41f3d7a14bd5ecfc081034dd2b3b3b359b87021ad5ab5a24c9932d8dbdbe3e5e5c5871f7e586080b977ef5e828282707171c1dada9a6ad5aaf1d24b2f99fd1c56901d3b76e0e8e848e5ca9539f488bc476c2c6d78a2da138c6b338e757dd77176f45912c626b0e1990d0cf41cc88d5b378aba89c55289ec61ba5d7a7a3a167956106ad6ac1900fbf6ed233030d098be7fff7e0c06039e9e9ec6344f4f4f76edda8552caa41b7defdebdd8dbdb1bf7766ad4a811969696ecdbb78fa0a02063b9cccc4ce2e3e379f6d9671fd8f50951a229a5ad161618a8cdeb3063e3b18d6c38b681799de7d1ab7e2faa39567b6cc6b30b71cf743ae8d3470b94d6aed536c2f5f484679e81a953b58523c443d5a1430752525278fffdf7f1f4f4a4579e4db5733f93e4dab76f1fefbdf71e6ddab461d8b0619c3d7b96afbefa8a808000e2e3e34df694bc93e4e4645ab56a45e9d2a5090a0a42afd7e3e2e202c0dcb97319376e1ce5ca9563e0c081942d5b96efbfff9eb66ddbe2e8e858e8ebead8b1237bf7ee65d7ae5d74eedc1980b4b4347efef967002223234dcae73eefd8b1a3312d2b2b8beeddbbf3c30f3f50bf7e7d424242b0b1b161c78e1d8c1a358abd7bf7b272e54a937a962f5fceb061c3b0b5b5a5478f1e54ad5a9513274eb074e952befefa6b7efef9e7bb0e535cbd7a352fbcf002b56bd7e6fbefbf7fa48735ba9676a557fd5e74a9d18b4617fa12820cc9bbef5431b36fdf3ea5d3e9d4a79f7e6a929e9d9dad929393f395dfbb77afb2b4b454a1a1a1c6b4f4f474e5e4e4a4ba77ef6e5236242444393838a8ab57af1ad3bef8e20ba5d3e95444448431edd2a54baa6cd9b2aa5fbf7e26c70706062a37373775e3c60d63dad2a54b954ea7535bb76e357b3db1b1b10a50b1b1b185b87a21443edf7da71428151565363b232b43d57abf96eabcaaf3c36d97108f8acc4ca5162f56aa4a15a52c2c947ae105a5ce9c7968a7ffd77fe75253958a8d7df83fa9a90fe43e9c397346e9743a3568d020b3f95151514aa7d399fd8cb378f162a5d3e9d4cb2fbf6c923e79f264a5d3e9d4ce9d3b4dd273eb193870a0cac9c931c93b7dfab4b2b2b2524e4e4eeaecd9b3c67483c1a09e7efa69a5d3e9945eaf2fd435edd8b143e9743a357efc7863daf7df7faf743a9dead4a993d2e974ea8f3ffe30e6f5ead54be9743a75fefcf97cd7101a1aaa0c0683313d2727470d1e3c58e9743ab569d32663faf1e3c795959595aa53a78e4a484830694f6464a4b2b0b050bd7bf73649f7f5f535b9a677df7d57e9f57ad5be7d7b93cf7c45e9f6f7c9c58b4afdf08352b36629d5bfbf528d1a696f5f90cf8d0f42b10998162c58a0c2c2c2d4f0e1c3954ea7534f3ffdb40a0b0b536161612a2525455dbd7a55d9dbdbabc18307abf0f070f5d1471fa9112346283b3b3b55a54a159598986852dfc2850b954ea7537dfbf6551f7ffcb11a306080d2e9746ac68c1926e572727254ebd6ad55e9d2a5d5b469d3d4871f7ea81a366ca81c1d1dd58913274ccac6c5c5291b1b1be5e5e5a5162d5aa4264e9ca86c6d6d55972e5d0abc2e099884f88ffcfc94f2f1512acf1fdabcc277872bfd54bd3a7cf1f0436e98108f98f474a5e6ce55aa4205a5acac941a3952a9db3e703e08fffaef5c6cacf665c8c3fe79407f8f4f9f3e5da880a95dbb76f9f2b2b2b294a5a5a5f2f1f13149bf53c0646363a32e5dba94afaeb7df7e5be9743a3565ca947c79a74e9d527abdbed00153464686b2b5b5555e5e5ec6b4f1e3c7ab52a54aa93d7bf6289d4ea7962c59a294d23e4f952d5b56d5ab57cf5836272747952f5f5eb9b9b9e50bec9452eaead5ab4aafd7abe0e06063dae8d1a3954ea7535bb66c31dba65ebd7a294b4b4b75f3e64d635a6ec0643018d4881123944ea753414141ead6ad5b85bace8721f77dd2a64dac7275fde7d7d1de5ea9d6ad951a3e5ca98f3e526ac50af9dcf820149b2179e1e1e19c3d7b16d05698d9b06103ebd7af47a7d33160c0005c5d5d193a7428515151444444909e9e4ed5aa5579e1851778f3cd37a954a992497dc3870fc7caca8af0f070366fde4cb56ad598376f1ea1a1a126e5f47a3d5bb66c61fcf8f1cc9f3f9ff4f4745ab468c1ca952ba953a78e49d966cd9ab17dfb76264c98c0d8b1632953a60c43860c61c68c190ff6e6085152fdf20b4447c3975f9a5d46f972da65a6ed9cc6b0e6c36858b1e1c36f9f108f121b1b6d15c92143b43dcb66ce8465cb60e4489830011eb5c503ead787d8d8a2396f11ba7d3f47004b4b4b2a55aac4d5ab570b5d4f8d1a35f26d9f0210171707fcb340565e356bd6a46ad5aa9c3b77ae50e7b0b6b6a675ebd644474773f5ea55ca952bc78e1d3bf0f1f1a155ab5654aa5489c8c848860e1d4a5c5c1c29292926dba59c387182ab57af52a74e1da64d9b66f61c3636361c3d7ad4f83c772e577474b4c9fcf45c494949e4e4e470fcf87193d5879552f4e9d3874d9b36111a1acabc79f30a758d0f9b8505bcf082368ab66953a8550bf26e21f5f7cb27eeb36213309d3e7dfaae65e6ce9d7b4f750e193224df844473ca962dcbc71f7fccc71f7f7cd7b26ddbb6bdeb9e4b4288fb64d62ca85d1b7af7369b3d257a0a0ac5343ff37f888528911c1ce08d3760f870080f87b973e1a38f60ec58eda7cc23b2af989d1d94c0ed366edf933197a5a52539393985ae2777bed2ed52525200f27d919cf7b8c2064ca0cd478a8a8a222a2a8a0e1d3a101f1fcfc48913016dee56eebca5dcc7808000e3b157ae5c01e0e4c99305064c3a9d8ed4d4d47cc7cc9a35abc036dd7e4cae5dbb7661696949b76edd0a7d7d0fdbbc7925f2d7bec895f855f28410c5d4efbf6b2b81bdfaaaf695dc6d8e5c3ac247fb3fe2cd766f52c1be4211345088475cd9b2101606a74fc3d0a1f0eebb50b3a6d6f374dbaa67e2f153d0c236b98b3a5cbc78d16cfe850b17eee93cfefefe006cdbb68da8a8280c06833128f2f7f7e7d2a54b1c3c7890c8c848e3ea7db7b7a54f9f3e180c06b33f393939fcf1c71f26c7e8743aae5fbf7ec763dab56b97ef7e44474753ae5c397af4e8c177df7d774fd7298a3709988410c553783854a800030698cd7ef58757a9e6588dd096a166f385107fab50417b3ffdf10704076b1be0d6aa051f7c0066f61614ff4eee6abdf7d24bf420e46e7a1a1d1d9d2fefd4a953f7d4bb04da10c23265ca101919c98e1d3bb0b5b5a575ebd6c03fbd495bb66ce1a79f7ea2499326942f5fde78ac87870765cb9665cf9e3d64676717ea7cad5bb74629956f29f5c268d4a8113b77eea45cb972f4eedd9b4d9b36dd731da2789280490851fc5cbc089f7c02a1a19067a3e95c5b7fdfca77bf7fc7cc2767626d695d040d14e23154b9322c5a04c78f43a74ef0ca2bda12e4cb9641213fcc8a82952b570ec0381fbba8f4efdf1f2b2b2b162c5860d21683c1c0f8f1e3ef79635d0b0b0bdab76fcfefbfff4e444404eddab5c3caca0ad0e63d362384000020004944415444d5a85183f7df7f9ff4f474636f54de63478d1a45626222a1a1a1646464e4ab3f3131d1640ed3c89123b1b2b262cc98319c3c79325ff9cccc4c76edda55607bebd7af4f4c4c0c952a55a26fdfbeac5bb7ee9eae57144f123009218a9f0f3e004b4b6d0ec66db20dd98cfb611cedaab5e3698fa78ba071423ce6dcdde1d34fe1f06168d1425b24a241036d4f2783a1a85bf7d8727070a055ab56ecdab58b909010a64e9dcadb6fbfcdafbffefa50db51bd7a75de7df75dae5ebd4ab366cd183e7c3813264cc0cbcb8b03070ed0a449937b0e9a727b929292924ce628e5e62525259994cb6bd2a449f4e8d1838f3efa883a75ea3060c000de78e30d060f1e4cfbf6eda95ab52a5f7ffdb5b17cbd7af558be7c3967ce9ca161c386f4e8d18371e3c6111a1a4aaf5ebd707575e5c5175fcc779ebcd754ab562d76edda45b56ad5e8dfbf3fab56adbaa7eb15c58f044c4288e2e5e64df8f0436dce459ea11db996c62de5b74bbf31a7f31cd99c5688ffc2c3435b81322e0eead481e79ed396eedab4495bf158dcb355ab56d1b56b57befffe7ba64d9bc6e4c9933970e040a18e35f7ff994ea7fb57ffcf8d193386356bd650b3664d56ac58c18a152b68d2a409bb77efa65cb972f75c676e20a4d3e9f2f522e5e6595959d1be7dfb7cc75a5a5ab271e34656ae5c49bd7af5f8f6db6f9933670e3ffcf003006fbffd36fdfbf73739a67ffffec4c6c6d2bf7f7f0e1d3ac4871f7ec89a356b3875ea14c1c1c12c5cb8d0a4bcb9fb54ad5a35626262a85dbb362fbcf002cb962dbba76b16c58b4eddebd704e2a18a8b8ba379f3e6c4c6c69a2c7f298428c0fbefc3b87170ea1454ab6692959291429d057508ac13c8a7bd3e2da2060a514ceddeadcd6f8a8ed67a9ede7e1b3a7634bba47f5ef2774e88bb2becfb44de4f0f86f43009218a8fac2c983307faf5cb172c01ffcfde9d875555ed7f1c7f1f90491c0107d4ca1c4873b838de32cba91c52bb9548615e6fe6d0cf21a7944a2b33536f385626a969991a397633b59c4dcd5201294b4bcdd454520831996438fbf7c78e23478e530287e1f37a9ef3a06b2fd6fa6e1c9ef33d6bedef62f2aec924a52731b9fd6427042752ccb56a055bb7c2e6cd6692d4b123b46b075f7fedecc844446e89122611293e962d83932761cc985c978e9d3fc6ac6f67117a5f28d5cb55774270222580c5021d3ac037dfc09a3570fe3cb46e0d0f3fac133545a4c852c22422c5836198e7c374e9028d1be7bafcc2e617f02bedc79856b9932911c963160b74ef0efbf7c3279f9825c99b3583a0203878d0d9d18988dc14254c22523c6cd800070e406868ae4b3b4fec64e5c1954ce930056f776f2704275242b9b8c0134fc08f3fc2c2851019096ddbeafc2611295294308948f11016062d5a409b3676cd56c3caa88da368e6df8cde8d7b3b29389112ae5429e8dbd73cc369c306f0d0f967225274947276002222b76cdf3ed8b6cd2c717c4545aea5df2f25f24c243b9ede818b459f1189389587073469e2f052cec34745c49efe7d389712261129faa64e85dab5e1b1c7ec9a93d3937969cb4bf4a8df83fbefb8df49c189c8b5942d5b1680debdb5022c723dd9ff5ea46029611291a2ede85158b5ca3cacd6d5d5eed2b4ddd3884b8923eca13027052722d753b76e5d0e1f3eccc58b179d1d8adc82b434b3b6c7e1c3f6af9414f37ac58a70d75d101070f975c71de66e4db93165cb96a56eddbace0ea344d25f531129da66cc005f5ff8cf7fec9a4fff799ab0dd610cffe7706a55ace5a4e044e446e84d60d1f2fbef101303df7d67be6262ccc7d3ac56b3cec75d77c13ffe014f3e697e0d0c84aa559d1db5c8dfa78449448aae73e7e0830f60dc38f0f2b2bb346eeb384abb9566dcfde39c149c8848d19491010909101f6fbe4e9db24f8ece9d33fb952d6b2644eddbc3a851e6af1b3480d2a59d1bbf485e53c2242245d73bef98dbf0060fb66b8e3a13c5a2ef1631e7e13994f72cefa4e044449c2f2bcb3c3f383bf9b991d7850bb9c7b9e30e3321fabfffbbbc6a54b3a6b9a22452dc29611291a22929c97c6e69c000f0f1b1351b86c1c80d236950a901039a0d706280222279cb6a3593991b497afef8c3fc9a90609eeb9d93c562feb7e9e777f9d5b0a1fdeffdfcccddce7e7e50a50a942be79c7b16290c94308948d1b46001fcf9278c1c69d7bcfad06a769edcc9974f7d492917fd172722859361c0c58bd74f78ae6ccbcaca3d56850af6894e40c0e564c7d1ab62c55c357244e41af46e42448a9e8c0cb3d8434808dc7ebbadf952e625423787d2b94e673ad5e9e4c40045a424310cb31adcf5129e2b5f1919b9c72a53c63eb9b9fd7668daf4eac98f8f0fb8b915fc3d8b94244a9844a4e859be1c4e9e843163ec9adfd9fb0e27124ff079c8e74e0a4c448a83b4b41b4b7872bed2d2728fe3e909952a5d4e6eaa5675bcf52de716380f8f82bf5f11b936254c2252b41806848541e7ced0b8b1ad392e398e893b26f26cf367b9bbd2dd4e0c50440a938c8c9b4f7e9293738fe3ee9e3bc10908c8fdbc4fce97aac589140f4a9844a468d9b811beff1e66cdb26b1ebf7d3c162c4c683bc1498189487ecbcab22f777d23450f1c557c7375cd9de8dc71c7d5577efcfcccad72164bc1dfb388389f122611295ac2c2a0797368dbd6d6f4e3b91f991b3597b007c3f02bede7bcd844e48659ad90987873450fce9fbfb18a6f8d1a5d3bf929574ee5b045e4c629611291a2233212b66e359f61caf151efe84da3b9b3c29d0c6d39d489c189146d5959e6733879f1ba74e9ead792922e2744566bee381c557c6bd5eaeac94f850aaaf82622f9ab58244cc9c9c9848585b167cf1ef6eedd4b6262221f7cf001fff9cf7f6c7d0cc360d1a245ac5ebd9a989818121212b8f3ce3b79f2c927193d7a341e0e9eb25cb06001d3a64de3f8f1e3dc76db6d0c1b368ca14373bf214b4c4c243434944f3ffd94d4d4545ab66cc9f4e9d369d2a449aebebb77ef26343494fdfbf753ae5c39828383993c7932dedede79fb4311298ec2c2a0562d78fc715bd39747bfe4cba35fb22a78151ea5f4b4b4144d860199997f3f09c98bc42633f3e6e37677370b1b5cef55b1e2e55f972ead8a6f2252b4148b84292e2e8e89132772c71d77101818c8f6eddbb15cb1d138393999679e79867befbd9741830651b9726576efdecdf8f1e3d9b2650b5bb76eb5eb3f77ee5c060d1a44505010a3478f66c78e1d0c1b368c9494144243436dfdac562b5dbb76e5fbefbf273434145f5f5fe6cc9943dbb66d898a8aa24e9d3ab6be31313174e8d081060d1a3073e64c7efbed37a64d9bc691234758bf7e7dfefe90448abaa34761d52a983ddbf67172a63593e7373e4f9b3bdaf058bdc79c1ca0146586611607c8efd5956bbd1cadb65c8f87c78d252c7e7e37d62ffb7523e37a78685b9b88940cc52261aa56ad1abffffe3b952b57262a2a8a162d5ae4eae3e1e1c1eeddbbb9e79e7b6c6dfdfaf5a366cd9ab6a4a943870e00a4a6a6326edc38ba75ebc6f2e5cb6d7dad562b13274e64e0c08154a8500180952b57f2cd37dfb072e54a1effeb53efe0e060020202183f7e3c4b972eb5cd3776ec587c7d7dd9be7d3b65ca9401a066cd9a0c1830804d9b36f1d0430fe5cf0f48a4389831c37c3afbe9a76d4df3a3e67328ee108b072ecef52189146f2929f0d55770f870de2537573e1b7323bcbc6e2ce12857eee612961b4956dcdd95b088881484629130b9bbbb53b97265c0dc7ae7889b9b9b5db294edd1471f65fcf8f1fcf4d34fb68469dbb66d2424243078f060bbbe43860c61e9d2a5ac5bb78ea79e7a0a3013a6aa55abda9225003f3f3f82838359b26409191919b8b9b9f1e79f7fb279f366468d1a654b9600faf4e9c3c8912359be7cb9122691ab39770e3ef800c68d33dfa102896989bcbafd55fafca30f4dfd9b3a39402908478ec0faf5f0c51766b2949676798bd7b5928bd2a5cdad5e7f6715e55a2f3737554d131129098a45c2742b7efffd77c04c72b2eddfbf1f80e6cd9bdbf56ddab4292e2e2ec4c4c4d812a6fdfbf7d3b469ee376b2d5ab460debc791c3e7c98060d1a70e0c001323333738de9e6e6466060a06d4e117160f66cf3a3f41c1f624cda3989948c14267798ecc4c0243fa5a4c0f6ed6682f4c517f0cb2fe6aaca030fc0a449d0a50bd4aba7a4454444f257894f98c2c2c2285fbe3c5dba74b1b5c5c6c6e2eaea6a974481b992e5ebebcb993367ecfab6cd51de389bbfbf3f0067ce9ca1418306c4c6c6dab5e754b56a5576edda75cd38478c1861db06982d2424849090906bdfa04851979464264c030698cb04c02f09bff0d6b76ff1f2032f53ad6c3527072879c530cc55a4ec0469fb7673cb5ccd9a6672d4a50bb46b679e87232252d245444410111161d7969898e8a4688ab7129d304d9e3c992d5bb6101e1e4eb972e56ceda9a9a9b8bbbb3bfc1e0f0f0f5253536dbf4f4b4b735861cfd3d3d33656ceaf57eb9b734c4766cd9ae570254ba4d85bb810fefc13468eb435856e0ea5b2776546b71aedc4c0242fa4a4c0b66d9793a463c72eaf224d9e0c0f3f0c77dda5552411912b39fae03c3a3a9a66cd9a3929a2e2abc4264ccb962de395575ea17ffffe3cfbecb376d7bcbcbc484f4f77f87d69696978fdf50c4576df4b972e39ec977d3de7d7abf52d5dbaf4dfbb1191e22c2303a64f87279f843bee0060c7891dac3eb49a8f1efd88d26efa7753d4e45c455abfde7c1649ab482222529895c88469d3a64df4e9d3876eddbaf1de7befe5baeeefef4f565616f1f1f176dbf2d2d3d3494848a05ab56a767d736ed1cb96bd052fbb6ff656bcecf62bfbe61c5344feb262059c3c0963c6006035ac8cda308ae6d59af354e3a79c1c9cdca8abad22b5690353a698499256914444a4b02a710549f7ecd9c3638f3d46cb962d59be7c392e0e6ab2661f38bb6fdf3ebbf6c8c848ac562b818181b6b6c0c040a2a3a37355e7dbb3670fdedede04040400d0b061434a952a956bccf4f474626262ecc61411cca588b030e8d409fef10f00167fb798a8d82866769a898ba5c4fdf755641806fcfc33cc9a65fef1f9f840b76eb06e9df9fbcf3f878404d8b8d1dc69a9c20d2222529895a8771c870e1da26bd7aed4aa558bb56bd73a7c9e08a07dfbf6f8f8f8101e1e6ed71e1e1e8eb7b7375dbb76b5b505050571f6ec5956af5e6d6b8b8f8f67c58a1574efde1db7bf8e2c2f5fbe3c0f3ef8204b962c212929c9d677f1e2c5242727d3b367cfbcbc5591a26fe346f8ee3bf8eba0e8e4f464c66e1d4bcfbb7bd2faf6d64e0e4eae9492622644438640edda6612f4c20b66f234650a1c3a64ae2ccd9963264fdedece8e584444e4c6149b2d79b367cf263131d1b63d6ecd9a359c3c79128061c38661b158e8d4a913898989848686f2f9e79fdb7d7f9d3a756ce734797a7a3271e244860c19427070301d3b7664e7ce9d2c5dba94c99327db55ab0b0a0ae29e7beea16fdfbe1c3c78105f5f5fe6cc998361184c9830c16e8e499326d1aa552bdab469c38001033875ea143366cca053a74e74ecd8313f7f3c22454f5818346f6e3ed0024cdd3d95f89478de7cf04d270726602642870f5fde6697fd2cd29d77da3f8ba4c44844448a3ca398a859b3a661b1580c8bc562b8b8b8182e2e2eb65f9f3871c2f8f5d75f6dbfcfee97f3d5b76fdf5c63ce9f3fdfa857af9ee1e1e161d4ad5bd778ebadb71cce7dfefc79a37ffffe869f9f9fe1eded6db46bd7ce888a8a72d877d7ae5dc67df7dd677879791955aa54319e7bee39232929e9aaf71515156500571d4fa458dab7cf30c030962f370cc3307ebbf09be1f5869711ba29d4c981956c494986f1f9e7863178b061dc79a7f947e4ee6e181d3b1ac6cc9986f1d34f8661b53a3b4a1191924bef1bf387c530ae78f8460a95ecf2905151512a2b2e25c7134f4064a4b984e1ea4a9f4ffbf0e5d12f393aec28e53cca5dfffb254f64af22ad5f6fae22edd8a155241191c24cef1bf347b1d9922722c5c42fbfc0ca95e661b5aeaeec3bbd8fc5df2fe6bdaeef29592a00c9c9f615ed7efd153c3ccc8a76fffdaf99240504a848838888941c4a9844a4709931037c7de1e9a7310c83511b47d1b07243fa35ede7ecc88aa5ec8a76399f454a4f875ab5cc4363bb7481b66db58a2422222597122611293ce2e260e142183b16bcbc58757025bb4eee6243ef0d9472d17f5779253919b66ebd9c241d3f7e7915e9cd37cd44a96e5dad2289888880122611294c66cf061717183c98b4cc34423785f270dd87e9585b55246fc5b55691ba76bdfc2c52e9d2ce8e544444a4f051c22422854372b29930f5ef0fbebebcfd7518272f9c645daf75ce8eac48bada2a52dbb666c5f62e5db48a242222722394308948e1b060015cb8002347722ef91c93764e62508b41d4af54dfd991150986013ffd743941dab1e3f22a52b76e979f45d22a928888c8cd51c22422ce979101d3a7c3934f42cd9a8c5f37080b16c6b719efecc80ab5ec55a4f5ebe1cb2fb58a242222921f94308988f3ad5801274fc29831fc70ee07e645cd63ea4353f12bede7ecc80a95abad22d5aead5524111191fca28449449ccb30cce5904e9d301a37e6f9a59da955b116435b0e75766485425292fdb348274e80a7a799184d9d7a791549444444f28712261171ae4d9be0bbef60c60cbe38fa051b7fd9c8a74f7c8abbabbbb323738aec55a4f5ebcd0469e7cecbab48ddbb9b25bfdbb4d12a928888484151c22422ce151606cd9a91f1406b9e9ffb0fdad66ccbbfeefa97b3a32a505a4512111129bc94308988f34445c1962db06c19f3a2e7f373fccf7cfcf8c7588a799502c38043872e2748d9ab4875eac0238f5c7e16c9cbcbd9918a888888122611719ea953a1562dce7769c7f8f0fa3c1df8344dfc9b383baa7c919464e686d949d2c993e62a52bb76306d9a9924d5a9e3ec28454444e44a4a9844c4397ef9c5ac8ef7ce3bbcf1cd7f49cb4c6352fb49ce8e2acf5cb98ab46387593dbd4e1df8d7bfb48a242222525428611211e79831037c7cf8e591fb79e78311bcdae655fccbfa3b3baa5b72ad55a4e9d3b58a242222521429611291821717070b17c2d8b18cf97a3c55ca5461d4bda39c1dd54d330c3878d0fe59a48c0cb340c3a38f9a09529b365a4512111129ca94308948c19b3d1b5c5cd8d5ad319fae7995258f2da1b45bd1a8937df1a259d16efd7af8f2cbcbab48eddb9b8b665dba9825c0454444a47850c22422052b391966cfc6daaf1fc3f64ea065f59684340a71765457a55524111191924d09938814ac850be1c2055677be9dfdfbf6f3f5335fe36271717654762e5eb47f16e9b7dfcc84a85d3bad2289888894344a9844a4e06466c2f4e964f4ecc1b04333086e104cabdb5a393b2ac04c8a962d33b7daedda65ae220504c0e38f9b09d2030f6815494444a42452c224220567c50a387182f9e33a92703681371f7cd3d9110170ee1cb46c09172e681549444444ec296112918261181016466afb07187d6e0923ef1d49cd0a359d1d15562b3cfdb4f9f5d831a85ad5d911898888486152b81e1c1091e26bf366888961e6fd6e94f528cb4bad5f72764400bcfdb6f99cd2a2454a964444442437ad308948c178f34d921bd5631c5b98d76e1ee53cca393b22a2a32134149e7f1e3a77767634222222521869854944f25f54146cd9c29badac34aad288679a3ce3ec88484a82901068dc18264f7676342222225258158b8429393999f1e3c7d3b973677c7c7c70717161d1a245b9faedddbb97c18307d3ac5933dcdcdc7071b9f6ed2f58b080faf5ebe3e5e545404000b367cf76d82f31319181030752a95225ca942943fbf6edd9bf7fbfc3bebb77efa675ebd6787b7be3efefcff0e1c3494e4ebef99b16294aa64e25a94615265739cc8c4e337075717576440c1b06a74f434404b8bb3b3b1a11111129ac8a45c2141717c7c48913f9f9e79f090c0c04c062b1e4eab77efd7a162c5880abab2bb56bd776d827dbdcb973193060008d1a3562f6ecd9dc7befbd0c1b368cb0b030bb7e56ab95ae5dbb12111161bb7eeedc39dab66dcbd1a347edfac6c4c4d0a14307d2d2d298397326fdfbf767debc79f4ecd9330f7e0a2285d4b163182b56f0e63d1974a9d78d076b3de8ec888888800f3e803973cc036845444444aeca28062e5dba649c3d7bd6300cc3888c8c342c168bb168d1a25cfdce9e3d6ba4a5a51986611843860c312c168bc3f15252520c5f5f5fa37bf7ee76edbd7bf736ca9429639c3f7fded6b66cd932c362b118ab56adb2b5c5c5c519152b56347af5ea65f7fd5dba7431aa57af6e5cbc78d1d6f6fefbef1b168bc5d8b871a3c358a2a2a20cc0888a8abad68f40a4f01a32c4482eef6d947dd9d5f829ee27674763fcf28b61942b6718bd7a1986d5eaec68444444f28ede37e68f62b1c2e4eeee4ee5ca9501300ce3aafd2a57ae8c8787c775c7dbb66d1b0909090c1e3cd8ae7dc89021242727b36edd3a5bdbca952ba95ab52a8f3ffeb8adcdcfcf8fe0e0603efbec3332323200f8f3cf3fd9bc7933bd7bf7a64c9932b6be7dfaf4a14c99322c5fbefcc66e56a428898bc358b890992d3278bad560eef2bbcba9e1646440af5ee0eb0be1e1708d456611111111a0986cc9cb6bd9cf1f356fdedcaebd69d3a6b8b8b810131363d7b769d3a6b9c668d1a2052929291c3e7c188003070e909999996b4c373737020303affacc934891f6eebba45b335878af17e3db8c7776348c1f6fd69f88888072ce2fd2272222224580ca8a3b101b1b8babab2b7e7e7e76edeeeeeef8fafa72e6cc19bbbe6ddbb6cd3586bfbf3f0067ce9ca1418306c4c6c6dab5e754b56a5576edda75cd98468c1841850a15ecda424242080909b9a17b122970c9c964bef316f3023379eee1d7f02dedebd470b66c81fffe17a64c817ffed3a9a1888888dcb2888808222222ecda1213139d144df1a684c981d4d454dcaf5236cbc3c383d4d454dbefd3d2d21c6ef3f3f4f4b48d95f3ebd5fae61cd39159b366395cc91229ac8c850bb1245e6075e79a6c6831f8fadf908fe2e2e0dfff860e1d60cc18a78622222292271c7d701e1d1d4db366cd9c1451f1a584c9012f2f2fd2d3d31d5e4b4b4bc3cbcbcbaeefa54b971cf6cbbe9ef3ebd5fa962e5dfa96e31629343233497d7312ff6b6030e2c959b8bb3aaf6eb761c033cf98cf2f7df4115ce73401111111113b7aebe080bfbf3f595959c4c7c7dbb5a7a7a793909040b56ad5ecfae6dca2972d7b0b5e76dfecad78d9ed57f6cd39a6485197b9ec134a9f3ecbf6a0e63c72d7234e8d65f66c58bb16162d02073b6245444444ae490993034d9a340160dfbe7d76ed91919158ad56db594f00818181444747e7aaceb767cf1ebcbdbd09080800a061c386942a552ad798e9e9e9c4c4c4d88d2952a41906e75f7f910db561f0c0f9d73cef2cbf7df71d8c1e0d2346c0c30f3b2d0c11111129c2943039d0be7d7b7c7c7c080f0fb76b0f0f0fc7dbdb9bae5dbbdada828282387bf62cab57afb6b5c5c7c7b362c50aba77ef8e9b9b1b00e5cb97e7c1071f64c99225242525d9fa2e5ebc98e4e4641d5e2bc5c6c5759f52e9f0690efca70b81559df7414072323cf924dc7db759ec41444444e4ef2836cf30cd9e3d9bc4c444dbf6b8356bd670f2e44900860d1b46b972e53871e2048b172f06ccd52280499326611806356bd6a477efde80598461e2c4890c193284e0e0603a76ecc8ce9d3b59ba742993274fb6ab56171414c43df7dc43dfbe7d3978f020bebebecc993307c330983061825d8c93264da255ab56b469d38601030670ead42966cc9841a74e9de8d8b163beff8c440ac29957479252cd85de231638358e1123e0e449888e861b387e4d444444c431e79e9b9b776ad6ac69582c16c362b1182e2e2e868b8b8bedd7274e9c300cc330b66ddbe6b08fc56231dab56b976bccf9f3e71bf5ead5333c3c3c8cba75eb1a6fbdf596c3b9cf9f3f6ff4efdfdff0f3f333bcbdbd8d76edda5df584e55dbb7619f7dd779fe1e5e56554a952c578eeb9e78ca4a4a4abde974e6c96a2e4c4964f0d038c55e39f706a1ccb96190618c682054e0d434444a440e97d63feb018c6150fdf48a1925d1e322a2a4a65c5a5d0db715f0d6afef43b954e9dc7cbabac5362387e1c0203a17367f3805a273e4225222252a0f4be317fe8192611c913dfecf898fbbe39cdb9fffbb7d392a5cc4ce8d50b2a5684f7de53b224222222b7aed83cc32422ce9365cde2f8f8e1d4f72e45b3b1b39d16c78409b0772fecdc09391e3514111111f9dbb4c22422b76cd9f6d9fcebeb782e0ef80f166f6fa7c4b07d3b4c9a04afbf0ef7deeb9410444444a41852c22422b7e4e2a58b9c79f3655c2daedc36d639f5bbfff8037af786b66de185179c128288888814534a9844e496ccd83c91a7772571e9e97f839f5f81cf6f18d0af1fa4a5c1e2c5e0ea5ae0218888884831a6679844e46f3b79e12489efcda4629a05d797c63b2586f070f8ec3358b306aa57774a08222222528c69854944feb6711b5f60e4d756ac3d83a066cd029fffc00118350a9e7b0eba772ff0e9454444a404d00a9388fc2d7b4eed2163f927dc7e1e78e1a5029f3f25059e7c12eeba0bc2c20a7c7a1111112921943089c84d330c83915f8e60c11e2f8c87eec3d2a44981c7306a14fcfa2b444682a767814f2f2222222584122611b969cb7f5c4ee99ddf52ff376061c197a55bb50ae6ce8579f3e0eebb0b7c7a1111112941943089c84d49cb4ce385cd2ff0e9fe4ad0a40674e850a0f39f3c09fdfb435090f955444444243f296112919b32f39b9954fef9144d0e6441c4db60b114d8dc9999f0d45350ae9cb9ba5480538b88884809a58449446ed8ef49bf3379d764b61faa0d776698cb3c0568d224d8bd1b76ec808a150b746a11111129a1943089c80d7b65db2bd44e74a1e9cea3f0f6db50aae0fe0bd9b9135e7f1d5e7b0deebbafc0a615111191124e099388dc90ef7eff8e05d10bd8ff6b6b2c150f42dfbe0536774282b915af756b183bb6c0a615111111d1c1b522727d8661f0fcc6e769e1518bc66b23cd93624b972ea0b961c000484e86a54bc1d5b540a61511111101943089c80d587b782d5b7eddc247a75b62011832a4c0e69e370f56af86050ba0468d029b564444440450c22422d7919e95cee84da379b85a5b02223642bf7ee0e7572073fff8238c18018306c1a38f16c8942222222276943089c835bd17f91e47fe38c2bc3feec572fe3c8c1a5520f3a6a6c2934f42edda307d7a814c29222222928b8a3e88c85525a426f0daf6d718f08fbe541ff5090407c39d7716c8dca347c3d1a3b06f1f787915c89422222222b928611291ab7afdabd7c9b066f0e68596f0eb4258b9b240e6fddfff60ce1c080f87860d0b644a1111111187b4254f441cfa39fe67deddf72e63ef7b890a6fcd85071f84a64df37dde53a7ccc7a41e7b0c9e7d36dfa7131125949e4b00002000494441541111b926ad30898843a19b43a95eb63acfa706c2fe71b07163becf999505bd7b9b15cbdf7f1f2c967c9f52444444e49a943089482e5b7fddca9a9fd7f0498f4f701f350b9a34315798f2d99429b073276cdb063e3ef93e9d888888c875296112113b59d62c466e18c9bd35ee2538bd2e6cda041111f9bedcf3f5d7f0da6bf0ca2bf0c003f93a95888888c80d2b16cf30252727337efc783a77ee8c8f8f0f2e2e2e2c5ab4c861df43870ed1b97367ca962d8bafaf2f7dfaf4213e3ede61df050b1650bf7e7dbcbcbc08080860f6ecd90efb2526263270e0402a55aa4499326568dfbe3dfbf7ef77d877f7eeddb46edd1a6f6f6ffcfdfd193e7c38c9c9c97fefc645f2c107311ff0fdd9ef99d969269669d3a0664d080acad7391313a1572fb8f75e78f9e57c9d4a444444e4a6148b84292e2e8e891327f2f3cf3f1318180880c5c1a7e1a74e9de281071ee0d8b1634c993285d1a347b36edd3a1e7ae821323232ecface9d3b97010306d0a8512366cf9ecdbdf7decbb061c3080b0bb3eb67b55ae9dab52b111111b6ebe7ce9da36ddbb61c3d7ad4ae6f4c4c0c1d3a74202d2d8d993367d2bf7f7fe6cd9b47cf9e3df3f82722f2f75cbc749197b7be4caf46bdf867466558be1c9e7f1e4ae5df62b461c0c081f0e79fb07469be4e2522222272f38c62e0d2a54bc6d9b3670dc3308cc8c848c362b1188b162dcad56fd0a04186b7b7b7f1db6fbfd9da366fde6c582c1663debc79b6b6949414c3d7d7d7e8debdbbddf7f7eedddb2853a68c71fefc795bdbb265cb0c8bc562ac5ab5cad61617176754ac58d1e8d5ab97ddf777e9d2c5a85ebdba71f1e2455bdbfbefbf6f582c1663e3c68d0eef2d2a2aca008ca8a8a81bf95188dc92b15bc61a9e6f781a27124f18c673cf1986afaf612425e5eb9cf3e71b0618c68a15f93a8d888848b1a7f78df9a358ac30b9bbbb53b97265000cc3b86abf55ab56d1ad5b376ad4a8616bebd0a1030101012c5fbedcd6b66ddb36121212183c78b0ddf70f193284e4e464d6ad5b676b5bb9722555ab56e5f1c71fb7b5f9f9f9111c1ccc679f7d665bb9faf3cf3fd9bc7933bd7bf7a64c9932b6be7dfaf4a14c993276f38b38c389c4134cdf3d9de7ef7d9edb33fe2a53377428787be7db9c870ec1b061e60a533eeffa13111111f95b8a45c274234e9f3e4d5c5c1ccd9b37cf75ad458b1676cf1c65fffacabe4d9b36c5c5c585989818bbbe4d1d9c4dd3a2450b525252387cf83000070e1c20333333d7986e6e6e0406065ef599279182f2e29617a9e85591175bbf689e1a0b306448becd9796064f3e693e22357366be4d23222222724b4accd302b1b1b100f8fbfbe7bae6efef4f424202191919b8b9b9111b1b8babab2b7e7e7e76fddcddddf1f5f5e5cc993376e3b66ddbd6e1980067ce9ca1418306d79cbf6ad5aaecdab5eb9af18f1831820a152ad8b585848410121272cdef13b911dffcf60d9ffcf0090b1e5940994c1778e71d78e619a85429dfe60c0d859f7f86bd7bcd7397444444e4c645444410111161d7969898e8a4688ab7129330a5a6a602e0e1e191eb9aa7a7a7ad8f9b9b1ba9a9a9b8bbbb3b1cc7c3c3c33616405a5ada75c7bc91f9738ee9c8ac59b31cae6489dc2ac33018b96124815503f9cf3ffe03e1ef4142028c1a956f737efeb99993cd9e0d8d1be7db34222222c596a30fcea3a3a369d6ac9993222abe4a4cc2e4e5e505c0a54b97725d4b4b4bb3ebe3e5e5457a7abac371d2d2d26cfdb2fbdee898d79abfb43e621727f9e4874fd8737a0f5bfb6cc5d56ac0f4e9101c0cb56ae5cb7c67ce40dfbef0c82370c5638222222222854e897986297b2b5cf6d6b89c626363f1f5f5c5cdcdcdd6372b2b2bd7f94ce9e9e924242450ad5a35bb71736ed1cb392660eb7bbdf9738e2952505233527961f30bfcebae7fd1eece76b06a15fcfa2b8c19932ff3656541efdee0e9090b17e6fb59b822222222b7acc4244cd5ab57a752a54aecdbb72fd7b5bd7bf7dace6f0268d2a40940aebe91919158ad56bbbe818181444747e7aaceb767cf1ebcbdbd09080800a061c386942a552ad798e9e9e9c4c4c4d88d295250667c3383df937e67ea4353cd0391c2c2e0c107219fb67f8685c1f6edb06409f8fae6cb142222222279aac4244c003d7af460eddab59c3a75cad6b665cb168e1c396277786cfbf6edf1f1f1213c3cdceefbc3c3c3f1f6f6a66bd7aeb6b6a0a020ce9e3dcbead5ab6d6df1f1f1ac58b182eeddbbdb56adca972fcf830f3ec892254b484a4ab2f55dbc7831c9c9c93abc560adcef49bf3365d71486b61c4a5ddfbab0752b44479bd518f2c1b7dfc22bafc0d8b1e0a04e8a88888848a1546c9e619a3d7b36898989b6ed716bd6ace1e4c993000c1b368c72e5ca3176ec5856ac5841bb76ed183e7c38172f5e64ead4a9346edc98be7dfbdac6f2f4f464e2c4890c193284e0e0603a76ecc8ce9d3b59ba742993274fb6ab56171414c43df7dc43dfbe7d3978f020bebebecc993307c330983061825d8c93264da255ab56b469d38601030670ead42966cc9841a74e9de8d8b16301fc94442e7b79ebcb7894f2e095075e311bc2c22030d05c61ca63172e404808b46c09e3c7e7f9f022222222f9c7b9e7e6e69d9a356b1a168bc5b0582c868b8b8be1e2e262fbf58913276cfd7efcf147a353a74e86b7b7b7e1e3e363fcfbdfff36ce9d3be770ccf9f3e71bf5ead5333c3c3c8cba75eb1a6fbdf596c37ee7cf9f37faf7ef6ff8f9f919dedede46bb76edae7ac2f2ae5dbb8cfbeebbcff0f2f232aa54a9623cf7dc73465252d255ef4b27364b7ed81fbbdfb0bc6631defef6edbf1af61b0618c6c71fe7f95c56ab613cf18461942b6718bffe9ae7c38b8888c85ff4be317f580ce38a876fa450c92e0f191515a5b2e292270cc3a0c3471d884d8ae5fbfffb1e37573778ea29f8fa6b387a144ae5edc2f3071f98473a7df2093cf1449e0e2d22222239e87d63fe28365bf244e4c67c7ef873b61ddfc6da90b566b274fc382c5b063367e679b2f4f3cf307428f4eba764494444448aa61255f441a4a44bcf4a67f4c6d13c54eb211eaefbb0d938630654a8602e03e5a14b97cce7966ebb0dde7a2b4f871611111129305a61122941e6ec9bc32fe77f6155f02a2c160bc4c7c3fbef9b95f1bcbdf374ae975e821f7f843d7bf27c681111119102a38449a484f823e50f267c3581fe4dfbd3a84a23b371ce1cf3eb9021793ad7faf5e60ebfb7de320bef898888881455da922752424cf86a0259d62c5e6ffbbad9909202efbc636ec5ab5429cfe6898d85a79f86ae5de1b9e7f26c5811111111a750c2245202fc14ff1373f6cd61dcfde3a852a68ad9f8e187909000a346e5d93c562bf4e963d68ef8e003b058f26c6811111111a7d0963c911260cca631dc56fe3686df33dc6cc8cc84e9d3a1674fa8552bcfe699360db66c814d9bf274d14a444444c46994308914739b8f6d66ede1b52c0b5a8667294fb371f56a38760c962fcfb379f6ee8571e3e08517a043873c1b56444444c4a9b4254fa418cbb266316ac328eebbed3e7adeddd36c340c080b33b39a66cdf2649e3fff344b88376d0aafbf9e27438a888888140a5a611229c616ee5fc8817307d8db7faf59461c60eb56888a820d1bf2640ec3804183202ecedc8ae7e69627c38a888888140a4a98448aa93f2ffdc9cbdb5ea677e3deb4a8dee2f285b030b3d6f7430fe5c93c8b17c3c71f9baf3c7c1c4a444444a45050c224524c4dd935858b972e32b9fde4cb8d3131b071a399dde44109bb2347cc239c9e7edadc922722222252dce819269162e878e271667e3393d1ad46735bf9db2e5f983a15eeb8c3ac8e778bd2d3cd24c9dfdf3cce49444444a438d20a934831f4e2e617f1f1f221f4bed0cb8dc78fc3b2653073a67950d22d1a370ebeff1ebefd16ca94b9e5e1444444440a25254c22c5cceedf76b3ecc7657cf0af0f28e39e2393993913ca9787679eb9e539366c30cf5c9a31c3ac8c27222222525c694b9e48316235ac8cdc309226559bd0e71f7d2e5ff8e30f78ff7d183a14bcbd6f698eb367a14f1fe8dc19860fbfc580454444440a39ad30891423110722d87b7a2fdbffb31d174b8ecf43e6cc01abd54c986e81d50afff98f592fe2c30fc1451fb98888884831a78449a49848c948e1c52d2ff258bdc76853b3cde50ba9a9f0f6dbe656bc4a956e698e9933cded781b3640952ab718b08888884811a0cf87458a8919dfcce06cd259c21e0ab3bff0c107909000a346ddd2f89191f0d24b30660c74ec784b438988888814194a98448a813317cff0df5dffe5b97f3e471d9f3a972f6466c2f4e9101404b56bffedf12f5e344b88ffe31ff0c61b7910b08888884811a12d7922c5c0cb5b5fc6b39427af3cf08afd85d5abe1d83158befc96c67fee39f8fd77f8e20b7077bfa5a1444444448a14254c22455c746c341fc67cc83b5ddea1826785cb170c03c2c2a0430768d6ec6f8fbf74292c5a048b17439d3ad7ef2f222222529c28611229c20cc3e0f98dcf53cfaf1ecf367fd6fee2b66d1015655668f89b7ef905060d827fff1b7af7bec560454444448a20254c2245d8673f7fc6f6e3db59df6b3da55caef8e71c16663e74f4d0437f6becf474f3b9a52a55e0dd77f3205811111191224809934811959e95ce984d63e858bb239deb74b6bff8dd77e6cad2d2a5e6a1497fc3abafc2fefdb07b37942d9b07018b888888144125ae4a5e5454149d3b77a67cf9f2942b578e4e9d3af1dd77df39ec7be8d0213a77ee4cd9b265f1f5f5a54f9f3ec4c7c73becbb60c102ead7af8f979717010101cc9e3ddb61bfc4c444060e1c48a54a952853a60ceddbb767fffefd79767f5272ccde3b9b63e78f31bde3742c57264553a7c21d7740cf9e7f6bec4d9be0cd3761f26468d1220f821511111129a24a54c2141d1d4debd6ad397efc38afbdf61aafbefa2a478e1ca14d9b361c3e7cd8aeefa953a778e081073876ec1853a64c61f4e8d1ac5bb78e871e7a888c8c0cbbbe73e7ce65c08001346ad488d9b36773efbdf7326cd830c2c2eccfc3b15aad74edda95888808dbf573e7ced1b66d5b8e1e3d9aeff72fc5477c4a3caf7ff53a039b0da461e586f6174f9c804f3e31cf5d7273bbe9b1cf9d833e7dcc9d7ccf3f9f47018b88888814554609f2f0c30f1bbebebe46424282ad2d3636d6285bb6acd1a3470fbbbe83060d32bcbdbd8ddf7efbcdd6b679f366c362b118f3e6cdb3b5a5a4a418bebebe46f7eeddedbebf77efde469932658cf3e7cfdbda962d5b66582c1663d5aa55b6b6b8b838a362c58a46af5ebd1cc61c15156500465454d4dfbb69299686ae1f6a949b52ce389b7436f7c5e1c30dc3c7c73092926e7adcac2cc3e8d2c5302a55328cd8d83c08544444440a8cde37e68f12b5c2b473e74e1e7cf0412a56ac686bab5ab52a0f3cf0006bd7ae253939d9d6be6ad52aba75eb468d1a356c6d1d3a7420202080e539ceb4d9b66d1b0909090c1e3cd86eae214386909c9cccba75eb6c6d2b57aea46ad5aa3cfef8e3b6363f3f3f828383f9ecb3cf72ad5c89387228ee10e1fbc21977ff382a7b57b6bff8c71f307f3e0c1902dede373df6db6f9b672d2d5a0455abe651c0222222224558894a98d2d3d3f1f2f2cad55eba7469d2d3d3f9e1871f00387dfa34717171346fde3c57df162d5ad83d7394fdeb2bfb366dda14171717626262ecfa366ddad4e198292929b9b6058a38327ad3686e2f7f3bc3ff393cf7c53973c06a85a1436f7adcfdfb2134d4dcc9d7a54b1e042a222222520c94a82a7977dd7517df7cf30d56ab15171733574c4f4f67cf9e3d009c39730680d8d85800fcfdfd738de1efef4f424202191919b8b9b9111b1b8babab2b7e7e7e76fddcddddf1f5f5b58d993d6edbb66d1d8e993d7f83060d1cc63e62c4082a54a860d7161212424848c88ddcba14131b7fd9c8fa23eb59d173051ea53cec2fa6a69a4b44cf3c03952b3b1ee02a9292e0c927a15123b3d083888888146e111111444444d8b52526263a299ae2ad44254c83070f66d0a041f4ebd78fd0d050b2b2b278e38d37f8fdf7df01484d4db5fbeae1e1916b0c4f4f4f5b1f37373752535371777777389f8787876d2c80b4b4b4eb8e7935b366cd72b83a252547a63593e7373e4febdb5bd3a37e8fdc1d3efc101212cc25a29b347c389c3e0dd1d1e0e0afa888888814328e3e388f8e8ea659b3664e8aa8f82a515bf29e7df659c68e1dcbc71f7f4c83060d68dcb831bffefa2ba1a1a10094295306c0b66defd2a54bb9c6484b4bb3ebe3e5e5457a7abac3f9d2d2d2ecb6007a7979ddd098228e2c885ec00fe77e6046c719b9cb886765c1b469101404b56bdfd4b89f7c020b179a87d30604e461c022222222c540894a9800de78e30dce9e3dcbae5dbb3870e0007bf6ec212b2b0b8080bfde2d666f91cbde9a97536c6c2cbebebeb8fd55aed9dfdf9facacac5ce733a5a7a793909040b56ad56c6dfefefe765bf4728e09d8f515c9e942da055ed9f60aff6efc6f5a54777030d2ead570ec188c197353e3fefa2b3cfb2c848498a5c445444444c45e894b98002a54a840ab56ad6ccf0b6ddebc99db6ebb8d7af5ea0150bd7a752a55aac4be7dfb727defdebd7b090c0cb4fdbe49932600b9fa46464662b55aedfa060606121d1d8d6118767df7ecd983b7b7b72d6113b9d2945d53484a4f627207070f18198679ca6cfbf6e0a050c9d5646440af5ee0eb0be1e170e5a2958888888894d08429a765cb96111919c9881123ecda7bf4e8c1dab56b3975ea94ad6dcb962d1c3972849e3d7bdadadab76f8f8f8f0fe1e1e176df1f1e1e8eb7b7375dbb76b5b505050571f6ec5956af5e6d6b8b8f8f67c58a1574efdeddb66a2592d3afe77f65e6b73309bd2f941ae56ae4eeb07d3b44459925ee6ec26baf416424444440f9f27912aa88888848b153a28a3eecd8b183d75f7f9d4e9d3ae1e3e3c3b7df7ecb871f7e48972e5d183edcbe44f3d8b16359b16205eddab563f8f0e15cbc7891a953a7d2b87163faf6ed6bebe7e9e9c9c4891319326408c1c1c174ecd8919d3b77b274e952264f9e6c57d92e2828887beeb987be7dfb72f0e0417c7d7d9933670e86613061c28402fb3948d1f2c2e617f02bedc7985657d96e1716068d1b43c78e373ce6d6ad30658a5911ef9fffcca340454444448aa1129530d5a8518352a54a3175ea542e5ebc48ad5ab598346912a3468db29519cfd9f7abafbe62d4a851bcf8e28b787878d0ad5b37a64f9f9e6b2568d0a041b8b9b9317dfa74d6ac59c3edb7dfceac59b318366c985d3f171717d6af5fcf98316378fbedb7494d4da565cb967cf4d147d4ad5b37dfef5f8a9e5d2777b1e2e00a3efcd78778bb3b3888f6bbefe0cb2f61c9921bde53171f0fbd7b9b3bf86e72514a444444a4c4b118573e5023854a7679c8a8a82895152f61ac86957fbeff4f0cc360ef80bdb8581ceca0eddd1b76ee84a347e106b6741a06fceb5ff0cd3766aea53a23222222c587de37e68f12b5c22452947c7ce06322cf44b2e3e91d8e93a51327cc9ae03366dc50b20466e9f0cf3f87b56b952c89888888dc88125ff441a4304ac948e1a52d2fd1a37e0feebfe37ec79d66ce34ab35f4eb7743637ef71d8c1e6d1e529ba31689888888885c831226914268daee699c4b3ec79b0fbee9b8c31f7fc0fcf9306408783b78b6e90ac9c9f0e49350bfbe59815c444444446e8cb6e4891432a7ff3ccd9b5fbfc9b07f0ea3b64f6dc79dc2c3c16a85a1436f68cc9123e1e449b3fab887471e062b22222252cc29611229645edef632a5dd4af3f2fd2f3bee909a0a6fbf0d7dfb42e5cad71d6fc50a7331eafdf7e1afb39945444444e4062961122944a263a35914b388771f7e97f29e57394d76d122734bdea851d71defc4091830008283e19967f23858111111911240cf3089141286613072c348ea57aacf8066031c77caca8269d3a0470fa853e79ae3656642af5e50a102cc9d7bc3c73489888888480e5a611229243efde953769cd8c1174f7d412997abfcd35cbd1a7ef9052222ae3bdeebafc39e3db06387993489888888c8cd53c22452085ccabc44e8a6503ad7e94ce73a9d1d77320cb3c45dbb76d0a2c535c7dbbe1dde7803264e8456adf23e5e11111191924209934821307bef6c8e271e674dc89aab77dabedd2c73f7e597d71ceb8f3fa0776f68d3065e7c316fe3141111112969f40c938893c525c73171c7449e6dfe2c7757bafbea1dc3c2a07163e8d8f1aa5d0c03faf7370be92d5902aeaef910b08888884809a2152611277bedabd7ccaf6d5ebb7aa7efbf375796962cb966f586f7de83fffd0f3efb0caa57cfdb38454444444a22254c4544878f3ad0e440131a556944a3cae6ab41e50694712fe3ecd0e4161c8c3bc8dcc8b9fcf7c1ff52c9bbd2d53b4e9d0ab7df6ed607bf8a0307cc036a870e85471ec98760454444444a20254c45c413773f41bc573c5f1efd92d97b676335ac00dc59e14ebb24aa519546d4f5a98b9bab9b9323961b317ae3686a56a8c9732d9fbb7aa71327ccaa78d3a7839be33fd79414080981800033b71211111191bca184a98818d87c204d9b360520352395837107f9e1dc0f1c38778003e70eb070ff4262936201707775a79e5f3dbb24aa51e546d42857038b0ee32934361cddc01747bf6055f02a3c4a795cbde3ac5950ae1cf4eb77d52ecf3f0fc78e416424787ae643b022222222259412a622c8cbcd8b66d59ad1ac5a33bbf63f52feb04ba20e9c3dc09a9fd77031fd2200e53dcad3b07243bb15a986951b52d1aba2336ea344cbb466326ae3281eb8e3011eabf7d8d53b2624c0fcf9e65ebb328eb75fae5e6d3ebb34772edc7d8d9a112222222272f394301523bea57d6953b30d6d6ab6b1b51986c1890b27cc44eaac9948ed3ab98bf7a3df27d39a09408d7235cc442ac78a547dbffad75ef5905b323f6a3e87e20eb16fc0be6baffacd99039999f09ce32d7b274f9a0b4f3d7ac08001f914ac8888884809a684a998b3582cd4ac50939a156ad22da09bad3d3d2b9d9fe37fb65b915afee372a6ee361f8071b5b852d7b76eae6d7d7756bc13178baad1df8a0b69177875fbabf4f9479f5cab84765253e1edb7a16f5fa85c39d7e5cc4cf3bca5b265cd4528edb614111111c97b4a984a287757773309aad28810426ced7f5efa931fcefd7039913a7b80597b6691909a004069b7d234a8d42057a189cadeb9dfd08b6393764e2225238549ed275dbbe3a245e629b4cf3fef789c49f0f5d7f0d5575051bb2a45444444f2851226b153cea31cad6e6b45abdb5ad9da0cc3203629d66e5b5fccef317c7ce063d232d300a8ec5d39d7b6be06951ae0edeeedac5b29948e9d3fc65b7bde626cebb1542f778d8392b2b260da3473af5d9d3ab92eefda05afbf0ee3c743ebd6f918b08888884809a78449aecb62b150ad6c35aa95ad46c7da1d6ded59d62c8e261cb5dbd6b7fec87adedef3360606162cdc59f14ebb2d7d8d2a37a2ae6f5d4ab994ccbf7aa19b42a954ba12a35b8dbe76c74f3f855f7e31cb895fe1fc79e8d5cb4c94c68dcba740454444440450c224b7c0d5c595bbfceee22ebfbbe871770f5b7b4a460a87e20ed955eb7b3ffa7d7e4ffa1d30b703d6f7ab9f6b5b5ff5b2d58b75d9f39d2776b2ead02a3e7af4a36bafbc1906848541bb76d0a245ae4b03064052122c5902aeaef91cb48888884809a78449f25c69b7d20ecb9ec7a7c4db6deb3b70ee00fffbe97f24a5270150c1b342ae6d7d0d2b37a482670567dc469eb21a56466e1849f36acd79aaf153d7eefcd557b06f1f7cf145ae4bf3e7c3aa556629f1db6ecba76045444444c44609931418bfd27eb4add996b635dbdadaac869593174eda25513b4eec607ef47cbbb2e7576eebabe757af48953d5ff2fd12a262a3d8d977e7f5ab0c868541a346d0a9935df38f3fc2f0e1f07fff078f5de3e82611111111c93b4a98c4a95c2c2eb6b2e7ddefea6e6bcf2e7b9e735bdf273f7c42d88530c02c7b1ee01b906b5b5fcd0a350b5dd9f3e4f4645edaf212417707d1faf6eb5468f8fe7b736569f162bb3ae1a9a9101202b56bc38c19f91cb088888888d894b88429323292891327b26fdf3e2e5cb8c0edb7df4eaf5ebd183d7a345e5e5eb67e870e1d62e4c8917cfdf5d7b8bbbbd3b56b5766cc98819f9f5fae31172c58c0b469d3387efc38b7dd761bc3860d63e8d0a1b9fa252626121a1acaa79f7e4a6a6a2a2d5bb664faf4e93469d2245fefb928ca59f63ca70b6917f831ee47bb15a94dbf6ce27cda7900bcddbc6950b941aef3a32a795772c66d00306df734e253e279f3c1376fa0f33473afdd134fd8358f1903478e983bf572fc3515111111917c56a212a603070ed0ba756baa55abc6881123f0f1f161f7eedd8c1f3f9ea8a828fef7bfff0170ead4291e78e0012a56acc8942953b878f122d3a64de3c08103ecddbb17373737db9873e7ce65d0a041040505317af46876ecd8c1b061c3484949213434d4d6cf6ab5d2b56b57befffe7b424343f1f5f565ce9c39b46ddb96a8a828ea38281d2db995f72cefb0ecf9998b67ecaaf545c746b3e4fb255ccaba049865cfafdcd67777a5bbf3bdecf9e93f4f13b63b8c11f78ca056c55ad7ee7cf2a459156fea54c8f177ecb3cfe0dd7761ce1c68d8305fc315111111912b94a884e9934f3e213d3d9d75ebd651bf7e7d00faf7ef8fd56ae5a38f3ee2c2850b942f5f9ec99327939a9acafefdfba951a306002d5bb6e4a1871ee2c30f3f64c0800100a4a6a6326edc38ba75ebc6f2e5cb01e8d7af1f56ab958913273270e0402a54300b16ac5cb9926fbef986952b57f2f8e38f03101c1c4c404000e3c78f67e9d2a505fde328362c160bd5cb55a77ab9ea74aa73f9b99f4c6b26bf24fc62b7ad6fede1b5bcf5ed5bb6b2e7b52ad6cab5adaf8e4f9d3c2b7b3e76eb58bcddbc19db7aecf53bcf9c0965cb42fffeb6a653a7e09967e0d147cd679744444444a46095a884297bcb5de5ca95eddaab56ad8aabab2beeeeee00ac5ab58a6eddbad99225800e1d3a101010c0f2e5cb6d09d3b66ddb48484860f0e0c176e30d193284a54b97b26edd3a9e7acaac88b672e54aaa56ad6a4b9600fcfcfc080e0e66c99225646464d8ad5cc9ad2be552ca56f63ce8ee205b7b727a3287e20fd96deb9b17358fb3c96701f070f5a07ea5fab9aaf5dd6cd9f3c833917cf4dd4784770da7bc67f96b774e48304be08d1c0965ca00e6d9b5bd7b43e9d2b06081dd234d2222222252404a54c2f4cc33cff0eebbefd2af5f3f264c9860db92f7de7bef316cd830bcbcbc387dfa34717171346fde3cd7f7b768d1822f72947adebf7f3f40aebe4d9b36c5c5c5859898185bc2b47fff7e9a366dea70cc79f3e671f8f0611a34689097b72b57e1edee4df36acd695ecdfecf2d2e39ce6e5bdf81b307587d6835c919c90054f4ac68963dcfb122d5b0724387c99061188cdc309206951ad0bf69ff5cd773090f87cc4c78075d8e0b0000200049444154ee395bd37fff0b3b77c2d6ade0e3736bf72c222222227f4f894a98aa55abc6d75f7fcdc30f3f6c5768e1e5975fe6f5d75f0720363616007f7fff5cdfefefef4f4242826d35283636165757d75c8520dcddddf1f5f5e5cc9933b6b6d8d858dab66deb704c803367ce5c33611a3162846d7b5fb6909010424242ae73d772a32a7957a2dd9ded6877673b5b9bd5b0723cf1b8ddf951db8f6f676ee45cb28c2c006e2b775bae24ea60dc41769ddcc586de1baebfbd2f3515de7e1bfaf685bf563f77ef86f1e3e1e597a14d9b7cbb6511111129a2222222888888b06b4b4c4c745234c55b894a98ce9e3d4b972e5d00983f7f3ebebebeac5dbb9649932651a54a15860c19426a6a2a001e1eb9cff8f1f4f404cc6797dcdcdc484d4db56de3bb928787876d2c80b4b4b4eb8e792db366cd72b84225f9cbc5e242ad8ab5a855b1168fdcf588adfd52e6257efee367bb6d7d1f1ff898dffefccdd6e7e1ba0fd3b176c7eb4ff2d147101707cf3f0f406222f4ea05f7dc03afbc92e7b724222222c580a30fcea3a3a369d6ac9993222abe4a54c23471e2444e9f3ecde1c387a956ad1a008f3efa2856ab95175e7881909010db734e972e5dcaf5fd696969c0e567a1bcbcbc484f4f7738575a5a9a5d99722f2faf1b1a538a068f521e34aed298c6551adbb55f48bbc00fe77ee0a7f89fe852b7cbf507caca324b89f7e80175ea60183070a099347df515942a51ff42454444440a9fc275c2673edbb56b174d9a34b1254bd9ba77ef4e4a4a0a313131b62d72d95bf3728a8d8dc5d7d7d7569cc1dfdf9facac2ce2e3e3edfaa5a7a793909060378fbfbfbfdd16bd9c6302b96292a2a9bc6779eebbfd3efa35ed47b5b237f067fabfffc1d1a3f05709fa850b61c50ab3fec31d77e473b022222222725d252a61cac8c8202b2bcb613b40666626d5ab57a752a54aecdbb72f57bfbd7bf712181868fb7df6735057f68d8c8cc46ab5daf50d0c0c243a3a1ac330ecfaeed9b3076f6f6f020202fefe8d49d16418f0e69bd0b62db468c1a143306c180c18003d7b3a3b381111111181129630356dda94e8e8688e1c3962d71e111181abab2b8d1b9bdbab7af4e8c1dab56b3975ea94adcf962d5b3872e4083d73bc936ddfbe3d3e3e3e848787db8d171e1e8eb7b7375dbb76b5b505050571f6ec5956af5e6d6b8b8f8f67c58a1574efde5d25c54ba2afbe827dfb203494b434080931579566cd7276602222222292ad443d213166cc1856ad5ac5fdf7dfcfd0a143f1f1f161eddab57cf9e5970c183080aa55ab023076ec5856ac5841bb76ed183e7c38172f5e64ead4a9346edc98be7dfbdac6f3f4f464e2c4890c193284e0e0603a76ecc8ce9d3b59ba742993274fb6ab6a171414c43df7dc43dfbe7d3978f020bebebecc993307c3309830614281ff2ca410080b83468da073675e18013ffd047bf698e72e8988888848e150a212a6c68d1bb37dfb76c68f1fcfd4a953494b4ba356ad5a4c9e3c99d0bf9e2101a851a3065f7df515a3468de2c5175fc4c3c3836eddba317dfaf45c2b4183060dc2cdcd8de9d3a7b366cd1a6ebffd7666cd9ac5b061c3ecfab9b8b8b07efd7ac68cf9fff6ee3e2caa3afffff80b1490504b665031333145b71bf3266f2b5771d54a30d710d7cddcca9b6f4a51bac5af7257bf45596dbabaeaa5ab659a097ed3b1bccd6e345cdd5221d4d5b2566d53435041241166e466ceef8f594647186f4a390c3c1fd7c525f399cf39bc0fe7f28217e773dee739cd9a354b76bb5d5dbb76d592254bd4a64d9b2a397e54237bf6481b3648efbda775ebfd346b96347bb674e79d661706000080f3f91917de54836aa5bc3d644646066dc56b929123a5cd9b95b5f57bdd7957807af49056af96fcfccc2e0c0000f82a7e6fbc366ad53d4c40b570e488b46c999ccf4cd4238f072830d0d51d8fb004000050fdd4aa257940b53073a6d4a08166148c566aaab4699364b59a5d140000002ac31526a02a9d3a252d58a0cc07c7ebff25d5d70b2f487dfa985d14000000bc2130015569de3c19a5a5faede74fa94b17e97fffd7ec8200000070312cc903aa8ac321e36f7fd3a6e68f6a7f4e13edde2cf1f82d000080ea8dc004549577df95727234eec41fb5e0ffa48808b30b020000c0a5109880aa5056a6e2d7a669bdff10f5fa431b0d1b667641000000b81c0426a00a94ac58a5c0c30795dc2245efce32bb1a0000005c2e021370ad1986b29f7943fff1ebad49abba2824c4ec8200000070b9e892075c63dbdfdca216c7d3953f26511d3b9a5d0d000000ae048109b8868e1d930afefc171d6a70bb1e9c779fd9e5000000e00ab1240fb8469c4e69f26ff76a41f1473afdd725f2f3f733bb240000005c21ae3001d7c8f4e9d2dddba7c91176931a8efd9dd9e5000000e067e00a13700da4a74b735ff85107fd5354e785bff0845a0000001f456002ae12bb5dfafc7369cd1ac966936687cd90bfa3be347ab4d9a5010000e067223001bfc0f1e3d2faf5ae90f4d96752519174cb2dd213c34ee977ef2e90df334f4b0d1a985d260000007e26021370050c43dab7cf1590d6ae95b66f778df7ec294d9922c5c448edda1af27b6dae54562a2524985b300000007e110213700925679ddaf6d129fd7355ae766fcc5149568e9a07e6e8c9d6397aab5fae6e6998a37aa773a4ffcb91e6e44a393992c321fdcfff484d9a985d3e0000007e0102136a9fe262e9e44957b039ff2337d7fd7969768ece1cce955f4e8e42ce9e542f95a9d779bb304afce477c222196152589864b54a1111aecfc3c2a4c68da5c1834d3b440000005c1d0426f836c3900a0b3dc2ce85e1a7c2eb9f7eaab89fc04095868629af4e987e2cb26a7f7e339d30ee54ddf030dddcc9aa5b7f1da688ae61f26bec0a447e8d1a4975ea54fdf1020000a04a119850bd389d527efee5879ff2e56f176ad0e0dcd51eab556adb56bae79e73afc3c2e4b484e95f59615af3a5552b3e6ea06ff6f92930508a8a92060d9286444b37dd54f5df02000000541f04265c5b25259e01e752e1e7e449a9accc731f7e7e92c5e21176d4b2a567202aff3c2ccc35b75ebd4acb292c94366e94d67c28ad5b279d38e19a1e1d2dbdf4b2d4bf3f4ded000000700e810957a6b0d07bd8a96ccccbf2378fb0131e2eb56f5f79f8b15aa5d0d05fb4fc2d3bdb158ed6ac71852587436ad74e7af4515757bb1e3d585d07000080ca11986ab3f397bf5d4ef8c9cd753d9df542e5cbdfcac34ef9f2b7cac24f58986bbe9fdf353b2cc390f6ee7505a4356ba4f474c9df5fbaf75ee995575c212932f29a7d79000000d42004a69aa47cf9dbe5869fdcdc2b5bfe565900b25abd2e7fab4ac5c5d23ffe712e241d39e2ca65f7dde77a14d2fdf7bb0e0b000000b812b52e303dfae8a35ab26489d7f78f1e3daaf0f07049d2b7df7eab091326e88b2fbe506060a0060e1ca8bffef5afb25aad15b65bb870a1a64d9ba643870ee9a69b6e524242829e7cf2c90af3f2f3f3959898a80f3ffc5076bb5d5dbb76d5f4e9d3d5b163c78b17fec517d2d75f5ffc3ea0fcfc8adb952f7f2b0f3be5cbdf2e0c3f5769f95b55cacb933efac815903efe582a28905ab470356c183448faf5af5d870f000000fc5cb52e303df1c413eadfbfbfc798d3e9d4134f3ca18888087758cacccc54af5ebdd4a85123bdf6da6b2a2828d0b469d3b477ef5ea5a5a5292020c0bdfdfcf9f3356edc38c5c6c6ead9679fd5962d5b949090a0a2a2222526267a7c9d8103076acf9e3d4a4c4c94c562d1dcb973d5bb776f656464a875ebd6de0b4f4870fd5bcd96bf55b50307ce5d45fae20bd705b22e5da4c444d752bbf6ed6bd4e1020000c064b52e3075efde5dddbb77f718fbe73fffa9a2a2223dfcf0c3eeb1a953a7ca6eb76bd7ae5d6adebcb924a96bd7aeead7af9f162f5eac3163c64892ec76bb264d9aa4e8e8682d5fbe5c92346ad428399d4e25252569ecd8b1bae1861b2449369b4ddbb66d93cd66d390214324497171718a8c8cd4942953949c9cecbdf08f3e92faf4a916cbdfaa525999b46d9b2b20ad5d2b7df79deb5bf09bdf4873e7babadb356b667695000000a8a9fccd2ea03a484949919f9f9f7efffbdfbbc756ae5ca9e8e868775892a4be7dfb2a3232d21d8c24293535557979791a3f7ebcc73ee3e3e3555858a8f5ebd7bbc76c369b9a366dea0e4b9264b55a151717a7d5ab57aba4a4c47b914d9ad49ab0545020ad5ce9ea62d7b4a9ab59c3bbef4a3d7b4aab56b95620ae5d2b8d1d4b58020000c0b555eb0353494989962f5faebbefbe5b2d5ab490e4ba8f2927274777dd755785f95dba74d1ae5dbbdcafcb3fbf706ea74e9de4efefafddbb777bccedd4a953a5fb2c2a2ad2fefdfbafca31f9a2cc4c69de3c577306ab558a8d95befa4a1a33c67585293b5b5ab8507af0412924c4ec6a010000505bd4ba257917fae4934f949797e7b11c2f3b3b5b92dcf7339d2f3c3c5c7979792a292951404080b2b3b355a74e9d0a8d2002030365b158949595e5b1dfdebd7b57ba4f49cacacad26db7dd56699dcf3cf38c7b695fb9e1c3876bf8f0e19777a0d58c6148bb769dbb1f69d72ea96e5da9572fe92f7f71dd8fd4aa95d955020000544fcb962dd3b265cb3cc6f22b6b00865facd607a69494140506062a2e2ece3d66ffefb3868282822accaff7df657176bb5d010101b2dbed0af4d28a2d2828c8bd2f4972381c97dca7373367ceacf4ea942f7138a4d4d473f7231d3d2a5d7fbdf4c003aea60df7dd275d90090100005089cafe70be73e74e75eedcd9a48a6aae5a1d98ce9c39a3d5ab576bc080016ad4a8917b3c3838589274f6ecd90adb381c0e8f39c1c1c12a2e2eae74ff0e87c33daf7ceee5ecb326c9c991d6af7705a44f3e910a0ba5880869e850d755a47bef95ce6b3808000000542bb53a30ad5ab54a76bbdd63399e746e895cf9d2bcf3656767cb62b1b8db8a878787abacac4cb9b9b91ecbf28a8b8b959797a766e77525080f0ff758a277fe3e2579ccf55586e1ea64b776adeb4ad2975fbac6bb7593264d723d1fe9d65b69fd0d000000df50ab03537272b21a3468a0418306798cdf78e38d0a0b0b537a7a7a856dd2d2d2d4a14307f7ebf207cea6a7a7ebfefbef778f7ff5d557723a9d1e733b74e8a0ad5bb7ca300cf99d971876ecd8a19090104546465eb563ab4aa5a5ae672295df8f74f0a0141c2cf5ef2fbdfdb63470a0abc91f000000e06b6a6d97bc9c9c1c6ddcb851bffded6fddf7109defa1871ed2ba75eb949999e91edbb469930e1c38a0a14387bac7a2a2a2141a1aaa79f3e6796c3f6fde3c85848468e0c081eeb1d8d8581d3f7e5c1f7cf0817b2c3737572b56ac504c4c8cc7c370abbb9f7e92962f97468c901a37967af796962d93a2a2a475eba493275d2dc01f7f9cb004000000df556baf30bdfffefb2a2b2babb01cafdc8b2fbea8152b56a84f9f3e7afae9a7555050a037df7c53eddbb7d7638f3de69e57af5e3d252525293e3e5e717171eadfbfbfb66eddaae4e4644d9d3ad5a3b35d6c6cacba77efaec71e7b4cfbf6ed93c562d1dcb9736518865e7ae9a56b7eccbfd4a143e796da6ddeecbab274e79dd2934fba96da75ea24f9d7da080e0000809aa8d606a69494143569d244bff9cd6f2a7dbf79f3e6fac73ffea1891327eaf9e79f57505090a2a3a3357dfaf40a5782c68d1ba78080004d9f3e5d6bd6ac518b162d3473e64c25242478ccf3f7f7d7471f7da4e79e7b4eb366cd92dd6e57d7ae5db564c912b569d3e69a1debcfe574ba9e8554bed46eef5e5783863e7da49933a5e868e9e69bcdae12000000b876fc0cc330cc2e02de95b787ccc8c8a892b6e24545d2a64dae80b46e9d74ec98141aeaba0f2926461a30406ad8f09a97010000802b54d5bf37d616b5f60a13ce3976ccd5fa7bcd1ae9b3cf24bb5d6ad3467af861d752bb9e3d5d0f95050000006a1b7e0dae850c43fae69b734bed76ec70dd7bd4b3a7f4d24bae90d4b6add95502000000e62330d5122525d2962de742d2a14352488874df7dd2f8f1d2030f48e73d460a00000080084c35daa953d2860dae80f4f1c7ae56e0cd9bbbae20c5c4b85a8157d2511d000000c07f11986a98efbf7705a4b56b5d5794cacaa4ce9da509135c41a94307e9bc67e602000000b80802938f2b2b73dd8354fe7ca47dfba4a020d70364e7cc71b5fe6ededcec2a01000000df4460f2418585ae6e76e5adbf7372a4b03057ebef575e91faf593ead737bb4a000000c0f711987cc48913d2fcf9ae90b4699374f6acf4ab5f498f3fee5a6ad7ad9b54a78ed95502000000350b81c947dc7fbf2b10dd7baff4da6baea60dad5b9b5d1500000050b311987c445292abfd7768a8d99500000000b587bfd905e0f23cf0006109000000a86a042600000000f082c004000000005e109800000000c00b02130000000078416002000000002f084c00000000e005810900000000bc2030010000008017042600000000f082c004000000005e109800000000c00b02130000000078416002000000002f084cc035b06cd932b34bc015e29cf91ece99efe19cf91ece19504b03d3ce9d3b3568d020592c16858484e88e3beed0ecd9b33de67cfbedb7baefbefbd4a04103592c168d1c3952b9b9b995ee6fe1c285fad5af7ea5e0e0604546466ace9c3995cecbcfcfd7d8b163151616a6faf5eb2b2a2a4abb76edbaeac707f3f103c6f770ce7c0fe7ccf770ce7c0fe70c90ea9a5d4055fbf4d34f151313a3ce9d3b6bf2e4c9aa5fbfbe0e1e3ca8a3478fbae7646666aa57af5e6ad4a8915e7bed3515141468dab469dabb77afd2d2d2141010e09e3b7ffe7c8d1b374eb1b1b17af6d967b565cb16252424a8a8a848898989ee794ea75303070ed49e3d7b949898288bc5a2b973e7aa77efdecac8c850ebd6adabf4fb00000000e0d26a55603a7dfab4468e1ca9989818d96c36aff3a64e9d2abbddae5dbb76a979f3e692a4ae5dbbaa5fbf7e5abc78b1c68c192349b2dbed9a346992a2a3a3b57cf97249d2a851a3e4743a959494a4b163c7ea861b6e9024d96c366ddbb64d369b4d43860c9124c5c5c52932325253a64c517272f2b53c74000000003f43ad5a92979292a213274ee8d5575f9524151616cae9745698b772e54a454747bbc39224f5eddb57919191ee602449a9a9a9cacbcbd3f8f1e33db68f8f8f576161a1d6af5fef1eb3d96c6adab4a93b2c4992d56a555c5c9c56af5ead929292ab769c00000000ae8e5a758569e3c68d6ad8b0a17efcf1470d1a3448070e1c504848881e79e411cd9831434141413a7af4a872727274d75d7755d8be4b972edab06183fb75f9fd4717ceedd4a993fcfdfdb57bf76e3dfcf0c3eeb99d3a75aa749f0b162cd0fefdfb75db6db75578dfe1704872dd5305df919f9faf9d3b779a5d06ae00e7ccf770ce7c0fe7ccf770ce7c4bf9ef8b76bbdde44a6a965a15980e1c38a0d2d2520d1e3c58a3478fd61b6fbca1d4d454cd9e3d5bf9f9f94a4949517676b624293c3cbcc2f6e1e1e1cacbcb53494989020202949d9dad3a75eac86ab57acc0b0c0c94c562515656967b2c3b3b5bbd7bf7ae749f92949595556960fae1871f244923468cf8d9c70d7374eedcd9ec1270853867be8773e67b3867be8773e67b0e1d3aa4bbefbedbec326a8c5a1598ce9c39a3a2a2228d1b374e3367ce94240d1e3c58c5c5c59a3f7fbe5e7ef96577220f0a0aaab07dbd7af524b9527b404080ec76bb0203032bfd5a4141411ee9dee1705c729f9519306080962e5daa962d5b2a3838f80a8e16000000b589c3e1d00f3ffca0010306985d4a8d52ab025379e0183e7cb8c7f8f0e1c3357ffe7c6ddfbe5deddab593249d3d7bb6c2f6e5cbe3caf7131c1cace2e2e24abf96c3e1f00838c1c1c197b5cf0b59ad56f7b23e000000e0627af6ec697609354ead6afad0ac5933495293264d3cc61b376e2c493a75ea947b4ef9d2bcf3656767cb62b1b8db8a878787abacacacc2f3998a8b8b959797e7de57f9dcf397e89dbfcff36b03000000507dd4aac054de9c213333d363bc3cc8848585a959b3660a0b0b537a7a7a85edd3d2d2d4a14307f7eb8e1d3b4a5285b95f7df5959c4ea7c7dc0e1d3a68e7ce9d320cc363ee8e1d3b141212a2c8c8c85f706400000000ae855a1598e2e2e224490b172ef4187ffbedb7151010e06ecaf0d0430f69ddba751ec16ad3a64d3a70e080860e1dea1e8b8a8a526868a8e6cd9be7b1bf79f3e62924244403070e748fc5c6c6eaf8f1e3fae0830fdc63b9b9b95ab162856262623c1e860b000000a07af0332ebce451c38d1e3d5aefbcf38ee2e2e2d4ab572f6ddebc59369b4d2fbef8a25e79e51549ae2b501d3b76d40d37dca0a79f7e5a0505057af3cd37d5a2450ba5a7a77b849b79f3e6293e3e5eb1b1b1eadfbfbfb66eddaaf7de7b4f53a74ed5f3cf3fef9ee7743a75cf3df7e8ebafbfd673cf3d278bc5a2b973e72a333353e9e9e96ad3a64d957f2f000000005c8251cb949494182fbdf492d1b2654b233030d0888c8c34fef6b7bf5598f7cd37df1803060c304242428cd0d050e391471e314e9c3851e93edf7aeb2da35dbb7646505090d1a64d9b4af767188671ead42963f4e8d186d56a354242428c3e7dfa1819191995ce75381c466262a2111e1e6e0407071bddba75333efbecb39f7fe0b8e6ce9c39634c9e3cd918306080d1a85123c3cfcfcf58bc78b1d965e122d2d2d28cf8f878e3d65b6f354242428c162d5a18717171c6fefdfbcd2e0d5e7cfdf5d7466c6cacd1aa552be3baebae334243438d1e3d7a184b972e35bb345ca6575e79c5f0f3f3336ebffd76b34b8117a9a9a9869f9f5fa51f3b76ec30bb3c5c44464686111313638486861ad75d779d71fbedb71bb366cd32bb2c9f57ebae30f98ae1c3876be5ca959a306182dab469a3458b16293d3d5da9a9a9f4d5afa60e1d3aa456ad5ae9e69b6f56444484366fdeacc58b176be4c8916697062f626363b56ddb360d1d3a54eddbb7577676b6e6cc99a33367ce68fbf6ed953e1b0de6dab0618366cd9aa59e3d7baa59b3662a2a2a92cd66d3d6ad5b959494a4499326995d222e223333536ddbb695bfbfbf222222b467cf1eb34b4225366fdeaca8a8283dfdf4d3ead2a58bc77b03060c90c56231a9325ccca79f7eaa98981875eedc59c3860d53fdfaf575f0e0411986a1d75f7fddecf27c1a81a91a4a4b4b53f7eedd356dda344d9c385192abcdf9edb7dfaec68d1beb8b2fbe30b94254a6b8b858f9f9f96adcb8b1323232d4a54b17025335b76ddb3675e9d24575eb9e7bc2c2c1830775c71d7728363656efbdf79e89d5e172399d4e75eedc597979793a7cf8b0d9e5e0227ef7bbdfe9e4c9932a2d2d556e6eaef6eedd6b7649a8447960b2d96c1a326488d9e5e0329c3e7d5a919191bae79e7b64b3d9cc2ea7c6a9554d1f7c85cd6653ddba753576ec58f758505090468d1aa56ddbb6e9e8d1a32656076f020303dd2deaf93b846fe8d1a387475892a4d6ad5bebd65b6fd577df7d675255b852fefefe6adebc39cd73aab92d5bb668e5ca959a3973a60cc3909f9f9fd925e1120cc3504141814a4b4bcd2e0597909292a213274ee8d5575f9524151616cae9749a5c55cd4160aa8676eddaa5c8c848d5af5fdf63bcfcb2f8eeddbbcd280ba8150cc3d0f1e3c765b55acd2e0517515454a4dcdc5c7dfffdf79a3163863ef9e4132526269a5d16bc282b2bd3534f3da53163c6b0d4d5873cf6d863bafefaeb151c1caca8a828656464985d12bcd8b871a31a366ca81f7ffc516ddbb65583060d74fdf5d76bfcf8f13a7bf6acd9e5f9bcba979e82aa969d9dadf0f0f00ae3e563953d0017c0d5919c9cacacac2c77d74c544f13274ed482050b244975ebd6d5ac59b33caecaa37af9fbdfffae23478ee8f3cf3f37bb145c86a0a020c5c6c6ea81071e90d56ad537df7ca369d3a6e9de7befd5975f7ee9f19c49540f070e1c506969a9060f1eacd1a347eb8d37de506a6aaa66cf9eadfcfc7ca5a4a4985da24f2330554376bb5d41414115c6ebd5abe77e1fc0d5f7dd77df293e3e5e3d7bf6d41ffef007b3cbc1454c983041717171cacaca527272b29e7cf24905070773deaaa193274f6af2e4c99a3c7932cd027c448f1e3dd4a3470ff7ebe8e868c5c6c6aa7dfbf67ae18517b461c30613ab4365ce9c39a3a2a2228d1b374e3367ce94240d1e3c58c5c5c59a3f7fbe5e7ef965b56edddae42a7d174bf2aaa1e0e0e04a2f9f3a1c0ef7fb00aeae63c78e69e0c0816ad4a8916c361bf75754736ddbb655545494468c18a10d1b36a86fdfbe7ae69967f8835235f4a73ffd4956ab554f3df594d9a5e017b8e5965bf4e0830f2a353595fb74aba1f2df0d870f1fee315efe7afbf6ed555e534d4260aa86c2c3c32b5d76979d9d2d496ad6ac59559704d4683ffdf493eebfff7e9d3e7d5a1f7ffcb19a366d6a7649b8420f3df4907efae927fdfbdfff36bb149ce7c081037aebadb7f4d4534f29333353870e1dd2a14387e47038545c5cacc3870febd4a953669789cbd4bc7973151717abb0b0d0ec527081f2df0d9b3469e2315ede8c8aff67bf0c81a91aead8b1a3f6efdfaf8282028ff11d3b7648126b8781abc8e17028262646070f1ed4ba75ebd4ae5d3bb34bc2cf507e65c9df9f1f6bd5c9d1a347e5743a959090a056ad5ab93fd2d2d2b47fff7e454444282929c9ec327199fef39fff283838b842532a98efaebbee92e47ad6d9f9caff001f161656e535d524fc64a986626363555656e6bea159723d8769d1a245eadebdbb6ebcf14613ab036a8eb2b2320d1b364c3b76ecd08a152bd4ad5b37b34bc225e4e4e454182b2929d192254b64b158e8c056cddc71c71dfaf0c30fb56ad52af7c7871f7ea8db6ebb4d37df7cb356ad5aa551a346995d262e50d9ffb37ffdeb5f5ab3668dfaf7ef6f4245b894b8b83849d2c2850b3dc6df7efb6d050404a877efde26545573d0f4a11aeadab5ab860e1daa175e7841274e9cd02db7dca277df7d57478e1cd1a2458bcc2e0f173167ce1ce5e7e7bbffa2b366cd1a1d39724492949090a0860d1b9a591e2ef0c73ffe516bd7ae554c4c8c727373b574e9528ff7478c18615265f066ecd8b12a282850af5ebdd4ac59331d3b764cc9c9c9dabf7fbf162d5aa43a75ea985d22ce63b158f4e0830f56189f3163862469d0a041555d122ec3b061c374dd75d7a9478f1e6adcb8b1f6eddba7050b16a87efdfa7afdf5d7cd2e0f95e8d0a1831e7ffc71bdf3ce3b2a2d2d55af5ebdb479f366d96c36bdf8e28b2c35ff85fc0ceedcab96ce9e3dab3ffff9cf5aba74a94e9d3aa53befbc53494949ead7af9fd9a5e12222222274f8f0614972370d287f40e30f3ffca0162d5a98591e2ed0a74f1f6dd9b2a5d21b98fdfcfc545656664255b898f7df7f5f0b172ed4debd7b75f2e449356cd850ddba75d3c48913d5b76f5fb3cbc365ead3a78f4e9e3ca93d7bf6985d0a2a317bf66c252727ebe0c1833a7dfab41a376eacbe7d09dc4a7c000000ef49444154fb6aca94296ad5aa95d9e5c18bd2d2524d9d3a558b162d525656965ab66ca9f8f878252424985d9acf2330010000008017dcc304000000005e109800000000c00b02130000000078416002000000002f084c00000000e005810900000000bc2030010000008017042600000000f082c004000000005e109800000000c00b02130000000078416002000000002f084c00000000e005810900000000bc2030010000008017042600000000f082c004000000005e109800000000c00b02130000000078416002000000002f084c00000000e005810900000000bc2030010000008017042600000000f0e2ff03bd8a08617178b60c0000000049454e44ae426082}\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u32467?\u26524?\u27491?\u22909?\u19982?\u25105?\u30340?\u24773?\u20917?\u30456?\u21453?\u65311?\u20284?\u20046?\u22270?\u19978?\u26159?\u36825?\u20040?\u35828?\u30340?\u65292?\u20294?\u26159?\u25968?\u25454?\u19978?\u26159?\u36825?\u26679?\u30340?\u24773?\u20917?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 data\line +\u9500?\u9472?\u9472? 2014-01-01-0.json\line +\u9500?\u9472?\u9472? 2014-02-01-0.json\line +\u9500?\u9472?\u9472? 2014-02-02-0.json\line +\u9500?\u9472?\u9472? 2014-02-03-0.json\line +\u9500?\u9472?\u9472? 2014-02-04-0.json\line +\u9500?\u9472?\u9472? 2014-02-05-0.json\line +\u9500?\u9472?\u9472? 2014-02-06-0.json\line +\u9500?\u9472?\u9472? 2014-02-07-0.json\line +\u9500?\u9472?\u9472? 2014-02-08-0.json\line +\u9500?\u9472?\u9472? 2014-02-09-0.json\line +\u9500?\u9472?\u9472? 2014-02-10-0.json\line +\u9500?\u9472?\u9472? 2014-02-11-0.json\line +\u9500?\u9472?\u9472? 2014-02-12-0.json\line +\u9500?\u9472?\u9472? 2014-02-13-0.json\line +\u9500?\u9472?\u9472? 2014-02-14-0.json\line +\u9500?\u9472?\u9472? 2014-02-15-0.json\line +\u9500?\u9472?\u9472? 2014-02-16-0.json\line +\u9500?\u9472?\u9472? 2014-02-17-0.json\line +\u9500?\u9472?\u9472? 2014-02-18-0.json\line +\u9500?\u9472?\u9472? 2014-02-19-0.json\line +\u9492?\u9472?\u9472? 2014-02-20-0.json\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u25105?\u20204?\u33719?\u21462?\u26159?\u27599?\u22825?\u26202?\u19978?0\u28857?\u26102?\u30340?\u24773?\u20917?\u65292?\u33267?\u20110?\u20026?\u20160?\u20040?\u26159?0\u28857?\u65292?\u25105?\u24819?\u36825?\u37324?\u30340?\u25968?\u25454?\u37327?\u21487?\u33021?\u20250?\u27604?\u36739?\u23569?\u12290?\u38500?\u21435?1\u26376?1\u21495?\u30340?\u24773?\u20917?\u65292?\u23601?\u26159?\u19978?\u38754?\u30340?\u32467?\u26524?\u65292?\u22312?\u21482?\u26377?\u19968?\u21608?\u30340?\u24773?\u20917?\u26102?\u65292?\u24635?\u20250?\u20197?\u20026?\u22240?\u20026?\u22312?\u22269?\u20869?\u37027?\u26102?\u26159?\u20551?\u26399?\u65292?\u20294?\u26159?\u24635?\u35273?\u24471?\u19981?\u26159?\u24456?\u38752?\u35889?\u65292?\u22269?\u20869?\u30340?\u31243?\u24207?\u21592?\u34429?\u28982?\u24456?\u22810?\u65292?\u20250?\u22312?github\u19978?\u27963?\u36291?\u30340?\u21487?\u33021?\u27809?\u26377?\u37027?\u20040?\u22810?\u65292?\u30452?\u33267?\u21015?\u20986?\u27599?\u19968?\u21608?\u30340?\u25968?\u25454?\u26102?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 6570, 7420, 11274, 12073, 12160, 12378, 12897,\line + 8474, 7984, 12933, 13504, 13763, 13544, 12940,\line + 7119, 7346, 13412, 14008, 12555\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 Python \u25968?\u25454?\u20998?\u26512?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u37325?\u20889?\u20102?\u19968?\u20010?\u26032?\u30340?\u26041?\u27861?\u29992?\u20110?\u35745?\u31639?\u25552?\u20132?\u25968?\u65292?\u30452?\u33267?\u21518?\u38754?\u25165?\u24847?\u35782?\u21040?\u20854?\u23454?\u25105?\u20204?\u21487?\u20197?\u31639?\u34892?\u25968?\u23601?\u22815?\u20102?\u65292?\u20294?\u26159?\u26041?\u27861?\u19978?\u26377?\u28857?hack\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 def get_minutes_counts_with_id(jsonfile):\line + datacount, dataarray = handle_json(jsonfile)\line + minuteswithcount = [(x, dataarray.count(x)) for x in set(dataarray)]\line + return minuteswithcount\line +\line +\line +def handle_json(jsonfile):\line + f = open(jsonfile, "r")\line + dataarray = []\line + datacount = 0\line +\line + for line in open(jsonfile):\line + line = f.readline()\line + lin = json.loads(line)\line + date = dateutil.parser.parse(lin["created_at"])\line + datacount += 1\line + dataarray.append(date.minute)\line +\line + f.close()\line + return datacount, dataarray\line +\line +\line +def get_minutes_count_num(jsonfile):\line + datacount, dataarray = handle_json(jsonfile)\line + return datacount\line +\line +\line +def get_month_total():\line + """\line +\line + :rtype : object\line + """\line + monthdaycount = []\line + for i in range(1, 20):\line + if i < 10:\line + filename = 'data/2014-02-0' + i.__str__() + '-0.json'\line + else:\line + filename = 'data/2014-02-' + i.__str__() + '-0.json'\line + monthdaycount.append(get_minutes_count_num(filename))\line + return monthdaycount\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u25509?\u30528?\u25105?\u20204?\u38656?\u35201?\u21435?\u36941?\u21382?\u27599?\u20010?\u32467?\u26524?\u65292?\u21518?\u38754?\u30340?\u21518?\u38754?\u20250?\u21457?\u29616?\u36825?\u20010?\u25928?\u29575?\u30495?\u30340?\u26159?\u22826?\u20302?\u20102?\u65292?\u20026?\u20160?\u20040?\u26408?\u26377?\u22810?\u32447?\u31243?\u65311?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 Python Matplotlib\u22270?\u34920?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u35753?\u25105?\u20204?\u30340?matplotlib\u26469?\u20570?\u36825?\u20123?\u22270?\u34920?\u30340?\u24037?\u20316?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 if __name__ == '__main__':\line + results = pd.get_month_total()\line + print results\line +\line + plt.figure(figsize=(8, 4))\line + plt.plot(results.__getslice__(0, 7), label="first week")\line + plt.plot(results.__getslice__(7, 14), label="second week")\line + plt.plot(results.__getslice__(14, 21), label="third week")\line + plt.legend()\line + plt.show()\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u34013?\u33394?\u30340?\u26159?\u31532?\u19968?\u21608?\u65292?\u32511?\u33394?\u30340?\u26159?\u31532?\u20108?\u21608?\u65292?\u34013?\u33394?\u30340?\u26159?\u31532?\u19977?\u21608?\u23601?\u26377?\u20102?\u19978?\u38754?\u30340?\u32467?\u26524?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u25105?\u20204?\u36824?\u38656?\u35201?\u20248?\u21270?\u26041?\u27861?\u65292?\u20197?\u21450?\u22810?\u32447?\u31243?\u30340?\u25903?\u25345?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u35753?\u25105?\u20204?\u20998?\u26512?\u20043?\u21069?\u30340?\u31243?\u24207?\u65292?\u28982?\u21518?\u20877?\u24819?\u21150?\u27861?\u20570?\u20986?\u20248?\u21270?\u12290?\u32593?\u19978?\u30475?\u21040?\u19968?\u31687?\u25991?\u31456?{\field{\*\fldinst{HYPERLINK "http://www.huyng.com/posts/python-performance-analysis/"}}{\fldrslt{\ul +http://www.huyng.com/posts/python-performance-analysis/ +}}} +\u35762?\u30340?\u23601?\u26159?\u20998?\u26512?\u36825?\u37096?\u20998?\u20869?\u23481?\u30340?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 \u23384?\u20648?\u21040?\u25968?\u25454?\u24211?\u20013?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 SQLite3\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u25105?\u20204?\u21019?\u24314?\u20102?\u19968?\u20010?\u21517?\u20026?{\f1 userdata.db}\u30340?\u25968?\u25454?\u24211?\u25991?\u20214?\u65292?\u28982?\u21518?\u21019?\u24314?\u20102?\u19968?\u20010?\u34920?\u65292?\u37324?\u38754?\u26377?owner,language,eventtype,name url\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 def init_db():\line + conn = sqlite3.connect('userdata.db')\line + c = conn.cursor()\line + c.execute('''CREATE TABLE userinfo (owner text, language text, eventtype text, name text, url text)''')\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u25509?\u30528?\u25105?\u20204?\u23601?\u21487?\u20197?\u26597?\u35810?\u25968?\u25454?\u65292?\u36825?\u37324?\u20174?\u32467?\u26524?\u35762?\u36215?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 def get_count(username):\line + count = 0\line + userinfo = []\line + condition = 'select * from userinfo where owener = \\'' + str(username) + '\\''\line + for zero in c.execute(condition):\line + count += 1\line + userinfo.append(zero)\line +\line + return count, userinfo\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u24403?\u25105?\u26597?\u35810?{\f1 gmszone}\u30340?\u26102?\u20505?\u65292?\u20063?\u23601?\u26159?\u25105?\u33258?\u24049?\u23601?\u20250?\u26377?\u22914?\u19979?\u30340?\u32467?\u26524?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 (u'gmszone', u'ForkEvent', u'RESUME', u'TeX', u'https://github.com/gmszone/RESUME')\line +(u'gmszone', u'WatchEvent', u'iot-dashboard', u'JavaScript', u'https://github.com/gmszone/iot-dashboard')\line +(u'gmszone', u'PushEvent', u'wechat-wordpress', u'Ruby', u'https://github.com/gmszone/wechat-wordpress')\line +(u'gmszone', u'WatchEvent', u'iot', u'JavaScript', u'https://github.com/gmszone/iot')\line +(u'gmszone', u'CreateEvent', u'iot-doc', u'None', u'https://github.com/gmszone/iot-doc')\line +(u'gmszone', u'CreateEvent', u'iot-doc', u'None', u'https://github.com/gmszone/iot-doc')\line +(u'gmszone', u'PushEvent', u'iot-doc', u'TeX', u'https://github.com/gmszone/iot-doc')\line +(u'gmszone', u'PushEvent', u'iot-doc', u'TeX', u'https://github.com/gmszone/iot-doc')\line +(u'gmszone', u'PushEvent', u'iot-doc', u'TeX', u'https://github.com/gmszone/iot-doc')\line +109\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u19968?\u20849?\u26377?109\u20010?\u20107?\u20214?\u65292?\u26377?{\f1 Watch},{\f1 Create},{\f1 Push},{\f1 Fork}\u36824?\u26377?\u20854?\u20182?\u30340?\u65292? \u39033?\u30446?\u20027?\u35201?\u26377?{\f1 iot},{\f1 RESUME},{\f1 iot-dashboard},{\f1 wechat-wordpress}, \u25509?\u30528?\u23601?\u26159?\u35821?\u35328?\u20102?\u65292?{\f1 Tex},{\f1 Javascript},{\f1 Ruby},\u25509?\u30528?\u23601?\u26159?\u39033?\u30446?\u30340?url\u20102?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u20540?\u24471?\u27880?\u24847?\u30340?\u26159?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 -rw-r--r-- 1 fdhuang staff 905M Apr 12 14:59 userdata.db\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u36825?\u20010?\u25968?\u25454?\u24211?\u25991?\u20214?\u26377?{\b 905M}\u65292?\u19981?\u36807?\u26597?\u35810?\u32467?\u26524?\u30456?\u24403?\u35753?\u20154?\u28385?\u24847?\u65292?\u33267?\u23569?\u30456?\u23545?\u20110?\u21407?\u26469?\u30340?\u32467?\u26524?\u26469?\u35828?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 Python\u33258?\u24102?\u20102?\u23545?SQLite3\u30340?\u25903?\u25345?\u65292?\u28982?\u32780?\u25105?\u20204?\u36824?\u38656?\u35201?\u23433?\u35013?SQLite3\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 brew install sqlite3\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u25110?\u32773?\u26159?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 sudo port install sqlite3\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u25110?\u32773?\u26159?Ubuntu\u30340?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 sudo apt-get install sqlite3\par} +{\pard \ql \f0 \sa180 \li0 \fi0 openSUSE\u33258?\u28982?\u23601?\u26159?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 sudo zypper install sqlite3\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u19981?\u36807?\u65292?\u29992?yast2\u20063?\u24456?\u19981?\u38169?\u65292?\u19981?\u26159?\u20040?\u12290?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u25968?\u25454?\u23548?\u20837?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u38656?\u35201?\u27880?\u24847?\u30340?\u26159?\u36825?\u37324?\u26159?\u38656?\u35201?python2.7\u65292?\u36215?\u28304?\u20110?\u23545?gzip\u30340?\u19978?\u19979?\u25991?\u31649?\u29702?\u22120?\u30340?\u25903?\u25345?\u38382?\u39064?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 def handle_gzip_file(filename):\line + userinfo = []\line + with gzip.GzipFile(filename) as f:\line + events = [line.decode("utf-8", errors="ignore") for line in f]\line +\line + for n, line in enumerate(events):\line + try:\line + event = json.loads(line)\line + except:\line +\line + continue\line +\line + actor = event["actor"]\line + attrs = event.get("actor_attributes", \{\})\line + if actor is None or attrs.get("type") != "User":\line + continue\line +\line + key = actor.lower()\line +\line + repo = event.get("repository", \{\})\line + info = str(repo.get("owner")), str(repo.get("language")), str(event["type"]), str(repo.get("name")), str(\line + repo.get("url"))\line + userinfo.append(info)\line +\line + return userinfo\line +\line +def build_db_with_gzip():\line + init_db()\line + conn = sqlite3.connect('userdata.db')\line + c = conn.cursor()\line +\line + year = 2014\line + month = 3\line +\line + for day in range(1,31):\line + date_re = re.compile(r"([0-9]\{4\})-([0-9]\{2\})-([0-9]\{2\})-([0-9]+)\\.json.gz")\line +\line + fn_template = os.path.join("march",\line + "\{year\}-\{month:02d\}-\{day:02d\}-\{n\}.json.gz")\line + kwargs = \{"year": year, "month": month, "day": day, "n": "*"\}\line + filenames = glob.glob(fn_template.format(**kwargs))\line +\line + for filename in filenames:\line + c.executemany('INSERT INTO userinfo VALUES (?,?,?,?,?)', handle_gzip_file(filename))\line +\line + conn.commit()\line + c.close()\par} +{\pard \ql \f0 \sa180 \li0 \fi0 {\f1 executemany}\u21487?\u20197?\u25554?\u20837?\u22810?\u26465?\u25968?\u25454?\u65292?\u23545?\u20110?\u25105?\u20204?\u30340?\u25968?\u25454?\u26469?\u35828?\u65292?\u19968?\u23567?\u26102?\u30340?\u25991?\u20214?\u22823?\u27010?\u26377?\u20116?\u20845?\u21315?\u20010?\u20250?\u31526?\u21512?\u25105?\u20204?\u19978?\u38754?\u30340?\u23433?\u35013?\u65292?\u20063?\u23601?\u26159?\u26377?{\f1 actor}\u21448?\u26377?{\f1 type}\u25165?\u26159?\u25105?\u20204?\u38656?\u35201?\u35760?\u24405?\u30340?\u25968?\u25454?\u65292?\u25105?\u20204?\u21482?\u38656?\u35201?\u32479?\u35745?\u29992?\u25143?\u30340?\u37027?\u20123?\u20107?\u20214?\u65292?\u32780?\u38750?\u20840?\u37096?\u30340?\u20107?\u20214?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u25105?\u20204?\u38656?\u35201?\u21435?\u36941?\u21382?\u25991?\u20214?\u65292?\u28982?\u21518?\u25214?\u21040?\u21512?\u36866?\u30340?\u37096?\u20998?\u65292?\u36825?\u37324?\u21482?\u26159?\u35201?\u25214?{\f1 2014-03-01}\u21040?{\f1 2014-03-31}\u30340?\u20840?\u37096?\u20107?\u20214?\u65292?\u32780?\u20809?\u36825?\u20123?\u25968?\u25454?\u30340?gz\u25991?\u20214?\u23601?\u26377?1.26G\u65292?\u21516?\u19978?\u38754?\u37027?\u20123?\u35299?\u21387?\u20026?json\u25991?\u20214?\u26174?\u24471?\u19981?\u21512?\u36866?\u65292?\u21482?\u33021?\u29992?\u36941?\u21382?\u26469?\u22788?\u29702?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u36825?\u37324?\u21442?\u32771?\u20102?osrc\u39033?\u30446?\u20013?\u30340?\u20889?\u27861?\u65292?\u25110?\u32773?\u35828?\u30452?\u25509?\u22797?\u21046?\u36807?\u26469?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u39318?\u20808?\u26159?\u27491?\u35268?\u21305?\u37197?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 date_re = re.compile(r"([0-9]\{4\})-([0-9]\{2\})-([0-9]\{2\})-([0-9]+)\\.json.gz")\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u19981?\u36807?\u20027?\u35201?\u30340?\u36824?\u26159?\u22312?\u20110?{\f1 glob.glob}\par} +{\pard \ql \f0 \sa180 \li720 \fi0 glob\u26159?python\u33258?\u24049?\u24102?\u30340?\u19968?\u20010?\u25991?\u20214?\u25805?\u20316?\u30456?\u20851?\u27169?\u22359?\u65292?\u29992?\u23427?\u21487?\u20197?\u26597?\u25214?\u31526?\u21512?\u33258?\u24049?\u30446?\u30340?\u30340?\u25991?\u20214?\u65292?\u23601?\u31867?\u20284?\u20110?Windows\u19979?\u30340?\u25991?\u20214?\u25628?\u32034?\u65292?\u25903?\u25345?\u36890?\u37197?\u31526?\u25805?\u20316?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u36825?\u37324?\u20063?\u23601?\u29992?\u19978?\u20102?{\f1 gzip.GzipFile}\u21448?\u19968?\u20010?\u19981?\u38169?\u30340?\u19996?\u35199?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u26368?\u21518?\u20195?\u30721?\u21487?\u20197?\u35265?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 {\field{\*\fldinst{HYPERLINK "http://github.com/gmszone/ml"}}{\fldrslt{\ul +github.com/gmszone/ml +}}} +\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u26356?\u22909?\u30340?\u26041?\u26696?\u65311?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 Redis\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u26597?\u35810?\u29992?\u25143?\u20107?\u20214?\u24635?\u25968?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 import redis\line +r = redis.StrictRedis(host='localhost', port=6379, db=0)\line +pipe = pipe = r.pipeline()\line +pipe.zscore('osrc:user',"gmszone")\line +pipe.execute()\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u31995?\u32479?\u36820?\u22238?\u20102?{\f1 227.0},\u35797?\u35797?\u21035?\u20154?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 >>> pipe.zscore('osrc:user',"dfm")\line +\line +>>> pipe.execute()\line +[425.0]\line +>>>\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u30475?\u30475?\u20027?\u35201?\u26159?\u22312?\u21738?\u19968?\u22825?\u25552?\u20132?\u30340?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 >>> pipe.hgetall('osrc:user:gmszone:day')\line +\line +>>> pipe.execute()\line +[\{'1': '51', '0': '41', '3': '17', '2': '34', '5': '28', '4': '22', '6': '34'\}]\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u32467?\u26524?\u22823?\u33268?\u22914?\u19979?\u22270?\u25152?\u31034?:\par} +{\pard \ql \f0 \sa180 \li0 \fi0 {\pict\pngblip\picw520\pich380\picwgoal5220\pichgoal3820 89504e470d0a1a0a0000000d49484452000002080000017c080200000025c5d47e0000012f694343504943432050726f66696c6500002815636060327074717265126060c8cd2b290a72775288888c5260bfc0c0c1c0cd20cc60cc609d985c5ce01810e0c3000479f979a9201a157cbbc6c00812b9ac0b320b558e208f2bb9a0a804a8ea0f101ba5a416273330301a00d9d9e525054071c63940b648523698bd01c42e0a0972068a1f01b2f9d221ec2b20761284fd04c42e027a02a8e60b487d3a98cdc401622741d8322076496a05c85e06e7fc82caa2ccf48c12052303030305c794fca45485e0cae292d4dc6205cfbce4fca282fca2c492d414a05a88fb40ba1804210a4121a661686969a10916a522018a0788719f03c1e1cb2876062186b028b9b4a80cca636432666020c4479831478281c17f290303cb1f8498492f03c3021d0606fea9083135430606017d06867d7300c3af506fec25acb40000000970485973000016250000162501495224f00000019d69545874584d4c3a636f6d2e61646f62652e786d7000000000003c783a786d706d65746120786d6c6e733a783d2261646f62653a6e733a6d6574612f2220783a786d70746b3d22584d5020436f726520352e342e30223e0a2020203c7264663a52444620786d6c6e733a7264663d22687474703a2f2f7777772e77332e6f72672f313939392f30322f32322d7264662d73796e7461782d6e7323223e0a2020202020203c7264663a4465736372697074696f6e207264663a61626f75743d22220a202020202020202020202020786d6c6e733a657869663d22687474703a2f2f6e732e61646f62652e636f6d2f657869662f312e302f223e0a2020202020202020203c657869663a506978656c5844696d656e73696f6e3e3532303c2f657869663a506978656c5844696d656e73696f6e3e0a2020202020202020203c657869663a506978656c5944696d656e73696f6e3e3338303c2f657869663a506978656c5944696d656e73696f6e3e0a2020202020203c2f7264663a4465736372697074696f6e3e0a2020203c2f7264663a5244463e0a3c2f783a786d706d6574613e0a8a15bb0f00001e1e494441547801eddd7f6c94f77d07f03371e24bd360b2a69075a9599bc2b40dd3aec5d922406a4ba675018d61aa3573b42aa56a52b32d25dd3415addd92fe22aaa292a51b1e89c2ba69f1d26980ba25e93f9076c3345aa0a9149349c5fd314827d52c6d316b9223017b77e71ff8b081e7e0eeb9ef73df174270f7dcf79eefe7fbfadcddfbeeb93bbbe5c5e323397f0810204080c0a4c09cc913fe2740800001022501c1e0764080000102150282a182c31902040810100c6e0304081020502120182a389c2140800001c1e0364080000102150282a182c31902040810100c6e0304081020502120182a389c2140800001c1e0364080000102150282a182c31902040810100c6e0304081020502120182a389c2140800001c1e0364080000102150282a182c31902040810100c6e0304081020502120182a389c2140800001c1e0364080000102150282a182c31902040810100c6e0304081020502120182a389c2140800001c1e0364080000102150282a182c31902040810100c6e0304081020502120182a389c2140800001c1e0364080000102150282a182c31902040810100c6e0304081020502120182a389c2140800001c1e0364080000102150282a182c31902040810100c6e0304081020502120182a389c21408000815604cd2170f89bc33f38f0e3a0d6f29e3b165f71a51b58503d510c8144025e3124623288000102f1080886787a6da50408104824201812311944800081780404433cbdb6520204082412100c89980c224080403c0282219e5e5b2901020412090886444c06112040201e01c1104fafad9400010289040443222683081020108f806088a7d7564a8000814402822111934104081088474030c4d36b2b254080402201c19088c920020408c4232018e2e9b5951220402091806048c46410010204e211100cf1f4da4a0910209048c0ef5149c414fea0c255274ebde94450759e6e3995cbb98105d513c5104824e07e9b8829fc41dfbf7af0c96b1f0faace77cf7930a87a144380404201879212421946800081580404432c9db64e0204082414100c09a10c234080402c028221964e5b27010204120a0886845086112040201601c1104ba7ad93000102090504434228c3081020108b806088a5d3d6498000818402822121946104081088454030c4d269eb2440804042013f12232154e8c3def16aeedadc1b82aab2757434a87a144380404201c190102af461bf54f8bfb7ffcff34155391254358a214020b180434989a90c244080401c0282218e3e5b25010204120b0886c45406122040200e01c110479fad9200010289050443622a030910201087806088a3cf5649800081c402822131958104081088434030c4d167ab244080406201c19098ca40020408c4212018e2e8b35512204020b18060484c6520010204e210100c71f4d92a0910209058403024a632900001027108088638fa6c95040810482c201812531948800081380404431c7db64a0204082416100c89a90c244080401c0282218e3e5b25010204120b0886c45406122040200e01c110479fad9200010289050443622a030910201087806088a3cf5649800081c402822131958104081088434030c4d167ab244080406201c19098ca40020408c4212018e2e8b35512204020b18060484c6520010204e210688d6399b55ce5ffbe7cac307ab2967bbcb47db5b65cf6f357bde9d2f6e1da04081038232018ce58243cd5ffdd7f7cfec787120e4e61d81b5f37ff73bf7e5f0a139982008148041c4a8aa4d19649800081a4028221a994710408108844403044d268cb244080405201c19054ca38020408442220182269b46512204020a98060482a651c0102042211100c9134da32091020905440302495328e00010291080886481a6d99040810482a2018924a194780008148040443248db64c0204082415100c49a58c234080402402822192465b26010204920a0886a452c6112040201201c11049a32d93000102490504435229e30810201089805fd4d3248dfeaf398b47e6fe4e508bf9e5b1d62b832a483104082413100cc99c821ff5ad57177ef5c57c50656e6fb93ca87a144380404201879212421946800081580404432c9db64e0204082414100c09a10c234080402c028221964e5b27010204120a0886845086112040201601c1104ba7ad93000102090504434228c3081020108b806088a5d3d6498000818402822121946104081088454030c4d269eb244080404201c19010ca30020408c422201862e9b47512204020a18060480865180102046211100cb174da3a091020905040302484328c000102b1080886583a6d9d0408104828e017f524843a33ac77e495d19f16ce9c6ff4a99657032aa6d118e62740a0060282a16ac479afbd72f9cbc7abbe5addae70fab22b7f56b79ddb310102110a38941461d32d99000102e713100ce7d371190102042214100c1136dd92091020703e01c1703e1d971120402042016f3e47d8f4f496fcedff7db6efd05fa7375f829936bdfd4f7ee5e77e35c140438216f8b7fffeeabffde0ab419578fff207e65e3137a8922eba18af182e9ace15091020d09c0282a139fb6a55040810b86801c170d174ae48800081e614100ccdd957ab224080c0450b78f3f9a2e95cf1c202578ce57eaef5aa0b8f4b7144ebe8588ab3998a402605044326db9695a2979e3cd977e47b4155fbb3b7bd7a3aa8821443203c018792c2eb898a081020d05001c1d0507e93132040203c01c1105e4f5444800081860a088686f29b9c000102e10978f339bc9e3451453fcbe50baf5f14d4824647f36d4115a41802e1090886f07ad244153d3ffa96ad3fb93da8057d22777d67500529864078020e2585d71315112040a0a10282a1a1fc262740804078028221bc9ea8880001020d15100c0de53739010204c213f0e673d53d39daf64bb9b901b98d5d79cd1bab5e842b102040e09c02013dc09db3c6c02e78e4a59b9e7b71493845cd9f7bc5d670aa51090102d917702829fb3db402020408d4544030d494d3ce081020907d01c190fd1e5a010102046a2a20186aca6967040810c8be8060c87e0fad800001023515100c35e5b433020408645f403064bf8756408000819a0a08869a72da19010204b22f2018b2df432b204080404d0504434d39ed8c000102d917100cd9efa115102040a0a60282a1a69c7646800081ec0b0886ecf7d00a081020505301c150534e3b23408040f6050443f67b6805040810a8a98060a829a79d11204020fb027e514ff67b680504e213b8e9e4d8e2d75e17d4badb4e9dca5d115445175f8c60b8783bd72440a051026f3af9d20dc7bedfa8d9679d77a4a565d6ed59dce8505216bba666020408d4514030d411d7ae091020904501c190c5aea9990001027514100c75c4b56b0204086451c09bcf59ec9a9a09a427907f665bebb1c1f4e6bbd04ca3575ef3f2aacf5f6894cb2f4940305c129f2b13687a81392f1dbbecf8917096d9f2da4be114d3ac953894d4ac9db52e0204085ca48060b848385723408040b30a088666edac75112040e0220504c345c2b91a0102049a55c09bcfcdda59eb22d0cc02bb4eadfcdae80d41adf0f363af6b0faaa04b2846305c029eab1220d02081932dadc74fb53568f2734cdbd23c07609a6725e7e895cd04081020509d8060a8cecb6802040834bd806068fa165b20010204aa13100cd579194d800081a617100c4ddf620b24408040750282a13a2fa3091020d0f40282a1e95b6c81040810a84e403054e765340102049a5e4030347d8b2d90000102d5090886eabc8c26408040d30b0886a66fb105122040a03a01c1509d97d1040810687a01c1d0f42db64002040854272018aaf3329a0001024d2f20189abec51648800081ea040443755e46132040a0e9050443d3b7d802091020509d8060a8cecb6802040834bd806068fa165b20010204aa13100cd579194d800081a617100c4ddf620b24408040750282a13a2fa3091020d0f40282a1e95b6c81040810a84e403054e765340102049a5e4030347d8b2d90000102d5090886eabc8c26408040d30b0886a66fb105122040a03a01c1509d97d1040810687a01c1d0f42db64002040854272018aaf3329a0001024d2f20189abec51648800081ea040443755e46132040a0e9050443d3b7d802091020509d406b75c38d2640a06e022ffdfddf8fbef4b3baedbeea1db7bef56d57beefb7aabe9a2b645f403064bf8756d02c02af1e3c38367222a0d59c1acd098680fa915e290e25a5676d260204086442403064a24d8a244080407a0282213d6b331120402013028221136d5224010204d213100ce9599b890001029910100c99689322091020909e806048cfda4c040810c8848060c8449b1449800081f40404437ad666224080402604044326daa448020408a4272018d2b336130102043221201832d12645122040203d01c1909eb599081020900901c19089362992000102e9090886f4accd448000814c0808864cb44991040810484fc02fea49cfda4c8108fca4f0934f3cfda78114335ec6efbeb5fb96856b822a4931310b78c51073f7ad9d000102b308088659506c22408040cc028221e6ee5b3b0102046611100cb3a0d84480008198050443ccddb776020408cc2220186641b189000102310b088698bb6fed04081098454030cc8262130102046216100c3177dfda091020308b80609805c526020408c42c201862eebeb5132040601601c1300b8a4d04081088594030c4dc7d6b274080c02c02826116149b08102010b3806088b9fbd64e800081590404c32c2836112040206601bfa827e6ee47baf62b46c76ebc627e508b7fd3a8a768413524f6620443ecb78008d7fffab1b13ff9c173412dfc95f65f7b35a8821413b780e72971f7dfea09102030434030cc20b181000102710b0886b8fb6ff5040810982120186690d840800081b8050443dcfdb77a020408cc10100c33486c20408040dc028221eefe5b3d01020466080886192436102040206e01c11077ffad9e000102330404c30c121b08102010b7801f891177ffad3e2481b9efba66ece5b6702a9ab3f0f26231036dcb5fba7a6138555d9ebfea37c2a9a6492b110c4dda58cbcaa0c0bcabbf3ba7f5783885bf7af535afe4724fbdf4d66ffff8da70aa7ac355970b867ab7c3a1a47a0bdb3f0102043226201832d630e5122040a0de0282a1dec2f64f8000818c0908868c354cb9040810a8b78060a8b7b0fd1320402063028221630d532e010204ea2d2018ea2d6cff040810c8988060c858c3944b8000817a0b08867a0bdb3f0102043226201832d630e5122040a0de0282a1dec2f64f8000818c0908868c354cb9040810a8b78060a8b7b0fd1320402063028221630d532e010204ea2d2018ea2d6cff040810c8988060c858c3944b8000817a0b08867a0bdb3f0102043226201832d630e5122040a0de0282a1dec2f64f8000818c0908868c354cb9040810a8b78060a8b7b0fd132040206302ad19ab57b9042e596074ace554eb9597bc9b5aeee0b5b1cb6ab93bfb2270690282e1d2fc5c3b83023f6db9fa0f5efe645085ffdee8cfaf0daa20c5c42de05052dcfdb77a020408cc10100c33486c20408040dc028221eefe5b3d01020466080886192436102040206e016f3ec7dd7fab0f49e044fe17e6b4bc3e9c8a5ebdec9acbc3a94625290a088614b14d45e0bc027f78e20f465e397dde21a95ed8356fdea65427345928020e2585d20975102040201001c1104823944180008150040443289d50070102040211100c813442190408100845403084d20975102040201001c1104823944180008150040443289d50070102040211100c813442190408100845403084d20975102040201001c1104823944180008150040443289d50070102040211100c813442190408100845403084d20975102040201001c1104823944180008150040443289d50070102040211100c813442190408100845403084d20975102040201001c1104823944180008150040443289d50070102040211100c813442190408100845403084d20975102040201001c1104823944180008150040443289d50070102040211100c813442190408100845403084d20975102040201001c1104823944180008150040443289d50070102040211100c813442190408100845403084d20975102040201001c1104823944180008150040443289d50070102040211100c813442190408100845403084d20975102040201001c1104823944180008150040443289d50070102040211100c813442190408100845403084d20975102040201001c1104823944180008150040443289d500701020402116879f1f84820a5d4bb8c1bdff96b3599e2f43bd68fbde12d35d9556d76f2f24f5b9f7ee4f45b968fbdf5a6daecb0467bb9ecdfbf3436effad1b7afabd1fe6ab39b39cffe73cbcb3f39bde2a3b5d95d8df632e7bbfbe61cf9cf53c5aada5e5fa35dd660372dc70e5f36f8afa7dfbe6eecda1b6ab0bb5aede29513addf7ce8f42ffec6d80d2b6ab5cb9aece7b2fff89b96d75ea9c9ae8a3b79e6d96fd76a5717b11fc1701168ae42800081fa0a0886fafada3b010204085425e03d86aab80c26408040f30b0886e6efb115122040a02a01c1501597c1040810687e01c1d0fc3db64202040854252018aae23298000102cd2fd0dafc4b0c6c8585c2f0d0c1c1a1a3474f1472b97cfbfc8e8e259d9d1dedf9d4cb2c0c1f1d3e599a353fbf63c139a72f1c3f7aacfc4d97f605a9155918193e3652d4b9c09ff91d0bcf59f605ae5ac5c513c5b4b5772c985779b5c2c8d1e112cd6c178ddbb6cf5f58ffc64ef5b1b2bab3cea5d8be33334fdd78ce6c9a7eeabc37bce903eb71ba50181a3a3078f8e88991e29da06dee828ececece451d67b5b81e1367639f117d8f21808614f6efb87bedc7fb6756b26ecbe35fea5d99c2c3dcd4d485c38f5e7fe3c6f1b39fdd77e4a39db3df25f66f6e5fdb571ed5b9ed87fb6e4ba7c2a1fed5376d1c982af55c27eedf377c7b67dd2b1adcb1e23d1f1fcce5ba9ffed1df2d9a3e5be1b9775fb7f250a9b8de678fdfd731bdcac281775f7773f1a2758f1c7878fde2e997d4fe74e1b9b5d7addc7fc1fda6d8bea95a2ed8c7fb9f19be7df174d3a9abd6f7c4d1811d1f5c7377b9779513756f797adbc68a2e575e1ecf398792d2ebf5c1ad374fa5c2ba9e4d9fdab2e5ae9e89af6eeedebce67d5b0fa4574a69a63377c84ff60dccfefcbcf0dc97c753a1383ccdbb4b5bc5c3ecb958e6b69deb925a6eefe8da50deddaec1a31548238303938f2c7d872a2f2a0c0d8e5fb4ae2bd1422eaddcfcfc24d74fb37d53f55ca88f73a746a678626460db3b2753614977cf5d7fb9e5539b7a26e6dfb5f9a6dfdc567e819c6241414e2518d26acbf09ef7dd5b7ce2597ceab9f5d91f8d3cbcedde8ff56efc8b6d4ffcf03bfbee2c9770e8de9bf7563ebea455592ed7df7768b67bc3f0c19dbba78a383675aaee2716adef2bfea496a9bf3f7c665b79caeeaf1f39b3b17869772a4f36db172d5b5e9efea9c1e1e92b1f1a7862eaec93072a2f3ab0b37cd1a6251d67d2776a708d4fe4173f3ccdeac5e3471eea2ecdb0fc8bfba6004b2776acaf7f29e75ad98ab31a3755583a1dac2cebc85fadd95cded2fdd5e786bfb1a3ef2feedef8b17bfa5efcd1e1877a3b4bdb07377f61cf91caabc4784e30a4d4f5c2c8f8436fe757b66c98fe70915fb0f473cf3d3a5ec40b090eacd7a7dc812f0fccbc3314f6dff740ae7c67a9cfa4c9f73af198964fe525c2d965e53bd6955fd73db67770da4b86e1fdf79e39d8f5d8de83d32e3a7e6857f9a2de9b5378bd7076b5932f04e7e71b170467d734bf318d3bbb8cf2f9c2c917caffdff5f87dcb2bef87dd5b1e9d788a7674b66749b3eead79370a86947b3b78f2e4b4c790f1c93bbabed4b36249f13178c625a915f7d87d7bcfbe370c0fdc517c7c1bcc2d5f114438a4463163a279efea2e3f09ef1f38f3aa69f8f0674ae37abff278f9d54cff9e17a67a5738fa583917ee5a5de7771766146a431281f1671727677912b670dd177b9774e6e6e7ca9fc948b2afe61d2318d2eeed0797f63e397864ea61a43cfd82dfdff6c4378e0fdcde35fb3bc0f52cb1f3fe4777940e950cdebdbff240d6d0def2eb98ee6d7ff6a1b07e86653d3566dff7a2ae9bcb17f40d4d120d0fee296de9ee5abeacebd6d2a9fea977208a6f3094df0aee5cd5b9a074893fc51731e1bc7ac94d3cea6fbf6de95f3df1dc59e9b06cc37ddfd837f2f0862e4d130c29dd06f28b578d1ffccde5767d70e5d2ebe7b57f64e35ffed3ce3d8387872b4322a57a26a7199cbb68d99de5f7deb63f71787263f1ff23ffb47157f1bfbb36ac787348f7ea6915a67732bfa8735d79b6fd87c7df4b281cdafb4071c3adab3bf3f98ef7965f4e7cede0d1f1825e18cf8cce9e25ede95518f64cfdc5dbf9fe3d7bf64efbfbe413fb264336dddaf38befda566e582ef799db56de705dfbda0dbd7fdbbf73ffe0e1b34222ddb2829b4d30a4d69279dd3b8efcc396c9cf3fe472bbfb1ff8e30faf7fcf8d8b8b21f147f7ec1c3afb504e5a85e5172cefb9a738d9fecdfd138f6db95c6170e0c1d2fc2bd62d5b982b34aab2520541fcc92f7e6ff955d35303e342c34f953facf5ded2878ef2cb56977ababbff4039e00b83fda5405dd2d32517a67af7e087d7af7dfffa0f4cfbfbc1dbd63c35d49867449d3d7d5f7f74cb92c9e2f6efeaffe4c60d6b57761543e2dd1bb6ee3f7c7cf292a8ff170c69b67fde2dbdc5cf3f1c797adfe30f7df19e75d38edd3ff6c0869b16ae68c8a7928a6f79b42f5b5d7e46dcf7e4e0c4bde25bfde5af38f4f416bf27e0806be9d1bfa7f434f3d003074b2f198e1edc5ebad5f42e2bbf7b39bf6b75e9dc407fe981ae70f86be537186e5db1a8b4d19fb240f153a177f6f4dc3aedefbaeede45893e665b0fc17ce7ea8ddf383efcfc33fbbef2c8d63bbbcf1c293db4eb9eb5372efcb44f25e572adf580b7cff309e4e72dea5c59fcdbbde1ee870b85a34307766f5df399d2b3ccc10f2cddf1bde31b1bf04c33bff8f64d9dbb1f182c7ea1e1f66d6bf2935f5ff86cef99fbccf95614c1656f5e567c9ba1d8a49d2f14ee3e79a0fc0643efeaf10f1de53b3a8b9f66d99e1bf8d650a1b37da8fc01df15cb17a5ff7651b06de87e785b5f43be47715e91fc82c54b8b7f57addff0b91dc52fb11fdebb73eb1df796ee870fbeffb65547069637e07e78de7ad3bdd02b8674bc0b07fbb7fef9e6deb33f155a3c44ddb9f2633b86bfb269fc933f071a73e035977b57cfdd2588febee2d3de9189af2ff4de728eaf43a74316d42cf98eaef28baac14343870fed2d7d777dda878e16de526edfeec1c34383e56f29aee809ef71b0919c8d396634db8a870f3cfae79b3ff1e91dfb2a4bcab7772cedbefbef9efd974de52b0d1e6dd4fd70b69a1bb24d30a4c43ed47fcff6befe2f1f183f487dd6a4f9e5eb378c6f6ad41bbdf9c52b3e55aa6060f7de037bfb1f289e5abea5a7111fc31f6708efdf7cc76f97dfb3dcddb7637b29172a3e74f4b69bd71737edefeffbf2ced281a4753d5d8dea637870a58ac2d13831b4677b5fdf831f1f9cf50069c78af5e35f66cc35e41b3321354f30a4d38d7cc7b2d26b8243f7aed975b8f2c94a79fe6fedd9395ec72c97a553606ec12de54f6b3c78dbcd77941ef87277fa187e857cf1c074e94de6e2a37fe9d3a8951f3a5ad0b9acf466e640fff65da52fb7fff632915a6408f1cfdc8ea5e5b2367f61e7f4cfe04d943a72706ff9a3c621569e724d822125f0896335b9dc1d372ef8dbd207a82722a0307264ef8edeb5e35fa3ed5ed3c043108b564dbc6a2989746eadf85e684a48414ff3e6cee2db0c137f967f6845c521e8f6ce5bcf7c0bb0a773fa576a27afe2ff1004162c5b7d6bb98eed1feefa48dfe347273fa35a281c1fdcb3e38635f7942fec1eff5841080537aa06c190927c7ef1faa71fe91d9fec93a50f502fb8765e7bf1eff50b977e60e2e7adf67c7d5b037fa04d2eb7a06bf29b16b93b3fb1aae2812f25a40b4cd3b89753a5c28a6f078d3fa6144fdfda75d6b79ae72d9ffc7988b99ed5bef931d9c8c9673f93e71bff7f7ef1fdcfec182f63f7e6dbdeb970f26e78ddc2f7bcbffc365b2ef7d0335b1bf8fcacf144e50a04437a8d58b4febeef3df3f85ddd679e5b4ecd7de717773effa3befaff0ce9a9098b8f73138ffcd37e61407ed5867bca23ba6f5db5706a68dbf8c8867db870aa9046fff49fe277d926be85d2b36cc623c7a2151397dd59fcd6db54c98d3bd116c051f2b6fcf877bfcffddb3e1ae1537c8af6e291035fda34f135b7e9252cefddfaf5ef0c772ff689b29cdfc730fd8691d2e9e2ebd6916323270ac537c0dada16b4cf6f9f17c243494a8b370d8140040ac59f6c59fc9550a5f7a1dbf2f3e7cf9fd7e8a71e81b894ca100c013543290408100841c0a1a410baa00602040804242018026a86520810201082806008a10b6a2040804040028221a06628850001022108088610baa00602040804242018026a86520810201082806008a10b6a2040804040028221a06628850001022108088610baa00602040804242018026a86520810201082806008a10b6a2040804040028221a06628850001022108088610baa00602040804242018026a86520810201082806008a10b6a2040804040028221a06628850001022108088610baa00602040804242018026a86520810201082806008a10b6a2040804040028221a06628850001022108fc3f93375660613a18c30000000049454e44ae426082}\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u30475?\u30475?\u20027?\u35201?\u30340?\u20107?\u20214?\u26159?\u65311?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 >>> pipe.zrevrange("osrc:user:gmszone:event".format("gmszone"), 0, -1,withscores=True)\line +\line +>>> pipe.execute()\line +[[('PushEvent', 154.0), ('CreateEvent', 41.0), ('WatchEvent', 18.0), ('GollumEvent', 8.0), ('MemberEvent', 3.0), ('ForkEvent', 2.0), ('ReleaseEvent', 1.0)]]\line +>>>\par} +{\pard \ql \f0 \sa180 \li0 \fi0 {\pict\pngblip\picw538\pich538\picwgoal5400\pichgoal5400 89504e470d0a1a0a0000000d494844520000021a0000021a0802000000e9db73710000012f694343504943432050726f66696c6500002815636060327074717265126060c8cd2b290a72775288888c5260bfc0c0c1c0cd20cc60cc609d985c5ce01810e0c3000479f979a9201a157cbbc6c00812b9ac0b320b558e208f2bb9a0a804a8ea0f101ba5a416273330301a00d9d9e525054071c63940b648523698bd01c42e0a0972068a1f01b2f9d221ec2b20761284fd04c42e027a02a8e60b487d3a98cdc401622741d8322076496a05c85e06e7fc82caa2ccf48c12052303030305c794fca45485e0cae292d4dc6205cfbce4fca282fca2c492d414a05a88fb40ba1804210a4121a661686969a10916a522018a0788719f03c1e1cb2876062186b028b9b4a80cca636432666020c4479831478281c17f290303cb1f8498492f03c3021d0606fea9083135430606017d06867d7300c3af506fec25acb40000000970485973000016250000162501495224f00000019d69545874584d4c3a636f6d2e61646f62652e786d7000000000003c783a786d706d65746120786d6c6e733a783d2261646f62653a6e733a6d6574612f2220783a786d70746b3d22584d5020436f726520352e342e30223e0a2020203c7264663a52444620786d6c6e733a7264663d22687474703a2f2f7777772e77332e6f72672f313939392f30322f32322d7264662d73796e7461782d6e7323223e0a2020202020203c7264663a4465736372697074696f6e207264663a61626f75743d22220a202020202020202020202020786d6c6e733a657869663d22687474703a2f2f6e732e61646f62652e636f6d2f657869662f312e302f223e0a2020202020202020203c657869663a506978656c5844696d656e73696f6e3e3533383c2f657869663a506978656c5844696d656e73696f6e3e0a2020202020202020203c657869663a506978656c5944696d656e73696f6e3e3533383c2f657869663a506978656c5944696d656e73696f6e3e0a2020202020203c2f7264663a4465736372697074696f6e3e0a2020203c2f7264663a5244463e0a3c2f783a786d706d6574613e0afe04f17100004000494441547801ed9d09781e5779ef3f59bbb559b22c4b8e23dbb1122f49488863b29bdc5020f4164a439f5b5202a55ccad2f669435ba05ca017d284b6f402690bbd10285c08049a26697042c90e8ee36c8eedacb6ecc88be44dd6be5ab236dff7f328a34fdf3a33dface7fcfce84966ce9c39cbef3da3bfcef69e829e81c118ff20000108400002f9115890dfebbc0d0108400002108813404e68071080000420e00201e4c4058824010108400002c8096d0002108000045c20809cb800912420000108400039a10d4000021080800b0490131720920404200001082027b401084000021070810072e2024492800004200001e484360001084000022e10404e5c8048121080000420809cd0062000010840c00502c8890b10490202108000049013da000420000108b84000397101224940000210800072421b800004200001170820272e4024090840000210404e68031080000420e00201e4c4058824010108400002c8096d0002108000045c20809cb800912420000108400039a10d4000021080800b0490131720920404200001082027b401084000021070810072e2024492800004200001e484360001084000022e10404e5c8048121080000420809cd0062000010840c00502c8890b10490202108000049013da000420000108b84000397101224940000210800072421b800004200001170820272e4024090840000210404e68031080000420e00201e4c4058824010108400002c8096d0002108000045c20809cb800912420000108400039a10d4000021080800b0490131720920404200001082027b401084000021070810072e2024492800004200081221040407302d39333c33de3fd2746272763c5c5b1daa5158b9a166ace84ea43c00101e4c401345e5187c0c0b1815f7defe553a3f3f463c1d29277ffcfb5e53525ead4939a40c07b020c7679cf981cc24a60b8e7d443ffd496a42552d89913133fb9fdb589b1a9b0169c7241208c049093305a8532f94360d7dd3b3365547972fad9a77a323d251c02104825c060572a1342c242e0f4d0e0e4de574f0d8ec9ac464975f5c2f3562d58b2c4adc28d0d4e1c6b2f36522b6b287fdb1fb454d5979e681bfad577f71981c75eec89bdbdd1adec480702ca13404e943771542b38bef9cea1dbbe69965e069e4ec66243bf7de3eabffc644169a919eef862a87bdc7c77e3f5678996c8edd2966a3330d63317612e902b084020030106bb328021385002633ffd56a2969865a9fef94ff77de91fccdb7c2ea64ecd98af57d4cecebaf7b4f79b81a50de5e635171080404e02053d038339231101027e1298e9eeeef9addfca9263c5f7be5771e1855922587924f3f04327c68c98fb9fef3ed69afc215cfe7bab565eb2d84a52c48100048400bd139a41e8084cee7ec92c53c9bbdfbde4d147963cf964d5a73f6d068eefc838856ec6c97921a35b679dbfc8f8a96e989d44497c6bd9ba9ac45bae210081ec049093ec7c781a3081f26bae29a8ae91c992e2cb2e338b323d3c645ebb74916612f1febbda5d4a9c6420a00501e4440b3347ab92050be7e6c30f3db445d6779d3e756a72db03662dca5b5acc6b572e163595bfe9fae532ba75cea5f5668233fbfa078ec9f43fff2000014b04d2fc5166e93d2241c03302c56fbaa8e89ce553078e480eb54ffca2fb895f24655579d59549210e6e0fedec3cf8ca315930565adbb0e93dcb8d1464b2a4b2beece587e259cbbfeeceb145cbe66d9837c2f92f0420904a80de492a1342022620435b159ff8b34c8528fae33f96e1af4c4fad870f1c3e7662f74cefee9963db3ac56d97f9e2d917d69ad743c767e7eacd102e2000814c0490934c64080f8cc0d4e1c3839ff94ca6eca7fef55ffbb66cc9f4d44678518519b9ffd89c6c0c9d98db0c5f5e87db2e13121710c8410039c90188c7fe1338f5f0dd89992ebce92659d655d4b2d20c1cf897efc86c8a79ebeca2694d93f9e2fdfff6da9ee77b8fbe36b0e78957b7fee8b819deb06c4e72cc402e200081b404d87792160b814112e84a58c455ffe083866315d18ffe0fffbe31a12285abbbe79ea2b3cfcea79432c0f5c83fbf38d83537cc9594da92b5356ffbc3739302b98500043211a07792890ce1c113985c7daee9a44b26544aaebcdac53215162fb8e2c6b5350d8569d3ac6c2cbff28615691f11080108a425c0caaeb458080c0581e2fdaf4ba7c4f4d035bd7b97bbc592555bd77ef4fc833bfbcca55c927e4d6379cbe54b64c5b0e88dbbd9911a04d426c06097daf68d64ed866ffdebb1077e6514bd6bfd9b577cf84699101fd9f25fd3bff8b5599f86e79e33af5db9109f2b924e517101a766b9c293443424809c6868f4b05779eaf5d7fb6eba294b296bbefad5d2b7be354b041e410002fe13a03bef3f7372cc41a0e8dc73133d7425c596855e684912136e21100602f44ec26005ca908680f451c6fefddfc71e98f3ad527ad555e537bebf64e35bd2c426080210089a007212b405c83f2b01998a9feeea92288535d5ae6c86cf9a1b0f210001e7049013e7ec781302108000044c02cc9d9828b8800004200001e7049013e7ec781302108000044c02c88989820b0840000210704e003971ce8e372100010840c024809c9828b8800004200001e7049013e7ec781302108000044c02c88989820b0840000210704e003971ce8e372100010840c024809c9828b8800004200001e7049013e7ec781302108000044c021c9f65a288c045ffa9fee78e3c79722a565c5efceee6df4c2af1d8d4d86bfdaf1c1f3a3e3935595c547cc1920b57559f931487db999191a98ec3a3e54b4e9e2c1c1b9e3480c8c5d8e0ecb511d27ff46412ab1f55cd3b9dbebeaa6449859cc332f76f6149e18aba72e37ec5e2f285c5f1731ecb4b16acaae7c0f9394a5c294c00398992715fe97de9ef5ff9aa51e2243979a16bdb6ddbbed45f30ef97e0d292d5b75ffbf74d0b9745a9926e94d5d00c4969aab555fe3bddd171fae4c9e9de9ed3dd3d46f2fbaeb979f064693e59f50c4fc84f520a3b3a069342ccdb758d95726dfcd7109bfacae286ea3233021710883a01e424321694aec99d2ffd73dae28a96fcd5d39f8915243f3c31b1ffc38f7ee267d7ffb0b6b436f99942f786788872ccf4f6cc74f7181212b6faede91c912219ff4d2c9b08cc92aa92fa8a12b9a02b934886ebc811404ec26eb27bf6ffe4e5a3af4c4e4f3e33f8ac9475f8a5e1aa8baa920afd77db6f490a316f4f9deefdd1c1fffcf3b51f3143a27e6188877438443ca6db3ba60f779c1e9dd727b352c1eaa9eec1d8722b31bd8e2302b3a7735e26cd8bcb65184dc6cd4460d62f4bb6f5bca8dc40204c0490933059235d59f6f5ed78b26ff65cf493074e766dee4a92930343fb7b27e37ff9cabf9ab225dfb8f26be754af7ef2d8afffe6f9cf1b81bf3af860d4e564fa44d7d4debd53873b26a50bd2de61d44bd5ff76f48ec98f396e26eab2b2aebcb9b67c6d6305d330aa1a5d8d7a2127a1b76361b159c485e72c5cfdc5d5e66deac5450d1b444b247cd3b26bcda703a74e98d711ba98d8bd47ba20327235b5b7d541ff234235cd5e54435dcc38d2651181b9f4ec1a3a2e26132e424200390989213216e3bc9a0db1e6f82caefcdbd9fd5ccf58bf716dfeb7bc68763591846c3fbcfd40cbfe33bd9347cd0817d65f615e87fc62f2e0a1c95dbbe21272660addbbd25674ef8bd58462b0cb6e1dcf0c8e8d3cfc5ab7bc28d262fc202d763112df0b02c8891754dd4cf37757ff0f33b9af6cfff423479f366f8d0b59b8f58ee6b73fd211d78fb1d3bd1f79e2434911fee0bcdf4b0a09d5adcc854ceedc35b9b77572e74e9d7b210e8c62488bf1a2e8ca86e69a0dcdd5ac16734092575c21809cb88231e044dedff241434e52cb7176f5baf3eb2e480d0f3cc4e8884cecdaa9fc5c883fa80d69f9f1f34765438ce8ca35ab6b9968f1873cb9980490131345542f64f7e267b67c3253e90f0fedf9dfbbbef6d58d5fc814c1e7f05d3d3bea9fdc5df9e8d3c17644aadab6c7365ce773ddfdc94e76c3c85098fc2c2c2dbc34de5fa9b974c5227fb22617cd092027916f00dbbb9eea991e35ab71f9d22bd6d6ae7fa673dbde81f80e3ef9f7fcd15f1e5873a331456f84f8ffdff6a1434f1c7becc59e5d639363ef193beb4afb4b7bfd2f73d4733c796afac9d7fbe4472a22a2b2e9dc3a7425ea360d79f99193901b2877f19e3afa8819e996b7dc66ace9faf0da8f7c65e797cc11b057075a039193ee935d8f9f5191beb15eb390bbea06af346f82bb282c3a3d3d95b2f333b8f2789ab32c3b961fa3bf724d4bddfa26b6b378ca5bd3c49113a50c7feea2f3ccfabcb97ea3292766a03f17a2222ff5bef8f4896d47860fa7e678b86c64bca9aeec78fcafe600ff55964c0c4ee5e56725c0c23bcbdaecaf30bfe20c206f6527809c64e71389a70bcc52f68df7991eba4e9cdc6b86fb73313a31125791ce6dfb067264ddbab6f2e2a0e5c41f26e1ccc59c5f912d2cef5ab7e492e6eacab2b9ed4de12c33a50a3f01e424fc36ca51c2f3ea363c72f42923d2cdbffaec872ff8f0e2f28aa3fdafdd79f07ef3cd0b16ad35afbdb83006b564c246a646aca4bfad71f0622bf1bc8c53189b8ac5f4ea9da4e2943d92df79aac318047bc7ba7a1683a52222c43a01e4c43aab90c67cdbf2b7ffecf51ff68c0f48f9260b07bebbe7f6a482beadf97aef264e5afbf73c71243ec79e9469f6db308c77554cf5f7c5701d1f37943908269b5736b5d46d3a6f7176f3f114026909202769b18436706e5ccb2ca2780bfeeb4bbef4574fdf6c86245e9cb768ed9f9effa78921ae5c1be35a9bdb7f9e38c76e2b65c6bb6ce1f227b2b179e5ceed4765bafefa75f5ec88f407bb32b92027913265e1acb795a4425fdab0f1a7eff88f7bf7ffc73dfbef361fd5972f797fcbeffff715ef4ef4c2623e757c21e35a0f766c3696fc3a4e445e7cb9fe64b0e35d855396c6e5f2a96344df95ce8ab17345d616ffce454b119588dad1ff6217f40c643cf0c7ffd29063fe04c4c1b024221262cec9e79fa691828c6b3d786873ce6976ebd9fdedfd0b8bfb87adc77737e670cbc6d61a1b3b19934e6374b730614e4d46c06e7873236b8bc36ca390948dde49480ce15a31bc9826715d488cda1e6ba95db13d3039718db8ea09c908d86dbf6c635a45753bbb503fe4c405880a27e1919018c4b6ac3cf9a1ed81c15b303e1cab092cf7c8656c4cabdcfb52e7fb2e6a64ae3e72e6f3a7c00c76f9c3397ab9782a24268e60c7bbb66ff8ac59929c17da0e76a592915d90884a2a1642e89dd0069209f8232446ae8c7725d38fc2bdec8294dd2a4fb6f531a7120573f95746e4c43fd6e1cfc94f213168bcde30bd22382e5ab9ed721db339a782a8b8ce36a209222711359ccbc596e5bf3fdcfb0317576d592cdf630d9dffadaca4707cc2627c77a369e8b6cb5d80929a292a1f78cb3236d5bb8e375a092227d1b297fba5950d890f746c7ee2f063ee276d2dc5ee354b1b5f4ae329d2dadbc40a050111952f6cde27fb543eb07119eebf426192200a819c04413d34793e7dfca97fdfff538b8eb63c2af5abcb671a5ff228ed1cc9e2b62b07209b8fe56c95173a06af5fb7e47d9734d97c95e82a10404e54b0a2833ac834c9ddfb7f96d681bc83d4f27925c0f12edc76e563b8b4efca8efafb5eec7c727fdfc7af6e66e7635a440a0722270a1b377dd56474ebee033f7be6f8d3e91f07113ab4b2beb6f558103993a7270464e997b1f3f163579f8d8f164f108732d1342e0543594e0ae50e81cd07efff5fcf7f36545a2215dbb322983f6b70dbe54eabca908a4ca87cea9e3df7ee3c9ee139c1aa1108e633568d6214ea23a35bff6feff71d3b00f6b48a5b96760572dc6f59ffe158cdb99e568dc419fbd2a70dd03b51dfd632baf5b3b6bbbefee23f86534bc400838593fd6b97a96f095d6b688c7dfde8b92323e393ba32d0a2def44e143773983b2589e865bcebcad6c4003fae8b078ee3b6cb0fd067f210a7f75bdbfa643665e38a5adf3225233f0920277ed2f635afc03794d8aa6d20e35d653d4762016ecab7054889c8b2eeebf6c70f6d68ee1751617b8a12269d570906bbe6e150e6463a257fbbf3cb016e4eb44b52c6bb46562db5fb16f1a3486047c7e0a7eeddb3bdbd3f8a85a7cc5908d03bc90227928fa2d5294944dcb6b2f4e28389017e5c9796ce9c3ac51f557ea04eccc3e8a66c3a77885df48958a27e8d9c44dd82f3ca1f95999279857ee3665be3a0ffc7fd96154e9e8a95be5104feef2b01d945bfbb73840d8fbe42f73233fe2ef392aebf69877cf9564e1887cb46c69bea724623824a048c455fec4d51c3a6c8890a76147fc0b7bcf0bf23345392097aebdaca4c8f3c0a2f3d7dd2a39449d63a01d99bf2b99fb71eec19b5fe0a314348003909a151ec156957f78e5b777e390cdeb7ec953b5d6c19ef4a17ec6158e934bfc23cc46b3de98edeb1af3cbc7fcbde1eebaf10336c04983b099b45ec95479ca63c7868b3bd77421c5bc6bb266bab8afb87435c468ae61501999fbf63dbe1f681f10f5db6dcab3c48d74b02f44ebca4eb65dab282ebffecfa0795b4c4a025c7fd7a892d39ede2b1bee420ee032520bb1d65e0ab6b683cd05290b91302c889136a81bfd33e74483c39fa7f78a20f15dfb2d2d7c98c921146577cb0aabd2c64e0ebf30fecdb7d9c4eaa3d6e81c7464e023781ed023c76f891db76dc12ec9957b60b6df985dd95fd32de65393a11d52420035fe2e29e155fd1b22e7212257bc900d7bfbef22f77b7fd2c4a85b65f563fc7bbe26ebbf8175602b2e2ebeb8f1dc0716458ed935c2ee424994868ef6580eb6b2fffe38b3dbb425b42b70ab66bb97f7e67e36ebbf8176202e291e5b687f73395126213cd150d39996311e62bd192afbffc8f6aac06cec9f9d9455dd3652539a311411302c6540abb52c26f6ee424fc368a6d3bb655b444d5c992b406e85ee39f3b4871db95b60c048687804ca57c61f33e76a584c722694b829ca4c512a240d1921feefd81565a22f45f5deedfaf7871db15227b5394cc0464570a93f399f104ff043909de06594af083d6ef89966489a0eaa3c71a3a19ef52d5b8f9d44b26e7bfb3b59dc9f97c187af72e72e21ddbbc5296455ca225cf1c7f3aaf54a2fcb26fe35db8ed8a5633113fc432398fa284d06ac849088d12132d91455c3a6b8958e54063813fb6c16d973f9c5dcc4526e751141779ba951472e21649d7d23116046bb2882b0b3539ee37cb531e694ec05014967b85aa192027a132474cab05c1d9d1cb71bffd6b97658fe3cad3f201b69eb802d2ef444451c409318ae237f7ccf9212799d9f8fec4d012dd167165c1bc67851f1eaf174cfaea252c4b7d796497802c204651ec42f32e3e72e21d5b7b29a325a9bc18ef4a65424812014351d892928425905be42410ecc999a225c944cedcfb33de557e7c5fdadc098c0a015114d99282a2046e2fe4247013ccce9730c695d612ed4d9e8f77158dfa7d0464da9a1298270114254f80f9bf8e9ce4cf30af14e89764c7e7ff71bfd9cbc3d33013405182b50e7212247fb424277d39ee77bca92e67b43c2354944de59902af8784008a12a0219093c0e0a32516d1b7aeadb418d371b4a205d38edfe5c5b011405182b20872120c79b4c43a77c6bbacb322a641004509a425202701603fd9b75f3787f3f950f661bc6be10cb3f1f998288ceffef88563ec70f4d930c889cfc0630b7adb1a1ffbeb9b26cbfcce38caf99d58eeed7857d1cc4494f150f63404d8e198068ac741c889c780e7272f5a52f9f8e70a26467fe3e89e3f8ad5ce7fc85d46025b56b2713d231c1e642280a26422e3513872e211d874c98e0f2ddc7aab6889f1cc5094b2059eefab4857948885edaeec9facadf2aed0b8edf28e6db0291b3b1cf166ef8f1590137f38c762e343154f7cae70649e975c51942f0c4fa128566c70acc5c3ce1c6ebbac9820a271f066ef9be190135f509fd192a2be83a9999d3bd089a2a462490d61bc2b9509211609a0281641e5190d39c913a0a5d7cb777d37ad96182fa3285620ca789777c7fde2b6cb8a09221d4714e527db8f45ba0ae12f3c72e2b98dca5ef876c9fec7b36783a264e7633cf5eeb85fdc7659e11ff538722af08f9e3d1cf55a84b9fcc889b7d6296e7ba4b475b3953c4451bed9d9bbbc789195c87ac67975f98c9e15a7d66e117878770f8e87dd82999a0e7292cac4b5105916bcf0d9dbad27573539f6a5a3ed284a26628f35747a37de85dbae4cd8150b970df36c6ff4c8a6c8894760e3db15658b89ddd45194ecc43c1cefc26d5776f40a3d95031cbb86c615aa5058aa829c786389f1a1f2e7be616e31b195078a920517e35d59e0f0c82201d98cf28d5f1d62338a455cd6a32127d659d98829635c599672e54cc850948b4b1a72c6d42dc2f6c5bd1e55b97aaadba3944936840464a1d71d4f312defb265901397814a72a52ffdb8f8c8b379a62b8af2b9832f5f55b234cf74147bdd9fe37e15834675d212d8d13178efcee3691f11e88c0072e28c5bc6b78a3ab695bd7257c6c7361ffcd9c197509424667b56e096260909b70e09dcf762e7f6f67e872ff35a0a01e42405491e0105c3c76d2de5b292158a924469cbd2798e6a929e3abeade8dee7f85d5e8c2e0119f2625ade2df321276e918c7be54af4f0e85eba315194b71733ea354b94f12e179b164919d3f27070850072e20ac67822d93da9e499cd470fbd84437b9321e35d260a2ef22720d3f2ec96cf1fa3a4809cb8823126bbdf737a52c933278e483101eeaa73fff0c4aab6ed66fa5ce84680ddf2ae581c397101a34c9994effcae0b09e54a02453108f970dc6f2e53f05c35021c069cbf459193fc19c63c9a32495b3214c5c0d2bad6dbe37ed3c227506102c6415b0a57d087aa2127f9421687c1f9ec587490bd28caada331cd0fdddad6e8fe7857cdc2530eccc12bca106012254f53222779012cec7cc9a2c3e0bcb249791987f68c77a5340a025c20209328bb8f0fbb90909649202779985dce587cf2d63cdecfeb5514a56375755e04791902e9087ce7a90edc79a503933b0c39c9cd28530cd9b1e8ccc963a604ed866bae28cf368dd825963d3e6ebbb2f3d1e469cff004eebc9cd91a3971c62d26ce54f277cce530ef84d70c45d1f3881439ee77b2b62a01069710708780b8f3c2f98a0394c88903686736c0db3917cb511e565f1245d1f6d0ad632db55631110f027608480785212f3bc0e2719113bbc4e2f1031fe64a2ab4b647a46c59793209453eb7b8edca879e62efcabae1db9f38a458a5bcae0e72629b704886b992caada7a230de95d40cb87591c09ece1186bc6cf1444e6ce10ad7305752d10d4559535a9f14aef66d6ff322b72ab8609c15a26eb154241d86bc6c191239b1852b74c35c49a51745b9e5c0ab5a1d91e2e271bf15475a937872ab390119f2faf1f347358760bdfac889755631d9b41886d55c394bacd511298f35744e9795e4644204083823b0b5ad9f8d8d16d121271641c5a3953ffb0d1bb1038daa95a274af71ed3098c2a2d381da8dccc34840363686b158e12b137262d52672027ce18827e7005a2d81cd78fa288a8be35d9525133631135d7d02b2b19153e5ad981939b14229262ee85d3c01de52966e441245d1e1d02dc6bbdc682ca4918d809c2a7fb067345b0c9eb1efc4621b58f8cced1663862d9a260eed8756bab39ead303615360b529e9010f8c9f3c7425292d01683de496ed3c84693a2ae5772c70b6b0c1d14c5ade37e2ba6fac36a46ca153001b6a1e4340072921351accc9793167397238f18ca2bca96a5519ad6cac392bc1a24811fd341c98a1f39c98a27168bdc0c7ca6fa88a2dc3c55a5eaa15b838593fd6b9765aabbf5f0c2a931eb9189a91b01e6e4b35b1c39c9ca677ca874efcfb3c688d2c32b4ebcfe85e1295515c595f1aeb2fec351b22865f59dc0437bba710d99893a7292894c3cbc7ce71dc19e6892ad708e9e297c440ae35d8e5a042fd923c03ef92cbc90938c7016f4b6951c7822e3e3c83e50555164bc6bbca92e4fb3e0b62b4f803abc2efbe459349cd6d0c8495a2cf1c0f21ddfcdf82ce20f0c45a92baa88783d928bdfbab63239c8e63d6ebb6c02d3343a8b86d31a1e39498b25ee9e2bd28b83d3d72a215414e5abc78e29768ce3b6c6c1842a720901af08c8a2611c79a5c2454e5299c443ca5ebe2bfd038542d53b22e570d948fee35db8ed52a88d7b5895fb76757a987a3493464ed2d84df9ae895967f51425fff12edc7699cd838b2c04e8a0a4c2414e529944c973709ad2db0c524c515eae77f3b85f9b2c89ae17013c0d27d91b394902122b6e7b245a9e83932b60ff5e14e56b875ad538742bffe37e71db65bf0569fa86ec6adcb2b747d3caa7ab3672924ca5f455f5674d92eb7ce65e1987f6c75a6ad356d062206ebb2c82229a10b8efe5137030092027268af885865d93c4faaba1285b5632de956855ae3d24400725112e72924823a66dd7c4a4a080a2e439de553cd667d2e002023909d04131112127268a9838a2d76dd664aef20957a228ef2d72edb8dc8484fdbbcc67bcab6484d170ff2ca5404e74504c232227268a5869ebe6b91bbdaf6e6c8ff6318eaf374ceb6d406aef2b81875af913240e1c39996d76faec35b1f89d45fa88947c8efb2d1e386e1111d1206010e8e81d6393bca0404e66bf081db6c1dbfdf823ad28dd6b1c8ed795f51cb10b8af8106093bcb401e424fe2188f360b53d7439feda0d4589e21129af2e9f715c6b5e84805d02b249be6b68dcee5b8ac5474ee2062ddd7bbf627675b13aa228513c742b9ff1aed252a4c8c516a44b52f7bda8bb172fe424161b1f52f25c13173fe2881e91e27cbcab70d2457a24a50901390745f30e0a72225d131674e5fedea3a828071a0b72578c1810708f80288a7b89452f25e444e4449dd3e03d6d80915314c7c7fd969e665fbda74d49d9c4e5247965eb66a162bacb89785551ec34780b46771e4514e59b9dbd5139744b8efbed5fbbcc416d4ba7471dbcc52b109093e475760aa9bb9c94eca36b62ef9740b41cdaef595164af7ac486407e04b6eed777bc4b6b3989af0fee3b985fe3d1f1ed08298ab3f12edc76e9d8ac5daab3ce2b86b59613d6073bfe82a2a22832de35b2caf67e46dc76396e18bc2804b45d31acb19c8c0f151f798ed6ef9880a128179734384ec19f17db5696fa9311b940c020b0e3f0d0c8b88e6bcdf59593e223cf32099fe7f72f8af2b9832f87fc18c76d8d8376ab89db2ebbc4889f484026e477b4db6e75892944f45a5f396112dead261bf223520e978d8c37d5d9aa2c6ebb6ce122722a013d7d0c6b2a2705c3c799844ffd061c87845c515ad7563aae1a2f42c00101f1317cb047bbe5e69aca095b171d7c21d95f1145797bb1ed49efec69baf5d4c178176ebbdc82af6d3a5bdbb43bd6535339293af2acb6addcbb8a7ff450480fdd92f1aec9da2a5b152fc36d972d5e444e212013f229618a07e8282772521687f87ad4ae437b444a3ec7fd7ac48a64d5262087feea36dea5a39c941c7854ed761c6cedc2a9285b56da73c3b57046c79539c1b61cf5727f78b75e2ebc749413b69b78fddd8650517657f6db1aef2a9a99f09a12e92b4f40b7f12eede4a4a8631bdb4d7cf88c45516e1d8d85ea1847c6bb7cb03b592412900d28dbdb3572e1a59d9c141f7926d1de5c7b47206c0eed772db7b151b97c8013e3bd6b1a1aa5acd57e460de504c72afe7dcca152946717754d979558acfc82497b732d1693259a6e04b41aefd24b4e18e9f2ff630e95a2383eeed77f6ee4a80601adc6bbf4921346ba02f9440d4509c3a15baf2e9fb148a0fcf83e8b31890681ec04f419efd24d4e18e9cadef2bd7a2a8af2a5a3ed812bca630d9d16c7bb8a465928ec5563d02ddd3d2774f1b6a2919cc86159ace90af04b0ec911298c7705d806f4cc5a9ffd8c1ac949c9c1c7f46ccde1a9751814c5fa785745d95478d051924813d0c47f974672829fae307c9086a2ac29ad0faa30db17f75accba68c1b4c59844834076029a8c77e92227e2911e3f5dd95bbc6f4f45516e39f06a50876ec971bffd6b97f9565932828010107ff55d43e3caa3d0454e8a4ebca2bc2da355c1008f48d9b3a2c80a2bdc7659a1441c8b045ed0e07c465de4a4f8309be12d367bffa205a5285b967659a9246ebbac50228e45027b3a472cc68c6e345de4a4a8fbd5e81a49e19207a2288c7729dca2425bb59d1a1c7fa2859cc801272c110eed67268af247b15a9f8bd7de947bbc0bb75d3e1b45f9ec761f1f56bb8e5ac8091327216fc4fe3bb4b772dc2f6ebb42de6c2257bc3dc7151fefcafd379ad7362becdd57f0fa7f4d4d159795178d6ff8786a7625fb1e98e9da1f2b2a8eadb862aae992d40839438aba9887cf0929e008a228b1b3d67d37e693376f39ee77bca9aeecb876a779076c66bdb3577efa247839a9fcc5c78a7af71bcd2cad9c543ef6e98253712f0583c59f8f399313967545e133f659515ad7565e9c554ee26ebb6aae8b0239ca180d02cacb49c0835de53b6e172d79bd37e37e3189606889e3f62213278edfe5459f0988a2dc3c55e5cfa15b39c7bb70dbe5b3f575c84eede993207b2745c7772e7cf26bd286ce5d5c98d89264f8abecd77f333136593c7cb07c3c7ed8f27347a62e5beeb0a84c9c24b20dfff515275eaf5fd4786b55d1f88cb73e4e18ef0a7f6350af84327db2bea94abd7a19350aac7752706aa8e2818fa6c55a303152d6b1adbafb79434b6e7df2d40bc7acfa154f4d9089935426210ff1ed889413cb2bb3a3a859782a7b049e42c01601b5c7bb029393855b3e57341aef79e4fcf7854da57ff216ab87e8a5a646ef249549f843fc51942d2b397231fc6d41a9122227ee9bb3f8d0afcb5edb9c29ddd32595932baf357ea61a2fce14cd4ab838a5b7128d38212460284a5d51857765db5dd93f59abecc88377dc48391f02077b943dfe2480de890c73553ef047863da6ca164d35ac4db2cdf4e2f3867ee74ee367f4da2f273db5755b74e2655bf1891c2a02a2285f3d76ccd343b78eb564db41593d65a9031d2a681426e404c41d64c84be8b87801c849d5831f5a3035eb5cf3e4bbfee57499877f1e160e1c708c8617c340c0eb235218ef0a8395b52a437b3f72e292c14b5ff96171c70e23b1536bdf2b235a2e259c3e99050307d33f20343a043c5514c6bba2d3101429a9c2679ff8da3b89af007ee216b3519c5affbb45c777159c9a733c20b7f26346c8ffa2a80f39c99f62f02978aa28bdcd8b32d5b0a27b5fa6478443c0190106bb9c714b7eabfcf9db139d7e57df7753cdcfde5374628f194f6ee5c7bccdf3820d8c79020cd5eba2285f3bd4eac5a15bd68ffb0d15100a135d02aa6e66f4b577b2607cd0cf1650d837ebbbc5cf4cc9cb53025e38b47faca173baccf94a744feb4be24a1238d4a3e60a755fe52416f3353be6e195fc14bd5094ee354bd3b2aa6adb9e369c4008e443a043d1d978879e4b9ca11cddf4c582cb3f95f46ec5af3f5bd4d96a040ebeffe7494ff3b9651e3e1f7a617e571425b6eaa26d1327dc2aa48c7735bee45662a403811c04dafbd53c37de5739910d25a9984f97cc2d1476e67f3e354d238479f84c641408174559b2e2a2fba7dc511419effa0d05a050858810507536ded7d1a70cb6f6a40cec87cf405b9de01bdbdd3cc6b17fedb2b46870db95160b817912e81a52b083e2c9af727ba017945b8c5f6c31de99680b46ddf9bbd54e9ec4f59b808bc738ee59e16b4fdd6f52e41732023da393212b910bc509fe1312672a59ea21c35fbd9f3a9c2542a64785fdec38c9c446a970b70edddab2b4eb4aa5c05099501350d2537d087a27de189d55c2de700d63aa461f25cf43b7060b27d38e77e1b62b8c268f7e994627bc3dce271042caca49c1949a2bbb036925e1cf5414e50bc353792a0ae35de137b43225ece863ee243ac6e49893e8d8ca9d92e67f44caae3a5fb7d9ba536d52892601251d412ada3b191f8a661ba3d47911c853518ce37e934a80dbae2420dcba42e0e4a9e99171d566e3d59493421c09bbd2e42398489e8ad2ba36c771bf11444291434aa043b9cd8c6aca899c361fd21644b1bc27208af2cdce5e67876e6d6b4c1eef5a303eec7d91c9414702eacdc6ab2927ac12d6f1eb4ca8b36387f6a9e35d1547663d002524cf25045c20d0d1abda6cbc9a72523049efc485e61ee9241c2b4ac7eaea48579cc2432028026aca09bd93a0da53a8f275a628cf3625ff2d5258743a54f5a2306a10d8d399dcd2a25e2f35e524ea56a1fc6e113014c5d6a15ba9c7fd56964cb8551ed28180c204d49413369d28dc64ed564d14c5ee1129c75a6aede6427c08d825d03daada9f296aca895dbb125f7902b61465cbca792e150a630afac350dee2e1af60cf3072127a2b150c1f0f7d1929600004ac2b4ad27857c5547f00c5254b0d0828b69351c1dec982d12e0dda215574424014e5edc5e9cff14d4a8ef1ae2420dc7a4140b19d8c0aca891756274d65087cf490a543b75e6f9836ab5c3835665e730101086422a0a09ce09a3e93b10937085839744b8efb9d2e2b31e297f53b397107da10c84940b18df10aca49c1e4bc79d49c1625828604ac284af71a4bc3621ad2a3ca6e11506c63bc8272e296a549476d023915e5d5e5330601dc76a9dd12a89d5b049013b748924ef40888a2dc3a1acb74e89639de85dbaee8999612074140413961ee24888614d53cb33bb41f5a591fd58a51ee281060ee24ec56e258dfb05b2864e5cba228e671bfb8ed0a99d114298e6247fc2ad83b51a4a1510d1f096452942d4b67f730e1b6cb476b90555409202751b51ce576978028cadff58d261dba355838d9bf7699bb19911a045425809ca86a59ea659bc0b2d1fe2f1d6d4f521463bc0bb75db669f2827e04149493c2fe03fad9911abb4320f5881463bc0bb75deef02595f90414732aaca09c144c8cce37197710b04120495164bc6bbca9cec6fb44858065028a391556504e2c9b928810484fc0509435a5b3ab845bd756168ff5a58f4a280420f00601e4e40d12fc1f02090444516e39f0aa718ce3b6c6c192919e84875c4200026908202769a010040183807144cae1b291d1da8530810004b213404eb2f3e1a9ee040c4539d830a03b08ea0f815c0490935c8478ae3d015194ea72e444fb7600805c048a7245e039047427f07acd153bc62ed39d02f587402e02c8492e423cd795c058e9e2ad656ffd71fff97ddd65ba32a0de10b0410039b1018ba89a10385c7df17d93573c3ab83c36ac498da926045c20809cb8009124d420305554fe7cc575778f5cd0d653ad468da80504fc24809cf8499bbc424aa0bb6acdd6824bbfdfb33ec6c1d0213511c58a0001e4240246a2881e1190eec8c18a8bbf35b2a9ad97ee88478c49361b81f212a5d6d62227d98ccd335509c834fb2f4bafbf7fe09cbe934cb3ab6ae408d46b659d52db63159493a9a517169d7825024d892206414056fdfed7c4c54cb307c19e3c1527a0a09c286e31aae78880744776955d1e9f66ef665ccb11415e82402e02c8492e423c8f38019966ffc5cc55f7f4af66d56fc42d49f1c34e003909bb85289f330232cdfe5ae5153f18dec834bb3380bc0501bb049013bbc4881f7602830b973f5ef4d6f8347b17d3ec613716e55389808272325dbb8aa97895daa8f5bac834fb5d63976d1f5862fd156242204002eb1a2b03ccddf5ac159493d3c54a59c87593ab9720ceb5d4b329358a220105e5248a66a0ccce088873adc7a72f619add193dde8280bb04149493998a067719915ad808cc4db3e35c2b6cb6a13c7608342f566a7a4f4539a95c6ac7a0c48d12019c6b45c95a943517818a12a57e032b55995cb6e379540918ceb5e2d3ecbd4cb347d588945b79020aca09835d2ab5dab969769c6ba96457ea7286407d45b14a24149493d3554d2a5948dbbae05c4b5bd3eb53f1866ae64ef4b13635f59d00ceb57c474e861070878082bd1301335dbbb2b0ff903b8448c52f0273d3ec1ca9eb1773f2099040739d525d1321a9a69c9c2ea90ab09590b52d0273ab7e39c3ca163822479c8062cbbac41a6aca097e5622f1a1e15c2b1266a2901e11a077e211589793c5cf8acb40dd4e6e769a7d60b9db09931e04224380de49344c25bd93681454b3521ad3ecdfeebfa4af5bb55163cd2c49755d20a0d8967821a2e660d7e912bc40bad0dc5d4c02e75a2ec224293508d03b89861dd9c918123bcd4db3e35c2b2426a118a121d05cab5a1f5dd1de093b1983fe668c69f6eff7ac8f9d0cba28e40f815012a82c536a4bbc3056534ea462534b2fe4102dff3fa239e75a9c61e53f7d728c0e01f59675097b65e564a6025f81be7e5b38d7f2153799459c407d4549c46b90a6f80acb49639aea12e401019966bf6ff28a470797c7d8cdee015e925492c0cac50bd5ab97b272c25a61af1bab8c6b3d5f71dddd2317b431cdee356bd2578e807aab84c544cacac94c05876879f509ce39d7629add2bc6a4ab388115b5e5ead5505d3959dca29eb582ad9131cdfead914d6d38d70ad612e41e7d028ab9a6370ca2ac9c48f5f02becd64727d3ecbf2cbdfefe8173fa38c3ca2da6a4a33181758d6aeeb3565b4ecec14d7d9edf2c6758e50990d721904aa0be52b51d27461d95969345e7c4624fa4da92909c0470ae9513111120e098c092ca52c7ef86f945a5e5a46e7598d187b36c32cdfe8b99abeee95fcdaadf701a88522940605d13835d5133e374e345512b7260e59d73aec5347b604620635d08a8e7adcbb09ccabd13a921b3f1393f509c6be544440408b84840dcaba8e7adcbe0a3b89ccc2c5cca6c7ca62f41a6d9ef1abb6c3bceb53201221c021e105851a7e08e138393e272228e208b8f3ee7419388709273ceb538c32ac266a4e85125d0ace20646c318cacbc99ba2dae83c283767587900952421608f80aaf3f04241713999616fbcf8eac7b996bdef9dd810f090c0aafa0a0f530f3469c5e544d8ea7cf009ceb502fdb8c81c02c90454dd0f6fd453033969d0ee1c2dc3b9567c9abd97435f92bf67ee21102001254fcd32796a20274b2f8cbd62d657f10b9c6b296e60aa1771020a4f9c8865d497134d3633e25c2be2bf6728be160436aea855b89eeacb89184fe1e913c3b956fc0cabee6a859b295583800204d49e381103e921272a4e9fcc4db373a4ae02bf69a88206049013158c2cbd1365a64f70aea5428ba40e5a12507be2444caa45ef44a64f4e972c2c9888f651b48673adf819565d655a7e8c541a021126505eb2607d5355842b60a1e85ac88970985a12616f2bb3d3ec03cb2d1894281080401809ac5baaa653fa44d6dac849049d77e15c2bb1a5720d814813507ee244aca38b9c4c9e7d45f9ceef45a539e25c2b2a96a29c10b048e0d21535166346379a2e7272baaa69a662c982d1ee309b6a6e9abd8755bf6136146583803d0272387c43b5fa539ebac889185f3a28a5ad9bedb502bf62cfadfa8df67201bf78910f0422456043b3fa5d133188467232b1ea37c2262738d78ad4ef040a0b018704ae69a973f866a45ed3484ec4597d78960bcf4db39f54bf0b1ca92f82c242c0650232d2a5b053fa44581ac989547b72f9e525079e48acbfffd732cd7edfe4158f0e2e8fb19bdd7ffae40801df09e8b0a6cb80aa9b9c5c11949ccc39d7629addf7ef990c211020810d1aace932f0ea252753cd57f93fde3537cd4e7724c06f9aac21100401d90cafb617e144a87ac989d4dcb7f12e639afd5b239bda7a59f59bd8e4b88680460474d80c6f9a534339f17cbc6bceb916d3ec6643e302025a12d8749e166bba0cdb6a27279e8e77e15c4bcbdf18541a02e9096835d22508b49313a9b3ebe35dc634fbb7fb2fe9eb66d56ffaef8a50086848e0523d762f9a96d5514e4ead79af5bebbb649afd173357ddd3bf9a55bf6693e20202103008bc73fd12ad50e82827b29f314fff5d73ceb59866d7ea73a1b210b04c409fdd8b26121de5442aefd87f9731cdfefd9ef5319c6b998d880b08402085c0a696c529618a07682a27a7d6fcb65dff5d32cd7ed7d865db07f4eabd2adefca91e043c23704d4bad67698734614de544fcd5cb01f245275ec9699639e75a4cb3e78445040840e00c81e6ba321d3cd227595b5339110a13abde965d4e70ae95d456b88500042c12b87e9d8ec318facac964cb3b4eefbca36022790e44a6d99fafb8eeee910bda70ae65f1d3211a0420904040b69be8e3a72ba1de5aee3b31eb9fb40165ceb956b2c4986f70010108402007814d2d759565c53922a9f858dfde8958d3d88082732d151b367582406004aed76cbb89095a6b39910d28bf6cfce44f8fd5f7e15ccb6c115c400002791090d34d349c8437802dc8839b0aafca0694be293ca3a8604aea00813010b866b576eb834decbacbc95bd7d4cbe655130717108000041c13905f26f22bc5f1eb517f51773911fb69b87935eaad96f243209c0434ff65829cc4deb95edfbf26c2f94d522a08449480863be1132d859cc464499fe68d20b141700d0108382320bf46b49d8437882127710e375cdce8ac01f116042000018300bf469093784b90bf2964791f5f05042000016704e89a0837e464b6f1dcf0663a28cebe23de820004629bced5ce1d7daad591935926eb9baae8a0a4b60f422000819c04e45787fc02c9194df908c8c99c89e9a0ccb1e00a0210b04c805f1d062ae464aec9c8df17724ac1dc3d5710800004721190ad8b744d0c48c8c9bcc6a2e72905f31070030108d82170c3454cbbcef2424ee6351c7caeccc3c10d0420909580e65e5592d82027494062fcad914c847b08402003818f5fb322c3131d83919364abd3414926c23d0420908e000bba92a820274940e2b7fcc591060a411080c07c022ce89acf836d8c493ccedcb207251d15c22000813902744de658bc7145efe40d12f3ffcfdf1df37970070108cc23c0af887938cedc2027a94ce2217450d2732114021088c5e89aa46d05c8495a2cf1c00fbc6559c6673c8000043426c02f87b4c6474ed2628907aeaaafe01c948c747800015d09c8817bf2cb41d7da67ab3772928d8e1c60505e02a26c88780601ad08c82f04ce35c964717e576622130f977350deb5be215b0c9e4100023a11906dce727eab4e35b65157e42407acf75dd2247e147244e2310420a00101f955f09b172ed5a0a20eab889ce40677d36567e58e440c08404075026c70ce6e61e4243b9ff8d38d2b6a655d60ee78c4800004d425c0e2e09cb6454e72228a47f8d8d5675b8a47240840405102fc12c86958e42427a27804999367398725524482808a04e4f3975f022ad6cccd3a21275669ca6273e6e4adc2221e0414222087b4ca921c852ae455559013ab6465752013715661110f020a11f8e065cb15aa8d8755414e6cc015475e979c5d6de305a2420002112720c3121c056fd186c8894550b3d13e7e4d33fbe4ed21233604224b40c6b79934b56e3de4c43aab784c19f2fae046b6a1d883466c08449480ec39630fbc75db2127d659cdc694d37fd986629b1a2f40206a0464645bf69c45add4419617397142ffe6eb5632e4e5041cef40202204e4039791ed8814362cc5444e9c58e2cc2a2f9a9a1374bc03814810102d6198cbaea59013bbc466e34b2f98555e0ed9f11a04c24d400e3a6298cb8189901307d0665f6195977376bc0981b01290d55c37bd85e5364ecc839c38a166bcc390977376bc0981b01290ddca0c7339334e91b3d778cb20203de277ae1f7978770f402000010508c82e939c9b163bfac75b8f754dc64ace5e54f1a6b3aacc5a9f9a9ae91a9e306f932e1aaa4a4a8b92ff7c97579ed9db353a3951bcb0e2f2e6eaea881fcc859c2419ddf6adb4bf3d9d231d7de3b6dfe4050840204c042cfae67a6ccfbe6f6d199482bf6bc3f2443969ef1dbbf1fb3b3355e83f3fb1b1b936d989e4e3adad5f7ca0d7784522445d4e92d532130bc23311907ef1c7ae66ab7c263c8443201a046465b07cc839cb2a5d13434b2466e1fcd8c70687e707e4b893a40c2d39b97f7b8ea811794cefc40543adaaaf90adf2776c3bec425a2401010804414056d6c8879c29e7db1f797d786cb86f78f4c9335ff9c8cb8f56bee9ed49915f3cd4991492e55686b93e7dd7b658ac44e22c5cbd314bcc083d424edc31966c95df7362646b5bbf3bc9910a0420e02301f1f3987d65f09d3be6a462f0b97bc70fee4c9593833db3bd936bcf6ffcf36b920fdc5b5a15570ef3df4f9e7ea96d685e88f928ba17c8896bb693c585ed7d634ca2b806948420e00b019932f9d0e5c9bffdb3e45c73d9fbe4272982f4369e6a9f0d5b531f9f232988c56aca0bd34e87bc7cb4f75bdb46925250e0163971cd88c624ca6d0fb58d4dccb89628094100025e129029934f5db72a670e89479edcf9dc91d4f82712d6747d67cb21f931e2b4d4957ef1bde75fb0746e186d687cf2967b9f8bc5e69684a5a616d110a6e2dd349c3189e2668aa40501087849e02fde768e95537b6fbe6e95f993b6389d834369c3dbfa4efdc1f777fe685797f9f4fbbf7ae6e0e8ac967cf0b246335c810be4c46523ca240a0724b8cc94e420e00d012bbb4c2ce67ca837dbb2ae7f7a68aface392a47ebdafe3ce1765182cfeef6fdfbde6e2e54af5519013c3b26efe578e95c69d979b40490b021e10908fd4c513e08f25c8c99fbc75e5d7deb75e7e5a1ae6369afcdbf6eeeee1537f79efec04cbc696bab7adadf7a05a4126c9dc8927f465d1a14ca2302def095c128540de0464fa5d3ed2bc934948a0a8e68397d5c8fd790d15bf794183f1e0fca6caebbff9bc71fde08e43053dfb8c95c112f2fe8b1a650b7df7c8dc2efacec131e9b6a4dd3c6fa410feff16f40cc4b777f2cf7502077b469996779d2a0942207f0232fdfe95f7acb132659236af0d7fb7d508ffad0dcbbffc8ef8347ea27b95a4d55cb76c7ee1e7af8d499cd3a74f1714cc0e73a54dd6084cbb793e4bfc503da277e29539645a5efefcb9fdf1435e6540ba10808023029fbfbec5b196a4cd509675fdceb76777b6ffc53b5a3eb0a1294d340b5a92e6ad48053177e2a1b96463d4c7aeb2b19eddc3a2903404207086807c925976bf3b83545e34d7edd8fcda9c4358992c31ba26ce928ddc5bf44ebc3519bbe5bde54bea10b043409672c92769e70d4b71975495b62c2e6ceb9d96d86d4707fee2ded7de73a1ac009efce7875e8ec5ca8d24fef0cab37ffb4dc9cb829f3dd0f50f8fb41b11feef8d1734d694276d9eb7947d682221279e9be2139b564a1ef85ff11c341940202b013963d1c5a55c92555c3ddef8f7c96bd7fce5bdbb8dbb2dfbfae4e7ccf5ac96c8f5fb2f6912d57923faecff0f24785e112d4975399c143fe4b70c76f96120f1bf222b49fcc8893c2000817404e40374fd8cc5448fc2d79eb758d607a7cb391ef6830f5d9caa25992247371c39f1c376e27f4566ff50143f589307045208c8a7271fa0eb672cd6ce1fdcf9c895678b6c5cdd529798bf688c2cd64a3c1625f1692c563cff36da772c14f6cf7e2c1df68f353941e00d021e69c91bc9a7f9bf78e51a188b8f84457df02a4dddb206212759f1b8fd1045719b28e941201b01d96222fd12d7977265cb52e3670c76f96a7c69d6d2b8a589fb9a2b9941404b026889cf66e7f79acfc063a228e2c4d4ef5cc90f029a11404bfc373872e23ff3d8faa62ab63706c09d2c752220e76d33c6e5b3c191139f81cf66277ba9509460d093ab0604e4e3f262bba206e4f2aa22729217be7c5e4651f2a1c7bb10c844002dc944c6eb70e4c46bc2d9d24751b2d1e11904ec13404bec3373ed0de4c43594ce1242519c71e32d08a412404b5299f819829cf8493b7d5e284a7a2e8442c00e01b4c40e2d4fe222279e60b59b288a629718f1219048002d49a411d435bbe283229f265ff6cca781421004b212607f49563cbe3ea477e22beeec99b1673e3b1f9e422089005a920424d85be42458fec9b9a328c944b887400602f5957147ddec55cc8027806006bb02809e33cbaea1f16f3c71b0a36f3c674c2240404f02fefb09d693b3ad5ad33bb185cba7c80dd5f1e319381fc527dc641335026849382d46ef249c7689976a647cf2c7cf1fe554e0f05a8892054140cee89573155d3f0b2b88aaa896277212768bfee8d9c30fefee097b29291f047c21f0cef5f51fbafc6c5fb22213db049013dbc8fc7f61cbde9e3bb61df63f5f728440a808b0b92454e6482d0c7292ca248c21bb8f0f7ffdf103631333612c1c658280c7045810ec31607792474edce1e8432ab2c9f18ea73a58eee5036ab20815019978ffd475ab647d4aa84a456152092027a94cc21b2293f3dfd9dab1f3f050788b48c920e02a814bceaefef835cd4cbcbb0ad5abc49013afc87a97eebd3b8fdff762a777e993320442428089f79018c2623190138ba0c2156d7b7bbf7453984a099755288d7b0464b2443a251b57d4ba972429794e0039f11cb147193095e21158920d9c009325819bc05901901367dc42f116fb1c4361060ae12a01d9a5f8894d2b5d4d92c47c22809cf804dabb6c6457ca9ddb8f32f0e51d6152f687800c707d70e35972f68f3fd9918beb049013d7910690202e2303804e96ae129001ae8f5ddd8c7b6057a1fa9d1872e23771eff2c31d8b776c49d95302b282eb868b1b590dec29641f12474e7c80ec5f16b279fe3b5bdb7b4626fdcb929c2090070139b3e4e3d7ac58df5495471abc1a1602c849582ce15639d8eae81649d2f19a005b14bd26ec73fac889cfc07dca8e8d293e81261b4704d856e2085bd85f424ec26e21c7e5a39be2181d2f7a4a605d63e5cdd7ad64a6c453c881248e9c0482ddbf4ce9a6f8c79a9c72116029702e42d17e8e9c44db7e564acf6e472b9488e335014e51f49a70e0e92327819bc0a702b0e8cb27d064934280e55b2948d40c404ed4b46bda5a493745ce09c61b715a38047a44403694bcef9226f4b93f1c000006c7494441548f1227d95011404e42650e3f0a235be8ef78eaf09ece113f32230f8d09c894fbc7ae3e9b63aff46902c8893eb69e5753c6bee6e1e0c6550232ba75d36567e15ede55a811480c39898091bc2ba29cc4f5cbdd5db88ff48eb06e29cbdaad77ad6f60744b37bb1bf5454ef4b4fb5cad65ec4b6653b6b6f5cf05710501470458bbe5089b3a2f2127ead8329f9a30a1920f3dde659a8436200490139ac11c019950b96f5727b3f47344b8ca454084e4863737e2c33117272d9e23275a98d9562599a5b7854bdbc80889b6a6cf5471e4241319ddc3e590c7fb5eeac4d7bdeeed205dfd65e1d60d1735726c623a365a8721275a9b3f67e54554b6eeef67f82b27284d2220249a18da5935911367dcf47a8b3915bdec9daeb672f8eef5eb96d02349c786b05902c8094dc12a0144c52a29b5e2c92157efbaa081c976b5acea496d90134fb02a9c28fb5414366e52d5641f8978dcc24b4a12166e3311404e3291213c1b01c39b243beab3318aec336367fb3bd7d773c255646d184cc1919360b82b932b73f5ca98522a226b7faf595dcb04894a36f5b32ec8899fb495cd4b46c01edaddfd645b1feebfa26863e98e6c6aa9bb7efd12c6b5a268bef0941939098f2d225f121901dbd13ef8d09eee8ebef1c857468f0ad01dd1c3ce3ed51239f109b456d94867457c4a3ed9d6cb2ec870da5db68f6c68aea13b124eeb44b754c849746d1781921fec197d7877f70b1d830c8285c15a868a5cd352b7aabe220ce5a10c8a11404e14336848abb3bdbd5fc6c1d09540cc2353239736d76c5851c3795681f0d72753e4441f5b87a2a6e88a6f6640457c434d460601e48496100c01d963ff42fb80780363dede5d038837944b9b175dd25ccd8896bb60492d2701e424272222784b40e6edf71c1f9171b03d2746986271c65a3a22eb96561a235aec3d74c690b7f227809ce4cf90145c23205d169116e9b2e0c33827534342562e5eb8aea912875a397111c10702c8890f90c9c20901a425959a2ccd929d22cdb5e522218c65a5f221245802c849b0fcc9dd12019196433d273bfac7dafbc6749b6b91b9109110d18f15b5e5ec5ab7d45c88141001e42420f0649b0701a3e372a8f764cfe88462ea2243582beb168a84d45794acac5fd85c5bc65c481e2d85577d25809cf88a9bccbc20209b25e3bad23b1e3981413cbc680fa4191401e42428f2e4eb2101f11ed6d13f3e3a31251ad33d724a7cbdc4af83f32426bd8d8a9222a9b00c5bc97feb2b8a975497327fee610b20e920082027415027cfe008c8bae49ed149c95f969019a548529a437d2773ae579629f12595a5a9953065a379715c3fca8b1730619e4a891055092027aa5a967a41000210f095c0025f732333084000021050940072a2a861a916042000017f092027fef22637084000028a12404e14352cd582000420e02f01e4c45fdee406010840405102c889a286a55a10800004fc25809cf8cb9bdc20000108284a003951d4b0540b02108080bf0490137f79931b04200001450920278a1a966a41000210f0970072e22f6f7283000420a02801e44451c3522d08400002fe12404efce54d6e108000041425809c286a58aa05010840c05f02c889bfbcc90d02108080a2049013450d4bb520000108f84b0039f19737b94100021050940072a2a861a916042000017f092027fef22637084000028a12404e14352cd582000420e02f01e4c45fdee406010840405102c889a286a55a10800004fc25809cf8cb9bdc20000108284a003951d4b0540b02108080bf0490137f79931b04200001450920278a1a966a41000210f0970072e22f6f7283000420a02801e44451c3522d08400002fe12404efce54d6e108000041425809c286a58aa05010840c05f02c889bfbcc90d02108080a2049013450d4bb520000108f84b0039f19737b94100021050940072a2a861a916042000017f092027fef22637084000028a12404e14352cd582000420e02f01e4c45fdee406010840405102c889a286a55a10800004fc25809cf8cb9bdc20000108284a003951d4b0540b02108080bf0490137f79931b04200001450920278a1a966a41000210f0970072e22f6f7283000420a02801e44451c3522d08400002fe12404efce54d6e108000041425809c286a58aa05010840c05f02c889bfbcc90d02108080a2049013450d4bb520000108f84b0039f19737b94100021050940072a2a861a916042000017f092027fef22637084000028a12404e14352cd582000420e02f01e4c45fdee406010840405102c889a286a55a10800004fc25809cf8cb9bdc20000108284a003951d4b0540b02108080bf0490137f79931b04200001450920278a1a966a41000210f0970072e22f6f7283000420a02801e44451c3522d08400002fe12404efce54d6e108000041425f0ff014a1ce9eeb175659f0000000049454e44ae426082}\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u34013?\u33394?\u30340?\u23601?\u26159?push\u20107?\u20214?\u65292?\u40644?\u33394?\u30340?\u26159?create\u31561?\u31561?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u21040?\u36825?\u37324?\u25105?\u20204?\u31639?\u26159?\u30693?\u36947?\u20102?OSRC\u30340?\u25968?\u25454?\u24211?\u37096?\u20998?\u26159?\u22914?\u20309?\u24037?\u20316?\u30340?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs24 Redis \u26597?\u35810?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u20027?\u35201?\u20195?\u30721?\u22914?\u19979?\u25152?\u31034?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 def get_vector(user, pipe=None):\line +\line + r = redis.StrictRedis(host='localhost', port=6379, db=0)\line + no_pipe = False\line + if pipe is None:\line + pipe = pipe = r.pipeline()\line + no_pipe = True\line +\line + user = user.lower()\line + pipe.zscore(get_format("user"), user)\line + pipe.hgetall(get_format("user:\{0\}:day".format(user)))\line + pipe.zrevrange(get_format("user:\{0\}:event".format(user)), 0, -1,\line + withscores=True)\line + pipe.zcard(get_format("user:\{0\}:contribution".format(user)))\line + pipe.zcard(get_format("user:\{0\}:connection".format(user)))\line + pipe.zcard(get_format("user:\{0\}:repo".format(user)))\line + pipe.zcard(get_format("user:\{0\}:lang".format(user)))\line + pipe.zrevrange(get_format("user:\{0\}:lang".format(user)), 0, -1,\line + withscores=True)\line +\line + if no_pipe:\line + return pipe.execute()\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u32467?\u26524?\u22312?\u19978?\u19968?\u31687?\u20013?\u26174?\u31034?\u20986?\u26469?\u20102?\u65292?\u20063?\u23601?\u26159?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 [227.0, \{'1': '51', '0': '41', '3': '17', '2': '34', '5': '28', '4': '22', '6': '34'\}, [('PushEvent', 154.0), ('CreateEvent', 41.0), ('WatchEvent', 18.0), ('GollumEvent', 8.0), ('MemberEvent', 3.0), ('ForkEvent', 2.0), ('ReleaseEvent', 1.0)], 0, 0, 0, 11, [('CSS', 74.0), ('JavaScript', 60.0), ('Ruby', 12.0), ('TeX', 6.0), ('Python', 6.0), ('Java', 5.0), ('C++', 5.0), ('Assembly', 5.0), ('C', 3.0), ('Emacs Lisp', 2.0), ('Arduino', 2.0)]]\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u26377?\u24847?\u24605?\u30340?\u26159?\u22312?\u36825?\u37324?\u29983?\u25104?\u20102?\u21644?\u33258?\u24049?\u30456?\u36817?\u30340?\u20154?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 ['alesdokshanin', 'hjiawei', 'andrewreedy', 'christj6', '1995eaton']\par} +{\pard \ql \f0 \sa180 \li0 \fi0 osrc\u26368?\u26377?\u24847?\u24605?\u30340?\u19968?\u37096?\u20998?\u33707?\u36807?\u20110?flann\u65292?\u24403?\u28982?\u35828?\u30340?\u20063?\u26159?\u31995?\u32479?\u21518?\u21488?\u30340?\u35774?\u35745?\u30340?\u19968?\u20010?\u24456?\u20851?\u38190?\u21450?\u26377?\u24847?\u24605?\u30340?\u37096?\u20998?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 \u37051?\u36817?\u31639?\u27861?\u19982?\u30456?\u20284?\u29992?\u25143?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u37051?\u36817?\u31639?\u27861?\u26159?\u22312?\u36825?\u20010?\u20998?\u26512?\u36807?\u31243?\u20013?\u19968?\u20010?\u24456?\u26377?\u24847?\u24605?\u30340?\u19996?\u35199?\u12290?\par} +{\pard \ql \f0 \sa180 \li720 \fi0 \u37051?\u36817?\u31639?\u27861?\u65292?\u25110?\u32773?\u35828?K\u26368?\u36817?\u37051?(kNN\u65292?k-NearestNeighbor)\u20998?\u31867?\u31639?\u27861?\u21487?\u20197?\u35828?\u26159?\u25972?\u20010?\u25968?\u25454?\u25366?\u25496?\u20998?\u31867?\u25216?\u26415?\u20013?\u26368?\u31616?\u21333?\u30340?\u26041?\u27861?\u20102?\u12290?\u25152?\u35859?K\u26368?\u36817?\u37051?\u65292?\u23601?\u26159?k\u20010?\u26368?\u36817?\u30340?\u37051?\u23621?\u30340?\u24847?\u24605?\u65292?\u35828?\u30340?\u26159?\u27599?\u20010?\u26679?\u26412?\u37117?\u21487?\u20197?\u29992?\u22905?\u26368?\u25509?\u36817?\u30340?k\u20010?\u37051?\u23621?\u26469?\u20195?\u34920?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u25442?\u21477?\u35805?\u35828?\u65292?\u25105?\u20204?\u38656?\u35201?\u19968?\u20123?\u26679?\u26412?\u26469?\u24403?\u20316?\u25105?\u20204?\u30340?\u20998?\u26512?\u36164?\u26009?\u65292?\u36825?\u37324?\u19996?\u35199?\u29992?\u21040?\u30340?\u23601?\u26159?\u25105?\u20204?\u20043?\u21069?\u30340?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 [227.0, \{'1': '51', '0': '41', '3': '17', '2': '34', '5': '28', '4': '22', '6': '34'\}, [('PushEvent', 154.0), ('CreateEvent', 41.0), ('WatchEvent', 18.0), ('GollumEvent', 8.0), ('MemberEvent', 3.0), ('ForkEvent', 2.0), ('ReleaseEvent', 1.0)], 0, 0, 0, 11, [('CSS', 74.0), ('JavaScript', 60.0), ('Ruby', 12.0), ('TeX', 6.0), ('Python', 6.0), ('Java', 5.0), ('C++', 5.0), ('Assembly', 5.0), ('C', 3.0), ('Emacs Lisp', 2.0), ('Arduino', 2.0)]]\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u22312?\u20195?\u30721?\u20013?\u26159?\u26500?\u24314?\u20102?\u19968?\u20010?points.h5\u30340?\u25991?\u20214?\u26469?\u20998?\u26512?\u27599?\u20010?\u29992?\u25143?\u30340?points\u65292?\u20043?\u21518?\u20877?\u35760?\u24405?\u21040?hdf5\u25991?\u20214?\u20013?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 [ 0.00438596 0.18061674 0.2246696 0.14977974 0.07488987 0.0969163\line + 0.12334802 0.14977974 0. 0.18061674 0. 0. 0.\line + 0.00881057 0. 0. 0.03524229 0. 0.\line + 0.01321586 0. 0. 0. 0.6784141 0.\line + 0.07929515 0.00440529 1. 1. 1. 0.08333333\line + 0.26431718 0.02202643 0.05286344 0.02643172 0. 0.01321586\line + 0.02202643 0. 0. 0. 0. 0. 0.\line + 0. 0. 0.00881057 0. 0. 0. 0.\line + 0. 0. 0. 0. 0. 0. 0.\line + 0. 0. 0. 0. 0.00881057]\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u36825?\u37324?\u20998?\u26512?\u21040?\u29992?\u25143?\u30340?\u22823?\u37096?\u20998?\u34892?\u20026?\u65292?\u20877?\u25214?\u21040?\u19982?\u20854?\u34892?\u20026?\u30456?\u36817?\u30340?\u29992?\u25143?\u65292?\u20027?\u35201?\u30340?\u34892?\u20026?\u26377?\u19979?\u38754?\u36825?\u20123?:\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u27599?\u26143?\u26399?\u30340?\u24773?\u20917?\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u20107?\u20214?\u30340?\u31867?\u22411?\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u36129?\u29486?\u30340?\u25968?\u37327?\u65292?\u36830?\u25509?\u20197?\u21450?\u35821?\u35328?\par} +{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u26368?\u22810?\u30340?\u35821?\u35328?\sa180\par} +{\pard \ql \f0 \sa180 \li0 \fi0 osrc\u20013?\u29992?\u20110?\u35299?\u26512?\u30340?\u20195?\u30721?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 def parse_vector(results):\line + points = np.zeros(nvector)\line + total = int(results[0])\line +\line + points[0] = 1.0 / (total + 1)\line +\line + # Week means.\line + for k, v in results[1].iteritems():\line + points[1 + int(k)] = float(v) / total\line +\line + # Event types.\line + n = 8\line + for k, v in results[2]:\line + points[n + evttypes.index(k)] = float(v) / total\line +\line + # Number of contributions, connections and languages.\line + n += nevts\line + points[n] = 1.0 / (float(results[3]) + 1)\line + points[n + 1] = 1.0 / (float(results[4]) + 1)\line + points[n + 2] = 1.0 / (float(results[5]) + 1)\line + points[n + 3] = 1.0 / (float(results[6]) + 1)\line +\line + # Top languages.\line + n += 4\line + for k, v in results[7]:\line + if k in langs:\line + points[n + langs.index(k)] = float(v) / total\line + else:\line + # Unknown language.\line + points[-1] = float(v) / total\line +\line + return points\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u36825?\u26679?\u20063?\u23601?\u36820?\u22238?\u25105?\u20204?\u38656?\u35201?\u30340?\u28857?\u25968?\u65292?\u28982?\u21518?\u25105?\u20204?\u21487?\u20197?\u29992?{\f1 get_points}\u26469?\u33719?\u21462?\u36825?\u20123?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 def get_points(usernames):\line + r = redis.StrictRedis(host='localhost', port=6379, db=0)\line + pipe = r.pipeline()\line +\line + results = get_vector(usernames)\line + points = np.zeros([len(usernames), nvector])\line + points = parse_vector(results)\line + return points\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u23601?\u20250?\u24471?\u21040?\u25105?\u20204?\u30340?\u30456?\u24212?\u30340?\u25968?\u25454?\u65292?\u25509?\u30528?\u25214?\u25214?\u21644?\u33258?\u24049?\u37051?\u36817?\u30340?\u65292?\u30475?\u30475?\u32467?\u26524?\u12290?\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \f1 [ 0.01298701 0.19736842 0. 0.30263158 0.21052632 0.19736842\line + 0. 0.09210526 0. 0.22368421 0.01315789 0. 0.\line + 0. 0. 0. 0.01315789 0. 0.\line + 0.01315789 0. 0. 0. 0.73684211 0. 0.\line + 0. 1. 1. 1. 0.2 0.42105263\line + 0.09210526 0. 0. 0. 0. 0.23684211\line + 0. 0. 0.03947368 0. 0. 0. 0.\line + 0. 0. 0. 0. 0. 0. 0.\line + 0. 0. 0. 0. 0. 0. 0.\line + 0. 0. 0. 0. ]\par} +{\pard \ql \f0 \sa180 \li0 \fi0 \u30495?\u30475?\u19981?\u20986?\u26469?\u20004?\u32773?\u26377?\u20160?\u20040?\u30456?\u20284?\u30340?\u22320?\u26041? \u12290?\u12290?\u12290?\u12290?\par} {\pard \ql \f0 \sa180 \li0 \fi0 \b \fs36 Github\u36830?\u20987?\par} {\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 100\u22825?\par} {\pard \ql \f0 \sa180 \li0 \fi0 \u25105?\u20063?\u26159?\u34542?\u25340?\u30340?\u65292?\u34429?\u28982?\u25105?\u24819?\u30340?\u21482?\u26159?\u22312?Github\u19978?\u36830?\u20987?100~200\u22825?\u65292?\u28982?\u32780?\u21040?\u20102?\u20170?\u22825?\u20063?\u31639?\u19981?\u38169?\u12290?\par} @@ -1861,683 +2427,5 @@ backbone-react {\pard \ql \f0 \sa0 \li360 \fi-360 2.\tx360\tab \u26550?\u26500?\par} {\pard \ql \f0 \sa0 \li360 \fi-360 3.\tx360\tab \u35774?\u35745?\par} {\pard \ql \f0 \sa0 \li360 \fi-360 4.\tx360\tab \u12290?\u12290?\u12290?\sa180\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs36 \u22914?\u20309?\u22312?Github\u8220"\u23547?\u25214?\u28789?\u24863?(fork)\u8221"\par} -{\pard \ql \f0 \sa180 \li720 \fi0 \u37325?\u36896?\u36718?\u23376?\u26159?\u37325?\u26032?\u21019?\u36896?\u19968?\u20010?\u24050?\u26377?\u30340?\u25110?\u26159?\u24050?\u34987?\u20854?\u20182?\u20154?\u20248?\u21270?\u30340?\u22522?\u26412?\u26041?\u27861?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u26368?\u36817?\u33804?\u21457?\u20102?\u19968?\u20010?\u24819?\u27861?\u20889?\u28216?\u25103?\u24341?\u25806?\u65292?\u20043?\u21069?\u24819?\u30528?\u20570?\u19968?\u20010?JavaScript\u21069?\u31471?\u26694?\u26550?\u12290?\u30475?\u30475?\u65292?\u36825?\u20010?\u24605?\u36335?\u26159?\u24590?\u20040?\u26469?\u30340?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 {\field{\*\fldinst{HYPERLINK "https://github.com/phodal/lettuce"}}{\fldrslt{\ul -Lettuce -}}} -\u26500?\u24314?\u36807?\u31243?\par} -{\pard \ql \f0 \sa180 \li720 \fi0 Lettuce\u26159?\u19968?\u20010?\u31616?\u32422?\u30340?\u31227?\u21160?\u24320?\u21457?\u26694?\u26550?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u25925?\u20107?\u30340?\u20986?\u21457?\u28857?\u26159?\u36825?\u26679?\u30340?:{\f1 \u20889?\u20102?\u24456?\u22810?\u20195?\u30721?,\u29992?\u30340?\u37117?\u26159?\u26694?\u26550?\u65292?\u26368?\u21518?\u19981?\u30693?\u36947?\u25910?\u33719?\u20160?\u20040?\u20102?}?\u20107?\u23454?\u20063?\u26159?\u22914?\u27492?\u65292?\u24403?\u33258?\u24049?\u20570?\u20102?\u19968?\u20123?\u39033?\u30446?\u20043?\u21518?\u65292?\u21457?\u29616?\u26368?\u21518?\u20160?\u20040?\u20063?\u27809?\u26377?\u25910?\u33719?\u21040?\u12290?\u20110?\u26159?\u65292?\u23601?\u24819?\u30528?\u20570?\u19968?\u20010?\u26694?\u26550?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u38656?\u27714?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u26377?\u36825?\u26679?\u30340?\u20960?\u20010?\u21069?\u25552?\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u20026?\u20160?\u20040?\u25105?\u21482?\u38656?\u35201?jQuery\u37324?\u30340?\u36873?\u25321?\u22120?\u12289?Ajax\u35201?\u24341?\u20837?\u37027?\u20040?\u37325?\u30340?\u24211?\u21602??\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u20026?\u20160?\u20040?\u25105?\u21482?\u38656?\u35201?\u19968?\u20010?Template\u65292?\u21364?\u24819?\u30528?\u29992?Mustache\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u20026?\u20160?\u20040?\u25105?\u38656?\u35201?\u19968?\u20010?Router\u65292?\u21364?\u35201?\u29992?Backbone\u21602??\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u20026?\u20160?\u20040?\u25105?\u38656?\u35201?\u30340?\u26159?\u19968?\u20010?isObject\u20989?\u25968?\u65292?\u21364?\u35201?\u29992?\u21040?\u25972?\u20010?Underscore?\sa180\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u25105?\u24819?\u35201?\u30340?\u21482?\u26159?\u19968?\u20010?\u31616?\u21333?\u30340?\u21151?\u33021?\u65292?\u32780?\u25105?\u19981?\u24819?\u24341?\u20837?\u19968?\u20010?\u24222?\u22823?\u30340?\u24211?\u12290?\u25442?\u21477?\u35805?\u35828?\u65292?\u25105?\u21482?\u38656?\u35201?\u19981?\u21516?\u24211?\u37324?\u38754?\u30340?\u19968?\u23567?\u37096?\u20998?\u21151?\u33021?\u65292?\u32780?\u19981?\u26159?\u19968?\u20010?\u24211?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u23454?\u38469?\u19978?\u24819?\u35201?\u30340?\u26159?:\par} -{\pard \ql \f0 \sa180 \li720 \fi0 \u26500?\u24314?\u19968?\u20010?\u24211?\u65292?\u37324?\u38754?\u20174?\u19981?\u21516?\u30340?\u24211?\u37324?\u38754?\u25277?\u21462?\u20986?\u19981?\u21516?\u30340?\u20989?\u25968?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u35745?\u21010?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u36825?\u26102?\u20505?\u25105?\u21442?\u32771?\u20102?\u19968?\u26412?\u30005?\u23376?\u20070?\u12298?Build JavaScript FrameWork\u12299?\u65292?\u21152?\u19978?\u19968?\u20123?\u24179?\u26102?\u30340?\u38656?\u27714?\u65292?\u20110?\u26159?\u24456?\u24555?\u30340?\u23601?\u30693?\u36947?\u33258?\u24049?\u38656?\u35201?\u20160?\u20040?\u26679?\u30340?\u21151?\u33021?:\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Promise \u25903?\u25345?\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Class\u31867?(ps:\u27809?\u26377?\u19968?\u20010?\u22909?\u30340?\u31867?\u20351?\u29992?\u30340?\u26041?\u24335?)\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Template \u19968?\u20010?\u31616?\u21333?\u30340?\u27169?\u26495?\u24341?\u25806?\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Router \u29992?\u26469?\u25511?\u21046?\u39029?\u38754?\u30340?\u36335?\u30001?\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Ajax \u22522?\u26412?\u30340?Ajax Get/Post\u35831?\u27714?\sa180\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u22312?\u20570?\u19968?\u20123?\u23454?\u38469?\u30340?\u39033?\u30446?\u20013?\u65292?\u36824?\u36935?\u21040?\u20102?\u36825?\u26679?\u30340?\u19968?\u20123?\u21151?\u33021?\u25903?\u25345?:\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Effect \u31616?\u21333?\u30340?\u19968?\u20123?\u39029?\u38754?\u25928?\u26524?\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab AMD\u25903?\u25345?\sa180\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u32780?\u25105?\u20204?\u26377?\u19968?\u20010?\u21069?\u25552?\u26159?\u35201?\u20445?\u25345?\u36825?\u20010?\u24211?\u23613?\u21487?\u33021?\u30340?\u23567?\u12289?\u21516?\u26102?\u25105?\u20204?\u36824?\u38656?\u35201?\u26377?\u27979?\u35797?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u23454?\u29616?\u31532?\u19968?\u20010?\u38656?\u27714?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u31616?\u21333?\u35828?\u35828?\u26159?\u22914?\u20309?\u23454?\u29616?\u19968?\u20010?\u31616?\u21333?\u30340?\u38656?\u27714?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs24 \u29983?\u25104?\u26694?\u26550?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u22240?\u20026?Yeoman\u21487?\u20197?\u29983?\u25104?\u19968?\u20010?\u31616?\u21333?\u30340?\u36718?\u24275?\u65292?\u25152?\u20197?\u25105?\u20204?\u21487?\u20197?\u29992?\u23427?\u26469?\u29983?\u25104?\u36825?\u20010?\u39033?\u30446?\u30340?\u39592?\u26550?\u12290?\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Gulp\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab Jasmine\sa180\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs24 \u23547?\u25214?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u22312?Github\u19978?\u25628?\u32034?\u20102?\u19968?\u20010?\u30475?\u21040?\u20102?\u19979?\u38754?\u30340?\u20960?\u20010?\u32467?\u26524?:\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab {\field{\*\fldinst{HYPERLINK "https://github.com/then/promise"}}{\fldrslt{\ul -https://github.com/then/promise -}}} -\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab {\field{\*\fldinst{HYPERLINK "https://github.com/reactphp/promise"}}{\fldrslt{\ul -https://github.com/reactphp/promise -}}} -\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab {\field{\*\fldinst{HYPERLINK "https://github.com/kriskowal/q"}}{\fldrslt{\ul -https://github.com/kriskowal/q -}}} -\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab {\field{\*\fldinst{HYPERLINK "https://github.com/petkaantonov/bluebird"}}{\fldrslt{\ul -https://github.com/petkaantonov/bluebird -}}} -\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab {\field{\*\fldinst{HYPERLINK "https://github.com/cujojs/when"}}{\fldrslt{\ul -https://github.com/cujojs/when -}}} -\sa180\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u20294?\u26159?\u26174?\u28982?\u65292?\u20182?\u20204?\u37117?\u22826?\u37325?\u20102?\u12290?\u20107?\u23454?\u19978?\u65292?\u23545?\u20110?\u19968?\u20010?\u24211?\u26469?\u35828?\u65292?80%\u30340?\u20154?\u21482?\u38656?\u35201?\u20854?\u20013?20%\u30340?\u20195?\u30721?\u12290?\u20110?\u26159?\u65292?\u25214?\u21040?\u20102?{\field{\*\fldinst{HYPERLINK "https://github.com/stackp/promisejs"}}{\fldrslt{\ul -https://github.com/stackp/promisejs -}}} -\u65292?\u30475?\u20102?\u30475?\u29992?\u27861?\u65292?\u36825?\u23601?\u26159?\u25105?\u20204?\u38656?\u35201?\u30340?\u21151?\u33021?:\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 function late(n) \{\line - var p = new promise.Promise();\line - setTimeout(function() \{\line - p.done(null, n);\line - \}, n);\line - return p;\line -\}\line -\line -late(100).then(\line - function(err, n) \{\line - return late(n + 200);\line - \}\line -).then(\line - function(err, n) \{\line - return late(n + 300);\line - \}\line -).then(\line - function(err, n) \{\line - return late(n + 400);\line - \}\line -).then(\line - function(err, n) \{\line - alert(n);\line - \}\line -);\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u25509?\u30528?\u25171?\u24320?\u30475?\u30475?Promise\u23545?\u35937?\u65292?\u26377?\u25105?\u20204?\u38656?\u35201?\u30340?\u21151?\u33021?\u65292?\u20294?\u26159?\u21448?\u26377?\u19968?\u20123?\u21151?\u33021?\u36229?\u20986?\u25105?\u30340?\u38656?\u27714?\u12290?\u25509?\u30528?\u25226?\u33258?\u24049?\u19981?\u38656?\u35201?\u30340?\u38656?\u27714?\u21435?\u25481?\u65292?\u36825?\u37324?\u20989?\u25968?\u26368?\u21518?\u23601?\u21464?\u25104?\u20102?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 function Promise() \{\line - this._callbacks = [];\line -\}\line -\line -Promise.prototype.then = function(func, context) \{\line - var p;\line - if (this._isdone) \{\line - p = func.apply(context, this.result);\line - \} else \{\line - p = new Promise();\line - this._callbacks.push(function () \{\line - var res = func.apply(context, arguments);\line - if (res && typeof res.then === 'function') \{\line - res.then(p.done, p);\line - \}\line - \});\line - \}\line - return p;\line -\};\line -\line -Promise.prototype.done = function() \{\line - this.result = arguments;\line - this._isdone = true;\line - for (var i = 0; i < this._callbacks.length; i++) \{\line - this._callbacks[i].apply(null, arguments);\line - \}\line - this._callbacks = [];\line -\};\line -\line -var promise = \{\line - Promise: Promise\line -\};\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u38656?\u35201?\u27880?\u24847?\u30340?\u26159?: {\f1 License}\u65292?\u19981?\u21516?\u30340?\u36719?\u20214?\u26377?\u19981?\u21516?\u30340?License\u65292?\u22914?MIT\u12289?GPL\u31561?\u31561?\u12290?\u26368?\u22909?\u33021?\u22312?\u36981?\u24490?\u21327?\u35758?\u30340?\u24773?\u20917?\u19979?\u65292?\u20351?\u29992?\u21035?\u20154?\u30340?\u20195?\u30721?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u23454?\u29616?\u31532?\u20108?\u20010?\u38656?\u27714?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u30001?\u20110?\u65292?\u29616?\u26377?\u30340?\u19968?\u20123?Ajax\u24211?\u37117?\u27604?\u36739?\u65292?\u26368?\u21518?\u21482?\u22909?\u21442?\u29031?\u30528?\u21035?\u20154?\u30340?\u20195?\u30721?\u33258?\u24049?\u23454?\u29616?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 Lettuce.get = function (url, callback) \{\line - Lettuce.send(url, 'GET', callback);\line -\};\line -\line -Lettuce.load = function (url, callback) \{\line - Lettuce.send(url, 'GET', callback);\line -\};\line -\line -Lettuce.post = function (url, data, callback) \{\line - Lettuce.send(url, 'POST', callback, data);\line -\};\line -\line -Lettuce.send = function (url, method, callback, data) \{\line - data = data || null;\line - var request = new XMLHttpRequest();\line - if (callback instanceof Function) \{\line - request.onreadystatechange = function () \{\line - if (request.readyState === 4 && (request.status === 200 || request.status === 0)) \{\line - callback(request.responseText);\line - \}\line - \};\line - \}\line - request.open(method, url, true);\line - if (data instanceof Object) \{\line - data = JSON.stringify(data);\line - request.setRequestHeader('Content-Type', 'application/json');\line - \}\line - request.setRequestHeader('X-Requested-With', 'XMLHttpRequest');\line - request.send(data);\line -\};\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs36 Github\u39033?\u30446?\u20998?\u26512?\u19968?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 \u29983?\u25104?\u22270?\u34920?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u22914?\u20309?\u20998?\u26512?\u29992?\u25143?\u30340?\u25968?\u25454?\u26159?\u19968?\u20010?\u26377?\u36259?\u30340?\u38382?\u39064?\u65292?\u29305?\u21035?\u26159?\u24403?\u25105?\u20204?\u26377?\u22823?\u37327?\u30340?\u25968?\u25454?\u30340?\u26102?\u20505?\u12290?\u38500?\u20102?{\f1 matlab}\u65292?\u25105?\u20204?\u36824?\u21487?\u20197?\u29992?{\f1 numpy}+{\f1 matplotlib}\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u25968?\u25454?\u21487?\u20197?\u22312?\u36825?\u36793?\u23547?\u25214?\u21040?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 {\field{\*\fldinst{HYPERLINK "https://github.com/gmszone/ml"}}{\fldrslt{\ul -https://github.com/gmszone/ml -}}} -\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u26368?\u21518?\u25928?\u26524?\u22270?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 {\pict\pngblip\picw800\pich400\picwgoal11620\pichgoal5800 89504e470d0a1a0a0000000d4948445200000320000001900806000000562504340000000473424954080808087c086488000000097048597300000f6100000f6101a83fa7690000200049444154789cec9d7b5c5475feff5f0322205e0151040d6f28e6fd12ddd4b44c2bb7b6eca256565a5bd945fd6697ad6d736bcb36bbb8df757fed77b78bb6955959e9ea2615a664199a6869a2602a2a606080a222209cdf1fef3e30c00ccc997366e6ccccebf978f818993933e7337366cef9bc3eaff7c5a6699a0642082184104208f10221be1e002184104208212478a00021841042082184780d0a1042082184104288d7a00021841042082184780d0a1042082184104288d7a00021841042082184780d0a1042082184104288d7a00021841042082184780d0a1042082184104288d7a00021841042082184780d0a1042082184104288d7a00021841042082184780d0a1042082184104288d7a00021841042082184780d0a1042082184104288d7a00021841042082184780d0a1042082184104288d7a00021841042082184780d0a1042082184104288d7a00021841042082184780d0a1042082184104288d7a00021841042082184780d0a1042082184104288d7a00021841042082184780d0a1042082184104288d7a00021841042082184780d0a1042082184104288d7a00021841042082184780d0a1042082184104288d7a00021841042082184780d0a1042082184104288d7a00021841042082184780d0a1000a74e9dc2534f3d85499326213a3a1a21212158b66c99c36db3b3b33169d224b46bd70e313131983163068e1d3be670dbd75f7f1d292929888c8c44727232962c59e2c9b741082184104288e5a10001505c5c8c679e79067bf7eec5d0a1430100369badc976478e1cc1983163b07fff7e2c5cb810f3e7cfc7dab56b3161c20454575737d8f6fffeefff70d75d7761d0a04158b264092eb8e0023cf8e08378e18517bcf29e082184104208b122364dd3345f0fc2d7545555a1acac0c717171d8b66d1b468d1a85a54b9762c68c190db69b3d7b36de7aeb2decd9b3078989890080f4f4744c9830a14e700040454505ba77ef8e0b2fbc10ab57afae7bfeadb7de8a4f3ef904870f1f46c78e1dbdf706092184104208b108744000b46edd1a7171710080e6f4d8ca952b3179f2e43af10100975e7a29929393f1fefbefd7ddf7e5975fa2a4a404b367cf6ef0fcfbeebb0fa74e9dc2dab56b4d7e07841042082184f80714202e929f9f8fe2e2628c1c39b2c963a3468dc2f6eddbebfe56ff6fbcedf0e1c3111212821d3b767876b0841042082184589456be1e80bf5058580800888f8f6ff2587c7c3c4a4a4a505d5d8db0b03014161622343414b1b1b10db66bddba35626262505050d0e4358e1d3b86b4b434242525213232d2336f821042082184b84d4545050e1e3c888913273699e711d7a10071918a8a0a004078787893c7222222eab6090b0b434545055ab76eedf075c2c3c3eb5ecb9eb4b434dc72cb2d268e9810420821847882b7df7e1b37df7cb3af87e1b75080b88872252a2b2b9b3c76e6cc9906db444646a2aaaacae1eb9c3973c6a1c3d1b3674f00f2854e49493165ccc43ce6ce9d8bc58b17fb7a18c4093c3ed685c7c6baf0d8581b1e1f6b929d9d8d5b6eb9a56ede46dc8302c44554e8950ac5b2a7b0b010313131080b0babdbb6a6a606c78e1d6b60cf555555a1a4a404ddba756bf21aca45494949c1f0e1c33df11688013a76ecc8e36261787cac0b8f8d75e1b1b1363c3ed646cddb887b3009dd45121212d0b973676cddbab5c9635bb66ca9eb1f0200c3860d038026db7ef7dd77a8adad6db02d218410420821c10405880ea64c9982356bd6e0c8912375f7a5a7a72337371737dc7043dd7de3c78f477474345e7df5d506cf7ff5d55711151585abaebaca6b63268410420821c44a3004eb57962c5982b2b2b2ba0a55ab57afc6a1438700000f3ef820dab76f8fc71f7f1c1f7cf001c68d1b873973e6a0bcbc1c8b162dc2e0c18371c71d77d4bd564444049e79e619dc77df7db8f1c61b71f9e597e3abafbec23befbc83e79e7b8e4d08092184104248d04201f22b2fbdf412f2f2f20000369b0d1f7ffc313efae823d86c36cc983103eddbb747626222366edc88fff99fffc1638f3d86f0f0704c9e3c192fbdf4525dfe87e2de7bef455858185e7ae925ac5ebd1a3d7af4c0e2c58bf1e0830ffae2ed11834c9b36cdd74320cdc0e3635d786cac0b8f8db5e1f121818c4d6baef537f11a59595918316204b66ddbc6a43342082184100bc2f99a39300784104208218410e2351882450821c414727373515e5eeeeb611042885bb46bd70e7dfbf6f5f53082020a1042082186c9cdcd457272b2af8741082186c8c9c9a108f10214208410420ca39c8fb7df7e1b2929293e1e0d2184e8437538a78beb1d284008218498464a4a0a1333092184340b93d0092184104208215e830284104208218410e2352840082184104208215e830284104208218410e2352840082184104208215e830284104208218410e2352840082184102f919494849e3d7bfa7a188478940d1b36202424047ffad39f7c3d1462512840082184102f62b3d90c3d3f242404e3c68d3369340db9eaaaab10131383dada5a9c3e7d1aefbcf30ea64f9f8efefdfba36ddbb668dfbe3d468d1a85975f7e19d5d5d54e5f67f7eeddb8f1c61b11171787c8c848f4efdf1f0b162cc09933679a6c7bfcf8712c5ab40837df7c33060c188056ad5a21242404e9e9e92e8ffbd8b163888f8f47484808468f1eedd67bafa9a9c12bafbc82c18307a34d9b36888989c155575d85cd9b373bdcfef3cf3fc7430f3d844b2fbd1431313186f6ad282929c1dcb9739194948488880824242460d6ac59c8cfcf77b8fdebafbf8ebbefbe1ba9a9a968d3a60d424242f0e4934f1a1a839e63d71246bfeb2470612342420821c4cff0c4c4aebcbc1ce9e9e998366d1a424242909191815b6fbd1531313118376e1caebbee3a94949460f5ead5983f7f3e3efae823a4a7a7233c3cbcc1eb64666662fcf8f1a8a9a9c1f5d75f8feeddbb233d3d1d4f3ffd34d2d3d3919e9e8ed6ad5bd76d7fe0c0013cfae8a3b0d96c484c4c44e7ce9df1f3cf3feb7a8f77df7d374e9d3a05c0bdcf46d3344c9d3a152b57ae44fffefdf1c0030fe0975f7ec18a152b3066cc18ac5cb912575f7d7583e7fcfdef7fc7ead5ab111919893e7dfaa0b4b4d4d071f9e5975f70e1851722373717975e7a29a64f9f8eecec6cbcf9e69b58bb762d366fdedcc43d7be8a18770e2c409444747232121013ffdf493a131e83d76ce484d4dc59e3d7b101b1bebf6584880a3114bb06ddb360d80b66ddb365f0f85104274c373986b9c73ce395acf9e3d0dbd86cd66d3c68d1b67d288ea79efbdf7349bcda6ad5ab54ad3344ddbb16387f6eebbef6ad5d5d50db62b2f2fd7468c18a1d96c36eda5975e6af0d8d9b367b59494142d242444fbcf7ffe53777f6d6dad76fdf5d76b369b4d7bfef9e71b3ca7b4b4545bbf7ebd565a5aaa699aa6dd76db6d9acd66d3d2d3d35d1af7b265cb349bcda6fde31fffd06c369b367af468ddeffddd77dfd56c369b76f1c5176b95959575f76fddba550b0f0fd7e2e2e2b4f2f2f206cfd9bc79b3b67bf76eadb6b6563b78f0a0dbfb56fcee77bfd36c369b367ffefc06f7ffeffffeaf66b3d9b449932635794e5a5a9a76e8d0214dd3346de9d2a59acd66d39e7cf249b7f6efceb10b245c3d87f15c670e0cc1228410424c66c9922538f7dc7311191989c4c4443cf0c003387efc7893ed4e9c3881458b1661fcf8f1484c4c44787838e2e2e270cd35d7e0db6fbf6db0edd2a54b111222976d1563affed9c7da2f5dba1453a64c41af5ebdd0a64d1b74e8d001175f7c31de79e79d66c7fcf1c71f232a2a0a13274e04000c193204d3a64d43ab560d8325dab66d8b871e7a0800b071e3c6068f6ddcb8117bf6ecc19831633079f2e4bafb6d361b5e78e10500c03ffef18f06cfe9d8b123c68d1b878e1d3b363b3e471c3a74080f3ef820eebcf34e4c9a3449f7f315afbefa2a00e0cf7ffe738315fe912347e2a69b6e427171313efcf0c306cf39fffcf3919292029bcd064dd3dcde37009c3c7912fffef7bfd1b66d5b2c58b0a0c163f7df7f3f7af4e881b4b4341c3870a0c163975f7e39ba77ef0e0086c7e0ceb17386b31c90fdfbf7e377bffb1dfaf4e95317e63678f060dc7befbd28292969b06d6565259e7ffe790c1a3408515151e8d0a103c68c19830f3ef8a0c9fe0e1e3c88909010dc71c71d3878f020a64e9d8ad8d85844464662d4a85158bb76adde8f8378180a10420821c444e6cc9983071f7c10c78f1fc7dd77df8da953a762ddba759830614293bc89ddbb77e30f7ff8035ab56a85dffce63778e8a1873061c204ac5fbf1e63c68c415a5a5addb6c3860dc3534f3d054092d9172c5850f7cf3e2764f6ecd9387cf8302eb9e412cc9b370f53a74e455e5e1e6ebdf556fcf18f7f7438e6caca4afcf7bfffc5c489139b845439428992c6e264fdfaf500e0500cf4ecd9137dfbf6c5a14387b07ffffe16f7d1129aa6e1f6db6f47a74e9df0f2cb2fbb3d013f73e60cbef9e61b44454539cce1b8e28a2b00005f7ef9a5a1f136c7b7df7e8b3367cee0a28b2e4254545483c76c365bdde7e9c93178e2d8d9878315161662d4a85158ba7429060d1a843973e660c68c19e8d9b327de7efb6d1c3d7ab46edbaaaa2a4c9c38118f3ffe386a6b6b71fffdf7e3d65b6f454e4e0e6ebae9263cf1c4130ef797979787d4d4541c3a7408b7dd761b6ebae926ecdab50bd75c730d366cd8e0f2b889e7610e082184109f71fa34b0678ff7f7dbbf3fd0a68df9affbcd37dfe06f7ffb1bfaf4e9832d5bb6d4adea3ffbecb318376e1c0a0b0b91949454b7fd80010350585888e8e8e806af939f9f8ff3ce3b0ff3e6cdc3eeddbb0188233164c810fce94f7f425252925331f1e38f3f36c915a8aeaec615575c81e79f7f1ef7dc730fba75ebd6e0f12fbef802274f9ec475d75de7d2fb7ce38d3700349daceeddbb1700909c9cecf0797dfbf6456e6e2e727373d1ab572f97f6e58cc58b1763e3c68df8fcf3cfd1b66d5b1c3b76ccadd7f9e9a79f505b5b8b5ebd7ad5394cf6f4e9d307009093936368bccdd1d2e7a6c6909b9bebb331183d761f7ef8214a4b4bf1d7bffe150f3cf04083c72a2a2a1a8895975e7a09191919b8f2ca2bb17af5eabae3f2d4534fe1bcf3cec3c2850b3179f2645c70c1050d5e67c3860df8d39ffed420117ffaf4e998346912162d5a844b2eb944f7b88967a000218410e233f6ec01468cf0fe7eb76d03860f37ff75df7cf34d00c0134f3cd120a4283c3c1c0b172e6c52bdaa7dfbf60e5f2721210153a64cc192254b70e4c811242626ba3c0647657ec3c2c2307bf66cac5fbf1ee9e9e9b8f5d65b1b3cfef1c71fa375ebd60d426f9cb164c912a4a5a561d8b0619839736683c7549859870e1d1c3e57dd5f5656e6d27b71c6eeddbbf1f8e38fe3de7befc5f8f1e30dbd96b7c61cec635002232222a2c9639191910dfe7ee38d3710121282975f7eb98128ecdcb9339e7cf249dc79e79d78edb5d79a0890a4a424fce10f7f68709f0a53dbba75ab5be3269e810284104288cfe8df5fc4802ff6eb09b2b2b260b3d93076ecd8268f5d74d1450e57d8bffefa6bfcf5af7fc5e6cd9b515c5c8caaaaaa068fe7e7e7eb1220870e1dc25ffef217a4a7a7e3f0e1c3a8a8a868f07841414183bf6b6b6bb17af56a5c72c9254e0591e2a38f3ec2dcb973111f1f8f952b57223434d4e57199457575356ebdf556242424d4e52600cd57bf5abc78719389f3b5d75e8b214386786c9cf61c3f7e1cafbcf24a93fbe7cd9be774c26f363b76ecc0279f7cd2e0be4e9d3a61ce9c395ed9ffd5575f8dc71f7f1cf7dd771fd2d2d270f9e597e3e28b2fc68001031a6c575e5e8e9f7efa098989890edd18253877ecd8d1e4b1a143873afc1e74efde1d99999926bd13620614208410427c469b369e71227c855a45eed2a54b93c75ab56ad5a42ce9c71f7f8cebafbf1e6ddab4c1840913d0bb776f444545212424045f7ef925366edc88caca4a97f7bf7fff7e9c77de79282b2bc39831633069d22474e8d001a1a1a13870e000962d5bd6e4f5befaea2b1c3b760cd75e7b6db3affdc9279f60ead4a9e8dab52bbefcf2cb06a1640a35997694706f7fbf3b09e78a850b1762c78e1dd8b06103dad8c5d1359703f2d7bffe15797979757fdb6c36f4ead50b43860cf1ca984b4b4bf1f4d34f374858b7d96c983973263a74e8e095317cfffdf778fae9a71bdc9794945427403c3d861e3d7a60cb962d58b06001d6ad5b878f3efa08808883f9f3e7d78565a9fdc4c7c73b7c9dae5dbb0270ecc4381b5bab56ad505b5bebd6b88967a000218410424c424de28e1e3dda2414eaecd9b33876ec187af4e85177df934f3e898888087cf7dd77e8d7af5f83edf3f3f39b54996a89975f7e1925252558ba742966cc98d1e0b1e5cb9763d9b2654d9ef3f1c71fc366b3e1b7bffdadd3d7fde0830f307dfa7474ebd60debd7af47efdebd1d6ed7ff576b49e5133426373717369bcd699e812b64656541d334872e13006cdab409212121e8d0a1034a4b4b01a049f5287b7af7ee8d909010ecdfbf1f3535354d5c1d95776164cc494949cd4e80d5e7e62ccfc48c31dc76db6db8edb6db5a1c83278f5dfffefdf1de7befa1a6a606df7fff3dbef8e20bfced6f7fc39c39731015155527c80034484ab7a7b0b01080f35031e21fb00a16218410621223468c80a6690e85c3a64d9b9a4c42f7eddb8701030634111fb5b5b5d8b46993c37dd86c36d4d4d4387c6cdfbe7db0d96c9832654a93c79c89994f3ef904175c708143d70600de79e71d4c9b360d898989d8b871a353f101d487c7ac5bb7aec963fbf7ef476e6e2ece39e71c87792aae72f9e597e3ce3bef6cf2efa69b6e0220eed39d77ded9ec64db9e8888085c74d1453875ea14befaeaab268f7ffae9a7006038d7a439ce3fff7c444444e0ebafbfc6c993271b3c565b5b8bcf3efb0c369bad490e919978e3d829424343317cf8703cf2c82358be7c390060d5aa55008076eddaa177efde3872e408f6eddbd7e4b9aa12d8f040b24e83100a10420821c4246ebffd760052f54aadbe0352eaf5f7bfff7d93ed7bf6ec899c9c9cba555d404289162c5880ecec6c87f1ec313131387cf8b0c3fdf7ecd9139aa63529d79a969686d75e7badc9f65959593874e890d3f0ab65cb9661c68c19484a4a42464686c3b02b7bc68e1d8b949414646464e03ffff94fddfdb5b5b578f4d1470100f7dc734fb3afa1701652357bf66cfcf39fff6cf2eff9e79f0720d59afef9cf7f62f1e2c52eed0700eebdf75e00c01ffef08706216a5bb76ec58a152b101717e750d4994554541466cc988193274f36e903b264c912e4e5e561e2c4892d7efe4670e7d855545460cf9e3d4ebf8ff6646565390cef524e877d38ddcc9933a1691a1e7ef8e106a2fdd8b16378e69967eac2d788ffc2102c420821c4242ebcf0423cf0c003f8dbdffe8681030762ca9429080b0bc3aa55ab10131383f8f8f80613eb79f3e6e19e7beec1b061c370dd75d7212c2c0c5f7ffd35b2b3b3f19bdffca6c1445071d96597e1bdf7dec3d5575f8d61c386212c2c0c63c78ec5e8d1a3317bf66cbcf9e69bb8e1861b70fdf5d7233e3e1ebb76ed425a5a1a6ebcf146ac58b1a2c16ba9387c4702e4cb2fbfac9b085e72c92578fdf5d79b6cd33889392424046fbef926c68f1f8febafbf1ed75f7f3dba77ef8ef4f4746cdbb60d175f7c31e6cd9bd7e475e6cf9f5f574657393f8b162dc2bffffdefbaf15d73cd35cd7ef6461af14d9d3a151f7df4113efcf0430c1b360c93274fc62fbffc82152b5640d334fceb5fff42dbb66d1b3c67d3a64d75a24eb9163939397522d466b3d555457385e79e7b0e1b366cc0cb2fbf8c1d3b7660d4a851c8cecec6ead5abd1a54b17fcfdef7f6ff29cd75e7badeef3526ec1ead5ab71e8d02100404a4a4a9d786809778e5d666626c68f1f8fb163c7b6d8a3e4adb7dec23ffff94f5c7cf1c5e8d5ab173a75ea849f7efa09fff9cf7f10111181b973e7d66d3b7ffe7c7cfae9a758b56a15860c19822baeb802a74f9fc6071f7c8063c78ee191471ec185175ee8d2fb52186dd4484cc6ebbdd78943b66ddba601d0b66ddbe6eba11042886e780e6bc892254bb49494142d3c3c5c4b4848d0eebfff7eedf8f1e35a525292d6b367cf06db2e5dba541b3a74a8161515a575eedc59bbeebaebb45dbb76690b162cd0424242b48d1b3736d8bea8a8489b3e7dbad6a54b172d3434540b0909d1fef4a73fd53dfecd37df68e3c78fd73a75eaa4b56bd74e1b3d7ab4b66ad52a6dc3860d9acd666bb0ed800103b4214386387c0f4b972ed56c369b161212a2d96c3687ff1abf17c5eeddbbb51b6eb8418b8d8dd5c2c3c3b57efdfa690b162cd0ce9c39e370fba4a4242d2424a4c93fb57ffb313be3c081039acd66d3468f1edde2b68e387bf6acf6ca2baf6883060dd2222323b5e8e868edaaabaed2366fdeec707bfbcfc7d9b8f5525252a2cd9933473be79c73b4d6ad5b6bddba75d366cd9aa5e5e7e73bdcfef6db6f77380675dfb871e3748f41cfb153dfa9c6fbf9f2cb2f9b7cd7323333b57befbd571b326488161d1dad4546466a7dfbf6d566ce9ca9fdf8e38f4d5efbcc9933da73cf3da70d1c38508b8c8cd4dab76faf8d1e3d5a7befbdf79a6cab8efd1d77dce1f03d5d72c9252d1e0f57cf613cd799834dd32809ad40565616468c18816ddbb631ae9110e277f01ce67fe4e4e4a07ffffe78eaa9a7ea3aac136206ebd6adc395575e89850b17baecc0f81a57cf613cd79903734008218490204455bf6aa9fc2e217a51d5bcf4f4af21c105050821841012843cfae8a3a8a9a9c1e0c1837d3d14122064646460debc7978eaa9a7d0b66d5b4c9a34c9d7432216850284104208218418e6cb2fbfc41b6fbc81810307e2f3cf3f474c4c8caf87442c0aab60114208218410c3309f88b80a1d1042082184104288d7a00021841042082184780d0a1042082184104288d7a000b11867cef87a04841042082184780e0a108bf1c413be1e012184104208219e8355b02c465999af47400821ee939d9dedeb211042886e78eef22e14201683028410e28fb46bd70e0070cb2db7f878248410e23eea5c463c0b0588c5a0002184f8237dfbf6454e4e0ecacbcb7d3d146251727381a9538137de00860c91fb3efb0cf8fdef818d1b81b66d7d3b3e42dab56b87be7dfbfa7a18410105884eb66ddb86279e78029b376f86a669b8e0820bf0c20b2f60883a9bda919d9d8d79f3e6e1ebafbf46ebd6ad71d55557e1e5975f466c6cacd3d73f7e1ca8ad0542989d4308f13378e126cdb17fbfdcfee63780ba0c9e3e2db7b1b1c08001be191721c4fb709aab83acac2c5c7cf1c53878f020162c58803ffef18fc8cdcdc5d8b163919393d360db23478e60cc9831d8bf7f3f162e5c88f9f3e763eddab598306102aaabab9dee43d3e882104208093c7272804e9d809898fafb1213e5f6c811df8c8910456d2d70d555c0faf5be1e4970400744074f3ef924a2a2a2b079f36674ead40980c43b272727e3f1c71fc7871f7e58b7ed73cf3d878a8a0a6cdfbe1d89bf9e61cf3bef3c4c9830014b972ec55d77dde5743fc78e01d1d19e7d2f8410428837c9c9019293019badfebe6edde4363fdf37632244515202fcf7bfc0ac59be1e4970400744075f7df5152ebbecb23af101005dbb76c5983163b066cd1a9c3a75aaeefe952b5762f2e4c975e203002ebdf452242727e3fdf7df6f763fc78e993f76420821c497ecdd2b02c49ed6ad81b8383a20c4f71417cb6de7cebe1d47b04001a283aaaa2a44464636b9bf4d9b36a8aaaac2ae5dbb0000f9f9f9282e2ec6c891239b6c3b6ad4286cdfbebdd9fd508010420809347272807efd9ade9f984801427c4f5191dcc6c5f9761cc10205880efaf5eb87cd9b37a3b6b6b6eebeaaaa2a64666602000a0a0a00008585850080f8f8f826af111f1f8f92929266f34028400821840412bffc22212e8d1d10004848600816f13d7440bc0b734074307bf66cdc7befbd98356b161e79e411d4d4d4e0cf7ffe338e1e3d0a00a8a8a868701b1e1edee435222222eab6090b0b6bf27868e85cbcf452477cf249fd7dd3a64dc3b469d3cc7e3b841042885750755a1c0990c444e09b6fbc3b1ed23c5bb648a96407d39880a5a80868d50ae8d8b1febee5cb9763f9f2e50db62b63a52053a000d1c1dd77df8dc3870f63d1a24558b66c190009a97ae49147f0ecb3cfa2edaf45cc55985665656593d73873e64c836d1a131fbf1893270fc75ffee2897740082184781f2540faf469fa181d106b71f22470e185c0b265c0cd37fb7a34dea3b858dc0ffb36088e1680b3b2b23062c4082f8f2ef06008964efefce73fe3e79f7fc6a64d9bb073e74e646666a2a6a6060090fcebd28e0abd52a158f6141616222626c6a1fb0188f2660816218490402227479c8ea8a8a68f2526ca75efd7f539e263f2f3819a1ae0d7e08ea0a1a888e157de840e881b74ecd811175e7861dddf5f7cf105ba77ef8efefdfb0300121212d0b973676cddbab5c973b76cd982a1438736f3da1420841042020b5582d7110909725b5000f4eae5bd3111c7fc9ace8a5f7ef1ed38bc4d511113d0bd091d1083ac58b102df7df71de6ce9ddbe0fe2953a660cd9a35386257da233d3d1db9b9b9b8e1861b9cbe1e050821849040c351095e059b115a8b6015202a048b78073a203ac8c8c8c0d34f3f8d891327223a3a1adf7efb2d962e5d8a2baeb80273e6cc69b0ede38f3f8e0f3ef800e3c68dc39c3973505e5e8e458b1661f0e0c1b8e38e3b9ceea34387fa5859420821c4dfa9ad0572738199331d3fae1c10e681588360152045454033012ac464e880e820313111ad5ab5c2a2458b70fffdf7e39b6fbec1b3cf3e8b55ab56212424a4c9b61b376e44efdebdf1d8638fe1c5175fc4e4c993f1f9e79f3bcdff00c40109b61f3d2146a8aa027af706366ef4f5488837a8ae9644661e6fffe1c811c9ef70e680b46b07b46f4f07c42a2801126cd1187440bc0b1d101df4ead50bebd6ad7379fb010306e8da1e10015252220960a1a17a474848f071f830b07f3fb073273076acaf47433c4d6929f0d34fc0f6ed3cdefe4273257815090914205621181d909a1a79bfcc01f11e74402c46a74e80a6c9459610d2327979725b52e2db7110efa0ce8daa6b31b13e3939d25f2129c9f93689890cc1b20aea38049300f9e517997b5180780f0a108ba11ae0049bf54988bb2801124c17cb6046f500fbf967df8e83b84e4e8e8449b66a26e62231910e8855282800dab6ad9f9407036a41832158de8302c462508010a20f3a20c18572402840fc87e64af02ad88cd01a689a0890810325bfeed4295f8fc83b1417cb2d1d10ef410162313a74905b0a10425c830224b8500e0843b0fc87bd7b817efd9adf263111282c94587ce23b4a4b81ca4a60d020f93b589c653a20de8702c462b46f2fb7c1f2a327c4280c1c77db730000200049444154c10a2ee880f8179595c0c183ae392035353caebe4625a007a30069ddba7e0e463c0f0588c568d54a12d1e98010e21a7440820b7b072458e2d3fd99fdfba50f484b0284cd08ad41b00a105582d766f3f54882070a100b121b4b0142882bd4d64a19deeedd29408205e5809c39039497fb762ca4655c29c10bb019a155500264e040b90d16015254c4fc0f6f43016241284008718dc242694c376c984c4c6b6b7d3d22e269ec4b94330fc4fae4e44845a5ae5d9bdf2e36564260e880f896820239163131405858f00890e2620a106f43016241284008710d157e356c98888fe3c77d3b1ee279caca806edde4ffcc17b03eaa02564ba12d361b9b115a818202f97dd96c224282458014153101dddb5080589098180a10425cc15e8000c173b10c664a4beb2b2ad101b13e7bf7b61c7ea5603342df939f5f2ff0834980d001f13e142016243636787ef48418212f4f7ae7a80ecbcc03097ccacaa4a95d68281d107f2027a7e512bc0a3623f43dca0101824b80d001f13e14201684215884b8465e1e70ce394074b4fc4d0112f89496cac4a873670a10ab73fcb81c23571d103623f43d8d054830cc45aaabe5bc4207c4bb50805890d858f9319c3debeb9110626d9400898991bf8365b52e98292b13d72b2e8e2158562737576ef584601d39c2f2cabea2b6560a7ba88a64c1e28028914507c4bb50805890d858b9e56a2e21cda304486424101ecedf4ca0535b2b02a45327a04b173a20564795e0eddbd7b5ed1312a4bcb27da533e23d8a8ba51964b08560a9850c3a20de8502c482280162d4faacae067af502d6af373e2642ac86a6d50b109b4dc2b02840029b93274584d001f10f7272442876e8e0daf66c46e85b540f90601320c5c5724b07c4bb50805810154e625480141602070e009b36191f132156a3a40438754a0408103c17cb6046ad8cd301f10f54095e57613342dfe248809c38218b99810c1d10df400162419403627432a54e26ca062724905025789500a10312f89495c96dc78e2240e880589bbd7b5daf800548b3c290103a20bea2a0403e7f3511578ba1817e5e2d2e9630dea8285f8f24b8a000b1209d3a4948895107440990bd7b8d8f8910abe14880d001096cec1d90b83811249595be1d13718ca6e97740c2c244585280f8868202f9fc5bb592bf83a5b8872ac1db52b34c622e14201624345426536609909c1c56152181475e9eac5aa9b8dd9898c05fa90b761a3b20407dfc36b116478f4ace8e1e0102b019a12fb16f4208048f00611342df40016251cce805a24ee2274e305481041e7979408f1ef5ab560cc10a7c9403a292d001e681581515faab57802424d001f115f63d4000f3c2c1ad0e9b10fa060a108b628600292890500580792024f05015b0144c420f7ccaca244e5b85ea005c5cb12a3939924fd0ab97bee7d101f11d8d05889a3f04fa79b5a8880e882fa000b1286609908b2e9215620a101268341620d1d13241ada9f1dd988867292dad9f14a9154b3a20d6242707484a92fe3c7a50cd0889f7692c405ab512b731d0054871311d105f40016251cc58cd2d2890d5a773cea1002181872301a269c0f1e3be1b13f12ca5a53221026462dbb123058855d19b80ae484890858453a7cc1f13714e75b53801aa14b222189c653a20be8102c4a298e58074eb2665102940482071ea945c141b876001817fb10c66541774059b115a17bd257815aa1921c3b0bccbcf3fcb028ebd030204be00a9ac943c590a10ef430162518c0a90d3a7e5629d9020ab502cc54b0289c625780171400026a20732f60e08c0668456e5ec59e0a79fdc7740000a106fd3b809a12226c6f862a895611774df4101625162632594c4dd0ea4858572dbad9b5c04f6ed636c3c091c9a132081bc5a17ecd001f10f0e1e1411624480300fc4bb34274002f99caa04081d10ef430162518c96bfb33f9924278b9051933642fc9dbc3ce997e3a8663d1d90c0c53e091da0036255dc2dc10b006ddac831a600f12e0505525d4e9d4715812e40d402061d10ef43016251940071d7fa6c2c4000e68190c0212f4f62c555c75e409a1246445080043265654d43b0e880588f9c1cf92daa7c0ebdb014aff7292800e2e3a574b23d812e401882e53b28402c8ad184dafc7ca997dfae1dd0bdbb548ca100218142e30a588a40bf58063b8d1d90b8389940d4d6fa6e4ca429393940dfbe4d27b3aec26684dea7711774454c8c2cea689af7c7e40d8a8a64aed4a68daf47127c50805814331c906edda407486828d0a70f0508091c9c091076430f5c2a2b818a8aa60e484d0d8fb9d5c8c971af0296820e88f769dc0344111323f93c274e787f4cde8025787d07058845e9d851568f8c0a10054bf19240820224f8282b93dbc60e08c03c10abb177af7bf91f0a3623f43ecd091020709de5e2620a105f4101625142428c95bf6b7c3261295e12285455c9f79b2158c18512208d1d1080792056e2d429110f4604484282884a77ab4012fd1414346d4208182f8863758a8a98ffe12b28402c8c915e208e04c8a14312c240883f73e488c423d301092e4a4be5960e88b5d9b74f6e8d3a209a565f4e9e78963367e4bc49078478130a100be3ae00d1b4a6ab19ea62a02e0e84f82b8e7a8028a2a303f74219ec387240dab5936a4b1420d6c148095e057b817817fbbe618d0974014207c4775080581877c349cacbc5066fec8000cc0321fe8f12203d7a347d4c556c2181872307c466633342ab9193230b018dfb49e84195ef6522ba7770d6841090ea501111812b40e880f80e0a100be3ae03e2e864121b2b2b871420c4dfc9cb93d8ff8888a68f4547cb4a794d8df7c7453c4b599954f48b8a6a783f9b115a0ba309e8805cab2223e980788be6040810b8b975a74f03274fd201f115142016c64c0162b3c945810284f83bce2a6001f5abae6ab59c040eaa0788cdd6f07e3a20d6a1b212f8f453e0a28b8cbd8ecdc652bcdea4a040045f870e8e1f0f5401a29a10d201f10d142016c65d01a24edaf1f10def67295e1208342740a2a3e59661588147e32ee80a3a20d661f56ab966cd9c69fcb5d88cd07ba826848dc5bdc248454e2b4301e25b28402c4c6cace4735455e97b5e41815ca81b77f664295e1208508004278dbba02bba74a10362155e7f1d38ff7c60c000e3af4507c47b38eb01a2085407449d371882e51b28402c8cbbf5b79d9d4c9293e5b502f144428283da5ae0f0e19643b0f81d0f3c4a4b1d3b207171e280689af7c744ea397408f8ec33e0ce3bcd793d3623f41ec12a4094034201e21b284074f2dd77dfe19a6bae41b76edd101515859494143cf3cc33a868d460233b3b1b93264d42bb76ed10131383193366e0984e0f534da6f45a9fcd091000c8cdd5f77a845885a347c511742640d40a391d90c0a3acccb90352512195ff88ef58ba545cf71b6f34e7f51212e45a565b6bceeb11e7386b42a8085401525404b46f0f8487fb7a24c1492b5f0fc09fd8b973272ebef86274ebd60d73e7ce45747434bef9e61b3cf5d453d8b66d1b3ef9e41300c09123473066cc1874ead4090b172e447979395e7cf145ecdcb9135bb66c415858984bfb530e883b02a44f9fa6f7abfb7272c42627c4df68ae07082089949191142081486929d0bb77d3fbed9b11b66debdd3111a1b61678e30de0a69ba4378b192426ca62c3b1638cd1f734c1ec80f0bbe53b284074f0de7befa1aaaa0a6bd7ae454a4a0a00e0ce3bef446d6d2dde7aeb2d1c3f7e1c1d3a74c073cf3d878a8a0a6cdfbe1d89bf16343fefbcf33061c2042c5dba1477dd75974bfb332240c68e6d7a7fdbb6b2cac14474e2afb4244080c0bd58063bcd392080ac663a1228c4f3a4a7cb6f73d62cf35ed3be192127899ea3bc5cfeb524404e9d922a6781e416b009a16f6108960e2223230100718dce865dbb76456868285ab76e0d0058b97225264f9e5c273e00e0d24b2f45727232de7fff7d97f7d7a183d4bdd7234054177467271356c222fe4c5e9efc2e9c958b0424119d0e48e0e12c09ddde0121bee1f5d781fefd810b2e30ef35d98cd03b34d7055d11a8b97574407c0b05880e66ce9c892e5dba60d6ac59f8fefbef71f8f061ac58b102fff8c73ff0e0830f22323212f9f9f9282e2ec6c891239b3c7fd4a851d8be7dbbcbfbb3d9f497e22d2911dbdad9c984bd40883fd35c052c051d90c0a3b616387edc71127a4c0c10124201e22b7ef905f8f863493e7756c6d51de2e264018e89e89ea5a5268480fb0571ac4e511105882f6108960eba75eb86afbffe1a575e7925860d1b5677ff1ffef0073cfdf4d30080c25f9713e21b37e1f8f5be929212545757ebca03d1f3a36fe964929c0c2c5b2617f410ca4fe2671c3cd8b200a10312789497cb39cb9103121a2ae74996e2f50defbc23c7e6d65bcd7dddd050b98ed101f12c6acee060ca5247a03a200cc1f22d14203af8f9e79f71c515570000fef5af7f212626066bd6acc1b3cf3e8b2e5dbae0befbeeabab8615ee20503222220200505151e15480cc9d3b171ded96f98e1e05befb6e1a80692e8d519dac9b13201515b25df7ee2ebd242196212f0f183fbef96da2a3eb73454860505626b78e1c1080cd087d85a649f8d5d5577b662599cd083d4f7ebe54826aae8043200a104d732d046bf9f2e558be7c7983fbcad409891882024407cf3cf30cf2f3f3919393836ebfcef07ffbdbdfa2b6b6168f3efa28a64d9b569727525959d9e4f967ce9c01509f4be288c58b1763f8f0e1757f4f99a2afbca45acde8dad5f1e3aa146f4e0e0508f12f348d2158c14a69a9dc3a7240009944d001f13edbb6013ffc002c5ce899d7673342cfd352052c40847f4848609d574f9d92c5d8961c9069d3a661dab4860bc0595959183162840747171c300847079b366dc2b061c3eac487e237bff90d4e9f3e8d1d3b76d4855ea9502c7b0a0b0b111313e372f815a03f07a4a0407e50bfe6c33721290968d58a7920c4ff2829918b0643b0820f3a20d6e4b5d7c4a59838d133af4f07c4f3b82240424244fc079200514d089903e23b284074505d5d8d9a9a1a87f703c0d9b36791909080ce9d3b63ebd6ad4db6dbb2650b860e1daa6b9fee0890e64e26616140af5e1420c4ff70a5042f2002e4f871e0ec59cf8f897887961c902e5de880789bd3a781e5cb813bee907c0d4f4007c4f3b8224080c07396d5f9823920be83024407c3870f47565616721bb5125fbe7c394243433178f06000c0942953b066cd1a1cb15bba494f4f476e6e2e6eb8e1065dfb345b80002cc54bfc135705888a57569356e2ff2807c459f9e5b8383a20dee6c30f8113274480788ac444294070e284e7f611ecb4d4055d1113a3bf279995a103e27b284074f0f0c30f23242404a3478fc69ffffc67fcbffff7ff70e5955762d5aa5598397326bafe9a78f1f8e38fa34d9b3618376e1c962c5982850b17e2861b6ec0e0c1837187ceb3756cac849dfc9a3ed222ae081096e2f51cb5b5c0a38f4ab526622e7979404444cb178ce868b9651856e0505a2a49b2cea257bb74916daaaabc3bae60e6f5d7a52044af5e9edb877d3342623e2df50db327501d10556298781f0a101d0c1e3c181b366cc0b061c3b068d122cc9b370f070e1cc073cf3d87575f7db56ebbc4c4446cdcb811bd7bf7c6638f3d86175f7c1193274fc6e79f7fae2bff03d05f7fdb95d58ce464e0c0015eac3d416e2ef0c20bc09a35be1e49e0919707f4e8d172af8140acd812ec949539cfff00ea45a95ad5249e252707c8c830b7f3b923d88cd0b39495c9e266300a90e26209e9d439252326c22a583a39efbcf3f0e9a79fb6b8dd800103b06edd3ac3fb5393a963c75a1616353552b6d71507a4a606d8bf5fbad712f3f8f65bb93d7cd8b7e308445ca98005d00109449c75415774e922b73fffec5a380931c61b6f8820bcf65acfee475dcbe8807806579a102a024d80b009a1efa10362719403e24aec655191080b570408c0302c4f909929b71420e6430112bc9496bae6803011ddf39c3d2bcd6c6fb90568a6a2bc2984874b92301d10cf10ec028409e8be8502c4e2e81120ae9e4ce2e381a8280a104f4001e2395c1520e1e1f2fd0ea48b65b05356d6bc03a2040813d13dcf7fff2b4ebba7c3af142cc5eb3994b06bae0bba22264616026a6b3d3b266fe14a1342e25928402c4ebb7612a368a600b1d99888ee092a2aa429576c2c70e890af47635d0e1ed49fa47fea94080a570408c05e2081464b0e4844847473a603e2795e7f1d183e1cd05951de6d588ad773141488b0080f6f79dbd858111f81d2049c0e88efa100b138369bfcf05d59cd2d28908641aea87a96e2359fac2c094fb8f65ab9603a68194300cc9d2b9f91a6b9fe1c574bf02a2840028b961c1080cd08bd416121b076adf7dc0f800e882771b502161078c53de880f81e0a103fc0d55e20050540d7aeae3585a203623e9999b2127bd555f5050148538a8a801d3b44b0b98a5e011268f1cac14e4b49e8804c26e880789665cbc4919f3edd7bfba403e239825580681a1d102b4001e207b8da0048cfc924395956b3cacb8d8d8dd49399098c1801f4ec297f330fc431cac27ffd75d79f939727c2dad50a477440028b96caf00274403c8da649f5abebaf6ff958984962a2ac56bbda0b8bb88eab4d0881c01220e5e5d286800e886fa100f103f438207a04084017c44c323381f3cf07ba7797bf29401ca39acabdfbaee4cdb8425e9e5c285bb958389c0e48e0505929df135742b0e880788eafbe923e47de0cbf02ea27c82ac7919847b03a20ea3c4101e25b2840fc003d02c4d5d58cbe7de59602c41c8e1e9549726aaaac0e4645518038a3ac0c983913387e1c58b9d2b5e7b85a014b41072470508e594babee717174403cc9ebaf03bd7b0363c77a77bf6c46e8196a6b250ac255011248d50555c3528660f9160a103fc0130e48c78e72c1a6003107557e3735550a0774efce4a588e387346fe8d1a055c7289eb61581420c14b69a9dcbae28014177bb64c6865a58458ae5fefb97d5891aa2ae0830f803bee90f39b37510284e7537339764c8aa6b83a670002c759a603620d2840fc0057aa605555c98f4acfc98495b0cc2333530a00a8f0ab1e3de8803842ad6677ea24a11c1b3600fbf6b5fc3cbd02242606387102a8ae766b98c442e87140ce9ead172c9e203b5b4a486fdae4b97d5891bc3c0983bbe002efefbb5d3b1197bc56998b9e26840a57f351ad4e519108691556467c0305881f101b0b9c3e2dff9ca12a2ee93999b01296796466d6bb1f8008110a90a6a8c961c78ec0942940870e92d8da1c555572b1d4eb80d8ef8ff82f7a1c10c0b361583b77ca6db09d37f7ef975b5560c3dba4a488f823e6a142da82d101292e96f7e24ac550e2392840fc005792bfdc59cd5002444f3f06d2949a1a60eb5611200a0a10c7d84f262323a59ce7d2a5b272ed8c2347e43bea8e00611896ffa3c701013c9b88ae04c8debd9edb8715397040266bcae1f536030600bb77fb66df814a41812c9829e1ee0a8122405882d71a5080f801b1b172db9cf5e9ae0039718295638cb2678f94f56b2c407efe5956ef493d8d279377de298990ebd6397f8ede1e204060556c09764a4ba5fa595454f3db79db0109a6859b0307e49ce66a153ab3494991cfbcb9850aa28f8202f9cde839a6812240d884d01a5080f801ae0a90b0307d318daa14af9ed5bcddbb81fff99fe0baf8b64466a6ac248d1a557f5ff7eef21979b3724b6d2df0f0c33259b02a8dc369860f07860e6d3e195d09901e3d5cdf0f1d90c041f5006929f9b97d7ba0756bcf3b202929c1b77073e080efc2af00f9ccababeb43c18871f414ad51048a00292aa200b10214207e80ab02a45b377d154a7af796ed5d8d673e7b16b8e516e09557a41e3c11befd1638f75c499654a850056f566ec9cd055e7c51fa6b5895b23299244644d4df376b16b0668df395ebbc3cb9584446babe1f0a90c0c1952ee8407d3889a71c9092125950983245fe0ea63c102b08108061586612cc02a4b8982158568002c40f888a921adc2de580e83d998487034949ae5f485f7a09f8fe7bf9ffb7dfeadb5720a312d0edf1453342754cac7c6cd464d25e28df7cb3c497bff596e3e7e8ad800588c869db36302e96c14e69a9eb9db7e3e23ce74ca8f0abdffe56dfc24d20e06b01121f2f052b98886e1e7afa86296263a58c7a730571fc013a20d68002c40fb0d95aee05e2cec90470bd146f4e0eb06001306f9e3c47f5bd08764e9e0476ed6a2a40a2a26415de9b02441d93cc4ceb86c8a9701a7b3a759255e5d75e733c6e770408c05e20814259996b0e08e0590764e74e09731d3c58be8fc12240cacb45c8fb5280d86cac846536ee3a20807f2fec681a1d10ab4001e227b4547fdb9d9309e05a29deda5ae0aebbe4f59f7e1a38ff7c0a10c5b66df2f934162080f72b616566ca4a6171b1f42ab022cec26966cd92efe1d75f377dcc5d011228e102c18e1e07a44b17cf3a202929224282a984b9ca29f3a50001e4b3670896399c3d2b423d1805485999bc7f3a20be8702c44f68c901c9cf775f80ecdb27a5649df1af7f01191972dba68d4cb6bfff5e1a53053b9999e2769c7b6ed3c7bc29402a2a801f7e00eebdb77e5c56c49103024857f49e3d9b26a3d7d6ca6748072478d1e380c4c579d601193448fe9f9cec9b52bcdf7c232130dec42a0264c000a938e8c94ef7c1c2cf3f8b13108c02442d50d001f13d14207e427302e4f469b948bb2b40aaabeb2b0d35e6c811e09147a45ceaf8f1725f6aaaac206cdfae7f7f814666263072a4e38646ddbb7b2f093d2b4b8ec9555701bd7a595780387340424280993381f7df970a438aa347a594310548f0e26a123ae0390744d324d45209907efd5a5eb8319beddb818b2e02962df3de3e011120111140d7aededd6f6352528053a7e49a448ce14e13422030044871b1dcd201f13d14207e427302a4b0506edd152080e3d53c4d0366cf9615fe458beaef1f34482e48569de47a134709e80a6f3a209999724c060d92f158f5d838734000e0f6db657577c58afafbdce901a260085660d0dc77a631717132493d75cadc31e4e5492e84bd03d2dcc28d2778f659b9ddbcd97bfb04ea13d0f55458f404ac84651eeef40d03a4d475ab56fe7d5e550b141420be8702c44f888d75fea377f76402c824393cdc713cf3fbef03fff90ff0f7bf379c008485012346587792eb2d8e1c9195a4f3cf77fc788f1eb27a6bf664c811ca89090b1301929565cd2688cdad6627260293264932bac28800a103e2ffd4d6ea4f4207cc0fc35215b0060f965bb570e3ad3c901f7f0456ae941c2f6f9f777d5d014b71ce39528a9b89e8c629281021a14afcbb8acd26e7557f1620c5c512b1e0ea3985780e0a103f4139208eaa04191120212140dfbe4d2fa4bffc023cf00070fdf5c0b5d7367d9e9557d9bd857affcd392080775c107b27e6fcf381cacafa92c956a2a5d5ec59b3802d5b24dc051001d2bebdeb2be0f6c4c45080f83be5e572ced3e38000e68761eddc29635095069b5bb8f1040b178a407fe619c983500d3dbd8155044868a884be518018a7a040c46c881b33c0960ae2589da222994fb9f3de89b9f010f809cdd5df2e2890e4f0f6eddd7b6d47a578e7cd939c82bffdcdf1735253a5d292a7123efd81cc4c991438137ede1220478fca445d0990a143a50f86d504626d2d70fc78f32b4f93274b72a04a4677b70216202b75e5e5d67482886ba889b6151c904183eac3904243813e7dbc2340f6ed03962f071e7d14183d5aeedbbad5f3fb0544fc59458000ac846516ee56cd04fc3fb4952578ad0305889fa092bf1cad3cb8d305dd9ec62525d7ad03fefd6fe0e5979d271eaac9aed526b9dea4b9fc0f40564b6d36cf0b90c64e4c78b88810338e4d5a9a4c3eaaab8dbfd6f1e32daf66b76e0dcc9821dfbfca4ae30204706fb5383d5d92f9295e1c5355254d4cd7acf1ec7ecacae4d655072426467e739e704054fe87c25ba5789f7f5e264cb366895bdda993f7cebbc78e4908a95504c88001e28058b5cf91995454c86f2c3dddfcd776b76f18e0ff02844d08ad0305889fa062359d0910774f26805c480f1d92135e793970f7ddc08409c06db7397f4e8f1eb2da18ac02e4ec59e0bbef9a1720ad5bcb67e4e94a589999221495e302981722f7de7be2749971c15193c99656b367cd92fdad5e6d4c8018a9d8b271a3acfceedfefdebe039dc387e5d82c5eecd9fde87540545cbb990e4865a5843d3912209e2ec57be89054bd9a3f5ff21f6c36e0bcf3bc77de55df7fab0890941409ab54958c0299cc4cf98d39ea8d64946076408a8ae88058050a103fa12501e2eec904a84fa8dcb70f78e209d9c7fffd5ff38e8acd16dc0d097ffc51c2e19a132080772a612927c6fe78a5a602b9b9c67220340df8ec33f9bf19171c5727932929c085174a32ba190e883b9f818a33f745af077f401507484fafef13e109f43a2080ac6e9ae980ecd923e5761b0b907efdea176e3cc50b2f001d3a00f7dc537f9f5a5cf0860b60951e208a60aa84959121b79e70d98259801417d301b10a14207e8212208e7ef8ee3621542801b27429b06489947b74e582939a2ab1c8c1d8182a3353e2c0478c687ebb1e3d3c2b406a6ae418341642eaef2d5bdc7fed5dbbea0b1c98e980b832999c354bc4cfc993be11206a82132cddaef5a20448bb76c09b6f7a6e3f4ab4ea11205dba98eb80a80a58030736bcdf7ee1c61314168a089f370f68dbb6fefed4545924f2a4f0531c38209fbd3b45203c419f3ee272054322ba1220662f825456caf9dcdd3943731539fd01866059070a103fa14d1bb1e01b3b209a66dc0189899155e9975f167bff81075c7b5e6aaa348ddbb3c7fd7dfb2b99993221898a6a7e3b4f3b207bf648d85c6301d2bbb71c57230e555a5a7d83456f3a200070e38df5932ea30244efd8cf9e15f708a00071465e9e84fd4d9b2602c4530df9cacae47bd0aa95ebcf31bb19e1ce9db290d0a143c3fb3d5d8af7a597a4b7cffdf737bcffbcf3e4d61beeb39512d001096bedd327f00548559574bdefda55be5f66ba5d46aa6602725d292b93f3a4bf515b2b7328866059030a103fc25133c2f27249123422406c36b9988685c98a9ba3aede8e1839529e1b8c61589999cefb7fd8a30488a7c2253233e5188c1ad5f07e3362c5d3d280f1e3e5ff663a20ae546b6bdb16983a55feefae00090b93157abd0ec84f3f49d2bdbaf893a6a8d0b83bef947e382a54cf6cf4744157c4c599ef80340ebf02e47cdcb1a367be23c78e01afbe2a8b418d854f6cac2c3004a3000182a31256569684f6dd71872cf29929a8cd102080774b419b45498988103a20d68002c48f70547fdbe8c94431772ef0cf7f360d33688ef6eda52a49b009901327e402d852fe072002e4d429cf9dac33338173cf958976638cc48a9f3e0d7cf51570e59532c932cb01e9d0c17581fbd863927cab4aabba833bbd40d4e4e6ea41931b800000200049444154ab29409ca104c8c8913239576593cd464f177485271c104702442ddc78e23bb278b1bcfe9c398e1ff756fe9d150588aa8415c8646488bb7ed34df2b799df31b304883f8661a9e2057440ac0105881fe1c801314b804c9d0adc7ebbfee7a5a602df7e6b6cdffec6d6ad32a9775580009e0bc3faf65be7e3484d95c9b73b31ea1919122b3c71a27949877a2793bd7b038b16b95f5e1a70af6b6f76b68c73cc18e9b172e284fbfb0f549400b1d9245f67f56acf542672d701f9e517734a4797968ac3a33aa037c61302a4ac4cfa2fdd7baff34ed5a9a9b24a5e5969eebeeda9a991247bab09909414b9ee1d3feeeb91788e8c0ce0a28ba4d081cd66be008988703fafc79f05885a98a003620d2840fc88e604487cbcf7c703c88570e74e59e50f163233c5fde9dfbfe56d7bf4905b4f089093272551dc990031122b9e96264d16fbf7372fe9d09dc9a451a2a3f53b20d9d9b2cadaaf9ffc4d17a421b5b5f27d56a171b7dc2293a47fffdbfc7d9596bae78000e608a25dbbe4d6910302c877c4ec24e1254b44583cf490f36d5253254fe0fbefcdddb73df9f922e2ac284080c075416a6a804d9b64012422427e67660b10237dc3fc5980d001b11614207e84a38960418184b5b4940ced2952536542b26d9b6ff6ef0b323325e722c4855f4f972e9240eb0901b26d9b7cf6ce044874b4acd0ba2b40264e948b94af1c10337067ecbb77cb24a76f5ff99b02a421858532315502242606f8ed6f250ccbec5ca7b232f71c10c09c30ac9d3b25974889d1c62427cbf7cbacc9d8c993c02baf0077dde5bc092c000c192209d99e0cc3b25a095e45fffe725e0a5401b273a7b83b63c6c8df66f79b315ab4c6dde21e56a0a848aec756a9ea16ec5080f811ce1c10234d088d72eeb952a12b58f24034ade50ee8f68486caf1f18400c9cc14e179eeb9ceb771a721e1e1c372719f3851fe76947be40efee080d4d64a65b1941411f65dba5080344695e0b52f0e306b960837b3c3318d38206624a2efdc2913deb030c78fab4a58aa6a9a51fef10f292cf2f0c3cd6f171e0e0c1be61d019294e4b97db8439b36f2dd0b5401929121c7571516313bcccfe89c212c4c2200fc558074ee6c2cac97980705881fa10488fd2aa3d1d50ca3b46a2527ca601120870ec9c4c655010278ae146f66a624013797d49d9a0aecd8019c39e3faeba6a589bb73d965f2b73f3b207a05c8e1c392803f6080fceda924637fc69100b9ec32f9dbec64745f3b203ffce03cfc0a9092b08039df918a0ae0c51781db6eab0fdd6c0e771617f470e080b83091919edb87bb047225ac8c0c39b61111f277bf7e92c76756a96b33e60c662d4a791b3621b41614207e444c8cc4fd9e3c597f9fd1268466e0e90ba19550ef53af003974c8336369691ca9a9122eb36387ebaffbd967923fa2267e6609105f38207ac7ae26352ace9c02a42979792224edcb29878448c9d0152b1a9e9f8ce2ce77263252aac2197540344d72409a13206ddbca6ab219df91d75f9709d2638fb9b67d6aaa4c4c3db5126dc50a588a40ad84a569224054f81520e7a0eaea7ae16f14b30488bf3a201420d68102c48f501551ec571e7ced800072213c72a43e213e90c9cc9490043da5613de180e4e7cbbf967a910c1e2c76beab02b1a606f8e28bfaf02ba0be94add1f87e5f3920a74eb95e2d283b5b423cd40ab412209eeae3e28fa80a588db9e30ef9acdf7fdf9cfd9c3923ffdcf9cec4c51977400e1d920a68cd0910c01c915a5505fce52fc0f4e952fdcd15d4e2c3962dc6f6ed8c0307805ebd3cf3da46494991f15554f87a24e6b277af88d0c602043047e49e3c29dfe9601520c5c54c40b71214207e44630162461774335017c26070419a2b7beb8c1e3d44a0d5d69a370e579d98d6ad81e1c35d8fcddfba55569d1b0b909a1ae3652f7de580a87dbb4276b6c4fcab0203fdfa494cbe998dedfc1d6702a4470f60c204f3c2b054e34a77be335dba183f663b77caad3704c85b6fc982c2ef7feffa737af5926b82a7cebb5676405252e4fa677605325f93912121b5175c507f5ff7eeb28864860031ab6cbfbf0a103a20d682024407b7df7e3b4242429cfe2b2c2cacdb363b3b1b93264d42bb76ed10131383193366e098c1a0492540d40fbfa44456ce7c2d401212e45fa0f703a9ae96dafb7a0548f7eef25c339ba37dfbad94c975e5d8eb09914b4b931567fbceea66945daca81017c2170e08e0fad855052c855a7d0cb4898e119c09104092d1bff9c69cf0182540dcf9ce98d18c70e74e2944a07af938a35f3f991cbabbc070f62cb0702130654a7dee912bd86c122ae9090172e68c4c56ad2c4080c00bc3cac800468c90d03e4568a8e41a518018870e88b5a000d1c13df7dc83b7df7ebbc1bfb7de7a0b6ddab4c1b9e79e8bf85f9b711c39720463c68cc1fefdfbb170e142cc9f3f1f6bd7aec5840913506da03b969a082a1d63d6c9c40cbc9107f2c51712fea427a1ba2566cf968bfe7befb53c81f8e107d9b73b020430370c4b4f25aed45459cd74a52f425a1a70e9a5525c4061860031b29a6d0425405c4944d73499d0d80b905ebdc40d31e3e27fdf7dce3b5bfb0b9ad6bc00b9e61af9be98e18228d7ca9def4c5c9c390ec8c0812d57cc494e16819d9fefde7e56ad02f6ef079e7842ff73d579d7ec10c1bc3c794dab0a904e9d24413e900488a6011b37360cbf5298558af7c811b9353a6730ab379437a9a99131d301b10e14203a38fffcf3317dfaf406ff92929270faf469dc7cf3cd75db3df7dc73a8a8a8c0faf5eb71fffdf7e3f7bfff3dde7fff7d7cfffdf758ba74a9dbfb8f8c94b2ab561520df7d675ea50e477cf6995c18b76f37ef3557ad92c9e9b469c0d0a1f2b7b38b7966a64ccc870dd3b70f2540cc4a443f7b563e6b3d02046859209696ca36f6e157803902444d267dd10704704d801415c938ed57a1c3c345f49a2140d6ae95e3e6cf9494489e873301121e0edc7aab8414555519db975107c40c01e2ac03ba3d4663f4d7ac9130afa143f53ff7fcf3e53b6b56196085557b80d8136895b0f2f24420381320669c837ef8414225ed1d1677500e883fe5c6a9f1d201b10e14200679f7dd7761b3d9307dfaf4bafb56ae5c89c99327233131b1eebe4b2fbd14c9c9c978df6086a67df93b5f7741b727355526263ffee8b97d28e16196d3a212e75f7d55c246e2e2a4a1da79e78913d0f8e49a99290dc0f496a58c8991928a6639203ffe28a5625d15204949f2de5afadcd6af1717c81302c4570e88da9f2b636f5c014b61c6c5bfa44426186686e1f9024725781b336b96b86d6bd618db975107a4a8c8fd09525595f4836929ff0390df57ab56ee7d47344d16562ebf5cff7301395701e6bbcf070e48e88fdd25cc72045a25ac8c0c71db2ebeb8e963fdfac90296d1a4fbac2cc909344a4c8c84159b59f1ced3a8732f1d10eb40016280eaea6abcfffefbb8e8a28bd0e3d7b239f9f9f9282e2ec6c891239b6c3f6ad4286c37b87c6fdf8cb0a040d47cebd6865ed214468e9450154f8561699a9c3c01f3f6619fc87dc10512e2b57ebd7c9e9326c94ad4c68d0db7d71b7e05c845c5cc4a58999932391831c2f5fdbb122297962609d88d7b10b4692302ca0c07c4db02a4552b2917eb8a03929d2ddb37ae42648600513f7b7f4f667745800c1c2813e3d75e33b6afb232391e6ddae87f6e972ee214ba5a7ca0317bf7caf35d1120616112aae7ce7764d72e398f3716fdaed2b1a34c4e3d21407af468188a69355252c4f93110d56c293232e4fbe6e81ca95cb67dfbdc7f7d4d93f3905e07df11662c4a791b0a10eb41016280b4b4349494943408bf5289e8f10e6c89f8f87894949418ca03692c40ac107e054868d8a0419e1320870fcb243239d95c01d238917bdc3860d326e0bfff1597e1924ba4b24f5a9a4c4adc1120805ccccd14200307ca67ee2aa9a952aed3599e8ba6c97b743611329a7468249cc628ae8e3d3b5bbe5f8dbb5e2727033ffd241352775102a4bcdcbf4b87e6e58903d85218c3ac59f27d5231e7eea0aaa6b9d3b5d868334255016be040d7b67757a4a6a5c9e7397ab4fee72a3c917f67e50a588a9414111f3ffde4eb919843e3fe1ff698518af7d021b9869ae58000fe2540540e2443b0ac03058801de7df75db46edd1a37de7863dd7d15bfce2ec2c3c39b6c1ff16b6bd38a66662073e7cec5d5575fdde0dff2e5cbeb1eb74ffeb24213427b3c9988aedc8f7bee918ba319a12c99998efb68d86cc0155748bcfeca954061a1382240cb7d379c61b603a2771ca9a95246d75922e3debd7281f29400292d95fc005f745576b51b7ae30a588a7efd64a273f0a0fb63c8caaaef58efcf6158797922a65b120553a78a6b6620e5cd50df18d5a7c75dc7e9871fe437ebeafe55252cbda4a50163c7d677bd7687d454e0fbefcd2dcee10f0244e56a0542185661a1b839ce04486cac7c178d0810b50812ac02a4a848ae41eddae97bdef2e5cb9bccc9e6ce9deb9941061914206e72f2e449ac5ab50a13274e44273bcf34f2d71956a583ce67677ebd424436330b5bbc783156af5edde0dfb469d3ea1eb7aa0302c885f0c71f6595d76cb2b26455f3da6be56fa342c795446e9b0db8ee3ab9b8bff30ef0f0c340dfbeeeedcf2c0172e2844c94f53a31a346c9fb71f6b9a5a549e8d9d8b18e1f375af5c4174d0815aa91624b34ae80a53063f571fbf6fadafefe1c86d55c052c7bdab7076ebc1178e30df7cbd31ae91b638603e24af89522395926ed7a12ef4f9f06befacafdf02b456aaa0864338b73f88300e9d245ce29812040befa4a6e9d3961369bf15050750d352367d41f05882ac1abd7519d366d5a9339d9e2c58b3d33c8208302c44d3ef9e4135454543408bf02ea43afec7b82280a0b0b11131383b0c6311e3ab0ba00d134696667362a76f59c73e4c2635480ecdae57a227768a874287ee105f7c2410011200505c6e395b76e95cf58af00e9d041f23b9a1320a3473b8fb737c301f176fe87223abae5b19795c92aa4a33e0c8989b242edeec5ffe4497198aeb842fef67707c41501024818d68103c0860deeedabb4d47dd1dab1a384d2b92bf6dc11203535524ed7553232a4378e51013278b07c3fcd729f4f9c10c16e750162b3054e25ac8c0cf90e75edea7c1ba3a5785502babbd7307ba2a264c1ca9f04089b105a0f0a103779e79d77d0ae5d3b5c7df5d50dee4f484840e7ce9db1d5c12c7ccb962d18ea4ead453b9400a9a9018e1eb59600e9df5fec4d4f8461d99f3ccd08f5d29bc86d94eeddeb3bd71b2133535697fbf7d7ff5c679f5b65a54c129b9b08d9575f73075f3a20ae8460a95554470e484888385fee0a90efbf9763af2a1d0583030200175d24a149ee26a39795b92f5a6db6fa4a58eeecf7f061fd0204d0f71d494b93f3823bbf657bc2c2e4dc685623587f28c1ab08944a58cde57f28dc0df3539895800ec8efcbe835c1dbb009a1f5a0007183e2e2627cf1c517b8f6da6bebf23aec9932650ad6ac598323761998e9e9e9c8cdcdc50d37dc6068df3131123eb46f9f88102b0990d05009f5315b80fcfcb34cdc55ec6a4b09d5ae909929130c772aecb88359cd083333e5330e71e3979b9a2ab1eda74f37bc7fd326498c6e4980f8ab03e24a085676b65c54fbf573fcb891f087eddb65923878b08cc55f1d9053a7e43be0aa00b1d9809933818f3e72af1a9511070470bf17c8ae5d72ab4780c4c7cbaab05e0172f9e5e6ac489b997fe74f02242545ca251bb916f89a921271dc5a1220c9c9f2fb73e73cdcf81a6a06fed60d9d0e88f5a0007183152b56a0a6a6a649f895e2f1c71f479b366d306edc382c59b2040b172ec40d37dc80c18307e38e3bee30b4efd858b9fde107b9b59200013cd39957c536abd59bd4540913306247bb5b52d75dcc10209a666cdca9a9225a5542bf222d4d2650cd4db8cca882e54b07a4a5b167674b3f0767e95946044856967cb6ad5b9bd320cf57b85282b7313366c882c93befe8df9f11070490cfda1db1b773a7949fd5e34ce88dd13f7c58be7346c3af14a9a95224c10c717be080fc0e5422bf954949910515b30a7cf8824d9be4b6a54a68ca6573a7e964e36ba819508010a35080b8c1bbefbe8b2e5dbae0b2cb2e73f878626222366edc88debd7be3b1c71ec38b2fbe88c99327e3f3cf3f3794ff01d40b105526d28a02e4e851732f08595992c3d0ab97fcdd5242754b9c3821177f6f0a90f6ede53d18f95c0e1d92c9abbbe31e344826168d3f375756626362e442ef6ea51d5fe780b434f6ddbb1de77f28faf5936377ea94fefd6fdf5ebff2e86e58901570478074ed2a93ec8f3fd6bf3fa3df99b838f7c4dece9d223ef4f657d22340d2d2c4c5747209d18daa8a67860b72e0808871339c194fa37eb3fe9c079291210b542dfdaefaf4915b7716421a5f43cdc0df040843b0ac0705881b7cf3cd37282c2c84ad9933f4800103b06edd3a9c3c7912bffcf20bde7aeb2d7436e1db6fef808484586f954a4d8ecd0cc3dabe1d183ab4fe82d8bebdac7cb9bb0f7713b98dd2bdbb880877b16f9ce80ead5a49c348fbcfadb050be4b2dadc41aad7a62349cc6086aeccd856139ab80a570b7115865a584f4a895477f77404243f52f7a5c70814c80f4b8a2b5b55236da1721587a13d0157a62f4d3d2a459a359a2bc470f738a7300fe51014bd1a38784d1fa731e88caff6849f0b56d0b2424b82f40860d3357541aad8ce84daaabe51a4407c45a5080f8196a32f5c30fb2baa87a0b5885ae5d6525c74c01a212d0ed3112f36c2491db08464bf16666cacaa411d1999ada3059f5b3cfe4a2346142f3cf332a408c86d318213a5a6e9d0990d3a7257cc51501a2f7e2bf6b978420058a039298a8bf3bf6b06172fcf5f451397142048b510744ef67ad69ee0b90e46411f4274e34bfddd9b3c0175f98177e0598579c03100162e64ab927090911e1e7af02a4bc5cae6f2de57f28dc0d053533015de14f0e884a96a703622d2840fc0cd548e7c001eb855f29cc4c882c2b93d2968e0488a3846a57c8cc94d5477712b98d60860031eadaa4a6ca185495e8cf3e934a60ca59738611015253637c35db082d39207bf7cac4b3b910ac981811327a2ffedbb7cbf76cf060f9dbdf1d103de1570af5dbd5d3a7a2ac4c6e8d3a20274fea3b471c3922df55770508d0728cfe77dfc9fb33538000e614e7d034ff724000f9ddfa6b08d6e6cd727ed42340f4e63e3abb861ac59f04885a88a003622d2840fc1035a1b2b200f9ee3be33d2f0060c70eb96dbc7aa312aab76dd3f77a4613b98d6044805457cb7b35438000f219d4d68a0051e5619bc38800512bc2be76409c8dbdb912bcf6b8b3fa9895254e9baab6161727ab7167cfea7b1d2be0ae00898f1731d0b8f84173a8aa59461d10409f0ba28a7bb823405493d296be23696922ac468dd2bf8fe630a33847519108367f12202929f21b36b3f089b7c8c890557967d5f71ad3af9f085c3d22d3d935d4283131e2e0e869bee92b8a8be5960e88b5a000f143d46ab59505c89933f589f246c8ca92c4e9c627e881036552a7d769319ac86d841e3d64f25951a1ffb93ffc209fa9d1712726ca8430335356a48f1d736d25b6634759c9774780a8c9a4af1c10b55f670e4876b67c261d3a34ff3aee0810fb04744026e29ae63f2b87f6b82b4000f90c7ce18000fa1ca79d3b253cb3470ffdfbebd851448f2b02e4b2cbf487b2b584d1e21c807f95e055a4a4c839c61f431b5dcdff502427cbf5233fdff57d38bb861ac595dc3aaba0ce017440ac0505881f627501327cb85c5ccd08c3dabe5dc2571a5fac1d2554bb82ca7ff09503024898875e3233e53d1b5dc5b28f154f4b9370be0b2e68f9792121b21aedcec4594d267de580b46a2593436717ca962a6029faf5ab0fd772859a1a6942687fccd405d0dfc2b0aaaaa48f801101e20f0ec8ce9db2b8e16eb26e4b22b5b4547e7baeb88e7a51c5398c3424f44701e2af95b0ce9c91ef82abe157807bb9685959c09021e60b5ea37981dee4a79fe47c1015e5eb91107b2840fc10ab0b90c848110d6608104709e80a77724d5422b72f5642940071a7125666a65c449cf5a9d0436aaa5402fbf45360fc786992e70aeec6fc9a3199344a73bd405aaa80a5484e96f7e2ea67b077afac5636764000ff5bad3d72448497bb0264d83029cfad728f5a4289d6965ca9e650e1167a1d1077c2af142d55c24a4f97f019b3f33f1446f3ef0e1c90dfa991cfdddbf4ee2d936b7f4b44dfb24584bd1e01929424ef558f00f144023ae05f0264efde7af146ac0305881f627501029893887efab474b96d4e80d82754bb82aff23f00097f02dccb033173dca9a9929cbb6993be8990bb6517cd08a7314a74b46307a4ba5a62aa5d152080eb177fb5e23f7468fd7dfeea80b8d303c41ebd89e8a5a5e2ce1959b56dd54a5fe7f9ea6a39df181120ca0171e692a5a5494e903b215eae909a2a22ca9de21c80ff25a003b280d2b7afff09908c0c117a7abe6f616152a1ccd573504bd75023f89300c9c9a100b12214207e88bf08903d7bea279feef0c30fb25ae86cf5466fcf91ea6a9914fa4a804444c8aaac5e01525a2a2b38668d7be4c8fa10133d02c4880362b3f97655d5d9d8f7ed9384705742b0f43602cbca92c982bdf08a8a927ffee6802801e2eec43929493e0757c3b0cacafe7f7b771e1f5579ee01fc3703210909eb6411080844130942836c06051144c146c484e5436bf1bad05e1704ac5bd54b5b45d40bb6b8f416515cda8bf40211172cc82288562168524a4920618b068210482060424272ee1f8f27ebcce49c3333e79c197edfcf279f819993e1256732739ef7799fe7f54fc0aaa7ebd8be7df21ee16b0072e68cfbf3ab281280042afb01186fcea10ac6000408ce4e58dbb601d75eabbf95be9e4e58ad7d86faa24b17795fb77b00a228f29eedef1a18f29d9f57059219d499871e3dac1d8737eacebcd9d9c6d73be7e4c82ce69557ba7f3c214182b01d3b8049935a7f3eb5905b1d9b158c74c2cace965b7f8dbb4307f9995656eaebf7ef724950a95779b9ac4f37bbed71635dbbbacf9469ed800548d3839e3db50720cd0bd055c1d88ab7a848c61d1161ecfb1d0eb908d29301f1c792bdf878e9c877ea544337344fd4a619be0620805c2036dfaf67df3ef9dd0f6400d2b839c7c891fabfffd0212023c3ffe30ab47efd8065cbac1e85763535c0975f02f3e6e9ffdee464e0fdf7b51ddbda67a82fdab4914902758f8dd6e4e7cbfff7fcf9d68f0d0b035e78a161d2c717c78fcba4003320f6c30c48109a300178fcf18640c48e2ebf5c36255cb7cef873e4e602fdfbcbde279e34df58cf9b1d3be48d2d10b3415af5eaa53f0059b54a96bea86d3efde1c92781679ed1f73dbe6440acacff0064ecee9660e5e7cbd8b4d60469ed84a5289ed75e07e36684be74c052e92944f75706e49e7ba40d699f3ec0d34f7bdf2470f76e99d4f0e5b59a9828c196bbd7c8279fc87bd975d7197ffed6186dce0148e6e4db6f833303d2af9f4c30f8927137536e2e70ee9cbefa0f555292048a5adadfe6e64af0e1ed33d4175a3f132e5c007efe73edafcbb56b810f3ef06d6c2af577910188fd300312842ebd1478ee39ab47e19dd309dc761bf0de7bc01ffe60acab8cb70274d5f0e1c0fcf9f2e1d95a2a5b2de4363a8beb0f3d7b4a21aa561515c0dffe063cf288f1ce3cee4c9ba6ff7b8c0620feba98f485a72274b50396d69f6d72b22c9d68cda143b2a15d2865407c0d40060d025e7c515b36c25f41ebcf7e068c1d2bb3a90b16002fbd043cf61870fffd2d3be2f85a800ec8855eefde9e039091231bf6840994e1c3e53d43afe262b9500cc600445d42999fafadab9fd5b66d93d78191da8ca424595675f0a0d41379939313d80937ad9f092fbe281d0177ec9000b9358307fbafa6a7a040dedf1313fdf37ce43fcc8050c06466ca8c9a91f5c8d5d5c0bfffad2d00397b56dbfa5f2b0bd0557a9760ad5c29858477de19b83169e572c985616dadbeefb34306c45311bad60e58aaa4246d1b81a933fdcc8034507f97d58dd1bc292bf35fd01a1f2f9320070e48e0fde4937231f2ca2b4d9783f8230001dc67c9aaaa80ad5b03d37eb73923cd3980e06cc1ab4a4e968bcc602944dfb64d02a576edf47fafd66618d5d5f29a0e4401ba4a4b00525000fcee77c0430f690b3e00ffd6f4ecdb27930281ca0291710c402860aebb4e2efcb2b2f47f6f5e9ebc81b6367b336488645b5a4bedfabb90dba89e3d25ab71fab4b6e3972d03c68d0b5cd71c3d5c2e595aa47799831d32202e97d4bc34de04b2ae4e6a5af40620e7cfb71e44e6e4487d52f33a0020f832207575f2fff53500494a92595f2dcbb0cacbfd1fb4f6e801fccfffc805d18409c09c39b2acf1f5d7e522aaa8c83f0188bb56bc5f7c21afbd40d67fa8f436e750a90148efde7e1d8e29222365dcc11080d4d5019f7f6e6cf915209ba64645b51e80e4e549ad49203320ad7546acab0366ce94dfbddfff5efbf3fa73777b76c0b22f062014306ddb02b7de2a0188de37929c1c99d1fac94fbc1f171d2d6b5c5bfbb0ddb9536eed108000dab220f9f9c0575fc93a763b30da76d12e1910a06916a4a8482e0ab574c052699d7df454800e346440fcf1e16a8663c76432c0d700a44d1bf97dd652881ec8d74c9f3ec05b6fc905da35d700bffc65c352167f6540f6ef6f9a29fce413b970f4c7f3b7466dcea17743c24387648c562e51f545b074c2faf7bf25c0361a80381cda6ad1b47e86faa2b50cc8ebaf4bb667e9527d4b0ffbf5939f913f266ad801cbbe188050406566ca92953d7bf47d5f6eaebcc94647b77eac963d47b66f970b1a7f16721ba1270059b64cdee0274e0cec98b4f22500b13a03e22e00d1d3014b75e9a5d2c8c0db87bfa2785f7b1d1f2f59146f05d176e2eb1e208d692d4437236b969c0cac58216bd3afbd5666d05b5b53af455292cc3cab3f374002901b6ff46f1d9737a34649a7243dcb2583b505af4a9d35b7bbeddb256befcb64989656bcb9b9f21ad7f2196a94b700a4b81878f45199401b3346dff3fa6b77fbda5a990c6006c49e18805040dd7083b460d5bb0c4b4b01ba6af8700970ce9ef57ccc8e1dc0b061e65d0078d2bdbb7cf8b416805457037ff90bf08b5fd867edaad1002410cb69f452c7de3c00515beb6ad5b6add40f780b404a4a24c3e12d030204cf322c7f06208306c98593b7dfd5aa2af932eb35337020b0668d5c80fbe377ad712b5e405e0fbb779bb3fc4a3577aefcfbefbda7fd7b422100397cd8f8268c66c9cb93f6b29191c69fc3dd32bfe6025d800e3474176c9ecd5514e0befb64a9d8c285fa9f373151267a7c0d288b8a64328001883d3100a1800a0f07d2d3f50520b5b5322ba92700a9ab937effee288a042056eeffa16adb5682906fbff57edcdab5c08913c0dd779b332e2d8c04208a62af0c48e3b1e7e5c9458bdefd499293bdcf3e7a2b40071a7b86ac650000200049444154ea4282a510bda8483691f4c74692575d25af897ffdcbf3316a8d91d5af19a37af694f73df50271c30699f81837cebc310c1b261997f9f3b52ff50bf600242545feaf5a37e9b38adec617ee2425c9d2484f59d4da5a69f610c80274403e136a6b5bd634ae5c097cf411f0a73f19fb3d6edbd63fbbdbb305afbd3100a180cbc89019c0c2426dc717164a8f74adb337fdfa499ad9d332ac8307e5c2d3eafa0f95964e586fbc21171181d840caa8f07099d1d2138054554936c7ea0c48e7ce7211d83c0362e442a0b5f5d7b9b912f0786a1c108c19107f643f00d9d7272cccfb32acb232b9b5fa356394d329174fea6be4934fa4ad684c8cb9e378ea2909f4d6ae6dfdd8ca4ae0e8517d1b93da8dfabb6cf76558fe0a4000cf9fa9858592093223030234fd4c38791298350b983c595af11be58f9a9e7dfbe4734b4f969bccc30084026efc7849376b5d0ed0da0c72736dda0043877a2eba54039361c3b43d5fa0b516801417cb458b5d8acf1bd3bb17887a3169f56cb6ba6baf3a7645f12d00397cd8f38ebeeaf2414fcbfdba749119be60ca80f82b0069d74e826a6f85e8c19e01011a96c8d4d5011b379ad37eb7b99123a516444b16445d6617cc19904e9da488dece01484585bcf7eb697ce18e5acbe8692244ef67a851ee0290b973653f99575ef1edb9fd51d35350203f2bbd596e32074f0b055c5494b4bdd4ba0c2b37572e785adbacac31b510dddd07ed8e1db2e6d62e3bc7b71680bcfdb674a231b25960a0e90d40d48b493bcc6637de0be4d831199b910b81a424799d1d38e0fef1d6d65e3b9d9205b918332040eb85e8c19e01011ab26439394069a9b9f51f8d3df514909d0d6cdae4fdb860de03a4b1941459be6b577bf7caadaf1990ce9de53dc4530062e433d488e601c8faf5c05fff2afbee5c72896fcfddaf9fbc4fabef0746b005afbd310021536464482bdcd66a1f007d05e8aae1c3a5d8b3b8b8e56376d880b0b19e3d659cee82a5ba3ae0cd3781a953a578df6e5aebfbde9c5d32204043c12460ac0396ca5b2bde9327e535dedaeb375836235414ff0720830649d3084f19a450c8802425c9ebe0fdf7810e1dacdb9dfb861b243b3c7fbef7e30e1d92ac5c428239e30a941b6f9460cbae85e8eafb8ebfbaad79cb8004bafe03681a80545400bffa95d43add7187efcfdd78777ba3d882d7de18809029d2d365edf79a35de8f5314ef7b2878e269f3adf3e7e5f9ec1480f4ea25b511a5a52d1fdbba552e06ec547cde58b06740d4b1e7e7cbeb313151fff3c4c7cb45a5bb0f7f7569516b4b1f826533c2b232e958e5ef0c484d8de7d6dc6565726ef4ec1b60376a90fafaebd282342ccc9a71381c9205d9b64dbe3c397448de97dab4316f6c81909121f52cebd75b3d12f7f2f2e4e7ec8fd6b89e9a61a86dc0cd08402223e5abb41478f249b97ded35ff749b4c4af26d77fbca4a99046006c4be188090293a75929991d696611515c90588deb5abddba4966a17900b26b971441db2900510be2dc6583de78433e58aeb9c6dc3169e572b90f9c3cb1d3729ac64bb0f2f2e483a96d5bfdcfe37078fef0cfcd958b8bd6f69b09960c883f5bf0aa060e9465689e9661a97b8058dd32db17ea45cff1e3d62dbf52a5a7cbcffcd9673d1f13ec1db054975d26ff57bd6ddfcde28f0274959a01699e492f2a92dfa140d77fa85c2ee0e38f81575f95d798bf5e479191f25c460390fdfbe59601887d310021d36464005f7ce17de657bd2831327b73f5d52d03901d3ba4f03590bbc1eae56933c2b23229d4bfeb2efb5e7c19c9808487db6377e5e64bb07cb910f0b4fc212707484d6dbde831583220810840a2a22480f354881ec85dd0cde27235fc1fac0e409c4e999ddeb041ea41dc0995000490cf99b56b3d2ff1b392bf03908a8a96ef23be7c861ae172c9b2b761c3a4fb953ff9d2098b2d78ed8f010899e6d65be5c3f0fdf73d1f939b2b1767ddbae97ffee1c3816fbe910e1caa1d3b6426c82e9bf901406cac0445cd0390e5cba5a7fa8c19d68c4b0b3500d1bab7809d2e269b2fc10a5400a265e63198322011110dad83fdc55b21ba19bba0079ac321af91cb2eb3476bdbcc4c09fa3c6541422900c9cc94fd31366fb67a244d555549e30a5f3b60a93cd5a2f9f2196a444c8c2c317ce30dff2fe1f3a513d6be7df2d96397e633d4120310324d4c0c70dd75ded3e3beac5d1d3e5c8a0ffffdef86fbb66fb7c706848d399d52ecd93c0059b64c964bf8da3d24905c2e9959d45ae469a78b493503525626dd557c0d408e1f6fa871016436b2b050dbeb373e5e36efaaaa323e06331415c99a757f67e4aeba4a9647d6d6b67ccc4e41ab2f1e7aa8f5e26fb3b469033cf104f0e1872dbb449d3e2d3ff3500940faf797df4fbb2dc32a2c942623feca802426caef65f300c4acfa0fd5cc9952eb14883dabfaf593f7a073e7f47fafda01cbaeab09880108992c2303d8b2a5e986708d192940575d75957cd0aafb819496ca8c939dea3f54cd5bf1e6e4c8ceb5762d3e57e9dd0ddd4e17935dbbca05bf3af3eecb4ca4bb8dc076ed92cc90d60c0860ff2c88bf3b60a9060d9222517775346565f6095a7d3175aabd5a694f9f2e41c682054def0f9516bc2a87433e673ef8a06936dc6abe74de73273c1ce8dddbfa0064da34ff74bd72c797ddedd901cbfe188090a96ebb4d3e143efaa8e5632525f265b478ae7d7b294054eb40d4f5ce760c407af56a5a84be6c99a4ccc78fb76e4c5a180940ec7231a9f6c4ffe28b86253246b9db082c375796d669096ce2e3e5f6620e4000f7cbb0cacbed13b48692b030e0f1c78155ab1af6a300422f00016419d6c993de3b7f992d2f4f261efcb924a8f952d09212c9ee9a55801e686abb6223cbb0b80788fd3100215375ef0e8c18e13e3dae16a5fa327ba36e4808c86d4c8c3d3f581b67402a2ba5fee33ffec358572633e90d40ec7431a98efd8b2fe435111969fcb93a769480b1f1cc5c4e8e04c05a5aaeaa1910bb17a2072a00e9dc59ce81bb42743b65cd42cd1d77c87bf073cf35dc77e8904cdef8bbcec74a8307cb248f9d9661f9b3005dd5bc1b9f3f3e43eda4532779bdea0d404e9e942f0620f6c600844c9791211d592a2a9ade9f9b2b1726bd7b1b7feee1c36576eff4e9860d08edb806b4674fe0e85159039f9525e3bdeb2eab47d5ba50c8806cdfee9f42d0e6b38fb9b9da671e6363e5d6ce199073e7641963200210c07321ba9dea86424d7838f0e8a332e171f0a0dc77e890bce7daf17dd2287519d69a355277610781084092926499b1bad4cc1f9fa17663a41396ba34960188bd310021d365644821f3dfffdef47eb583902f1f84c387cb9ad1ec6cf9b2e3f22b400290da5a49992f5b068c1e2d1d73ecae6347c9d2046306440d40ce9ef5cf8540e300a4aa4a36d6d33af3d8ae9dfc5cec9c01519708063200c9cd6dda51adae4e8271bbbc6642d13df7c844c20b2fc8df43a90356639999f2feaad6045ae9c205c954f8ab03962a294936f554db65fbe333d46e8c74c252b342c1f0997a31630042a6ebd3472e3ede7bafe9fdbe14a0ab9293256dbb7cb9ccbedb39000164e7f3ad5bed5f7cae72389ab6b36d8d9d32208d37b7f36700a228d279edc2057d6bafe3e3ed9d0109c41e208d0d1a24c1865a830048fb5445b1cf6b2614b56f0ffcfad7c05b6f01c5c5a11b808c18211d05edb00cebd021d91037101910a06122c4ec027433f4eb279b0a56576bff9e8202e934191515b87191ef18809025323365f7d4ca4af97b5999bc49fb5a3ce774ca86482b56c8df870df3edf902450d40e6cf97802933d3daf1e8a17533c2da5ab9a0b4cb6cb6d3d930167f2dc13a774e66597373a503dbc081dabfdfee9b111615c9ffa9478fc03cbf7aa1d47819565999dcdae53513aaeebd17888e06fefbbf433700713a81499364a24bebbe4581e2ef0e58aa9e3d65595d4181fcee1c3e1c3a05e8aa941499dc517736d78205e8c1810108592223432ede366c90bffbb3786ef870992db9e20afbcea476ee2c1700fbf6013ffb996f05d1668b89d116809c3e2db7763a076a0d8bda5dc5178d671f7372e4e242cf79b4fb66844545127c04aa3182ba595ae34274755f153bbd664251870ec09c39c09fff2c934076d82c31103233e5a2dc5db30333e5e5c9f2d5eeddfdfbbc4ea774e42b2808bd0274951ab4e95986c516bcc181010859e28a2b6466435d86959b2b4b03fc316ba12ebbb2ebf22b409602a9599060597ea5d29a01512f26ed349bddb5ab5c0474eae4fb73f5ed2b1902f5c35fefcc6330644002b5fc4ad5bc109d1910f3cc9ad5103087620604908d6fbb76b57e19965a801e88da0cb513963f3f43ed243656cea1d600a4ae4e8ad043ede7108a1880906532336567deea6ab908f9c94fe482ce576ae7abb434df9f2b90faf4015253836fc6cae592ee48ad512f26ed349b7dc925c08001fe79ae76ede41ceed9239b10ea3d8fc19001312b005197c83003629e2e5d80071e9059f4500d40c2c28089135bd61b9a2d2fcfffcbaf546a2d9a3f3f43edc4e1d0d709ebc811c9ea3100b13f062064998c0cb9e0d8b2c53f05e8aad858e01fff907d35ecec4f7f923691c1d6b1249833202fbd042c5deabfe74b4a924d35abaa8c65404e9c905a193b32230019344882b09212f9bb1ab4fa234345adfbed6f81cf3f97e541a12a33535ab3eb6de5ea2f8a22ffbebf3b60a99292644fa97ffc23f826b3b4d2d3094bed80c500c4fe188090657ef21359c6f2d7bfca1bb43f8be7d2d2a438cfce7af70ece7eed5a03103b66402ebd543628f397a4a4862e4ea9a9fabe372e4e960b68ed2866a69a1ad9a7c68c0c08d0b00cabbc5cea13ecbe2167a8080f976e51a1ec861be43565d532ace262ffb5fe7647bdd02e2a0abd027455bf7e728da065b2a6a040de3f82f1b3f562c300842ce370c8ecd48a15324b14aab337a1c6e592027375f32b4fcacbe51c87f26cb6fae17fd965faff9ff1f1726bc76558c5c5121c053a00e9d54bd677ab05b4dc059dfc2d2202f8e94fad5b86a5665e021d8000a1fb199a92225966b535b8370505406222273182010310037272723071e244b85c2e44454561c0800178e595579a1c939f9f8ff1e3c7a343870e70b95c983163064ab52c9cbfc86464c8854e5818d0bfbfd5a3212dd44e52a74e793faeac4c2eca9d21fc2ea37ef81b99798c8b935b3b16a2077a0f1095c3213fbbc619103b65cc2834646602fffc67c3eeef66cacf9720285033f22e9704eda1fc19aaa713165bf0068f10be34088c0d1b36202d2d0da5a5a598376f1e5e7ef965a4a7a7e3c89123f5c714171763d4a8513878f0209e7bee393cfcf0c3f8f8e38f316edc38d4d4d458387afb19364c5a7d5e79a514f592fda901486b4b87ecb40961a0a81f7446661eed9c015103107f2e57f344dd111d6006840263c2040902ac5886959f2f9daa02551cee70c8fb50287f86f6ec299b0a6a0d40d88237383049a5c39933673063c60cdc72cb2d58bd7ab5c7e3162c5880caca4ae4e6e62221210100306cd8308c1b370e6fbffd3666ce9c69d6906dcfe904162e0ced59f250a33500292f0ffd8bc98404e0d1478169d3f47f6f5494b441b56b06242ece9cfd69060d92f78093279901a1c0888a02c68f9765588f3c62eebf1dc80e58aa5fffdafacd1603c9e1909f616b8d04aaaba5268f1990e0c0cb3e1dde7df75d1c3f7e1ccf3efb2c00e0dcb973a8abab6b715c565616d2d3d3eb830f00183b762c929292b072e54ad3c61b2ca64f37760147d66006a481c301bcf082b136a60e876441ec9a0109f4f22b959a3dcacd65068402273313d8be5dea9bcc949f1fb80e58aa295380a95303fb6f584d4b27ac83076549370390e0c00044874d9b36a163c78ef8eebbef909c9c8c0e1d3aa053a74eb8efbefb70fefc7900c091234770e2c4090c1932a4c5f70f1d3a14b9566fc94ae4a3ae5de5961910dfd9753342330390cb2f07a2a31b0290500f5ac91ae9e95227b1668d79ffe68913f23e19e80cc8c540cd8078cbf4b0056f706100a2436161212e5cb88049932661c2840978efbdf770d75d7761c99225b8f3ce3b0100253f36b4efd6ad5b8befefd6ad1b4e9d3ac53a100a6a6161b26f003320beb3eb66846606204ea7b4e4cec961d04a81d3b9333076acb9ddb002dd01eb629292029c39d3b067903b0505329971c925e68d8b8c630d880e67cf9ec50f3ffc807befbd178b172f06004c9a3409d5d5d578edb5d7f0f4d34fa3b2b2120010ee66138a8888080040656525c2c2c2dcfe1b73e6cc41e766576dd3a74fc7f4e9d3fdf95f21f28996bd407831d9baf878d945dd4eeaea806fbf352f00016419d6860d5c824581959909fcea579299888d6dfdf8da5a60eb56e0da6b8ded2b959f2fc5e7975faeff7ba9a9c69db0ba77777f8cda01cb9f9bfbae58b1022b56ac68725fb9bacb2ef98401880e913f5664360f06a64f9f8ed75e7b0ddbb76fc715575c0100f54bb21aabaaaa6af23cee2c5ebc1857856a336f0a195a021066405a67c70cc8f7df4b31a7d90188dac99caf190a945b6f9500e4fdf7016fbd60eaea80d5ab65a7f8bd7b81175f041e7a48ffbf979f2f7b04856a772a33f5ed2b3fc7bc3cc964b913880e58ee26807372723078f060fffe4317212ec1d2a1fb8f6177bcda3ff347713f36f42f2b2bab3fa6c44d9eb0a4a4042e97cb63f6832858c4c4780f40148519102dd41a103b75b0316b0f90c61aefa3c2d70c054a6c2c306a94e765588a027cf49104c4d3a6c9de1d6969128c18614607ac8b45dbb692ddf05688ce3d40820b03101dd4c2f2e2666d348e1e3d0a00888d8d45f7eedd111b1b8b9d3b77b6f8feecec6ca4a6a6067ea04401d65a06a4b25266d1399bed5d5c9cecf07bf6acd523696045009292d2304bccd70c05526626b079b34c90a81405d8b811b8fa6a60e244790d7efe39b06e1df09fff097cf515f0e3c7bc2e6674c0ba9878eb8475e60c70ec18039060c2004487a93ff6b95bb66c5993fbdf78e30d84858561f4e8d10080cccc4cac5dbbb649a0b279f36614161662ca9429a68d9728505c2ea0b4d4f3e3ea873b67b3bd5393a976ea845554244d06cc0c04c2c2800103e4cf7ccd5020dd761b505323990e40028dd1a3811b6f94da814d9b802d5ba4ee03006eb94566dff576cf3a730638728419107ff2b617484181dc3200091eac01d12135351577dd7517de7cf34d5cb87001a3468dc2d6ad5bb17af56a3cf1c413b8e4c7d60b4f3cf10456ad5a85ebafbf1eb367cf46454505162e5c88810307d677cb220a66ad6540cacae496b3d9defdb87a13df7f2f6bc5f5aaad052e5cd0766cbb76da8a33cdec80d5d8555701df7cc3d70c05568f1e92e958b20458be1cf8e413e9c2f6d147c04f7fdaf277a44b17a939c8ca02eebf5ffbbfa3ced43300f19f9414a9993b75aaa11dbc4a0d4058f01f3c9801d169c99225f8ddef7e871d3b7660eedcb9d8b56b17162f5e8cf9f3e7d71f93909080cf3efb0c89898978fcf1c7b168d122a4a7a763e3c68dacffa090a006209e6a179801d146cd80182944afaa928ba988086d5ffdfa017ffb9b14d87a6355003274a8740ce26b86026df264e0cb2fa5dbdbaa55d2023a3ddd73809e91017cf699f7ac6f736a00f2635f1af283c69db09a2b2890f7d34e9dcc1d1319c70c884e6ddbb6c5bc79f3306fde3cafc7a5a4a460fdfaf5268d8ac85c2e97ccbc5754c8729de69801d1a66b57b9e836b2046bf76ef9be050b809e3dbd1f5b5707ac5c094c9f2ec73ff38cac757777c15554045c779dfef1f8ea8e3b80810381f6edcdffb7e9e2f2c003406aaa2cbd6ad3a6f5e3274d02eebd17f8e003e0eebbb5fd1bf9f912c84745f934546a242949f60dcacb03aeb9a6e9632c400f3e0c40884837974b6e4f9e741f803003a28dd3299d798c64407273e5e269ce1cc04b67ef7a33664831ed7ffd975c500d1902cc9fdfb0f61d908c9655199076ed80e1c3cdff77e9e2131eeeb995ab3b7171c0c891b20c4b6b00c20e58fe171121ed783d65401a77d323fbe3122c22d2ad7100e24e5959c3d21ff22e2ece58062427472e70b4041faab43429b2fdf453b9e01f3f5eb21ddbb6c9e3e5e592d5b2220021b2b38c0cf9dd397d5adbf1ec801518ee3a61290a3320c188010811e9a62500e1f22b6de2e38d67408cee597afdf5c0175f007fff3b70ee9c042137ded8b0df010310a2a63232a47bd6dab5ad1f5b59091c3ac40c4820b8eb8475ec984c9c3000092e0c408848b7d602106e42a89dba19a11e3535c0ae5dc6031040965d4d98007cfdb56ccc76f428f0cb5fca630c40889a4a489025825959ad1f5b502075570c40fc2f25459a0734de3b892d788313031022d22d2a4a96f03003e2bbb838fd1990bd7b81f3e7fdb3e6d9e190bd1176ed92b6a48f3dd6d09d8b881a646400ebd74bd6d01bb6e00d1cf567ba6f5fc37d0505524fd7b7af35632263188010916e0e87f7bd409801d1ce48062437576e5353fd378e366d809ffd0c78fe796dfb85105d6c32336579556b0d2ef3f3e5f7baf95e15e43bb5ad71e36558050540efded25c80820703102232c45b00c20c8876717112b055576bff9e9c1cd9b8d05d0732220a8cc444d9b4b0b56558ec8015381d3bca72b8c685e805054072b27563226318801091213131cc80f88391cd087d29402722e33232a410fdfc79cfc7b003566035ef84c50e58c18901081119c20c887fc4c5c9add6655875750c4088ac9299291d97366d72fff8850b7241cc0c48e034ee8475e10270e000039060c40084880c71b980d252f78f3103a29dde0cc881037201c44db788cc979222cb7d3c2dc33a7040bad43100099c9414f939575703870fcbcf9b0148f0610042448678ca80d4d60267ce3003a2556cacdc6acd80a805e80c4088cce770c832ac0f3e90d9f7e6d4a5415c821538fdfac9e74c61215bf006330620446488a70044dd299819106dc2c32558d39a01c9c991224c3570212273656602a74e019f7dd6f2b1fc7ca05327e0924bcc1fd7c542cd2ee5e54900121121ef89145c18801091212e976c06d5bc7b535999dc3203a25d5c9cbe0c08eb3f88ac73d555b259a7bb65586a072cb6b20e9cd8586982929f2f01c8e597cb3e20145c78ca88c8104fbba19797cb2d3320dac5c76bcb80288a644018801059475d86b5668d3485682c3f9ff51f66503b61b1056ff06200424486780a409801d14feb6684c5c552f8cffa0f226b656602c78e015f7dd5705f5d1db0772feb3fcca076c2620bdee0c50084880c692d00610644bbb8386d1910b5009d1910226ba5a5499d47e36558df7d079c3bc70c8819525224d8fbee3b0620c18a01081119e26d0996c3c15dbaf5d09a01c9c991b5cf3d7a047e4c44e499d309dc761bf0de7bb2341268e880c50024f0faf56ba83f6400129c18801091215dba48a0e12e03d2a9138b02f5888b034e9c68b99ebc39b5009d05ae44d6cbcc048a8a64620090002432520ad429b01a07790c4082132f1188c890366da4cec35d0684cbaff4898f97bef6a74e793f2e2787f51f447671dd7540d7ae0dcbb0f2f2a420ba4d1b6bc77531484800a2a3e5e7af66e329b830002122c3dced055256c60274bde2e2e4d6db32ac1327a4089df51f44f6d0b62d70ebad1280280a3b6099c9e1909f35b31fc18b01081119e62e00610644bff878b9f55688ce027422fbc9cc944e4c7979f2c50e58e679e411e0a187ac1e0519d5d6ea011051f08a896106c41fb464407272800e1d80be7dcd191311b5ee861be4f7f2cf7f96f73e6640cc33658ad523205f30034244863103e21f1d3a001111de33206afd078bfb89ec233c1c484f07de7843fece0084481b7e941191612e976c8cd7183320fa391c9205f19601c9cd65013a911d656602e7cf4b4dc86597593d1aa2e0c025584464183320fe131fef390372fa34b07f3feb3f88ec68fcf886f6bbedda593d1aa2e0c00084880c73b9a4756c5d9d2c0d521466408cf29601d9b54b6e198010d94f5414f0f39f33f820d28301081119e67249f071fab4643d2a2b819a1a66408c888f07f6ec71ff584e8ed4885c7185b96322226d5e7fddea11100517d680109161ea0650ea32acb232b9650644bff878cf19909c1c60e04059634e444414ec1880109161cd0390f272b9650644bfb838cf35202c402722a250c20084880c6306c47fe2e3811f7e00ce9e6d7a7f65a5ecb0ccfa0f22220a150c4088c8304f01083320faa99b1136cf82ecde0dd4d632002122a2d0c10084880c8b8c94afe64bb09801d12f3e5e6e9bd781e4e4006dda00575e69fe988888880281010811f9a4f15e206565d2ad2922c2da3105233503e22e00e9df9f3f5322220a1d0c4088c8278d0390f272663f8c72b9642f95e64bb058804e4444a186010811f92426a6690684f51fc6b469233fcbc619909a1ae05fff62fd0711118516062044e493e619100620c6c5c737cd80e4e703d5d5cc8010115168610042443e71b980d252f97359199760f9222eae69062427476e5353ad190f11115120300021229f3003e23fcd33203939405212d0a1837563222222f237062044e493e65db09801312e3ebe69068405e84444148a188010914f5c2ed9adbbb29219105fc5c5356440eaea807ffe9305e84444147a1880e8b075eb56389d4eb75fd9d9d94d8ecdcfcfc7f8f1e3d1a14307b85c2ecc983103a5ea4279a210d278377466407c131f0f9c3a25ddaff6ef07ce9e6506848888424f5bab07108c66cf9e8da1438736b92f3131b1fecfc5c5c518356a14ba74e982e79e7b0e15151558b4681176efde8decec6c848585993d64a280510390e3c7818a0a66407ca16e4678e24443013a031022220a350c400c183972243232323c3ebe60c10254565622373717090909008061c38661dcb87178fbedb73173e64cb3864a14706a0072f0a0dc3203625c7cbcdc7effbd0420bd7ac9de20444444a1844bb00c501405151515b870e182dbc7b3b2b2909e9e5e1f7c00c0d8b16391949484952b579a354c2253a801c8fefd72cb0c88716a06e4fbef59804e4444a18b01880177de79273a75ea84c8c8488c193306df7cf34dfd63478e1cc18913273064c89016df3774e850e4e6e69a3954a280ebd409703a1b021066408c6b1c80e4e4b0009d888842139760e9101e1e8ec99327e3e69b6f464c4c0cf6ecd983458b1661e4c891f8f2cb2f919a9a8a9292120040b76edd5a7c7fb76edd70ead429d4d4d4b00e844286d30974ed0a1c38207f6706c4b88808a06347e0ebafa5189d191022220a450c4074484b4b435a5a5afddfd3d3d33179f2640c1c3810bff9cd6fb06edd3a545656029060a5b988880800406565a5c70064ce9c39e8dc6c0a79faf4e9983e7dbabffe1b447ee7723103e22ff1f1c0faf5f26766408888acb362c50aac58b1a2c97de5e5e5168d26b43000f151626222264e9c88356bd64051144446460200ce9f3fdfe2d8aaaa2a36e2bcb1000010774944415400a83fc69dc58b17e32a5e75509071b9807dfb00874366f0c9b8b838e01fff90dbeeddad1e0d11d1c5cbdd04704e4e0e060f1e6cd18842076b40fca067cf9ea8aeaec6b973e7ea975ea94bb11a2b292981cbe5e2f22b0a396aa726b51e848c533b610d1a24011d111151a86106c40f0e1e3c88c8c848444747233a3a1ab1b1b1d8b973678be3b2b3b3919a9a6ac10889024bed84c5fa0fdfa985e84c84121151a8e25ca50e274e9c6871dfae5dbbf0e1871fe2c61b6facbf2f3333136bd7ae45717171fd7d9b376f46616121a64c9962ca5889ccc400c47f1a6740888888421133203a4c9b360deddbb7475a5a1ae2e2e290979787a54b97223a3a1acf3fff7cfd714f3cf10456ad5a85ebafbf1eb367cf46454505162e5c88810307e2ce3befb4f07f4014186a00c20274dfa901083320444414aa9801d1e1b6db6e43696929fef8c73fe2fefbefc7aa55ab3079f2647cfdf5d7484e4eae3f2e2121019f7df619121313f1f8e38f63d1a245484f4fc7c68d1b59ff4121891910ff99300178ec31a06f5fab474244441418cc80e8306bd62ccc9a354bd3b129292958aff6d2240a71cc80f84fefde40a3842a111151c8610684887cc60c0811111169c50084887cc60c0811111169c50084887cc60c0811111169c50084887c161303242602fdfb5b3d12222222b23b16a11391cfc2c280fdfbad1e05111111050366408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c408888888888c8340c407cf4ecb3cfc2e97462c080012d1ecbcfcfc7f8f1e3d1a14307b85c2ecc983103a5a5a5168c927cb562c50aab87405ef0fcd817cf8d7df1dcd81bcf0f853206203e282e2ec682050b1015150587c3d1e2b151a346e1e0c18378eeb9e7f0f0c30fe3e38f3fc6b871e350535363d188c9287e10d81bcf8f7df1dcd817cf8dbdf1fc50286b6bf50082d9c30f3f8c112346e0c2850b2d321b0b162c40656525727373919090000018366c18c68d1b87b7df7e1b3367ceb462c84444444444966206c4a06ddbb6212b2b0b8b172f86a2282d3220595959484f4faf0f3e0060ecd8b1484a4ac2ca952bcd1e2e11111111912d300031a0b6b616b366cdc2cc9933d1bf7fff168f1f397204274e9cc09021435a3c3674e850e4e6e69a314c2222222222dbe1122c03962c59826fbffd169f7efaa9dbc74b4a4a0000ddba756bf158b76edd70ead429d4d4d4202c2cacfefeaaaa2a0052b84ef6535e5e8e9c9c1cab87411ef0fcd817cf8d7df1dcd81bcf8f3da9d769959595168f24b83100d1e9e4c99398376f1ee6cd9b0797cbe5f618f545191e1edee2b1888888fa631a0720870e1d0200dc7efbedfe1e32f9c9e0c183ad1e0279c1f3635f3c37f6c573636f3c3ff675f8f0615c73cd35560f23683100d1e9a9a79e424c4c0c66cd9ae5f198c8c84800c0f9f3e75b3ca6663ad4635437dd7413fef77fff17bd7bf76ef1181111111159afaaaa0a870e1dc24d37dd64f550821a03101d0a0b0bf1faebaf63f1e2c5282e2eaebfbfaaaa0ad5d5d5282a2a42c78e1deb975ea94bb11a2b292981cbe56a92fd0080989818fcfce73f0fec7f80888888887c3262c408ab8710f41c8aa228560f22586cddba1563c68cf17acc9c3973f0873ffc01f1f1f1183d7a34feeffffeafc9e3c9c9c9e8d5ab17366edc18c8a11211111111d91233203a0c1830006bd6ac69d2725751143cf5d453387bf62c5e7ae9252426260200323333f1ce3befa0b8b8b8be15efe6cd9b515858885ffffad7968c9f88888888c86acc80f8c1e8d1a371f2e449ecdebdbbfebee2e2620c1a34089d3b77c6ecd9b351515181850b17a257af5ed8b973678b255844444444441703ee03e2070e87a3c54684090909f8ecb3cf90989888c71f7f1c8b162d427a7a3a366edcd824f8387ffe3c1e7bec3174efde1deddbb7c7d5575f8d4d9b3699fd5fb8e89d3b770ebffded6f317efc7874edda154ea713efbcf38edb63f3f3f3317efc7874e8d0012e970b3366cc406969a9c923be78ecdcb9130f3cf000faf7ef8fe8e8685c7ae9a598366d1a0a0b0b5b1ccb7363ae3d7bf660ca9429484c4c445454145c2e17468c1881e5cb97b73896e7c67acf3efb2c9c4e27060c18d0e2319e1f736dddba154ea7d3ed577676769363796eac91939383891327c2e572212a2a0a03060cc02bafbcd2e4189e1be39801b1d8f4e9d391959585b973e7e2f2cb2fc75b6fbd859d3b7762cb962d6cef66a2c3870fa36fdfbeb8f4d24bd1a74f1f6cddba156fbffd3666cc98d1e43835b3d5a54b173cf8e083a8a8a8c0a2458bd0ab572f64676733b3150093274fc6575f7d852953a660e0c081282929c1abafbe8ab367cf62fbf6edf59b81f2dc986fddba7578f9e5973162c40874efde1d3ffcf00356af5e8dcf3fff1ccf3cf30c9e7cf249003c3776505c5c8ce4e464389d4ef4e9d307fffad7bf9a3cc6f3632eb5a674f6ecd9183a746893c76ebae9a6fa36ff3c37d6d8b061036eb9e5160c1e3c18d3a64d43747434f6efdf0f4551f0fcf3cf03e0b9f1994296d9b16387e2703894175f7cb1febeaaaa2ae5b2cb2e53468c1861e1c82e3ee7cf9f57befffe7b455114e5ebafbf561c0e87f2ce3befb438eede7bef55a2a2a294efbefbaefebe4d9b36290e874359ba74a969e3bd987cf9e5974a4d4d4d93fb0a0b0b95888808e5f6db6fafbf8fe7c61e6a6b6b95d4d454a557af5ef5f7f1dc586fdab469ca0d37dca08c1e3d5ab9f2ca2b9b3cc6f363be2d5bb6280e8743c9cacaf27a1ccf8df94e9f3eadc4c7c72b9999995e8fe3b9f10d97605968f5ead568dbb62d7ef9cb5fd6df171e1e8ebbefbe1b5f7df5158e1c3962e1e82e2eeddab5435c5c1c00692ce049565616d2d3d3eb1b0b00c0d8b16391949484952b57067c9c17a3b4b434b46ddbb45fc665975d86949414ecddbbb7fe3e9e1b7b703a9d4848486832fbc77363ad6ddbb6212b2b0b8b172f86a2282d960cf3fc58475114545454e0c2850b6e1fe7b931dfbbefbe8be3c78fe3d9679f05204bb4ebeaea5a1cc773e31b062016cacdcd45525212a2a3a39bdcafa663fff9cf7f5a312cf2e0c891233871e204860c19d2e2b1a14387223737d782515d9c1445c1f7df7f8f989818003c3756fbe1871f505a5a8a03070ee08f7ffc233ef9e4133cfae8a300786eac565b5b8b59b36661e6cc99f5cb151be3f9b1d69d77de894e9d3a2132321263c68cc137df7c53ff18cf8d35366dda848e1d3be2bbefbe437272323a74e8804e9d3ae1befbeeabdf609ae7c6776cc36ba1929292fa4d0b1b53ef3b7af4a8d943222fd48d253d9db353a74ea1a6a686eb3e4db07cf9721c3d7a14f3e7cf07c07363b5871e7a084b972e0500b46ddb162fbffc727d6697e7c65a4b962cc1b7df7e8b4f3ffdd4ede33c3fd6080f0fc7e4c99371f3cd37232626067bf6ecc1a2458b3072e4487cf9e597484d4de5b9b1486161212e5cb880499326e19e7beec10b2fbc802d5bb6e095575e41797939de7df75d9e1b3f600062a1caca4a848787b7b83f2222a2fe71b20ff57cb476cef88613587bf7eec5fdf7df8f112346e08e3bee00c07363b5b973e762ead4a9387af428962f5f8e071e7800919191b8e38e3b786e2c74f2e449cc9b370ff3e6cdab2f6a6e8ee7c71a696969484b4babff7b7a7a3a264f9e8c810307e237bff90dd6ad5bc7736391b367cfe2871f7ec0bdf7de8bc58b170300264d9a84eaea6abcf6da6b78fae9a7796efc804bb02c141919599fce6bacaaaaaafe71b20ff57cf09c59e7d8b163f8e94f7f8a2e5dba60f5ead5f56bd9796eac959c9c8c3163c6e0f6db6fc7ba75eb3076ec58cc9933075555553c37167aeaa9a71013138359b366793c86e7c73e1213133171e2446cd9b2058aa2f0dc5844fd994e9f3ebdc9fdeadfb76fdfce73e3070c402cd4ad5b37b7cbacd4d45ef7eeddcd1e1279a1a65ad5f3d3584949095c2e17673b02e8f4e9d398306102ce9c3983f5ebd7e3924b2ea97f8ce7c65e32333371faf469ecddbb97e7c62285858578fdf5d7316bd62c141717e3f0e1c3387cf830aaaaaa505d5d8da2a222949595f1fcd84ccf9e3d515d5d8d73e7cef1dc5844bdf68a8f8f6f72bfdaa8a6acacacfe189e1be318805868d0a0412828284045454593fb77ecd80100484d4db56258e4418f1e3d101b1b8b9d3b77b6782c3b3b9be72b80aaaaaa70cb2db760fffefd58bb762daeb8e28a268ff3dcd88bba3cc1e974f2dc58e4c89123a8ababc3830f3e88be7dfbd67f656767a3a0a0007dfaf4c133cf3cc3f36333070f1e44646424a2a3a3796e2ca2169617171737b95f9d308e8d8d45f7eedd796e7cc400c44293274f466d6d6d7df12620e9bcb7de7a0b575f7d357af4e861e1e8c89dcccc4cac5dbbb6c91bd3e6cd9b515858882953a65838b2d0555b5b8b69d3a661c78e1d58b56a15860f1feef6389e1bf39d3871a2c57d353535f8cb5ffe0297cb55df7589e7c67c03060cc09a356bf0fefbefd77fad59b306fdfbf7c7a5975e8af7df7f1f77df7d37009e1f2bb8fbddd9b56b173efcf043dc78e38df5f7f1dc986fead4a9008065cb9635b9ff8d37de40585818468f1e0d80e7c657dc09dd62d3a64dc39a356b3077ee5c242626e29d77dec1d75f7f8dcd9b37e3da6bafb57a781795575f7d15e5e5e5387af428962c59828c8c8cfa598c071f7c101d3b76acdff9b473e7ce983d7b362a2a2ab070e142f4ead50b3b77ee64ca3500e6cc9983975f7e19b7dc728bdb37f5db6fbf1d00786e2c70db6db7a1a2a202a3468d42f7eedd71ecd8312c5fbe1c05050578ebadb73063c60c003c3776327af4689c3c7912bb77efaebf8fe7c77c63c68c41fbf6ed91969686b8b838e4e5e561e9d2a5080f0fc7575f7d85e4e464003c3756b9e79e7bf0e69b6f62ead4a918356a14b66edd8ad5ab57e389279ea8efbec873e3230b37412445763e7fe49147946eddba29111111caf0e1c3950d1b36583dac8b52efdebd1587c3a1381c0ec5e9742a4ea7b3fecf454545f5c7edd9b347b9e9a69b94a8a828a56bd7aeca2f7ef10be5f8f1e3168e3cb48d1e3dbafe5c34ff723a9d4d8ee5b931d7dffef63765dcb871ca25975ca2848585292e974bb9f9e69b954d9b36b53896e7c61e468f1ead0c1830a0c5fd3c3fe67af9e59795e1c3872b2e974b090b0b537af4e8a1cc9831433970e0408b63796ecc575353a3fcfef7bf577af7eeadb46bd74e494a4a525e7ae9a516c7f1dc18c70c081111111111998635204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444641a06204444444444649aff07ce873914b7799b030000000049454e44ae426082}\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u35201?\u35299?\u26512?\u30340?json\u25991?\u20214?\u20301?\u20110?{\f1 data/2014-01-01-0.json}\u65292?\u22823?\u23567?6.6M\u65292?\u26174?\u28982?\u25105?\u20204?\u21487?\u33021?\u38656?\u35201?\u29992?\u27599?\u27425?\u21482?\u35835?\u19968?\u34892?\u30340?\u31574?\u30053?\u65292?\u36825?\u36275?\u20197?\u35299?\u37322?\u20026?\u20160?\u20040?\u35832?\u22914?sublime\u25171?\u24320?\u30340?\u26102?\u20505?\u24456?\u24930?\u65292?\u32780?\u29616?\u22312?\u25105?\u20204?\u21482?\u38656?\u35201?\u37324?\u38754?\u30340?json\u25968?\u25454?\u20013?\u30340?\u21019?\u24314?\u26102?\u38388?\u12290?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 ==,\u36825?\u20010?\u25991?\u20214?\u20195?\u34920?\u20160?\u20040?\u65311?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 {\b 2014\u24180?1\u26376?1\u26085?\u38646?\u26102?\u21040?\u19968?\u26102?\u65292?\u29992?\u25143?\u22312?github\u19978?\u30340?\u25805?\u20316?\u65292?\u36825?\u37324?\u30340?\u29992?\u25143?\u25351?\u30340?\u26159?\u24456?\u22810?\u12290?\u12290?\u19968?\u20849?\u26377?4814\u26465?\u25968?\u25454?\u65292?\u20174?commit\u12289?create\u21040?issues\u37117?\u26377?\u12290?}\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u25968?\u25454?\u35299?\u26512?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 import json\line -for line in open(jsonfile):\line - line = f.readline()\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u28982?\u21518?\u20877?\u35299?\u26512?json\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 import dateutil.parser\line -\line -lin = json.loads(line)\line -date = dateutil.parser.parse(lin["created_at"])\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u36825?\u37324?\u29992?\u21040?\u20102?{\f1 dateutil}\u65292?\u22240?\u20026?\u26032?\u40092?\u20986?\u28809?\u30340?\u25968?\u25454?\u26159?string\u38656?\u35201?\u36716?\u25442?\u20026?{\f1 dateutil}\u65292?\u20877?\u21040?\u25968?\u25454?\u25918?\u21040?\u25968?\u32452?\u37324?\u22836?\u12290?\u26368?\u21518?\u26377?\u23601?\u26377?\u20102?{\f1 parse_data}\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 def parse_data(jsonfile):\line - f = open(jsonfile, "r")\line - dataarray = []\line - datacount = 0\line -\line - for line in open(jsonfile):\line - line = f.readline()\line - lin = json.loads(line)\line - date = dateutil.parser.parse(lin["created_at"])\line - datacount += 1\line - dataarray.append(date.minute)\line -\line - minuteswithcount = [(x, dataarray.count(x)) for x in set(dataarray)]\line - f.close()\line - return minuteswithcount\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u19979?\u38754?\u36825?\u21477?\u20195?\u30721?\u23601?\u26159?\u23558?\u19978?\u38754?\u30340?\u35299?\u26512?\u20026?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 minuteswithcount = [(x, dataarray.count(x)) for x in set(dataarray)]\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u36825?\u26679?\u30340?\u25968?\u32452?\u20197?\u20415?\u20110?\u35299?\u26512?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 [(0, 92), (1, 67), (2, 86), (3, 73), (4, 76), (5, 67), (6, 61), (7, 71), (8, 62), (9, 71), (10, 70), (11, 79), (12, 62), (13, 67), (14, 76), (15, 67), (16, 74), (17, 48), (18, 78), (19, 73), (20, 89), (21, 62), (22, 74), (23, 61), (24, 71), (25, 49), (26, 59), (27, 59), (28, 58), (29, 74), (30, 69), (31, 59), (32, 89), (33, 67), (34, 66), (35, 77), (36, 64), (37, 71), (38, 75), (39, 66), (40, 62), (41, 77), (42, 82), (43, 95), (44, 77), (45, 65), (46, 59), (47, 60), (48, 54), (49, 66), (50, 74), (51, 61), (52, 71), (53, 90), (54, 64), (55, 67), (56, 67), (57, 55), (58, 68), (59, 91)]\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 Matplotlib\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u24320?\u22987?\u20043?\u21069?\u38656?\u35201?\u23433?\u35013?``matplotlib\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 sudo pip install matplotlib\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u28982?\u21518?\u24341?\u20837?\u36825?\u20010?\u24211?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 import matplotlib.pyplot as plt\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u22914?\u19978?\u38754?\u30340?\u37027?\u20010?\u32467?\u26524?\u65292?\u21482?\u38656?\u35201?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u26368?\u21518?\u20195?\u30721?\u21487?\u35265?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 #!/usr/bin/env python\line -# -*- coding: utf-8 -*-\line -\line -import json\line -import dateutil.parser\line -import numpy as np\line -import matplotlib.mlab as mlab\line -import matplotlib.pyplot as plt\line -\line -\line -def parse_data(jsonfile):\line - f = open(jsonfile, "r")\line - dataarray = []\line - datacount = 0\line -\line - for line in open(jsonfile):\line - line = f.readline()\line - lin = json.loads(line)\line - date = dateutil.parser.parse(lin["created_at"])\line - datacount += 1\line - dataarray.append(date.minute)\line -\line - minuteswithcount = [(x, dataarray.count(x)) for x in set(dataarray)]\line - f.close()\line - return minuteswithcount\line -\line -\line -def draw_date(files):\line - x = []\line - y = []\line - mwcs = parse_data(files)\line - for mwc in mwcs:\line - x.append(mwc[0])\line - y.append(mwc[1])\line -\line - plt.figure(figsize=(8,4))\line - plt.plot(x, y,label = files)\line - plt.legend()\line - plt.show()\line -\line -draw_date("data/2014-01-01-0.json")\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 \u27599?\u21608?\u20998?\u26512?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u32487?\u19978?\u31687?\u20043?\u21518?\u65292?\u25105?\u20204?\u23601?\u21487?\u20197?\u20998?\u26512?\u29992?\u25143?\u30340?\u27599?\u21608?\u25552?\u20132?\u24773?\u20917?\u65292?\u20197?\u24471?\u20986?\u29992?\u25143?\u30340?\u30495?\u27491?\u30340?\u24037?\u20855?\u25928?\u29575?\u65292?\u27599?\u20010?\u31243?\u24207?\u21592?\u30340?\u24037?\u20316?\u26102?\u38388?\u21487?\u33021?\u26159?\u19981?\u19968?\u26679?\u30340?\u65292?\u22914?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 {\pict\pngblip\picw514\pich428\picwgoal5160\pichgoal4300 89504e470d0a1a0a0000000d4948445200000202000001ac080200000020d958980000012f694343504943432050726f66696c6500002815636060327074717265126060c8cd2b290a72775288888c5260bfc0c0c1c0cd20cc60cc609d985c5ce01810e0c3000479f979a9201a157cbbc6c00812b9ac0b320b558e208f2bb9a0a804a8ea0f101ba5a416273330301a00d9d9e525054071c63940b648523698bd01c42e0a0972068a1f01b2f9d221ec2b20761284fd04c42e027a02a8e60b487d3a98cdc401622741d8322076496a05c85e06e7fc82caa2ccf48c12052303030305c794fca45485e0cae292d4dc6205cfbce4fca282fca2c492d414a05a88fb40ba1804210a4121a661686969a10916a522018a0788719f03c1e1cb2876062186b028b9b4a80cca636432666020c4479831478281c17f290303cb1f8498492f03c3021d0606fea9083135430606017d06867d7300c3af506fec25acb40000000970485973000016250000162501495224f00000019d69545874584d4c3a636f6d2e61646f62652e786d7000000000003c783a786d706d65746120786d6c6e733a783d2261646f62653a6e733a6d6574612f2220783a786d70746b3d22584d5020436f726520352e342e30223e0a2020203c7264663a52444620786d6c6e733a7264663d22687474703a2f2f7777772e77332e6f72672f313939392f30322f32322d7264662d73796e7461782d6e7323223e0a2020202020203c7264663a4465736372697074696f6e207264663a61626f75743d22220a202020202020202020202020786d6c6e733a657869663d22687474703a2f2f6e732e61646f62652e636f6d2f657869662f312e302f223e0a2020202020202020203c657869663a506978656c5844696d656e73696f6e3e3531343c2f657869663a506978656c5844696d656e73696f6e3e0a2020202020202020203c657869663a506978656c5944696d656e73696f6e3e3432383c2f657869663a506978656c5944696d656e73696f6e3e0a2020202020203c2f7264663a4465736372697074696f6e3e0a2020203c2f7264663a5244463e0a3c2f783a786d706d6574613e0a9c3576df00001f2c494441547801eddd7d905d657d07f01b08e64a2d9baa64690737554ca6b56c7ccb32b5093328d851924e9a0d53e8522dc651dc4cc560673a647c0b2a13aa8c41d0ac81313a7658a13549ad80339d04a8d9944a02ce64e31f66f58f046d598a361b5fb84402bdf7ee4b7643ee66cfeed9e73ee79c4f2643eeee39f7797ecfe777f67eef39f7de65ce3347874afe10204080405105ce2aeac2ad9b000102046a0262c07140800081420b888142b7dfe209102020061c0304081028b480182874fb2d9e00010262c03140800081420b888142b7dfe209102020061c0304081028b480182874fb2d9e00010262c03140800081420b888142b7dfe209102020061c0304081028b480182874fb2d9e00010262c03140800081420b888142b7dfe209102020061c0304081028b480182874fb2d9e00010262c03140800081420b888142b7dfe209102020061c0304081028b480182874fb2d9e00010262c03140800081420b888142b7dfe209102020061c0304081028b480182874fb2d9e00010262c03140800081420b888142b7dfe209102020061c0304081028b480182874fb2d9e00010262c03140800081420b888142b7dfe209102020061c0304081028b480182874fb2d9e00010262c03140800081420b888142b7dfe209102020061c0304081028b480182874fb2d9e00010262c03140800081420b888142b7dfe209102020061c0304081028b480182874fb2d9e00010262c03140800081420b888142b7dfe209102020061c0304081028b480182874fb2d9e00010262c03140800081420b888142b7dfe209102020061c0304081028b480182874fb2d9e00010262c03140800081420b888142b7dfe209102020061c0304081028b480182874fb2d9e00010262c03140800081420b888142b7dfe209102020061c0304081028b480182874fb2d9e00010262c03140800081420b888142b7dfe209102020061c0304081028b480182874fb2d9e0001027311102040205a811f7fffe99ffcd733519577d90716cd3bf79ca84a9a6131ce066608e8ee040810c8b68018c876ff544f800081190a88811902ba3b010204b22d2006b2dd3fd513204060860262608680ee4e8000816c0b88816cf74ff504081098a180189821a0bb13204020db026220dbfd533d0102046628e0e3630d018fdd76dbf307fa1b6e0ebe614eeb82dffbfce7834f6b420204722ee06c20e70db63c0204084c2e200626f7b19500010239171003396fb0e51120406072013130b98fad040810c8b98018c879832d8f000102930b8881c97d6c25408040ce05c440ce1b6c79040810985c400c4cee632b010204722e200672de60cb234080c0e4026260721f5b0910209073013190f3065b1e0102042617f03b851afa7cedcfcffae15bcf6eb839f886f3cf3dfb96e0939a900081dc0b381bc87d8b2d9000010293098881c9746c23408040ee055c14ca7d8b2d90408605fee07ff6bef2f17f8d6a0173afbba3546a89aaa41916e36c608680ee4e8000816c0b88816cf74ff504081098a1808b42330474f79ac00ffef7899e835f8aca62fd1bfffe0daffc93a84a520c8138059c0dc4d917551120402090801808046d1a020408c429e0a2509c7dc958554b2bcfddf7b3a7a22afa577ff4dc89a80a520c8158059c0dc4da19751120402088801808c26c12020408c42a200662ed8cba0810201044400c0461360901020462151003b176465d0408100822200682309b84000102b10a8881583ba32e0204080411100341984d4280008158057c7c2cd6cea88b00815269f79bcefa4e4b44ff13c06a4f6e7bf99cf3f2d51a6703f9eaa7d510204020a1801848086677020408e44bc045a186fddcf0cc2fcef9ef887e4fce89df9df3ab86c5da40800081690a381b98269cbb112040201f0262201f7db40a0204084c53400c4c13cedd081020900f0131908f3e5a05010204a6292006a609e76e040810c8878018c8471fad82000102d3141003d3847337020408e443400ce4a38f5641800081690af8f8d834e19a75b7dffccbb72adff94eb3663fedbcf3b77c39aedff972da2a7d9300810602ce061ac0f8360102048a2120068ad167ab24408040030117851ac0c4faed7f7feb590fbe3aae6b309b5f563a27562e75112070460167036724b203010204f22c2006f2dc5d6b234080c019055c143a23911d0810689ac09a63bffa9b9f45f4fbdeab1043274e348d6376267636303bae46254080404604c440461aa54c020408cc8e8018981d57a31220402023026220238d52260102046647400ccc8eab51091020901101ef146ad8a84f3d7fdd81e36b1a6e0ebe61c16f5fb6b954bafad82fff36b6374ebcf042700c131220909a80b381d4280d448000812c0a88812c764dcd040810484d400ca44669200204086451400c64b16b6a264080406a026220354a03112040208b0262208b5d533301020452131003a9511a880001025914100359ec9a9a091020909a8018488dd240040810c8a28018c862d7d44c800081d404c4406a9406224080401605c44016bba666020408a426200652a33410010204b2282006b2d83535132040203501bf683a35ca220ff4fd17fe78f3f15ba212b8e9858bdaa32a48310462157036106b67d4458000812002622008b34908102010ab801888b533ea224080401001311084d9240408108855400cc4da19751120402088801808c26c12020408c42a200662ed8cba0810201044400c046136090102046215f0f1b1583ba32e02044aa56f9e78fb8ee36f884a624be9152d511534e3629c0dcc98d000040810c8b28018c872f7d44e800081190b888119131a800001025916100359ee9eda091020306301313063420310204020cb02de2994e5eea93d9b020fdffda3e3bf39114fed0b5e7fde9b575c184f3d2a092ce06c2030b8e90810201097801888ab1faa214080406001311018dc74040810884b400cc4d50fd510204020b08018080c6e3a020408c4252006e2ea876a0810201058400c0406371d010204e212100371f54335040810082ce0e36381c14d174ee0d95f1effdeb61f879b6f0a33bdfecfcebfa8e3fc371df8d28b43c7a6b07ba05dce99b3b454fa70a0c94c139f80b381f87aa2220204080414100301b14d45800081f8045c148aaf272a4a49e065bffd55c7e3ff98d260e90c537edd55a5d25fa433965108a424e06c202548c3102040209b0262209b7d533501020452127051282548c3c42730746ee9a6f79d1d555d7ff9ba39574655906208944ace061c0504081028b480182874fb2d9e00010262c03140800081420b888142b7dfe209102020061c0304081028b480182874fb2d9e00010262c03140800081420b888142b7dfe2091020e0e363193b06fee9f9777efbf892a88ade5a7a79a9f4eba84a520c01025317703630752b7b1220402087026220874db5240204084c5d400c4cddca9e040810c8a18018c861532d890001025317100353b7b2270102047228e09d42396caa250d0bbcf2c40bf7fdeca9a8349e3dffd7c7a32a483104fca269c7000102040a2ee0a250c10f00cb2740a0e8022e0a15fd08b0fef0026d97fdfcac678f869fb7d18cc7db8e3ddb689bef1740c0d940019a6c89040810682c20061adbd842800081020888810234d912091020d058400c34b6b185000102051010030568b225122040a0b18018686c630b0102040a2020060ad0644b24408040630131d0d8c6160204081440400c14a0c99648800081c60262a0b18d2d040810288080182840932d910001028d05c440631b5b081020500001315080265b220102041a0b8881c636b6102040a0000262a0004db644020408341610038d6d6c214080400104c440019a6c89040810682c20061adbd842800081020888810234d912091020d058400c34b6b185000102051010030568b225122040a0b18018686c630b0102040a2020060ad0644b24408040630131d0d8c6160204081440400c14a0c99648800081c60262a0b18d2d0408102880c0dc02acd11209c425f09ee3370d1d3f114f4d1dcfcf5f1f4f352a092ee06c2038b9090910201093801888a91b6a214080407001178582939b3094c0cf4be75d7bfc9650b34d699ebf3af1fbaba6b4a39d088413703610ceda4c0408108850400c44d81425112040209c801808676d2602040844282006226c8a92081020104e400c84b33613010204221410031136454904081008272006c2599b89000102110a8881089ba22402040884131003e1accd448000810805c440844d5112010204c209888170d6662240804084026220c2a62889000102e104c440386b33112040204201311061539444800081700262209cb59908102010a1801888b0294a2240804038013110ceda4c0408108850400c44d81425112040209c801808676d2602040844282006226c8a92081020104e400c84b33613010204221410031136454904081008272006c2599b89000102110a8881089ba22402040884131003e1accd448000810805c440844d5112010204c209888170d6662240804084026220c2a62889000102e104c440386b33112040204201311061539444800081700262209cb59908102010a1801888b0294a2240804038013110ceda4c0408108850400c44d81425112040209c801808676d2602040844283037c29a944480407881731fde78cecf1e0b3f6fa3195ff89d57ff72f5371a6df5fd14059c0da4886928020408644f400c64af672a264080408a026220454c43112040207b0262207b3d53310102045214100329621a8a000102d9131003d9eb998a09102090a280184811d350040810c89e8018c85ecf544c8000811405c4408a988622408040f604c440f67aa662020408a428200652c43414010204b2272006b2d73315132040204501319022a6a1081020903d013190bd9ea998000102290a888114310d45800081ec098881ecf54cc50408104851400ca4886928020408644f400c64af672a264080408a026220454c43112040207b0262207b3d53310102045214100329621a8a000102d9131003d9eb998a09102090a280184811d350040810c89e8018c85ecf544c8000811405c4408a988622408040f604c440f67aa662020408a428200652c43414010204b2272006b2d73315132040204501319022a6a1081020903d81b9d92b59c50408cc82c0a79f7fcf0f8eaf9a8581a739e4abce39e78e69ded5dd9209381b48e6656f020408e44c400ce4aca19643800081640262209997bd0910209033013190b3865a0e01020492098881645ef626408040ce04c440ce1a6a39040810482620069279d99b00010239131003396ba8e51020402099801848e6656f020408e44c400ce4aca19643800081640262209997bd0910209033013190b3865a0e01020492098881645ef626408040ce04c440ce1a6a39040810482620069279d99b00010239131003396ba8e51020402099801848e6656f020408e44c400ce4aca19643800081640262209997bd0910209033013190b3865a0e01020492098881645ef626408040ce04c440ce1a6a39040810482620069279d99b00010239131003396ba8e51020402099801848e6656f020408e44c400ce4aca19643800081640262209997bd0910209033013190b3865a0e01020492098881645ef626408040ce04c440ce1a6a39040810482620069279d99b00010239131003396ba8e51020402099801848e6656f020408e44c400ce4aca19643800081640262209997bd0910209033013190b3865a0e01020492098881645ef626408040ce04c440ce1a6a39040810482620069279d99b00010239131003396ba8e51020402099801848e6656f020408e44c400ce4aca19643800081640262209997bd0910209033013190b3865a0e01020492098881645ef626408040ce04c440ce1a6a39040810482620069279d99b00010239131003396ba8e51020402099801848e6656f020408e44c400ce4aca19643800081640262209997bd0910209033013190b3865a0e01020492098881645ef626408040ce04c440ce1a6a39040810482620069279d99b00010239131003396ba8e51020402099801848e6656f020408e44c400ce4aca19643800081640262209997bd0910209033013190b3865a0e01020492098881645ef626408040ce04c440ce1a6a39040810482620069279d99b00010239131003396ba8e51020402099801848e6656f020408e44c400ce4aca19643800081640262209997bd0910209033013190b3865a0e01020492098881645ef626408040ce04c440ce1a6a39040810482620069279d99b00010239131003396ba8e51020402099801848e6656f020408e44c400ce4aca19643800081640262209997bd0910209033013190b3865a0e0102049209cc79e6e850b27b44bff7256f79732a359e78d39a175ff5da54864a6790dffcdfdc47bf7ae2b5cb5e7cdddbd21930a551cefe8f3b5f9c7fe10b6f5c9dd278e90c73d613ff3ce737bf38b1fc43e90c97d22867fd78cf5987bfff7cb5aa79af4869c8148699f3f4a1b3fbffedc41b57bff8ea8b52182ead219e3d36f73fef3af1877ffae245cbd31a329571cefede97e7fcf6d95486aa0ef2d8133f486ba8698f2306a64de78e04081098a9801898a9a0fb13204080c00c05bc363043407727408040b605c440b6fba77a020408cc50400ccc10d0dd091020906d013190edfea99e0001023314100333047477020408645b606eb6cb8fb8fa4a6570607fffc09123c72aa552b965415bdbc5eded6d2de5e02557068f0c3e579bb5bca0adb5e1f495a3479eae7f82a4a535589195a1c1a787aa3a67f8b3a06d61c3b2cf70d7049b478a99d7d2d63a7fe2dd2a4347066b34a7db346cdbb260e1ec3776ac8f13ab3be5ab80ed3b39f3d8c173f25be36f4d7ae08ddf71366e572a0303fbfa0f1d393654fd2198775e6b5b7b7bfba2b6535a3c1b136769cc1c7e6e2002fecade6d37aefa68ef4b2b59bde9fe3bbb2f0df0a0363675e5d03d175eb26ef8cbcfee39fca1f6d3ff00ecddd0b2aaa7be57fb969feeb9364c8503bd2bdeb6ae6facd446376edb33785dfbac57d4bf6df9db3fda5f2a753efad4d7168d9fad72e0b20b2e3d582baefb89a3b7b68dafb2b2efb20baea86e5afdd57d77af593c7e4bfab72b07565d70e9de338e1bb07d63b59cb18fb73d3678dde2f1a663779ddd1b47fab6bd77e58df5de4d9ca873d3a35bd64de8f2c4ed45fbca45a1f43bbe7ff3156319b0ba6bfd27366dbaa16be463903b37ac7cd7e67de94f39d988277ffc3eded377fae7de95035f1fce80ea38217f38e64d78506db488f3e635da92e6f7db3ad6d687dbd17f6402d2507fdfe8e348cfc1899b2a03fdc39b56774c6921332bb7bc602af70fd9beb17aced4c7f3c6f60c7863a86fcb5b4633e0e2ceae1b3eb5e913ebbb46e6dfb1e16defdc523ff90d5850c4538981b49b33b8eb5d37579f54569f566e7ee2a9a1bbb7dcfc91ee759fdcf2c04f7fb4e7fafa54076fbe62f7c44793b42b683c5e6fcfc1d31dfb83fbb7ef1cbbd3d363b766fdc6a2353dd5df6532f6f7a78f6da94fd9f9f0e193dfac6eed0cf244b265d1d265f5e91fea1f1cbff281be07c6be7c70dfc44dfbb6d737adbfb8ed64d68eed9cf28df2e2bbc7593d73f4f05d9db519967d61cf1860edc6b635b35f4aa3952d3fa571638585e9e0c4b20e7f71e586fa773abf7d60f0916d3d9fbc71dd4736f63cf3d4a1bbbadb6bdfefdff0b95d8727dea5b85f8981947b5f191a7ea06dbf6fd3daf10f0ee5d625b71cb86778b227a770413ce5b24686ebfb7adf4b0ffdcade5b6f2fd57f346667d2a98f3af208560ef2f4ffd4b2ca6dabebe76cf7eeee1f773a30b8f7e69397adeeddbd7fdca6a30777d437755f11e05ce0d46a4b23560bcacd7bd83fb5a605cd69dca965d4bfae3cf764fddf1beebf75d9c49fc3ce4df78c3c213b72bae744a71d2defdf1403b3d4e1fee79e1bf788313c495bc79d5dcb2fae3ee2be64cb2c15f1d261efbd75f7a9c7fe60df07ab8f66fda565cba3888297d61cea3bf3dfda597f82dddb77f28c68f0d0676ad377df777ffd4ca577d79363bdab1cb9b79e0237ac98e5570542ad3f67f30c3f9778ee344fb916aefe42f7c5eda505a5fa3b2772b6ec692d470c4c8b6d0a777aef92ee07fb0f8f3d68d4efd1fad75b1e78e468df751da77f9d760aa34e7b97f6dbeed956bbe8d17fe3de8997a40676d7cf513ab7fcc3fbe2fa3d8ed35eeab4efb8a8e38afa7d7b06468906fb77d5bed3d9b16c69c735b55bbd63af1c545f18a8bf60db7e797b6b6d8b3fd5139478ce4c4a238ff15baf5df2c5070e9c92054bd7defac89ea1bbd77668dab0801848f948282fbe7cf8a26da9b4e3bd972eb9707ecb07d67dea9bdb77f51f1a9c180929cf7ba6e1facf5bb4f4fafa2b645b1f38346ee7c3df5cb7a3fae50d6b97bf26a69fe1711586bb595ed4beba3edbde43c3af01540eeebebdfa8d6b56b497cb6defa89f2a7c77ff91e1829e1c4e88f6ae8b5bc25518f74cbdd5e37cefae5dbbc7fd7df0813da3911ab6f6f2e21bb6d41b562a7de6da4b2fbaa065d5daeeaff46edfdb7fe89448085b56a4b38981d41b33bf73dbe16f6c1a7d4f42a9b4b3f7f60fbf7fcddb2f595c8d84bfdbb87de0d48b32a917d060c072ebb2ae8dd56d7b37f48e3c92954a95febe3b6abb2f5fbd7461a9d2acca6a1544f1a7bcf81df533a287fa8685061faabf81ea1db537029597aea8f57467efbe7a9c57fa7b6bf1797157871418ebdd1def5fb3eaaa35578ffbfbde6b573e34d09ce73fed5d3d0fdfb3e9e2d1e2f6eee8fdf8bab5ab2eeda846c2656b37ef3d7474748b7f4b6260360e82f9577657df9370f8d13df7dff5858dabc75d73bff7f6b56f5bb8bc29ef14aabe54d1b27445fdd96ecf83fd233f038ff7d63f52d0d55d7d5fbe0ba5b5c7faaeda53c883b7efaf9d0e1cd9bfb57674742fadbfc6b8a06345edabbededac35ae5d077eb2f0c5cb37c51ed9bfed405aaefcbbcbeabeb9a717f5777762f9ad21b5d6743b0dcbe62dd2347077ff8d89efbbebaf9face93d73c0feed8b8ea92859ff64ea151f5b9a337fc9bb64079fea2f64bab7f3bd7de7877a5726460dfcecd2b3f537b06d97ff5926d3f39baae09cf22cb8baf5bdfbef3f6feea0708aedbb2b23cfa7181cf769ffc09495b2163e3bd6669f5e5816a93b63f59b9f1b97df51706ba570cbf11a8dcd65e7d87c9d652dfe30395f69681fa5b6c972f5b14fe659e68493befded2d394cf2d4c2a526e5dbca4faf7f2356b6fd956fd40f8a1dddb377ff0e6dacfe11d575d7bf9e1be654df8399cb4de666c743690ae7a657fefe68f6de83ef57d99d54bcbed977e64dbe07deb87df8db3af39174c4ba5b776dd585b706f4ff529edd0c8c705baaf6cf0d1e2746932315ab9ada37ec2d47f70e0d0c1ddb5cf818f7b23d0c22bebeddbd97f68a0bffe19c0e55df13dea3593b939577f4eb7e2c17df77c6cc34d9fdeb6676249e596b6259d377eed896fadafdfa9ff48b37e0e4f577313bf270652c61fe8ddb8b5a7f7ebfb862f2e9f327879d99ab5c3df6ad6cbb1e5c5cb3f51aba06fe7ee7dbb7b6fafde5ab6a9ab196f7b1f6688efbfe5b677d75f59dcd9b36d6b2d0526bc11e8f557aca97e6b6f6fcfd7b7d72e09adeeea68561fe383ab55148fc6b1815d5b7b7aeef868ff692f75b62d5f33fc51c152533ea1125ff3c440ba3d29b72dad3ddf3f78f3ca1d87263e11a9cff3f8aeedc3f39d665bba85341cadf5cafa3b28eeb8f68a0fd61ee64ad77bdbfb04abea05e5da4bc1d5c7fadafb4127be11a8b57d69ed25c7bedead3b6a1f147ff752015a6588f1cf796d4bea656df8dcf6f1ef8b1b297568ffeefa9b7d63acbc2935898194d947aeba944a1fbca4f52bb5372c8f3ce057860eefded6bd6af823a99d2b9b783161d1e5236724b595b76f9ef019cb94313239dc6bdaab2f0f8cfc59f6bee5132e1db7b45f73f233765dede33f9e3a7a17ffc620d0ba74c535f53ab6bebfe3033df71f197d9768a572b47fd7b68b566eac6fec1c7ef13f86829b5b831848d9bfbc78cda35fed1e1ef4e3b5372cb7be7a7e4bf5ef850b975c3df23b47bb1eded2c45ffc522ab5768c7eb2a174fd4d974f78984b19639ac335ef54a95670f5659ce14790eaed6b3a4ef984f0fc65a3bf25b0d4b5c2272d461b3cfa5c67f4ebe6ff5b5e7cdb63db86cbd8b9e1dab72c1cfd31bc60e1dbafaabf3c562addf5d8e6263e1b6b3ed1b80ac4c0388c946e2e5a73eb4f1ebbff86ce93cf1bc706befe0bdb7ff854cfecffd6e4b109ab8f6a238ff3e37e217ef9f2b51beb7b745e73f9c2b15de70defd9b4b7f78d15d2ecdf9253fda4d8c8a73eba96bee47162d1f2916dd7573f53365672f36ecc8be0eaf6bcf2f0e7a81bffdf2c9ae1537d42f6cce17d77ae1ff910d9f81296756f7ef847839d8bbdcb6b44c5ff6f60fce191f2edea19e8d0d343c72ad597a9e6cd6b6d59d0323f86078e9417693802910b54aabfefb1fa3f38aabd5a3cafbc60c182f9cd7ea2119d971888ae250a2240804048011785426a9b8b000102d1098881e85aa2200204088414100321b5cd45800081e804c440742d5110010204420a888190dae62240804074026220ba9628880001022105c440486d73112040203a0131105d4b144480008190026220a4b6b9081020109d801888ae250a224080404801311052db5c040810884e400c44d7120511204020a4801808a96d2e02040844272006a26b89820810201052400c84d43617010204a2131003d1b5444104081008292006426a9b8b000102d1098881e85aa2200204088414100321b5cd45800081e804c440742d5110010204420a888190dae62240804074026220ba9628880001022105c440486d73112040203a0131105d4b144480008190026220a4b6b9081020109d801888ae250a224080404801311052db5c040810884e400c44d7120511204020a4801808a96d2e02040844272006a26b89820810201052400c84d43617010204a2131003d1b5444104081008292006426a9b8b000102d1098881e85aa2200204088414100321b5cd45800081e804c440742d5110010204420a888190dae62240804074026220ba9628880001022105c440486d73112040203a0131105d4b14448000819002ff0f2d7f2d973eddd70f0000000049454e44ae426082}\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u36825?\u26159?\u25105?\u30340?\u27599?\u21608?\u24773?\u20917?\u65292?\u26174?\u28982?\u22914?\u26524?\u25226?\u26143?\u26399?\u20845?\u31227?\u21040?\u21069?\u38754?\u30340?\u35805?\u65292?\u38543?\u30528?\u24037?\u20316?\u26102?\u38388?\u30340?\u22686?\u38271?\u65292?\u22312?github\u19978?\u30340?\u20351?\u29992?\u22312?\u19979?\u38477?\u65292?\u20316?\u20026?\u19968?\u20010?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 a fulltime hacker who works best in the evening (around 8 pm).\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u19981?\u36807?\u36825?\u20010?\u26159?osrc\u30340?\u20998?\u26512?\u32467?\u26524?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 python github \u27599?\u21608?\u24773?\u20917?\u20998?\u26512?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u30475?\u19968?\u24352?\u20998?\u26512?\u21518?\u30340?\u32467?\u26524?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 {\pict\pngblip\picw844\pich438\picwgoal12260\pichgoal6360 89504e470d0a1a0a0000000d494844520000034c000001b608060000004c0b06e10000000473424954080808087c086488000000097048597300000f6100000f6101a83fa7690000200049444154789cecdd7b7ccee5ffc0f1d77d6fb323c3866dce739ce3cce6189b4d58ce9a952c7e7228613924f5951c561486282224426939554acc668ac46624c77288368631ec6087fbfafdf16977bbed1e5318dbfbf978ec71bbafebfa5c9febf3b977dbfdbeaf934e29a51042082184104208918fbea81b20841042082184108f2a099884104208218410a2001230092184104208214401246012420821841042880248c0248410420821841005908049082184104208210a2001931042082184104214400226218410420821842880044c420821841042085100099884104208218410a2001230092184104208214401246012420821841042880248c0248410420821841005908049082184104208210a2001931042082184104214400226218410420821842880044c420821841042085100099884104208218410a2001230092184104208214401246012420821841042880248c0248410420821841005908049082184104208210a2001931042082184104214400226218410420821842880044c420821841042085100099884104208218410a2001230092184104208214401246012420821841042880248c0248410420821841005908049082184104208210a2001931042082184104214400226218410420821842880044c420821841042085100099884104208218410a20012300921841042082144012460124208218410428802148b8029353595c99327d3a54b17ca972f8f5eafe7d34f3fcd57eefffeefffd0ebf5f97e3c3c3cccd6bb6cd9323c3c3cb0b5b5a56eddba7cf0c10766cb5dbb768d61c38651a142051c1c1cf0f7f7e7c0810366cbeedebd9b279e78027b7b7b5c5d5d79e59557484d4dfdf7172f84104208218478602c8bba01f7c3a54b97080b0ba37af5ea787a7a121d1d8d4ea7335bd6dada9a65cb9699a4393a3ae62bb778f162860f1f4e505010afbefa2a313131848686929696c66bafbd662c673018e8dab52b870e1de2b5d75ec3c9c989850b17e2e7e7476c6c2cb56bd736968d8f8f27202080860d1b3277ee5cce9d3bc7ecd9b33979f2245bb66cb94f774308218410420871bfe89452aaa81bf15f65666672edda352a56ac486c6c2c3e3e3eac58b1820103069894fbbffffb3fd6af5fcff5ebd7ef585f7a7a3a55ab56a54d9b366cdebcd998fefcf3cfb371e346ce9d3b47d9b2650158b76e1dcf3efb2c111111f4e9d30780cb972f53b76e5d02030359bd7ab5f1f8a79e7a8a43870e71ecd8311c1c1c00ad176be8d0a16cddba95279f7cf2bedc0f218410420821c4fd512c86e4952a558a8a152b0270b7f84f2985c160b863d0141515457272322fbffcb249fa881123484d4de5db6fbf35a6454444e0e2e2620c96009c9d9d090e0e66d3a64d6465650170fdfa75b66fdf4e484888315802183060000e0e0eac5bb7aef0172c84104208218478288ac590bc7b91969646993265484b4ba35cb972f4ebd78ff7de7b0f7b7b7b6399dcf947dedede26c77a7979a1d7eb898f8fa77ffffec6b25e5e5ef9cee3e3e3c392254b3871e2040d1b36e4d75f7f253b3b3b5f9d565656787a7a1638e7e9f2e5cb6cddba951a356a606b6bfb9fae5d0821841042145fe9e9e99c397386ce9d3be3ecec5cd4cd29364a54c0e4e6e6c6840913f0f2f2c26030f0dd77dfb170e1420e1e3c487474341616160024262662616191ef17ad54a952383939919090604c4b4c4cc4cfcf2fdfb95c5d5d01484848a061c3862426269aa4e7e5e2e2c28f3ffe68b6cd5bb76e252424e45f5daf104208218428793efbec33e397fbe2bf2b5101d3f4e9d34d9e07070753b76e5d264e9c48444404cf3cf30ca045e7a54a95325b87b5b535e9e9e9c6e7191919585b5be72b67636363ac2bef634165f3d69957cd9a3501ed17bfa0d5fcc4a367f4e8d1cc9b37afa89b21ee81bc668f1f79cd1e3ff29a3d7ee4357bbc1c3d7a94909010e3e747717f94a880c99c3163c63069d2242223238d0193adad2d99999966cb676464980c8db3b5b5e5d6ad5b66cbe5e6e77d2ca8ac9d9d9dd9f3e5065e1e1e1e6687fe894753d9b265e5f57accc86bf6f891d7ecf123afd9e3475eb3c753eee747717f148b451ffe0b1b1b1bca972f4f7272b231cdd5d5959c9c1c2e5fbe6c5236333393e4e464dcdcdc4ccae61da2972b77085e6ed9dca178b9e9b797cd5ba7104208218410e2d150e203a61b376e70f9f2652a54a8604c6bd6ac1900fbf6ed3329bb7fff7e0c06039e9e9ec6344f4f4fe2e2e2f2adceb777ef5eecededa95bb72e008d1a35c2d2d2325f9d999999c4c7c79bd4298410420821847834949880e9d6ad5bdcb871235f7a585818005dba7431a6f9fbfb53be7c79162d5a645276d1a245d8dbdbd3b56b57635a505010172f5e64fdfaf5c6b4cb972ff3e5975fd2bd7b77acacac006d73dc8e1d3bf2d9679f71f3e64d63d955ab56919a9a4adfbe7defcf850a218410420821ee9b623387e9830f3ee0dab56bc6e1719b376fe6cf3fff0420343494e4e4649a356bc673cf3d47bd7af5006d05baefbefb8ec0c0407af6ec69accbc6c686b0b030468c18417070309d3a7562d7ae5dac5ebd9ae9d3a71b37ad052d606ad5aa1583060de2c89123383939b170e14294524c9d3ad5a48defbcf30e6ddab4c1d7d797a1438772fefc79e6cc9943e7ce9de9d4a9d383be45e221ead7af5f513741dc2379cd1e3ff29a3d7ee4357bfcc86b2604e8d4dd767a7d4cd4ac5993b367cf02a0d3e9006d935a9d4ec7e9d3a771747464d4a851fcfcf3cf242424909393439d3a75e8dfbf3fafbefaaa7149f1bc962e5d4a787838a74f9fa65ab56a8c1c3992d0d0d07ce5ae5dbbc6f8f1e3d9b87123e9e9e9b468d182d9b3679b9d24f9d34f3f3161c204e2e2e22853a60cc1c1c1cc9831c3641fa8bce2e2e268debc39b1b1b132e952082184104214483e373e18c526602aaee4175f082184104214867c6e7c308acd903c218410423c9e4e9e3c69769eb110e21fa54b97a64e9d3a45dd8c1249022621841042149993274f1a57941542dcd989132724682a02123009218410a2c8e4f62c7df6d96778787814716b8478341d3d7a94909010e9892d22123009218410a2c8797878c89c0b21c423a9c4ecc32484104208218410f74a0226218410420821842880044c420821841042085100099884104208218410a2001230092184104208214401246012420821841042880248c02484104208f188983f7f3e0d1a34c0d6d616bd5ecffcf9f301d0ebf574e8d0a1885bf7785ab162057abd9e4f3ffdb4a89b221e53b20f9310420821c423e0f3cf3f67f4e8d17879793176ec58acadad69d5aa95315fa7d33db073fbf9f911131383c1607860e7286a0ff2fe89e24d0226218410428847c037df7c637c74717131c93b76ec187676760ff4fc125008619e044c42082184108f80848404743a5dbe6009a06eddba45d0222104c81c262184104288223565ca14f47a3dd1d1d128a5d0ebf5c69f5ce6e630e51eb773e74ed6ac5943cb962d717070a066cd9ac6329b376f262020005757576c6c6ca85cb9327e7e7e2c5ab408803367cea0d7eb898989c977eebbcd995abc78317abd9ea54b979aa47ff2c927e8f57aecededc9cccc34c96bd9b225b6b6b6dcba75cb247defdebd040505e1e2e282b5b535d5aa55e3a5975e223131d1ecb993939379e38d37f0f0f0c0cece8eb265cbd2b16347b66ddb76c736e775f5ea55dab76f8f858505efbdf75ea18f13258ff430092184104214a10e1d3aa0d3e958b1620567cf9e65ca942966cb1534642e3c3c9c6ddbb6d1a3470f0202024849490160c99225bcf4d24bb8babad2b3674f9c9d9d494a4ae2e0c183ac58b182e1c38753ae5c39264f9e6cf6dc356ad4b863bb3b76ec084064642443860c31a647464602909191c19e3d7bf0f5f50520252585d8d8587c7d7db1b6b636965fbe7c39c3860dc3d6d6961e3d7a50b56a554e9c38c1d2a54bf9faebaff9f9e79fa95ab5aab1fcd9b367f1f3f3e3ecd9b3b46fdf9ea79e7a8a9b376ff2cd37dfd0a54b17162f5e6cd21e73fefcf34fba74e9c2a953a758b56a15cf3df7dc1dcb8b924d0226218410423c76d2d2e0d8b1877fdefaf5e17e4f25f2f5f5c5d7d797a8a828fefcf34fde7aebad7b3a3e2a2a8a9f7ffe99a64d9b9aa42f5ebc186b6b6b0e1e3c88b3b3b3495e727232008e8e8e4c9e3cf95f9dbb56ad5a54ad5a951d3b7698a4efd8b1037f7f7fa2a3a3898c8c34064cd1d1d1180c06fcfdfd8d654f9c38c14b2fbd84bbbb3b3b77eec4d5d5d5a49e4e9d3af1ca2bafb07efd7a63fac081033977ee1c9f7ffe39c1c1c1c6f4949414fcfcfc080d0da5478f1e54ac58d16cbb0f1e3c48606020e9e9e96cd9b2c5a43d4298230193104208211e3bc78e41f3e60fffbcb1b1e0e5f5f0cf7b27c3860dcb172ce5b2b0b0c0d232ffc7bdf2e5cbdf9773070404b062c50a7efdf5571a376ecc912347b870e10293274fe6faf5eb444646326dda34e09f9ea7808000e3f18b162d223b3b9bf7df7fdf245802f0f7f7a77bf7ee7cfdf5d7a4a6a6626f6fcfc18307898989a16fdfbe26c11268c1df942953e8ddbb375f7df515c3870f37c9574ab16ddb369e7efa691c1d1d898989a171e3c6f7e53e88e24d0226218410423c76ead7d78297a238efa3a6458b1666d343424218376e1c0d1a34e0d9679fa57dfbf6b46ddb960a152adcb773fbfbfbb362c50a22232369dcb8b1b1b72920208053a74e3177ee5c63b0b363c70e4a972e6dd2de3d7bf6005aefd3debd7bf3d59f9494444e4e0e274e9ca059b366c6f2d7ae5d333b74f1d2a54b001c3d7a345f5e4444045bb76ea55ebd7a7cf7dd7754a952e53f5fbf2819246012420821c463c7ceeed1ebe9292ae656d5031833660ccecece2c5cb890f9f3e7336fde3c743a1dbebebecc9a358be6f7a18b2eb7b768c78e1d8c1e3d9ac8c848aa56ad4aeddab509080860d6ac59ecdcb9132f2f2f8e1c3942d7ae5d4d16b3b872e50a00b366cd2af01c3a9d8e9b376f9a94dfb66d5b810b3ce8743a525353f3a5efd9b387ecec6c5ab46821c192b827123009218410423cc6eeb47fd2f3cf3fcff3cf3f4f4a4a0abb77ef66c3860d2c5fbe9cce9d3b73ecd8b17c739bee95abab2b75ebd625262686cccc4ca2a3a3e9ddbb37004f3cf104a54a9562dbb66d5cbb760d20df7c21474747743a1d292929383838dcf57c8e8e8e00cc9f3f9f912347de535b67cc98c1b7df7ecb279f7c82528a65cb96c9de53a250645971218410428862ced1d191c0c040962c59c2fffddfff919c9c4c4c4c8c31dfc2c202d0e6f9dcab8e1d3b72fdfa75162e5c484a4a8ab1d7c9cece8e56ad5a1119196932542fafd6ad5ba3943269cb9db46edd1aa0d0e5f3b2b6b626222282be7dfbb262c50a424242c8c9c9b9e77a44c92301931042082144311415156536fde2c58b00d8dbdb1bd39c9c9c504a71f6ecd97b3e4f6eafd1bbefbe8b4ea733098afcfdfd397cf8305f7ffd35cecece3469d2c4e4d8912347626565c59831633879f264beba333333d9b56b97f179f3e6cd69d7ae1debd7afe7934f3e31db9e5f7ffdd53897e976969696ac5dbb96909010d6ae5dcb33cf3c437676f63d5fb3285964489e10420821c423e2dff4f014a477efde942e5d9a56ad5a51bd7a759452ecdab58bfdfbf7e3eded6ddc4709b45ea2888808faf4e943606020b6b6b6d4a85183909090bb9e27771fa9a4a4243c3c3c4ce6540504043065ca142e5dba44dfbe7df31d5baf5e3d962f5fce0b2fbc40c3860de9d2a50b75ead4212b2b8b3ffffc935dbb7651a952258e1c39623c66cd9a35f8fbfb3378f060e6cf9f4f8b162d285bb62ce7cf9fe7d0a143fcf6db6ffcfcf3cf052e6ea1d7ebf9f4d34fb1b1b161e9d2a5f4e9d3878888084a952a752fb7579420123009218410423c02743add3dcda9b95bf9f7de7b8fad5bb7121717c7962d5bb0b1b1a1468d1acc9c3993e1c3871b87e1010c193284b367cff2f9e79f336bd62cb2b3b3f1f3f32b54c054ae5c399a356bc6810307f2cd516ad9b225f6f6f6a4a5a515b8df51fffefd69dab429e1e1e1444545f1c30f3fe0e0e0809b9b1bc1c1c13cf3cc3326e52b57ae4c6c6c2c0b162ce0abafbe62cd9a35e4e4e4e0eaea4a83060d78e5955768d4a8d11def934ea763c99225d8d8d8f0c1071fd0b3674f366cd8808d8dcd5daf579440aa18b879f3a67aebadb754e7ce9d55b972e5944ea7532b56acb8e331999999cac3c343e9743a357bf66cb365962e5daaead7afaf6c6c6c549d3a75d482050bcc96bb7af5aa1a3a74a872767656f6f6f6aa43870e2a2e2ece6cd99f7efa49b56ddb56d9d9d929171717151a1aaa6edebc59603b63636315a0626363ef783d420821c4e348fece097177857d9fc8fbe9c1281673982e5dba44585818c78f1fc7d3d313b8f38a31000b162ce0dcb97305965dbc783143870ea571e3c67cf0c107b46edd9ad0d05066ce9c6952ce6030d0b56b57d6ae5d6bcc4f4a4ac2cfcf8fdf7fffdda46c7c7c3c0101016464643077ee5c860c19c292254bcc76510b2184104208218a5eb11892e7e6e6c6850b17a858b122b1b1b1f8f8f8dcb17c525212616161bcfefaeb4c9a34295f7e7a7a3a13274ea45bb76eac5bb70e80c18307633018080b0b63d8b061942d5b16d03641dbb3678f71dc2f4070703075ebd665f2e4c9ac5ebdda58effffef73f9c9c9c888e8e362e9d59a3460d860e1dcab66ddb78f2c927efcbfd10420821841042dc1fc5a287a954a95254ac581128dc64c9d75f7f9dfaf5ebd3bf7f7fb3f9515151242727f3f2cb2f9ba48f183182d4d454befdf65b635a4444042e2e2ec66009c0d9d999e0e060366dda4456561600d7af5f67fbf6ed84848498ec333060c0001c1c1c8c8199104208218410e2d1512c02a67bf1cb2fbfb072e54ae6cd9b57609903070e00e0eded6d92eee5e5855eaf273e3edea4ac9799adc67d7c7c484b4be3c4891380b6c465767676be3aadacacf0f4f4349e53082184104208f1e8281643f20a4b29c5a851a378f6d96769d9b22567ce9c315b2e3131110b0b8b7cbb5f972a550a2727271212124ccafaf9f9e5abc3d5d515808484041a366c486262a2497a5e2e2e2efcf8e38f776cfbe8d1a38dc30073f5ebd78f7efdfaddf138218428369482df7f875f7ef9e7c7d111de7a0bdab429ead60921c443b576ed5ad6ae5d6b9276eddab5226a4df156a202a6152b5670f8f061d6af5f7fc772e9e9e905aec56f6d6d4d7a7abaf179464606d6d6d6f9cae52e4b995b36f7b1a0b279eb3467debc79667bb28410a2d8ba7409f6ed83bd7bff09909293b5bcdab5a1450b387c18dab685a79e82b7df8666cd8ab6cd4208f19098fbe23c2e2e8ee6cd9b17518b8aaf1213305dbf7e9d37de7883d75e7b8dca952bdfb1acadad2d99999966f3323232b0b5b535297bebd62db3e572f3f33e1654d6ceceae7017228410c5517a3a1c38a00545b901d2a9535a9eb3b3161cbdf28af6d8a205942fafe5190cf0e5975a2f9397170405c1b469e0e15174d7228410a258293101d3ecd9b3c9caca223838d83814effcf9f30024272773e6cc192a57ae8c959515aeaeaee4e4e470f9f265936179999999242727e3e6e6664c7375753519a2972b77085e6ed9dca178b9e9b797cd5ba71042146b06031c3ffe4f60b4772f1c3a04d9d96063a3053e3d7a40cb965a7054b32614b455845e0fcf3c034f3f0dab56c1d4a9d0a8118484c0e4c9e0eefe70af4d082144b15362167d3877ee1c57af5ea561c386b8bbbbe3eeee4efbf6ed01983e7d3aeeeeee1c3d7a14c0b897d3be7dfb4cead8bf7f3f0683c1989f5b362e2e2edfea7c7bf7eec5dede9eba75eb02d0a851232c2d2df3d5999999497c7cbc499d420851ac2426c2a64df0bfff41c78e50ae1c3468002fbc00d1d1d0a409cc9f0fb1b170fd3afcf413cc9d0bcf3eab053c77d9570f004b4b1834480bc4e6cf871f7e807af5e0a597e0ef2fc7841042887fa3c4f430858686d2bb776f93b48b172ff2e28b2f3268d0207af6ec498d1a3500080808a07cf9f22c5ab488c0c04063f9458b16616f6f4fd7ae5d8d69414141444444b07efd7a9e7efa69002e5fbecc975f7e49f7eeddb1b2b202c0d1d1918e1d3bf2d9679f3169d224e3d2e2ab56ad2235355536af1542140f376f6a814fdea1757f6f128e8b8bd66bf4faeb5acf91b7b7b668c3fd646d0d234668c1d3871fc2bbefc28a15f0f2cbda79ffde824208218428ac6213307df0c1075cbb76cd383c6ef3e6cdfcf9e79f80162c356bd68c66b74d06ce1d9ad7b061437af4e8614cb7b1b1212c2c8c112346101c1c4ca74e9dd8b56b17ab57af66faf4e926abd5050505d1aa552b060d1ac491234770727262e1c28528a5983a75aac9f9de79e71ddab46983afaf2f43870ee5fcf9f3cc993387ce9d3bd3a953a707715b8410e2c1c9c981df7e330d8e0e1fd686dcd9d96901d1b3cffe33b4ae4a95c2f516dd0f7676307e3cbcf8a2d65b151e0e4b96c0e8d1f0eaab70dbaaa342082144418a4dc0141e1eced9b36701d0e9746cd8b081f5ebd7a3d3e91830600065ca94b9a7fa860f1f8e959515e1e1e16cdebc996ad5aa316fde3c4243434dcae9f57ab66cd9c2f8f1e3993f7f3ee9e9e9b468d182952b5752a74e1d93b2cd9a3563fbf6ed4c983081b163c752a64c19860c19c28c1933fedbc50b21c483a69436b42defbca3d858484dd5e611356aa40545a346698f0d1a68c3e48a5a9932da5ca6912361e64c983347eb791a3f1e424321cf46e242082184393a75fbe41bf148c95d1e32363656961517423c3c2929b07fbf698074e1829657b5ea3fbd462d5b6a8b343c2e81c7850b307d3a2c5eac0d077ce30d183e5c5b6c421409f93b27c4dd15f67d22efa707e311f8fa4f08214491cacad256a9cb3bb4eed831ad57a94c19f0f1d11668c85dd2dbcc06dc8f0d17176d518871e3202c4ceb690a0f874993b46bfc7bdea9b87f0ccac095b42b5cb879818ba91749cb4ac3c9d609673b679ced9c3128435137513c42ce9c3983bbbb3b03070ee4934f3e29eae6dc17c5f19a4a1a09988410a224510a4e9ffe2738dabb57dbff2823431b42d7b429f8f9c184095a7054af9e36e4aeb8a95e1d962e85d75e832953b45ea69933b57f3ff71c585814750b1f694a29526ea570e1e6052d10ba7951fb77ea6dcf6f5e202935891c9553605dbac48734af4d3c56740f6bbee343541cafa9a490804908218ab3e4642d38cadb7b74f9b296e7eeae0545c1c1dad03a4f4fc8b331778950b72eac59a30dcd9b3409060cd056d69b360dfaf479788b543c226e66de340976727b85ccfd3b33c77483771b4b1b5c1c5c707170a1927d255a546e61fcb731dda11276567624a7277339ed3297d32e131717c73b8bdf29a22b164288bb93804908218a8b5bb7203ede74ded1efbf6b79e5cb6bc1d1cb2f6bc1918f0f54a850b4ed7d94346e0c1b376af7edcd372128489b9bf5f6dbd0a5cb631d386564671883a082829fdcfcd4ac5493632df59626014fa38a8de8e8de1117fb7f02a0dcbcd2a54a17fa1b74170717e3bf6ba4d7e01d246012423cba2460124288c791c1a00543b9c3ea7ef9450b96b2b2a0542968d60c9e7aea9f85196ad57aac3ff43f342d5a689bdeeedc0913276af7b06d5b78e71df0f52dead61965e5647129ed92d92171797b882ea65ee45ac635936375e8a8685fd118f0d42e5f9b27aa3d61da13f4f7bfcbd99643af2b8643321f519b376fe6fdf7dfe7c891235cbd7a15272727ead4a9c333cf3cc3f0e1c34dca262727336bd62c366edcc8d9b3672955aa14dedede4c983081279f7cd26cfd5f7cf1054b962ce1c08103a4a7a7e3e2e242ebd6ad19376e1ccd9b373796bb75eb1673e7ce65f5ead59c3a750a4b4b4b9a366dcaa851a3f2ed1b99777ecee4c99379fdf5d7d9be7d3ba9a9a9346ad4882953a698ec5f99ebc68d1b4c9e3c9975ebd671e5ca156ad4a8c1b061c3e8d9b367a1efd7f1e3c7f1f0f0e0b9e79ee3b3cf3e33a69f3e7d9a5ab56a01101313c3134f3c61cc9b306102b366cd62c78e1df8f9f919d3cf9f3fcfbbefbecb962d5b484848c0c1c181b66ddb3269d224bcbdbdf39d3b3b3b9b254b96b072e54a8e1c39424e4e0ef5ead563f0e0c1bcfcf2cb85faf2c060303066cc18162c58409f3e7df8ecb3cfb09105681e4912300921c4e32029c97458dd2fbfc0b5bf3f08d7aba77dd01f38507b6cda540b9ac4bfe7eb0bbb76c1f7df6b3d4e7e7ef0e4935a8f538b160fe4940665e072dae57c018fb97f5f4ebb9ceff8f2b6e58d018f5b6937bc5cbdcc0e8973b673c6522f7ffe1f354b962ce1a5975ec2d5d5959e3d7be2ecec4c525212070f1e64c58a152601d3d9b367f1f3f3e3ecd9b3b46fdf9ea79e7a8a9b376ff2cd37dfd0a54b17162f5ecc9021438ce595520c1a3488952b5752a14205828282a850a102e7ce9d233a3a9afaf5eb1b03a6cccc4c3a77ee4c4c4c0c1e1e1e8c1c3992d4d45422222278e69967888f8fe79d77f2f7089e3d7b96962d5b52ab562d060e1cc8952b57f8e28b2fe8d9b327dbb76f37094e6eddba45404000fbf7efc7d3d393e79f7f9eab57af12161646747474a1ef59bd7af5a85cb93251515126e9919191803667283232d224608a8c8cc4d6d696366dda18d3e2e2e2e8d4a91357af5ea54b972e04050571e9d225366edcc8134f3cc1860d1b080c0c3496cfcacaa27bf7eefcf0c30fd4af5f9f9090106c6c6cd8b16307a3468d62efdebdac5cb9f28e6dcfc8c8a07ffffe6cd8b081912347327ffefc425fb778f8e47f4c218478d4a4a5415c9c6980f4f746db54aca8f5188d1ba73d7a7b43b97245dadc624ba783c0406d48defaf5f0d65bda3defd9539be3d4a4c95dab504a712de35aa186c3995b1ca18c75199380c7c3d9235f00e4e2e04245fb8a94b2285941725a561ac72e1f7be8e7adef5c1f3b2bbbfb5eefe2c58bb1b6b6e6e0c183383b3b9be42527279b3c1f387020e7ce9de3f3cf3f273838d8989e9292829f9f1fa1a1a1f4e8d1838a152b02f0f1c71fb372e54a5ab468c1b66ddb285dbab4f11883c140525292f1797878383131313cf5d4536cdebc19fddf8bbe4c9e3c99162d5a3063c60cba75eb46ebd6ad4dda141d1dcdd4a9539934699231edb9e79ea34b972ecc9a35cb24600a0f0f67fffefd3cfdf4d37cf9e597c6f4d75f7fdda4a7ab30fcfdfd59b56a15478e1ca1418306801614393b3b53a54a15222323993c79320057af5ee5c08103f8fbfb53eaef2f95b2b3b3090e0e262d2d8de8e868dab56b67ac7bfaf4e9f8f8f83078f060ce9c39633ce69d77dee1871f7e60d4a851cc9b37cfd89b64301818366c18cb972f272828881e3d7a986d737272323d7af460cf9e3dbcf7de7b8c1f3ffe9eae593c7c123009214451cac9d196f0ce3befe8d75fb5745b5b68de5c5b7ca0654beda75a35195af7b0e974f0f4d3d0ab17ac5d0b9327a33c3db9d9c80240530000200049444154bb2bc7473dc7d98aa5cc0e87cb0d8c6e5f1cc1d6d2d624e06959a5252ef6a6f3812ad957322e9020cc3b76f918cd97dcdb87ebfb2176582c5eae0f667f1b0b0b0b2ccd6cf85cbe7c79e3bf0f1e3c484c4c0c7dfbf6350996001c1d1d9932650abd7bf7e6abafbe32f64a2d58b0009d4ec7e2c58b4d822500bd5e8f8bcb3f73ca962f5f8e5eaf67ce9c39c66009a042850a4c9a3489214386b074e9d27c01538d1a3578f3cd374dd23a75ea44d5aa55d9b76f9f49fa279f7c828585053367cecc574768682853a74e2df01edd2e20208055ab56111919690c9876ecd84140400055ab56e5fdf7df273d3d1d5b5b5ba2a2a2504a111010603cfedb6fbfe5d4a9538c1f3fde24580270757565fcf8f18c193386c8c84802030331180c2c58b000575757e6ce9d6b32f44eafd7337bf66c3ef9e41356af5e6d36603a7bf62c5dba74e1f4e9d37cf6d967f4ebd7afd0d72a8a8e044c4208f130fdf59769cfd1fefd70e386f6a1bc41032d287ae925edb16143d917e821cabb38c2edbd40799f5ffebf449ed9a798b4fd1b3c377ec3c1a630b78325b7aab818039e26959ad0a956a77c73825c1c5c7028e520cb0bdf07f59deb133b2cb648cefb20848484306edc381a3468c0b3cf3e4bfbf6ed69dbb62d156e5b9c65cf9e3d005cbb768d2953a6e4abe7d2a54b001c3d7a1480d4d4547efbed375c5c5c68dab4e91ddb70e3c60dfef8e30faa54a942ddba75f3e5fbfbfb03101f1f9f2fcfd3d3d3ecef75d5aa55d9bb776fbe7354ab568d9a356be62bef7b8f730573db141919c9a851a3387cf830972e5d222020802a55aa307bf66c626262e8dcb9333b76ec303906feb99f67ce9c317b3f4f9e3c0968f73330309013274e70f5ea55ead4a9c3b469d3ccb6c9c6c6c678fff33a76ec18ad5bb7263d3d9defbefb8e0e1d3adcd3b58aa223019310423c28376e406cac69efd15f7f6979952b6b7361264ed41ebdbde1b66f7ec57f97959345526a5281c14fde217129b7524c8ed5ebf454b4af680c76ea94af43bb6aedb4e7bd5c3865551eab882806cd5fc60b1f5c4737ac97f67ae6f9b65e3c387656760faca7a7288c193306676767162e5cc8fcf9f38d43bd7c7d7d99356b9671a8da952b5700d8b66d1bdbb66d335b974ea72335555bf1f0dadf731d2b57ae7cd736a4a468ef01d70236a7ceed89caad33afb265cb9a3dc6d2d21283e19fcd8973cf51a952a53b9ea3b0aa54a942eddab5898989c1603018e72f05040450b16245acacac888c8ca473e7ce444646e2e8e8888f8f8ff1f8dcfb997768e0edf2decfdcf2274f9e2c3060ca5b3eaf13274e909c9c8ca7a727cd9a35bba7eb14454b02262184b81fb2b3e1f061d3dea3df7ed3368a7570d096f10e09d17a8e5ab4d00226f1af29a5389b729693574efe1308995921cedce2084eb64ec6de9e2a65aae0ede66d76489cb39d3316fabb6c60fb666718fd262c58a06d7cbb6c198c1aa56d88ebe4f480ae5e1457cf3fff3ccf3fff3c292929ecdebd9b0d1b36b07cf9723a77eeccb163c7707676c6d1d11180f9f3e73372e4c8bbd6991bc8fc95fb65cd1de4d67de1c205b3f989898926e5fe8ddc632f5ebc6836bfa073df89bfbf3f4b962c61dfbe7d44464652a3460d63ef55eebcadc4c4448e1f3f4ef7eedd4d7ac272dbb379f366ba75eb56e8f6f7e9d3878888887b6a678f1e3da85bb72efffbdfff08080860dbb66d26c32dc5a34b02262184b8574ac19f7f9af61cc5c6427a3a5858687bfab46d0b63c6680152fdfa5abaf8579452fc75e32ff627ec37f9b9927ec558c6d1dad124e06950a181d9e17015ed2b6265719f87393a38681bdf0e1f0ee1e130772e2c5a0463c76a3f65cadcdff38962cfd1d191c0c040e39c99e5cb97b36bd72e7af7ee6d9c3b14131353a880c9dede9e468d1a71f8f061e2e3e3f1f4f42cb06ce9d2a5a955ab16a74e9de2f7df7fa776edda26f9b9abd17979fdfb9ebdd2a54b53bb766d4e9d3ac5a953a770777737c9bf9755f27275ecd891254b96b075eb5676edda45505090312f202080b0b0303efffc73e3f3bcf2decfc2044c1e1e1e942d5b963d7bf6909d9d6d76ced99dbcfefaebd8dada3266cc18fcfcfcd8be7dbb71710ef10853e291161b1bab00151b1b5bd44d11a2e4ba7a55a91f7e502a2c4ca9eedd95aa5449292d6c52aa7a75a58283959a3d5ba95dbb944a4d2dead63ef62edcb8a0be39fe8d9a123545755bd34db9cc76514c41310555695625d56d4d3735357aaafaf6c4b7ea54f22995969956d44d369594a4d4d8b14a595b2b55bebc52efbd27bf1777207fe7343b76ec309bdead5b37a5d3e9d4f7df7f6f4c6bdfbebdb2b0b050cb972f377bcca1438754525292f1f9c71f7fac743a9d6ad1a2854a494931299b9393a31213138dcfa74f9fae743a9dead5ab97cac9c931a65fba7449d5a85143e9f57af5d34f3f19d34f9f3ead743a9d1a346890d9b6f8fafa2abd5e6f92967b8ea0a0206530188ce9a74e9d52e5ca95bb637de65cbe7c59e9f57a55a95225a5d3e9d4dab56b8d793b77ee543a9dce98f7ebafbf9a1c9b9595a56ad7aeadecececd4962d5bccd6bf7bf76e9596f6cfff336fbdf596d2e9746af8f0e12a3d3d3d5ff984840475e4c811e37373f7e8a38f3e527abd5ed5af5f5f252424dcf51a0bfb3e91f7d383213d4c4208915766261c3c683ab4eef8712dcfd1511b4e3774a8f6d8a20514300e5f144e727a32b109b1ec4bd867ec393a77fd1ca00d9df376f36670b3c1f8b8f9e0ede68d5b69b7477fc1840a15b49ea6b163b57d9b264ed47a9d264ed47e77acad8bba85e211d4bb776f4a972e4dab56ada85ebd3a4a2976eddac5fefdfbf1f6f6a663c78ec6b26bd6acc1dfdf9fc18307337ffe7c5ab46841d9b265397ffe3c870e1de2b7df7ee3e79f7f362e183164c81076eddac5aa55aba853a70e3d7af4a042850a242424101515c5e0c18379ebadb70078f5d557f9eebbefd8b469134d9b3625303090b4b434befcf24b2e5fbecc6bafbd66b287516128a54c9e8f1b378e8d1b37f2d5575fe1e5e545a74e9db876ed1a5f7ef925eddbb767f3e6cdf754bf9393134d9a34e1e0c183e8743a93451d5ab76e8dadad2d49494954ac5891468d1a991c6b6969c9faf5ebe9dcb9335dbb76a54d9b36346dda143b3b3bce9d3bc7be7dfb387dfa34172e5cc0d6d6168049932671f0e0413efae823befefa6b3a74e840e5ca95494a4ae2e4c993ecdebd9be9d3a7e3e1e151609b5f7cf1456c6c6c183c7830eddbb767c78e1d54ad5af59eae5b3c44451db1893b936f0a84784856ac50aa552bad570094b2b252cac747a91123945ab952a963c794caf36dabb8772919292aea74949af5d32c15fc65b0727fdfddd87354664619e5ffa9bf7a6ddb6b6adde175eaf4d5d326df3c3fd6fef843a9010394d2eb95aa564da965cb94caca2aea563d32e4ef9ce6a38f3e52bd7bf756eeeeeecacece4e952f5f5e797979a959b366a99b376fe62b7fe3c60d357dfa74d5bc7973e5e0e0a06c6d6d95bbbbbbead6ad9bfaf8e38f55aa995ecdd5ab572b5f5f5fe5e8e8a86c6c6c94bbbbbb0a090951070e1c3029979191a1a64f9fae1a356aa46c6d6d5599326554bb76edd4e79f7f9eafcebbf530f9f9f9e5eb61524aa9ebd7afabb163c7aaca952b2b1b1b1be5e1e1a1e6cc99a34e9d3a75cf3d4c4a29356edc38a5d3e954a3468df2e575eedc59e9f57af5ecb3cf16787c5252927afdf5d755a3468d949d9d9d7270705075ebd6557dfbf655ab57af56d9d9d9f98e59b56a950a080850e5cb9757a54a955255aa5451eddab5533366cc50e7cf9f3796bbd33d5abb76adb2b2b252356bd654a74f9f2eb07dd2c354b4744add16f68b474a5c5c1ccd9b37273636f63f8d191642dcc1c58b50bdba36efa8674f6dde51d3a6606353d42d7b6ca566a6127f219efd09fb8dbd47c7af683d75f656f678b97ae1ede66dfca95dbe367a9dfe2eb53ee68e1ed536bf8d8880ba7561ea54080e067d31bfeebb90bf7342dc5d61df27f27e7a3064489e10422c58009696da07d972e58aba358f9d8cec0c0e5d3c641c52b72f611f472e1dc1a00c585b58d3ccb5194fd67a92379e78036f376fea3bd7bffbea73c59187077cf9251c38006fbe09fdfac18c19101606ddbbcb86c44208f1889280490851b2ddb8011f7e08c38649b054085939591c4e3aac0547895a80f4ebc55fc9326461a9b7a449a526b4adda96575abe82b79b370d2b34bcffabd23dee9a35836fbf85ddbbb5794d3d7b6af3e1de790702022470124288478c044c4288926de952b879535b025c98c831e470f4f25193a5bce32fc4732be7167a9d9e86151ae253d98721cd86e0ede64de34a8db1b194618c85d6a60decd8a1fd4c9c084f3e09bebe5ae0d4b66d51b74e0821c4df24601242945c595930670e3cf71c94f0d5890ccac0efc9bfb3efaf7dc69ea3b8c438d2b2d2d0a1a39e733dbcddbc79aef17378bb79e3e9e2899d955d5137fbf1a7d369bd4afefef0cd37da50bd279e80c0406d853d9983208410454e02262144c9f5f9e770fe3cbcfa6a51b7e4a1524a71e6da19930519621363b97eeb3a00b5cad5c2dbcd9b9ef57ae2e3e64333d76694b196cd571f289d4e9bc7d4b5ab36cfe9adb7a0797378fa6998360d1a3428ea160a21448925019310a264520a66ce84a79e82c68d8bba350f8c528abf6efc65121ced4fd84f727a3200d51cabe1ede6cdeb6d5fc7dbcd9be66ecd296f5bbe885b5d82e9f5f0cc335aa0b46a95b6925ee3c6d0bf3f4c9902eeee45dd422184287124601242944cdf7f0f870fc3071f14754beeab8b372f9aac56b73f613f17532f02e0e2e0828f9b8f7141066f376f2ada572ce2160bb32c2d61d0206db8e8d2a5daf0bcb56b61f0606dd85e952a45dd422184283124601242944c33676a2b93b56f5fd42df9d7aea45d213631d624403a7ffd3c004eb64ef854f66168f3a178bb6ac1915b693774b202dbe3c5da1a468cd082a70f3f8477df85152be0e597e1f5d7a1a204bc4208f1a049c0248428797ef905a2a3b57d971e930022252385b8c438e372defbfedac7e96ba70170b476c4dbcd9bfe8dfb1b7b8eaa3b5697e0a838b1b383f1e3e1c51761ee5c080f87254b60f4686d0e5ed9b245dd42218428b68ac5f6e2a9a9a94c9e3c992e5dba50be7c79f47a3d9f7efa69be721f7ffc31bebebeb8b8b860636343f5ead5e9d7af1f478e1c315befb265cbf0f0f0c0d6d696ba75ebf241014377ae5dbbc6b061c3a850a1020e0e0ef8fbfb73e0c001b36577efdecd134f3c81bdbd3daeaeaebcf2ca2ba4a6a6fefb8b1742dcbb59b3a0766de8d5aba85b62566a662a3ffef923f37e9e47c8fa10ea7f509fb2ef95c57fa53f53774e25f14622bdeaf7624d9f359c187982e409c96c1fb09d773bbe4b5083206a94ad21c1527155a60c4c9e0ca74f6b3d4f73e640cd9ada52e4376f1675eb8410a2582a163d4c972e5d222c2c8cead5abe3e9e9497474b4d90f0bf1f1f1d4aa558b5ebd7a51ae5c394e9d3ac5c71f7fcc37df7c436c6c2c75ebd635965dbc7831c3870f27282888575f7d95989818424343494b4be3b5d75e339633180c74edda9543870ef1da6bafe1e4e4c4c2850bf1f3f323363696dab56b9b9c3f202080860d1b3277ee5cce9d3bc7ecd9b33979f2245bb66c79b0374908a1f9fd77f8ea2b58b4082c2c8aba3564646770e8e22193e5bc8f5c3a824119b0b1b4c1d3c593276b3dc9ffdafd0f6f376fea39d5c3425ff4ed1645ccc909de7b4fdb3f6cfa746d25bdf7df8737de80e1c3c146f6c3124288fba558044c6e6e6e5cb870818a152b121b1b8b8f8f8fd9721f7ef861beb45ebd7ae1ededcdead5ab993a752a00e9e9e94c9c38916eddbab16edd3a00060f1e8cc160202c2c8c61c38651f6efe10f111111ecd9b387888808faf4e9034070703075ebd665f2e4c9ac5ebdda78aefffdef7f383939111d1d8d83830300356ad460e8d0a16cdbb68d279f7cf2fedd14218479b36743850a3060c0433f75564e1687930e9bac56f76bd2af641bb2b1d25bd1a45213da566dcb2b2d5fc1c7cd8706151a606561f5d0db291e232e2e307f3e8c1b076161dab0bdf0709834095e7801ace4f7470821feab621130952a558a8a7f4f7c554addd3b1d5ab5707c02acf1f95a8a82892939379f9e5974dca8e183182d5ab57f3edb7dfd2bf7f7f400b985c5c5c8cc11280b3b333c1c1c17cf6d967646565616565c5f5ebd7d9be7d3b63c78e35064b0003060c60cc9831ac5bb74e0226211eb48b17b509f3932681aded033d558e2187a3978f9aac5677f0c2416ee5dcc2426741c38a0df176f366a8d750bcddbc6952a909d696d60fb44da218ab5e5d5b4defb5d7b4e5c7870fd716369932455b69ef11e84d154288c755b198c374afae5cb942525212fbf7ef67d0a04154aa548941830619f373e71f797b7b9b1ce7e5e5855eaf273e3edea4ac97999dd87d7c7c484b4be3c4891300fcfaebaf646767e7abd3caca0a4f4fcf02e73c0921eea3050bb4e59a6ffb32e4bf322803c72f1f67f5a1d58cd93a8627963f419977cbd07851635ed8f40251a7a3a8e7548f994fcee4a7177ee2fa1bd739f8d24196f558c6709fe1f854f6916049dc1f75ebc29a3570f0a0b67fd38001da634404180c45dd3af11f444747a3d7eb8da3610a63ca9429e8f57a76eedc79dfdae1e7e7875e5fbc3e3e16c76b12f757b1e861ba57952b57263333130077777776eedc49e5ca958df9898989585858e0ecec6c725ca952a5707272222121c1a4ac9f9f5fbe73b8baba0290909040c3860d494c4c3449cfcbc5c5851f7ffcf18e6d1e3d7ab4711860ae7efdfad1af5fbf3b1e2784f8dbcd9bdab2ccc38641b972ffba1aa514a7af9d3659ca3b3621961b993700a855ae163e957de85dbf37de6ede34736d4619eb32f7eb2a84289cc68d61e346d8b74fdbb7a96f5f68d64cdbcf2930f0b1591db2243973e60ceeeeee0c1c38904f3ef9a4c072f7b2a08b4ea733fedc4fc5715199c7e59a228e44a073d5d1b85263befce24bd6ae5d6b927feddab5226a59f1562203a6ad5bb7929191c1912347080f0fa753a74efcf8e38f54f97b23c0f4f4744a952a65f6586b6b6bd2d3d38dcf333232b0b6ceffcdb0cddf136e73cbe63e1654366f9de6cc9b37cf6c4f9610a290962ed582a6d1a30b7d88528af3d7cf1b97f2ce0d9292d39301a8e6580d6f376fe3820ccd5d9b53cef6df076342dc773e3eb0752bc4c4c0c489d0b52bb46dab054e66beec134527f703fbfdfce03e72e448faf5eb47d5aa55ef5b9da268cdfc692633fe9881ada52dcddd9ad36a542b5a566e49cbca2da952a60a070e1ca079f3e645ddcc62a744064cbebebe0074eedc999e3d7bd2a85123a64d9bc692254b00b0b5b535f640dd2e232303db3c731f6c6d6db975eb96d972b9f9791f0b2a6b6767f71fae480871475959daf2cbfdfa41b56a0516bb78f3a2c9820cfb13f67331f522002e0e2ef8b8f930bae5682d38726b4e457bd934543c26dab7d782a6ad5bb51ea70e1da063476d39f2162d8aba75827fe660dfeb5cec3b717272c2c9c9e9bed5278a5ecca0180c2e06f69edfcbdebff6b2eeb775ccde3d1b00570757ea67d52fe216164f257ec0a6bbbb3b9e9e9eecddbbd798e6eaea4a4e4e0e972f5f36299b9999497272326e6e6e2665f30ed1cb953b042fb76cee50bcdcf4dbcbe6ad5308719f7df1059c3ba7ad206686528a3e5ff4c125dc85ee6bbbf3e1be0fc951390c6d3e944dcf6ee2afb17f91382e91cdfd3633c977128175022558128f1f9d0eba74d186e97df515242440cb96d0b3271c3a54d4ad2bd1a64c9982bbbb3b009f7efa297abddef8636e5fc9f8f878ba76ed4ad9b265b1b7b7c7cfcf8f3d7bf698ad57afd71313136392aed7ebe9d0a103172f5e64c8902154ae5c194b4b4b93737dfef9e7346fde1c3b3b3b2a55aac4800103cc7edeb993d6ad5b636d6d4d5a5a9a49baafaf2f7abd9e21438698a41f3d7a14bd5ecfc081034dd2b3b3b359b87021ad5ab5a24c9932d8dbdbe3e5e5c5871f7e586080b977ef5e828282707171c1dada9a6ad5aaf1d24b2f99fd1c56901d3b76e0e8e848e5ca9539f488bc476c2c6d78a2da138c6b338e757dd77176f45912c626b0e1990d0cf41cc88d5b378aba89c55289ec61ba5d7a7a3a167956106ad6ac1900fbf6ed233030d098be7fff7e0c06039e9e9ec6344f4f4f76edda8552caa41b7defdebdd8dbdb1bf7766ad4a811969696ecdbb78fa0a02063b9cccc4ce2e3e379f6d9671fd8f50951a229a5ad161618a8cdeb3063e3b18d6c38b681799de7d1ab7e2faa39567b6cc6b30b71cf743ae8d3470b94d6aed536c2f5f484679e81a953b58523c443d5a1430752525278fffdf7f1f4f4a4579e4db5733f93e4dab76f1fefbdf71e6ddab461d8b0619c3d7b96afbefa8a808000e2e3e34df694bc93e4e4645ab56a45e9d2a5090a0a42afd7e3e2e202c0dcb97319376e1ce5ca9563e0c081942d5b96efbfff9eb66ddbe2e8e858e8ebead8b1237bf7ee65d7ae5d74eedc1980b4b4347efef967002223234dcae73eefd8b1a3312d2b2b8beeddbbf3c30f3f50bf7e7d424242b0b1b161c78e1d8c1a358abd7bf7b272e54a937a962f5fceb061c3b0b5b5a5478f1e54ad5a9513274eb074e952befefa6b7efef9e7bb0e535cbd7a352fbcf002b56bd7e6fbefbf7fa48735ba9676a557fd5e74a9d18b4617fa12820cc9bbef5431b36fdf3ea5d3e9d4a79f7e6a929e9d9dad929393f395dfbb77afb2b4b454a1a1a1c6b4f4f474e5e4e4a4ba77ef6e5236242444393838a8ab57af1ad3bef8e20ba5d3e95444448431edd2a54baa6cd9b2aa5fbf7e26c70706062a37373775e3c60d63dad2a54b954ea7535bb76e357b3db1b1b10a50b1b1b185b87a21443edf7da71428151565363b232b43d57abf96eabcaaf3c36d97108f8acc4ca5162f56aa4a15a52c2c947ae105a5ce9c7968a7ffd77fe75253958a8d7df83fa9a90fe43e9c397346e9743a3568d020b3f95151514aa7d399fd8cb378f162a5d3e9d4cb2fbf6c923e79f264a5d3e9d4ce9d3b4dd273eb193870a0cac9c931c93b7dfab4b2b2b2524e4e4eeaecd9b3c67483c1a09e7efa69a5d3e9945eaf2fd435edd8b143e9743a357efc7863daf7df7faf743a9dead4a993d2e974ea8f3ffe30e6f5ead54be9743a75fefcf97cd7101a1aaa0c0683313d2727470d1e3c58e9743ab569d32663faf1e3c795959595aa53a78e4a484830694f6464a4b2b0b050bd7bf73649f7f5f535b9a677df7d57e9f57ad5be7d7b93cf7c45e9f6f7c9c58b4afdf08352b36629d5bfbf528d1a696f5f90cf8d0f42b10998162c58a0c2c2c2d4f0e1c3954ea7534f3ffdb40a0b0b536161612a2525455dbd7a55d9dbdbabc18307abf0f070f5d1471fa9112346283b3b3b55a54a159598986852dfc2850b954ea7537dfbf6551f7ffcb11a306080d2e9746ac68c1926e572727254ebd6ad55e9d2a5d5b469d3d4871f7ea81a366ca81c1d1dd58913274ccac6c5c5291b1b1be5e5e5a5162d5aa4264e9ca86c6d6d55972e5d0abc2e099884f88ffcfc94f2f1512acf1fdabcc277872bfd54bd3a7cf1f0436e98108f98f474a5e6ce55aa4205a5acac941a3952a9db3e703e08fffaef5c6cacf665c8c3fe79407f8f4f9f3e5da880a95dbb76f9f2b2b2b294a5a5a5f2f1f13149bf53c0646363a32e5dba94afaeb7df7e5be9743a3565ca947c79a74e9d527abdbed00153464686b2b5b5555e5e5ec6b4f1e3c7ab52a54aa93d7bf6289d4ea7962c59a294d23e4f952d5b56d5ab57cf5836272747952f5f5eb9b9b9e50bec9452eaead5ab4aafd7abe0e06063dae8d1a3954ea7535bb66c31dba65ebd7a294b4b4b75f3e64d635a6ec0643018d4881123944ea753414141ead6ad5b85bace8721f77dd2a64dac7275fde7d7d1de5ea9d6ad951a3e5ca98f3e526ac50af9dcf820149b2179e1e1e19c3d7b16d05698d9b06103ebd7af47a7d33160c0005c5d5d193a7428515151444444909e9e4ed5aa5579e1851778f3cd37a954a992497dc3870fc7caca8af0f070366fde4cb56ad598376f1ea1a1a126e5f47a3d5bb66c61fcf8f1cc9f3f9ff4f4745ab468c1ca952ba953a78e49d966cd9ab17dfb76264c98c0d8b1632953a60c43860c61c68c190ff6e6085152fdf20b4447c3975f9a5d46f972da65a6ed9cc6b0e6c36858b1e1c36f9f108f121b1b6d15c92143b43dcb66ce8465cb60e4489830011eb5c503ead787d8d8a2396f11ba7d3f47004b4b4b2a55aac4d5ab570b5d4f8d1a35f26d9f0210171707fcb340565e356bd6a46ad5aa9c3b77ae50e7b0b6b6a675ebd644474773f5ea55ca952bc78e1d3bf0f1f1a155ab5654aa5489c8c848860e1d4a5c5c1c29292926dba59c387182ab57af52a74e1da64d9b66f61c3636361c3d7ad4f83c772e577474b4c9fcf45c494949e4e4e470fcf87193d5879552f4e9d3874d9b36111a1acabc79f30a758d0f9b8505bcf082368ab66953a8550bf26e21f5f7cb27eeb36213309d3e7dfaae65e6ce9d7b4f750e193224df844473ca962dcbc71f7fccc71f7f7cd7b26ddbb6bdeb9e4b4288fb64d62ca85d1b7af7369b3d257a0a0ac5343ff37f888528911c1ce08d3760f870080f87b973e1a38f60ec58eda7cc23b2af989d1d94c0ed366edf933197a5a52539393985ae2777bed2ed52525200f27d919cf7b8c2064ca0cd478a8a8a222a2a8a0e1d3a101f1fcfc48913016dee56eebca5dcc7808000e3b157ae5c01e0e4c99305064c3a9d8ed4d4d47cc7cc9a35abc036dd7e4cae5dbb7661696949b76edd0a7d7d0fdbbc7925f2d7bec895f855f28410c5d4efbf6b2b81bdfaaaf695dc6d8e5c3ac247fb3fe2cd766f52c1be4211345088475cd9b2101606a74fc3d0a1f0eebb50b3a6d6f374dbaa67e2f153d0c236b98b3a5cbc78d16cfe850b17eee93cfefefe006cdbb68da8a8280c06833128f2f7f7e7d2a54b1c3c7890c8c848e3ea7db7b7a54f9f3e180c06b33f393939fcf1c71f26c7e8743aae5fbf7ec763dab56b97ef7e44474753ae5c397af4e8c177df7d774fd7298a3709988410c553783854a800030698cd7ef58757a9e6588dd096a166f385107fab50417b3ffdf10704076b1be0d6aa051f7c0066f61614ff4eee6abdf7d24bf420e46e7a1a1d1d9d2fefd4a953f7d4bb04da10c23265ca101919c98e1d3bb0b5b5a575ebd6c03fbd495bb66ce1a79f7ea2499326942f5fde78ac87870765cb9665cf9e3d64676717ea7cad5bb74629956f29f5c268d4a8113b77eea45cb972f4eedd9b4d9b36dd731da2789280490851fc5cbc089f7c02a1a19067a3e95c5b7fdfca77bf7fc7cc2767626d695d040d14e23154b9322c5a04c78f43a74ef0ca2bda12e4cb9641213fcc8a82952b570ec0381fbba8f4efdf1f2b2b2b162c5860d21683c1c0f8f1e3ef79635d0b0b0bdab76fcfefbfff4e444404eddab5c3caca0ad0e63d362384000020004944415444d5a85183f7df7f9ff4f474636f54de63478d1a45626222a1a1a1646464e4ab3f3131d1640ed3c89123b1b2b262cc98319c3c79325ff9cccc4c76edda55607bebd7af4f4c4c0c952a55a26fdfbeac5bb7ee9eae57144f123009218a9f0f3e004b4b6d0ec66db20dd98cfb611cedaab5e3698fa78ba071423ce6dcdde1d34fe1f06168d1425b24a241036d4f2783a1a85bf7d8727070a055ab56ecdab58b909010a64e9dcadb6fbfcdafbffefa50db51bd7a75de7df75dae5ebd4ab366cd183e7c3813264cc0cbcb8b03070ed0a449937b0e9a727b929292924ce628e5e62525259994cb6bd2a449f4e8d1838f3efa883a75ea3060c000de78e30d060f1e4cfbf6eda95ab52a5f7ffdb5b17cbd7af558be7c3967ce9ca161c386f4e8d18371e3c6111a1a4aaf5ebd707575e5c5175fcc779ebcd754ab562d76edda45b56ad5e8dfbf3fab56adbaa7eb15c58f044c4288e2e5e64df8f0436dce459ea11db996c62de5b74bbf31a7f31cd99c5688ffc2c3435b81322e0eead481e79ed396eedab4495bf158dcb355ab56d1b56b57befffe7ba64d9bc6e4c9933970e040a18e35f7ff994ea7fb57ffcf8d193386356bd650b3664d56ac58c18a152b68d2a409bb77efa65cb972f75c676e20a4d3e9f2f522e5e6595959d1be7dfb7cc75a5a5ab271e34656ae5c49bd7af5f8f6db6f9933670e3ffcf003006fbffd36fdfbf73739a67ffffec4c6c6d2bf7f7f0e1d3ac4871f7ec89a356b3875ea14c1c1c12c5cb8d0a4bcb9fb54ad5a35626262a85dbb362fbcf002cb962dbba76b16c58b4eddebd704e2a18a8b8ba379f3e6c4c6c69a2c7f298428c0fbefc3b87170ea1454ab6692959291429d057508ac13c8a7bd3e2da2060a514ceddeadcd6f8a8ed67a9ede7e1b3a7634bba47f5ef2774e88bb2becfb44de4f0f86f43009218a8fac2c983307faf5cb172c01ffcfde9d875555ed7f1c7f1f90491c0107d4ca1c4873b838de32cba91c52bb9548615e6fe6d0cf21a7944a2b33536f385626a969991a397633b59c4dcd5201294b4bcdd454520831996438fbf7c78e23478e530287e1f37a9ef3a06b2fd6fa6e1c9ef33d6bedef62f2aec924a52731b9fd6427042752ccb56a055bb7c2e6cd6692d4b123b46b075f7fedecc844446e89122611293e962d83932761cc985c978e9d3fc6ac6f67117a5f28d5cb55774270222580c5021d3ac037dfc09a3570fe3cb46e0d0f3fac133545a4c852c22422c5836198e7c374e9028d1be7bafcc2e617f02bedc79856b9932911c963160b74ef0efbf7c3279f9825c99b3583a0203878d0d9d18988dc14254c22523c6cd800070e406868ae4b3b4fec64e5c1954ce930056f776f2704275242b9b8c0134fc08f3fc2c2851019096ddbeafc2611295294308948f11016062d5a409b3676cd56c3caa88da368e6df8cde8d7b3b29389112ae5429e8dbd73cc369c306f0d0f967225274947276002222b76cdf3ed8b6cd2c717c4545aea5df2f25f24c243b9ede818b459f1189389587073469e2f052cec34745c49efe7d389712261129faa64e85dab5e1b1c7ec9a93d3937969cb4bf4a8df83fbefb8df49c189c8b5942d5b1680debdb5022c723dd9ff5ea46029611291a2ede85158b5ca3cacd6d5d5eed2b4ddd3884b8923eca13027052722d753b76e5d0e1f3eccc58b179d1d8adc82b434b3b6c7e1c3f6af9414f37ac58a70d75d101070f975c71de66e4db93165cb96a56eddbace0ea344d25f531129da66cc005f5ff8cf7fec9a4fff799ab0dd610cffe7706a55ace5a4e044e446e84d60d1f2fbef101303df7d67be6262ccc7d3ac56b3cec75d77c13ffe014f3e697e0d0c84aa559d1db5c8dfa78449448aae73e7e0830f60dc38f0f2b2bb346eeb384abb9566dcfde39c149c8848d19491010909101f6fbe4e9db24f8ece9d33fb952d6b2644eddbc3a851e6af1b3480d2a59d1bbf485e53c2242245d73bef98dbf0060fb66b8e3a13c5a2ef1631e7e13994f72cefa4e044449c2f2bcb3c3f383bf9b991d7850bb9c7b9e30e3321fabfffbbbc6a54b3a6b9a22452dc29611291a22929c97c6e69c000f0f1b1351b86c1c80d236950a901039a0d706280222279cb6a3593991b497afef8c3fc9a90609eeb9d93c562feb7e9e777f9d5b0a1fdeffdfcccddce7e7e50a50a942be79c7b16290c94308948d1b46001fcf9278c1c69d7bcfad06a769edcc9974f7d492917fd172722859361c0c58bd74f78ae6ccbcaca3d56850af6894e40c0e564c7d1ab62c55c357244e41af46e42448a9e8c0cb3d8434808dc7ebbadf952e625423787d2b94e673ad5e9e4c40045a424310cb31adcf5129e2b5f1919b9c72a53c63eb9b9fd7668daf4eac98f8f0fb8b915fc3d8b94244a9844a4e859be1c4e9e843163ec9adfd9fb0e27124ff079c8e74e0a4c448a83b4b41b4b7872bed2d2728fe3e909952a5d4e6eaa5675bcf52de716380f8f82bf5f11b936254c2252b41806848541e7ced0b8b1ad392e398e893b26f26cf367b9bbd2dd4e0c50440a938c8c9b4f7e9293738fe3ee9e3bc10908c8fdbc4fce97aac589140f4a9844a468d9b811beff1e66cdb26b1ebf7d3c162c4c683bc1498189487ecbcab22f777d23450f1c557c7375cd9de8dc71c7d5577efcfcccad72164bc1dfb388389f122611295ac2c2a0797368dbd6d6f4e3b91f991b3597b007c3f02bede7bcd844e48659ad90987873450fce9fbfb18a6f8d1a5d3bf929574ee5b045e4c629611291a2233212b66e359f61caf151efe84da3b9b3c29d0c6d39d489c189146d5959e6733879f1ba74e9ead792922e2744566bee381c557c6bd5eaeac94f850aaaf82622f9ab58244cc9c9c9848585b167cf1ef6eedd4b6262221f7cf001fff9cf7f6c7d0cc360d1a245ac5ebd9a989818121212b8f3ce3b79f2c927193d7a341e0e9eb25cb06001d3a64de3f8f1e3dc76db6d0c1b368ca14373bf214b4c4c243434944f3ffd94d4d4545ab66cc9f4e9d369d2a449aebebb77ef26343494fdfbf753ae5c39828383993c7932dedede79fb4311298ec2c2a0562d78fc715bd39747bfe4cba35fb22a78151ea5f4b4b4144d860199997f3f09c98bc42633f3e6e37677370b1b5cef55b1e2e55f972ead8a6f2252b4148b84292e2e8e89132772c71d77101818c8f6eddbb15cb1d138393999679e79867befbd9741830651b9726576efdecdf8f1e3d9b2650b5bb76eb5eb3f77ee5c060d1a44505010a3478f66c78e1d0c1b368c9494144243436dfdac562b5dbb76e5fbefbf273434145f5f5fe6cc9943dbb66d898a8aa24e9d3ab6be31313174e8d081060d1a3073e64c7efbed37a64d9bc691234758bf7e7dfefe90448abaa34761d52a983ddbf67172a63593e7373e4f9b3bdaf058bdc79c1ca0146586611607c8efd5956bbd1cadb65c8f87c78d252c7e7e37d62ffb7523e37a78685b9b88940cc52261aa56ad1abffffe3b952b57262a2a8a162d5ae4eae3e1e1c1eeddbbb9e79e7b6c6dfdfaf5a366cd9ab6a4a943870e00a4a6a6326edc38ba75ebc6f2e5cb6d7dad562b13274e64e0c08154a8500180952b57f2cd37dfb072e54a1effeb53efe0e060020202183f7e3c4b972eb5cd3776ec587c7d7dd9be7d3b65ca9401a066cd9a0c1830804d9b36f1d0430fe5cf0f48a4389831c37c3afbe9a76d4df3a3e67328ee108b072ecef52189146f2929f0d55770f870de2537573e1b7323bcbc6e2ce12857eee612961b4956dcdd95b088881484629130b9bbbb53b97265c0dc7ae7889b9b9b5db294edd1471f65fcf8f1fcf4d34fb68469dbb66d2424243078f060bbbe43860c61e9d2a5ac5bb78ea79e7a0a3013a6aa55abda9225003f3f3f82838359b26409191919b8b9b9f1e79f7fb279f366468d1a654b9600faf4e9c3c8912359be7cb9122691ab39770e3ef800c68d33dfa102896989bcbafd55fafca30f4dfd9b3a39402908478ec0faf5f0c51766b2949676798bd7b5928bd2a5cdad5e7f6715e55a2f3737554d131129098a45c2742b7efffd77c04c72b2eddfbf1f80e6cd9bdbf56ddab4292e2e2ec4c4c4d812a6fdfbf7d3b469ee376b2d5ab460debc791c3e7c98060d1a70e0c001323333738de9e6e6466060a06d4e117160f66cf3a3f41c1f624cda3989948c14267798ecc4c0243fa5a4c0f6ed6682f4c517f0cb2fe6aaca030fc0a449d0a50bd4aba7a4454444f257894f98c2c2c2285fbe3c5dba74b1b5c5c6c6e2eaea6a974481b992e5ebebcb993367ecfab6cd51de389bbfbf3f0067ce9ca1418306c4c6c6dab5e754b56a5576edda75cd38478c1861db06982d2424849090906bdfa04851979464264c030698cb04c02f09bff0d6b76ff1f2032f53ad6c3527072879c530cc55a4ec0469fb7673cb5ccd9a6672d4a50bb46b679e87232252d245444410111161d7969898e8a4688ab7129d304d9e3c992d5bb6101e1e4eb972e56ceda9a9a9b8bbbb3bfc1e0f0f0f5253536dbf4f4b4b735861cfd3d3d33656ceaf57eb9b734c4766cd9ae570254ba4d85bb810fefc13468eb435856e0ea5b2776546b71aedc4c0242fa4a4c0b66d9793a463c72eaf224d9e0c0f3f0c77dda5552411912b39fae03c3a3a9a66cd9a3929a2e2abc4264ccb962de395575ea17ffffe3cfbecb376d7bcbcbc484f4f77f87d69696978fdf50c4576df4b972e39ec977d3de7d7abf52d5dbaf4dfbb1191e22c2303a64f87279f843bee0060c7891dac3eb49a8f1efd88d26efa7753d4e45c455abfde7c1649ab482222529895c88469d3a64df4e9d3876eddbaf1de7befe5baeeefef4f565616f1f1f176dbf2d2d3d3494848a05ab56a767d736ed1cb96bd052fbb6ff656bcecf62bfbe61c5344feb262059c3c0963c6006035ac8cda308ae6d59af354e3a79c1c9cdca8abad22b5690353a698499256914444a4b02a710549f7ecd9c3638f3d46cb962d59be7c392e0e6ab2661f38bb6fdf3ebbf6c8c848ac562b818181b6b6c0c040a2a3a37355e7dbb3670fdedede04040400d0b061434a952a956bccf4f474626262ecc61411cca588b030e8d409fef10f00167fb798a8d82866769a898ba5c4fdf755641806fcfc33cc9a65fef1f9f840b76eb06e9df9fbcf3f878404d8b8d1dc69a9c20d2222529895a8771c870e1da26bd7aed4aa558bb56bd73a7c9e08a07dfbf6f8f8f8101e1e6ed71e1e1e8eb7b7375dbb76b5b505050571f6ec5956af5e6d6b8b8f8f67c58a1574efde1db7bf8e2c2f5fbe3c0f3ef8204b962c212929c9d677f1e2c5242727d3b367cfbcbc5591a26fe346f8ee3bf8eba0e8e4f464c66e1d4bcfbb7bd2faf6d64e0e4eae9492622644438640edda6612f4c20b66f234650a1c3a64ae2ccd9963264fdedece8e584444e4c6149b2d79b367cf263131d1b63d6ecd9a359c3c79128061c38661b158e8d4a913898989848686f2f9e79fdb7d7f9d3a756ce734797a7a3271e244860c19427070301d3b7664e7ce9d2c5dba94c99327db55ab0b0a0ae29e7beea16fdfbe1c3c78105f5f5fe6cc998361184c9830c16e8e499326d1aa552bdab469c38001033875ea143366cca053a74e74ecd8313f7f3c22454f5818346f6e3ed0024cdd3d95f89478de7cf04d270726602642870f5fde6697fd2cd29d77da3f8ba4c44844448a3ca398a859b3a661b1580c8bc562b8b8b8182e2e2eb65f9f3871c2f8f5d75f6dbfcfee97f3d5b76fdf5c63ce9f3fdfa857af9ee1e1e161d4ad5bd778ebadb71cce7dfefc79a37ffffe869f9f9fe1eded6db46bd7ce888a8a72d877d7ae5dc67df7dd677879791955aa54319e7bee39232929e9aaf71515156500571d4fa458dab7cf30c030962f370cc3307ebbf09be1f5869711ba29d4c981956c494986f1f9e7863178b061dc79a7f947e4ee6e181d3b1ac6cc9986f1d34f8661b53a3b4a1191924bef1bf387c530ae78f8460a95ecf2905151512a2b2e25c7134f4064a4b984e1ea4a9f4ffbf0e5d12f393aec28e53cca5dfffb254f64af22ad5f6fae22edd8a155241191c24cef1bf347b1d9922722c5c42fbfc0ca95e661b5aeaeec3bbd8fc5df2fe6bdaeef29592a00c9c9f615ed7efd153c3ccc8a76fffdaf99240504a848838888941c4a9844a4709931037c7de1e9a7310c83511b47d1b07243fa35ede7ecc88aa5ec8a76399f454a4f875ab5cc4363bb7481b66db58a2422222597122611293ce2e260e142183b16bcbc58757025bb4eee6243ef0d9472d17f5779253919b66ebd9c241d3f7e7915e9cd37cd44a96e5dad2289888880122611294c66cf061717183c98b4cc34423785f270dd87e9585b55246fc5b55691ba76bdfc2c52e9d2ce8e544444a4f051c22422854372b29930f5ef0fbebebcfd7518272f9c645daf75ce8eac48bada2a52dbb666c5f62e5db48a242222722394308948e1b060015cb8002347722ef91c93764e62508b41d4af54dfd991150986013ffd743941dab1e3f22a52b76e979f45d22a928888c8cd51c22422ce979101d3a7c3934f42cd9a8c5f37080b16c6b719efecc80ab5ec55a4f5ebe1cb2fb58a242222921f94308988f3ad5801274fc29831fc70ee07e645cd63ea4353f12bede7ecc80a95abad22d5aead5524111191fca28449449ccb30cce5904e9d301a37e6f9a59da955b116435b0e75766485425292fdb348274e80a7a799184d9d7a791549444444f28712261171ae4d9be0bbef60c60cbe38fa051b7fd9c8a74f7c8abbabbbb323738aec55a4f5ebcd0469e7cecbab48ddbb9b25bfdbb4d12a928888484151c22422ce151606cd9a91f1406b9e9ffb0fdad66ccbbfeefa97b3a32a505a4512111129bc94308988f34445c1962db06c19f3a2e7f373fccf7cfcf8c7588a799502c38043872e2748d9ab4875eac0238f5c7e16c9cbcbd9918a888888122611719ea953a1562dce7769c7f8f0fa3c1df8344dfc9b383baa7c919464e686d949d2c993e62a52bb76306d9a9924d5a9e3ec28454444e44a4a9844c4397ef9c5ac8ef7ce3bbcf1cd7f49cb4c6352fb49ce8e2acf5cb98ab46387593dbd4e1df8d7bfb48a242222525428611211e79831037c7cf8e591fb79e78311bcdae655fccbfa3b3baa5b72ad55a4e9d3b58a242222521429611291821717070b17c2d8b18cf97a3c55ca5461d4bda39c1dd54d330c3878d0fe59a48c0cb340c3a38f9a09529b365a4512111129ca94308948c19b3d1b5c5cd8d5ad319fae7995258f2da1b45bd1a8937df1a259d16efd7af8f2cbcbab48eddb9b8b665dba9825c0454444a47850c22422052b391966cfc6daaf1fc3f64ea065f59684340a71765457a55524111191924d09938814ac850be1c2055677be9dfdfbf6f3f5335fe36271717654762e5eb47f16e9b7dfcc84a85d3bad2289888894344a9844a4e06466c2f4e964f4ecc1b04333086e104cabdb5a393b2ac04c8a962d33b7daedda65ae220504c0e38f9b09d2030f6815494444a42452c224220567c50a387182f9e33a92703681371f7cd3d9110170ee1cb46c09172e681549444444ec296112918261181016466afb07187d6e0923ef1d49cd0a359d1d15562b3cfdb4f9f5d831a85ad5d911898888486152b81e1c1091e26bf366888961e6fd6e94f528cb4bad5f72764400bcfdb6f99cd2a2454a964444442437ad308948c178f34d921bd5631c5b98d76e1ee53cca393b22a2a32134149e7f1e3a77767634222222521869854944f25f54146cd9c29badac34aad288679a3ce3ec88484a82901068dc18264f7676342222225258158b8429393999f1e3c7d3b973677c7c7c70717161d1a245b9faedddbb97c18307d3ac5933dcdcdc7071b9f6ed2f58b080faf5ebe3e5e545404000b367cf76d82f31319181030752a95225ca942943fbf6edd9bf7fbfc3bebb77efa675ebd6787b7be3efefcff0e1c3494e4ebef99b16294aa64e25a94615265739cc8c4e337075717576440c1b06a74f434404b8bb3b3b1a11111129ac8a45c2141717c7c48913f9f9e79f090c0c04c062b1e4eab77efd7a162c5880abab2bb56bd776d827dbdcb973193060008d1a3562f6ecd9dc7befbd0c1b368cb0b030bb7e56ab95ae5dbb12111161bb7eeedc39dab66dcbd1a347edfac6c4c4d0a14307d2d2d298397326fdfbf767debc79f4ecd9330f7e0a2285d4b163182b56f0e63d1974a9d78d076b3de8ec888888800f3e803973cc036845444444aeca28062e5dba649c3d7bd6300cc3888c8c342c168bb168d1a25cfdce9e3d6ba4a5a51986611843860c312c168bc3f15252520c5f5f5fa37bf7ee76edbd7bf736ca9429639c3f7fded6b66cd932c362b118ab56adb2b5c5c5c519152b56347af5ea65f7fd5dba7431aa57af6e5cbc78d1d6f6fefbef1b168bc5d8b871a3c358a2a2a20cc0888a8abad68f40a4f01a32c4482eef6d947dd9d5f829ee27674763fcf28b61942b6718bd7a1986d5eaec68444444f28ede37e68f62b1c2e4eeee4ee5ca9501300ce3aafd2a57ae8c8787c775c7dbb66d1b0909090c1e3cd8ae7dc89021242727b36edd3a5bdbca952ba95ab52a8f3ffeb8adcdcfcf8fe0e0603efbec3332323200f8f3cf3fd9bc7933bd7bf7a64c9932b6be7dfaf4a14c99322c5fbefcc66e56a428898bc358b890992d3278bad560eef2bbcba9e1646440af5ee0eb0be1e1708d456611111111a0986cc9cb6bd9cf1f356fdedcaebd69d3a6b8b8b810131363d7b769d3a6b9c668d1a2052929291c3e7c188003070e909999996b4c373737020303affacc934891f6eebba45b335878af17e3db8c7776348c1f6fd69f88888072ce2fd2272222224580ca8a3b101b1b8babab2b7e7e7e76edeeeeeef8fafa72e6cc19bbbe6ddbb6cd3586bfbf3f0067ce9ca1418306c4c6c6dab5e754b56a5576edda75cd98468c1841850a15ecda424242080909b9a17b122970c9c964bef316f3023379eee1d7f02dedebd470b66c81fffe17a64c817ffed3a9a1888888dcb2888808222222ecda1213139d144df1a684c981d4d454dcaf5236cbc3c383d4d454dbefd3d2d21c6ef3f3f4f4b48d95f3ebd5fae61cd39159b366395cc91229ac8c850bb1245e6075e79a6c6831f8fadf908fe2e2e0dfff860e1d60cc18a78622222292271c7d701e1d1d4db366cd9c1451f1a584c9012f2f2fd2d3d31d5e4b4b4bc3cbcbcbaeefa54b971cf6cbbe9ef3ebd5fa962e5dfa96e31629343233497d7312ff6b6030e2c959b8bb3aaf6eb761c033cf98cf2f7df4115ce73401111111113b7aebe080bfbf3f595959c4c7c7dbb5a7a7a793909040b56ad5ecfae6dca2972d7b0b5e76dfecad78d9ed57f6cd39a6485197b9ec134a9f3ecbf6a0e63c72d7234e8d65f66c58bb16162d02073b6245444444ae490993034d9a340160dfbe7d76ed91919158ad56db594f00818181444747e7aaceb767cf1ebcbdbd09080800a061c386942a552ad798e9e9e9c4c4c4d88d2952a41906e75f7f910db561f0c0f9d73cef2cbf7df71d8c1e0d2346c0c30f3b2d0c11111129c2943039d0be7d7b7c7c7c080f0fb76b0f0f0fc7dbdb9bae5dbbdada828282387bf62cab57afb6b5c5c7c7b362c50aba77ef8e9b9b1b00e5cb97e7c1071f64c99225242525d9fa2e5ebc98e4e4641d5e2bc5c6c5759f52e9f0690efca70b81559df7414072323cf924dc7db759ec41444444e4ef2836cf30cd9e3d9bc4c444dbf6b8356bd670f2e44900860d1b46b972e53871e2048b172f06ccd52280499326611806356bd6a477efde80598461e2c4890c193284e0e0603a76ecc8ce9d3b59ba742993274fb6ab56171414c43df7dc43dfbe7d3978f020bebebecc993307c330983061825d8c93264da255ab56b469d38601030670ead42966cc9841a74e9de8d8b163beff8c440ac29957479252cd85de231638358e1123e0e449888e861b387e4d444444c431e79e9b9b776ad6ac69582c16c362b1182e2e2e868b8b8bedd7274e9c300cc330b66ddbe6b08fc56231dab56b976bccf9f3e71bf5ead5333c3c3c8cba75eb1a6fbdf596c3b9cf9f3f6ff4efdfdff0f3f333bcbdbd8d76edda5df584e55dbb7619f7dd779fe1e5e56554a952c578eeb9e78ca4a4a4abde974e6c96a2e4c4964f0d038c55e39f706a1ccb96190618c682054e0d434444a440e97d63feb018c6150fdf48a1925d1e322a2a4a65c5a5d0db715f0d6afef43b954e9dc7cbabac5362387e1c0203a17367f3805a273e4225222252a0f4be317fe8192611c913dfecf898fbbe39cdb9fffbb7d392a5cc4ce8d50b2a5684f7de53b224222222b7aed83cc32422ce9365cde2f8f8e1d4f72e45b3b1b39d16c78409b0772fecdc09391e3514111111f9dbb4c22422b76cd9f6d9fcebeb782e0ef80f166f6fa7c4b07d3b4c9a04afbf0ef7deeb9410444444a41852c22422b7e4e2a58b9c79f3655c2daedc36d639f5bbfff8037af786b66de185179c128288888814534a9844e496ccd83c91a7772571e9e97f839f5f81cf6f18d0af1fa4a5c1e2c5e0ea5ae0218888884831a6679844e46f3b79e12489efcda4629a05d797c63b2586f070f8ec3358b306aa57774a08222222528c69854944feb6711b5f60e4d756ac3d83a066cd029fffc00118350a9e7b0eba772ff0e9454444a404d00a9388fc2d7b4eed2163f927dc7e1e78e1a5029f3f25059e7c12eeba0bc2c20a7c7a1111112921943089c84d330c83915f8e60c11e2f8c87eec3d2a44981c7306a14fcfa2b444682a767814f2f2222222584122611b969cb7f5c4ee99ddf52ff376061c197a55bb50ae6ce8579f3e0eebb0b7c7a1111112941943089c84d49cb4ce385cd2ff0e9fe4ad0a40674e850a0f39f3c09fdfb435090f955444444243f296112919b32f39b9954fef9144d0e6441c4db60b114d8dc9999f0d45350ae9cb9ba5480538b88884809a58449446ed8ef49bf3379d764b61faa0d776698cb3c0568d224d8bd1b76ec808a150b746a11111129a1943089c80d7b65db2bd44e74a1e9cea3f0f6db50aae0fe0bd9b9135e7f1d5e7b0deebbafc0a615111191124e099388dc90ef7eff8e05d10bd8ff6b6b2c150f42dfbe0536774282b915af756b183bb6c0a615111111d1c1b522727d8661f0fcc6e769e1518bc66b23cd93624b972ea0b961c000484e86a54bc1d5b540a61511111101943089c80d587b782d5b7eddc247a75b62011832a4c0e69e370f56af86050ba0468d029b564444440450c22422d7919e95cee84da379b85a5b02223642bf7ee0e7572073fff8238c18018306c1a38f16c8942222222276943089c835bd17f91e47fe38c2bc3feec572fe3c8c1a5520f3a6a6c2934f42edda307d7a814c29222222928b8a3e88c85525a426f0daf6d718f08fbe541ff5090407c39d7716c8dca347c3d1a3b06f1f787915c89422222222b928611291ab7afdabd7c9b066f0e68596f0eb4258b9b240e6fddfff60ce1c080f87860d0b644a1111111187b4254f441cfa39fe67deddf72e63ef7b890a6fcd85071f84a64df37dde53a7ccc7a41e7b0c9e7d36dfa7131125949e4b00002000494441541111b926ad30898843a19b43a95eb63acfa706c2fe71b07163becf999505bd7b9b15cbdf7f1f2c967c9f52444444e49a943089482e5b7fddca9a9fd7f0498f4f701f350b9a34315798f2d99429b073276cdb063e3ef93e9d888888c875296112113b59d62c466e18c9bd35ee2538bd2e6cda041111f9bedcf3f5d7f0da6bf0ca2bf0c003f93a95888888c80d2b16cf30252727337efc783a77ee8c8f8f0f2e2e2e2c5ab4c861df43870ed1b97367ca962d8bafaf2f7dfaf4213e3ede61df050b1650bf7e7dbcbcbc08080860f6ecd90efb2526263270e0402a55aa4499326568dfbe3dfbf7ef77d877f7eeddb46edd1a6f6f6ffcfdfd193e7c38c9c9c97fefc645f2c107311ff0fdd9ef99d969269669d3a0664d080acad7391313a1572fb8f75e78f9e57c9d4a444444e4a6148b84292e2e8e891327f2f3cf3f1318180880c5c1a7e1a74e9de281071ee0d8b1634c993285d1a347b36edd3a1e7ae821323232ecface9d3b97010306d0a8512366cf9ecdbdf7decbb061c3080b0bb3eb67b55ae9dab52b111111b6ebe7ce9da36ddbb61c3d7ad4ae6f4c4c0c1d3a74202d2d8d993367d2bf7f7fe6cd9b47cf9e3df3f82722f2f75cbc749197b7be4caf46bdf867466558be1c9e7f1e4ae5df62b461c0c081f0e79fb07469be4e2522222272f38c62e0d2a54bc6d9b3670dc3308cc8c848c362b1188b162dcad56fd0a04186b7b7b7f1db6fbfd9da366fde6c582c1663debc79b6b6949414c3d7d7d7e8debdbbddf7f7eedddb2853a68c71fefc795bdbb265cb0c8bc562ac5ab5cad61617176754ac58d1e8d5ab97ddf777e9d2c5a85ebdba71f1e2455bdbfbefbf6f582c1663e3c68d0eef2d2a2aca008ca8a8a81bf95188dc92b15bc61a9e6f781a27124f18c673cf1986afaf612425e5eb9cf3e71b0618c68a15f93a8d888848b1a7f78df9a358ac30b9bbbb53b97265000cc3b86abf55ab56d1ad5b376ad4a8616bebd0a1030101012c5fbedcd6b66ddb36121212183c78b0ddf70f193284e4e464d6ad5b676b5bb9722555ab56e5f1c71fb7b5f9f9f9111c1ccc679f7d665bb9faf3cf3fd9bc7933bd7bf7a64c9932b6be7dfaf4a14c993276f38b38c389c4134cdf3d9de7ef7d9edb33fe2a53377428787be7db9c870ec1b061e60a533eeffa13111111f95b8a45c274234e9f3e4d5c5c1ccd9b37cf75ad458b1676cf1c65fffacabe4d9b36c5c5c585989818bbbe4d1d9c4dd3a2450b525252387cf83000070e1c20333333d7986e6e6e0406065ef599279182f2e29617a9e85591175bbf689e1a0b306448becd9796064f3e693e22357366be4d23222222724b4accd302b1b1b100f8fbfbe7bae6efef4f424202191919b8b9b9111b1b8babab2b7e7e7e76fddcddddf1f5f5e5cc993376e3b66ddbd6e1980067ce9ca1418306d79cbf6ad5aaecdab5eb9af18f1831820a152ad8b585848410121272cdef13b911dffcf60d9ffcf0090b1e5940994c1778e71d78e619a85429dfe60c0d859f7f86bd7bcd7397444444e4c645444410111161d7969898e8a4688ab7129330a5a6a602e0e1e191eb9aa7a7a7ad8f9b9b1ba9a9a9b8bbbb3b1cc7c3c3c33616405a5ada75c7bc91f9738ee9c8ac59b31cae6489dc2ac33018b96124815503f9cf3ffe03e1ef4142028c1a956f737efeb99993cd9e0d8d1be7db34222222c596a30fcea3a3a369d6ac9993222abe4a4cc2e4e5e505c0a54b97725d4b4b4bb3ebe3e5e5457a7abac371d2d2d26cfdb2fbdee898d79abfb43e621727f9e4874fd8737a0f5bfb6cc5d56ac0f4e9101c0cb56ae5cb7c67ce40dfbef0c82370c5638222222222854e897986297b2b5cf6d6b89c626363f1f5f5c5cdcdcdd6372b2b2bd7f94ce9e9e924242450ad5a35bb71736ed1cb392660eb7bbdf9738e2952505233527961f30bfcebae7fd1eece76b06a15fcfa2b8c19932ff3656541efdee0e9090b17e6fb59b822222222b7acc4244cd5ab57a752a54aecdbb72fd7b5bd7bf7dace6f0268d2a40940aebe91919158ad56bbbe818181444747e7aaceb767cf1ebcbdbd09080800a061c386942a552ad798e9e9e9c4c4c4d88d295250667c3383df937e67ea4353cd0391c2c2e0c107219fb67f8685c1f6edb06409f8fae6cb142222222279aac4244c003d7af460eddab59c3a75cad6b665cb168e1c396277786cfbf6edf1f1f1213c3cdceefbc3c3c3f1f6f6a66bd7aeb6b6a0a020ce9e3dcbead5ab6d6df1f1f1ac58b182eeddbbdb56adca972fcf830f3ec892254b484a4ab2f55dbc7831c9c9c93abc560adcef49bf3365d71486b61c4a5ddfbab0752b44479bd518f2c1b7dfc22bafc0d8b1e0a04e8a88888848a1546c9e619a3d7b36898989b6ed716bd6ace1e4c993000c1b368c72e5ca3176ec5856ac5841bb76ed183e7c38172f5e64ead4a9346edc98be7dfbdac6f2f4f464e2c4890c193284e0e0603a76ecc8ce9d3b59ba742993274fb6ab56171414c43df7dc43dfbe7d3978f020bebebecc993307c330983061825d8c93264da255ab56b469d38601030670ead42966cc9841a74e9de8d8b16301fc94442e7b79ebcb7894f2e095075e311bc2c22030d05c61ca63172e404808b46c09e3c7e7f9f022222222f9c7b9e7e6e69d9a356b1a168bc5b0582c868b8b8be1e2e262fbf58913276cfd7efcf147a353a74e86b7b7b7e1e3e363fcfbdfff36ce9d3be770ccf9f3e71bf5ead5333c3c3c8cba75eb1a6fbdf596c37ee7cf9f37faf7ef6ff8f9f919dedede46bb76edae7ac2f2ae5dbb8cfbeebbcff0f2f232aa54a9623cf7dc73465252d255ef4b27364b7ed81fbbdfb0bc6631defef6edbf1af61b0618c6c71fe7f95c56ab613cf18461942b6718bffe9ae7c38b8888c85ff4be317f580ce38a876fa450c92e0f191515a5b2e292270cc3a0c3471d884d8ae5fbfffb1e37573778ea29f8fa6b387a144ae5edc2f3071f98473a7df2093cf1449e0e2d22222239e87d63fe28365bf244e4c67c7ef873b61ddfc6da90b566b274fc382c5b063367e679b2f4f3cf307428f4eba764494444448aa61255f441a4a44bcf4a67f4c6d13c54eb211eaefbb0d938630654a8602e03e5a14b97cce7966ebb0dde7a2b4f871611111129305a61122941e6ec9bc32fe77f6155f02a2c160bc4c7c3fbef9b95f1bcbdf374ae975e821f7f843d7bf27c681111119102a38449a484f823e50f267c3581fe4dfbd3a84a23b371ce1cf3eb9021793ad7faf5e60ebfb7de320bef898888881455da922752424cf86a0259d62c5e6ffbbad9909202efbc636ec5ab5429cfe6898d85a79f86ae5de1b9e7f26c5811111111a750c2245202fc14ff1373f6cd61dcfde3a852a68ad9f8e187909000a346e5d93c562bf4e963d68ef8e003b058f26c6811111111a7d0963c911260cca631dc56fe3686df33dc6cc8cc84e9d3a1674fa8552bcfe699360db66c814d9bf274d14a444444c46994308914739b8f6d66ede1b52c0b5a8667294fb371f56a38760c962fcfb379f6ee8571e3e08517a043873c1b56444444c4a9b4254fa418cbb266316ac328eebbed3e7adeddd36c340c080b33b39a66cdf2649e3fff344b88376d0aafbf9e27438a888888140a5a611229c616ee5fc8817307d8db7faf59461c60eb56888a820d1bf2640ec3804183202ecedc8ae7e69627c38a888888140a4a98448aa93f2ffdc9cbdb5ea677e3deb4a8dee2f285b030b3d6f7430fe5c93c8b17c3c71f9baf3c7c1c4a444444a45050c224524c4dd935858b972e32b9fde4cb8d3131b071a399dde44109bb2347cc239c9e7edadc922722222252dce819269162e878e271667e3393d1ad46735bf9db2e5f983a15eeb8c3ac8e778bd2d3cd24c9dfdf3cce49444444a438d20a934831f4e2e617f1f1f221f4bed0cb8dc78fc3b2653073a67950d22d1a370ebeff1ebefd16ca94b9e5e1444444440a25254c22c5cceedf76b3ecc7657cf0af0f28e39e2393993913ca9787679eb9e539366c30cf5c9a31c3ac8c27222222525c694b9e48316235ac8cdc309226559bd0e71f7d2e5ff8e30f78ff7d183a14bcbd6f698eb367a14f1fe8dc19860fbfc580454444440a39ad30891423110722d87b7a2fdbffb31d174b8ecf43e6cc01abd54c986e81d50afff98f592fe2c30fc1451fb98888884831a78449a49848c948e1c52d2ff258bdc76853b3cde50ba9a9f0f6dbe656bc4a956e698e9933cded781b3640952ab718b08888884811a0cf87458a8919dfcce06cd259c21e0ab3bff0c107909000a346ddd2f89191f0d24b30660c74ec784b438988888814194a98448a813317cff0df5dffe5b97f3e471d9f3a972f6466c2f4e9101404b56bffedf12f5e344b88ffe31ff0c61b7910b08888884811a12d7922c5c0cb5b5fc6b39427af3cf08afd85d5abe1d83158befc96c67fee39f8fd77f8e20b7077bfa5a1444444448a14254c22455c746c341fc67cc83b5ddea1826785cb170c03c2c2a0430768d6ec6f8fbf74292c5a048b17439d3ad7ef2f222222529c28611229c20cc3e0f98dcf53cfaf1ecf367fd6fee2b66d1015655668f89b7ef905060d827fff1b7af7bec560454444448a20254c2245d8673f7fc6f6e3db59df6b3da55caef8e71c16663e74f4d0437f6becf474f3b9a52a55e0dd77f3205811111191224809934811959e95ce984d63e858bb239deb74b6bff8dd77e6cad2d2a5e6a1497fc3abafc2fefdb07b37942d9b07018b888888144125ae4a5e5454149d3b77a67cf9f2942b578e4e9d3af1dd77df39ec7be8d0213a77ee4cd9b265f1f5f5a54f9f3ec4c7c73becbb60c102ead7af8f979717010101cc9e3ddb61bfc4c444060e1c48a54a952853a60ceddbb767fffefd79767f5272ccde3b9b63e78f31bde3742c57264553a7c21d7740cf9e7f6bec4d9be0cd3761f26468d1220f821511111129a24a54c2141d1d4debd6ad397efc38afbdf61aafbefa2a478e1ca14d9b361c3e7cd8aeefa953a778e081073876ec1853a64c61f4e8d1ac5bb78e871e7a888c8c0cbbbe73e7ce65c08001346ad488d9b36773efbdf7326cd830c2c2eccfc3b15aad74edda95888808dbf573e7ced1b66d5b8e1e3d9aeff72fc5477c4a3caf7ff53a039b0da461e586f6174f9c804f3e31cf5d7273bbe9b1cf9d833e7dcc9d7ccf3f9f47018b88888814554609f2f0c30f1bbebebe46424282ad2d3636d6285bb6acd1a3470fbbbe83060d32bcbdbd8ddf7efbcdd6b679f366c362b118f3e6cdb3b5a5a4a418bebebe46f7eeddedbebf77efde469932658cf3e7cfdbda962d5b66582c1663d5aa55b6b6b8b838a362c58a46af5ebd1cc61c15156500465454d4dfbb69299686ae1f6a949b52ce389b7436f7c5e1c30dc3c7c73092926e7adcac2cc3e8d2c5302a55328cd8d83c08544444440a8cde37e68f12b5c2b473e74e1e7cf0412a56ac686bab5ab52a0f3cf0006bd7ae253939d9d6be6ad52aba75eb468d1a356c6d1d3a7420202080e539ceb4d9b66d1b0909090c1e3cd86eae214386909c9cccba75eb6c6d2b57aea46ad5aa3cfef8e3b6363f3f3f828383f9ecb3cf72ad5c89387228ee10e1fbc21977ff382a7b57b6bff8c71f307f3e0c1902dede373df6db6f9b672d2d5a0455abe651c0222222224558894a98d2d3d3f1f2f2cad55eba7469d2d3d3f9e1871f00387dfa34717171346fde3c57df162d5ad83d7394fdeb2bfb366dda14171717626262ecfa366ddad4e198292929b9b6058a38327ad3686e2f7f3bc3ff393cf7c53973c06a85a1436f7adcfdfb2134d4dcc9d7a54b1e042a222222520c94a82a7977dd7517df7cf30d56ab15171733574c4f4f67cf9e3d009c39730680d8d85800fcfdfd738de1efef4f424202191919b8b9b9111b1b8babab2b7e7e7e76fddcddddf1f5f5b58d993d6edbb66d1d8e993d7f83060d1cc63e62c4082a54a860d7161212424848c88ddcba14131b7fd9c8fa23eb59d173051ea53cec2fa6a69a4b44cf3c03952b3b1ee02a9292e0c927a15123b3d083888888146e111111444444d8b52526263a299ae2ad44254c83070f66d0a041f4ebd78fd0d050b2b2b278e38d37f8fdf7df01484d4db5fbeae1e1916b0c4f4f4f5b1f37373752535371777777389f8787876d2c80b4b4b4eb8e7935b366cd72b83a252547a63593e7373e4febdb5bd3a37e8fdc1d3efc101212cc25a29b347c389c3e0dd1d1e0e0afa888888814328e3e388f8e8ea659b3664e8aa8f82a515bf29e7df659c68e1dcbc71f7f4c83060d68dcb831bffefa2ba1a1a10094295306c0b66defd2a54bb9c6484b4bb3ebe3e5e5457a7abac3f9d2d2d2ecb6007a7979ddd098228e2c885ec00fe77e6046c719b9cb886765c1b469101404b56bdfd4b89f7c020b179a87d30604e461c022222222c540894a9800de78e30dce9e3dcbae5dbb3870e0007bf6ec212b2b0b8080bfde2d666f91cbde9a97536c6c2cbebebeb8fd55aed9dfdf9facacac5ce733a5a7a793909040b56ad56c6dfefefe765bf4728e09d8f515c9e942da055ed9f60aff6efc6f5a54777030d2ead570ec188c197353e3fefa2b3cfb2c848498a5c445444444c45e894b98002a54a840ab56ad6ccf0b6ddebc99db6ebb8d7af5ea0150bd7a752a55aac4be7dfb727defdebd7b090c0cb4fdbe49932600b9fa46464662b55aedfa060606121d1d8d6118767df7ecd983b7b7b72d6113b9d2945d53484a4f627207070f18198679ca6cfbf6e0a050c9d5646440af5ee0eb0be1e170e5a2958888888894d08429a765cb96111919c9881123ecda7bf4e8c1dab56b3975ea94ad6dcb962d1c3972849e3d7bdadadab76f8f8f8f0fe1e1e176df1f1e1e8eb7b7375dbb76b5b505050571f6ec5956af5e6d6b8b8f8f67c58a1574efdeddb66a2592d3afe77f65e6b73309bd2f941ae56ae4eeb07d3b44459925ee6ec26baf416424444440f9f27912aa88888848b153a28a3eecd8b183d75f7f9d4e9d3ae1e3e3c3b7df7ecb871f7e48972e5d183edcbe44f3d8b16359b16205eddab563f8f0e15cbc7891a953a7d2b87163faf6ed6bebe7e9e9c9c4891319326408c1c1c174ecd8919d3b77b274e952264f9e6c57d92e2828887beeb987be7dfb72f0e0417c7d7d9933670e86613061c28402fb3948d1f2c2e617f02bedc7985657d96e1716068d1b43c78e373ce6d6ad30658a5911ef9fffcca340454444448aa1129530d5a8518352a54a3175ea542e5ebc48ad5ab598346912a3468db29519cfd9f7abafbe62d4a851bcf8e28b787878d0ad5b37a64f9f9e6b2568d0a041b8b9b9317dfa74d6ac59c3edb7dfceac59b318366c985d3f171717d6af5fcf98316378fbedb7494d4da565cb967cf4d147d4ad5b37dfef5f8a9e5d2777b1e2e00a3efcd78778bb3b3888f6bbefe0cb2f61c9921bde53171f0fbd7b9b3bf86e72514a444444a4c4b118573e5023854a7679c8a8a82895152f61ac86957fbeff4f0cc360ef80bdb8581ceca0eddd1b76ee84a347e106b6741a06fceb5ff0cd3766aea53a23222222c587de37e68f12b5c22452947c7ce06322cf44b2e3e91d8e93a51327cc9ae03366dc50b20466e9f0cf3f87b56b952c89888888dc88125ff441a4304ac948e1a52d2fd1a37e0feebfe37ec79d66ce34ab35f4eb7743637ef71d8c1e6d1e529ba31689888888885c831226914268daee699c4b3ec79b0fbee9b8c31f7fc0fcf9306408783b78b6e90ac9c9f0e49350bfbe59815c444444446e8cb6e4891432a7ff3ccd9b5fbfc9b07f0ea3b64f6dc79dc2c3c16a85a1436f68cc9123e1e449b3fab887471e062b22222252cc29611229645edef632a5dd4af3f2fd2f3bee909a0a6fbf0d7dfb42e5cad71d6fc50a7331eafdf7e1afb39945444444e4062961122944a263a35914b388771f7e97f29e57394d76d122734bdea851d71defc4091830008283e19967f23858111111911240cf3089141286613072c348ea57aacf8066031c77caca8269d3a0470fa853e79ae3656642af5e50a102cc9d7bc3c73489888888480e5a611229243efde953769cd8c1174f7d412997abfcd35cbd1a7ef9052222ae3bdeebafc39e3db06387993489888888c8cd53c22452085ccabc44e8a6503ad7e94ce73a9d1d77320cb3c45dbb76d0a2c535c7dbbe1dde7803264e8456adf23e5e11111191924209934821307bef6c8e271e674dc89aab77dabedd2c73f7e597d71ceb8f3fa0776f68d3065e7c316fe3141111112969f40c938893c525c73171c7449e6dfe2c7757bafbea1dc3c2a07163e8d8f1aa5d0c03faf7370be92d5902aeaef910b08888884809a2152611277bedabd7ccaf6d5ebb7aa7efbf375796962cb966f586f7de83fffd0f3efb0caa57cfdb38454444444a22254c4544878f3ad0e440131a556944a3cae6ab41e50694712fe3ecd0e4161c8c3bc8dcc8b9fcf7c1ff52c9bbd2d53b4e9d0ab7df6ed607bf8a0307cc036a870e85471ec98760454444444a20254c45c413773f41bc573c5f1efd92d97b676335ac00dc59e14ebb24aa519546d4f5a98b9bab9b9323961b317ae3686a56a8c9732d9fbb7aa71327ccaa78d3a7839be33fd79414080981800033b71211111191bca184a98818d87c204d9b360520352395837107f9e1dc0f1c38778003e70eb070ff4262936201707775a79e5f3dbb24aa51e546d42857038b0ee32934361cddc01747bf6055f02a3c4a795cbde3ac5950ae1cf4eb77d52ecf3f0fc78e416424787ae643b022222222259412a622c8cbcd8b66d59ad1ac5a33bbf63f52feb04ba20e9c3dc09a9fd77031fd2200e53dcad3b07243bb15a986951b52d1aba2336ea344cbb466326ae3281eb8e3011eabf7d8d53b2624c0fcf9e65ebb328eb75fae5e6d3ebb34772edc7d8d9a112222222272f394301523bea57d6953b30d6d6ab6b1b51986c1890b27cc44eaac9948ed3ab98bf7a3df27d39a09408d7235cc442ac78a547dbffad75ef5905b323f6a3e87e20eb16fc0be6baffacd99039999f09ce32d7b274f9a0b4f3d7ac08001f914ac8888884809a684a998b3582cd4ac50939a156ad22da09bad3d3d2b9d9fe37fb65b915afee372a6ee361f8071b5b852d7b76eae6d7d7756bc13178baad1df8a0b69177875fbabf4f9479f5cab84765253e1edb7a16f5fa85c39d7e5cc4cf3bca5b265cd4528edb614111111c97b4a984a287757773309aad28810426ced7f5efa931fcefd7039913a7b80597b6691909a004069b7d234a8d42057a189cadeb9dfd08b6393764e2225238549ed275dbbe3a245e629b4cf3fef789c49f0f5d7f0d5575051bb2a45444444f2851226b153cea31cad6e6b45abdb5ad9da0cc3203629d66e5b5fccef317c7ce063d232d300a8ec5d39d7b6be06951ae0edeeedac5b29948e9d3fc65b7bde626cebb1542f778d8392b2b260da3473af5d9d3ab92eefda05afbf0ee3c743ebd6f918b08888884809a78449aecb62b150ad6c35aa95ad46c7da1d6ded59d62c8e261cb5dbd6b7fec87adedef3360606162cdc59f14ebb2d7d8d2a37a2ae6f5d4ab994ccbf7aa19b42a954ba12a35b8dbe76c74f3f855f7e31cb895fe1fc79e8d5cb4c94c68dcba740454444440450c224b7c0d5c595bbfceee22ebfbbe871770f5b7b4a460a87e20ed955eb7b3ffa7d7e4ffa1d30b703d6f7ab9f6b5b5ff5b2d58b75d9f39d2776b2ead02a3e7af4a36bafbc1906848541bb76d0a245ae4b03064052122c5902aeaef91cb48888884809a78449f25c69b7d20ecb9ec7a7c4db6deb3b70ee00fffbe97f24a5270150c1b342ae6d7d0d2b37a482670567dc469eb21a56466e1849f36acd79aaf153d7eefcd557b06f1f7cf145ae4bf3e7c3aa556629f1db6ecba76045444444c44609931418bfd27eb4add996b635dbdadaac869593174eda25513b4eec607ef47cbbb2e7576eebabe757af48953d5ff2fd12a262a3d8d977e7f5ab0c868541a346d0a9935df38f3fc2f0e1f07fff078f5de3e82611111111c93b4a98c4a95c2c2eb6b2e7ddefea6e6bcf2e7b9e735bdf273f7c42d88530c02c7b1ee01b906b5b5fcd0a350b5dd9f3e4f4645edaf212417707d1faf6eb5468f8fe7b736569f162bb3ae1a9a9101202b56bc38c19f91cb088888888d894b88429323292891327b26fdf3e2e5cb8c0edb7df4eaf5ebd183d7a345e5e5eb67e870e1d62e4c8917cfdf5d7b8bbbbd3b56b5766cc98819f9f5fae31172c58c0b469d3387efc38b7dd761bc3860d63e8d0a1b9fa252626121a1acaa79f7e4a6a6a2a2d5bb664faf4e93469d2245fefb928ca59f63ca70b6917f831ee47bb15a94dbf6ce27cda7900bcddbc6950b941aef3a32a795772c66d00306df734e253e279f3c1376fa0f33473afdd134fd8358f1903478e983bf572fc3515111111917c56a212a603070ed0ba756baa55abc6881123f0f1f161f7eedd8c1f3f9ea8a828fef7bfff0170ead4291e78e0012a56acc8942953b878f122d3a64de3c08103ecddbb17373737db9873e7ce65d0a041040505317af46876ecd8c1b061c3484949213434d4d6cf6ab5d2b56b57befffe7b424343f1f5f565ce9c39b46ddb96a8a828ea38281d2db995f72cefb0ecf9998b67ecaaf545c746b3e4fb255ccaba049865cfafdcd67777a5bbf3bdecf9e93f4f13b63b8c11f78ca056c55ad7ee7cf2a459156fea54c8f177ecb3cfe0dd7761ce1c68d8305fc315111111912b94a884e9934f3e213d3d9d75ebd651bf7e7d00faf7ef8fd56ae5a38f3ee2c2850b942f5f9ec99327939a9acafefdfba951a306002d5bb6e4a1871ee2c30f3f64c0800100a4a6a6326edc38ba75ebc6f2e5cb01e8d7af1f56ab958913273270e0402a54300b16ac5cb9926fbef986952b57f2f8e38f03101c1c4c404000e3c78f67e9d2a505fde328362c160bd5cb55a77ab9ea74aa73f9b99f4c6b26bf24fc62b7ad6fede1b5bcf5ed5bb6b2e7b52ad6cab5adaf8e4f9d3c2b7b3e76eb58bcddbc19db7aecf53bcf9c0965cb42fffeb6a653a7e09967e0d147cd679744444444a46095a884297bcb5de5ca95eddaab56ad8aabab2beeeeee00ac5ab58a6eddbad99225800e1d3a101010c0f2e5cb6d09d3b66ddb48484860f0e0c176e30d193284a54b97b26edd3a9e7acaac88b672e54aaa56ad6a4b9600fcfcfc080e0e66c99225646464d8ad5cc9ad2be552ca56f63ce8ee205b7b727a3287e20fd96deb9b17358fb3c96701f070f5a07ea5fab9aaf5dd6cd9f3c833917cf4dd4784770da7bc67f96b774e48304be08d1c0965ca00e6d9b5bd7b43e9d2b06081dd234d2222222252404a54c2f4cc33cff0eebbefd2af5f3f264c9860db92f7de7bef316cd830bcbcbc387dfa34717171346fde3cd7f7b768d1822f72947adebf7f3f40aebe4d9b36c5c5c5859898185bc2b47fff7e9a366dea70cc79f3e671f8f0611a34689097b72b57e1edee4df36acd695ecdfecf2d2e39ce6e5bdf81b307587d6835c919c90054f4ac68963dcfb122d5b0724387c99061188cdc309206951ad0bf69ff5cd773090f87cc4c78075d8e0b0000200049444154ee395bd37fff0b3b77c2d6ade0e3736bf72c222222227f4f894a98aa55abc6d75f7fcdc30f3f6c5768e1e5975fe6f5d75f0720363616007f7fff5cdfefefef4f4242826d35283636165757d75c8520dcddddf1f5f5e5cc9933b6b6d8d858dab66deb704c803367ce5c33611a3162846d7b5fb6909010424242ae73d772a32a7957a2dd9ded6877673b5b9bd5b0723cf1b8ddf951db8f6f676ee45cb28c2c006e2b775bae24ea60dc41769ddcc586de1baebfbd2f3515de7e1bfaf685bf563f77ef86f1e3e1e597a14d9b7cbb6511111129a2222222888888b06b4b4c4c745234c55b894a98ce9e3d4b972e5d00983f7f3ebebebeac5dbb9649932651a54a15860c19426a6a2a001e1eb9cff8f1f4f404cc6797dcdcdc484d4db56de3bb928787876d2c80b4b4b4eb8e792db366cd72b84225f9cbc5e242ad8ab5a855b1168fdcf588adfd52e6257efee367bb6d7d1f1ff898dffefccdd6e7e1ba0fd3b176c7eb4ff2d147101707cf3f0f406222f4ea05f7dc03afbc92e7b724222222c580a30fcea3a3a369d6ac9993222abe4a54c23471e2444e9f3ecde1c387a956ad1a008f3efa2856ab95175e7881909010db734e972e5dcaf5fd696969c0e567a1bcbcbc484f4f7738575a5a9a5d99722f2faf1b1a538a068f521e34aed298c6551adbb55f48bbc00fe77ee0a7f89fe852b7cbf507caca324b89f7e80175ea60183070a099347df515942a51ff42454444440a9fc275c2673edbb56b174d9a34b1254bd9ba77ef4e4a4a0a313131b62d72d95bf3728a8d8dc5d7d7d7569cc1dfdf9facac2ce2e3e3edfaa5a7a793909060378fbfbfbfdd16bd9c6302b96292a2a9bc6779eebbfd3efa35ed47b5b237f067fabfffc1d1a3f05709fa850b61c50ab3fec31d77e473b022222222725d252a61cac8c8202b2bcb613b40666626d5ab57a752a54aecdbb72f57bfbd7bf712181868fb7df6735057f68d8c8cc46ab5daf50d0c0c243a3a1ac330ecfaeed9b3076f6f6f020202fefe8d49d16418f0e69bd0b62db468c1a143306c180c18003d7b3a3b381111111181129630356dda94e8e8688e1c3962d71e111181abab2b8d1b9bdbab7af4e8c1dab56b3975ea94adcf962d5b3872e4083d73bc936ddfbe3d3e3e3e848787db8d171e1e8eb7b7375dbb76b5b505050571f6ec5956af5e6d6b8b8f8f67c58a1574efde5d25c54ba2afbe827dfb203494b434080931579566cd7276602222222292ad443d213166cc1856ad5ac5fdf7dfcfd0a143f1f1f161eddab57cf9e5970c183080aa55ab023076ec5856ac5841bb76ed183e7c38172f5e64ead4a9346edc98be7dfbdac6f3f4f464e2c4890c193284e0e0603a76ecc8ce9d3b59ba742993274fb6ab6a171414c43df7dc43dfbe7d3978f020bebebecc993307c3309830614281ff2ca410080b83468da073675e18013ffd047bf698e72e8988888848e150a212a6c68d1bb37dfb76c68f1fcfd4a953494b4ba356ad5a4c9e3c99d0bf9e2101a851a3065f7df515a3468de2c5175fc4c3c3836eddba317dfaf45c2b4183060dc2cdcd8de9d3a7b366cd1a6ebffd7666cd9ac5b061c3ecfab9b8b8b07efd7ac68cf9fff6ee3e2caa3afffff80b1490504b665031333145b71bf3266f2b5771d54a30d710d7cddcca9b6f4a51bac5af7257bf45596dbabaeaa5ab659a097ed3b1bccd6e345cdd5221d4d5b2566d53435041241166e466ceef8f594647186f4a390c3c1fd7c525f399cf39bc0fe7f28217e773dee739cd9a354b76bb5d5dbb76d592254bd4a64d9b2a397e54237bf6481b3648efbda775ebfd346b96347bb674e79d661706000080f3f91917de54836aa5bc3d644646066dc56b929123a5cd9b95b5f57bdd7957807af49056af96fcfccc2e0c0000f82a7e6fbc366ad53d4c40b570e488b46c999ccf4cd4238f072830d0d51d8fb004000050fdd4aa257940b53073a6d4a08166148c566aaab4699364b59a5d140000002ac31526a02a9d3a252d58a0cc07c7ebff25d5d70b2f487dfa985d14000000bc2130015569de3c19a5a5faede74fa94b17e97fffd7ec8200000070312cc903aa8ac321e36f7fd3a6e68f6a7f4e13edde2cf1f82d000080ea8dc004549577df95727234eec41fb5e0ffa48808b30b020000c0a5109880aa5056a6e2d7a669bdff10f5fa431b0d1b667641000000b81c0426a00a94ac58a5c0c30795dc2245efce32bb1a0000005c2e021370ad1986b29f7943fff1ebad49abba2824c4ec8200000070b9e892075c63dbdfdca216c7d3953f26511d3b9a5d0d000000ae048109b8868e1d930afefc171d6a70bb1e9c779fd9e5000000e00ab1240fb8469c4e69f26ff76a41f1473afdd725f2f3f733bb240000005c21ae3001d7c8f4e9d2dddba7c91176931a8efd9dd9e5000000e067e00a13700da4a74b735ff85107fd5354e785bff0845a0000001f456002ae12bb5dfafc7369cd1ac966936687cd90bfa3be347ab4d9a5010000e067223001bfc0f1e3d2faf5ae90f4d96752519174cb2dd213c34ee977ef2e90df334f4b0d1a985d260000007e26021370050c43dab7cf1590d6ae95b66f778df7ec294d9922c5c448edda1af27b6dae54562a2524985b300000007e110213700925679ddaf6d129fd7355ae766fcc5149568e9a07e6e8c9d6397aab5fae6e6998a37aa773a4ffcb91e6e44a393992c321fdcfff484d9a985d3e0000007e0102136a9fe262e9e44957b039ff2337d7fd7969768ece1cce955f4e8e42ce9e542f95a9d779bb304afce477c222196152589864b54a1111aecfc3c2a4c68da5c1834d3b440000005c1d0426f836c3900a0b3dc2ce85e1a7c2eb9f7eaab89fc04095868629af4e987e2cb26a7f7e339d30ee54ddf030dddcc9aa5b7f1da688ae61f26bec0a447e8d1a4975ea54fdf1020000a04a119850bd389d527efee5879ff2e56f176ad0e0dcd51eab556adb56bae79e73afc3c2e4b484e95f59615af3a5552b3e6ea06ff6f92930508a8a92060d9286444b37dd54f5df02000000541f04265c5b25259e01e752e1e7e449a9accc731f7e7e92c5e21176d4b2a567202aff3c2ccc35b75ebd4acb292c94366e94d67c28ad5b279d38e19a1e1d2dbdf4b2d4bf3f4ded000000700e810957a6b0d07bd8a96ccccbf2378fb0131e2eb56f5f79f8b15aa5d0d05fb4fc2d3bdb158ed6ac71852587436ad74e7af4515757bb1e3d585d07000080ca11986ab3f397bf5d4ef8c9cd753d9df542e5cbdfcac34ef9f2b7cac24f58986bbe9fdf353b2cc390f6ee7505a4356ba4f474c9df5fbaf75ee995575c212932f29a7d79000000d42004a69aa47cf9dbe5869fdcdc2b5bfe565900b25abd2e7fab4ac5c5d23ffe712e241d39e2ca65f7dde77a14d2fdf7bb0e0b000000b812b52e303dfae8a35ab26489d7f78f1e3daaf0f07049d2b7df7eab091326e88b2fbe506060a0060e1ca8bffef5afb25aad15b65bb870a1a64d9ba643870ee9a69b6e524242829e7cf2c90af3f2f3f3959898a80f3ffc5076bb5d5dbb76d5f4e9d3d5b163c78b17fec517d2d75f5ffc3ea0fcfc8adb952f7f2b0f3be5cbdf2e0c3f5769f95b55cacb933efac815903efe582a28905ab470356c183448faf5af5d870f000000fc5cb52e303df1c413eadfbfbfc798d3e9d4134f3ca18888087758cacccc54af5ebdd4a85123bdf6da6b2a2828d0b469d3b477ef5ea5a5a5292020c0bdfdfcf9f3356edc38c5c6c6ead9679fd5962d5b949090a0a2a2222526267a7c9d8103076acf9e3d4a4c4c94c562d1dcb973d5bb776f656464a875ebd6de0b4f4870fd5bcd96bf55b50307ce5d45fae20bd705b22e5da4c444d752bbf6ed6bd4e1020000c064b52e3075efde5dddbb77f718fbe73fffa9a2a2223dfcf0c3eeb1a953a7ca6eb76bd7ae5d6adebcb924a96bd7aeead7af9f162f5eac3163c64892ec76bb264d9aa4e8e8682d5fbe5c92346ad428399d4e25252569ecd8b1bae1861b2449369b4ddbb66d93cd66d390214324497171718a8c8cd4942953949c9cecbdf08f3e92faf4a916cbdfaa525999b46d9b2b20ad5d2b7df79deb5bf09bdf4873e7babadb356b667695000000a8a9fccd2ea03a484949919f9f9f7efffbdfbbc756ae5ca9e8e868775892a4be7dfb2a3232d21d8c24293535557979791a3f7ebcc73ee3e3e3555858a8f5ebd7bbc76c369b9a366dea0e4b9264b55a151717a7d5ab57aba4a4c47b914d9ad49ab0545020ad5ce9ea62d7b4a9ab59c3bbef4a3d7b4aab56b95620ae5d2b8d1d4b58020000c0b555eb0353494989962f5faebbefbe5b2d5ab490e4ba8f2927274777dd755785f95dba74d1ae5dbbdcafcb3fbf706ea74e9de4efefafddbb777bccedd4a953a5fb2c2a2ad2fefdfbafca31f9a2cc4c69de3c577306ab558a8d95befa4a1a33c67585293b5b5ab8507af0412924c4ec6a010000505bd4ba257917fae4934f949797e7b11c2f3b3b5b92dcf7339d2f3c3c5c7979792a292951404080b2b3b355a74e9d0a8d2002030365b158949595e5b1dfdebd7b57ba4f49cacacad26db7dd56699dcf3cf38c7b695fb9e1c3876bf8f0e19777a0d58c6148bb769dbb1f69d72ea96e5da9572fe92f7f71dd8fd4aa95d955020000544fcb962dd3b265cb3cc6f22b6b00865facd607a69494140506062a2e2ece3d66ffefb3868282822accaff7df657176bb5d010101b2dbed0af4d28a2d2828c8bd2f4972381c97dca7373367ceacf4ea942f7138a4d4d473f7231d3d2a5d7fbdf4c003aea60df7dd275d90090100005089cafe70be73e74e75eedcd9a48a6aae5a1d98ce9c39a3d5ab576bc080016ad4a8917b3c3838589274f6ecd90adb381c0e8f39c1c1c12a2e2eae74ff0e87c33daf7ceee5ecb326c9c991d6af7705a44f3e910a0ba5880869e850d755a47bef95ce6b3808000000542bb53a30ad5ab54a76bbdd63399e746e895cf9d2bcf3656767cb62b1b8db8a878787abacac4cb9b9b91ecbf28a8b8b959797a766e77525080f0ff758a277fe3e2579ccf55586e1ea64b776adeb4ad2975fbac6bb7593264d723d1fe9d65b69fd0d000000df50ab03537272b21a3468a0418306798cdf78e38d0a0b0b537a7a7a856dd2d2d2d4a14307f7ebf207cea6a7a7ebfefbef778f7ff5d557723a9d1e733b74e8a0ad5bb7ca300cf99d971876ecd8a19090104546465eb563ab4aa5a5ae672295df8f74f0a0141c2cf5ef2fbdfdb63470a0abc91f000000e06b6a6d97bc9c9c1c6ddcb851bffded6fddf7109defa1871ed2ba75eb949999e91edbb469930e1c38a0a14387bac7a2a2a2141a1aaa79f3e6796c3f6fde3c85848468e0c081eeb1d8d8581d3f7e5c1f7cf0817b2c3737572b56ac504c4c8cc7c370abbb9f7e92962f97468c901a37967af796962d93a2a2a475eba493275d2dc01f7f9cb004000000df556baf30bdfffefb2a2b2babb01cafdc8b2fbea8152b56a84f9f3e7afae9a7555050a037df7c53eddbb7d7638f3de69e57af5e3d252525293e3e5e717171eadfbfbfb66eddaae4e4644d9d3ad5a3b35d6c6cacba77efaec71e7b4cfbf6ed93c562d1dcb9736518865e7ae9a56b7eccbfd4a143e796da6ddeecbab274e79dd2934fba96da75ea24f9d7da080e0000809aa8d606a69494143569d244bff9cd6f2a7dbf79f3e6fac73ffea1891327eaf9e79f57505090a2a3a3357dfaf40a5782c68d1ba78080004d9f3e5d6bd6ac518b162d3473e64c25242478ccf3f7f7d7471f7da4e79e7b4eb366cd92dd6e57d7ae5db564c912b569d3e69a1debcfe574ba9e8554bed46eef5e5783863e7da49933a5e868e9e69bcdae12000000b876fc0cc330cc2e02de95b787ccc8c8a892b6e24545d2a64dae80b46e9d74ec98141aeaba0f2926461a30406ad8f09a97010000802b54d5bf37d616b5f60a13ce3976ccd5fa7bcd1ae9b3cf24bb5d6ad3467af861d752bb9e3d5d0f95050000006a1b7e0dae850c43fae69b734bed76ec70dd7bd4b3a7f4d24bae90d4b6add95502000000e62330d5122525d2962de742d2a14352488874df7dd2f8f1d2030f48e73d460a00000080084c35daa953d2860dae80f4f1c7ae56e0cd9bbbae20c5c4b85a8157d2511d000000c07f11986a98efbf7705a4b56b5d5794cacaa4ce9da509135c41a94307e9bc67e602000000b80802938f2b2b73dd8354fe7ca47dfba4a020d70364e7cc71b5fe6ededcec2a01000000df4460f2418585ae6e76e5adbf7372a4b03057ebef575e91faf593ead737bb4a000000c0f711987cc48913d2fcf9ae90b4699374f6acf4ab5f498f3fee5a6ad7ad9b54a78ed95502000000350b81c947dc7fbf2b10dd7baff4da6baea60dad5b9b5d1500000050b311987c445292abfd7768a8d99500000000b587bfd905e0f23cf0006109000000a86a042600000000f082c004000000005e109800000000c00b02130000000078416002000000002f084c00000000e005810900000000bc2030010000008017042600000000f082c004000000005e109800000000c00b02130000000078416002000000002f084cc035b06cd932b34bc015e29cf91ece99efe19cf91ece19504b03d3ce9d3b3568d020592c16858484e88e3beed0ecd9b33de67cfbedb7baefbefbd4a04103592c168d1c3952b9b9b995ee6fe1c285fad5af7ea5e0e0604546466ace9c3995cecbcfcfd7d8b163151616a6faf5eb2b2a2a4abb76edbaeac707f3f103c6f770ce7c0fe7ccf770ce7c0fe70c90ea9a5d4055fbf4d34f151313a3ce9d3b6bf2e4c9aa5fbfbe0e1e3ca8a3478fbae7646666aa57af5e6ad4a8915e7bed3515141468dab469dabb77afd2d2d2141010e09e3b7ffe7c8d1b374eb1b1b17af6d967b565cb16252424a8a8a848898989ee794ea75303070ed49e3d7b949898288bc5a2b973e7aa77efdecac8c850ebd6adabf4fb00000000e0d26a55603a7dfab4468e1ca9989818d96c36aff3a64e9d2abbddae5dbb76a979f3e692a4ae5dbbaa5fbf7e5abc78b1c68c192349b2dbed9a346992a2a3a3b57cf97249d2a851a3e4743a959494a4b163c7ea861b6e9024d96c366ddbb64d369b4d43860c9124c5c5c52932325253a64c517272f2b53c74000000003f43ad5a92979292a213274ee8d5575f9524151616cae9745698b772e54a454747bbc39224f5eddb57919191ee602449a9a9a9cacbcbd3f8f1e33db68f8f8f576161a1d6af5fef1eb3d96c6adab4a93b2c4992d56a555c5c9c56af5ead929292ab769c00000000ae8e5a758569e3c68d6ad8b0a17efcf1470d1a3448070e1c504848881e79e411cd9831434141413a7af4a872727274d75d7755d8be4b972edab06183fb75f9fd4717ceedd4a993fcfdfdb57bf76e3dfcf0c3eeb99d3a75aa749f0b162cd0fefdfb75db6db75578dfe1704872dd5305df919f9faf9d3b779a5d06ae00e7ccf770ce7c0fe7ccf770ce7c4bf9ef8b76bbdde44a6a965a15980e1c38a0d2d2520d1e3c58a3478fd61b6fbca1d4d454cd9e3d5bf9f9f94a4949517676b624293c3cbcc2f6e1e1e1cacbcb53494989020202949d9dad3a75eac86ab57acc0b0c0c94c562515656967b2c3b3b5bbd7bf7ae749f92949595556960fae1871f244923468cf8d9c70d7374eedcd9ec1270853867be8773e67b3867be8773e67b0e1d3aa4bbefbedbec326a8c5a1598ce9c39a3a2a2228d1b374e3367ce94240d1e3c58c5c5c59a3f7fbe5e7ef96577220f0a0aaab07dbd7af524b9527b404080ec76bb0203032bfd5a4141411ee9dee1705c729f9519306080962e5daa962d5b2a3838f80a8e16000000b589c3e1d00f3ffca0010306985d4a8d52ab025379e0183e7cb8c7f8f0e1c3357ffe7c6ddfbe5deddab593249d3d7bb6c2f6e5cbe3caf7131c1cace2e2e24abf96c3e1f00838c1c1c197b5cf0b59ad56f7b23e000000e0627af6ec697609354ead6afad0ac5933495293264d3cc61b376e2c493a75ea947b4ef9d2bcf3656767cb62b1b8db8a878787abacacacc2f3998a8b8b959797e7de57f9dcf397e89dbfcff36b03000000507dd4aac054de9c213333d363bc3cc8848585a959b3660a0b0b537a7a7a85edd3d2d2d4a14307f7eb8e1d3b4a5285b95f7df5959c4ea7c7dc0e1d3a68e7ce9d320cc363ee8e1d3b141212a2c8c8c85f706400000000ae855a1598e2e2e224490b172ef4187ffbedb7151010e06ecaf0d0430f69ddba751ec16ad3a64d3a70e080860e1dea1e8b8a8a526868a8e6cd9be7b1bf79f3e62924244403070e748fc5c6c6eaf8f1e3fae0830fdc63b9b9b95ab162856262623c1e860b000000a07af0332ebce451c38d1e3d5aefbcf38ee2e2e2d4ab572f6ddebc59369b4d2fbef8a25e79e51549ae2b501d3b76d40d37dca0a79f7e5a0505057af3cd37d5a2450ba5a7a77b849b79f3e6293e3e5eb1b1b1eadfbfbfb66eddaaf7de7b4f53a74ed5f3cf3fef9ee7743a75cf3df7e8ebafbfd673cf3d278bc5a2b973e72a333353e9e9e96ad3a64d957f2f000000005c8251cb949494182fbdf492d1b2654b233030d0888c8c34fef6b7bf5598f7cd37df1803060c304242428cd0d050e391471e314e9c3851e93edf7aeb2da35dbb7646505090d1a64d9b4af767188671ead42963f4e8d186d56a354242428c3e7dfa1819191995ce75381c466262a2111e1e6e0407071bddba75333efbecb39f7fe0b8e6ce9c39634c9e3cd918306080d1a85123c3cfcfcf58bc78b1d965e122d2d2d28cf8f878e3d65b6f354242428c162d5a18717171c6fefdfbcd2e0d5e7cfdf5d7466c6cacd1aa552be3baebae334243438d1e3d7a184b972e35bb345ca6575e79c5f0f3f3336ebffd76b34b8117a9a9a9869f9f5fa51f3b76ec30bb3c5c44464686111313638486861ad75d779d71fbedb71bb366cd32bb2c9f57ebae30f98ae1c3876be5ca959a306182dab469a3458b16293d3d5da9a9a9f4d5afa60e1d3aa456ad5ae9e69b6f56444484366fdeacc58b176be4c8916697062f626363b56ddb360d1d3a54eddbb7577676b6e6cc99a33367ce68fbf6ed953e1b0de6dab0618366cd9aa59e3d7baa59b3662a2a2a92cd66d3d6ad5b959494a4499326995d222e223333536ddbb695bfbfbf222222b467cf1eb34b4225366fdeaca8a8283dfdf4d3ead2a58bc77b03060c90c56231a9325ccca79f7eaa98981875eedc59c3860d53fdfaf575f0e0411986a1d75f7fddecf27c1a81a91a4a4b4b53f7eedd356dda344d9c385192abcdf9edb7dfaec68d1beb8b2fbe30b94254a6b8b858f9f9f96adcb8b1323232d4a54b17025335b76ddb3675e9d24575eb9e7bc2c2c1830775c71d7728363656efbdf79e89d5e172399d4e75eedc597979793a7cf8b0d9e5e0227ef7bbdfe9e4c9932a2d2d556e6eaef6eedd6b7649a8447960b2d96c1a326488d9e5e0329c3e7d5a919191bae79e7b64b3d9cc2ea7c6a9554d1f7c85cd6653ddba753576ec58f758505090468d1aa56ddbb6e9e8d1a32656076f020303dd2deaf93b846fe8d1a387475892a4d6ad5bebd65b6fd577df7d675255b852fefefe6adebc39cd73aab92d5bb668e5ca959a3973a60cc3909f9f9fd925e1120cc3504141814a4b4bcd2e0597909292a213274ee8d5575f9524151616cae9749a5c55cd4160aa8676eddaa5c8c848d5af5fdf63bcfcb2f8eeddbbcd280ba8150cc3d0f1e3c765b55acd2e0517515454a4dcdc5c7dfffdf79a3163863ef9e4132526269a5d16bc282b2bd3534f3da53163c6b0d4d5873cf6d863bafefaeb151c1caca8a828656464985d12bcd8b871a31a366ca81f7ffc516ddbb65583060d74fdf5d76bfcf8f13a7bf6acd9e5f9bcba979e82aa969d9dadf0f0f00ae3e563953d0017c0d5919c9cacacac2c77d74c544f13274ed482050b244975ebd6d5ac59b33caecaa37af9fbdfffae23478ee8f3cf3f37bb145c86a0a020c5c6c6ea81071e90d56ad537df7ca369d3a6e9de7befd5975f7ee9f19c49540f070e1c506969a9060f1eacd1a347eb8d37de506a6aaa66cf9eadfcfc7ca5a4a4985da24f2330554376bb5d41414115c6ebd5abe77e1fc0d5f7dd77df293e3e5e3d7bf6d41ffef007b3cbc1454c983041717171cacaca527272b29e7cf24905070773deaaa193274f6af2e4c99a3c7932cd027c448f1e3dd4a3470ff7ebe8e868c5c6c6aa7dfbf67ae18517b461c30613ab4365ce9c39a3a2a2228d1b374e3367ce94240d1e3c58c5c5c59a3f7fbe5e7ef965b56edddae42a7d174bf2aaa1e0e0e04a2f9f3a1c0ef7fb00aeae63c78e69e0c0816ad4a8916c361bf75754736ddbb655545494468c18a10d1b36a86fdfbe7ae69967f8835235f4a73ffd4956ab554f3df594d9a5e017b8e5965bf4e0830f2a353595fb74aba1f2df0d870f1fee315efe7afbf6ed555e534d4260aa86c2c3c32b5d76979d9d2d496ad6ac59559704d4683ffdf493eebfff7e9d3e7d5a1f7ffcb19a366d6a7649b8420f3df4907efae927fdfbdfff36bb149ce7c081037aebadb7f4d4534f29333353870e1dd2a14387e47038545c5cacc3870febd4a953669789cbd4bc7973151717abb0b0d0ec527081f2df0d9b3469e2315ede8c8aff67bf0c81a91aead8b1a3f6efdfaf8282028ff11d3b7648126b8781abc8e17028262646070f1ed4ba75ebd4ae5d3bb34bc2cf507e65c9df9f1f6bd5c9d1a347e5743a959090a056ad5ab93fd2d2d2b47fff7e454444282929c9ec327199fef39fff283838b842532a98efaebbee92e47ad6d9f9caff001f161656e535d524fc64a986626363555656e6bea159723d8769d1a245eadebdbb6ebcf14613ab036a8eb2b2320d1b364c3b76ecd08a152bd4ad5b37b34bc225e4e4e454182b2929d192254b64b158e8c056cddc71c71dfaf0c30fb56ad52af7c7871f7ea8db6ebb4d37df7cb356ad5aa551a346995d262e50d9ffb37ffdeb5f5ab3668dfaf7ef6f4245b894b8b83849d2c2850b3dc6df7efb6d050404a877efde26545573d0f4a11aeadab5ab860e1daa175e7841274e9cd02db7dca277df7d57478e1cd1a2458bcc2e0f173167ce1ce5e7e7bbffa2b366cd1a1d39724492949090a0860d1b9a591e2ef0c73ffe516bd7ae554c4c8c727373b574e9528ff7478c18615265f066ecd8b12a282850af5ebdd4ac59331d3b764cc9c9c9dabf7fbf162d5aa43a75ea985d22ce63b158f4e0830f56189f3163862469d0a041555d122ec3b061c374dd75d7a9478f1e6adcb8b1f6eddba7050b16a87efdfa7afdf5d7cd2e0f95e8d0a1831e7ffc71bdf3ce3b2a2d2d55af5ebdb479f366d96c36bdf8e28b2c35ff85fc0ceedcab96ce9e3dab3ffff9cf5aba74a94e9d3aa53befbc53494949ead7af9fd9a5e12222222274f8f0614972370d287f40e30f3ffca0162d5a98591e2ed0a74f1f6dd9b2a5d21b98fdfcfc545656664255b898f7df7f5f0b172ed4debd7b75f2e449356cd850ddba75d3c48913d5b76f5fb3cbc365ead3a78f4e9e3ca93d7bf6985d0a2a317bf66c252727ebe0c1833a7dfab41a376eacbe7d09dc4a7c000000ef49444154fb6aca94296ad5aa95d9e5c18bd2d2524d9d3a558b162d525656965ab66ca9f8f878252424985d9acf2330010000008017dcc304000000005e109800000000c00b02130000000078416002000000002f084c00000000e005810900000000bc2030010000008017042600000000f082c004000000005e109800000000c00b02130000000078416002000000002f084c00000000e005810900000000bc2030010000008017042600000000f082c004000000005e109800000000c00b02130000000078416002000000002f084c00000000e005810900000000bc2030010000008017042600000000f0e2ff03bd8a08617178b60c0000000049454e44ae426082}\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u32467?\u26524?\u27491?\u22909?\u19982?\u25105?\u30340?\u24773?\u20917?\u30456?\u21453?\u65311?\u20284?\u20046?\u22270?\u19978?\u26159?\u36825?\u20040?\u35828?\u30340?\u65292?\u20294?\u26159?\u25968?\u25454?\u19978?\u26159?\u36825?\u26679?\u30340?\u24773?\u20917?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 data\line -\u9500?\u9472?\u9472? 2014-01-01-0.json\line -\u9500?\u9472?\u9472? 2014-02-01-0.json\line -\u9500?\u9472?\u9472? 2014-02-02-0.json\line -\u9500?\u9472?\u9472? 2014-02-03-0.json\line -\u9500?\u9472?\u9472? 2014-02-04-0.json\line -\u9500?\u9472?\u9472? 2014-02-05-0.json\line -\u9500?\u9472?\u9472? 2014-02-06-0.json\line -\u9500?\u9472?\u9472? 2014-02-07-0.json\line -\u9500?\u9472?\u9472? 2014-02-08-0.json\line -\u9500?\u9472?\u9472? 2014-02-09-0.json\line -\u9500?\u9472?\u9472? 2014-02-10-0.json\line -\u9500?\u9472?\u9472? 2014-02-11-0.json\line -\u9500?\u9472?\u9472? 2014-02-12-0.json\line -\u9500?\u9472?\u9472? 2014-02-13-0.json\line -\u9500?\u9472?\u9472? 2014-02-14-0.json\line -\u9500?\u9472?\u9472? 2014-02-15-0.json\line -\u9500?\u9472?\u9472? 2014-02-16-0.json\line -\u9500?\u9472?\u9472? 2014-02-17-0.json\line -\u9500?\u9472?\u9472? 2014-02-18-0.json\line -\u9500?\u9472?\u9472? 2014-02-19-0.json\line -\u9492?\u9472?\u9472? 2014-02-20-0.json\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u25105?\u20204?\u33719?\u21462?\u26159?\u27599?\u22825?\u26202?\u19978?0\u28857?\u26102?\u30340?\u24773?\u20917?\u65292?\u33267?\u20110?\u20026?\u20160?\u20040?\u26159?0\u28857?\u65292?\u25105?\u24819?\u36825?\u37324?\u30340?\u25968?\u25454?\u37327?\u21487?\u33021?\u20250?\u27604?\u36739?\u23569?\u12290?\u38500?\u21435?1\u26376?1\u21495?\u30340?\u24773?\u20917?\u65292?\u23601?\u26159?\u19978?\u38754?\u30340?\u32467?\u26524?\u65292?\u22312?\u21482?\u26377?\u19968?\u21608?\u30340?\u24773?\u20917?\u26102?\u65292?\u24635?\u20250?\u20197?\u20026?\u22240?\u20026?\u22312?\u22269?\u20869?\u37027?\u26102?\u26159?\u20551?\u26399?\u65292?\u20294?\u26159?\u24635?\u35273?\u24471?\u19981?\u26159?\u24456?\u38752?\u35889?\u65292?\u22269?\u20869?\u30340?\u31243?\u24207?\u21592?\u34429?\u28982?\u24456?\u22810?\u65292?\u20250?\u22312?github\u19978?\u27963?\u36291?\u30340?\u21487?\u33021?\u27809?\u26377?\u37027?\u20040?\u22810?\u65292?\u30452?\u33267?\u21015?\u20986?\u27599?\u19968?\u21608?\u30340?\u25968?\u25454?\u26102?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 6570, 7420, 11274, 12073, 12160, 12378, 12897,\line - 8474, 7984, 12933, 13504, 13763, 13544, 12940,\line - 7119, 7346, 13412, 14008, 12555\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 Python \u25968?\u25454?\u20998?\u26512?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u37325?\u20889?\u20102?\u19968?\u20010?\u26032?\u30340?\u26041?\u27861?\u29992?\u20110?\u35745?\u31639?\u25552?\u20132?\u25968?\u65292?\u30452?\u33267?\u21518?\u38754?\u25165?\u24847?\u35782?\u21040?\u20854?\u23454?\u25105?\u20204?\u21487?\u20197?\u31639?\u34892?\u25968?\u23601?\u22815?\u20102?\u65292?\u20294?\u26159?\u26041?\u27861?\u19978?\u26377?\u28857?hack\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 def get_minutes_counts_with_id(jsonfile):\line - datacount, dataarray = handle_json(jsonfile)\line - minuteswithcount = [(x, dataarray.count(x)) for x in set(dataarray)]\line - return minuteswithcount\line -\line -\line -def handle_json(jsonfile):\line - f = open(jsonfile, "r")\line - dataarray = []\line - datacount = 0\line -\line - for line in open(jsonfile):\line - line = f.readline()\line - lin = json.loads(line)\line - date = dateutil.parser.parse(lin["created_at"])\line - datacount += 1\line - dataarray.append(date.minute)\line -\line - f.close()\line - return datacount, dataarray\line -\line -\line -def get_minutes_count_num(jsonfile):\line - datacount, dataarray = handle_json(jsonfile)\line - return datacount\line -\line -\line -def get_month_total():\line - """\line -\line - :rtype : object\line - """\line - monthdaycount = []\line - for i in range(1, 20):\line - if i < 10:\line - filename = 'data/2014-02-0' + i.__str__() + '-0.json'\line - else:\line - filename = 'data/2014-02-' + i.__str__() + '-0.json'\line - monthdaycount.append(get_minutes_count_num(filename))\line - return monthdaycount\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u25509?\u30528?\u25105?\u20204?\u38656?\u35201?\u21435?\u36941?\u21382?\u27599?\u20010?\u32467?\u26524?\u65292?\u21518?\u38754?\u30340?\u21518?\u38754?\u20250?\u21457?\u29616?\u36825?\u20010?\u25928?\u29575?\u30495?\u30340?\u26159?\u22826?\u20302?\u20102?\u65292?\u20026?\u20160?\u20040?\u26408?\u26377?\u22810?\u32447?\u31243?\u65311?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 Python Matplotlib\u22270?\u34920?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u35753?\u25105?\u20204?\u30340?matplotlib\u26469?\u20570?\u36825?\u20123?\u22270?\u34920?\u30340?\u24037?\u20316?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 if __name__ == '__main__':\line - results = pd.get_month_total()\line - print results\line -\line - plt.figure(figsize=(8, 4))\line - plt.plot(results.__getslice__(0, 7), label="first week")\line - plt.plot(results.__getslice__(7, 14), label="second week")\line - plt.plot(results.__getslice__(14, 21), label="third week")\line - plt.legend()\line - plt.show()\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u34013?\u33394?\u30340?\u26159?\u31532?\u19968?\u21608?\u65292?\u32511?\u33394?\u30340?\u26159?\u31532?\u20108?\u21608?\u65292?\u34013?\u33394?\u30340?\u26159?\u31532?\u19977?\u21608?\u23601?\u26377?\u20102?\u19978?\u38754?\u30340?\u32467?\u26524?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u25105?\u20204?\u36824?\u38656?\u35201?\u20248?\u21270?\u26041?\u27861?\u65292?\u20197?\u21450?\u22810?\u32447?\u31243?\u30340?\u25903?\u25345?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs36 Github\u39033?\u30446?\u20998?\u26512?\u20108?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u35753?\u25105?\u20204?\u20998?\u26512?\u20043?\u21069?\u30340?\u31243?\u24207?\u65292?\u28982?\u21518?\u20877?\u24819?\u21150?\u27861?\u20570?\u20986?\u20248?\u21270?\u12290?\u32593?\u19978?\u30475?\u21040?\u19968?\u31687?\u25991?\u31456?{\field{\*\fldinst{HYPERLINK "http://www.huyng.com/posts/python-performance-analysis/"}}{\fldrslt{\ul -http://www.huyng.com/posts/python-performance-analysis/ -}}} -\u35762?\u30340?\u23601?\u26159?\u20998?\u26512?\u36825?\u37096?\u20998?\u20869?\u23481?\u30340?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 Time Python\u20998?\u26512?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u20998?\u26512?\u31243?\u24207?\u30340?\u36816?\u34892?\u26102?\u38388?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 $time python handle.py\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u32467?\u26524?\u20415?\u26159?\u65292?\u20294?\u26159?\u23545?\u20110?\u25105?\u20204?\u30340?\u20998?\u26512?\u27809?\u26377?\u19968?\u28857?\u24847?\u20041?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 real 0m43.411s\line - user 0m39.226s\line - sys 0m0.618s\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 line_profiler python\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 sudo ARCHFLAGS="-Wno-error=unused-command-line-argument-hard-error-in-future" easy_install line_profiler\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u28982?\u21518?\u22312?\u25105?\u20204?\u30340?{\f1 parse_data.py}\u30340?{\f1 handle_json}\u21069?\u38754?\u21152?\u19978?{\f1 @profile}\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 @profile\line -def handle_json(jsonfile):\line - f = open(jsonfile, "r")\line - dataarray = []\line - datacount = 0\line -\line - for line in open(jsonfile):\line - line = f.readline()\line - lin = json.loads(line)\line - date = dateutil.parser.parse(lin["created_at"])\line - datacount += 1\line - dataarray.append(date.minute)\line -\line - f.close()\line - return datacount, dataarray\par} -{\pard \ql \f0 \sa180 \li0 \fi0 Line_profiler\u24102?\u20102?\u19968?\u20010?\u20998?\u26512?\u33050?\u26412?{\f1 kernprof.py}\u65292?so\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 kernprof.py -l -v handle.py\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u25105?\u20204?\u20415?\u20250?\u24471?\u21040?\u19979?\u38754?\u30340?\u32467?\u26524?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 Wrote profile results to handle.py.lprof\line -Timer unit: 1e-06 s\line -\line -File: parse_data.py\line -Function: handle_json at line 15\line -Total time: 127.332 s\line -\line -Line # Hits Time Per Hit % Time Line Contents\line -==============================================================\line - 15 @profile\line - 16 def handle_json(jsonfile):\line - 17 19 636 33.5 0.0 f = open(jsonfile, "r")\line - 18 19 21 1.1 0.0 dataarray = []\line - 19 19 16 0.8 0.0 datacount = 0\line - 20\line - 21 212373 730344 3.4 0.6 for line in open(jsonfile):\line - 22 212354 2826826 13.3 2.2 line = f.readline()\line - 23 212354 13848171 65.2 10.9 lin = json.loads(line)\line - 24 212354 109427317 515.3 85.9 date = dateutil.parser.parse(lin["created_at"])\line - 25 212354 238112 1.1 0.2 datacount += 1\line - 26 212354 260227 1.2 0.2 dataarray.append(date.minute)\line - 27\line - 28 19 349 18.4 0.0 f.close()\line - 29 19 20 1.1 0.0 return datacount, dataarray\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u20110?\u26159?\u25105?\u20204?\u23601?\u21457?\u29616?\u25105?\u20204?\u30340?\u29942?\u39048?\u23601?\u26159?\u20174?\u35835?\u21462?{\f1 created_at}\u65292?\u21363?\u21019?\u24314?\u26102?\u38388?\u12290?\u12290?\u12290?\u20197?\u21450?\u35299?\u26512?json\u65292?\u21453?\u32780?\u19981?\u26159?\u25105?\u20204?\u20851?\u24515?\u30340?IO\u65292?\u26524?\u28982?{\f1 readline}\u24456?\u24378?\u22823?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 memory_profiler\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u39318?\u20808?\u25105?\u20204?\u38656?\u35201?install memory_profiler:\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 $ pip install -U memory_profiler\line -$ pip install psutil\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u22914?\u19978?\u65292?\u25105?\u20204?\u21482?\u38656?\u35201?\u22312?{\f1 handle_json}\u21069?\u38754?\u21152?\u19978?{\f1 @profile}\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 python -m memory_profiler handle.py\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u20110?\u26159?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 Filename: parse_data.py\line - \line -Line # Mem usage Increment Line Contents\line -================================================\line - 13 39.930 MiB 0.000 MiB @profile\line - 14 def handle_json(jsonfile):\line - 15 39.930 MiB 0.000 MiB f = open(jsonfile, "r")\line - 16 39.930 MiB 0.000 MiB dataarray = []\line - 17 39.930 MiB 0.000 MiB datacount = 0\line - 18\line - 19 40.055 MiB 0.125 MiB for line in open(jsonfile):\line - 20 40.055 MiB 0.000 MiB line = f.readline()\line - 21 40.066 MiB 0.012 MiB lin = json.loads(line)\line - 22 40.055 MiB -0.012 MiB date = dateutil.parser.parse(lin["created_at"])\line - 23 40.055 MiB 0.000 MiB datacount += 1\line - 24 40.055 MiB 0.000 MiB dataarray.append(date.minute)\line - 25\line - 26 f.close()\line - 27 return datacount, dataarray\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 objgraph python\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u23433?\u35013?objgraph\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 pip install objgraph\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u25105?\u20204?\u38656?\u35201?\u35843?\u29992?\u20182?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 import pdb;\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u20197?\u21450?\u22312?\u38656?\u35201?\u35843?\u24230?\u30340?\u22320?\u26041?\u21152?\u19978?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 pdb.set_trace()\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u25509?\u30528?\u20250?\u36827?\u20837?{\f1 command}\u27169?\u24335?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 (pdb) import objgraph\line -(pdb) objgraph.show_most_common_types()\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u28982?\u21518?\u25105?\u20204?\u21487?\u20197?\u25214?\u21040?\u12290?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 function 8259\line -dict 2137\line -tuple 1949\line -wrapper_descriptor 1625\line -list 1586\line -weakref 1145\line -builtin_function_or_method 1117\line -method_descriptor 948\line -getset_descriptor 708\line -type 705\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u20063?\u21487?\u20197?\u29992?\u20182?\u29983?\u25104?\u22270?\u24418?\u65292?\u35980?\u20284?\u36825?\u37324?\u26159?\u29992?{\f1 dot}\u29983?\u25104?\u30340?\u65292?\u21152?\u19978?{\f1 python-xdot}\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u24456?\u26126?\u26174?\u30340?\u25105?\u20204?\u38656?\u35201?\u19968?\u20010?\u25968?\u25454?\u24211?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u22914?\u26524?\u25105?\u20204?\u27599?\u27425?\u37117?\u35201?\u33457?\u21516?\u26679?\u30340?\u26102?\u38388?\u21435?\u20570?\u19968?\u20214?\u20107?\u65292?\u21435?\u25195?\u37027?\u20123?\u25968?\u25454?\u30340?\u35805?\u65292?\u37027?\u20040?\u36825?\u26159?\u26368?\u22909?\u30340?\u25171?\u21457?\u26102?\u38388?\u30340?\u26041?\u27861?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 python SQLite3 \u26597?\u35810?\u25968?\u25454?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u25105?\u20204?\u21019?\u24314?\u20102?\u19968?\u20010?\u21517?\u20026?{\f1 userdata.db}\u30340?\u25968?\u25454?\u24211?\u25991?\u20214?\u65292?\u28982?\u21518?\u21019?\u24314?\u20102?\u19968?\u20010?\u34920?\u65292?\u37324?\u38754?\u26377?owner,language,eventtype,name url\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 def init_db():\line - conn = sqlite3.connect('userdata.db')\line - c = conn.cursor()\line - c.execute('''CREATE TABLE userinfo (owner text, language text, eventtype text, name text, url text)''')\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u25509?\u30528?\u25105?\u20204?\u23601?\u21487?\u20197?\u26597?\u35810?\u25968?\u25454?\u65292?\u36825?\u37324?\u20174?\u32467?\u26524?\u35762?\u36215?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 def get_count(username):\line - count = 0\line - userinfo = []\line - condition = 'select * from userinfo where owener = \\'' + str(username) + '\\''\line - for zero in c.execute(condition):\line - count += 1\line - userinfo.append(zero)\line -\line - return count, userinfo\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u24403?\u25105?\u26597?\u35810?{\f1 gmszone}\u30340?\u26102?\u20505?\u65292?\u20063?\u23601?\u26159?\u25105?\u33258?\u24049?\u23601?\u20250?\u26377?\u22914?\u19979?\u30340?\u32467?\u26524?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 (u'gmszone', u'ForkEvent', u'RESUME', u'TeX', u'https://github.com/gmszone/RESUME')\line -(u'gmszone', u'WatchEvent', u'iot-dashboard', u'JavaScript', u'https://github.com/gmszone/iot-dashboard')\line -(u'gmszone', u'PushEvent', u'wechat-wordpress', u'Ruby', u'https://github.com/gmszone/wechat-wordpress')\line -(u'gmszone', u'WatchEvent', u'iot', u'JavaScript', u'https://github.com/gmszone/iot')\line -(u'gmszone', u'CreateEvent', u'iot-doc', u'None', u'https://github.com/gmszone/iot-doc')\line -(u'gmszone', u'CreateEvent', u'iot-doc', u'None', u'https://github.com/gmszone/iot-doc')\line -(u'gmszone', u'PushEvent', u'iot-doc', u'TeX', u'https://github.com/gmszone/iot-doc')\line -(u'gmszone', u'PushEvent', u'iot-doc', u'TeX', u'https://github.com/gmszone/iot-doc')\line -(u'gmszone', u'PushEvent', u'iot-doc', u'TeX', u'https://github.com/gmszone/iot-doc')\line -109\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u19968?\u20849?\u26377?109\u20010?\u20107?\u20214?\u65292?\u26377?{\f1 Watch},{\f1 Create},{\f1 Push},{\f1 Fork}\u36824?\u26377?\u20854?\u20182?\u30340?\u65292? \u39033?\u30446?\u20027?\u35201?\u26377?{\f1 iot},{\f1 RESUME},{\f1 iot-dashboard},{\f1 wechat-wordpress}, \u25509?\u30528?\u23601?\u26159?\u35821?\u35328?\u20102?\u65292?{\f1 Tex},{\f1 Javascript},{\f1 Ruby},\u25509?\u30528?\u23601?\u26159?\u39033?\u30446?\u30340?url\u20102?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u20540?\u24471?\u27880?\u24847?\u30340?\u26159?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 -rw-r--r-- 1 fdhuang staff 905M Apr 12 14:59 userdata.db\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u36825?\u20010?\u25968?\u25454?\u24211?\u25991?\u20214?\u26377?{\b 905M}\u65292?\u19981?\u36807?\u26597?\u35810?\u32467?\u26524?\u30456?\u24403?\u35753?\u20154?\u28385?\u24847?\u65292?\u33267?\u23569?\u30456?\u23545?\u20110?\u21407?\u26469?\u30340?\u32467?\u26524?\u26469?\u35828?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 Python\u33258?\u24102?\u20102?\u23545?SQLite3\u30340?\u25903?\u25345?\u65292?\u28982?\u32780?\u25105?\u20204?\u36824?\u38656?\u35201?\u23433?\u35013?SQLite3\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 brew install sqlite3\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u25110?\u32773?\u26159?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 sudo port install sqlite3\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u25110?\u32773?\u26159?Ubuntu\u30340?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 sudo apt-get install sqlite3\par} -{\pard \ql \f0 \sa180 \li0 \fi0 openSUSE\u33258?\u28982?\u23601?\u26159?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 sudo zypper install sqlite3\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u19981?\u36807?\u65292?\u29992?yast2\u20063?\u24456?\u19981?\u38169?\u65292?\u19981?\u26159?\u20040?\u12290?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 \u25968?\u25454?\u23548?\u20837?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u38656?\u35201?\u27880?\u24847?\u30340?\u26159?\u36825?\u37324?\u26159?\u38656?\u35201?python2.7\u65292?\u36215?\u28304?\u20110?\u23545?gzip\u30340?\u19978?\u19979?\u25991?\u31649?\u29702?\u22120?\u30340?\u25903?\u25345?\u38382?\u39064?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 def handle_gzip_file(filename):\line - userinfo = []\line - with gzip.GzipFile(filename) as f:\line - events = [line.decode("utf-8", errors="ignore") for line in f]\line -\line - for n, line in enumerate(events):\line - try:\line - event = json.loads(line)\line - except:\line -\line - continue\line -\line - actor = event["actor"]\line - attrs = event.get("actor_attributes", \{\})\line - if actor is None or attrs.get("type") != "User":\line - continue\line -\line - key = actor.lower()\line -\line - repo = event.get("repository", \{\})\line - info = str(repo.get("owner")), str(repo.get("language")), str(event["type"]), str(repo.get("name")), str(\line - repo.get("url"))\line - userinfo.append(info)\line -\line - return userinfo\line -\line -def build_db_with_gzip():\line - init_db()\line - conn = sqlite3.connect('userdata.db')\line - c = conn.cursor()\line -\line - year = 2014\line - month = 3\line -\line - for day in range(1,31):\line - date_re = re.compile(r"([0-9]\{4\})-([0-9]\{2\})-([0-9]\{2\})-([0-9]+)\\.json.gz")\line -\line - fn_template = os.path.join("march",\line - "\{year\}-\{month:02d\}-\{day:02d\}-\{n\}.json.gz")\line - kwargs = \{"year": year, "month": month, "day": day, "n": "*"\}\line - filenames = glob.glob(fn_template.format(**kwargs))\line -\line - for filename in filenames:\line - c.executemany('INSERT INTO userinfo VALUES (?,?,?,?,?)', handle_gzip_file(filename))\line -\line - conn.commit()\line - c.close()\par} -{\pard \ql \f0 \sa180 \li0 \fi0 {\f1 executemany}\u21487?\u20197?\u25554?\u20837?\u22810?\u26465?\u25968?\u25454?\u65292?\u23545?\u20110?\u25105?\u20204?\u30340?\u25968?\u25454?\u26469?\u35828?\u65292?\u19968?\u23567?\u26102?\u30340?\u25991?\u20214?\u22823?\u27010?\u26377?\u20116?\u20845?\u21315?\u20010?\u20250?\u31526?\u21512?\u25105?\u20204?\u19978?\u38754?\u30340?\u23433?\u35013?\u65292?\u20063?\u23601?\u26159?\u26377?{\f1 actor}\u21448?\u26377?{\f1 type}\u25165?\u26159?\u25105?\u20204?\u38656?\u35201?\u35760?\u24405?\u30340?\u25968?\u25454?\u65292?\u25105?\u20204?\u21482?\u38656?\u35201?\u32479?\u35745?\u29992?\u25143?\u30340?\u37027?\u20123?\u20107?\u20214?\u65292?\u32780?\u38750?\u20840?\u37096?\u30340?\u20107?\u20214?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u25105?\u20204?\u38656?\u35201?\u21435?\u36941?\u21382?\u25991?\u20214?\u65292?\u28982?\u21518?\u25214?\u21040?\u21512?\u36866?\u30340?\u37096?\u20998?\u65292?\u36825?\u37324?\u21482?\u26159?\u35201?\u25214?{\f1 2014-03-01}\u21040?{\f1 2014-03-31}\u30340?\u20840?\u37096?\u20107?\u20214?\u65292?\u32780?\u20809?\u36825?\u20123?\u25968?\u25454?\u30340?gz\u25991?\u20214?\u23601?\u26377?1.26G\u65292?\u21516?\u19978?\u38754?\u37027?\u20123?\u35299?\u21387?\u20026?json\u25991?\u20214?\u26174?\u24471?\u19981?\u21512?\u36866?\u65292?\u21482?\u33021?\u29992?\u36941?\u21382?\u26469?\u22788?\u29702?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u36825?\u37324?\u21442?\u32771?\u20102?osrc\u39033?\u30446?\u20013?\u30340?\u20889?\u27861?\u65292?\u25110?\u32773?\u35828?\u30452?\u25509?\u22797?\u21046?\u36807?\u26469?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u39318?\u20808?\u26159?\u27491?\u35268?\u21305?\u37197?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 date_re = re.compile(r"([0-9]\{4\})-([0-9]\{2\})-([0-9]\{2\})-([0-9]+)\\.json.gz")\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u19981?\u36807?\u20027?\u35201?\u30340?\u36824?\u26159?\u22312?\u20110?{\f1 glob.glob}\par} -{\pard \ql \f0 \sa180 \li720 \fi0 glob\u26159?python\u33258?\u24049?\u24102?\u30340?\u19968?\u20010?\u25991?\u20214?\u25805?\u20316?\u30456?\u20851?\u27169?\u22359?\u65292?\u29992?\u23427?\u21487?\u20197?\u26597?\u25214?\u31526?\u21512?\u33258?\u24049?\u30446?\u30340?\u30340?\u25991?\u20214?\u65292?\u23601?\u31867?\u20284?\u20110?Windows\u19979?\u30340?\u25991?\u20214?\u25628?\u32034?\u65292?\u25903?\u25345?\u36890?\u37197?\u31526?\u25805?\u20316?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u36825?\u37324?\u20063?\u23601?\u29992?\u19978?\u20102?{\f1 gzip.GzipFile}\u21448?\u19968?\u20010?\u19981?\u38169?\u30340?\u19996?\u35199?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u26368?\u21518?\u20195?\u30721?\u21487?\u20197?\u35265?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 {\field{\*\fldinst{HYPERLINK "http://github.com/gmszone/ml"}}{\fldrslt{\ul -github.com/gmszone/ml -}}} -\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u26356?\u22909?\u30340?\u26041?\u26696?\u65311?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 Redis\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u26597?\u35810?\u29992?\u25143?\u20107?\u20214?\u24635?\u25968?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 import redis\line -r = redis.StrictRedis(host='localhost', port=6379, db=0)\line -pipe = pipe = r.pipeline()\line -pipe.zscore('osrc:user',"gmszone")\line -pipe.execute()\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u31995?\u32479?\u36820?\u22238?\u20102?{\f1 227.0},\u35797?\u35797?\u21035?\u20154?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 >>> pipe.zscore('osrc:user',"dfm")\line -\line ->>> pipe.execute()\line -[425.0]\line ->>>\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u30475?\u30475?\u20027?\u35201?\u26159?\u22312?\u21738?\u19968?\u22825?\u25552?\u20132?\u30340?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 >>> pipe.hgetall('osrc:user:gmszone:day')\line -\line ->>> pipe.execute()\line -[\{'1': '51', '0': '41', '3': '17', '2': '34', '5': '28', '4': '22', '6': '34'\}]\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u32467?\u26524?\u22823?\u33268?\u22914?\u19979?\u22270?\u25152?\u31034?:\par} -{\pard \ql \f0 \sa180 \li0 \fi0 {\pict\pngblip\picw520\pich380\picwgoal5220\pichgoal3820 89504e470d0a1a0a0000000d49484452000002080000017c080200000025c5d47e0000012f694343504943432050726f66696c6500002815636060327074717265126060c8cd2b290a72775288888c5260bfc0c0c1c0cd20cc60cc609d985c5ce01810e0c3000479f979a9201a157cbbc6c00812b9ac0b320b558e208f2bb9a0a804a8ea0f101ba5a416273330301a00d9d9e525054071c63940b648523698bd01c42e0a0972068a1f01b2f9d221ec2b20761284fd04c42e027a02a8e60b487d3a98cdc401622741d8322076496a05c85e06e7fc82caa2ccf48c12052303030305c794fca45485e0cae292d4dc6205cfbce4fca282fca2c492d414a05a88fb40ba1804210a4121a661686969a10916a522018a0788719f03c1e1cb2876062186b028b9b4a80cca636432666020c4479831478281c17f290303cb1f8498492f03c3021d0606fea9083135430606017d06867d7300c3af506fec25acb40000000970485973000016250000162501495224f00000019d69545874584d4c3a636f6d2e61646f62652e786d7000000000003c783a786d706d65746120786d6c6e733a783d2261646f62653a6e733a6d6574612f2220783a786d70746b3d22584d5020436f726520352e342e30223e0a2020203c7264663a52444620786d6c6e733a7264663d22687474703a2f2f7777772e77332e6f72672f313939392f30322f32322d7264662d73796e7461782d6e7323223e0a2020202020203c7264663a4465736372697074696f6e207264663a61626f75743d22220a202020202020202020202020786d6c6e733a657869663d22687474703a2f2f6e732e61646f62652e636f6d2f657869662f312e302f223e0a2020202020202020203c657869663a506978656c5844696d656e73696f6e3e3532303c2f657869663a506978656c5844696d656e73696f6e3e0a2020202020202020203c657869663a506978656c5944696d656e73696f6e3e3338303c2f657869663a506978656c5944696d656e73696f6e3e0a2020202020203c2f7264663a4465736372697074696f6e3e0a2020203c2f7264663a5244463e0a3c2f783a786d706d6574613e0a8a15bb0f00001e1e494441547801eddd7f6c94f77d07f03371e24bd360b2a69075a9599bc2b40dd3aec5d922406a4ba675018d61aa3573b42aa56a52b32d25dd3415addd92fe22aaa292a51b1e89c2ba69f1d26980ba25e93f9076c3345aa0a9149349c5fd314827d52c6d316b9223017b77e71ff8b081e7e0eeb9ef73df174270f7dcf79eefe7fbfadcddfbeeb93bbbe5c5e323397f0810204080c0a4c09cc913fe2740800001022501c1e0764080000102150282a182c31902040810100c6e0304081020502120182a389c2140800001c1e0364080000102150282a182c31902040810100c6e0304081020502120182a389c2140800001c1e0364080000102150282a182c31902040810100c6e0304081020502120182a389c2140800001c1e0364080000102150282a182c31902040810100c6e0304081020502120182a389c2140800001c1e0364080000102150282a182c31902040810100c6e0304081020502120182a389c2140800001c1e0364080000102150282a182c31902040810100c6e0304081020502120182a389c2140800001c1e0364080000102150282a182c31902040810100c6e0304081020502120182a389c2140800001c1e0364080000102150282a182c31902040810100c6e0304081020502120182a389c21408000815604cd2170f89bc33f38f0e3a0d6f29e3b165f71a51b58503d510c8144025e3124623288000102f1080886787a6da50408104824201812311944800081780404433cbdb6520204082412100c89980c224080403c0282219e5e5b2901020412090886444c06112040201e01c1104fafad9400010289040443222683081020108f806088a7d7564a8000814402822111934104081088474030c4d36b2b254080402201c19088c920020408c4232018e2e9b5951220402091806048c46410010204e211100cf1f4da4a0910209048c0ef5149c414fea0c255274ebde94450759e6e3995cbb98105d513c5104824e07e9b8829fc41dfbf7af0c96b1f0faace77cf7930a87a144380404201879212421946800081580404432c9db64e0204082414100c09a10c234080402c028221964e5b27010204120a0886845086112040201601c1104ba7ad93000102090504434228c3081020108b806088a5d3d6498000818402822121946104081088454030c4d269eb2440804042013f12232154e8c3def16aeedadc1b82aab2757434a87a144380404201c190102af461bf54f8bfb7ffcff34155391254358a214020b180434989a90c244080401c0282218e3e5b25010204120b0886c45406122040200e01c110479fad9200010289050443622a030910201087806088a3cf5649800081c402822131958104081088434030c4d167ab244080406201c19098ca40020408c4212018e2e8b35512204020b18060484c6520010204e210100c71f4d92a0910209058403024a632900001027108088638fa6c95040810482c201812531948800081380404431c7db64a0204082416100c89a90c244080401c0282218e3e5b25010204120b0886c45406122040200e01c110479fad9200010289050443622a030910201087806088a3cf5649800081c402822131958104081088434030c4d167ab244080406201c19098ca40020408c4212018e2e8b35512204020b18060484c6520010204e210688d6399b55ce5ffbe7cac307ab2967bbcb47db5b65cf6f357bde9d2f6e1da04081038232018ce58243cd5ffdd7f7cfec787120e4e61d81b5f37ff73bf7e5f0a139982008148041c4a8aa4d19649800081a4028221a994710408108844403044d268cb244080405201c19054ca38020408442220182269b46512204020a98060482a651c0102042211100c9134da32091020905440302495328e00010291080886481a6d99040810482a2018924a194780008148040443248db64c0204082415100c49a58c234080402402822192465b26010204920a0886a452c6112040201201c11049a32d93000102490504435229e30810201089805fd4d3248dfeaf398b47e6fe4e508bf9e5b1d62b832a483104082413100cc99c821ff5ad57177ef5c57c50656e6fb93ca87a144380404201879212421946800081580404432c9db64e0204082414100c09a10c234080402c028221964e5b27010204120a0886845086112040201601c1104ba7ad93000102090504434228c3081020108b806088a5d3d6498000818402822121946104081088454030c4d269eb244080404201c19010ca30020408c422201862e9b47512204020a18060480865180102046211100cb174da3a091020905040302484328c000102b1080886583a6d9d0408104828e017f524843a33ac77e495d19f16ce9c6ff4a99657032aa6d118e62740a0060282a16ac479afbd72f9cbc7abbe5addae70fab22b7f56b79ddb310102110a38941461d32d99000102e713100ce7d371190102042214100c1136dd92091020703e01c1703e1d971120402042016f3e47d8f4f496fcedff7db6efd05fa7375f829936bdfd4f7ee5e77e35c140438216f8b7fffeeabffde0ab419578fff207e65e3137a8922eba18af182e9ace15091020d09c0282a139fb6a55040810b86801c170d174ae48800081e614100ccdd957ab224080c0450b78f3f9a2e95cf1c202578ce57eaef5aa0b8f4b7144ebe8588ab3998a402605044326db9695a2979e3cd977e47b4155fbb3b7bd7a3aa8821443203c018792c2eb898a081020d05001c1d0507e93132040203c01c1105e4f5444800081860a088686f29b9c000102e10978f339bc9e3451453fcbe50baf5f14d4824647f36d4115a41802e1090886f07ad244153d3ffa96ad3fb93da8057d22777d67500529864078020e2585d71315112040a0a10282a1a1fc262740804078028221bc9ea8880001020d15100c0de53739010204c213f0e673d53d39daf64bb9b901b98d5d79cd1bab5e842b102040e09c02013dc09db3c6c02e78e4a59b9e7b71493845cd9f7bc5d670aa51090102d917702829fb3db402020408d4544030d494d3ce081020907d01c190fd1e5a010102046a2a20186aca6967040810c8be8060c87e0fad800001023515100c35e5b433020408645f403064bf8756408000819a0a08869a72da19010204b22f2018b2df432b204080404d0504434d39ed8c000102d917100cd9efa115102040a0a60282a1a69c7646800081ec0b0886ecf7d00a081020505301c150534e3b23408040f6050443f67b6805040810a8a98060a829a79d11204020fb027e514ff67b680504e213b8e9e4d8e2d75e17d4badb4e9dca5d115445175f8c60b8783bd72440a051026f3af9d20dc7bedfa8d9679d77a4a565d6ed59dce8505216bba666020408d4514030d411d7ae091020904501c190c5aea9990001027514100c75c4b56b0204086451c09bcf59ec9a9a09a427907f665bebb1c1f4e6bbd04ca3575ef3f2aacf5f6894cb2f4940305c129f2b13687a81392f1dbbecf8917096d9f2da4be114d3ac953894d4ac9db52e0204085ca48060b848385723408040b30a088666edac75112040e0220504c345c2b91a0102049a55c09bcfcdda59eb22d0cc02bb4eadfcdae80d41adf0f363af6b0faaa04b2846305c029eab1220d02081932dadc74fb53568f2734cdbd23c07609a6725e7e895cd04081020509d8060a8cecb6802040834bd806068fa165b20010204aa13100cd579194d800081a617100c4ddf620b24408040750282a13a2fa3091020d0f40282a1e95b6c81040810a84e403054e765340102049a5e4030347d8b2d90000102d5090886eabc8c26408040d30b0886a66fb105122040a03a01c1509d97d1040810687a01c1d0f42db64002040854272018aaf3329a0001024d2f20189abec51648800081ea040443755e46132040a0e9050443d3b7d802091020509d8060a8cecb6802040834bd806068fa165b20010204aa13100cd579194d800081a617100c4ddf620b24408040750282a13a2fa3091020d0f40282a1e95b6c81040810a84e403054e765340102049a5e4030347d8b2d90000102d5090886eabc8c26408040d30b0886a66fb105122040a03a01c1509d97d1040810687a01c1d0f42db64002040854272018aaf3329a0001024d2f20189abec51648800081ea040443755e46132040a0e9050443d3b7d802091020509d406b75c38d2640a06e022ffdfddf8fbef4b3baedbeea1db7bef56d57beefb7aabe9a2b645f403064bf8756d02c02af1e3c38367222a0d59c1acd098680fa915e290e25a5676d260204086442403064a24d8a244080407a0282213d6b331120402013028221136d5224010204d213100ce9599b890001029910100c99689322091020909e806048cfda4c040810c8848060c8449b1449800081f40404437ad666224080402604044326daa448020408a4272018d2b336130102043221201832d12645122040203d01c1909eb599081020900901c19089362992000102e9090886f4accd448000814c0808864cb44991040810484fc02fea49cfda4c8108fca4f0934f3cfda78114335ec6efbeb5fb96856b822a4931310b78c51073f7ad9d000102b308088659506c22408040cc028221e6ee5b3b0102046611100cb3a0d84480008198050443ccddb776020408cc2220186641b189000102310b088698bb6fed04081098454030cc8262130102046216100c3177dfda091020308b80609805c526020408c42c201862eebeb5132040601601c1300b8a4d04081088594030c4dc7d6b274080c02c02826116149b08102010b3806088b9fbd64e800081590404c32c2836112040206601bfa827e6ee47baf62b46c76ebc627e508b7fd3a8a768413524f6620443ecb78008d7fffab1b13ff9c173412dfc95f65f7b35a8821413b780e72971f7dfea09102030434030cc20b181000102710b0886b8fb6ff5040810982120186690d840800081b8050443dcfdb77a020408cc10100c33486c20408040dc028221eefe5b3d01020466080886192436102040206e01c11077ffad9e000102330404c30c121b08102010b7801f891177ffad3e2481b9efba66ece5b6702a9ab3f0f26231036dcb5fba7a6138555d9ebfea37c2a9a6492b110c4dda58cbcaa0c0bcabbf3ba7f5783885bf7af535afe4724fbdf4d66ffff8da70aa7ac355970b867ab7c3a1a47a0bdb3f0102043226201832d630e5122040a0de0282a1dec2f64f8000818c0908868c354cb9040810a8b78060a8b7b0fd1320402063028221630d532e010204ea2d2018ea2d6cff040810c8988060c858c3944b8000817a0b08867a0bdb3f0102043226201832d630e5122040a0de0282a1dec2f64f8000818c0908868c354cb9040810a8b78060a8b7b0fd1320402063028221630d532e010204ea2d2018ea2d6cff040810c8988060c858c3944b8000817a0b08867a0bdb3f0102043226201832d630e5122040a0de0282a1dec2f64f8000818c0908868c354cb9040810a8b78060a8b7b0fd132040206302ad19ab57b9042e596074ace554eb9597bc9b5aeee0b5b1cb6ab93bfb2270690282e1d2fc5c3b83023f6db9fa0f5efe645085ffdee8cfaf0daa20c5c42de05052dcfdb77a020408cc10100c33486c20408040dc028221eefe5b3d01020466080886192436102040206e016f3ec7dd7fab0f49e044fe17e6b4bc3e9c8a5ebdec9acbc3a94625290a088614b14d45e0bc027f78e20f465e397dde21a95ed8356fdea65427345928020e2585d20975102040201001c1104823944180008150040443289d50070102040211100c813442190408100845403084d20975102040201001c1104823944180008150040443289d50070102040211100c813442190408100845403084d20975102040201001c1104823944180008150040443289d50070102040211100c813442190408100845403084d20975102040201001c1104823944180008150040443289d50070102040211100c813442190408100845403084d20975102040201001c1104823944180008150040443289d50070102040211100c813442190408100845403084d20975102040201001c1104823944180008150040443289d50070102040211100c813442190408100845403084d20975102040201001c1104823944180008150040443289d50070102040211100c813442190408100845403084d20975102040201001c1104823944180008150040443289d50070102040211100c813442190408100845403084d20975102040201001c1104823944180008150040443289d50070102040211100c813442190408100845403084d20975102040201001c1104823944180008150040443289d500701020402116879f1f84820a5d4bb8c1bdff96b3599e2f43bd68fbde12d35d9556d76f2f24f5b9f7ee4f45b968fbdf5a6daecb0467bb9ecdfbf3436effad1b7afabd1fe6ab39b39cffe73cbcb3f39bde2a3b5d95d8df632e7bbfbe61cf9cf53c5aada5e5fa35dd660372dc70e5f36f8afa7dfbe6eecda1b6ab0bb5aede29513addf7ce8f42ffec6d80d2b6ab5cb9aece7b2fff89b96d75ea9c9ae8a3b79e6d96fd76a5717b11fc1701168ae42800081fa0a0886fafada3b010204085425e03d86aab80c26408040f30b0886e6efb115122040a02a01c1501597c1040810687e01c1d0fc3db64202040854252018aae23298000102cd2fd0dafc4b0c6c8585c2f0d0c1c1a1a3474f1472b97cfbfc8e8e259d9d1dedf9d4cb2c0c1f1d3e599a353fbf63c139a72f1c3f7aacfc4d97f605a9155918193e3652d4b9c09ff91d0bcf59f605ae5ac5c513c5b4b5772c985779b5c2c8d1e112cd6c178ddbb6cf5f58ffc64ef5b1b2bab3cea5d8be33334fdd78ce6c9a7eeabc37bce903eb71ba50181a3a3078f8e88991e29da06dee828ececece451d67b5b81e1367639f117d8f21808614f6efb87bedc7fb6756b26ecbe35fea5d99c2c3dcd4d485c38f5e7fe3c6f1b39fdd77e4a39db3df25f66f6e5fdb571ed5b9ed87fb6e4ba7c2a1fed5376d1c982af55c27eedf377c7b67dd2b1adcb1e23d1f1fcce5ba9ffed1df2d9a3e5be1b9775fb7f250a9b8de678fdfd731bdcac281775f7773f1a2758f1c7878fde2e997d4fe74e1b9b5d7addc7fc1fda6d8bea95a2ed8c7fb9f19be7df174d3a9abd6f7c4d1811d1f5c7377b9779513756f797adbc68a2e575e1ecf398792d2ebf5c1ad374fa5c2ba9e4d9fdab2e5ae9e89af6eeedebce67d5b0fa4574a69a63377c84ff60dccfefcbcf0dc97c753a1383ccdbb4b5bc5c3ecb958e6b69deb925a6eefe8da50deddaec1a31548238303938f2c7d872a2f2a0c0d8e5fb4ae2bd1422eaddcfcfc24d74fb37d53f55ca88f73a746a678626460db3b2753614977cf5d7fb9e5539b7a26e6dfb5f9a6dfdc567e819c6241414e2518d26acbf09ef7dd5b7ce2597ceab9f5d91f8d3cbcedde8ff56efc8b6d4ffcf03bfbee2c9770e8de9bf7563ebea455592ed7df7768b67bc3f0c19dbba78a383675aaee2716adef2bfea496a9bf3f7c665b79caeeaf1f39b3b17869772a4f36db172d5b5e9efea9c1e1e92b1f1a7862eaec93072a2f3ab0b37cd1a6251d67d2776a708d4fe4173f3ccdeac5e3471eea2ecdb0fc8bfba6004b2776acaf7f29e75ad98ab31a3755583a1dac2cebc85fadd95cded2fdd5e786bfb1a3ef2feedef8b17bfa5efcd1e1877a3b4bdb07377f61cf91caabc4784e30a4d4f5c2c8f8436fe757b66c98fe70915fb0f473cf3d3a5ec40b090eacd7a7dc812f0fccbc3314f6dff740ae7c67a9cfa4c9f73af198964fe525c2d965e53bd6955fd73db67770da4b86e1fdf79e39d8f5d8de83d32e3a7e6857f9a2de9b5378bd7076b5932f04e7e71b170467d734bf318d3bbb8cf2f9c2c917caffdff5f87dcb2bef87dd5b1e9d788a7674b66749b3eead79370a86947b3b78f2e4b4c790f1c93bbabed4b36249f13178c625a915f7d87d7bcfbe370c0fdc517c7c1bcc2d5f114438a4463163a279efea2e3f09ef1f38f3aa69f8f0674ae37abff278f9d54cff9e17a67a5738fa583917ee5a5de7771766146a431281f1671727677912b670dd177b9774e6e6e7ca9fc948b2afe61d2318d2eeed0797f63e397864ea61a43cfd82dfdff6c4378e0fdcde35fb3bc0f52cb1f3fe4777940e950cdebdbff240d6d0def2eb98ee6d7ff6a1b07e86653d3566dff7a2ae9bcb17f40d4d120d0fee296de9ee5abeacebd6d2a9fea977208a6f3094df0aee5cd5b9a074893fc51731e1bc7ac94d3cea6fbf6de95f3df1dc59e9b06cc37ddfd837f2f0862e4d130c29dd06f28b578d1ffccde5767d70e5d2ebe7b57f64e35ffed3ce3d8387872b4322a57a26a7199cbb68d99de5f7deb63f71787263f1ff23ffb47157f1bfbb36ac787348f7ea6915a67732bfa8735d79b6fd87c7df4b281cdafb4071c3adab3bf3f98ef7965f4e7cede0d1f1825e18cf8cce9e25ede95518f64cfdc5dbf9fe3d7bf64efbfbe413fb264336dddaf38befda566e582ef799db56de705dfbda0dbd7fdbbf73ffe0e1b34222ddb2829b4d30a4d69279dd3b8efcc396c9cf3fe472bbfb1ff8e30faf7fcf8d8b8b21f147f7ec1c3afb504e5a85e5172cefb9a738d9fecdfd138f6db95c6170e0c1d2fc2bd62d5b982b34aab2520541fcc92f7e6ff955d35303e342c34f953facf5ded2878ef2cb56977ababbff4039e00b83fda5405dd2d32517a67af7e087d7af7dfffa0f4cfbfbc1dbd63c35d49867449d3d7d5f7f74cb92c9e2f6efeaffe4c60d6b57761543e2dd1bb6ee3f7c7cf292a8ff170c69b67fde2dbdc5cf3f1c797adfe30f7df19e75d38edd3ff6c0869b16ae68c8a7928a6f79b42f5b5d7e46dcf7e4e0c4bde25bfde5af38f4f416bf27e0806be9d1bfa7f434f3d003074b2f198e1edc5ebad5f42e2bbf7b39bf6b75e9dc407fe981ae70f86be537186e5db1a8b4d19fb240f153a177f6f4dc3aedefbaeede45893e665b0fc17ce7ea8ddf383efcfc33fbbef2c8d63bbbcf1c293db4eb9eb5372efcb44f25e572adf580b7cff309e4e72dea5c59fcdbbde1ee870b85a34307766f5df399d2b3ccc10f2cddf1bde31b1bf04c33bff8f64d9dbb1f182c7ea1e1f66d6bf2935f5ff86cef99fbccf95614c1656f5e567c9ba1d8a49d2f14ee3e79a0fc0643efeaf10f1de53b3a8b9f66d99e1bf8d650a1b37da8fc01df15cb17a5ff7651b06de87e785b5f43be47715e91fc82c54b8b7f57addff0b91dc52fb11fdebb73eb1df796ee870fbeffb65547069637e07e78de7ad3bdd02b8674bc0b07fbb7fef9e6deb33f155a3c44ddb9f2633b86bfb269fc933f071a73e035977b57cfdd2588febee2d3de9189af2ff4de728eaf43a74316d42cf98eaef28baac14343870fed2d7d777dda878e16de526edfeec1c34383e56f29aee809ef71b0919c8d396634db8a870f3cfae79b3ff1e91dfb2a4bcab7772cedbefbef9efd974de52b0d1e6dd4fd70b69a1bb24d30a4c43ed47fcff6befe2f1f183f487dd6a4f9e5eb378c6f6ad41bbdf9c52b3e55aa6060f7de037bfb1f289e5abea5a7111fc31f6708efdf7cc76f97dfb3dcddb7637b29172a3e74f4b69bd71737edefeffbf2ced281a4753d5d8dea637870a58ac2d13831b4677b5fdf831f1f9cf50069c78af5e35f66cc35e41b3321354f30a4d38d7cc7b2d26b8243f7aed975b8f2c94a79fe6fedd9395ec72c97a553606ec12de54f6b3c78dbcd77941ef87277fa187e857cf1c074e94de6e2a37fe9d3a8951f3a5ad0b9acf466e640fff65da52fb7fff632915a6408f1cfdc8ea5e5b2367f61e7f4cfe04d943a72706ff9a3c621569e724d822125f0896335b9dc1d372ef8dbd207a82722a0307264ef8edeb5e35fa3ed5ed3c043108b564dbc6a2989746eadf85e684a48414ff3e6cee2db0c137f967f6845c521e8f6ce5bcf7c0bb0a773fa576a27afe2ff1004162c5b7d6bb98eed1feefa48dfe347273fa35a281c1fdcb3e38635f7942fec1eff5841080537aa06c190927c7ef1faa71fe91d9fec93a50f502fb8765e7bf1eff50b977e60e2e7adf67c7d5b037fa04d2eb7a06bf29b16b93b3fb1aae2812f25a40b4cd3b89753a5c28a6f078d3fa6144fdfda75d6b79ae72d9ffc7988b99ed5bef931d9c8c9673f93e71bff7f7ef1fdcfec182f63f7e6dbdeb970f26e78ddc2f7bcbffc365b2ef7d0335b1bf8fcacf144e50a04437a8d58b4febeef3df3f85ddd679e5b4ecd7de717773effa3befaff0ce9a9098b8f73138ffcd37e61407ed5867bca23ba6f5db5706a68dbf8c8867db870aa9046fff49fe277d926be85d2b36cc623c7a2151397dd59fcd6db54c98d3bd116c051f2b6fcf877bfcffddb3e1ae1537c8af6e291035fda34f135b7e9252cefddfaf5ef0c772ff689b29cdfc730fd8691d2e9e2ebd6916323270ac537c0dada16b4cf6f9f17c243494a8b370d8140040ac59f6c59fc9550a5f7a1dbf2f3e7cf9fd7e8a71e81b894ca100c013543290408100841c0a1a410baa00602040804242018026a86520810201082806008a10b6a2040804040028221a06628850001022108088610baa00602040804242018026a86520810201082806008a10b6a2040804040028221a06628850001022108088610baa00602040804242018026a86520810201082806008a10b6a2040804040028221a06628850001022108088610baa00602040804242018026a86520810201082806008a10b6a2040804040028221a06628850001022108088610baa00602040804242018026a86520810201082806008a10b6a2040804040028221a06628850001022108fc3f93375660613a18c30000000049454e44ae426082}\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u30475?\u30475?\u20027?\u35201?\u30340?\u20107?\u20214?\u26159?\u65311?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 >>> pipe.zrevrange("osrc:user:gmszone:event".format("gmszone"), 0, -1,withscores=True)\line -\line ->>> pipe.execute()\line -[[('PushEvent', 154.0), ('CreateEvent', 41.0), ('WatchEvent', 18.0), ('GollumEvent', 8.0), ('MemberEvent', 3.0), ('ForkEvent', 2.0), ('ReleaseEvent', 1.0)]]\line ->>>\par} -{\pard \ql \f0 \sa180 \li0 \fi0 {\pict\pngblip\picw538\pich538\picwgoal5400\pichgoal5400 89504e470d0a1a0a0000000d494844520000021a0000021a0802000000e9db73710000012f694343504943432050726f66696c6500002815636060327074717265126060c8cd2b290a72775288888c5260bfc0c0c1c0cd20cc60cc609d985c5ce01810e0c3000479f979a9201a157cbbc6c00812b9ac0b320b558e208f2bb9a0a804a8ea0f101ba5a416273330301a00d9d9e525054071c63940b648523698bd01c42e0a0972068a1f01b2f9d221ec2b20761284fd04c42e027a02a8e60b487d3a98cdc401622741d8322076496a05c85e06e7fc82caa2ccf48c12052303030305c794fca45485e0cae292d4dc6205cfbce4fca282fca2c492d414a05a88fb40ba1804210a4121a661686969a10916a522018a0788719f03c1e1cb2876062186b028b9b4a80cca636432666020c4479831478281c17f290303cb1f8498492f03c3021d0606fea9083135430606017d06867d7300c3af506fec25acb40000000970485973000016250000162501495224f00000019d69545874584d4c3a636f6d2e61646f62652e786d7000000000003c783a786d706d65746120786d6c6e733a783d2261646f62653a6e733a6d6574612f2220783a786d70746b3d22584d5020436f726520352e342e30223e0a2020203c7264663a52444620786d6c6e733a7264663d22687474703a2f2f7777772e77332e6f72672f313939392f30322f32322d7264662d73796e7461782d6e7323223e0a2020202020203c7264663a4465736372697074696f6e207264663a61626f75743d22220a202020202020202020202020786d6c6e733a657869663d22687474703a2f2f6e732e61646f62652e636f6d2f657869662f312e302f223e0a2020202020202020203c657869663a506978656c5844696d656e73696f6e3e3533383c2f657869663a506978656c5844696d656e73696f6e3e0a2020202020202020203c657869663a506978656c5944696d656e73696f6e3e3533383c2f657869663a506978656c5944696d656e73696f6e3e0a2020202020203c2f7264663a4465736372697074696f6e3e0a2020203c2f7264663a5244463e0a3c2f783a786d706d6574613e0afe04f17100004000494441547801ed9d09781e5779ef3f59bbb559b22c4b8e23dbb1122f49488863b29bdc5020f4164a439f5b5202a55ccad2f669435ba05ca017d284b6f402690bbd10285c08049a26697042c90e8ee36c8eedacb6ecc88be44dd6be5ab236dff7f328a34fdf3a33dface7fcfce84966ce9c39cbef3da3bfcef69e829e81c118ff20000108400002f9115890dfebbc0d0108400002108813404e68071080000420e00201e4c4058824010108400002c8096d0002108000045c20809cb800912420000108400039a10d4000021080800b0490131720920404200001082027b401084000021070810072e2024492800004200001e484360001084000022e10404e5c8048121080000420809cd0062000010840c00502c8890b10490202108000049013da000420000108b84000397101224940000210800072421b800004200001170820272e4024090840000210404e68031080000420e00201e4c4058824010108400002c8096d0002108000045c20809cb800912420000108400039a10d4000021080800b0490131720920404200001082027b401084000021070810072e2024492800004200001e484360001084000022e10404e5c8048121080000420809cd0062000010840c00502c8890b10490202108000049013da000420000108b84000397101224940000210800072421b800004200001170820272e4024090840000210404e68031080000420e00201e4c4058824010108400002c8096d0002108000045c20809cb800912420000108400039a10d4000021080800b0490131720920404200001082027b401084000021070810072e2024492800004200081221040407302d39333c33de3fd2746272763c5c5b1daa5158b9a166ace84ea43c00101e4c401345e5187c0c0b1815f7defe553a3f3f463c1d29277ffcfb5e53525ead4939a40c07b020c7679cf981cc24a60b8e7d443ffd496a42552d89913133fb9fdb589b1a9b0169c7241208c049093305a8532f94360d7dd3b3365547972fad9a77a323d251c02104825c060572a1342c242e0f4d0e0e4de574f0d8ec9ac464975f5c2f3562d58b2c4adc28d0d4e1c6b2f36522b6b287fdb1fb454d5979e681bfad577f71981c75eec89bdbdd1adec480702ca13404e943771542b38bef9cea1dbbe69965e069e4ec66243bf7de3eabffc644169a919eef862a87bdc7c77e3f5678996c8edd2966a3330d63317612e902b084020030106bb328021385002633ffd56a2969865a9fef94ff77de91fccdb7c2ea64ecd98af57d4cecebaf7b4f79b81a50de5e635171080404e02053d038339231101027e1298e9eeeef9addfca9263c5f7be5771e1855922587924f3f04327c68c98fb9fef3ed69afc215cfe7bab565eb2d84a52c48100048400bd139a41e8084cee7ec92c53c9bbdfbde4d147963cf964d5a73f6d068eefc838856ec6c97921a35b679dbfc8f8a96e989d44497c6bd9ba9ac45bae210081ec049093ec7c781a3081f26bae29a8ae91c992e2cb2e338b323d3c645ebb74916612f1febbda5d4a9c6420a00501e4440b3347ab92050be7e6c30f3db445d6779d3e756a72db03662dca5b5acc6b572e163595bfe9fae532ba75cea5f5668233fbfa078ec9f43fff2000014b04d2fc5166e93d2241c03302c56fbaa8e89ce553078e480eb54ffca2fb895f24655579d59549210e6e0fedec3cf8ca315930565adbb0e93dcb8d1464b2a4b2beece587e259cbbfeeceb145cbe66d9837c2f92f0420904a80de492a1342022620435b159ff8b34c8528fae33f96e1af4c4fad870f1c3e7662f74cefee9963db3ac56d97f9e2d917d69ad743c767e7eacd102e2000814c0490934c64080f8cc0d4e1c3839ff94ca6eca7fef55ffbb66cc9f4d44678518519b9ffd89c6c0c9d98db0c5f5e87db2e13121710c8410039c90188c7fe1338f5f0dd89992ebce92659d655d4b2d20c1cf897efc86c8a79ebeca2694d93f9e2fdfff6da9ee77b8fbe36b0e78957b7fee8b819deb06c4e72cc402e200081b404d87792160b814112e84a58c455ffe083866315d18ffe0fffbe31a12285abbbe79ea2b3cfcea79432c0f5c83fbf38d83537cc9594da92b5356ffbc3739302b98500043211a07792890ce1c113985c7daee9a44b26544aaebcdac53215162fb8e2c6b5350d8569d3ac6c2cbff28615691f11080108a425c0caaeb458080c0581e2fdaf4ba7c4f4d035bd7b97bbc592555bd77ef4fc833bfbcca55c927e4d6379cbe54b64c5b0e88dbbd9911a04d426c06097daf68d64ed866ffdebb1077e6514bd6bfd9b577cf84699101fd9f25fd3bff8b5599f86e79e33af5db9109f2b924e517101a766b9c293443424809c6868f4b05779eaf5d7fb6eba294b296bbefad5d2b7be354b041e410002fe13a03bef3f7372cc41a0e8dc73133d7425c596855e684912136e21100602f44ec26005ca908680f451c6fefddfc71e98f3ad527ad555e537bebf64e35bd2c426080210089a007212b405c83f2b01998a9feeea92288535d5ae6c86cf9a1b0f210001e7049013e7ec781302108000044c02cc9d9828b8800004200001e7049013e7ec781302108000044c02c88989820b0840000210704e003971ce8e372100010840c024809c9828b8800004200001e7049013e7ec781302108000044c02c88989820b0840000210704e003971ce8e372100010840c024809c9828b8800004200001e7049013e7ec781302108000044c021c9f65a288c045ffa9fee78e3c79722a565c5efceee6df4c2af1d8d4d86bfdaf1c1f3a3e3935595c547cc1920b57559f931487db999191a98ec3a3e54b4e9e2c1c1b9e3480c8c5d8e0ecb511d27ff46412ab1f55cd3b9dbebeaa6449859cc332f76f6149e18aba72e37ec5e2f285c5f1731ecb4b16acaae7c0f9394a5c294c00398992715fe97de9ef5ff9aa51e2243979a16bdb6ddbbed45f30ef97e0d292d5b75ffbf74d0b9745a9926e94d5d00c4969aab555fe3bddd171fae4c9e9de9ed3dd3d46f2fbaeb979f064693e59f50c4fc84f520a3b3a069342ccdb758d95726dfcd7109bfacae286ea3233021710883a01e424321694aec99d2ffd73dae28a96fcd5d39f8915243f3c31b1ffc38f7ee267d7ffb0b6b436f99942f786788872ccf4f6cc74f7181212b6faede91c912219ff4d2c9b08cc92aa92fa8a12b9a02b934886ebc811404ec26eb27bf6ffe4e5a3af4c4e4f3e33f8ac9475f8a5e1aa8baa920afd77db6f490a316f4f9deefdd1c1fffcf3b51f3143a27e6188877438443ca6db3ba60f779c1e9dd727b352c1eaa9eec1d8722b31bd8e2302b3a7735e26cd8bcb65184dc6cd4460d62f4bb6f5bca8dc40204c0490933059235d59f6f5ed78b26ff65cf493074e766dee4a92930343fb7b27e37ff9cabf9ab225dfb8f26be754af7ef2d8afffe6f9cf1b81bf3af860d4e564fa44d7d4debd53873b26a50bd2de61d44bd5ff76f48ec98f396e26eab2b2aebcb9b67c6d6305d330aa1a5d8d7a2127a1b76361b159c485e72c5cfdc5d5e66deac5450d1b444b247cd3b26bcda703a74e98d711ba98d8bd47ba20327235b5b7d541ff234235cd5e54435dcc38d2651181b9f4ec1a3a2e26132e424200390989213216e3bc9a0db1e6f82caefcdbd9fd5ccf58bf716dfeb7bc68763591846c3fbcfd40cbfe33bd9347cd0817d65f615e87fc62f2e0a1c95dbbe21272660addbbd25674ef8bd58462b0cb6e1dcf0c8e8d3cfc5ab7bc28d262fc202d763112df0b02c8891754dd4cf37757ff0f33b9af6cfff423479f366f8d0b59b8f58ee6b73fd211d78fb1d3bd1f79e2434911fee0bcdf4b0a09d5adcc854ceedc35b9b77572e74e9d7b210e8c62488bf1a2e8ca86e69a0dcdd5ac16734092575c21809cb88231e044dedff241434e52cb7176f5baf3eb2e480d0f3cc4e8884cecdaa9fc5c883fa80d69f9f1f34765438ce8ca35ab6b9968f1873cb9980490131345542f64f7e267b67c3253e90f0fedf9dfbbbef6d58d5fc814c1e7f05d3d3bea9fdc5df9e8d3c17644aadab6c7365ce773ddfdc94e76c3c85098fc2c2c2dbc34de5fa9b974c5227fb22617cd092027916f00dbbb9eea991e35ab71f9d22bd6d6ae7fa673dbde81f80e3ef9f7fcd15f1e5873a331456f84f8ffdff6a1434f1c7becc59e5d639363ef193beb4afb4b7bfd2f73d4733c796afac9d7fbe4472a22a2b2e9dc3a7425ea360d79f99193901b2877f19e3afa8819e996b7dc66ace9faf0da8f7c65e797cc11b057075a039193ee935d8f9f5191beb15eb390bbea06af346f82bb282c3a3d3d95b2f333b8f2789ab32c3b961fa3bf724d4bddfa26b6b378ca5bd3c49113a50c7feea2f3ccfabcb97ea3292766a03f17a2222ff5bef8f4896d47860fa7e678b86c64bca9aeec78fcafe600ff55964c0c4ee5e56725c0c23bcbdaecaf30bfe20c206f6527809c64e71389a70bcc52f68df7991eba4e9cdc6b86fb73313a31125791ce6dfb067264ddbab6f2e2a0e5c41f26e1ccc59c5f912d2cef5ab7e492e6eacab2b9ed4de12c33a50a3f01e424fc36ca51c2f3ea363c72f42923d2cdbffaec872ff8f0e2f28aa3fdafdd79f07ef3cd0b16ad35afbdb83006b564c246a646aca4bfad71f0622bf1bc8c53189b8ac5f4ea9da4e2943d92df79aac318047bc7ba7a1683a52222c43a01e4c43aab90c67cdbf2b7ffecf51ff68c0f48f9260b07bebbe7f6a482beadf97aef264e5afbf73c71243ec79e9469f6db308c77554cf5f7c5701d1f37943908269b5736b5d46d3a6f7176f3f114026909202769b18436706e5ccb2ca2780bfeeb4bbef4574fdf6c86245e9cb768ed9f9effa78921ae5c1be35a9bdb7f9e38c76e2b65c6bb6ce1f227b2b179e5ceed4765bafefa75f5ec88f407bb32b92027913265e1acb795a4425fdab0f1a7eff88f7bf7ffc73dfbef361fd5972f797fcbeffff715ef4ef4c2623e757c21e35a0f766c3696fc3a4e445e7cb9fe64b0e35d855396c6e5f2a96344df95ce8ab17345d616ffce454b119588dad1ff6217f40c643cf0c7ffd29063fe04c4c1b024221262cec9e79fa691828c6b3d786873ce6976ebd9fdedfd0b8bfb87adc77737e670cbc6d61a1b3b19934e6374b730614e4d46c06e7873236b8bc36ca390948dde49480ce15a31bc9826715d488cda1e6ba95db13d3039718db8ea09c908d86dbf6c635a45753bbb503fe4c405880a27e1919018c4b6ac3cf9a1ed81c15b303e1cab092cf7c8656c4cabdcfb52e7fb2e6a64ae3e72e6f3a7c00c76f9c3397ab9782a24268e60c7bbb66ff8ac59929c17da0e76a592915d90884a2a1642e89dd0069209f8232446ae8c7725d38fc2bdec8294dd2a4fb6f531a7120573f95746e4c43fd6e1cfc94f213168bcde30bd22382e5ab9ed721db339a782a8b8ce36a209222711359ccbc596e5bf3fdcfb0317576d592cdf630d9dffadaca4707cc2627c77a369e8b6cb5d80929a292a1f78cb3236d5bb8e375a092227d1b297fba5950d890f746c7ee2f063ee276d2dc5ee354b1b5f4ae329d2dadbc40a050111952f6cde27fb543eb07119eebf426192200a819c04413d34793e7dfca97fdfff538b8eb63c2af5abcb671a5ff228ed1cc9e2b62b07209b8fe56c95173a06af5fb7e47d9734d97c95e82a10404e54b0a2833ac834c9ddfb7f96d681bc83d4f27925c0f12edc76e563b8b4efca8efafb5eec7c727fdfc7af6e66e7635a440a0722270a1b377dd56474ebee033f7be6f8d3e91f07113ab4b2beb6f558103993a7270464e997b1f3f163579f8d8f164f108732d1342e0543594e0ae50e81cd07efff5fcf7f36545a2215dbb322983f6b70dbe54eabca908a4ca87cea9e3df7ee3c9ee139c1aa1108e633568d6214ea23a35bff6feff71d3b00f6b48a5b96760572dc6f59ffe158cdb99e568dc419fbd2a70dd03b51dfd632baf5b3b6bbbefee23f86534bc400838593fd6b97a96f095d6b688c7dfde8b92323e393ba32d0a2def44e143773983b2589e865bcebcad6c4003fae8b078ee3b6cb0fd067f210a7f75bdbfa643665e38a5adf3225233f0920277ed2f635afc03794d8aa6d20e35d653d4762016ecab7054889c8b2eeebf6c70f6d68ee1751617b8a12269d570906bbe6e150e6463a257fbbf3cb016e4eb44b52c6bb46562db5fb16f1a3486047c7e0a7eeddb3bdbd3f8a85a7cc5908d03bc90227928fa2d5294944dcb6b2f4e28389017e5c9796ce9c3ac51f557ea04eccc3e8a66c3a77885df48958a27e8d9c44dd82f3ca1f95999279857ee3665be3a0ffc7fd96154e9e8a95be5104feef2b01d945bfbb73840d8fbe42f73233fe2ef392aebf69877cf9564e1887cb46c69bea724623824a048c455fec4d51c3a6c8890a76147fc0b7bcf0bf23345392097aebdaca4c8f3c0a2f3d7dd2a39449d63a01d99bf2b99fb71eec19b5fe0a314348003909a151ec156957f78e5b777e390cdeb7ec953b5d6c19ef4a17ec6158e934bfc23cc46b3de98edeb1af3cbc7fcbde1eebaf10336c04983b099b45ec95479ca63c7868b3bd77421c5bc6bb266bab8afb87435c468ae61501999fbf63dbe1f681f10f5db6dcab3c48d74b02f44ebca4eb65dab282ebffecfa0795b4c4a025c7fd7a892d39ede2b1bee420ee032520bb1d65e0ab6b683cd05290b91302c889136a81bfd33e74483c39fa7f78a20f15dfb2d2d7c98c921146577cb0aabd2c64e0ebf30fecdb7d9c4eaa3d6e81c7464e023781ed023c76f891db76dc12ec9957b60b6df985dd95fd32de65393a11d52420035fe2e29e155fd1b22e7212257bc900d7bfbef22f77b7fd2c4a85b65f563fc7bbe26ebbf8175602b2e2ebeb8f1dc0716458ed935c2ee424994868ef6580eb6b2fffe38b3dbb425b42b70ab66bb97f7e67e36ebbf8176202e291e5b687f73395126213cd150d39996311e62bd192afbffc8f6aac06cec9f9d9455dd3652539a311411302c6540abb52c26f6ee424fc368a6d3bb655b444d5c992b406e85ee39f3b4871db95b60c048687804ca57c61f33e76a584c722694b829ca4c512a240d1921feefd81565a22f45f5deedfaf7871db15227b5394cc0464570a93f399f104ff043909de06594af083d6ef89966489a0eaa3c71a3a19ef52d5b8f9d44b26e7bfb3b59dc9f97c187af72e72e21ddbbc5296455ca225cf1c7f3aaf54a2fcb26fe35db8ed8a5633113fc432398fa284d06ac849088d12132d91455c3a6b8958e54063813fb6c16d973f9c5dcc4526e751141779ba951472e21649d7d23116046bb2882b0b3539ee37cb531e694ec05014967b85aa192027a132474cab05c1d9d1cb71bffd6b97658fe3cad3f201b69eb802d2ef444451c409318ae237f7ccf9212799d9f8fec4d012dd167165c1bc67851f1eaf174cfaea252c4b7d796497802c204651ec42f32e3e72e21d5b7b29a325a9bc18ef4a65424812014351d892928425905be42410ecc999a225c944cedcfb33de557e7c5fdadc098c0a015114d99282a2046e2fe4247013ccce9730c695d612ed4d9e8f77158dfa7d0464da9a1298270114254f80f9bf8e9ce4cf30af14e89764c7e7ff71bfd9cbc3d33013405182b50e7212247fb424277d39ee77bca92e67b43c2354944de59902af8784008a12a0219093c0e0a32516d1b7aeadb418d371b4a205d38edfe5c5b011405182b20872120c79b4c43a77c6bbacb322a641004509a425202701603fd9b75f3787f3f950f661bc6be10cb3f1f998288ceffef88563ec70f4d930c889cfc0630b7adb1a1ffbeb9b26cbfcce38caf99d58eeed7857d1cc4494f150f63404d8e198068ac741c889c780e7272f5a52f9f8e70a26467fe3e89e3f8ad5ce7fc85d46025b56b2713d231c1e642280a26422e3513872e211d874c98e0f2ddc7aab6889f1cc5094b2059eefab4857948885edaeec9facadf2aed0b8edf28e6db0291b3b1cf166ef8f1590137f38c762e343154f7cae70649e975c51942f0c4fa128566c70acc5c3ce1c6ebbac9820a271f066ef9be190135f509fd192a2be83a9999d3bd089a2a462490d61bc2b9509211609a0281641e5190d39c913a0a5d7cb777d37ad96182fa3285620ca789777c7fde2b6cb8a09221d4714e527db8f45ba0ae12f3c72e2b98dca5ef876c9fec7b36783a264e7633cf5eeb85fdc7659e11ff538722af08f9e3d1cf55a84b9fcc889b7d6296e7ba4b475b3953c4451bed9d9bbbc789195c87ac67975f98c9e15a7d66e117878770f8e87dd82999a0e7292cac4b5105916bcf0d9dbad27573539f6a5a3ed284a26628f35747a37de85dbae4cd8150b970df36c6ff4c8a6c8894760e3db15658b89ddd45194ecc43c1cefc26d5776f40a3d95031cbb86c615aa5058aa829c786389f1a1f2e7be616e31b195078a920517e35d59e0f0c82201d98cf28d5f1d62338a455cd6a32127d659d98829635c599672e54cc850948b4b1a72c6d42dc2f6c5bd1e55b97aaadba3944936840464a1d71d4f312defb265901397814a72a52ffdb8f8c8b379a62b8af2b9832f5f55b234cf74147bdd9fe37e15834675d212d8d13178efcee3691f11e88c0072e28c5bc6b78a3ab695bd7257c6c7361ffcd9c197509424667b56e096260909b70e09dcf762e7f6f67e872ff35a0a01e42405491e0105c3c76d2de5b292158a924469cbd2798e6a929e3abeade8dee7f85d5e8c2e0119f2625ade2df321276e918c7be54af4f0e85eba315194b71733ea354b94f12e179b164919d3f27070850072e20ac67822d93da9e499cd470fbd84437b9321e35d260a2ef22720d3f2ec96cf1fa3a4809cb8823126bbdf737a52c933278e483101eeaa73fff0c4aab6ed66fa5ce84680ddf2ae581c397101a34c9994effcae0b09e54a02453108f970dc6f2e53f05c35021c069cbf459193fc19c63c9a32495b3214c5c0d2bad6dbe37ed3c227506102c6415b0a57d087aa2127f9421687c1f9ec587490bd28caada331cd0fdddad6e8fe7857cdc2530eccc12bca106012254f53222779012cec7cc9a2c3e0bcb249791987f68c77a5340a025c20209328bb8f0fbb90909649202779985dce587cf2d63cdecfeb5514a56375755e04791902e9087ce7a90edc79a503933b0c39c9cd28530cd9b1e8ccc963a604ed866bae28cf368dd825963d3e6ebbb2f3d1e469cff004eebc9cd91a3971c62d26ce54f277cce530ef84d70c45d1f3881439ee77b2b62a01069710708780b8f3c2f98a0394c88903686736c0db3917cb511e565f1245d1f6d0ad632db55631110f027608480785212f3bc0e2719113bbc4e2f1031fe64a2ab4b647a46c59793209453eb7b8edca879e62efcabae1db9f38a458a5bcae0e72629b704886b992caada7a230de95d40cb87591c09ece1186bc6cf1444e6ce10ad7305752d10d4559535a9f14aef66d6ff322b72ab8609c15a26eb154241d86bc6c191239b1852b74c35c49a51745b9e5c0ab5a1d91e2e271bf15475a937872ab390119f2faf1f347358760bdfac889755631d9b41886d55c394bacd511298f35744e9795e4644204083823b0b5ad9f8d8d16d121271641c5a3953ffb0d1bb1038daa95a274af71ed3098c2a2d381da8dccc34840363686b158e12b137262d52672027ce18827e7005a2d81cd78fa288a8be35d9525133631135d7d02b2b19153e5ad981939b14229262ee85d3c01de52966e441245d1e1d02dc6bbdc682ca4918d809c2a7fb067345b0c9eb1efc4621b58f8cced1663862d9a260eed8756bab39ead303615360b529e9010f8c9f3c7425292d01683de496ed3c84693a2ae5772c70b6b0c1d14c5ade37e2ba6fac36a46ca153001b6a1e4340072921351accc9793167397238f18ca2bca96a5519ad6cac392bc1a24811fd341c98a1f39c98a27168bdc0c7ca6fa88a2dc3c55a5eaa15b838593fd6b9765aabbf5f0c2a931eb9189a91b01e6e4b35b1c39c9ca677ca874efcfb3c688d2c32b4ebcfe85e1295515c595f1aeb2fec351b22865f59dc0437bba710d99893a7292894c3cbc7ce71dc19e6892ad708e9e297c440ae35d8e5a042fd923c03ef92cbc90938c7016f4b6951c7822e3e3c83e50555164bc6bbca92e4fb3e0b62b4f803abc2efbe459349cd6d0c8495a2cf1c0f21ddfcdf82ce20f0c45a92baa88783d928bdfbab63239c8e63d6ebb6c02d3343a8b86d31a1e39498b25ee9e2bd28b83d3d72a215414e5abc78e29768ce3b6c6c1842a720901af08c8a2611c79a5c2454e5299c443ca5ebe2bfd038542d53b22e570d948fee35db8ed52a88d7b5895fb76757a987a3493464ed2d84df9ae895967f51425fff12edc7699cd838b2c04e8a0a4c2414e529944c973709ad2db0c524c515eae77f3b85f9b2c89ae17013c0d27d91b394902122b6e7b245a9e83932b60ff5e14e56b875ad538742bffe37e71db65bf0569fa86ec6adcb2b747d3caa7ab3672924ca5f455f5674d92eb7ce65e1987f6c75a6ad356d062206ebb2c82229a10b8efe5137030092027268af885865d93c4faaba1285b5632de956855ae3d24400725112e72924823a66dd7c4a4a080a2e439de553cd667d2e002023909d04131112127268a9838a2d76dd664aef20957a228ef2d72edb8dc8484fdbbcc67bcab6484d170ff2ca5404e74504c232227268a5869ebe6b91bbdaf6e6c8ff6318eaf374ceb6d406aef2b81875af913240e1c39996d76faec35b1f89d45fa88947c8efb2d1e386e1111d1206010e8e81d6393bca0404e66bf081db6c1dbfdf823ad28dd6b1c8ed795f51cb10b8af8106093bcb401e424fe2188f360b53d7439feda0d4589e21129af2e9f715c6b5e84805d02b249be6b68dcee5b8ac5474ee2062ddd7bbf627675b13aa228513c742b9ff1aed252a4c8c516a44b52f7bda8bb172fe424161b1f52f25c13173fe2881e91e27cbcab70d2457a24a50901390745f30e0a72225d131674e5fedea3a828071a0b72578c1810708f80288a7b89452f25e444e4449dd3e03d6d80915314c7c7fd969e665fbda74d49d9c4e5247965eb66a162bacb89785551ec34780b46771e4514e59b9dbd5139744b8efbed5fbbcc416d4ba7471dbcc52b109093e475760aa9bb9c94eca36b62ef9740b41cdaef595164af7ac486407e04b6eed777bc4b6b3989af0fee3b985fe3d1f1ed08298ab3f12edc76e9d8ac5daab3ce2b86b59613d6073bfe82a2a22832de35b2caf67e46dc76396e18bc2804b45d31acb19c8c0f151f798ed6ef9880a128179734384ec19f17db5696fa9311b940c020b0e3f0d0c8b88e6bcdf59593e223cf32099fe7f72f8af2b9832f87fc18c76d8d8376ab89db2ebbc4889f484026e477b4db6e75892944f45a5f396112dead261bf223520e978d8c37d5d9aa2c6ebb6ce122722a013d7d0c6b2a2705c3c799844ffd061c87845c515ad7563aae1a2f42c00101f1317cb047bbe5e69aca095b171d7c21d95f1145797bb1ed49efec69baf5d4c178176ebbdc82af6d3a5bdbb43bd6535339293af2acb6addcbb8a7ff450480fdd92f1aec9da2a5b152fc36d972d5e444e212013f229618a07e8282772521687f87ad4ae437b444a3ec7fd7ac48a64d5262087feea36dea5a39c941c7854ed761c6cedc2a9285b56da73c3b57046c79539c1b61cf5727f78b75e2ebc749413b69b78fddd8650517657f6db1aef2a9a99f09a12e92b4f40b7f12eede4a4a8631bdb4d7cf88c45516e1d8d85ea1847c6bb7cb03b592412900d28dbdb3572e1a59d9c141f7926d1de5c7b47206c0eed772db7b151b97c8013e3bd6b1a1aa5acd57e460de504c72afe7dcca152946717754d979558acfc82497b732d1693259a6e04b41aefd24b4e18e9f2ff630e95a2383eeed77f6ee4a80601adc6bbf4921346ba02f9440d4509c3a15baf2e9fb148a0fcf83e8b31890681ec04f419efd24d4e18e9cadef2bd7a2a8af2a5a3ed812bca630d9d16c7bb8a465928ec5563d02ddd3d2774f1b6a2919cc86159ace90af04b0ec911298c7705d806f4cc5a9ffd8c1ac949c9c1c7f46ccde1a9751814c5fa785745d95478d051924813d0c47f974672829fae307c9086a2ac29ad0faa30db17f75accba68c1b4c59844834076029a8c77e92227e2911e3f5dd95bbc6f4f45516e39f06a50876ec971bffd6b97f9565932828010107ff55d43e3caa3d0454e8a4ebca2bc2da355c1008f48d9b3a2c80a2bdc7659a1441c8b045ed0e07c465de4a4f8309be12d367bffa205a5285b967659a9246ebbac50228e45027b3a472cc68c6e345de4a4a8fbd5e81a49e19207a2288c7729dca2425bb59d1a1c7fa2859cc801272c110eed67268af247b15a9f8bd7de947bbc0bb75d3e1b45f9ec761f1f56bb8e5ac8091327216fc4fe3bb4b772dc2f6ebb42de6c2257bc3dc7151fefcafd379ad7362becdd57f0fa7f4d4d159795178d6ff8786a7625fb1e98e9da1f2b2a8eadb862aae992d40839438aba9887cf0929e008a228b1b3d67d37e693376f39ee77bca9aeecb876a779076c66bdb3577efa247839a9fcc5c78a7af71bcd2cad9c543ef6e98253712f0583c59f8f399313967545e133f659515ad7565e9c554ee26ebb6aae8b0239ca180d02cacb49c0835de53b6e172d79bd37e37e3189606889e3f62213278edfe5459f0988a2dc3c55e5cfa15b39c7bb70dbe5b3f575c84eede993207b2745c7772e7cf26bd286ce5d5c98d89264f8abecd77f333136593c7cb07c3c7ed8f27347a62e5beeb0a84c9c24b20dfff515275eaf5fd4786b55d1f88cb73e4e18ef0a7f6350af84327db2bea94abd7a19350aac7752706aa8e2818fa6c55a303152d6b1adbafb79434b6e7df2d40bc7acfa154f4d9089935426210ff1ed889413cb2bb3a3a859782a7b049e42c01601b5c7bb029393855b3e57341aef79e4fcf7854da57ff216ab87e8a5a646ef249549f843fc51942d2b397231fc6d41a9122227ee9bb3f8d0afcb5edb9c29ddd32595932baf357ea61a2fce14cd4ab838a5b7128d38212460284a5d51857765db5dd93f59abecc88377dc48391f02077b943dfe2480de890c73553ef047863da6ca164d35ac4db2cdf4e2f3867ee74ee367f4da2f273db5755b74e2655bf1891c2a02a2285f3d76ccd343b78eb564db41593d65a9031d2a681426e404c41d64c84be8b87801c849d5831f5a3035eb5cf3e4bbfee57499877f1e160e1c708c8617c340c0eb235218ef0a8395b52a437b3f72e292c14b5ff96171c70e23b1536bdf2b235a2e259c3e99050307d33f20343a043c5514c6bba2d3101429a9c2679ff8da3b89af007ee216b3519c5affbb45c777159c9a733c20b7f26346c8ffa2a80f39c99f62f02978aa28bdcd8b32d5b0a27b5fa6478443c0190106bb9c714b7eabfcf9db139d7e57df7753cdcfde5374628f194f6ee5c7bccdf3820d8c79020cd5eba2285f3bd4eac5a15bd68ffb0d15100a135d02aa6e66f4b577b2607cd0cf1650d837ebbbc5cf4cc9cb53025e38b47faca173baccf94a744feb4be24a1238d4a3e60a755fe52416f3353be6e195fc14bd5094ee354bd3b2aa6adb9e369c4008e443a043d1d978879e4b9ca11cddf4c582cb3f95f46ec5af3f5bd4d96a040ebeffe7494ff3b9651e3e1f7a617e571425b6eaa26d1327dc2aa48c7735bee45662a403811c04dafbd53c37de5739910d25a9984f97cc2d1476e67f3e354d238479f84c641408174559b2e2a2fba7dc511419effa0d05a050858810507536ded7d1a70cb6f6a40cec87cf405b9de01bdbdd3cc6b17fedb2b46870db95160b817912e81a52b083e2c9af727ba017945b8c5f6c31de99680b46ddf9bbd54e9ec4f59b808bc738ee59e16b4fdd6f52e41732023da393212b910bc509fe1312672a59ea21c35fbd9f3a9c2542a64785fdec38c9c446a970b70edddab2b4eb4aa5c05099501350d2537d087a27de189d55c2de700d63aa461f25cf43b7060b27d38e77e1b62b8c268f7e994627bc3dce271042caca49c1949a2bbb036925e1cf5414e50bc353792a0ae35de137b43225ece863ee243ac6e49893e8d8ca9d92e67f44caae3a5fb7d9ba536d52892601251d412ada3b191f8a661ba3d47911c853518ce37e934a80dbae2420dcba42e0e4a9e99171d566e3d59493421c09bbd2e42398489e8ad2ba36c771bf11444291434aa043b9cd8c6aca899c361fd21644b1bc27208af2cdce5e67876e6d6b4c1eef5a303eec7d91c9414702eacdc6ab2927ac12d6f1eb4ca8b36387f6a9e35d1547663d002524cf25045c20d0d1abda6cbc9a72523049efc485e61ee9241c2b4ac7eaea48579cc2432028026aca09bd93a0da53a8f275a628cf3625ff2d5258743a54f5a2306a10d8d399dcd2a25e2f35e524ea56a1fc6e113014c5d6a15ba9c7fd56964cb8551ed28180c204d49413369d28dc64ed564d14c5ee1129c75a6aede6427c08d825d03daada9f296aca895dbb125f7902b61465cbca792e150a630afac350dee2e1af60cf3072127a2b150c1f0f7d1929600004ac2b4ad27857c5547f00c5254b0d0828b69351c1dec982d12e0dda215574424014e5edc5e9cff14d4a8ef1ae2420dc7a4140b19d8c0aca891756274d65087cf490a543b75e6f9836ab5c3835665e730101086422a0a09ce09a3e93b10937085839744b8efb9d2e2b31e297f53b397107da10c84940b18df10aca49c1e4bc79d49c1625828604ac284af71a4bc3621ad2a3ca6e11506c63bc8272e296a549476d023915e5d5e5330601dc76a9dd12a89d5b049013b748924ef40888a2dc3a1acb74e89639de85dbaee8999612074140413961ee24888614d53cb33bb41f5a591fd58a51ee281060ee24ec56e258dfb05b2864e5cba228e671bfb8ed0a99d114298e6247fc2ad83b51a4a1510d1f096452942d4b67f730e1b6cb476b90555409202751b51ce576978028cadff58d261dba355838d9bf7699bb19911a045425809ca86a59ea659bc0b2d1fe2f1d6d4f521463bc0bb75db669f2827e04149493c2fe03fad9911abb4320f5881463bc0bb75deef02595f90414732aaca09c144c8cce37197710b04120495164bc6bbca9cec6fb44858065028a391556504e2c9b928810484fc0509435a5b3ab845bd756168ff5a58f4a280420f00601e4e40d12fc1f02090444516e39f0aa718ce3b6c6c192919e84875c4200026908202769a010040183807144cae1b291d1da8530810004b213404eb2f3e1a9ee040c4539d830a03b08ea0f815c0490935c8478ae3d015194ea72e444fb7600805c048a7245e039047427f07acd153bc62ed39d02f587402e02c8492e423cd795c058e9e2ad656ffd71fff97ddd65ba32a0de10b0410039b1018ba89a10385c7df17d93573c3ab83c36ac498da926045c20809cb8009124d420305554fe7cc575778f5cd0d653ad468da80504fc24809cf8499bbc424aa0bb6acdd6824bbfdfb33ec6c1d0213511c58a0001e4240246a2881e1190eec8c18a8bbf35b2a9ad97ee88478c49361b81f212a5d6d62227d98ccd335509c834fb2f4bafbf7fe09cbe934cb3ab6ae408d46b659d52db63159493a9a517169d7825024d892206414056fdfed7c4c54cb307c19e3c1527a0a09c286e31aae78880744776955d1e9f66ef665ccb11415e82402e02c8492e423c8f38019966ffc5cc55f7f4af66d56fc42d49f1c34e003909bb85289f330232cdfe5ae5153f18dec834bb3380bc0501bb049013bbc4881f7602830b973f5ef4d6f8347b17d3ec613716e55389808272325dbb8aa97895daa8f5bac834fb5d63976d1f5862fd156242204002eb1a2b03ccddf5ac159493d3c54a59c87593ab9720ceb5d4b329358a220105e5248a66a0ccce088873adc7a72f619add193dde8280bb04149493998a067719915ad808cc4db3e35c2b6cb6a13c7608342f566a7a4f4539a95c6ac7a0c48d12019c6b45c95a943517818a12a57e032b55995cb6e379540918ceb5e2d3ecbd4cb347d588945b79020aca09835d2ab5dab969769c6ba96457ea7286407d45b14a24149493d3554d2a5948dbbae05c4b5bd3eb53f1866ae64ef4b13635f59d00ceb57c474e861070878082bd1301335dbbb2b0ff903b8448c52f0273d3ec1ca9eb1773f2099040739d525d1321a9a69c9c2ea90ab09590b52d0273ab7e39c3ca163822479c8062cbbac41a6aca097e5622f1a1e15c2b1266a2901e11a077e211589793c5cf8acb40dd4e6e769a7d60b9db09931e04224380de49344c25bd93681454b3521ad3ecdfeebfa4af5bb55163cd2c49755d20a0d8967821a2e660d7e912bc40bad0dc5d4c02e75a2ec224293508d03b89861dd9c918123bcd4db3e35c2b2426a118a121d05cab5a1f5dd1de093b1983fe668c69f6eff7ac8f9d0cba28e40f815012a82c536a4bbc3056534ea462534b2fe4102dff3fa239e75a9c61e53f7d728c0e01f59675097b65e564a6025f81be7e5b38d7f2153799459c407d4549c46b90a6f80acb49639aea12e401019966bf6ff28a470797c7d8cdee015e925492c0cac50bd5ab97b272c25a61af1bab8c6b3d5f71dddd2317b431cdee356bd2578e807aab84c544cacac94c05876879f509ce39d7629add2bc6a4ab388115b5e5ead5505d3959dca29eb582ad9131cdfead914d6d38d70ad612e41e7d028ab9a6370ca2ac9c48f5f02becd64727d3ecbf2cbdfefe8173fa38c3ca2da6a4a33181758d6aeeb3565b4ecec14d7d9edf2c6758e50990d721904aa0be52b51d27461d95969345e7c4624fa4da92909c0470ae9513111120e098c092ca52c7ef86f945a5e5a46e7598d187b36c32cdfe8b99abeee95fcdaadf701a88522940605d13835d5133e374e345512b7260e59d73aec5347b604620635d08a8e7adcbb09ccabd13a921b3f1393f509c6be544440408b84840dcaba8e7adcbe0a3b89ccc2c5cca6c7ca62f41a6d9ef1abb6c3bceb53201221c021e105851a7e08e138393e272228e208b8f3ee7419388709273ceb538c32ac266a4e85125d0ace20646c318cacbc99ba2dae83c283767587900952421608f80aaf3f04241713999616fbcf8eac7b996bdef9dd810f090c0aafa0a0f530f3469c5e544d8ea7cf009ceb502fdb8c81c02c90454dd0f6fd453033969d0ee1c2dc3b9567c9abd97435f92bf67ee21102001254fcd32796a20274b2f8cbd62d657f10b9c6b296e60aa1771020a4f9c8865d497134d3633e25c2be2bf6728be160436aea855b89eeacb89184fe1e913c3b956fc0cabee6a859b295583800204d49e381103e921272a4e9fcc4db373a4ae02bf69a88206049013158c2cbd1365a64f70aea5428ba40e5a12507be2444caa45ef44a64f4e972c2c9888f651b48673adf819565d655a7e8c541a021126505eb2607d5355842b60a1e85ac88970985a12616f2bb3d3ec03cb2d1894281080401809ac5baaa653fa44d6dac849049d77e15c2bb1a5720d814813507ee244aca38b9c4c9e7d45f9ceef45a539e25c2b2a96a29c10b048e0d21535166346379a2e7272baaa69a662c982d1ee309b6a6e9abd8755bf6136146583803d0272387c43b5fa539ebac889185f3a28a5ad9bedb502bf62cfadfa8df67201bf78910f0422456043b3fa5d133188467232b1ea37c2262738d78ad4ef040a0b018704ae69a973f866a45ed3484ec4597d78960bcf4db39f54bf0b1ca92f82c242c0650232d2a5b053fa44581ac989547b72f9e525079e48acbfffd732cd7edfe4158f0e2e8fb19bdd7ffae40801df09e8b0a6cb80aa9b9c5c11949ccc39d7629addf7ef990c211020810d1aace932f0ea252753cd57f93fde3537cd4e7724c06f9aac21100401d90cafb617e144a87ac989d4dcb7f12e639afd5b239bda7a59f59bd8e4b88680460474d80c6f9a534339f17cbc6bceb916d3ec6643e302025a12d8749e166bba0cdb6a27279e8e77e15c4bcbdf18541a02e9096835d22508b49313a9b3ebe35dc634fbb7fb2fe9eb66d56ffaef8a50086848e0523d762f9a96d5514e4ead79af5bebbb649afd173357ddd3bf9a55bf6693e20202103008bc73fd12ad50e82827b29f314fff5d73ceb59866d7ea73a1b210b04c409fdd8b26121de5442aefd87f9731cdfefd9ef5319c6b998d880b08402085c0a696c529618a07682a27a7d6fcb65dff5d32cd7ed7d865db07f4eabd2adefca91e043c23704d4bad67698734614de544fcd5cb01f245275ec9699639e75a4cb3e78445040840e00c81e6ba321d3cd227595b5339110a13abde965d4e70ae95d456b88500042c12b87e9d8ec318facac964cb3b4eefbca36022790e44a6d99fafb8eeee910bda70ae65f1d3211a0420904040b69be8e3a72ba1de5aee3b31eb9fb40165ceb956b2c4986f70010108402007814d2d759565c53922a9f858dfde8958d3d88082732d151b367582406004aed76cbb89095a6b39910d28bf6cfce44f8fd5f7e15ccb6c115c400002791090d34d349c8437802dc8839b0aafca0694be293ca3a8604aea00813010b866b576eb834decbacbc95bd7d4cbe655130717108000041c13905f26f22bc5f1eb517f51773911fb69b87935eaad96f243209c0434ff65829cc4deb95edfbf26c2f94d522a08449480863be1132d859cc464499fe68d20b141700d0108382320bf46b49d8437882127710e375cdce8ac01f116042000018300bf469093784b90bf2964791f5f05042000016704e89a0837e464b6f1dcf0663a28cebe23de820004629bced5ce1d7daad591935926eb9baae8a0a4b60f422000819c04e45787fc02c9194df908c8c99c89e9a0ccb1e00a0210b04c805f1d062ae464aec9c8df17724ac1dc3d5710800004721190ad8b744d0c48c8c9bcc6a2e72905f31070030108d82170c3454cbbcef2424ee6351c7caeccc3c10d0420909580e65e5592d82027494062fcad914c847b08402003818f5fb322c3131d83919364abd3414926c23d0420908e000bba92a820274940e2b7fcc591060a411080c07c022ce89acf836d8c493ccedcb207251d15c22000813902744de658bc7145efe40d12f3ffcfdf1df37970070108cc23c0af887938cedc2027a94ce2217450d2732114021088c5e89aa46d05c8495a2cf1c00fbc6559c6673c8000043426c02f87b4c6474ed2628907aeaaafe01c948c747800015d09c8817bf2cb41d7da67ab3772928d8e1c60505e02a26c88780601ad08c82f04ce35c964717e576622130f977350deb5be215b0c9e4100023a11906dce727eab4e35b65157e42407acf75dd2247e147244e2310420a00101f955f09b172ed5a0a20eab889ce40677d36567e58e440c08404075026c70ce6e61e4243b9ff8d38d2b6a655d60ee78c4800004d425c0e2e09cb6454e72228a47f8d8d5675b8a47240840405102fc12c86958e42427a27804999367398725524482808a04e4f3975f022ad6cccd3a21275669ca6273e6e4adc2221e0414222087b4ca921c852ae455559013ab6465752013715661110f020a11f8e065cb15aa8d8755414e6cc015475e979c5d6de305a2420002112720c3121c056fd186c8894550b3d13e7e4d33fbe4ed21233604224b40c6b79934b56e3de4c43aab784c19f2fae046b6a1d883466c08449480ec39630fbc75db2127d659cdc694d37fd986629b1a2f40206a0464645bf69c45add4419617397142ffe6eb5632e4e5041cef40202204e4039791ed8814362cc5444e9c58e2cc2a2f9a9a1374bc03814810102d6198cbaea59013bbc466e34b2f98555e0ed9f11a04c24d400e3a6298cb8189901307d0665f6195977376bc0981b01290d55c37bd85e5364ecc839c38a166bcc390977376bc0981b01290ddca0c7339334e91b3d778cb20203de277ae1f7978770f402000010508c82e939c9b163bfac75b8f754dc64ace5e54f1a6b3aacc5a9f9a9ae91a9e306f932e1aaa4a4a8b92ff7c97579ed9db353a3951bcb0e2f2e6eaea881fcc859c2419ddf6adb4bf3d9d231d7de3b6dfe4050840204c042cfae67a6ccfbe6f6d199482bf6bc3f2443969ef1dbbf1fb3b3355e83f3fb1b1b936d989e4e3adad5f7ca0d7784522445d4e92d532130bc23311907ef1c7ae66ab7c263c8443201a046465b07cc839cb2a5d13434b2466e1fcd8c70687e707e4b893a40c2d39b97f7b8ea811794cefc40543adaaaf90adf2776c3bec425a2401010804414056d6c8879c29e7db1f797d786cb86f78f4c9335ff9c8cb8f56bee9ed49915f3cd4991492e55686b93e7dd7b658ac44e22c5cbd314bcc083d424edc31966c95df7362646b5bbf3bc9910a0420e02301f1f3987d65f09d3be6a462f0b97bc70fee4c9593833db3bd936bcf6ffcf36b920fdc5b5a15570ef3df4f9e7ea96d685e88f928ba17c8896bb693c585ed7d634ca2b806948420e00b019932f9d0e5c9bffdb3e45c73d9fbe4272982f4369e6a9f0d5b531f9f232988c56aca0bd34e87bc7cb4f75bdb46925250e0163971cd88c624ca6d0fb58d4dccb89628094100025e129029934f5db72a670e89479edcf9dc91d4f82712d6747d67cb21f931e2b4d4957ef1bde75fb0746e186d687cf2967b9f8bc5e69684a5a616d110a6e2dd349c3189e2668aa40501087849e02fde768e95537b6fbe6e95f993b6389d834369c3dbfa4efdc1f777fe685797f9f4fbbf7ae6e0e8ac967cf0b246335c810be4c46523ca240a0724b8cc94e420e00d012bbb4c2ce67ca837dbb2ae7f7a68aface392a47ebdafe3ce1765182cfeef6fdfbde6e2e54af5519013c3b26efe578e95c69d979b40490b021e10908fd4c513e08f25c8c99fbc75e5d7deb75e7e5a1ae6369afcdbf6eeeee1537f79efec04cbc696bab7adadf7a05a4126c9dc8927f465d1a14ca2302def095c128540de0464fa5d3ed2bc934948a0a8e68397d5c8fd790d15bf794183f1e0fca6caebbff9bc71fde08e43053dfb8c95c112f2fe8b1a650b7df7c8dc2efacec131e9b6a4dd3c6fa410feff16f40cc4b777f2cf7502077b469996779d2a0942207f0232fdfe95f7acb132659236af0d7fb7d508ffad0dcbbffc8ef8347ea27b95a4d55cb76c7ee1e7af8d499cd3a74f1714cc0e73a54dd6084cbb793e4bfc503da277e29539645a5efefcb9fdf1435e6540ba10808023029fbfbec5b196a4cd509675fdceb76777b6ffc53b5a3eb0a1294d340b5a92e6ad48053177e2a1b96463d4c7aeb2b19eddc3a2903404207086807c925976bf3b83545e34d7edd8fcda9c4358992c31ba26ce928ddc5bf44ebc3519bbe5bde54bea10b043409672c92769e70d4b71975495b62c2e6ceb9d96d86d4707fee2ded7de73a1ac009efce7875e8ec5ca8d24fef0cab37ffb4dc9cb829f3dd0f50f8fb41b11feef8d1734d694276d9eb7947d682221279e9be2139b564a1ef85ff11c341940202b013963d1c5a55c92555c3ddef8f7c96bd7fce5bdbb8dbb2dfbfae4e7ccf5ac96c8f5fb2f6912d57923faecff0f24785e112d4975399c143fe4b70c76f96120f1bf222b49fcc8893c2000817404e40374fd8cc5448fc2d79eb758d607a7cb391ef6830f5d9caa25992247371c39f1c376e27f4566ff50143f589307045208c8a7271fa0eb672cd6ce1fdcf9c895678b6c5cdd529798bf688c2cd64a3c1625f1692c563cff36da772c14f6cf7e2c1df68f353941e00d021e69c91bc9a7f9bf78e51a188b8f84457df02a4dddb206212759f1b8fd1045719b28e941201b01d96222fd12d7977265cb52e3670c76f96a7c69d6d2b8a589fb9a2b9941404b026889cf66e7f79acfc063a228e2c4d4ef5cc90f029a11404bfc373872e23ff3d8faa62ab63706c09d2c752220e76d33c6e5b3c191139f81cf66277ba9509460d093ab0604e4e3f262bba206e4f2aa22729217be7c5e4651f2a1c7bb10c844002dc944c6eb70e4c46bc2d9d24751b2d1e11904ec13404bec3373ed0de4c43594ce1242519c71e32d08a412404b5299f819829cf8493b7d5e284a7a2e8442c00e01b4c40e2d4fe222279e60b59b288a629718f1219048002d49a411d435bbe283229f265ff6cca781421004b212607f49563cbe3ea477e22beeec99b1673e3b1f9e422089005a920424d85be42458fec9b9a328c944b887400602f5957147ddec55cc8027806006bb02809e33cbaea1f16f3c71b0a36f3c674c2240404f02fefb09d693b3ad5ad33bb185cba7c80dd5f1e319381fc527dc641335026849382d46ef249c7689976a647cf2c7cf1fe554e0f05a8892054140cee89573155d3f0b2b88aaa896277212768bfee8d9c30fefee097b29291f047c21f0cef5f51fbafc6c5fb22213db049013dbc8fc7f61cbde9e3bb61df63f5f728440a808b0b92454e6482d0c7292ca248c21bb8f0f7ffdf103631333612c1c658280c7045810ec31607792474edce1e8432ab2c9f18ea73a58eee5036ab20815019978ffd475ab647d4aa84a456152092027a94cc21b2293f3dfd9dab1f3f050788b48c920e02a814bceaefef835cd4cbcbb0ad5abc49013afc87a97eebd3b8fdff762a777e993320442428089f79018c2623190138ba0c2156d7b7bbf7453984a099755288d7b0464b2443a251b57d4ba972429794e0039f11cb147193095e21158920d9c009325819bc05901901367dc42f116fb1c4361060ae12a01d9a5f8894d2b5d4d92c47c22809cf804dabb6c6457ca9ddb8f32f0e51d6152f687800c707d70e35972f68f3fd9918beb049013d7910690202e2303804e96ae129001ae8f5ddd8c7b6057a1fa9d1872e23771eff2c31d8b776c49d95302b282eb868b1b590dec29641f12474e7c80ec5f16b279fe3b5bdb7b4626fdcb929c2090070139b3e4e3d7ac58df5495471abc1a1602c849582ce15639d8eae81649d2f19a005b14bd26ec73fac889cfc07dca8e8d293e81261b4704d856e2085bd85f424ec26e21c7e5a39be2181d2f7a4a605d63e5cdd7ad64a6c453c881248e9c0482ddbf4ce9a6f8c79a9c72116029702e42d17e8e9c44db7e564acf6e472b9488e335014e51f49a70e0e92327819bc0a702b0e8cb27d064934280e55b2948d40c404ed4b46bda5a493745ce09c61b715a38047a44403694bcef9226f4b93f1c000006c7494441548f1227d95011404e42650e3f0a235be8ef78eaf09ece113f32230f8d09c894fbc7ae3e9b63aff46902c8893eb69e5753c6bee6e1e0c6550232ba75d36567e15ede55a811480c39898091bc2ba29cc4f5cbdd5db88ff48eb06e29cbdaad77ad6f60744b37bb1bf5454ef4b4fb5cad65ec4b6653b6b6f5cf05710501470458bbe5089b3a2f2127ead8329f9a30a1920f3dde659a8436200490139ac11c019950b96f5727b3f47344b8ca454084e4863737e2c33117272d9e23275a98d9562599a5b7854bdbc80889b6a6cf5471e4241319ddc3e590c7fb5eeac4d7bdeeed205dfd65e1d60d1735726c623a365a8721275a9b3f67e54554b6eeef67f82b27284d2220249a18da5935911367dcf47a8b3915bdec9daeb672f8eef5eb96d02349c786b05902c8094dc12a0144c52a29b5e2c92157efbaa081c976b5acea496d90134fb02a9c28fb5414366e52d5641f8978dcc24b4a12166e3311404e3291213c1b01c39b243beab3318aec336367fb3bd7d773c255646d184cc1919360b82b932b73f5ca98522a226b7faf595dcb04894a36f5b32ec8899fb495cd4b46c01edaddfd645b1feebfa26863e98e6c6aa9bb7efd12c6b5a268bef0941939098f2d225f121901dbd13ef8d09eee8ebef1c857468f0ad01dd1c3ce3ed51239f109b456d94867457c4a3ed9d6cb2ec870da5db68f6c68aea13b124eeb44b754c849746d1781921fec197d7877f70b1d830c8285c15a868a5cd352b7aabe220ce5a10c8a11404e14336848abb3bdbd5fc6c1d09540cc2353239736d76c5851c3795681f0d72753e4441f5b87a2a6e88a6f6640457c434d460601e48496100c01d963ff42fb80780363dede5d038837944b9b175dd25ccd8896bb60492d2701e424272222784b40e6edf71c1f9171b03d2746986271c65a3a22eb96561a235aec3d74c690b7f227809ce4cf90145c23205d169116e9b2e0c33827534342562e5eb8aea912875a397111c10702c8890f90c9c20901a425959a2ccd929d22cdb5e522218c65a5f221245802c849b0fcc9dd12019196433d273bfac7dafbc6749b6b91b9109110d18f15b5e5ec5ab7d45c88141001e42420f0649b0701a3e372a8f764cfe88462ea2243582beb168a84d45794acac5fd85c5bc65c481e2d85577d25809cf88a9bccbc20209b25e3bad23b1e3981413cbc680fa4191401e42428f2e4eb2101f11ed6d13f3e3a31251ad33d724a7cbdc4af83f32426bd8d8a9222a9b00c5bc97feb2b8a975497327fee610b20e920082027415027cfe008c8bae49ed149c95f969019a548529a437d2773ae579629f12595a5a9953065a379715c3fca8b1730619e4a891055092027aa5a967a41000210f095c0025f732333084000021050940072a2a861a916042000017f092027fef22637084000028a12404e14352cd582000420e02f01e4c45fdee406010840405102c889a286a55a10800004fc25809cf8cb9bdc20000108284a003951d4b0540b02108080bf0490137f79931b04200001450920278a1a966a41000210f0970072e22f6f7283000420a02801e44451c3522d08400002fe12404efce54d6e108000041425809c286a58aa05010840c05f02c889bfbcc90d02108080a2049013450d4bb520000108f84b0039f19737b94100021050940072a2a861a916042000017f092027fef22637084000028a12404e14352cd582000420e02f01e4c45fdee406010840405102c889a286a55a10800004fc25809cf8cb9bdc20000108284a003951d4b0540b02108080bf0490137f79931b04200001450920278a1a966a41000210f0970072e22f6f7283000420a02801e44451c3522d08400002fe12404efce54d6e108000041425809c286a58aa05010840c05f02c889bfbcc90d02108080a2049013450d4bb520000108f84b0039f19737b94100021050940072a2a861a916042000017f092027fef22637084000028a12404e14352cd582000420e02f01e4c45fdee406010840405102c889a286a55a10800004fc25809cf8cb9bdc20000108284a003951d4b0540b02108080bf0490137f79931b04200001450920278a1a966a41000210f0970072e22f6f7283000420a02801e44451c3522d08400002fe12404efce54d6e108000041425809c286a58aa05010840c05f02c889bfbcc90d02108080a2049013450d4bb520000108f84b0039f19737b94100021050940072a2a861a916042000017f092027fef22637084000028a12404e14352cd582000420e02f01e4c45fdee406010840405102c889a286a55a10800004fc25809cf8cb9bdc20000108284a003951d4b0540b02108080bf0490137f79931b04200001450920278a1a966a41000210f0970072e22f6f7283000420a02801e44451c3522d08400002fe12404efce54d6e108000041425f0ff014a1ce9eeb175659f0000000049454e44ae426082}\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u34013?\u33394?\u30340?\u23601?\u26159?push\u20107?\u20214?\u65292?\u40644?\u33394?\u30340?\u26159?create\u31561?\u31561?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u21040?\u36825?\u37324?\u25105?\u20204?\u31639?\u26159?\u30693?\u36947?\u20102?OSRC\u30340?\u25968?\u25454?\u24211?\u37096?\u20998?\u26159?\u22914?\u20309?\u24037?\u20316?\u30340?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs28 Redis \u26597?\u35810?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u20027?\u35201?\u20195?\u30721?\u22914?\u19979?\u25152?\u31034?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 def get_vector(user, pipe=None):\line -\line - r = redis.StrictRedis(host='localhost', port=6379, db=0)\line - no_pipe = False\line - if pipe is None:\line - pipe = pipe = r.pipeline()\line - no_pipe = True\line -\line - user = user.lower()\line - pipe.zscore(get_format("user"), user)\line - pipe.hgetall(get_format("user:\{0\}:day".format(user)))\line - pipe.zrevrange(get_format("user:\{0\}:event".format(user)), 0, -1,\line - withscores=True)\line - pipe.zcard(get_format("user:\{0\}:contribution".format(user)))\line - pipe.zcard(get_format("user:\{0\}:connection".format(user)))\line - pipe.zcard(get_format("user:\{0\}:repo".format(user)))\line - pipe.zcard(get_format("user:\{0\}:lang".format(user)))\line - pipe.zrevrange(get_format("user:\{0\}:lang".format(user)), 0, -1,\line - withscores=True)\line -\line - if no_pipe:\line - return pipe.execute()\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u32467?\u26524?\u22312?\u19978?\u19968?\u31687?\u20013?\u26174?\u31034?\u20986?\u26469?\u20102?\u65292?\u20063?\u23601?\u26159?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 [227.0, \{'1': '51', '0': '41', '3': '17', '2': '34', '5': '28', '4': '22', '6': '34'\}, [('PushEvent', 154.0), ('CreateEvent', 41.0), ('WatchEvent', 18.0), ('GollumEvent', 8.0), ('MemberEvent', 3.0), ('ForkEvent', 2.0), ('ReleaseEvent', 1.0)], 0, 0, 0, 11, [('CSS', 74.0), ('JavaScript', 60.0), ('Ruby', 12.0), ('TeX', 6.0), ('Python', 6.0), ('Java', 5.0), ('C++', 5.0), ('Assembly', 5.0), ('C', 3.0), ('Emacs Lisp', 2.0), ('Arduino', 2.0)]]\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u26377?\u24847?\u24605?\u30340?\u26159?\u22312?\u36825?\u37324?\u29983?\u25104?\u20102?\u21644?\u33258?\u24049?\u30456?\u36817?\u30340?\u20154?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 ['alesdokshanin', 'hjiawei', 'andrewreedy', 'christj6', '1995eaton']\par} -{\pard \ql \f0 \sa180 \li0 \fi0 osrc\u26368?\u26377?\u24847?\u24605?\u30340?\u19968?\u37096?\u20998?\u33707?\u36807?\u20110?flann\u65292?\u24403?\u28982?\u35828?\u30340?\u20063?\u26159?\u31995?\u32479?\u21518?\u21488?\u30340?\u35774?\u35745?\u30340?\u19968?\u20010?\u24456?\u20851?\u38190?\u21450?\u26377?\u24847?\u24605?\u30340?\u37096?\u20998?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 \u37051?\u36817?\u31639?\u27861?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u37051?\u36817?\u31639?\u27861?\u26159?\u22312?\u36825?\u20010?\u20998?\u26512?\u36807?\u31243?\u20013?\u19968?\u20010?\u24456?\u26377?\u24847?\u24605?\u30340?\u19996?\u35199?\u12290?\par} -{\pard \ql \f0 \sa180 \li720 \fi0 \u37051?\u36817?\u31639?\u27861?\u65292?\u25110?\u32773?\u35828?K\u26368?\u36817?\u37051?(kNN\u65292?k-NearestNeighbor)\u20998?\u31867?\u31639?\u27861?\u21487?\u20197?\u35828?\u26159?\u25972?\u20010?\u25968?\u25454?\u25366?\u25496?\u20998?\u31867?\u25216?\u26415?\u20013?\u26368?\u31616?\u21333?\u30340?\u26041?\u27861?\u20102?\u12290?\u25152?\u35859?K\u26368?\u36817?\u37051?\u65292?\u23601?\u26159?k\u20010?\u26368?\u36817?\u30340?\u37051?\u23621?\u30340?\u24847?\u24605?\u65292?\u35828?\u30340?\u26159?\u27599?\u20010?\u26679?\u26412?\u37117?\u21487?\u20197?\u29992?\u22905?\u26368?\u25509?\u36817?\u30340?k\u20010?\u37051?\u23621?\u26469?\u20195?\u34920?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u25442?\u21477?\u35805?\u35828?\u65292?\u25105?\u20204?\u38656?\u35201?\u19968?\u20123?\u26679?\u26412?\u26469?\u24403?\u20316?\u25105?\u20204?\u30340?\u20998?\u26512?\u36164?\u26009?\u65292?\u36825?\u37324?\u19996?\u35199?\u29992?\u21040?\u30340?\u23601?\u26159?\u25105?\u20204?\u20043?\u21069?\u30340?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 [227.0, \{'1': '51', '0': '41', '3': '17', '2': '34', '5': '28', '4': '22', '6': '34'\}, [('PushEvent', 154.0), ('CreateEvent', 41.0), ('WatchEvent', 18.0), ('GollumEvent', 8.0), ('MemberEvent', 3.0), ('ForkEvent', 2.0), ('ReleaseEvent', 1.0)], 0, 0, 0, 11, [('CSS', 74.0), ('JavaScript', 60.0), ('Ruby', 12.0), ('TeX', 6.0), ('Python', 6.0), ('Java', 5.0), ('C++', 5.0), ('Assembly', 5.0), ('C', 3.0), ('Emacs Lisp', 2.0), ('Arduino', 2.0)]]\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u22312?\u20195?\u30721?\u20013?\u26159?\u26500?\u24314?\u20102?\u19968?\u20010?points.h5\u30340?\u25991?\u20214?\u26469?\u20998?\u26512?\u27599?\u20010?\u29992?\u25143?\u30340?points\u65292?\u20043?\u21518?\u20877?\u35760?\u24405?\u21040?hdf5\u25991?\u20214?\u20013?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 [ 0.00438596 0.18061674 0.2246696 0.14977974 0.07488987 0.0969163\line - 0.12334802 0.14977974 0. 0.18061674 0. 0. 0.\line - 0.00881057 0. 0. 0.03524229 0. 0.\line - 0.01321586 0. 0. 0. 0.6784141 0.\line - 0.07929515 0.00440529 1. 1. 1. 0.08333333\line - 0.26431718 0.02202643 0.05286344 0.02643172 0. 0.01321586\line - 0.02202643 0. 0. 0. 0. 0. 0.\line - 0. 0. 0.00881057 0. 0. 0. 0.\line - 0. 0. 0. 0. 0. 0. 0.\line - 0. 0. 0. 0. 0.00881057]\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u36825?\u37324?\u20998?\u26512?\u21040?\u29992?\u25143?\u30340?\u22823?\u37096?\u20998?\u34892?\u20026?\u65292?\u20877?\u25214?\u21040?\u19982?\u20854?\u34892?\u20026?\u30456?\u36817?\u30340?\u29992?\u25143?\u65292?\u20027?\u35201?\u30340?\u34892?\u20026?\u26377?\u19979?\u38754?\u36825?\u20123?:\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u27599?\u26143?\u26399?\u30340?\u24773?\u20917?\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u20107?\u20214?\u30340?\u31867?\u22411?\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u36129?\u29486?\u30340?\u25968?\u37327?\u65292?\u36830?\u25509?\u20197?\u21450?\u35821?\u35328?\par} -{\pard \ql \f0 \sa0 \li360 \fi-360 \bullet \tx360\tab \u26368?\u22810?\u30340?\u35821?\u35328?\sa180\par} -{\pard \ql \f0 \sa180 \li0 \fi0 osrc\u20013?\u29992?\u20110?\u35299?\u26512?\u30340?\u20195?\u30721?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 def parse_vector(results):\line - points = np.zeros(nvector)\line - total = int(results[0])\line -\line - points[0] = 1.0 / (total + 1)\line -\line - # Week means.\line - for k, v in results[1].iteritems():\line - points[1 + int(k)] = float(v) / total\line -\line - # Event types.\line - n = 8\line - for k, v in results[2]:\line - points[n + evttypes.index(k)] = float(v) / total\line -\line - # Number of contributions, connections and languages.\line - n += nevts\line - points[n] = 1.0 / (float(results[3]) + 1)\line - points[n + 1] = 1.0 / (float(results[4]) + 1)\line - points[n + 2] = 1.0 / (float(results[5]) + 1)\line - points[n + 3] = 1.0 / (float(results[6]) + 1)\line -\line - # Top languages.\line - n += 4\line - for k, v in results[7]:\line - if k in langs:\line - points[n + langs.index(k)] = float(v) / total\line - else:\line - # Unknown language.\line - points[-1] = float(v) / total\line -\line - return points\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u36825?\u26679?\u20063?\u23601?\u36820?\u22238?\u25105?\u20204?\u38656?\u35201?\u30340?\u28857?\u25968?\u65292?\u28982?\u21518?\u25105?\u20204?\u21487?\u20197?\u29992?{\f1 get_points}\u26469?\u33719?\u21462?\u36825?\u20123?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 def get_points(usernames):\line - r = redis.StrictRedis(host='localhost', port=6379, db=0)\line - pipe = r.pipeline()\line -\line - results = get_vector(usernames)\line - points = np.zeros([len(usernames), nvector])\line - points = parse_vector(results)\line - return points\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u23601?\u20250?\u24471?\u21040?\u25105?\u20204?\u30340?\u30456?\u24212?\u30340?\u25968?\u25454?\u65292?\u25509?\u30528?\u25214?\u25214?\u21644?\u33258?\u24049?\u37051?\u36817?\u30340?\u65292?\u30475?\u30475?\u32467?\u26524?\u12290?\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \f1 [ 0.01298701 0.19736842 0. 0.30263158 0.21052632 0.19736842\line - 0. 0.09210526 0. 0.22368421 0.01315789 0. 0.\line - 0. 0. 0. 0.01315789 0. 0.\line - 0.01315789 0. 0. 0. 0.73684211 0. 0.\line - 0. 1. 1. 1. 0.2 0.42105263\line - 0.09210526 0. 0. 0. 0. 0.23684211\line - 0. 0. 0.03947368 0. 0. 0. 0.\line - 0. 0. 0. 0. 0. 0. 0.\line - 0. 0. 0. 0. 0. 0. 0.\line - 0. 0. 0. 0. ]\par} -{\pard \ql \f0 \sa180 \li0 \fi0 \u30495?\u30475?\u19981?\u20986?\u26469?\u20004?\u32773?\u26377?\u20160?\u20040?\u30456?\u20284?\u30340?\u22320?\u26041? \u12290?\u12290?\u12290?\u12290?\par} +{\pard \qc \f0 \sa180 \li0 \fi0 \emdash\emdash\emdash\emdash\emdash\par} } diff --git a/img/cover.jpg b/img/cover.jpg index f45bbec..2fd56b2 100644 Binary files a/img/cover.jpg and b/img/cover.jpg differ diff --git a/index.html b/index.html index 087aadf..d423e16 100644 --- a/index.html +++ b/index.html @@ -147,6 +147,23 @@ code > span.in { color: #60a0b0; font-weight: bold; font-style: italic; } /* Inf
  • 实现第二个需求
  • +
  • Github用户分析
  • Github连击
    • 100天
      • 40天的提升
      • @@ -165,23 +182,6 @@ code > span.in { color: #60a0b0; font-weight: bold; font-style: italic; } /* Inf
      • 其他
  • -
  • Github用户分析
  • 前言

    @@ -1669,267 +1669,6 @@ public class replaceTemp { request.send(data); };
    -

    Github连击

    -

    100天

    -

    我也是蛮拼的,虽然我想的只是在Github上连击100~200天,然而到了今天也算不错。

    -
    -Longest Streak
    Longest Streak
    -
    -

    在停地造轮子的过程中,也不停地造车子。

    -

    在那篇连续冲击365天的文章出现之前,我们公司的大大(https://github.com/dreamhead)也曾经在公司内部说过,天天commit什么的。当然这不是我的动力,在连击140天之前

    -
      -
    • 给过google的ngx_speednode-coap等项目创建过pull request
    • -
    • 也有free-programming-booksfree-programming-books-zh_CN这样的项目。
    • -
    • 当然还有一个连击20天。
    • -
    -

    对比了一下365天连击的commit,我发现我在total上整整多了近0.5倍。

    -
    -365 Streak
    365 Streak
    -
    -

    同时这似乎也意味着,我每天的commit数与之相比多了很多。

    -

    在连击20的时候,有这样的问题: 为了commit而commit代码,最后就放弃了。

    -

    而现在是为了填坑而commit,为自己挖了太多的想法。

    -

    40天的提升

    -

    当时我需要去印度接受毕业生培训,大概有5周左右,想着总不能空手而归。于是在国庆结束后有了第一次commit,当时旅游归来,想着自己在不同的地方有不同的照片,于是这个repo的名字是 onmap——将自己的照片显示在地图上的拍摄地点(手机是Lumia 920)。然而,中间因为修改账号的原因,丢失了commit。

    -

    再从印度说起,当时主要维护三个repo:

    - -

    说说最后一个,最后一个是练习的项目。因为当时培训比较无聊,业余时间比较多,英语不好,加上听不懂印度人的话。晚上基本上是在住的地方默默地写代码,所以当时的目标有这么几个:

    -
      -
    • TDD
    • -
    • 测试覆盖率
    • -
    • 代码整洁
    • -
    -

    这也就是为什么那个repo有这样的一行:

    -
    -Repo Status
    Repo Status
    -
    -

    做到98%的覆盖率也算蛮拼的,当然还有Code Climate也达到了4.0,也有了112个commits。因此也带来了一些提高:

    -
      -
    • 提高了代码的质量(code climate比jslint更注重重复代码等等一些bad smell)。
    • -
    • 对于Mock、Stub、FakesServer等用法有更好的掌握
    • -
    • 可以持续地交付软件(版本管理、自动测试、CI、部署等等)
    • -
    -

    100天的挑战

    -

    (ps:从印度回来之后,由于女朋友在泰国实习,有了更多的时间可以看书、写代码)

    -

    有意思的是越到中间的一些时间,commits的次数上去了,除了一些简单的pull request,还有一些新的轮子出现了。

    -
    -Problem
    Problem
    -
    -

    这是上一星期的commits,这也就意味着,在一星期里面,我需要在8个repo里切换。而现在我又有了一个新的idea,这时就发现了一堆的问题:

    -
      -
    • 今天工作在这个repo上,突然发现那个repo上有issue,需要去修复,于是就放下了当前的代码。
    • -
    • 在不同的repo间切换容易分散精力
    • -
    • 很容易就发现有太多的功能可以实现,但是时间是有限的。
    • -
    • 没有足够的空闲时间,除了周末。
    • -
    • 希望去寻找那些有兴趣的人,然而却发现原来没有那么多时间去找人。
    • -
    -

    140天的希冀

    -

    在经历了100天之后,似乎整个人都轻松了,毕竟目标是100~200天。似乎到现在,也不会有什么特殊的情怀,除了一些希冀。

    -

    当然,对于一个开源项目的作者来说,最好有下面的情况:

    -
      -
    • 很多人知道了这个项目
    • -
    • 很多人用它的项目。
    • -
    • 在某些可以用这个项目快速解决问题的地方提到了这个项目
    • -
    • 提了bug、issue、问题。
    • -
    • 提了bug,并解决了。(ps:这是最理想的情况)
    • -
    -

    200天的Showcase

    -

    今天是我连续泡在Github上的第200天,也是蛮高兴的,终于到达了:

    -
    -Github 200 days
    Github 200 days
    -
    -

    故事的背影是: 去年国庆完后要去印度接受毕业生培训——就是那个神奇的国度。但是在去之前已经在项目待了九个多月,项目上的挑战越来越少,在印度的时间又算是比较多。便给自己设定了一个长期的goal,即100~200天的longest streak。

    -

    或许之前你看到过一篇文章让我们连击,那时已然140天,只是还是浑浑噩噩。到了今天,渐渐有了一个更清晰地思路。

    -

    先让我们来一下ShowCase,然后再然后,下一篇我们再继续。

    -

    一些项目简述

    -

    上面说到的培训一开始是用Java写的一个网站,有自动测试、CI、CD等等。由于是内部组队培训,代码不能公开等等因素,加之做得无聊。顺手,拿Node.js +RESTify 做了Server,Backbone + RequireJS + jQuery 做了前台的逻辑。于是在那个日子里,也在维护一些旧的repo,如iot-coapiot,前者是我拿到WebStorm开源License的Repo,后者则是毕业设计。

    -

    对于这样一个项目也需要有测试、自动化测试、CI等等。CI用的是Travics-CI。总体的技术构架如下:

    -

    技术栈

    -

    前台:

    -
      -
    • Backbone
    • -
    • RequireJS
    • -
    • Underscore
    • -
    • Mustache
    • -
    • Pure CSS
    • -
    -

    后台:

    -
      -
    • RESTify
    • -
    -

    测试:

    -
      -
    • Jasmine
    • -
    • Chai
    • -
    • Sinon
    • -
    • Mocha
    • -
    • Jasmine-jQuery
    • -
    -

    一直写到五星期的培训结束, 只是没有自动部署。想想就觉得可以用github-page的项目多好~~。

    -

    过程中还有一些有意思的小项目,如:

    -

    google map solr polygon 搜索

    -

    google map solr polygon 搜索

    -
    -google map solr
    google map solr
    -
    -

    代码: https://github.com/phodal/gmap-solr

    -

    技能树

    -

    这个可以从两部分说起:

    -

    重构Skill Tree

    -

    原来的是

    -
      -
    • Knockout
    • -
    • RequireJS
    • -
    • jQuery
    • -
    • Gulp
    • -
    -
    -Skill Tree
    Skill Tree
    -
    -

    代码: https://github.com/phodal/skillock

    -

    技能树Sherlock

    -
      -
    • D3.js
    • -
    • Dagre-D3.js
    • -
    • jquery.tooltipster.js
    • -
    • jQuery
    • -
    • Lettuce
    • -
    • Knockout.js
    • -
    • Require.js
    • -
    -
    -Sherlock skill tree
    Sherlock skill tree
    -
    -

    代码: https://github.com/phodal/sherlock

    -

    Django Ionic ElasticSearch 地图搜索

    -
    -Django Elastic Search
    Django Elastic Search
    -
    -
      -
    • ElasticSearch
    • -
    • Django
    • -
    • Ionic
    • -
    • OpenLayers 3
    • -
    -

    代码: https://github.com/phodal/django-elasticsearch

    -

    简历生成器

    -
    -Resume
    Resume
    -
    -
      -
    • React
    • -
    • jsPDF
    • -
    • jQuery
    • -
    • RequireJS
    • -
    • Showdown
    • -
    -

    代码: https://github.com/phodal/resume

    -

    Nginx 大数据学习

    -
    -Nginx Pig
    Nginx Pig
    -
    -
      -
    • ElasticSearch
    • -
    • Hadoop
    • -
    • Pig
    • -
    -

    代码: https://github.com/phodal/learning-data/tree/master/nginx

    -

    其他

    -

    虽然技术栈上主要集中在Python、JavaScript,当然还有一些Ruby、Pig、Shell、Java的代码,只是我还是习惯用Python和JavaScript。一些用到觉得不错的框架:

    -
      -
    • Ionic: 开始Hybird移动应用。
    • -
    • Django: Python Web开发利器。
    • -
    • Flask: Python Web开发小刀。
    • -
    • RequireJS: 管理js依赖。
    • -
    • Backbone: Model + View + Router。
    • -
    • Angluar: …。
    • -
    • Knockout: MVV*。
    • -
    • React: 据说会火。
    • -
    • Cordova: Hybird应用基础。
    • -
    -

    还应该有:

    -
      -
    • ElasticSearch
    • -
    • Solr
    • -
    • Hadoop
    • -
    • Pig
    • -
    • MongoDB
    • -
    • Redis
    • -
    -

    365天

    -

    给你一年的时间,你会怎样去提高你的水平???

    -
    -Github 365
    Github 365
    -
    -

    正值这难得的sick leave(万恶的空气),码文一篇来记念一个过去的366天里。尽管想的是在今年里写一个可持续的开源框架,但是到底这依赖于一个好的idea。在我的Github 孵化器 页面上似乎也没有一个特别让我满意的想法,虽然上面有各种不样有意思的ideas。多数都是在过去的一年是完成的,然而有一些也是还没有做到的。

    -

    尽管一直在Github上连击看上去似乎是没有多大必要的,但是人总得有点追求。如果正是漫无目的,却又想着提高技术的同时,为什么不去试试?毕竟技术非常好、不需要太多练习的人只是少数,似乎这样的人是不存在的。大多数的人都是经过练习之后,才会达到别人口中的“技术好”。

    -

    这让我想起了充斥着各种气味的知乎上的一些问题,在一些智商被完虐的话题里,无一不是因为那些人学得比别人早——哪来的天才?所谓的天才,应该是未来的智能生命一般,一出生什么都知道。如果并非如此,那只是说明他练习到位了。

    -

    练习不到位便意味着,即使你练习的时候是一万小时的两倍,那也是无济于事的。如果你学得比别人晚,在很长的一段时间里(可能直到进棺材)输给别人是必然的——落后就要挨打。就好像我等毕业于一所二本垫底的学校里,如果在过去我一直保持着和别人(各种重点)一样的学习速度,那么我只能一直是Loser。

    -

    需要注意的是,对你来说考上二本很难,并不是因为你比别人笨。教育资源分配不均的问题,在某种程度上导致了新的阶级制度的出现。如我的首页说的那样: THE ONLY FAIR IS NOT FAIR——唯一公平的是它是不公平的。我们可以做的还有很多——CREATE & SHARE。真正的不幸是,因为营养不良导致的教育问题。

    -

    于是在想明白了很多事的时候起,便有了Re-Practise这样的计划,而365天只是中间的一个产物。

    -

    编程的基础能力

    -

    虽说算法很重要,但是编码才是基础能力。算法与编程在某种程度上是不同的领域,算法编程是在编程上面的一级。算法写得再好,如果别人很难直接拿来复用,在别人眼里就是shit。想出能work的代码一件简单的事,学会对其重构,使之变得更易读就是一件有意义的事。

    -

    于是,在某一时刻在Github上创建了一个组织,叫Artisan Stack。当时想的是在Github寻找一些JavaScript项目,对其代码进行重构。但是到底是影响力不够哈,参与的人数比较少。

    -

    重构

    -

    如果你懂得如何写出高可读的代码,那么我想你是不需要这个的,但是这意味着你花了更多的时候在思考上了。当谈论重构的时候,让我想起了TDD(测试驱动开发)。即使不是TDD,那么如果你写着测试,那也是可以重构的。(之前写过一些利用Intellij IDEA重构的文章:提炼函数以查询取代临时变量重构与Intellij Idea初探内联函数)

    -

    在各种各样的文章里,我们看到过一些相关的内容,最好的参考莫过于《重构》一书。最基础不过的原则便是函数名,取名字很难,取别人能读懂的名字更难。其他的便有诸如长函数、过大的类、重复代码等等。在我有限的面试别人的经历里,这些问题都是最常见的。

    -

    测试

    -

    而如果没有测试,其他都是扯淡。写好测试很难,写个测试算是一件容易的事。只是有些容易我们会为了测试而测试。

    -

    在我写EchoesWorksLan的过程中,我尽量去保证足够高的测试覆盖率。

    -
    -lan
    lan
    -
    -
    -EchoesWorks
    EchoesWorks
    -
    -

    从测试开始的TDD,会保证方法是可测的。从功能到测试则可以提供工作次效率,但是只会让测试成为测试,而不是代码的一部分。

    -

    测试是代码的最后一公里。所以,尽可能的为你的Github上的项目添加测试。

    -

    编码的过程

    -

    初到TW时,Pair时候总会有人教我如何开始编码,这应该也是一项基础的能力。结合日常,重新演绎一下这个过程:

    -
      -
    1. 有一个可衡量、可实现、过程可测的目标
    2. -
    3. Tasking (即对要实现的目标过程进行分解)
    4. -
    5. 一步步实现 (如TDD)
    6. -
    7. 实现目标
    8. -
    -

    放到当前的场景就是:

    -
      -
    1. 我想在Github上连击365天。对应于每一个时候段的目标都应该是可以衡量、测试的——即每天都会有Contributions。
    2. -
    3. 分解就是一个痛苦的过程。理想情况下,我们应该会有每天提交,但是这取决于你的repo的数量,如果没有新的idea出现,那么这个就变成为了Contributions而Commit。
    4. -
    5. 一步步实现
    6. -
    -

    在我们实际工作中也是如此,接到一个任务,然后分解,一步步完成。不过实现会稍微复杂一些,因为事务总会有抢占和优先级的。

    -

    技术与框架设计

    -

    在上上一篇博客中《After 500: 写了第500篇博客,然后呢?》也深刻地讨论了下这个问题,技术向来都是后发者优势。对于技术人员来说,也是如此,后发者占据很大的优势。

    -

    如果我们只是单纯地把我们的关注点仅仅放置于技术上,那么我们就不具有任何的优势。而依赖于我们的编程经验,我们可以在特定的时候创造一些框架。而架构的设计本身就是一件有意思的事,大抵是因为程序员都喜欢创造。(ps:之前曾经写过这样一篇文章,《对不起,我并不热爱编程,我只喜欢创造》)

    -

    创造是一种知识的再掌握过程。

    -

    回顾一下写echoesworks的过程,一开始我需要的是一个网页版的PPT,当然这类的东西已经有很多了,如impress.js、bespoke.js等等。分析一下所需要的功能:markdown解析器、键盘事件处理、Ajax、进度条显示、图片处理、Slide。我们可以在Github上找到各式各样的模块,我们所要做的就是将之结合在一样。在那之前,我试着用类似的原理写(组合)了Lettuce

    -

    组合相比于创造过程是一个更有挑战性的过程,我们需要在这过程去设计胶水来粘合这些代码,并在最终可以让他工作。这好比是我们在平时接触到的任务划分,每个人负责相应的模块,最后整合。

    -

    想似的我在写lan的时候,也是类似的,但是不同的是我已经设计了一个清晰的架构图。

    -
    -Lan IoT
    Lan IoT
    -
    -

    而在我们实现的编码过程也是如此,使用不同的框架,并且让他们能工作。如早期玩的moqi.mobi,基于Backbone、RequireJS、Underscore、Mustache、Pure CSS。在随后的时间里,用React替换了View层,就有了backbone-react的练习。

    -

    技术同人一样,需要不断地往高一级前进。我们只需要不断地Re-Practise。

    -

    领域与练习

    -

    说业务好像不太适合程序员的口味,那就领域吧。不同行业的人,如百度、阿里、腾讯,他们的领域核心是不一样的。

    -

    而领域本身也是相似的,这可以解释为什么互联网公司都喜欢互相挖人,而一般都不会去华为、中兴等非互联网领域挖人。出了这个领域,你可能连个毕业生都不如。领域、业务同技术一样是不断强化知识的一个过程。Ritchie先实现了BCPL语言,而后设计了C语言,而BCPL语言一开始是基于CPL语言。

    -

    领域本身也在不断进化。

    -

    这也是下一个值得提高的地方。

    -

    其他

    -

    是时候写这个小结了。从不会写代码,到写代码是从0到1的过程,但是要从1到60都不是一件容易的事。无论是刷Github也好(不要是自动提交),或者是换工作也好,我们都在不断地练习。

    -

    而练习是要分成不同的几个步骤,不仅仅局限于技术:

    -
      -
    1. 编码
    2. -
    3. 架构
    4. -
    5. 设计
    6. -
    7. 。。。
    8. -
    -

    Github用户分析

    生成图表

    如何分析用户的数据是一个有趣的问题,特别是当我们有大量的数据的时候。除了matlab,我们还可以用numpy+matplotlib

    @@ -2367,5 +2106,266 @@ pipe.execute() 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. ]

    真看不出来两者有什么相似的地方 。。。。

    +

    Github连击

    +

    100天

    +

    我也是蛮拼的,虽然我想的只是在Github上连击100~200天,然而到了今天也算不错。

    +
    +Longest Streak
    Longest Streak
    +
    +

    在停地造轮子的过程中,也不停地造车子。

    +

    在那篇连续冲击365天的文章出现之前,我们公司的大大(https://github.com/dreamhead)也曾经在公司内部说过,天天commit什么的。当然这不是我的动力,在连击140天之前

    +
      +
    • 给过google的ngx_speednode-coap等项目创建过pull request
    • +
    • 也有free-programming-booksfree-programming-books-zh_CN这样的项目。
    • +
    • 当然还有一个连击20天。
    • +
    +

    对比了一下365天连击的commit,我发现我在total上整整多了近0.5倍。

    +
    +365 Streak
    365 Streak
    +
    +

    同时这似乎也意味着,我每天的commit数与之相比多了很多。

    +

    在连击20的时候,有这样的问题: 为了commit而commit代码,最后就放弃了。

    +

    而现在是为了填坑而commit,为自己挖了太多的想法。

    +

    40天的提升

    +

    当时我需要去印度接受毕业生培训,大概有5周左右,想着总不能空手而归。于是在国庆结束后有了第一次commit,当时旅游归来,想着自己在不同的地方有不同的照片,于是这个repo的名字是 onmap——将自己的照片显示在地图上的拍摄地点(手机是Lumia 920)。然而,中间因为修改账号的原因,丢失了commit。

    +

    再从印度说起,当时主要维护三个repo:

    + +

    说说最后一个,最后一个是练习的项目。因为当时培训比较无聊,业余时间比较多,英语不好,加上听不懂印度人的话。晚上基本上是在住的地方默默地写代码,所以当时的目标有这么几个:

    +
      +
    • TDD
    • +
    • 测试覆盖率
    • +
    • 代码整洁
    • +
    +

    这也就是为什么那个repo有这样的一行:

    +
    +Repo Status
    Repo Status
    +
    +

    做到98%的覆盖率也算蛮拼的,当然还有Code Climate也达到了4.0,也有了112个commits。因此也带来了一些提高:

    +
      +
    • 提高了代码的质量(code climate比jslint更注重重复代码等等一些bad smell)。
    • +
    • 对于Mock、Stub、FakesServer等用法有更好的掌握
    • +
    • 可以持续地交付软件(版本管理、自动测试、CI、部署等等)
    • +
    +

    100天的挑战

    +

    (ps:从印度回来之后,由于女朋友在泰国实习,有了更多的时间可以看书、写代码)

    +

    有意思的是越到中间的一些时间,commits的次数上去了,除了一些简单的pull request,还有一些新的轮子出现了。

    +
    +Problem
    Problem
    +
    +

    这是上一星期的commits,这也就意味着,在一星期里面,我需要在8个repo里切换。而现在我又有了一个新的idea,这时就发现了一堆的问题:

    +
      +
    • 今天工作在这个repo上,突然发现那个repo上有issue,需要去修复,于是就放下了当前的代码。
    • +
    • 在不同的repo间切换容易分散精力
    • +
    • 很容易就发现有太多的功能可以实现,但是时间是有限的。
    • +
    • 没有足够的空闲时间,除了周末。
    • +
    • 希望去寻找那些有兴趣的人,然而却发现原来没有那么多时间去找人。
    • +
    +

    140天的希冀

    +

    在经历了100天之后,似乎整个人都轻松了,毕竟目标是100~200天。似乎到现在,也不会有什么特殊的情怀,除了一些希冀。

    +

    当然,对于一个开源项目的作者来说,最好有下面的情况:

    +
      +
    • 很多人知道了这个项目
    • +
    • 很多人用它的项目。
    • +
    • 在某些可以用这个项目快速解决问题的地方提到了这个项目
    • +
    • 提了bug、issue、问题。
    • +
    • 提了bug,并解决了。(ps:这是最理想的情况)
    • +
    +

    200天的Showcase

    +

    今天是我连续泡在Github上的第200天,也是蛮高兴的,终于到达了:

    +
    +Github 200 days
    Github 200 days
    +
    +

    故事的背影是: 去年国庆完后要去印度接受毕业生培训——就是那个神奇的国度。但是在去之前已经在项目待了九个多月,项目上的挑战越来越少,在印度的时间又算是比较多。便给自己设定了一个长期的goal,即100~200天的longest streak。

    +

    或许之前你看到过一篇文章让我们连击,那时已然140天,只是还是浑浑噩噩。到了今天,渐渐有了一个更清晰地思路。

    +

    先让我们来一下ShowCase,然后再然后,下一篇我们再继续。

    +

    一些项目简述

    +

    上面说到的培训一开始是用Java写的一个网站,有自动测试、CI、CD等等。由于是内部组队培训,代码不能公开等等因素,加之做得无聊。顺手,拿Node.js +RESTify 做了Server,Backbone + RequireJS + jQuery 做了前台的逻辑。于是在那个日子里,也在维护一些旧的repo,如iot-coapiot,前者是我拿到WebStorm开源License的Repo,后者则是毕业设计。

    +

    对于这样一个项目也需要有测试、自动化测试、CI等等。CI用的是Travics-CI。总体的技术构架如下:

    +

    技术栈

    +

    前台:

    +
      +
    • Backbone
    • +
    • RequireJS
    • +
    • Underscore
    • +
    • Mustache
    • +
    • Pure CSS
    • +
    +

    后台:

    +
      +
    • RESTify
    • +
    +

    测试:

    +
      +
    • Jasmine
    • +
    • Chai
    • +
    • Sinon
    • +
    • Mocha
    • +
    • Jasmine-jQuery
    • +
    +

    一直写到五星期的培训结束, 只是没有自动部署。想想就觉得可以用github-page的项目多好~~。

    +

    过程中还有一些有意思的小项目,如:

    +

    google map solr polygon 搜索

    +

    google map solr polygon 搜索

    +
    +google map solr
    google map solr
    +
    +

    代码: https://github.com/phodal/gmap-solr

    +

    技能树

    +

    这个可以从两部分说起:

    +

    重构Skill Tree

    +

    原来的是

    +
      +
    • Knockout
    • +
    • RequireJS
    • +
    • jQuery
    • +
    • Gulp
    • +
    +
    +Skill Tree
    Skill Tree
    +
    +

    代码: https://github.com/phodal/skillock

    +

    技能树Sherlock

    +
      +
    • D3.js
    • +
    • Dagre-D3.js
    • +
    • jquery.tooltipster.js
    • +
    • jQuery
    • +
    • Lettuce
    • +
    • Knockout.js
    • +
    • Require.js
    • +
    +
    +Sherlock skill tree
    Sherlock skill tree
    +
    +

    代码: https://github.com/phodal/sherlock

    +

    Django Ionic ElasticSearch 地图搜索

    +
    +Django Elastic Search
    Django Elastic Search
    +
    +
      +
    • ElasticSearch
    • +
    • Django
    • +
    • Ionic
    • +
    • OpenLayers 3
    • +
    +

    代码: https://github.com/phodal/django-elasticsearch

    +

    简历生成器

    +
    +Resume
    Resume
    +
    +
      +
    • React
    • +
    • jsPDF
    • +
    • jQuery
    • +
    • RequireJS
    • +
    • Showdown
    • +
    +

    代码: https://github.com/phodal/resume

    +

    Nginx 大数据学习

    +
    +Nginx Pig
    Nginx Pig
    +
    +
      +
    • ElasticSearch
    • +
    • Hadoop
    • +
    • Pig
    • +
    +

    代码: https://github.com/phodal/learning-data/tree/master/nginx

    +

    其他

    +

    虽然技术栈上主要集中在Python、JavaScript,当然还有一些Ruby、Pig、Shell、Java的代码,只是我还是习惯用Python和JavaScript。一些用到觉得不错的框架:

    +
      +
    • Ionic: 开始Hybird移动应用。
    • +
    • Django: Python Web开发利器。
    • +
    • Flask: Python Web开发小刀。
    • +
    • RequireJS: 管理js依赖。
    • +
    • Backbone: Model + View + Router。
    • +
    • Angluar: …。
    • +
    • Knockout: MVV*。
    • +
    • React: 据说会火。
    • +
    • Cordova: Hybird应用基础。
    • +
    +

    还应该有:

    +
      +
    • ElasticSearch
    • +
    • Solr
    • +
    • Hadoop
    • +
    • Pig
    • +
    • MongoDB
    • +
    • Redis
    • +
    +

    365天

    +

    给你一年的时间,你会怎样去提高你的水平???

    +
    +Github 365
    Github 365
    +
    +

    正值这难得的sick leave(万恶的空气),码文一篇来记念一个过去的366天里。尽管想的是在今年里写一个可持续的开源框架,但是到底这依赖于一个好的idea。在我的Github 孵化器 页面上似乎也没有一个特别让我满意的想法,虽然上面有各种不样有意思的ideas。多数都是在过去的一年是完成的,然而有一些也是还没有做到的。

    +

    尽管一直在Github上连击看上去似乎是没有多大必要的,但是人总得有点追求。如果正是漫无目的,却又想着提高技术的同时,为什么不去试试?毕竟技术非常好、不需要太多练习的人只是少数,似乎这样的人是不存在的。大多数的人都是经过练习之后,才会达到别人口中的“技术好”。

    +

    这让我想起了充斥着各种气味的知乎上的一些问题,在一些智商被完虐的话题里,无一不是因为那些人学得比别人早——哪来的天才?所谓的天才,应该是未来的智能生命一般,一出生什么都知道。如果并非如此,那只是说明他练习到位了。

    +

    练习不到位便意味着,即使你练习的时候是一万小时的两倍,那也是无济于事的。如果你学得比别人晚,在很长的一段时间里(可能直到进棺材)输给别人是必然的——落后就要挨打。就好像我等毕业于一所二本垫底的学校里,如果在过去我一直保持着和别人(各种重点)一样的学习速度,那么我只能一直是Loser。

    +

    需要注意的是,对你来说考上二本很难,并不是因为你比别人笨。教育资源分配不均的问题,在某种程度上导致了新的阶级制度的出现。如我的首页说的那样: THE ONLY FAIR IS NOT FAIR——唯一公平的是它是不公平的。我们可以做的还有很多——CREATE & SHARE。真正的不幸是,因为营养不良导致的教育问题。

    +

    于是在想明白了很多事的时候起,便有了Re-Practise这样的计划,而365天只是中间的一个产物。

    +

    编程的基础能力

    +

    虽说算法很重要,但是编码才是基础能力。算法与编程在某种程度上是不同的领域,算法编程是在编程上面的一级。算法写得再好,如果别人很难直接拿来复用,在别人眼里就是shit。想出能work的代码一件简单的事,学会对其重构,使之变得更易读就是一件有意义的事。

    +

    于是,在某一时刻在Github上创建了一个组织,叫Artisan Stack。当时想的是在Github寻找一些JavaScript项目,对其代码进行重构。但是到底是影响力不够哈,参与的人数比较少。

    +

    重构

    +

    如果你懂得如何写出高可读的代码,那么我想你是不需要这个的,但是这意味着你花了更多的时候在思考上了。当谈论重构的时候,让我想起了TDD(测试驱动开发)。即使不是TDD,那么如果你写着测试,那也是可以重构的。(之前写过一些利用Intellij IDEA重构的文章:提炼函数以查询取代临时变量重构与Intellij Idea初探内联函数)

    +

    在各种各样的文章里,我们看到过一些相关的内容,最好的参考莫过于《重构》一书。最基础不过的原则便是函数名,取名字很难,取别人能读懂的名字更难。其他的便有诸如长函数、过大的类、重复代码等等。在我有限的面试别人的经历里,这些问题都是最常见的。

    +

    测试

    +

    而如果没有测试,其他都是扯淡。写好测试很难,写个测试算是一件容易的事。只是有些容易我们会为了测试而测试。

    +

    在我写EchoesWorksLan的过程中,我尽量去保证足够高的测试覆盖率。

    +
    +lan
    lan
    +
    +
    +EchoesWorks
    EchoesWorks
    +
    +

    从测试开始的TDD,会保证方法是可测的。从功能到测试则可以提供工作次效率,但是只会让测试成为测试,而不是代码的一部分。

    +

    测试是代码的最后一公里。所以,尽可能的为你的Github上的项目添加测试。

    +

    编码的过程

    +

    初到TW时,Pair时候总会有人教我如何开始编码,这应该也是一项基础的能力。结合日常,重新演绎一下这个过程:

    +
      +
    1. 有一个可衡量、可实现、过程可测的目标
    2. +
    3. Tasking (即对要实现的目标过程进行分解)
    4. +
    5. 一步步实现 (如TDD)
    6. +
    7. 实现目标
    8. +
    +

    放到当前的场景就是:

    +
      +
    1. 我想在Github上连击365天。对应于每一个时候段的目标都应该是可以衡量、测试的——即每天都会有Contributions。
    2. +
    3. 分解就是一个痛苦的过程。理想情况下,我们应该会有每天提交,但是这取决于你的repo的数量,如果没有新的idea出现,那么这个就变成为了Contributions而Commit。
    4. +
    5. 一步步实现
    6. +
    +

    在我们实际工作中也是如此,接到一个任务,然后分解,一步步完成。不过实现会稍微复杂一些,因为事务总会有抢占和优先级的。

    +

    技术与框架设计

    +

    在上上一篇博客中《After 500: 写了第500篇博客,然后呢?》也深刻地讨论了下这个问题,技术向来都是后发者优势。对于技术人员来说,也是如此,后发者占据很大的优势。

    +

    如果我们只是单纯地把我们的关注点仅仅放置于技术上,那么我们就不具有任何的优势。而依赖于我们的编程经验,我们可以在特定的时候创造一些框架。而架构的设计本身就是一件有意思的事,大抵是因为程序员都喜欢创造。(ps:之前曾经写过这样一篇文章,《对不起,我并不热爱编程,我只喜欢创造》)

    +

    创造是一种知识的再掌握过程。

    +

    回顾一下写echoesworks的过程,一开始我需要的是一个网页版的PPT,当然这类的东西已经有很多了,如impress.js、bespoke.js等等。分析一下所需要的功能:markdown解析器、键盘事件处理、Ajax、进度条显示、图片处理、Slide。我们可以在Github上找到各式各样的模块,我们所要做的就是将之结合在一样。在那之前,我试着用类似的原理写(组合)了Lettuce

    +

    组合相比于创造过程是一个更有挑战性的过程,我们需要在这过程去设计胶水来粘合这些代码,并在最终可以让他工作。这好比是我们在平时接触到的任务划分,每个人负责相应的模块,最后整合。

    +

    想似的我在写lan的时候,也是类似的,但是不同的是我已经设计了一个清晰的架构图。

    +
    +Lan IoT
    Lan IoT
    +
    +

    而在我们实现的编码过程也是如此,使用不同的框架,并且让他们能工作。如早期玩的moqi.mobi,基于Backbone、RequireJS、Underscore、Mustache、Pure CSS。在随后的时间里,用React替换了View层,就有了backbone-react的练习。

    +

    技术同人一样,需要不断地往高一级前进。我们只需要不断地Re-Practise。

    +

    领域与练习

    +

    说业务好像不太适合程序员的口味,那就领域吧。不同行业的人,如百度、阿里、腾讯,他们的领域核心是不一样的。

    +

    而领域本身也是相似的,这可以解释为什么互联网公司都喜欢互相挖人,而一般都不会去华为、中兴等非互联网领域挖人。出了这个领域,你可能连个毕业生都不如。领域、业务同技术一样是不断强化知识的一个过程。Ritchie先实现了BCPL语言,而后设计了C语言,而BCPL语言一开始是基于CPL语言。

    +

    领域本身也在不断进化。

    +

    这也是下一个值得提高的地方。

    +

    其他

    +

    是时候写这个小结了。从不会写代码,到写代码是从0到1的过程,但是要从1到60都不是一件容易的事。无论是刷Github也好(不要是自动提交),或者是换工作也好,我们都在不断地练习。

    +

    而练习是要分成不同的几个步骤,不仅仅局限于技术:

    +
      +
    1. 编码
    2. +
    3. 架构
    4. +
    5. 设计
    6. +
    7. 。。。
    8. +
    +