理解Storm可靠性消息
看过一些别人写的, 感觉有些东西没太说清楚,个人主要以源代码跟踪,参考个人理解讲述,有错误请指正。
1基本名词
1.1 Tuple: 消息传递的基本单位。很多文章中介绍都是这么说的, 个人觉得应该更详细一点。
在spout发送的时候,函数原型
public List<Integer> emit(List<Object> tuple, Object messageId) {
return emit(Utils.DEFAULT_STREAM_ID, tuple, messageId);
}
这里的tuple, 实际上是List<Object> 对象,返回的是 List<Integer> 是要发送的tast的IdsList
在bolt接收的时候, 函数原型
public void execute(Tuple tuple)
变成了一个Tuple对象, 结构应该也是一个list, List<Field1, value1, Field2, value2..>这样的一个结构, FieldList ValueList, 我们根据对应的fieldname就可以取出对应的getIntegerByField方法
回到spout对象中来, 在spout有一个定义的输出字段
public void declareOutputFields(OutputFieldsDeclarer declarer) {
declarer.declare(new Fields("word"));
}
这里定义的一个字段,所以我们在emit的时候就只能发送一个包含一个value的tuple(spout部分), storm会将field, 和 发送的value下标对应, 变成一个Tuple对象, 也就是上面说的
List<Field1, value1, Field2, value2..>这样的一个结构, 在bolt 之间传递tuple, 发送又是List<Object> tuple, 根据组装bolt定义的fiels, 再组合成Tuple对象给下一个Bolt处理
在发射的最后 还有一个 void emitDirect(int taskId, String streamId, List<Object> tuple, Object messageId); 因为上面emit的时候已经返回List<taskid>, 所以它就知道要发送给哪些taskid处理,然后将taskid 和 tuple放入队列LinkedBlockingQueue
, 代码如下
; worker.clj
(
defn
mk-transfer-
fn
[
transfer-queue
]
(
fn
[
task ^Tuple tuple
]
(.put ^LinkedBlockingQueue
transfer-queue
[
task tuple
]
)
))
总结: 每次emit都是根据List<Object>和定义的输出Fields组合成一个Tuple对象,,每个接受对象接收的是Tuple对象,如果处理完再发送又再组合字段, 在emit的时候返回LIst<taskids>,所以就知道发送给哪些Task, 然后拿这些taskid和tuple再组合成一个任务队列,通过zeromq发送到目标task,目标task接收到tuple进程处理至于并发度控制, 参考
http://www.cnblogs.com/chengxin1982/p/4001275.html
TupleID Tuple对应的ID, 在创建的时候赋予一个64位的id,主要用来跟踪消息
MsgID 官方解释 Emits a new tuple to the default output stream with the given message ID. 如果不指定,acker不会跟踪。主要作用 , 在spout收到fail时候, 能够定位到是哪条消息出错,能够决定重发. 使用实例 _collector.emit(new Values(sentence), new Integer(num));
acker 消息跟踪者. acker 存储一个Map<taskid, ack val> , taskid为祖宗tuple创建者的taskid, ack_val 为消息传递过程中的 tupleid的xor值,如果为0则知道是哪个spout或者bolt已经处理完了, 为什么会有bolt, 因为bolt在发射的时候,如果非锚定,就是不带tuple发射,它会被认为是祖宗tuple, 上一个tuple会认为已经结束.
至于分配发射源分配到acker, storm采用一致性hash 祖宗tupleid来分配,因为在所有的tuple中都能知道祖宗tupleid,所以在子孙tuple处理时, 知道该发送给哪个acker跟踪
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAggAAAEbCAYAAAC/VnzLAAAABHNCSVQICAgIfAhkiAAAIABJREFUeF7sfQeAXUX1/nn9bUs2pBdIQiCUhCAhEEogFKVIlU4C6J+qgPQu0hQBRQVFBRHxJ70XASkC0jsEpJNAEiC9bnv9vf/3nbnz3t2SzbYku8lMcvfeN3fqmblzvjlz5kygACfOOQo4CjgKOAo4CjgKOAr4KBB01HAUcBRwFHAUcBRwFHAUaEoBBxCaUsT9dhRwFHAUcBRwFHAUEAcQXCdwFHAUcBRwFHAUcBRoRgEHEJqRxHk4CjgKOAo4CjgKOAo4gOD6gKOAo4CjgKOAo4CjQDMKOIDQjCTOw1HAUcBRwFHAUcBRwAEE1wccBRwFHAUcBRwFHAWaUcABhGYkcR6OAo4CjgKOAo4CjgIOILg+4CjgKOAo4CjgKOAo0IwCDiA0I4nzcBRwFHAUcBRwFHAUcADB9QFHAUcBRwFHAUcBR4FmFHAAoRlJnIejgKOAo4CjgKOAo4ADCK4POAo4CjgKOAo4CjgKNKOAAwjNSOI8HAUcBRwFHAUcBRwFwp0mgT0sOiDiPzcaP1t3vnitB3RvW6NAMzK2tREYzmuk4mPTg7/b26ZeQX1Jwyfv+bYHi+bRl2w800VL/SnrpQd/L6PG+fG1jWuCFnxHjhTT0UgM155yeVm7m6OAo4CjwDpAgQ4DhEKhIAEOsrjT5THy5shQvBE4BG++1zAMFjIvAuBKpcGeEQvFOCZk+/4GbIbti9ZzQjciVpNik+aeVxB05mWZZjEk28QXTZMjX6QnGqcQDOBnXkJsQLRFkbeyvXCRHVs2yjbVPJiIr1zsAoUCQuEl+0UOiYcQIBgg881JPp8HG4ZPICzpTFZCITwjX4IAZpPJZCQSjkkikZV4eVhy+Qz6UhLvwkglLFlUMsKkClkJBlOShUco0Ase8II/u4CyeZSDxcpkkhKJhvQ9c87bArP88DOQAOVlmbUeDiQosZxzFHAUcBTwUaDDAIFpcGAusnuMsRxrLTMJcNBWzgQ2gGfLk+wAreMyHRhF8dn6tefeqcjtyaj7hVXyeq4RGXwv2EakPR29FUjYSLjbdz6vRo+23ejJdmwGQvyF8MIwozxm5zafEIECrkR9g8TKysHk8Z7lgF++kELwnCSTOYmXhQEmGDQCOJFB2XLK3jOZnITjEQ2fRfgwwASwgsE4rDjLgCuTyUsUSCISiWjN8goAPMrYcto7pQcWva6o8s7fUcBRwFFgHaZAp6ZOZD5ZpMCLzs/8gz7Ow3Cc6fLi+MxXlDaoxMHzc/f204I0D2HGziugkhz/RbkA/5HenKtjds/3lBr4RTsaK2ikOABr/kZkamxTj8UqOCgKbHxZqfTAi0jJQcikiCfklctLNgVujntZeTlm/2kWW/l2JgsQkMuAqUckHg9JfT0gAYImkpAgsF74l8X7MoADMntABa1hfSIhW4+fJPPnNEh9bRKCAMgsUIRoNChfTP9Kdt9jb6mtT6jEgnVjOVgJWxemobQyD/rLOUcBRwFHAUeBxhTolASBSRVF3HhWvuMNxDYbOwaX7sXhWRlPV4zRPiyyzrVvCAS3DFyXe+wPj7BkioAPRbrQ206q6e3BBmX8/tUaG4Yx/SChOYGROgJTIqDLPfofP8jQC5AABOOSyjRIOFYGvwKWEiAFAEMPBEN4BuNPNyDJLIBASKJlWIjAykC8EMMSAnPNYIGBLD4vqWwKQCIMKUIUPmlpaEhJDPEryyEtCBq9BC5RBJBANh9EWuWSALiIhaJaZF1wsJ1N6430IUUoUaZ5zZyPo4CjgKPAukwBb+7fMRL4Z6d2Uto0wZK6mc5TJYxBOoyIvHPWy/ldRy+jz8AZ69p7kZ4ruthqGVyck6s0hhKAImc3dCUDJHPk3TJDtpsCAibg+atUhxfSoESI6dGPcTR/LzBvCiRs5CBjgdF6iRupPVo9n8UyQE4O2u9AufySX0KHICRXXHaZXHzxRQAGYTnkkCMRD2VDfgfvu4+Ul8fB8OPy91vugZRBJJVIykxIAwb066/hz7/gAvn+gftKTbIW+YekqqxKoliKKCDc7OmfSd/qaimvKJdLL79SIvEKmb94mYRDcS2mTwuhMSCgAoPWzjlHAUcBRwFHgaYU6NToyMiWAVE5jc4CheKMFAyA4SJ4HYGnMhBcvNtlCM9LB/P2XLYyVoKwNt4JgigBaOnekvaGLiN4zi8RoJeftgbcwc9rNxvHY/eNJENG3a+YbCkHxOXiRQCNWZRKIFiQUg1IDwgSPv3oU9l2620kWZOUW2+9VbbYYqw0JGrlo48+kfnzl8jXX85SMFBbu1ySuaT0HzgAOgSQIkTictYZZ8vf/nKzNNTXy1ZbbSVLli2FJAFLD5AKUFehdnkN8s3JBeeeJTf95Ubkl5bJu+wm8xcukf79B0gKyxpFh/L4KVCAhKIpfUqB3ZOjgKOAo4CjQKcAApk8GT91zSlmVgkzfqvI2V6AB/wXgtg3oNNSTl3NRejAMRxjfqcuDv1MY228G4Zt6mZn+fZOhk/6R+ERwmX07tgO5srhTuG7vVRC4F0WILAD6O6EFXwLRUDnoTpVOPWkBcywQCDgAyUmGYAGgIcA1h24O2GnnSbDOyCxSFT22PO7UDKEMiLiBKEjMGzYBvLZp59CB6Fc/ve/D2XvvXdVCcLsmbMkDT2C/b+/D3QLymT8+G2lorI3YiEu+g91G6rKorJk7rfSUFMjB+63r4KGHXfaWaqq+8ry+owEQ1ygYGHxQvUkeBlHf2o5kIbOOQo4CjgKOAo0p0CndBDIPCje5ygL/q+zXOs48HI45syy6MsHTEfJpMiQKB5P4iID4yvGac8dwUvOZrKW3UsUbVRb/aHMnfTlDF4ZnqG5/25jMR0Nj8vS2KzLs+EQH5HCKgbgnoImDu8UAOo/4xQMMrTqPeDybty+yDcBb02CywMRzPiTySRAAET+CJ9IQicB/rpVNhiTLz7/SubULJeNN99CRo7aVN545RXJpBKIBx0FFKaA3QmVFb0lmwlKGXQLsAsSOgtJAIWMZNJJLH9gxwS2RhAglFVUallDEEPYspZqwx4JoKr1dM5RwFHAUcBRoDUKdBggFAfZHDkDmTyHY8wYMQbrO2UUhumn0lmJYd1YIgFZwhEf69HcxMaNcLV4om46pQnGOA735XN7G9lXyd++998NOyTbMwP/unb3r62TUpzLU+2OlLWQgdQJYE9gPBCRctA0BFFLBZizbndEE6WxbSAO5b9ApgDxfRrKfVQCZMt42v8kLZsWSMSCEG1XFS14ywukPzGCggTTHwhFgsiENg9SqZRUVPVWewi86EcJQIA6AJQqxSpk0KAymQtpwMQddpRlyxbJ+usPw66HuDzy0KNy6A+nyvPPvSQL5i8GYAhCEhGRRLoeWx9FBvYbJnHoHjz00ENy0JSp8vjjj2M3RD0ARkYqogQJ+EcgwuKqQ+0g2UAy6lhP5xwFHAUcBRwFmlOgwwChmBQHXozxZEg6BnO89QZj3gpgCOFoGLPGtGQxsKcADhZIQt585035Zs63Mn321/LNvLnYrlYn5ZUVKoaua6iXPBTc4uVlerdLF03vzM5s7yuWptlDd58tNtUBaFqBlZU/gNkz6aIrN4hMxmfX1skUYT1AMhDVV0RiMnzQEBk5dH3ZYPBQ2X7biVIFsX4VwMES0LsvFPuo8Z9JpSUSi0oK+gORILtHkbOymdvuMKNnORqwJTEag90CMGkCAzWKhH6QxToC63bXHffKcScdIyngwTyum266WQb27wNphsivf/MbmbDVDnL0cSfK/kdOlQH9h6jxpESiXqr7YJdCAn2mIip/+OOfZLMtJsqhRx8v+x96pMSjUYlitwSxiupDqBiLpVe4pI++btr2OrmQjgKOAo4C6xAFwF85jHbQKUfCH8wuk8qgCtiiRqatc0udHKax1z1IhoCgy3G9vfRLuenu26R2GZTSGhISk6hk09DDx6wuBGbF7W0ZzGqZRjBsZppNgYH9zVJruA4Wf22Ixnk+nd0torKDJiJ0ivZJ0wRm8oEQ5sygM0HAjw49XHYdvZVUI341thlyuSiXzkgIdgcSkONTxB/m/kW2szJZSIpwUaigq/sAJ4EA5P2QBOQL2E7ItseuhkCArQ1gh8CBXJnaNtDdhlSSCOegd8J4MV1rCnILBh5rGhZLrKoMZcCsH+BEkikACYgIAtgmmSjI69P+J9f+4Xdy111/lziYfyiNNFTIVE8LSUhjPdVnKQDT2CUr9j3YXjLLKmpy0fQU9h/2TdbE1JrPzjkKOAo4CjgK+CnQeYCgG+AxnuvYC0U0/lWTvRB1w49XDZhNA2aUny6bI+f87krJYnrYr3o9OeB7e8kmAzeQQev1kyqpgFwhpWZ2w8Eo2EQI2/dglhdprmgBweRoAQILsKKQa6+/UbQzSwrUHjB7RgzjI2Ajw60t1GFGXi6zar6Rb5cslhffelU+/PxziYKjHr3X/jJl2+9JBZhsBcUPEXBdNF8ae1EpFYqyeQkQ2MgeQOAvLggpQPA0FhQgMBR2FQT0jANyawCHNAFJCHoDKF0eTB8GkcjZc9o5kI7qEwCUVBhJSBJgsTwKQAMpwVFTjpaHH34cWyErsK2hQj745EMZuUE/pA3LiloYRCZIyAF05OATjgpwg/YCApWoLouQJuyTlIYYRVpTHaNpYZayWHLnHAUcBRwFHAX8FOgCgIB1ZYzAGU85jeO1WvbzVN0pOl6KQXophu1zf3+FzF60QCZMmCAn/OAY6QPpQQVAQAWGew74OmTTwA7Ss8CgLQBhXW1S/44EMj2rk09WGFYxi/6XGijyxcB0U3ieDxgWkjK588WH5Jlnn1H9g6vOuUi2jA+QXjSAQL4LKUK2jOaKjaSAditsYmbmDcbONlZWzJyxrl9AS0HKUPDAAVkzXX1dGiL/MrwDWMHMn1KENCQZISgQqPifsZFEJt8AiRHYNQwh1WPJoxLLSxQJ5CmhgiIjpQXMO0tQAAlFHNINuoZ6LjNU4gm1ZjqUSiCbIPbQZmhcCcaUDISEJ97b5RcDIwhwCCx5Oeco4CjgKOAo4KdA53QQMGCTPXCGqdJe/CPTIqPgb7pMFgpvWCp4+dO3ZO7ihTIS699n/uB4gAKRXhieqzDDVVUyziY5Tqt9fs4+MXS3Ydw2bMjLbB27+QGCMlrQ0wA0j+WRIYKUsVBMkmgHtWIIRlon9XL8zj+QJOwK/PuNl+TJ11+STXc52Oh6gCGHodyXtm2JdHWnhMEBVvfUkyqY9uL2AUoNuL3SQAaj0Mi/FZXYdYA0A2jXHPQOqKTIrY8BJJqG8moykZZevcsBGrgcAFAAZl1ZXqU6C7S4aA5dojQDZacNBEgowti+mEhhV0SsHPqNvSSBA6CwKqI7Hii9CqKwaeyUiGEZRfddIC0WX519oKTD+rm7o4CjgKOAo0AzCrSBBTeL08iDYIAXZ5kGJJi99zoQ4yJTItN4BUqJaYiPD//uPtIPL4YBAPTjC8wm81hzNgf4ZDFpxA4GjNz8bc4FNLCDf5v/NgO/l5XNcp25k94U7GOlXu/FXf9gkCRtHncqBYZB0ADoXAbKwAyRrI/9DOXZhBw0eQ8pr+4lr340DdIFnJlANAFxPTmnBR9KWx8nJVAwPwnimAn+eEzXSg2McWQqrWKXCqQBQYCBHJYRqP8QgQKh7maA8mkUyqtVAAfUj6jAOQ30Z8HJ6BMJHMqkWxXzUlO/DHlC2RUmlSNQdERJsU0SuivItwHAIgTFVkoOktBbCHNZAdKDkDEKASDDwpluTpqUyur7wUfnHAUcBRwFHAUaUaBzEgQmZRXiOBCDWai5X+vwyEE8g/vseXMkWlEmm48YBaU42MqnchoYQiwODXcM5tQ9sMkZfkMWRafDeit3m5/FOv7wXCkvMYhSWkzPhOc6unV+Rmj8iFJM+uYvUrPr68VYJYxlU2KODG/fmDX8YoRG+Vmm2vyt8fHNfZsHQUa6VRBO88Mj59p0BAdkjpEYjk/GzL0CdCYpQ/AvgCGvB63BEb0HSx12ODSAGQcBL3TTAkuNxMjedZ2fadGXjyZp9TPh9A0ubrC0wEELYciGvOLYNkkP2j0gkOSJjjy0ye+y3OkCxk57CTn0CwgI1PRyElsZ+VxVUQGAYfQreDATJQ9x1CeD/hbDDol6lL83fkcrICmpr8Xul6ie/ZBHHNpHMDUwMi2qPpgTKQ3dbJvbXsRysS62Zn5/f5ktKVb0vlEF3Y/uS4EVNKS/D/gLX+wX/m/BdYLu276uZJ2iQOcBgv1QOEvFPzuLVeCA/xRP00bCApjSDWCwrorDkA2KTJ02s/5r7uG2rCc0qarJ2thTsK/MvnbqsZtPnIzPugKZKTXscVdN/+JH7n32+G0AgGEePHyIuKc4a1YwBIkI0jC2BshEzRo3LQdwtktYYwTiKAkYGEw/UAsPDA5hye2UICgDZr1k3GEsv7TmGH2Fzv8Sz/xZSo1if3igDtxeaNuD9QljXd5ICMhAaa8A4n/8ox5BkGYVUQNoCOCvaSHNxqIfQxoPMTA3U1tbFOqMEEzob2bG5QWIl1LcPgmJAAGLeckAbAJsZ4UeRC6NpQOUgwBGAxTS0JsIo+9AlwDpBFC2CN6nGnAqZAWWIOAfREYsFsGPFgtSijhAAuOQxFGcxQA0ZLLzGhG1VPASxp5K3tlT8jDRTPsdap8Byg6EqsWuAQlFDEsuTCSLZRqWkXkm0QdCCAtTTqXlFpahiWu6o6Tpe/d7DVJAd7aU8teehz9sX+jWsqdAnwp/0f/4jXAJDzJOKGKHsBkHHQJLW9hSswYr4LJ2FFi1FOiS3s2BVhkCHO+Wh9jZGT88fk9+4QJ/d0nmrdLH+/o9nuMPSsGBYaAEDfaNKbmdJTCavSzjNXXl5kLzz9aWMWneicNKkRbIII8ZL6UAYYjWmVH98uVS0atC9SxCmFV32nmZ+cY5TbJYpVYzQChv+19TSYaBB/7WLCVkyWnztPQiLYp1V2RFyQG2rWJpifgvCAZs+0Y6RUaNKwQ9A4AUghZFLdooYPEw7pSG4aZwhAqOgHlYnkgCHMQ95cms7p3EyY1AAjHSkZweiTNNamIwPehaQpmRnqZNgpRUEQghBIGAcWT62OzIzkkJmAIUsx+EWCkWi0hDHRQ7AWL4zDKyLlHYY0ijjGEeKa1SJdP27t5z6MAmz4DJhyA64/ZY7e3sBtoD+JvfL3Rm0P/YcxNp7MKJxrD81SBVUKbF+qnXh9zNUWDtpMBa08Mt47HNZBlV42bjp9/YGRDD2MbQEzcImuGBCAI2HslcvJmqmQ1yJhExgwlDIhh96MjbKCBQBuRxz1QmLWVx2AKAXz3sPlT1gclgQgYESEPRrjwW17R6vrMt4A2vvkpRcsBKqllkKEySZ9NRB4EbFtPZpJRxfQMDsFo9rKAZZugrRCpwVDSsO9KIAuLHYpB0YLtkKAb6YodDGAAhAHAAAY2RWqCduBShBpngR2GFN9Jrfpo2l148irMYEYSjwqRuywVAYBtHeWkMlLkhi10S0N5AEMUkuGehWJnCjygUMBtJG7w4/pshgyWGuxvadBc6oO3RB9mGXPE0/aOkYM3+UcbdMgSfqRy232KZDt91BOa+qTeTZb+lOU/nHAXWUgr0aIDAYYZ8uCk4aNZWCGgZtr7TGR/EyTpN4GwSD/hfPIQIDMTMCSHIxkZ9is0Nv+eT74AfempUw1hUig3GxvKQofAKYv9+PRgjdTNoGbIOW++oaR+FRCEOcNCTHalk6OKjL3YHqJwWSwJ0Rg8ggCWGBBh6VA4//Ej5x623SWVlTGpqE1JO40hcAqFmImboAdw3GTVK3vnwAzRRWCpghpmZzJoxW0488UR54OEHMFBDqoC0Ka9IcQaI+JQLsDOzRDlIHn549HFywx9vlH59oe9AewxsI6RDBs/WNNKjEvVzKlJCml6bcmmEbcZtuipNRtAEjDypsiR0HDKAEEvwl2DPwE62uuk1/rthN839naShZXqtXrqY/kLAqKbF0SlMv2IpCF1V9qfGtgKQMlGhKkV9HXjk0Td5GBiFXlYWVepN7slRYO2gQI8GCGwCftDqLKcqetgXTe8MiIGAPMyLpgN8o3gmMQMj+IIygVIADm3cnm8l4tTWL8IGrxwMbZdYuDugPFyO44yx/x8zEu7soKJgEFPplRa3afG72W8FR43KRAKQcvT1dD04I8dM7fPPpsMuQhKSBO6ugPIhwEECtNFOqEaPwpKCkiF1VVKQFFSVYymGs3a85vkKXK4IwsgWd71EkF6SZpwhnVGQh1AZzAO5Vjxi+ChZOK9ebvzTLVoybr80jQG9BY9X2/ah6QctK9rCU7/QxiVeSOFdGmKIOUj38wWz5fNvZsn0uV/L/778XGYvnqsHQkUAhHiSpqmv6VumZ2kOzl/7QfekAycGnBTo1lhcXGqq7tVbNlp/uIzdaBPZcNBQGTNwpISwA2hIrBLtzX4clzra8aA+EVyPH0C1Fs45CrRMgZVOvluO1l18dWSGs/fWyuVxbg3CZ1wcu3TNmY7snloEZrDQ44rxiqzfzAI5nwCrUtGAmecwvp6BACpSO944TRSeCIRBB/+lEvv108kExJVRHYhUlKlGgJhnT3cexy2Sl79L7UGRP2mRyaTk7HPOlKeeekb23PP78vRTz8k2EyfBojJmZNAHOPfMM+Sh225T2wVk1if++CcSg0XNvn0GyII5i7GToVJtIkBlUZVEv/jkUxk+bH0d1MdttYUksG0zCSXFI4+aKm+/9ZZsiN0yNTDnzZLYolG6o0sM5P54o39pnwF3tpoG5NoEQEguHpDl4Pyfp5fIlf/8s1z2h2vlnif/Jf957SWZv2yJVPfri/gGSJjUvK2l8HO/Sd3uTwd+osbqK5URKUUISC0Mb0375CO588H75MrrfyunX/NzeR/gcBm6Rh06CY2NcecM9WOc5IAfjXNrMwV6PAAuHiVRZFD86vnDeOjAD6dedosiObr10wcO6QQHmGHiHSUCyvU5ZGDgoBEgMhIOIIaRUERttmXmcUoi59BkMgQJanUQF3EExdERircxI60MYi1TQQPLwtmKyi1NMW0hWZa1wlEBEXXFf9oySGdwdDN2Avzuut9CInCF3HnHffLF9I+ltrZWbRjksNOASy48YKm+oVbtZUzYdjv52y13yP9efVsOO/gwufmWG6SmZpmyHdpCuOTnP5fnADbGTNhKbrr1Frn8F1fIlZf/Qu6+426pWVonlWWVUo0TJIkF2C5maYHAzSOw92h6Cnbf8AG7FNSGA8LPaKiRlz7/QG569F5ZnqyXDQcMlgljxsnGw4bLcBj7GlrdT82BQ+Oh1RbzS55aDehernYK8LMzpriNFCyNvrUwUSMzvp4lH332qXz5zWyZuXCu/PyGa2WPHXaWHx1wKOyIlMG4G3ZjwQ5HHmAyRNPkzjkKrKUU6PEAQZm7x/BX1EY6U2j00uPiBAJw5i8OiCL3xvY3E9ZHGjUjjDT4glHJZQIQZ+OJ2+9yOgs1RySTz2h8atNTWoB1S4rFYWxAtp04UW69+x4Zs+UWPGcZ2k5Mp3HJGLXHOq08CWS4sFHqBBiCImF9YimWFKrUcBMdj4Dmb95j2CpGUBDBYMs4PEjq0MMPV6XEnXfeVpYtXYqdBLCJQEYPKUJdqkHefuNNmbDNBJj4BrTDte/BB0hduk6qoxVSVlYmy5cuU4VFnmfZzKmiAUtJuEEWjt9EdAAoXFagafAXPn5Pbrr/DiwxhGQKAMoPtp4MA1/c/FmAmSlz5gh3UoRQKJNas1ycRzenAL+8As7o0B02eGbP7VvWX0aM7ieTcYhZA1r24Xefl4efekKef+NVWbJosVx53NlSB0lVjEuF1J0pfvDdvLKueI4CHaBAjwcIOkPjGjTHeB2peVhQY0qY32bLUqAAi36Yzech8qYCUggz1ywU3YKY+lNBDnvXNCGyFq5nqyU+zIIzSaillVMKwCzwlsp4NN4DLeYwAEBN3TIwvGrkja13mFkEIuagKWWS5InQgqYUIYI1iQLy4D/u41/TjjsMGhoaQAmK3zFIYumjgBk9t2CmIEaNon5aWtozIDNE/TO0gghmTukNd3lwiyAP5KSSt4FHAQ0TAv04+HKrGE+UnD9vCZYTAACog6FWE7kNEm2AZQJbDtKLIlw68mxsbDDHQ6NtqJtAgMG0opBIzJ37rfQeMAAnT0JRAW2QhpUlLhwwPtMzYGTFiqCkPj8AQsIEdCNCveKyEL+/SC6SWx97AG0YlmvO/ZmMqOwrwwEOoKMIo19mWyTjcnumYjwtLC4+uHuPoQOBJe0d8FunoyyAJrxoqSWIiQLB4pHjvydbbzpWfvvH6+WLGdPl6Y9ek13HbCtJhiOqcM5RYC2mwNrRxcHQPJygM1AzSptWM7NI80ylwCwYzPy538i4MWOxvl0tvWHL/7//eVaN3nDye/Qhh8mNv/+jjBm9qYwYOlQ2GTFMaqGYFi03zDxfn5Zjccrg0L6DZfjQDeSwPb4vqYWLZb2qXjL7qxkyZpOxUlcD0TmCz5w+Q7bZfEtp+GaBbD92S5n79WzZb78DZNqHH2J3AzShPc35Ndm/kkkc5ASGamwhenQCI6bJ6whsCSSxFZMgLMDZdQLPqJcajQE4IAM2lgoVoyluMnMxA8aCWEZR40JQ6CoAGLFtCD4IGIYNGyLz5s2VZVjPTwOg3X333Tj1MSplvXrJ4sWL5eab/6rGjm678y7ZcKOR0rdvX12G0LwBPjYds7m8+OKLChouuOACufSyy2HzgDN8kSVLlqjdAkoSWnTedhXWi/KF+po6KavECZJ4no+TKm685zacXZGWg9FWoyoHyGCAAxw2KTFcKIHiADKTCNetCRBAC66ouHvPogOVUtlf2JYKFPGbgE+NZqHvlaE/YwFMNiofLEcedIj297sffUi+rl+kOJCXc44CazMFejxA0Nmt4d0KEjwdQm0zMjEcrhB0AAAgAElEQVTOTqkpmMbxwXmPoZ19xuly1x13gDktl+eefkYuu+RyaVhehxjYVofdBjf94S/y0fvTZPbXX8l11/5CJm6zCSz4LcYsul5OOPY4bHuqkG+/XSazvlkq/XCw0OXnno+pCOwdIC8ykEpY9stCKTFKAz5ghmWY8b728YcyaMBAuf+hB2Xz72whDQAHnL2s6UGGs3EybrK9NCwLccsgGTjpRtqSKSstwehjMH9Mi5AEXaQt3zFsXV0dDUOqdIFr+Fk0QgTa3mnsTKDUoR4gJAyRbL++A+Szzz6R3XffTfrAHsThhx8qo9bfQIYCiJ12+hk8vFHSDUkAt34ye9ZX0CivkNPPOlX+duvfIOmhpAMABcw9EonJH/90gxxz7P9Tic3LL78sZ51xJkspdQkw+3JIEHB60/K6GlXz0FVilo0FZF/x+gs7P8XKaqcBjvhm+rdYf/70E9kAZd1v28l6doXCDL5kBEhLGD2c8XZEIOEstkbkwV3cvWfRgXoycXSAONqWukNsV1U6ZnvjTtBLq4k5bGbdduPxst22E2VuzRL5+OsvZTl2JLHvrOnvl0V1zlFgVVGgxy8x+AmjwgN82YruyQzgaMWPYuwoZpNpKMBFo3gPTvTXm26SP/51omy9zUR55fU3EDIhecz8czAJfO7pZ0qY2+fA9Pb47mSpri6Xx//9oIwbN1E+/N//5LUXXuNiOE8HkmuvvFr22n8vSS1bJg01yyVOmTrOCgjHwWAh+i6DrYM0Zt4xMFwa5CnAtHIOHCsIzqUDEq41qebEWdG3334rO6OewwGOdp+8M+o5FgqFv8eMPiw/PulkGTIEs/2vvtFZ/EDM/EdvsrEksCzBHQEEGLRpkEpStI8lAICHLK44dAVYRw6h5bAFkc01SC9IWWbOmoG4aSmvjMrVV18tv7r219iuWC+9YduADZeFlbo333xTAkj3H3+/VQdummEeEB8oz73wEpYReG5ESPqgLMtqazCgG+PebO1kqlZ6QTmRFH3rnVeKlju1P/BSfRVQXZm8wcY5LAeVleE8ECyR5KMFmT57plRBirHV5mNxHDmWFRAvkKa5Z2P5ku1ldBb0AWkxZfp0z7sxCc5+ZmxWtPfeXevVFeUyFku8zqH9A3/guPSgAyN+846zR1X7ZPy4LeXZD9+WD2dOl/033V5S6BNl2sedcxRYOymwFgAEOzA3biB+7BT78vRAzuI5fkc5zcUWuTsgzt58w01lSO9qDPxhufzyS+Xk046TIETtXIsfvfHGCAfSQBkuBGCx6aajVaHOWunjrFXl32VxKR8EbXasx8/BMkTv3utJHovm9VCq6w1mmIeYmkcWx8pg7CeH/f0ABzyYCJNx2EBAefGO2/TWpOPsubq6Wq688hzpA6uBG26wvtbn0ksvxcwfWwdhNZAA69Zbb5XlMBM99UfHyL8ee0z++IfrlC5HHXWU7LbbbvLJxzNk++23B+MHUwV4yoDxMh1uY4xz66LuDjGQiOCA4oY8T3jE0c/xOE5ypB4IpBNh0CqMLQXYzIjwoDGWKSIAW9xqyhMeyczJ7lQfgksWeJOC5CMOuwgVBGOwbsfmjoahAIk1A2ZN0b9hKIiJ8dzjA9o/aI1RV6jQ3LSz//XCeVKXScqmozZGX8COCfSHaIRlh2QEEe16dRR74gPUfUAoxQlaKnfvSXTQ746Nh0+Q/cNID0zv0K3LGgD2OBCAy0/cwUKjWdNmfKbbHdPoQOheBkxoWOccBdYuCqwFAIENQpCgPMegAt7wTw2hYL1aDyPCWnoITESPC4SU4OOZMyW7PCHvvPeRHH/icXLk1P2lT//+YNhUWKvHoEGEgc8/kZfPPv4CjDIDPACQAO7OPf3RajD9ZI3ULloAppOXgUMHybz5i5Th9+7XH6NHDWbWsH8ACYaCFSr94bmyVxW0n8GM1FRwcQ6zxnoVzzKowGmJu8AmwXooBTtEFsBm/Q020HV4MntKAh7917+U+1FCwHX/Y46eKtOnf676C9OmTZPrrvuDvP/+/+TUn/5UJk2aJB9//KkccMB+qmvAoTaEdCjVyedTkoHCJifesYpyY8VWz1OAmF+5CwAUjm0uYDE4oJbq0pAaQFIBE80ECTR3nAdHDwJscQBnk/PchVQ9zN7CRHMM28+S3CmBtCjMMZ3C7DDh4E4Gz77B9WZl7KwTwQzBG35/AQlCAuadhw8dBoU1gAMvHANTf4KoAqaRwEzwgnkwDU3T3XsaHdBkRcc+oX3f82E/0eFEoSGVFwMyvGKgSswWQm+mFhLHPmbxyZeKe3QUWLsowL7fw51ZUrCVINMwyN8wAoKDJMThIWrGgxFlYH1vG2yP+/SddyRcWanr6OuvP1R69QbDD+KAoEyDnHX2aZJevBThA/KvB5+Qvv2GyX4HHiHDNhglG2+yqZx73llIPAEOl5Hrb75ettxhgpT36yMjR49SRaYXnnwSC5txefrpp2VZDdbBwXwK3M6HMtRS1wH8qxxMlwaDzXxlzTUBAQKlCPVg3DmAFkpJKDHIQH8gCmZLcEBFRcNoyYwxm0IdB2D3wNZbb43liHGyzz57yzPPPCXz58+TCy/8mSxatFReeeUVGT16tNx++53ywIMPybT3PtD0w1QepI4AUBJPs8yAGceRf10t9cLhoAxJPQiCJw7Xam4HgIptGtftkKa8BBwN6YQy/CxAYBmkOWlsJaULovyJFLatWvhr8KNRkgTFbf/gnTb4sR0BhpZ4BmRA5iyYA12LmFSXcd4Ix7gIGAAwjGLLagX6RByiZZaOEgy2n7ahBRLu3mPooW2rijO88ExdBNzDtKwID7W5gSd+p9RVCOSTkqrDMiUmEb3gS+nBmv5+2fWccxRYVRTotASBs3TOkL1DdYvlpIjOztjoyRljCB+iRSTe0m2pXvxA+bW1884hWqUF/IeCqNBZB26TEBleHDNkrm2HsS4egTj7ppv/LnvsubcazSuv6A39gkeh9Q4AgZlrBIzmgEMPls3GjoG4OiX9qsrl9bdfR2V4FHIEWvW3yQ+nHgljOQMx2c3I9hN3lLvuu5e5YltcXM654Dw54ZSfSMNPlsoZ55wr6284XOphKKiiurcMHTlC9t9/X7npb7fIvt//rpmukAt1oN5aPZ+j/oXfy1La+hv9DBPBDmq8R7kdEJKNWJDLK3BgfjyXIIRZeRYidLYTRfeauJeBVeqj2VnDuk2KzINKi4ceeqAcdNCBmJ3/UxW9fnPtb+Tiiy7Ukxfvu/dugIv+MhRWELmJI44lBM7gK7HFsDh9Q6rUM0gj/wDeM3VapExTioPTHLmEkMYRzWXUW4CjbYQ8pBLRGH9jmYKzfD2pSX82GsWN5kdjXMwdHJRIMDClHLRySSlBBr26nEtAnFYiHZbFwk/b33inMa1iXjbP1XI3355pF/Q/i3xsR1CRGpzdLaNtaJd68EymVywna0IHT30AjfSOEKw7n236+gOu0c2Es/4aRN/jjy8d895GXFN001J4RTHjRcnDe/JAApekeIhXDutV5RgbOOFIY9mN40se7d4NdiqXKuOeHAW6mAKdBwgYhLg2C0G6Fi3mGS2y4KCWYmrMRLl9KIQZmBnuvVp444T+ss/tuuPr9cYYhQn6XBrE+SvEpQKUUZUOOVBitjh+x51l9qIlJi4ipaH5DgUEBMZMFgxhm912kYv/cL1KHBhe5dBkFChboDws/4QZVoE9BXX6Dul6g+dhJxwrhx1/LPwQF1mfc5FnOwHM5p+PPAw/pMNysp4WJbWrzl5ck7tJx6YHP9KdyXlk8Sb+RnxKfsGtiGwiDmw8xpYzYxp8MaZxOeDhJZgDD0bmYMgZlHJkU2AFX2HS1HOqj+FzsSjjoxU8bwKG8wCUzjnrbF2K2HzMZtBd2BRSnG3k/PMvVCkE09Myo+nSkLRQgsH2jAZ9MhaWl3Yo4Fj2eLCxfYMAQIJx3uze+2U6haG5MZvNshubD5oWcmZeedQL8gypwFbJLMBGBP2IpVAtA1ZJ6UKOyhiGvrR/pZQokYO/VoszSrgsj+08IB7LYX9qf8xja2otlnLQ9wFm2b8LWn6j2MnlGtaKm23SWDYzpqzNkdiw2AE/7kIBcEQ/IADTQ7X4DXkVz+l5IqbvUD+kAmdnpKCDw3ABGCDiqlEWkii2Zx4dk0AwBsNTtCHCZLj11QCz1UKyljNRwIQi+duQjB+eBJN8l0OHK5RFsayA+kKPiYCB/g4ctExS57v2UMCM5p2oDzXZ7ZBpmbT/W6vgmjDhAxhFiAwJgxYz1TU+BrSBO3ont/NASbEa1o93fvn2IpOHaWS9ONiBMdEMcLQc5lHwO4FZQgFLDoE4hIdk+hA1aziCAFtW8iFeNJ3Mo2D53qap6SIgB1C+529WVuMwP6bl1VnvfkoVS9++Bx/dLG/wk5JFYfZ0mh2Li7ypkJVjK2DaSWbDWbSHcTQsV9pVQ4IjuX1TnKJqELi2lZ96GAQbY8eOBYMoA1D4QMaPnyA/h7lkKj4uhVKncjYkRyuKZBoptgWLp8O0mffbXE3OJX8tBf/oAwlrwjf2N7GbpkUoxD5paRcCYWiXn45+elkmrDQrUqONtTf5rrq/tpSmDio04MUyo70IDpLLFqPgWEzBDhDWjLoUVNNg92WfoG0QXYoDOOM3TEXdBE7fjEG6FAWnrFu+zEhkVC8HOjhccmIPIbLg948ORXBA2xkxbEflmMBX9XUG7KWh9MlPiOAgBcVfgkDqsaiF0W7gLMl0TGJ5WigWgSKnBOwtzjkKrCsU4GjacccxCIMpZ1pgq4Zvqh94JL62GO4Yg/BRGcW2PAYYmiTmR2ikDkZ6m8OgoxKHDt0Zt2MXyxGBXkASa9ksdJynC0ILvgGgAae9SwI2+AsYIHlx8LCgJs/pBQUVYLa6vNLB/LsiXhZ5pzlok92jDrRsyMOIQhCTB3GxLYIUm1vuz/Ki6Fx7h76/0p2OtOBFZ1is90NBAhlD6b19Y/mm/d3SnYyH5pTp1OQyTmXs3bs3pAfnyxNPPCEPPfSQjBkzRl599VVV6KSEglIHLmPojHU1OFvv1ZBVl2dRbAO0Mf9xi57Rxkcrox/kYaMiDl2bR+59QAav108+eOddnR1bA2K5HI7hxo4MKoaWRSvRZwDQCtidg+d8Q0p+dOjh8vp/n0WiAAWQiiUBnAMQtS+H7sgy6PZo36CECWlmsZuEX3QQhaqvTWF7KwA2QHoekkMaw2IfitLKJbeWwKlgyjlHAUeBbkuBTi8xKFfBh05JPBmP8hvPTx8xxsfwL4s792DbmSrD8TfnqcbZ0aK9dy/6Cm52ZbWl1wasQHEOsx6FLRjY7rr/XmNciRFCZLqsTol98omzLMNUTH1aSrutfkyrs44UNOXi/AZzZJCw2A48l5pSAFX6Mwp6pDDbgQZg1Loh6k0/UyfzQB8T2rSPUsBX1LaAA9aLgIBbRMn0yZS4Y4JKjgQA/P2jH/1IAcOUKVPkkUcekS233FIlGgQHtPJIrfFV5VinlnhUS36rqgydSde2MdtC+TTbCP8IEFQygnYPxgDRARQff+gROeX4E+WFZ57F6Zfbgq7cHgodC/R9bg2JYrtpFttcw9zpQ3PjWCoisIzS2BXseFCensIyBU8sYb+JQ/8kDJsiAYp5gJbTABNxGNKSfD17oFRUYlkDmIBlisMOhkqqAGONpVMa40JZVdzhnKOAo0B3pYDlzh0vH+XVGJ14MBG3jhU5jTfl5nY+LkLUYY0ziUECG9GUETFjCCON9B3PnCt27CLI6NjFMqgYHXXI0NY/7jw/gOux9Q3Y6qiOQxzrQIG8gTd8JrihY507mn9XxAtjkOVFHQ9qYAcpQWDZdJGXs0jO3PCsIgTzjvCGDITgjIO0bj9U1kIGY5xuA7RLNwRJuNikpta+gF74Fd0sILC7JQgKVJwN5m8lBPvtt5+8/fbberojHf1VuXQVggN/eVmnYtftPF5bESm63t+/lKZflP380M6sB0UFWA748PXXJImtuzvvMEn+hO2omboGLBPAyA/0NjJQ3qU9DprFpklss60DEgUsBWDvp4QgKShnYmiPEG1SYPcI+w1NECdx/gjMZkq2tl6iXK/ADiHqOhQgkaPAgURlqbiEkecSB/piGumxbbnEEFjDNkC6vkFcio4CaxcFOgcQilMYfPucDVDV3DodoHBh5krxNxkwZzYUQpLRhDAqh+HR1pnoisluq9DynRBEdSNauOtKNcrNtdModAZSurYK9grFPa6p0qaBiW3WtJkDq0U/zQ1xzY6JltNfUb5+f0MkJtZy+Vv3b9x8Sn1KBDDbo/Z1gcp/vKhNRdG9lp//OOezq/sGIHA0Z7toEjqw4z3Bn3qUwEFptd68KiIK72fTG5cXKD2wJpvJ/HlZ5k/gQBr2hw2KAw44QM9hoCOI4Ls15SxgWFP5tz1ftlGpHxD4WVCrbQNaP/zww7LbLrvCWub39Ajsp598SuLQvEwnsGUUywApgIexm22O3SWDpR/a4Y9Q0A1DIbSQgQlttD3PnGCHOuvsc2TjjTaSBpgoD2D5rQJbVX+IJYiR64+QsRttiiUGLCUBlCxetFAO/cGhcuA+U2TowA3l34/9G8qM7HWQVEDJLwQwUQtQ4QQIbW9lF9JRYE1QoDGHaWcJdBBFCrwoglTxoR2vMBnh8gLDcId5X2xtK2BQmpdfRskjpfdGAUHztJFW/z0Pm/oxgIMCxK1xiFnzSYhPYxCJwrwu10/JRjGPwuycJ/eZO2fW9jIKkqu/3KQZ5QBp0DyBKwlmnsKVxq4CvQPc8MrxwCT8pmjYyA0M8zfwgBIdzAYRzgIHbQ7rdAQ3+VC11G6dbBRmJT9o+4EXlRH9jrNIAgc9zRFMjEsRE3EcNs0sW10EgoTV5XquFIFtZECeHhaFXzxFo7iYBGuVjz/+OI7N3lltc5xy8sl6OBldFH0luWiZnPLjU+TYY4+VBUvmysKl8+Qv/7hB7n7odqwNmmWKNIxQXXzeRVKzqF5mf/GlrBeDUi+A32/PPU8GYHno67nz5UIcmHXayacg1RxsfSyTL774QnaAxOLbb7+EnYz91J9yqkSyQSUIVVUVRsqxuhrY5eMo4CjQbgp0egT2VhJUBF1co2aqAAdcv+fAy61yIwcNBZMNyDcL58MGGRy1HxhZp72ddbYaze/kcbSPsKJ7GPYPCmD8QdzzvHPPPyUh3KNF4OKJ2RX86OWVVcdl+6N5vibUqvYnfQ3jNqzB6EYYZs+ymfJxYYGqCFYLm3cqKHJragxi5RgABEFQKQYCmEViEs+0LavrVb09NzID6hxQz8CuOVMyYJcR+I7+XIr42c9+pgCBoIFhVidAaE+duktY8835gRt6A5aVuNynfRjLTLffdpvsstuusuGE8eq3z777ypMw5PXB6+9ht2FOErV18v47b8spPzlZlwJyWAZ4+9035aAfHACJHwxVAWCcBuuYiboEzsb4my4p6PbfdFKefeJR+ckJJ+AzCcqe391D3oHxsdSSpVBEJOwMyX777q+7gYMUQ3iSjTJsN+a3RINX/JyccxRwFOi+FOgCgEClJc5XyDx5Gb5PLXkyoBAGrN4YLMZtMFJy0Hp+9cP3ZDFY1UKujXu8GBJ+LoO2eOlS+souMxYaEMCwvt+Gq6FQyt0a38lUcyhzRi/k75nvzWNGm4VERHda8ELMOppYxr0ekoYU0qK2eD1MNhvg4ZWxlXJoHVbBe8IY6oTzbi/+5g4SXix0mAMyyk+wxkUU0r8eQ/gr770NyUlWthq9OTRDKNDBrJ5lRJ11X5o3gtvZNXzhLA3Nr5X9JRCwhpWMgprZzcB49LfKigQSO+ywg1xyySWyEcTYf/rTn4pJE0TQUbLQQM15OKuvYAMxPp3dMWElFBaUUFpBZ9PiPQvlPIIpGoSi/otqYiAdLi3BwDNr2m2dLm3h4rIdL9ab24j5L8CPiaA4mZbnnn9B/nHHnTIKJ2YOHzxYxozbAqeY1sjL//0vG0K+nT1LRgxfX3cehKHQSAuWZdjmm8jUA8RFsdUxKiNgdvuF/z4n095933R0GrloqMNSXEa+v+deMhwHZ/EcDh6zPWfOHC0XQR5P6QywY6njkhWpzK4FqRWVIbuJ87p5sTRtVZ7szv2jm5DWFaOHU6DTX6kZWA3z04kLvxoOWnoL4LQz2rjPy6RNxsl/MSj958X/yvix42TywM0RCWv/YCCtoRQzrLeByvZrbcedadtdFSwDFxQ4WDAJxRNwfFZBB5ZHyJqCPKWQv8Hto+VRqTHBTEAbYTXdPVI3op+/+mT0NMegmhVYL16OdliabcCR1pXyZcNcue/Jf0FzPSm7TthOGaQebQskQ8M4SgAimiajp03fVruzXJR0JDMh4y+nPQq4x3AY1GGHHQbzzc/Igw8+qPoLZOi882JY7oxIQCmuDIdp2TvjcjmDzipAWuDA31ZR0uo2UCkvBdsAfNeAGTE18zUcwEQZqMG+UWpYTbZbOW0iNFUKQLUCdFCErXobbDfRUzrfeu89LAHMVSXEYBRLZ1gPvOf/7pQ7b79LTj7lxzJk4ABZMA/viWBhyCgHJcIsrl44xjyH008JrH75q1/Iu3PmyyWXXiT33XO3RLIJCaKtuN3x8acekVETtsdHgjzDAHKFRTLrq29BQxwdTjsHLCQ/NLUqRAmXkXV1K0K6wjgKOAq0SIFOAQR+8kzAzIxpehSfP5SUaJWOgwHfccyoxh7ILdfbQA6evIf84cG75IrrfiPH7nOw7DVpV8x6uQCxYohgVOpaLLvPU0cgXO2/GyZgYhuNA5bcrOAyA86q07AGGQdT5eBGHW7e0wUc4YzpEcGP2STYsfw7Wm7GI1On/QlLPQumFNygCfg7o7sYoJfAeuB3A85PfnTaf+SRJ5/Q8yG+N2mybLvhWDACGq/BgUgAB5oOBvyQbo00zgIDKsZbRwBi/Uu+7XuyTNuCAzKkUaNGyYcffiiffPKJXH/99XI3Tt887rjjZO+995aRI0cqkGA8ggOrx8Bc6UdAQBDBWSxBBRk+Z6z2meEISii5oESChn0IAKNYUqoFlaigqToQ8Gtk9bN91VptoblVUXsgGk1bizsDaEMcvn+75VYcRHYSTsjEEdioXwbWDiORMjn8qCPl6l9dJS/852mZvPdOMhRnkfzlzzfIqWdfCHqVyY+PP0nGbLWJnHHayUgqK7UNNXLUD4+Qx19+Dkek3wCrmDiLJBORyfvtL7+/8c9ywy3byzuvvy4HH76ffDb9HWx3rFD6FrElxwW7HAdP0l/tV3a286w2KruMHAXWTQp0CiCQZBxQeVF6wEGZnz4HKvIR1f3n/2RO+uCgnYN22FOWgKU+9twz8tizT8vDjzyq+69bc20V97WWRuvvDFu1YxV3V9BZbf0KaH3X4MAl/ubslAcCkeH0Lq+UOmwRy2NmVFRFaD2jLn/LrYgR8AKWmWVQmw24VIrjOTLNKDTVWU6uLwcg2g1g+1oW4GDcRqNl6n4HYAkIGgiM68Uhe/EmfOpJUGAHcyZt990zvC+rUqbteLLLD9z2SLoaxmJS3WyzzWSTTTZRwPDAAw/o0gMV7rgD4ogjjlCAYAEAs+SzHjQFYGCXL8js6cdLRfLgpHx3++23a7gjjzxcQhCpR7mFD2nwfSUACBdk2JM7W792kKJDQWPcqogG0w0naPwspCthnJKZhFLoQw8/Jnfg7AuCA5pNjpaVQyfAbIE8+IhD5J4H75XJe+0odz5wr2y15fZy1a+vwwnnKTn4sIPljLMuAAjAdkV8nw1EH7AqetoZP5VDjjhSdpo8SSZOmCBnX3KZ7LjdZBnYtxptUSH/evwJiVX3lYZ5i3ESKCEpZgewJprHFlvdMgtb2vyeFX6jwHp2SncncIdaxUVyFFg7KADFZ87/O+gY0xebzEkPb/KGVbXgx90APAEQIszFoQy07WPyYe1seeKxJ2TGjBmq/NSaW3nxPI7eWiIreEdGaotvx6mmAIHbNDkrjYEpkdnyIB8ykRooY/WqrlamtKYAgm5H9JQoWRcDEMDY8KzADfWuwuFUdQA4ZICVUBBLw+jNhhuOlJ122kl2HrcdjrFlWBxDjaOtc2gvpkF1RdpVoBQh6AEg6mMwPQgg1Nm1b0oxLO3Mm/b9JS1JXwsUbGyuqROQkeZk7ponwnLL3v/93//Jv3D89EcffaTLEFtttZXqL1gdBysx4J3to+vzbCdPcsC03n//fZk6dSrAx0iI0K+UTceMA3gtyE4/PUrW69dXHrj0D3r8NUEDDxlTSRYYHSwGaFmsbKUzddeEOuHYRNTOII1i6Kd5LA1EAP4Kns4GuW8A4EDDwc/aOkhjaSbKw8loUQtSExU/ZFAjLkHQcZWCiiwp2AJhRZFOIlUHE+RYgsGBZAY6meiAZGYNDvTl8kQoaiRWkvGAv6odsDOyX3qdR/usoaBtM4ZaE05HP68RWTotFdvbGxi4RZiAmXSeA8Ls/4vTtR8+eemfZSAispZrsg+sCZq5PNcdCnROgsAvw/uQdPzUL8Vo0tsBlCYWaV8gBGWnPgAHyxFhbNUQ2fzIkzA0UehtHWPYT7R0N6aUmvubT9kbcHyptOeRse0CgWF0RlzPeaOtFsOkCxhEMePBkVPwhyQBg+JG/XvLlwsplPbXoT25d1VYsyTA8ppZr2kSNgXrlIOBmjiN2EAZkfoePIyIYz8HPR7ZQ0M4ZWibLKahPAOB6fDKYpDUreue46MuL3iE0a2tXeQsOCADpySBkgE+2+UD3u2OhoMOOggnYu5f3OlAoHDhhRfq7gfaUKCSIwHFvtDWnzx5soIDAg2bhgUcNO/MZYyrfvVL2X3X3eTk086UYy8+WwbCDkANzBMn0OYBT8NOmYWPFrZvdFH1O5WMAhjUl70gCMlIEtsI49RHUEdbEpQYUGkwjr5Ag0VYgqEBKjQmpWFRHEJES4vY26tKhzyxlFxvKc7RwnYAACAASURBVGwd9OndSxWLQzhBs6xqPf1WeEYHz3JQhUP0AaUrvvH6euqDIKIOAkaqplIN/UmKIbwCA+RFoKBE7MJOxOSccxRwFOhSCnQOILAo/MYt4/AGUTsu0DvJOReUmaj4xcFsAKa3DUkg9DLMSvKwt0+FuFZc5yBAKwl7r+xSggUIZngrxaOOQgBiUpYyAYW2OE63y0B82qesj/SFH7USVnUZV16LUhPYstg2oOU7vo1EwQDwlAGTIPON4xAtzpTKucSDFzk9hY8DPJVKDXiIUgeB4zka0qbnL0tXMEqrg0BGw1k+wUEdGHQlzg9gOblEQJ0CPltFRQIA/ub9vPPOkzPOOEOZIIEGlyNmzZqlQOH555+XvtCw32677VRK8dxzz8lVV12lafM0ye0nbifbbztRJmC54Yqrfi1/vPefMmDnCTJkg/WL1fTrXLSlHVZnGPZVq9yZAAiPY4tuBFIi7s2gFCiB8xXK9RRT/Ec7hqmxigoVQKultcukD5bPyLSTUDqMw7RyMgAgrKaTg1Lep7cqt+awLBEDUqxdBsNIaJsoTTAjrSyAJ49P51pUGsCiHIdC0UpiHmcuGB0QixX4hSFNRZTekkKx47BHqojBOUcBR4FuSIFOA4Tit87RigMRuImKY70XFGvy8KNKKEcVMJspwBBROdZ8wackjpkHt1W35lb1GqWWFc6KFIuzRZYLr3jmOyc+GWwZ649ZFvgSZtoxqZ+/UKpYXwTzr/m3VpdV8c7DZJbcRbBiYRePps1Cyz2G2R1nkzFP5MyhWS0lcrCvb5CyynJJQRkzgwqSUUcA3FhXm769G2Ipn+mSepOZEAQwTzqCANpE4Mzf7lqwIMHuULAKhwQFVkJgLTaeeuqpCh54UepAsPGf//xHAQQvSii4HY+7I1568SW5+uqr5Z1p78miJctl9O47yKfPPiMNu+4CC4I0BN6ya5EmLQdd5b7lYOAEV2UAB9yBQkBLCVgCByfR5gDtDUSx7OBN7HH+ApYhcFhSb4CDOkgbKnAoUwyMPwXmzmUHSqHSepQ5F1No9RJpATFWVdKyKPoK9InCcfQPnlSKvLLoXwFInpIeQMlgLSrIc7vRnAl8MzzzwdoSaUaMVf1xN8vQeTgKOAq0hwKd00FoQ07KQHEVZ6D04OVxMD52B7ciZsCysYz2vRVVc5ud3YvfXeqwIjr669a0rBYYaVwE5PyRriWJgb7wEcNPFy9at70RMBAgNNVpoADrt7/9rVzz++tlq313l+nVQamGbsl9F/xGhmERhnSgDoJxYJ/eXn7CGQVQrXWcNUANf/u2VjQbrnnfsKeMWIhpKlGc5zfKwHzZrfcD+/X7idGS3xoglteG9uMulop9xaun00FYM+3icu0eFGg8CqyCMnEAMuJ7L3F6+HLlz+5wtVb11gZaxusO5W+tDP66NQ3XqPBeWzVqr6aE8RFjZXRpGnVN/CYw0DYCJ+cyAyUVlEjQ/5577pERI0bIS6+8LM8++6zcdOPNWA6LyeK6GkCDMI4B52ILgIBX0abKqI3A1ZqoXAt5+tu3hddFLxvOH8b4UW5gttCyH9irWUSlifmQW+8HLQ0xLfm1Vlr3zlHAUWBNUKDTSwxrotAuT0eB9lCAUgMrObBLDbvttpvqMHBXxKabbwbt+zL5Gqvu1IFgGLp4N7L21576urCOAo4CjgJdQQEHELqCii6NbksBMntrB4EgweosPPHEE+pPzf4YFDhTVKKFEh+tMlLSAEgBCQK2/zuQ0G3b1hXMUcBRYNVSwMn6Vi19XeprmAJUaCTTt1smqfhIkPD3v/9d/Wl0KQMtfF12wD/uhODyQxmWGJwEYQ03nsveUcBRYI1SwAGENUp+l/mqpgAZvjXJTJBgFRU//fRTGT58uBpLosGucgAFNfEFiQPD1+QBKlZ14Vz6jgKOAo4C3ZgCDiB048ZxRes8BeyWRyoncumAv7mN8tprr1Vg8J3vfEcNKu29zz7y9PNPq10BhisPQheh89m7FBwFHAUcBXosBRxA6LFN5wreVgpYpUNKEyhFsLsZFi1aJMcff7z88pe/VKuKJ8JKI40ocVkCh0E7gNBWArtwjgKOAmslBRxAWCubde2qFBk6nVUy5LPdvkh9AvvOf+czjSLZuBYk0EjSMccco8sLNJL09ddfq5lmWmDEHkjVS6CEgcsN/i3/monPFU0jNH3hfvd4Cmhf8Xay2HY2NhJg0Noz+9167+jxJHAVcBRQCjiA4DpCt6cAB2UCAu468FtT1EOKcM6C3zEMFQ5pxIoKiIx77733ypQpU2TYsGFqB4FLCjTDTEVFAoN+/frpwU+PvvSSxuEyA48hz+KwKuccBRwFHAXWVQo4gLCutnwPqbcFBpzVkdlbR0ZPMEA/ShEsMKDEgDsVaOmSAGDBggV6BsOkSZPk7bffll69esmJJ56IEy03VFBAsPD555/rteVmWyqwoASB9gQj/tOqegi9XDEdBRwFHAW6igLODkJXUdKls0ooQIZP5k9HiQGBgb0IHuwpjzZzvqNVxLPOOksGDBigBzVdd911Khmgo3SB7q233hKeDHneeefIGWeeCZ2DoDTgL3UQFi5ciCccaqWH+TrnKOAo4CiwblLAAYR1s917TK3tIU5WsdD+JjggsydA4DIDwQOZ/vvvvy88yvmaa66R7373u0VwwfgMQ+kC3ciRI1WysOmmo/U3FRMDERxMBB2E9dZbT3CEkVNS7DG9xBXUUcBRYFVQwC0xrAqqujS7jAJ2aYF3ggMLDPibwIA7E8jcf/azn8mhhx4qAwcOlJ133ll23333os0DLkFYfQUCBf7u06ePbLbZZsVyxpAOnT1JsraQxEmFXVYNl5CjgKOAo0CPo4CTIPS4Jlv3CkwwYHch2CUCUoFHOVNngEyfSwjcqkgdA4alZIGAwlpQZHj7bMEGdzlEIjiaiMAD71OFlEolCDyigaiEnSGEda+zuRo7CjgKFCngJAiuM/QICtidDGT6ZOCUAkybNk0mTJigSwWXX365KiZSX4FSBoYjACBQINOnBIHPvFtlR6bDcKk0lhdAhXAgDMXEoEoksoAMSexiCEGKEMzjJEgEoJ5C8Zhk3f+2duxysLVo772rOk578+1KquO8++KBpnqKqW1WtDdP72S/8J9uSj97qqfDj13VA1w63ZUCToLQhpYhQ/Erw82ZM0cGDRrUhpguSFdQgIye5o/tjgYyeSoSHnLIIXL//ffLNttso9lQMsAwvOisYqLVO6CfVXgshgcLCGF5IQVQUB6JyYYbDJfZ8+fKu19+JHtsOE4CDUgrGoACY05ygNMVOKMhVMAx0JaRAHR0JcPSgq9Gx/38Zo8/JCzIlzOGtt5ZTMh2Ol3atubXNFxbMm7NXgHBQIA7Y8jx0Y7q2MiBvCQBFHUZiyY48DoK75oUjgGHDotKoEApN7tqSwu4MD2ZAq6Pd6D1yKD8jKYDSbgobaQAwRnBgT1lkbP7q666Sj777DP58ssv1VSylShwqcEuL7QxeUkkE5AcBKUsFMGAn5exIzeWZH2DfDr7Kxz+DBcDdwAewIIFoIHB0xAoYFqJTwc/FYz00MsyTzsItPeuNO5E3Y0xKs7gzVN771r+leWfR5gVXNp2YSwvoT3TmbTkuMNFjXKxJHj0oF9dXb3U4fmLr2eqNOo7m43B26xECDCUCM45CqydFHAShHa2KxmQXaduZ1QXvAMUoOTG6ApEFJT9+te/lgcffFBOPfVUKS8vL6bIdqHCIp1dQqDfylx5rEwyCegihOMSLeRkSK/1pHdZhXxTu0TmSkKqQ2USTxWkElzEMA3FC5LKpTHRxLkOkTIjTVhZRt3wvYrT6VZOplVS+tWRf6tdAPVO5dCaWGYK2GO9PZpwrwuhSw7rC4VeFVKP35/MmSUhAIhRAwZLNdBhpj4jkQr0uTVEv1XSKC5RRwEfBZwEoQ3dwYquGZTPVuTdhqguSCcpwFkelwgIDurr69XGwZNPPlk8M4G6CDYM24ZSBP4msLBLDa0VIQsGEaGNBEiaKyBF2GOLHSW5eLm8/Nbr8vbMT2QRXmTLwQH4H7wkh7RxJqREQ3GJARyoboReYCQ98K6Ta5SbkvaO3Dtb7zWZfw6FD4TCkBTkJZ3H7hZIBtV4Jtqaegd8rEN71+D9Z4l58uh/ntIlpm1GbaaypEgM4MCCrNY6mXvnKNBDKeAkCG1oOD9AYHCKuyn2dm71UIDM/o477pA33nhDnnrqKc2UUhwCB4IAKykgOOBldQ743NpSkEoEYC2Rs0zwCSg+pqUKg/6Zxxwv19xxi9z+yAMy7vTRMLpcKVEsbfSChIJ55dNIF2UKBiFVwJ1r48a1V0i/5sObEnS8HKbuHY+/pvPnVtZwEMa3UBCqIQAjoA8BYAIlpIMFyaJ/pPB86313SSKVlB/svpeM7z8KiqsIm8ZSY7kbQovd3z2sdRRwvbuNTepnRA4gtJFoXRCMDPnRRx+Vs88+W8GBNXhEvQPbDvTjbgReFiywvaxRpdaKQX2CFJQOY0AIkVBUItmM7LH5dvLUxq/K53Nny5U3XS8/OuBQmTRotCxHQol8WsoATCiCTjTgoKjyGGagPddZ1t7RGhBkdWYS3RXS+c7knwenp7ohF6eykCjksLeV/yhBIDCYmVostz50r7z76UcyZOAgOWCX7yGsAaUKDrqiAh0lvovnKLCKKeAAQjsIbEGC00FoB9E6GdRaSHz88cdl7NixRWNJVFakFMduW7RgwC4t0N/qJLRWBDIDbHwEMyCjK0h1OCLLoItw7tEnyIXXXyNfzZ8jv7jlBpm0xXjZZZvtZcTg4RAz52WxpCVSHoGWQsoDCGS1nE/3rDuVLztabi62mE2CHa83LFZ0Kv+V0Xtl5WP789yNMFBGIIADurB4sAQqiTPmfClfzpopT77wnCxYsliGDRospx53ooyI9oE8CVIGLEmkUe0o7Gg45yiwtlLAAYQ2tqxfgkDm05bZaRuTdsFaoQB3LBx55JEwibxpI+VDS39r94BJUB+B/vTzb0ttJXlsWQSLAWPgNkZuXcMON6mGyLkQqpLfn3W5PPDmM/LQvx+TV96ATgIOe8pgGaIsGpM0NNsroCSJ1YbivvjW8umu74qKgh0soLUJ0MHoxu5ARyMjXmfzz+cBJNFfokiIeggJjIi5CLc4wu4FflMR9ZA995Ejdj9QqgCHcD6oRGAUo0DjWlRgRBmcEKETDeiidmsKOIDQxuYhw6ESFxnQ3LlzZciQISrudkChjQRcQTACL6srwCUDa7uAtH7llVfkL3/5i5xyyilFhm9p7qe9XVbwH/3clnYhc4zo7gQcyxQw1hQ52AfB9KsxsY3C74fb7im7bLKlnvw47cP/yYyvZ0ltskGAEiRFBsGZZ2dk3Cugy+rytjob9lwLK4GhHgetVBJskZYWINv24g4StlcQ2wRbc7ZtVhSm08y1kwkQYBDwx2D/gMd5BTKwygkrmiOGrS+jho+QyRO2kwG9qqUf3vLormgGjQ29BB75RfkJdRVap8CKau78HQW6PwUcQGhDG9nB0c5KFy9eLP369Suud7chCRdkBRTgrN+CAqv4aZn/pZdeKn/961/18CQ/ILCGq7oEoEEhzSgpmm2MnA6S53CPexXuUbxcr/dgGbvDYDlgh10gacjrOY9ckuA++TBClxTtOi5qX5mofFW9LwfbW5xaKhWxKjyFZVkax11HyySVxxJOMCZnnH+WDBs2RM469RwwxSRCRLW+XJYhc2SNO7pEwXireolhZXTjEgPbsNzIjyRRSMOSJqREkaj0CUC/BMqwVXiOsKI+IEgacPeDWaJRIjjnKLDWUQCWRjkHcq41CjRlTueff75svPHGcsIJJziQ0Brh2vDOMnurS8CZK2ez06dPVylNdXW1ggNeFqBxVuqf1bYhm5aDsOfrvjY47EigwqIaQYLjTWeG1EBkEDAIrrknES4dNiCBUSMwz9yTnUoQICGgy0D3gpIU2nlgrZ57+UU58Ht7StWgAfLVlzMVLKUg2WlI1EufiioFSmSwnRlAOikA0HJ3NH/bxrrMhHR0WQF3YgFeOMkDwMFAAI6SBASUOFglRhpgautSlhbUOUeBHkaBnj26rSZi+8WkfOYhQZWVVFVyrrMU4ABLuxJcHqA4mwyL9N1hhx3k448/VoDAMAQEFiQQ09prZSLslZYPDF+dxyR45gIZJJkOP44oH4gE8J95lSF8XFkHvJRZ9HAHQGAkIFS84zkUWUgTwlheaJBfnHmuXHT2+TJ79kz59YU/lyuuuAyGocLSF+CALk80ZSN3kAydjK7t0FGnoADtClUDyeawg4E7GlA/wiW+UwVHtH0W/S0bQCAFUlxSAETg9lq+Z//o8Z2goxR08dZ2CjiA0IYWtuuyVgfBLjm0IaoLshIKUFpglxgsULjtttvkoIMOkgEDBmhsMma/eWu7Dt7p2Zsd3znIe45SAgoN7DJCHmvsFBIYTQWK1Bm4AJEz7thEz5MgjSNL6XlLDAEYACDwoqGkbBaide/Mi7/e9BfV0O9T3UtGDN9RLrroYjnn7NOlf//+Wt2GhiTaDecS8OyCTtS7ADPXnYkfLHQ8vgI8RGf7hsI8UwOGtrzWVHgA5BCiwiqaOod7CQ1haUSRydqAEIsVdg+OAs0o0FkA3yzBtdnDrsb4xd1rc31XR90oGSBIIE0JFAgGeJ100kkqUSDNCQ4Yho46C3T+3QudKSf5PJkCJQe8c0ZJ1Gx0C8waO3UNMmCCXHfnKY+ECDSuE8aWyACkG+Yis+Fzz7oXMHMmvXnstd02SiXc3//+t3LzzTfL66+/Kn379pWpU4+UX/3qV8WdJOXlcW2XztaXAhwCPRop6si9M/kzb/YnWtOkKUyzWEIICGVktHEUbUwpgZVS0Z9msYLoNIoprfSpMx3QxXUU6MYUcBKElTSOlRZwkLAzVorAKyoqnP7BSmjXltcECHbHAUEAD2AiQ5o4cWLRWiLBgN8ioh2wrUSnLfm0FEZlAWBMBAZ27s/tblRIi3MZA/7ZHI5sYtvroT5mhqn7/yGK11lk1Ox+aCn97u7HGTS0OwB2sLQDY1EKzsAZTzjpeL02H7OZLKtZKr379JJzzjtbdtllFzliyuEyfvx4rVoE5xcUoLfQUcf8O+s6m0TMmktGY7MlA0AcqnyK37qEQNEKXBjIkWMBd70QzRSwk4Fg0UCIztbCxXcU6J4UcAChHe3CAZRMiWcCECA413kKGPv/ZvsoDRvdcMMNMnz4cE3YggLOVOkY1m5l5HKEXZroTCnIYOxFQKBbFq3OAR4jQdrY41kFeEH7umQiXH/m0gKYhEbuoY5FJ+hlrdR0dSwuixYtlNnffqMHYlFicvXVV8tGm4yW3tA7OPEnP1aT1xO22Rbr9llVagx5OgwlMphFGCuOt3s8zKHSBoiRXGY13yzh87dhw0agacWaxs9PXM7gm7hO0L8YNQuQw/YFCAzT9DayIPDRJ/5HHWFg0YRhB9FOwmUv9NsVbvNsXnpT8mY18Cpk6Gbp5a+lyc2m549PvxWl50/BX5aVhW8pH6bVsr8pG17zgQ50Kvp5Xv5bMZgvfAvButirtfq3XK92F8CrdKlaTdpfl8LgVtpfW2tTvrPv29sP2l5P2368O4Cwkp5gZ6kUgXOmS5DQVit9K0navfYoYJUTSdt77rlHPvzww6ISIoP4pQeWaF0FDviZ8Sp+zhQboxyNHRT5PC/9LPlsRwLvZ5MIPeZnCDPmFLb1hbAQT5PDA/sPkg/e/UCryMOMfnPNtfK7634v1RW95czTzpRlS5ZKFtKTGLb+MV4BRoVIO1Xb5MlNvCOyYeVQLrUCBhAwB5ELLQfQhfSUJwTFeQd0ak3A0tS7sxk4YS8Nut7GSkp3oCCp0j0eoqB5comgabshLq0Z+ZyRPhVbG28QH/oHEAmZdBieEwEtF2rBm15GggRDCZpaIB+VOJYgiCv42sMMXmDudmAelEIZWwmsobGXwQiQQFBaw+IyAYTNQwmSOhCGOqinV2mlKH5QrmHyNSECClZNPQxN+Uz6eM5W0ReOb0yyvh5PBQvm6mncWhkZGhb+SM1LsEAlTToostJxaYcxWWr6BFXSYurF5ToNhXLrsg3bSekH3R7Ule/CHsNkGrzsXhjSTdvVq7/V/2JydIEiozUFgxUV+8q8pwhMnZeOIXIxjJcsfpu+VIzPPqX6MHBKC1sG9quSs/2XNaNjOc2TKUfWyz9CyRpoRqqoWqstt1KMnqacBRjqorPStIBWnDSz7zUBXAinfc9r57w5RTZAoy3a9+lMo2iT0qknf/C78+ik5WDdTV01X0tsDW52c7HfUwfZAQQSpRVnxd9WrE2gYBlaK9HcqzZSgHTl7JV3Dgx//vOfZeDAgRrb0r6NSXUomP34G7ER69lCisVXrYRpIVq39VIjQWD2dDRfzTawoJj0f/XVV3FGRVj9eKdNCrujJIp4xeFZx7XiaKlDkhn0S4Ti4GqGN0sO/NIRygy3TMKOVfaufK4FWutyCAc75qnozaRTCqypeRnZdzZfDo6Gg2oofV0Kz59mSCUz85iGF5Wh+JZSJJZdGaXN3gz9XkiTQ9NS6ZpWI2fKSHBDKYuxDNE0DP0N0NCy+pwpT5MkV+jZJDKjEchoeA+g+ZlFs5yaxreAj7QwgUkLXqadDXv0J0MVYAZVgMAHVrVpsv4IRW7XqDDmhwcKlfk1oWvB61e2nYsF9CWjFPWWyIokswwS4ZhEkRwM0EI5Td9hoqUal7IwkYpR7YOCRzPiKF/R37bNGaj0XtMqJkB/y+hNLoYvNS5YsY+wLTSuBc/FArREDi9BhqFjmrTz4txKKWCVExmQA6UOTh5Ds8BhpYm4ACukAGcJBF0UX9vto2RW9F8dIGGFBVsHXtjdIezXlt5W74bV/+abb6RPnz5FWxRcBmLb8G6HEqOtYX+1MvYgvWb8gIMY/DW2N37poOyNeQxfYjN8wmWnr5zmKDhoPKgxKSbgqRJ6702C/rqZcBxEOVtEGj7uyxlWqUY2ZJM7x3ZvZu0fok08SmRM2ky3mBbrq4FNJc2klczCMAkCEh3UbQTUkbDKzPgaA4fG5fO9K5LEH8JfQubVsqNko5R5I5K0HGElvtp2pFOxKN7c21/HJmno+Or5Na6j5+lrJ/poaPVrTB++a9wHmv9uaUlHpUZeAUrjvGlLpmfH/CKpPJIxWrEExfL46I5HlZCUkmcRW3ClehSrqg+2jpRkN45W5FEewex7CyBKdDDxrLDEJNOYypoTEmCvbU7RForrvAzBSAcOotRBoKlZ5zpPAXZEgoOamhp59tlnlRHRkQFZ3YPO5+JSWBEFqNPBwYWXVcKlRIe/qefBNmFbsJ3s4VcEE3Y3SaOBB3HIEJTB6ROZuR18MBQbzugrCpmwTYFM0GPUljsirhmkeIehLI3pDVm6/cGOkvQrDWUmTeSrs8qWmKH1M/kXC2QK7v20YtgmI7ENrLM+9lXoKqjol88mXUo2AnYqrTNlpIFLa4NHjzKGVohlKGRYlTKgYh6sFXUhDGvwi4U9wb4NueI768T2XcE/E7EpG1hBnVeciy1g0dCYDdqof9h25UuvUivLyfbNIgP0l6GR1KBpHRiQtLf+lopeAmgItlGJBZaWdVqrZovvmDT6ogU2pk7Mlwtv3AmF50YVLTFkE4eqruby9+NiXishkratfsMGfGi8Yhz6lb5Bm2ajrt6kUiaqWbZoiapNgq/bP63EgFRgI3BGu3TpUunVq1cRSa7bFOqa2lOnYMaMGTpbJTCgnX//2Qpdk4tLpSkFOEDZJQU+W3DA5wULFghtUrA9GIbA2H4HbBtuD+RgUhzE8YNDEdcu7SCjEfgbL/TCPx10vDHLzI/tMERAYa6CAgs+Mw9eeNZBkMOdmd2XhlkmyDR8w1mBwlFfugzcOAIjqVPLF80GYca1abQwTFJyoNIDs0XSiIltBmQ+pTrbfNVSJzIyRTGDuYUZdhA3eIqRWTL6co3aEytraUvOwBHzm8EbV4FpkGYeXRSomHV3s3nXS6cRk4Vf09/F7LzUm9Cp0U/fD0+1pFRYjx5kg6op4SswKWLxlKWbr5r6qEmz7fFQYnhNQ5kmNvQ1YMxMtdnrzD8D+1AGFsErr3+e7MG4YvvZfmX6nK8feMCX5fG7YrUs3Zv0S5adC0amJ5TKa+OVvhMDFNXf9iWlnFKvSC/77bEMxe9Qn02p/MDKH9aEL8URLrW0cLklBkPHFf5tSmAOnG4XwwrJ1aEXFFnTxDJ3MAwdOlQlCrwaGhqcpKZDFG1fJAsQGIt0t5IEWrKkyWuCBkrMrO4NwZyCBsxYCJhDHMFUQZGOA5gZojmcUqRqFLQM0/SLbznS0eKAGfDNXMvP1FVhiyOdXhzwOVLCoqbmwwHUgI3GY7RhBBxVzTp0c+Zuvmkq1BmJR5CcwhtQNWWTnQ7EjRkmA9nc/OxZC4T0vHRwU5yjniaKTd7e+Y6M2u7LUKmDgiBTXjIeo7BmlNgkT6VBA758RVW/5o6Z+yuENLUwzcvcKK6GIZBonmLzcCZJUw8WtnEc0lCXbYpSHrznrB0383cleXivOd6qsxzPRtMyMhP+xd2+t+H1NcvlL1hL9ef7lVXYZtry3cTmX6OyWQJHTZapkBVLUMqNv3h5ba4v+Oz3b0JYLUKpT5f6uH5tjSatTXmXRmUo7tApKnN6fvrdNqdP86/HpuLuSgE7WKooyOtsxU7raNQlFGBHJpO64oorND0CBi41uGWcLiHvShNhHyf9rQEw3gmCKSnbaquttB2WL19ePE6bgIHhqdxo1A59ejkYeDjb4sCiwyO183Uma4qhDILPOrCbAZTQoBE/w2szU/SKbuOCeZrdCyrYx3BGEGCrR0bKAY5zHl4cBDkrYkZkFCwLLp3ylTTdyazIpK34v5gcy1D8YYd1M/crDuK6zMC8sJfwRQAAIABJREFUIkiDOhkEHR5T8MZ1rS+ukjMzQ0MfszehmI/NT8caxrD5styI4b3njUzRtxjhS59xCKF4lQZ8rb4vlHk0pdBn76Uhl0cPeJu8+MD8DRMyviZtw0D4jIvr680zKeWKxBjeAMiSt/9J6WXHWtxtemaXC3ubWiEp+ttZcdHfo5HFBYZO7CcGMBZn0Siupbtvrl7sJrZMZpeKkSuo7gsAj+lOpQRMHoYqhnKkl7lKLcCKmVIav9IbjV8kNMtly+tJjoo09bWXV0DbXvzJ75ig0u6E0Lv20RJNLW3t91Zsb+23vgt58p1pXy8zd2tOARLUrovbZzuT8iO05jGdT1spQOkBO/f9998vvXv31rVuMiDnVj0F2IftoGHBMAEa7XzQINKZZ56pAxbbhcsK/BbYPmyzXC6j7NVKDHSwUU6jqna4mwFRa8HmxGUGJu+H521qSQZknviXJoiKw5Mmhfe6tRE3XvDyNoyZAdUfuZgM61ZK0+fNBFt4gVIjba2Hb8A2YbnNjHEMJLIDr1lnJkCgZIMXKNIsTw7UJkFDHaSC+thgGl4rRhoYXxOaf6HfoKJf+PuKzDctO0to3m0opmlza1QxXxKev+EYLSTtZxWlgpj2Z/Jkc8bxbYkEXtjiS7ahacdi6fyVaVK8ptIGr3amnYqMlAy15WUYU6KW2Bz6BvLyZ+3/ZRko4+vSkL18NWODlGrNkOz9WA7TToT/XuJKAe07ZtsjvUv08QLZm7Y/yqsiKKZv0imBBgsevPQpefIAVeluQQLzMf9YhEbOi8MSmy+Y/RbfnF6MY0yAtUS5pkmt878ts+LAqSJVXFTgYoNYE8AcOPmezjamU7Jre9extLJb6Ehb51Y9BSydmwJh5nz99dfLsmXLtD+zfQgg7PPFF18sb775ptTX1slRU6aqkqn2e8Tzdnbje0jqAJpIJWXr72wnyxc24PhkY7GR38/M2bPku3scIMtrYUZbFRcwSMHGAgepJL4l1XDQ0zYDkqlNyXHHHCeLFtbxCAx1XGDIYB+5DowY0Gi4yOSexfIUTXLDj3oSGOXq6xMaLovvlL9ZHzIqtYmFuxW5FpUvkRT1ZXUSwFESDIjfOHO69LLL5KUXXpAcynjYYcfIkqVpSSOYYQGmbKqfkE9Kqn4pCgrGkEtJJlWvzIPQYOb0r2SPXb8n9Q1Gr4N1yWJJzVYuAxSUyhuz4nmU9UdTfihLFuA9MkkkMPbgnx2X8igXrUWr82xR1NcvR75GMoegJJYxK420GJcmtslTLVNJZyG1Q1x+djywi3yKLFd5nTIvw7gMO0EhvPXq+roamTrlCKmrr0HReYKJcVYiRforkDPRi4rHbIN0Ji9fTf9S9thjD4ynDciX9UUOKdCTUir8ojEupnXQgQeqUaqysgq55LLLNZ2ZM2fK/zv2h3pehh2Hv/nmWzn22BNxwBbSB10YV1kkKpbJprQYfE5Bx4nOMvH6+gavf6AvYo2AWyfNOA6Se/2N4ZNJ0yb2O7DtwH6YQ/3T6NeHH3qwJOphgdVzzDMPMM3GI0TQXsq+ikJSIsYOxnKgSjLzy1myz97fl2wa4Jt9Ba/NRh0DaPQ7xPex7777wlBcBQx7ReTSSy5XqML2M73QSGH5zGVAoysEhUk06N9gPr0CEsEgEr0M/Zj9P4U/tu+Sbuzl7KWknAMIxWZs+YEdjDMmrofzzkGC4lYq07GTmJmU6UyULNBx8KOzv1tO2fmSAnbvPWn1/PPPK31JV/62gMtRatVRgPS2jIbgjLSnpIB9+LnnnpPBgwcrMODFwYnt8v7772s7bb/99rJs8RJZMG+OlMFkMZlDimc74B8He34v6QLu8YjU19SDQQJgwzzzMixdxHEoVBqDZCSKUzxDUcmCKWAEx+FXCAtmHkZcyifwIEnEHb/leHn04cdRBjNTNIwoj7jmBNAcBjmWP0tGjEOnyst52iq3z3LgTUtlRbnyzlQqob/tjgyrrJZImrM+yspiKCd1K/j9gpmoxRiM3Bgpw/B86ulnQKOA7DR5F5k7d77MnbcIRYQEDEVNNmIkYOYwvxirQr6pBgzOOJQMliop9s2BMVbGK2GfKaK0TqUBElCmMJhfHu+SCZz8gQSDeL+sZomMHr2RPP6vJ1EfM76Ul8XxbCQ/OR4oxcLSB0VVQIOhnRKgRKLOHCbGcsE7FkNZwHAb4G8mOsboG+PyLA4TF7mgjej86gPqoc5XSaS5dNFitP9cpA0dCdQt7SmuWhqTgVGelCfnQVSOl6RfBj+j8aAZPwG0kjC6RbsaKSxtBcHwGS4Dpsoy/fP22ySKfkBrpp998bn8+aYb5eNPPpGRI0fK3nvvLbffgfcocxCog2bad9ttN7nzzrslAkBB8JAF7XmxzgQSWeQX4y40Ml+0awr9sLKSu9Lykk4QpKHneWCY7wlmEmgX1jwejwHwAmjghe1DBJX8PmiyfPZXX8iyRQsMg0f6ZMDs5zlFcNyJw+PDQV8CA5TNLu8RHKDLa32p41NbW4OMkaMaSDI0D5AukbjciPrz3JQGgMuZs2bJjTf+Vaa994GOlyxLEv2N7UlgoGMpvhEuGdKM/TXXXCOzEIffwceffiJvvvMuwCDaw2tZGrkyUgWSp3TSq2l797cZBezygmptsxXh2AlJcBKfgys7HgdORaZoIHsinkW1zRJ1HkUKkIak24svviiPPvqo0tICAyvyduRadRSwEhv2bbYD+zP7MJ+XLFkigwYNUrDAtrCM6PLLL5cLLrgAjCwhp/30VHnlhVdl8uTJ8thjj+G+i86OIjBZfPppP5b77r9Xauvr9NjuSy6+FP4RMLzRsmjxIk2PwJsjbwQnQ8747HPph9Mi+w0aLGPGbyM1DQlIJurkpBN/Ii+99LJsMGy4lMWrivqQOMJLGW+IJq/BPFjmIJjURReeK5N22FGWLFoqX3z+mQwbOkjeevNd8gOpq10uA/r31VlYv74DZMaX3+iSxbx58+ToY46RDTYYIVOmTNFZIyUIKofGlc2AyeO8invuuU9OOfmnqGNGfnzKyfLuO+/LNhN3kcefek22njhJltTV64z5vHPOlgfuuF3yDTXynXFjMKs9VkLgANz9RLomAIJI82wWJsPBDBfhgKz+YFrlVWWy06SdMRvHNlPMSH96+qnyxhtvydAh64NPQOLBFQeAggzaiMqhPDSM6RAjcHZLZsaZ7PnnnSG7Tt5JGgCuvvhshgwaOEzenzZNO9LixYt1ghNCW/TtN0C+nTtHQR0Zx6FHTJVRozaVffc7UCUItOJIXgYq+Bx+eR6nn3KKvPjfl2XnnSeh/R+VXXZB2YHEaLL69NNOlVv/easGHTdunBwz9RilO/vC4qW1YLSkcU6Ze1WVOUJ84bz5MgSG0ijRIQBNgaEfg3a5+777wLwTMnDIYNljzz1Bw2Va73322Ufuvfde7bNpgIw4DhHb94B9YSr8fqmBdCuRBp08AGWArqDvnic777i9LEU7fAZJDhWjKQ2jq62tlX79+pn+gfv0r2ZrP5jz7Tw56ujjZCj64JQpRyGkdwoqXpaXlZu2BDg956zT5ZWXX4HEY3+MZ0+hDjuhnmDYqOPFF18k/7j9H7IUfXD8+G1l6mFTtZ5sC0qFkhBqRCMx7R+9AFjQneXzTz6WgX3XA3+JyhZjxwLcJeTEE34sDzxwnwLYwYOHyKRJk/QbJSjgCoHZYURpt1l+SIEGBIwvYYw9+uijldYMu9dee8m/n3pKgRIFd43b2EBBJ0Fo1PGb/7BSAwsCeGcDEuWxc1uxqxWpWSDBwcoizOapOh9LAZ0pAPm+++675iPHgECARWc/bEetVUcB9lv2WQvGOOjyN9vltdde04GHfd32b+5qYL9n3/7/7J0HgF5Fuf7f7TWbBiGEFrrUIFWKFEGwgQhXRS9iQ6/Xv4oXRYoiNrpgQ8UuRYqACIhSRKWIVBGU3pMQAunZXs//+b1z5ttvN5vsJrtpm5nNyflOmzPzzpx5n3nbsF1w3vl26CEH2O233eJLQTMTX7hY4m2NOnWa6ZZpMSuY/6uvzrYtttjKmhY12c1/+oO95eCDbcGi+d7WLnHr7LZTTznZbr/9dpu/aKGd8IUv2oXf/6GNEUP91SWX2pi6Bh+02yWFYMCG2ZczF/NQy+orCvlM2Fpm3aeffoaNnzDG/vLX2zQony5JyJ0ytpym2WOnD64/+tHFzpi/ff65dtLJp3pmlPvWW2+3315zlQbfq/wd8JVOjdqAkHLR45lnn9Is7CXZY4z3d/70pz+13WSncf+9fyvYaESpIYad3Rp1UZlQ5ncdfrj38x/88Mf24Y9+RIysJqwl4nrmDjvxhM/ZXX+5w9pUxk9/5rN2+hlfFbMvt1/86peed4+4dIVm0QS97OhQm1RpJi5pDXky1jB3QfrR1obKokczxbPF+KbYzTff7CLoP/3pVgGzN3jbfeYzn/GIpTDV8847zz73uc+pDBIqi4b33/eAXXrppXb973+P0KRPYmbpbMRntrCTzGl42Fv3t9tuv9UmTprobYm6iQQN6EvzF873dx0mxo4U4KIf/MiO/+SntPZHmDHTt1BlweBPOukk+8NNN7mk48QTT7Rvf/vboX8oP/okgbsAODBFaF0nyRCzf6RaAEUkKgRb492PP/7vILFQuZlF+2xaz5x++umKCDrOJWSoypBc7rLLLtYtVdj/fPIT9uMf/dDb/Pzzz7cvfelLTPTF5NU/br/NgcrvrrvWZ+elah+AAlSpFgNH2vAzze4P3G8Pu+GG6x0M4q7Nd9LW3GgtTY3qz+OsVuuatDa12BHvPFx9NvM2OO5DH3EJAn0ljnuZyvDNb37dbrzpBoHTbvv850+073/vIm/vDqnqWiVpmjVrlktFpk2b5t8ofeTmP92svALty8qq1M/qvZ/yjdNfkN7RHltttZU99NBDLhmJUsS8hb39SP37QOFC+tFLgUjYKEGg0yNBoOEhLJ0gzrCYEcVBgoZMadkU4KOFrk8//bSv4MggAG3pyJHey84hXR0OBaJYmf4L86Bv059//OMf2+WXX17oy1yjXzM4069h7JgxjW2o12y2w/s/53m+trbOdbHk3SG9b4uY7PhxE+0TH/uEVdVV2bbbbiuxrsSh2piJAyS6Whvt8cce1UJQu1ldfZ197mMft0ce+7e1tGsgFjP0/PMBnoEYDWlLe6PKLM5IPu1Nuq4ZueT8DWPWsyuv+KX93wmfsu232dm22WJ7qQEye2Xmc5ZJ1P2ew492lcZhh73VQ0nPfq3Rddu77bG7ba9ZWns+I+fzBdz0aEYutmyvvfaah5pGzExq1YA/bmy9r9fQ1aFZIpIMMc1ulQdRcn1Ng0TcVVZT22AHHHiwyttuRx9zjL0wfYY9/+LLwkRB7Nwhpv7gA/fZfpqF11RW2PHHH2/PvviicgoeIW16rlZ5oekQD3Uad3sZwyQEurNm1ML5i1Q2tYszgg676qqr3MgU5veGN7xB5ai2V8VQWlua7D3vOVpFLXWmDQ1em/uat//mm29uO+y0s+fXrm9w4BRE3lwb1zBGdQ8idtQnSANq1V7tkv4wNgIumbHSX97yloO15EWPHX30e6UqeM5emb3Q+wz9CmbaIgb9z4cf1H0HOpM87r8/ZLjaUl+hBxeRH3DggQ6a0KGTP8wRKRdLlHPM2IFqhHYCTDCOoBzwJb1F0Xa9Y+y4sfabyy+zEz7/Wdtuu+1s66239nJzP3kcKXuHLuXLDPtegeRZr87z8u+xx1628067SKrBImXqhGLuZXoZ41SHVEQcd3UqfovyqtD6HjWiQ2WVJMvqIOUCX+TRrn7nYE6SsLcd+k5Xd3zso8fb9OkzFXek0cc/7muUlIGyPvjg/ZLKHOjg+BOf+B+XdPBdUd45c+bYrrvvbr++9DKnEeebpT56p9QuPT2tDqwy7EK0Pfzww9ahb4l7WkQjPJAql7rQWGh1vrGgbBq4F6SzogAdhsEJMBBVBnRoNojNNdAqiIzE7yDyC3rBRMRlUyCqZJg5IGqDxmmlzGXTbCSvFktp6Lf0aQaoZ555xiUCsZ9zH9ej9IB2qhIza1rcqJks9vtijNozs2FgmjC21tqkI2UZ6QZm//pOGPyQW5Mn4k8SeTJOlWtxmoYxdZoRzbCq9SZbD/JTpXJ4US775FtkZlmqsixqmW9j9a3pS/Slt8slMmWqV4Y8XOWYO3eul+dJ6aod3Khe1AH9LDPCCnTJAkI77TRNjLPO5i2eJ6YrBtLRqv5Xr/ukC66SblbGcxXVZYYxHu9uk1w8zrKqaypt8fzXdZ/GCS0L3iEjRGrF5Drr1LMdsscor7Wpm21pE1Snbr2/QzYUZZrllVXIxkYDd5nsFFhPCZHyk6++Ls62vpsazBZdOvWX9WAvIfWmlPaAgwZIKEaECN+NEzVjRvwMjcaJ8Qm2iEksdtA14+VZPn799a932pdOPdHv4XuDDtR9bEO1t8X222/vDKZNUpRagTOeIQUJaD/Bc64P9xt0qVkieVb2BLR5+8swlfafNHacM+tmgcNmqT622mZbF92XiHGWdGpTI+ASSgyKdonXm2Ba6h+oH+65626buNkm1i3mi3gcO4LZs2e6bcF9AhDjJHKnhKhXULvAfBcuWuBlqJfNB2CA+lDXStG5WwtxVSAOok7aZ6ItQBc7iSeffNzLzaJeZSobxpLkUyZg2CIgtfPO00STMdY0R/eL1vT7cZJQAIB5fzk3q9Ury6u8X2AJ2CPpVIX6d4fscMgb4ID9SrOkCHwHWIDuuN3Oqm+NjtUn1LCuslZdID3lBjBJ6OEA6kWBxckbbap8MKpVvxComP3abNt33zf7xGr8+DHe55CeYYNz1z132YH7H6rvDWlTkITtvMMu9pGPSHIlwFYroNitd/Jt7LbbbqHPqj+FmiBQCw6PGGqGr9RJl9JAFKBB//73v3vn9AFOKUoG2F944YVu+EGHjCoFPjo+MhoypWVTAJpdfPHFLvIEIHAMk+IjSfRbNu1G6ir0ZiCjD0fmwMwNxsG1CIS5h9kaexcjq49XaIBjpkSf32TjjV39hrV0twZalozmWdl22+KFjXbu2efiWODRGbfYaksbN2GsM0hmu4xwUyZPsvvu/bvPjP/fSafY6d86J8g4JUqnXG1iNmPqK/VOMcPaMcpKM0MNxiV8b/rUulq16Fe5+k5box12yLvsDzfeoqXDJ0tU/A0NypW26UZbSN9fYb+//hoHFXfdda+Y5DgNmkg/iG9f4t844vYqgQMGayQIHTLoqhOTmDp1M9WnROJwGVGKIbRJWjimTnJhDcrbbrWZG6c1Sj1SJYZ95W+uEvMQY2/rsscefcqu/u3vVNoS+61osvHUzW2i6spKlO2acXZJZbCdpCp/lA0H6f999iQ79/zzVIpyrRhZ5zYXlE9jO6/KRdAAoaDrp9zQvFOzc8LtwgQAM285+EC364EJfPOb56o+mSQEm3k7o8qBV910080ukh87Zqzbg9CuPuHRLBnm0A8e5F0uAAgOysXEa0UjpCcbb7JRaH+JOloFqK6//nfeL9geeeQRu+nGm72dkGxsueWWNmlSgzNcmCHjLEacm266qd0pDxGY0/994QQ7++yz7amnn3KVArPnDTeY7Euwgy87NEZQTyKwIgkIADKU+KXpL9qWW2/lM3uWJAdotMgAsVTlxEAPzwlow/vOOe9sb/uNN9nEaXP99dc7yMQuCsBSIyDoSRIXwBq1h8akzlYAbqk1SpoEtUpEfxgsKoENJ23gsUSQBqD6geYhlUpqc5/d8sdbvDxXXHGFVGC7apG6+gCY1X+wI+lUv9hxh+0E8BSCXqDm5JNPVjt+0+1lsM9ALTtBqjTYjIofwJSAyP6yYWnvWCgQ2OIAEykFqoQjjjjCx1okYYyv56re75CURJ+oA86QoB91UC3pePqAVzj16Mm4eSYc9O4K17qKzvnJ7qItv1ac1+r+HcvLXq4jXuR99ts3+82VV/jvnXbaKVOnzETobKNNNs5k5CN1YKh+W3tnJtFhXs3w7MqsD2XsQ18dF6f47uL7OFdIxYXTyXi4jFsK7dznRf2y7D2MjT3Q3eGaBrDs2mt/5zcIFOj/cF6W8L3lGahgunOJ0/3qE1qQVmQbtOgDFXJUn9MM3uungTrToOG/BQAyeepkmtX4MW0S7+Oeo48+OtNgrQsdWffihdm2G0/K9tpl+2zR4nnZCV/6ikbJimy9cVXZuWedlF1y3U+yRZ2Ls123fVN2/Hs/rXlaeTZuXEM2Z+Hr2eMvPJ3te8jbswWLW7OstTGb88JT2cQJDUy3sm33e3M2s11l0vu7NJ3PmnqyXbfZNZv+wtystSPL2rLmrCNbrKttukHXNcWWKDXraJ2fvfeod2ZfPe1UHXdnrU0Lsm223DS78tIrVN4sm/nS89l64+tZTDerr2/Ips9alLWIBC+8ODM75K2HZfMbF2StqleHuiDfdGdno96xKGvvmK3+05wddfQx2YMPPZotXvy6bliUbbHJlGy3abtki1uas8+cdCJK7qxO+V545nnZ9Zdek3XOb82233L77P3/fRzm6ZmU0NkrCxZl02fMzvY/8IDs1cUzlW9jNvPxf2UbV9dmNVaZTZu2VzZHNF+gGi7qfi3r6mnMpm2xX/bKUy3+abS3tWjcV51V3/Ct5Ds6eNaqsr6eHXnUm7MzvnZi1tkiYumZKRtsml1x+ZVOr6effjSTCJ45Z9YwdmI2a/arWXtnS/bSKy9nB+XtQa9o0Ts6VTp/i/IWwNARLaL26la+onun2nHrTSZku+2+TTZn0YzsxFOhgWUNY2qys8/6Rnbp1Zdmi1XeHd4wLfvQMR8WvCrPxjRMzF4RXRap6aY//3J28AH7Z01traptZ/bqCy9mG44fi2F9tvvee+jZpuwLoquUTJnE+kHrUl2V3X3Pvf4xv/Di09lbD90/W9Q0z0u6qHFh9txLL2YHH3ZoNnchFGQ8bss6VD86QLP6w3uPOlz942Q935U1trZlm225VXb55ZfquCOb8dKz2frj6gnUnUmSmc16fV7WIvo9+dKr2f6HHZG9vqg1awufDI/7Rjk6ulr1jSzOeppnZttMrsv22mmHrK2lXX3ii04PCceyc846Nbv0uiuz15tasp222TP7yHs/IXqUen+ZrX6o4S57/pkZ2VsPPjRra56vjBuz555+zPtrdVVFtt22b9A32ZjJNgNzEAlghIatQs+Pz/5x3wMqRrf+OrK2ziZvZ5VK7daucnWonJI9dHRml192CR6s3j6nfflLWZvq1qQ60MZqUW9v3an/9WxXm4KNKuXQYbl3WLkyRwZ7VJGLNvQ9uEqU0cK6ggaISzi74OPra5zxICf1k5bAexadUsQwArqOakBFbKsiRSKADvnNa+M5kPR9991rH/7wh+0/0ovupuhyt/7pFjv1y6fZnm/axz7+8Y9LRyhDrqJyowfrlDixfBA9z3DqRvki/ct0EExm8hwpC2VgdkgFHNfSVz0mmdpA35qI2yk9VwVGaMBQofhM5UWEWYlujVmEjonfQpPxHF0yEob8AZqo4yAYXcl7nw5CzDN+Bbe3Zhnl1GnWh4IQpI+oDOQ985WZQsP72hOPPaOZhL4iyVvxV65QWRBDStMqMK8ZnY67hahLNQOkUyByRaxMuXo0fapEVCdRJnVysbnL3PQuiUR75zsUVGJNPkv98rSK+ld83Zq8p12YyTGLZGaF4RjSgqhe4BrbHXfc4YZd3/z6N9QUdIjQCfx70WwtkDXofMPXL3epHlhyoDchjj26ovcShkhYlbeki5272fKGYe6W28N5vt7PvM143p8O54ny53mGfAshkqNI3KMAKhWLyHm/Fzp2g9B//YRe4jNBzYbpTviTl6hcd915n88sT5WnhLqc7gmich7J3+zlDWRRQUXT7SSJuf1vchndeIos/MN358XQf5liJEAxP/YyKj/turyO8EOcPfXXHUIth2owU80fyunN3SGREbQkQSzk1Pmh77hOKnwB+TEt1f9cfkm73izi8/ExvcvbMzRvGCXy+nOLvscWqRD23msf+9PNt9hGm0gChcW8Ks3bQlhiPCWUgfJB3eJ00dXQR7gvvN0lBPxUO0AzJIzYyTCbx24gGDeX2sU//YnP/N/3vvd5IZnVF6dYF69vzmDyN/S5z/tn3j/QXJFCefVYoTPzAq7Q6ARJEj38mdAvqAnfCHXtlLSkVGqFRfIsOXDvA9xIcuKkceHZ0KkLefkMnq3QvktvG97Wm/q1j18Y6Nlw30BtXkyLYdkg8FoyC0OCfogw8TsUMHHaAwhapJcqka8zeseWFnyU5fcsqSIfQZcyCYEZIIf3ejcyIWMnblHX9LquxMTb8/7Q5y10hu332sO223NXO+t7F2jqUW233XuXPSLR1/k/+QkWJ7ZQpS1Xx3UVaN5JMAIJ4ThWTqEpK8Mw7YCEKAIEyEd/Y5hAx8c9BBypVmdrFfPtkaXsBOlZO2U5DjhABIUBGIwAP3baCb9lGHD8QIZSg96BO3RvyuE6Zo2kdRJjdkmULCGdZ4VVMaldTH+GAuZYN2oZHWv0QH+HnzG6zRLd525slAsVjwaPNn1o1RXydBABuISOksGjUuJBMkH0WCk9Or7PpRJhFycfbJ1A+db3cp9714UDBlnaPTJ/6IjIFkNCUgQIESRw/8EHH+wqocf+8293XysegHrJGdrXo8ophXUUeika1mfwYTS/7uzCfwN243lX55FpUTuFn733+0N+suhc4f58cOx/7A/xWN8v3hmvp/AjWKrr4RwgvPnN+8qy/jyJzDGo3EN3hSAz8c29z5O5XEY19gFSG2TM6UBAWWGYCRhH9F2WM4bA+Hrf60DcUwQGfcsZHousM97LfiC69L9efBx/D5TXwPcVnw2LaumMilfURHk5OIdrJp4c7VYVRfUiUrkIwfce6pGP8joI+YU28/UpcoJl78sfAAAgAElEQVTGeSzGgfxuVGCmpsYWu+aa6xwkYGRKX33yyf/Ydddc6+otahSey/tAXvBiSg5U5uL6xf5Bn1wyUemiHATGAujQnY74iK+pSRi2O6gnBA5on1pNcroyjAO4J8+4T8fhbGjH5ed/feu6ZJnjmZzGS70htsEwJAiedySc9o5JBLHYMzBQZyycq8SEcN8pUTANQggtFCqWxt7wGJbTkv4AApCSz43/gQy9xyFnCkzOffdDJQdFGyjpE/W3hmoEiMJ9EV8BcCRwtJqSKpuz8DXb7017OzOqk7Xwt79zob314HdaY1ezjFSkh9Of7Kh9L1Md5VyATgO9ut+5gevXv759j3uzCJ83M6q+qUO6LPTE0to5uq1XPdyJUBWWmlXt0ibLaQVwUYU1ZjmYwHq5Vnq+2PcBPbK58toUJAi6l7HfGUA+iBMnTLJHgZK8VfTB044unRBFS+Xy1iSf+HoZrbXLgGv+grmyCkbH9lcZ7UzTezVbI+COBuNyKVvRLbcLxBArvwa9nBh+t1B6RVm1/Lu71QYKpqO2KVe+Lu1g0BWgoE7MKhico11I74cWO35Op/4E60e/deUw2ntAL9zcbrjhBg2+1zhNo6sjtGAQZoNxR3uRSKNomzOaaIaOHLuEaBODvj7SAeYGfRgrGK085YAojvcMr4BdjAn5jUSOvsgz6MVr8fVbq1MYKXur0HdEpl/FbxAbhxrFDIBE9CF88QdLPsHQOBBH5OL7yaOlpc29JHgP98U+yDXG6fjuwd4zctcjPcKeNq7yNg50QRpKAnD7BG0INBi5si1/TsNSMThXzekBE+Ewy2UwkKNExCiRVbMo5JKF12Tp267BfZY12YOP/dN9OF9WIIo5r73u4kw3VMmNP2hg/7iKEdoA9Quf5wAXhnCKj7isKCZ6aDrq0LfTI7ZGfN2gweGfDz1ss194ziYquMYb99hTlsmSiuSBKBhI6agY3bB3kXs+YCy9OH0/qKXft+QVyl8QeeV0YrZSnKBnS1OT+0xvMXVz23TKRraZyr7bjtNs8tj1DFMbOXJpX66ZTVCJMEOvx+HaGxR6RJEnGq9wjv7Oz8hf+U0gGcLKhs9ewIuidOmj5fv2cgUreWSzKJv+66j32bSdtravyee7UxKLMkUJa0W9IbFAhfLqlhVwiRuNAbVw3ZJRkhAK/uwH7fk2u+3mP9n4KQ0CB81WLsDGR/jMM8/Z5044wa6+9hr1JbnyuKSiGDitOL2V0ahLfGf022LPkahqoLJxgI4DfbzWO3CPOpIsUSGC58RAPtSbb9oNkdUz3UBQT0SAwPfg41YcTOJ3qY+B8a1dUjSYFhJWgPTgLHKJ4qxhJ/qON5ERxkLSX2Kfof4khkS2/HCZ9enlASEf6E8+ATTwaMwztEVxfy0GDMt8yYhejPTopQteFWWacEEHglMVg6YRffVKyGxYKgYvT84wesSp0HUz/w8BGnPmDqMRrZo04PdIzfDwohftkt9fY6+88op1Kl56bUmleIqQnoJ88LHprsBY9YWVSNcQv7Ol1T2LOo2l3bCM80Hkh340vKXAXFG6k8TUKFNNlZiP6oArCta3s1962Xbcfid3FaqZON5dXVo1+yWaKIwKMT1AEZ1llE0soxgrfInBKAIEPqQA0sKARabMcNDPCx5Y/fgGe3zuTHu6aY51PfWwVfz9VvvYe4+xQzZ/o5XI4nxydYPTu133E9nNR708MdgVcFq/Bskpl9cTRpwrPZAeoHcmKS9c4Urks1YiWZ1LBSSOm7LhZnbi505QJQi5K3ck3SpDbH1EAiL6mKCe+7nrmEAlBN1xsa3Elc0SL5Ypj27ZNpTXqhsTglduSpkAGxH4StTvkCaQZxDj5lDGgUo+qOhXBDihoOve/8xkAAfYHQAmOSaACkGSCNAT9LpB38u3wKDr4mKpc9YFkAB4AhwQXh168J2F2S9WVVHmufRehLoLmiE5iNIIpAnRva2G8XFUpIGBN8ycfuNju5g7GwCJfoZLLP78fQabAi1CfnGCGJc1rpS0k0QbkBfXaZPo1sg+ts+aQFZcGAkhjQdJqHOQSCFJoJyh/mtCSQcuw/ABAt+GtswNwsTU/TDf68DVDKgR9JE8MVexoH+iBWDk8rHJ+pPtnUccZVMnbmgbrb+hjS1XwA1xknb9MV/Ev7nYvGzg4sehPg76y7enrBKk5+wCWQRzgmKWrjMSmTtIkFIkXAmi8QnjJ+i5ClvUo0U+FFGLGqMaqdGflhrJ+StMLn4AdPj+5VtarYZ2nvI7yNEGo6b0ka9HPi47YwEF6lhhc7sW26PP/Mce+Pe/7NmXX7Tv/fKn1vzOo+0DbzpMthIS2WtmHzsECL8w7Ol3BCJesiKQENRB+Z0+baIE2vOvu8yOfOd/yZ1pkl1x1S/sa2edZrNem2nf/f7PFa56C5s143kZF7bbUW8/zH5/650OaH5+5fX2vqOOtGox99dmzbBd37Sn4t3Pt9MUEe8/T/zbfnHZT2TyUWNjFGu/XKKJMgUimTf7Zdt2x53ly96kQDQfsDETxvtiPyUahGrcfUcbFfKyU5moShp4UAs3rhv/M8gycAEEGLjxueaYGAjso3ohLr0NOOC+OJMb7VRyt0f1GcABInKOAVLUn1Smca3oc/BzztTy/oZdDC5q0BHm1SajYNz5WLOgetSAg6X3AvoL9Iiz/ggYeCKI1+OINXAeMNH4fAQL3EnfZCNxD7PyYtDqkzf16dWdAAfwDQAh/Yc1Qigrti1rOjiAdsMDCIy9jLGRPziTDHps1/nqH/6cmfTKr8ri4IJfXmxNEncfuNfe9ukjP2TjxXSJwE0h5GLhomOCflTnDa81Uzwq2LLSsq8u68lwjaL3MtXQ4eIH73VR+WtYQEZ6bff5VpCT8eM2cGDRpI9+LCtq5a9plfFRmWbIBN3AMI/Uf/AYvERDvyNnff6OuEUIEkWcVSUVglyhTcaV1NoW2+9nh22/t/3p/jvsxpv/YDfd+ifbV3Hvp1ZqdqT7yLNLs3ekItgOlKq+nnvexs7F42+uOJJA6hPOh0uat7vrQ49WJ5tun/j4/yjE7Hm2zfab2XnfPctOEs1++MPrNCuTv/T8F3wAnTPnJRszcRO7/pY7FYVM+lmthvb//vd/FZb1B3b4UUfbry+5yv54x23eHhWKQtaokL0sepMpmMlxx/63Vin7qR3x3vfZpfI3//qZZ2oxFgUhUWGc/k4cSpbXQ2X2w9zWhV/ramJ2G0WeDGBIDohoyaDLAFzw9/ZBLXgxxL23/ShP1BXRMAmQFEXm0A0akZY1BnnEQ3TjkmxBL8ABDAPVF6LnitxYd+0l47JqH6I+RhVDBJdx1h8YPn0ojlrFVAg0LwYU0I91PoKonvVvpLLJpVn01dhnuQ9wEI9XD20DXeK3RVkiyI52EXSrQdjb6il60VuHBxCUkYuxtY88Qy6h/iHA2BE4Y3QmZyn78z//YfMlOdh28y3t+CM/aJNycODrkgmM1whllmGFrgQ4J4964qsPMgY5I8zH/uXdU3bflEUECV6A4iRwwPWqcolf1eatCsZSn1vjVuhjh302SczNanG1uteLgmtKJMqyytf/XStynH+fzGegFWoGZvuUA4NC6FOpsuBeVS8d/yK5bdVJH3bkXgdZk1ai+8vD99k1N99oX3jPR1w5IOdX1SN0CyLWBQ4b8glMdclCBkYRekCvggMbEs3wNcvfc889PbRng8LS7iHL7zO+fo4vitMpw8JNN5mqcKqP29SpU+2mO+5U4I6D/JWzFTqVj5/FX8h//4MOtJ9f+kv/yJoEChD7MsguXqBIdprVERaVj3DX3XezTTbbVIFLBN7qNBjTvjkdeitDHYJ8ajRogZdskaGfYbCNAxZg4E1vepMvVuQUyhkjgzQpztoY9Bjce/XAQ3/f2nZnMZOhH0ZaRCZFX11WivdDL57hK/FnNYGI15b1/Np+DZrFjf4T6xxUDWEStaw6RrpF2gepQ3iO7um2IEX9NIKPNUWCEKUcUeIWhEvQBKnKsmq+ZlwbVhH5OMDQ4SMRKMAQB8MbRNUiAMwJ1TC+7I/PeNk6xGHfcdAhNlFsdYKeq5FxO6xIbazBp5cgHFdU5AxHO4i61E018GsrsGeGCQF4NYwehtpnU804j5awUjdy3xiBA/b+TChiWCo0LyMjwJDLQ5mHsVF46A9jZ0/8CT9mr00RTf2Y+yrk7kc9xkq01aD9OH1cRx2qdcfVSE/PfMljUYBpYLqFQS/2YCoUEwRjIzFgqgLo04j0FhJuTYT2CiCDD7ZGEgMsdokFfsstt9i///1vt9/wmPYChc+++JLHCie62T77vEW2HhjzoFskup9iyyuv9rZgDR2ZE/kSFhe9LgMEHyCDOVbmvkJg/0QViuvR//o6ehzAXW/ld9WiLsSkjykO6MXW4PxeF8ABNIgDPL/DjDdQZlDm7oOLxkBmFT4m5PE5yDOXLha8fQrUHn0/Yr3ZF/eZ4v40WK2hNe1QTH+eYXiKoIN74nUfc9YA9UIoYxgsUX8Ul29tAAde/sEaZ6jXyQhrfx+H+S0u48F7xDcU7NFemDkdG3bbfNIUk/bYAys5Sylwo6G+aaD74vx/efehrLHMIBpXksR9Xpd4vYhN6grvKt4o1/K/f6DaDPWc09lvzsvtxESA2ftHC9MZnTfC0AXiAD21pZrRs3iI1CKLpBdtV+v0rd+yS8GsHOq1yXiQFcRg3C1awpYuhTcCRoml6GelfsC74fkXXrAXX5ql5Uk3cjEhzL9NIU8VC9VRzDbbbOdry8+fP9djoE9WKFqkBddee63n+eB999uiBYs1IFQoKJVAgKRR5bI/WF/SAlbau1XLljIAEcAK11pFHnOJj5eyuGJFvyUwDzesw/8zaNF2bAC3TRRuluVvAVuDMsF1mG6p6okC6wIFhjVCRgYFkyI6HRIDfjN3RMyNtyDH3PfK7FeRrdnGY1EuyKJVJ90BQXvE0iu6Lcmo+zPuwY+ZO7O5kSIMrWiPb3/xFu/t2zkGf8dIlHOgPKAbShBMYdBuEik8bnKsUTuE2AQ82yUXRCJbYgxKmwjTW5vqu1gL2BC/wdsxbzvn/y6b762b06VvxXOdqqQTUiHUK/gS3hvMStljwdulWOB0hrPPOVNrqW9g+7/5AE2stCb8WMXSF4K87PLLFPVsvJiRlm1VpMVzz/6mbbB+gy+mc8EFF9hnP3OC503ccpb8bZeKx3W/QjndyrdHsQ6+f9EPtUTu/xNQqbR7tDBNtQBLiayGqWOfDu6VjghhWF2/HxXW3kNAQLQsJ0DSxz/+8T6z3bW3Zqu25OF7GvydQ71v8JzW9jviZIp6DPQt+ki0FlZyaeVe2vk1u4rDtkGIxnCxmnwAHnWK9tcBY3kU0+EWVCU2xAwW0XePGBYBfIaTenXeyzt7D/eHiFVDLwFz85ACo4nsZvmlB7G8I/MReDnEmL1BKWKBkzvHdvc/ZovwRy4RnkpCebkDyogRV8L4MRaeo0aoEEJti+0PuCW2Oy5b3BciIxL9MHiDYJ/BlXvvv0drqp9iv/j1r6yiVgGNFAujVPYcDzx4l7wQzI798HH2oeM+4LEyWqUu6JKEQOIH65FR6KZTp9rixiZ3iSTE7fd/9D0bVzdB9hRafOSRBwQcRLvSLqmrJtprWm0Nfc2CRtzSZEzWW6NQAepB5VVwxz2Qpbfxwj3r4P/BslorL8rgFukBy/8C8Ogr0S1vHSRLqnKiQKKAKDA8gOCMSEMxTAddtA4BBz7pJHHeVQxhpTgGHuavyBX8lpz7DIdFFkXVz1+6fDveHfgEAmcNjCo/xSreD5QjAyi1cR3/akS6MGfKX8CneA/053yEidU5VECk0DzEOJTUQC4DbkCjXLwd5HmATiLEVGBFt14AR3P3Z7zoU7UIiIuKWhVMqkaGboC2xXI5nP7SDHvPEUfbRz/6MY9zodVCFL5ZgZu0rGyVXBUV9TksGSyPhFo8RAQqtKyK6I8tS7e9591H2e//9Fe9VTYr49dTaN9HBQ7oPwqkVKPWEvG7pB6pYk16t3uQh4nAAVEaWVaW6J21RGakPQtgAKAEZgptnTe+02VdTNGyGoDAinnYhvhSztKZxtVL10W6DLXOhW7V7wG+leLU/77+x0N939p/X2QOsSZDHf37P7e8z68sysVy9a9H/+P+71/ac/3vW73HwwMIlJ0vQb0d+wKq3BtDPPApguy2CCIwIBNtDCYMyyG8MgGVIhnDFUTf3DG0fe+sfcWIWAwOyCHOivvvi3PvaygTyh/s4VesDL1PUZrIfoe+78Owo86muCjgBWbLzrZDc/EmhaeSNCf4eHejHvI/lUA3aTG9cG9BfBCOyTZIUPLhTfdqjURn8iTiE4Tr5QIBrXbr7bfZmVItHH3ke7S2g9zkpCpwVycZQna2AxpDuNH6seMlMei2ZrnA1tYrAE+3bBMUQOV6RUpUfG73amGZWGKkLGzVPSxHq/wwhqwV8CC5dIQaqK7Ea0c6UaFQzC4tCKf9vpSWpACA4N5775WB6D5+EXCATQLniyMsLvlkOpMokCgwmikwGMwZQt1BCPJP1f+Oifgv51osxMTaC2i3WSyIQQdQAEBwA0btw6Zzfrx8+zIxxOFsYcGYYhLA+PpuQSyPaD5sobYFXOTct0zT7aVuQy4jNAn1H/LeaUn545YzbnYAAxGXNmjR1qpN1gAe7ZHAkdiIANiiMRq096fR3SMdYYYdIAMnuVJIvWoWeUrIu4CElwLGh22yEfjc/51oB7/1MK3nfqId/d4jraxa0iXl95aDDvJ7sGDGcJJnoKfzdYGUOtkwtLU3+2JNIJVuzWbbtN46Hi7TX5xp++59kK5pTQb9sUpmlRbJ6pCKo1Wgw33NVe4ORecskcrkg+/7gM2c8YqDg9glg3VJrIZq11/S0lvFdeYXHiBICqDdJz7xCTdMRJrAcQIHy98N4vjQ/8mlne9/3+g9jl/h8tZwac/1HZOWN9eRv39p5ez/pqHe1/+51XMMZxle8nDCbPlfzqMY+SFFc0+7jOckXtaAw6wvmMfBvxBxKxVz3OX9PbySh6eL3hlWngvszxnXACnCh3jJlxL1DS4XK8/VojuLDP0KzLZ/RvGFy7PXvUEqE2bPXgSAAfxVvwFtzr5Fe2hNY8MwmVUH12Ed6EZWoYwLS7HkOokIiSGF9vVnPYe+qbpOM3xAgoBFhcT6LIk9ffp0LY99n27EXVHqJK1V8eqM6VYvw0OkM61SMZSyVLMED2UVPdbcskgxMLBfkOpAACAEXVKZ5K1QVV2udTDkdSHpxPoKa93a3CggqaBa7QSQFuCUN0ZZVa0MIgVoBCwAD1tus6X94Y+3KnZF/0hqlH/t+kD703ukj6Ob43PPPWeHH364u4wSDwEwj7QnpUSBlUeBJceTob9rOM8O/S3r+p3Do3LOD5ltVIl5VAIUEAW4IYJEvNqNL8VnQSJqGIjEwQAE1yLnzxb4aGSYy7unBYvzGuwYZu0MGwaoDSv7DvnNS4bdrX03a0YoPwILsYAQqwT6lFsl72KN6hwQECGNc1mXxOHkx1jq2Qa3PvJohxFLlx7kK7rf9ecoY/AmCMzbMcUwNh4tNGJRPmgHkM4QiAo2iSDeYz1oY4KObYh7M6huLAmNEqGTeAYy/CNaYaU8DVgjw+1GwD8qaFiHLvibhCVrlZnqSJz6Cy48107/6qn2/R982357zRU+u/ek66WSGpxx8pfsDrkiHrjf3nb/Qw/a1rvsZk0yQui0efaV0z9r1/7ueq3RYLbDdrvacR/6hFVUjbG6MRNs7nzRS+/vUYCnbt1fX6Mwv62NNn/mDNtk4noe3XLX3d+kBbO6JE0w++inPmJ/vfuvWnd+K60JVRver7pBI7bQ+2gHvzTqk3uU5BH/qCxMPwaW4RoSg0cffdR+oIiVqG74lklIeZbHV33UE3KIFRzsUx5iNqPwtvgFFu+HUs2BnlvePIbynhW9p3/5Bstnee8fLL+Ve53SDjOFAcXVBtp8fpbnyhVnSPkbAAdcHzCFbJaP2ZPR8j6XvzwwB0ACxm2dttPWW9pf/3yHBkyWGGZmKtc9KbLLNdPtkCsd63eXo9hWDXrkZx+CfqhGAkMzn33Gdpu2q7XMUzQBGeohHWGcRTTeW1+njL8dUMCvOEf3k8tbj3h/0aOeTyEFaruxpV7G3qUIOVeMpYEhtDZJrE+pdZEFpiIDISsCIHlERSEeAiLxuIfEJh6/OPqMl2faGxW98D//+Y8df/zHbfIGG3iYZt4FY2pX3ngofP30r9jbDj7Q7v3HPaq7QIcYO8s5d7NUtoJiEPSoWbTrEKp69xHvtXkLm+yii38qsPARSRlCpTpl11CmitQIfJwmwPHnW24VmMnss1q98dzzL/B+9/Nf/cymbDLF4yUgVfA6sOmnb6GHhgzXgf9pX6QBgIEYlhZQgPeCq5F0nWWd3/nOd7q0JwKKdSUQ0jrQBVIVEwVWmAIjABBW+N2r/0GXJqCZ1zLCGiw7tPgDwnqW5tTEXyJvOIpmsGVdUo+0uiSAJYh91q9LTY1ifmI46NMzreZYKVBRrrW/p223g/3r4cesQ/rzYMbIAxE5BkbFUQROq5MQzBqJPijbdVc19E94OCxavMgZCdENqQkzy59cfLFtt9121jB+nAcpuvw3v7HNNp3qj3fL3mTBogXu+lhVX2c9RE0co6BMAC2pmSplP0Ago07puitQA7AqY7eW026o1qI4423PPfb2SGj/9f732oxZL9qCBbJFYLGb2jqBqkxqhia7//77bbc99xUYKbFPfeSj9p/H/uXBmarLq9y4LkZc7F+fInlLrxRryZtG1ZniKHMAA9q02HvhzW9+s50gkAWA4BpAgX2UJowqYqTKJAokCgyZAsP3Yhjyq9bUGxUiSK5ydQqyUyG5u/CAi+VDYvbVKn/7YPHfLMZUVzVWHFCsXfJsAvv0tM9jlWGxf4ENGd21zV1k9TK3r6uskYudtOU+iQVB5NN4HcFk0cIwiy+oWuIrV/Eexhv10JSHCIeuclDB3X5AJ8c2qM4q71VX/db23m9f+18totTe2Gi/uvQSGzuu3mrrtuVJdzXMNE1HCjFejL5TYKBL0pbaOrk0Ygwn3TYMCluPSmLRy+agR/GgO7XoEvfMnTdPSw1vY+tN2kBlkD1BT5vsFRplgCg6SS/SigGiyob6Z+y4CTb/X09Y7cRJLolBC9Ql8CbNubwpamWJj9iBGi0l0S5FUpil3DUqTmOEGFdlpEIAgdi+2IoQQZH4BySkPr5mgOicAMKoaP5UiUSBFabAklPGFc5qLXzQmbfUIIi7W7rsn3+51zYZt6ltvt4WtlXDBqa4v1pvAV28WJCAwyf/+6O20dj1bMsNNrSjDnmbaUUgK5Xhna8BIKbULaBxwN5727xXX7PDDjrY/v3wE85YHSAwO49GjDrnXgT5+1c35WAEtbIg6RGIKVN9mflHN7d5YtoXfudCG6/lrdFTz54926677jr7y1//Kr/5fb1KXfIkcDoqgiHRDHFj7JC9RokkBTV1kiDoOvYOLbI2nCBDw0nrTbTXFe8/Y6GO7nK77tob9L52mzBhnP3rkcfs2mt+L3CQ2W9+c5ltt/1WAg9hiV2Wb+7RC7FvmDRlI/vjrbfovm77P3lNnHbqqVYjd0ukIJ16T6OkHuW+1DOgZw0h9GpqaOqP6yIJoADwC54kpfbd737XvRWam5sLUoMocSi2XVhNRU+vTRRIFFiNFFi3AQKEJ8COGHiNVAOPP/Zv6dRfthdffsF++oPv2TFHHiGT+2bpybvt48d+1MbXT7RXZs21519+xcZrxvvlL5wgBtelwVVLD2tfpUA/99/3gE0WA7z1D3+0nXbc3psWh0GP2FgACZrZimetCRNYdM0zZsywb3z7LA+ze9GPLrJf/PIXvlri2LFj7YorrrCjjjrKnnzySfv73++2nXbaqRD3gAp0Ss9foWBLmWadqAw80JKYeKlcKQjlDDDollRhg42m2BNPP2V77L67bTRlin3omA/ahuPXt/UnbGBf/MLJCqy0WDPbVuXFugq36R3V9sUvnmgXX3yRJA9ltqip0W1DoKG0OfbLX19in/rfTyu4UqU9eP8/7KtfOU3ng4SBYD+ADYBJSHk3LxCctsgvrQM7VC7Ftgi0OZKcWbNm2d13323HHHOMgwTOAwxJPBMjoK4DJEpVTBRIFBiAAuu2igEmodUCO+Q6VyGA8K2zztQ0WAxOU/u3HLq/nf3tr9oTzz1jYyUxuPPeh+zRBx+Vv53WRNSqhOdfeLYdetgBdsrcL9nEiRN9AM40Cy4pV/hiMUmfseUSbjwaSLApZ1Uu3vb//PzqTMwSGxoafJYNENh8001st513tuM/9vFcLF0rzQm2F3g0BPsDyosXh6/iyKJIVEMhlivkbpiJSSPuZ/2EJjF8RP0cM+ufLobkLiKyvvjW175m3z7nWwqg1OIuj4TNapLNRqWkAOecc7ZdeuVPrE3eFD0yDu1WaOVtttnC/nbnnxVPo8sXAKvdQCqJuXOl6emdHTc1S70jacMEqTcwhuS+pSVX7awDgoUYStnbTG2NbQfMHxsE3BnvuOMOB4MxxQWaoqtj8mRYWg9K5xMFRj8F1mkJArP6bjGsyvoxmuXKnBAvBUX36+mU2+P4etts6sb20ivTrU0ShBrZG5SUan0BFiwUZ5mw0SQbt16DzXh1pnTiChCUB5eBixLEB5EtLhzwoLDlkQxhTKsfFxR6NsAAScGpJ51q737X4TZt52luO8BMMoqlUTlEq/ZSGQWygiOBiWDmJObpGAiSWNsBd0jUFTUCX4pp6PYDqCK6uzEIVXJfe5ZwlhGnVBLdcoMEOuEx0S1QUFNd6YKdcnmUVCouAuBL2gvRuFN5yaBRb6AMJQIWVYq4GLwuZBOiQEukVnk7gM9wvihoF9YgmgcirJr/AQIAgpoeLsQAACAASURBVBjfgPYGBHB88MEHO2igbTFK5BqAgGucT+Bg1bRRekuiwJpKgXUaINAoJRosuySzhoExG2WKXwrjkwj2uRdesI21nDDhhPGk75TIukRMv0eDZ+OC+Zrxtun6ZtYmbgaz6iH4gML7yvbO1zgAGMA23YjOewBTWl1k+ooRwhrAtGAK0RgtmvTBMNiKjdTK8rWTKXK1xPqe8vLDhIMrJOoFDmD2qFXCH54c/JVhbViUCIIUKUNYiRrR7t//fkgSmXrXxrhHif5QPeCrWaqtpZnVHEusmvXe1Q4AGRgeKg7yQg0RgQ3lw8OEsgRjTLWf/rqwfVBqE0BZF1Jsy2h8yPEL6tu4pk6bNs3BAOqE2N7QM6kX1oWekeqYKLBsCqzzAAEGU85KgrLsPlWGbngiaJpqZ379G7bJZlNt2622to02nGI7br+tnXzySRKHi+nUVds5515ge+y1tzVMnCzgIAE5oEJMtE268h6pKHqEBbR2UMEuccBmWAMAwoDlWs6TLskH9Ljcnt8xAzFjqSewRiBQVo/TNjBrsJhLVroVc0IMCwDS1iawAkMHpAWsJpYfJBFNjYsUL6FcuvIocQjvrJCtAuAAoNco2sP88ICIzJ9QzdgkRCaJdCQaLVZK+rAupCgxiOoD+jyxDz72sY85KCgGgsX0WNeNO9eFvpHqmCiwLAqs8wChqqLKmhsXuzj1XUccoUA/G9nWW73BnnjyWbvs6msUrrdKLovldtWVl9m8ObNsfO1YW79+vP3niWftBxf/2tpb2yX+lu+9mFSTrOerJ69vG22+mb3t8MPsyt9e14f2gW8GkjtzXFbLrCXXCmr+QoRKFRym43+yRVDAok6FWoZpl4p5I2GoVmwEwkG3a+YKGED10K7Fm6qr9YSI0iEVAbe2aY/tA9KHWhmAkm9TU7skBKWKWSFXPZcaSNjT3OYqjbq6MbKHUIAkiSOqaqTCkEaDfanKUCZfVI+SqWfWJdF5ZPJxT/2RDrz//e+3M888038Xx0mI3S6Bg7XkA0zFTBRYiRRY5wFCuwwL6+TCd9fDD9iHTviUzZz9qj313LP2m5v+IFm6QvXK2K6zU5ymtNuuuf5qW9C6yF6fO8duuOMv4nUsGNQgScMW9tBjj1jDlPVkdNdmv7n2Knv51Rl29PuOcgkCjDIoF/BnIBE1wSMnrPUgoSA4iD/yFSCpG3XNZMhYjl5GRx84+r+sceFCt3FokTSBJZk7BQ6wFcCFEROFHoW3Jl4CFhu+5LDo36GYE6+/Ptfe9ba3y4XSbLHcS10iAPiQwWitAAepubXF3v6ud8kuoVaApMLOPe8cgQx06UFSANPz58g9FtCfHL0J6QA2CNSbBBi4/fbbfc2MKFEorj00SuBg9PaHVLNEgeWhwDoNEGDXPTKEcxfEGhYJkgi8XmytVlxIrnVStusaIYG1hgQ2BZIksIxxpmvN0ot36rhTBnYlJZUKsax4AGJGpYitWcZY3M5F5WoNt9HHOMwRwegagAEBAfSocu6Z0Qt6qDtrPZRLZTPruRds0bwFuTtdlWw0REOFVyaUNe6JGCFKiOMmDEgKFi6a70s2k6WWYbCmxa2yHehR+OQWGzem2tUWnVr0qSJfiRBGeNVVV9l4BVDqkGTiRS0O9T3FbXhUQYDaUG2QrQpUppgXHQJ8HhBqHen90CYYcmJa0+LxLI499tglAEIEBlHtsDTVgxMzpUSBRIFRT4F1ZIhcWjtqgamyOmtplck8vnqyvYNpadkmvPbcmA1L+zIBgHYt2tQmY8bqWlnmw7nkqVAqrlYu8EAqlwS8HGAhewaCBGGPwKJMME9nlK5TEBOFjy6tOGvj+X66Eg6D4D9Uxo0bRccTPnOC3XPXfQqutL/dcPNNtv2uuypGEqsvdtpXv3qaXXbZpfL86LLddtvNjn3/B2WouL6NmzBGgZnmyDWvXB4RDaKhlA1SZXRnbfbM00/bhhtuJCZXYXu9aR+bv2CRHaeQy79QfATShAkT7C1veYt+BYM7bCFi4J/IAB2MjPIUVSpIC6LL4/jx4+2DH/zgEjVflj3CEjenE4kCiQKjngLrNECA4ZT0SEfdIyNFia1LxHyqKhH+a8qqxRhYkKha4uqOxRJjy86gmgiD0oETZrlakoIurR+ADmHRArk0QkkxnDZFU+Q3YmyWHkZUDlRwXULRNqoI76tjBmjAqpAAI68q9GiSy6iA1I++/wPb50172F133aUwyeMUM0FSF3mFdGomzyJRVfJgKNdKkvPnLfR4DK2ti+3b3z7PvqAoiTgxZF2ipLwXqiS96ZF05utf+5rdcftfNDPulLHd8fad73zHpQOVcpvMJCqY/dprrgracuutgrujVB9xhlyh8gTDvdGPEKgzHhwkXB6/9a1vKc7EOR4PIaVEgUSBRIFlUWDYfAode3EqzJZ1Mpc4Dzhj9jDDcVtWCVfyNXTerA5ISGDWEmBVw54eVmTU7BbfO6UqWc53tEmVoPJW1UndIJk3qvY44xo7TkZ33KjKV8n3X1ZxARz4FDXOp4vn1SNYqZyG/aUSA7I+TqoSUapBA/SIubOFxshtJXQfTFZCeG29Kb5jwE7DM3lLh+vhqFoRJ5GctMhQcYxsPToJgwiNJVUodfWDvA+0rkOGSkYvGCfwsMeee8v2oMY+cMyx9sij/1JApHlWAYCQ1CYwuxJ76MF/2p577ilQUOVrQzzxxFMekKldK01Onz7dDjjgALv66qsVBEiBnvRKjBcrJe3pzNuUWrH41GhPGCFiy0Gcg3/961929tlne78dyP5gtNMi1S9RIFFg+SgwLD8v501iODnfyd+suXPOtDiRiQFXSSTfIEOy1+bMcYbDsKwVlmW+LsZUzfx6JJgnbGk58tEgiad+mRZi8qmudmWSGFD0StklkNy3P79WWZOLaGtkAOf++zBT5AOaAaPcVh1DtQkwXK3zylDnqStzam6J7CjcF9QPnOV4RZLnl1vy54ilDwWcIm4EKMmHbCc8/r6YLFb+KODLZHgpRCTjPnkLIDXhtOwFJMO3joKLJlYYHvPJ2xUmnlc0FJmZeRCZOK2QwpDK5TEQkh7CGFFbE8aemr1navda5VNNXAmMGFWmCrVDSWmnTd18U5u0/hQ6lrqHbA10P8s9dwtgdChKVUW5GL76To2CIs3Ueg7ra3lpp68KhyvljFdm2EFvOUQhr++z9SaOda0OIBZjyR7VuSJXCYU6qGy5UWVe2LVuV2w3EAvf/1wEBGeccYZ98pOftClTpjjQIlpiSokCiQKJAkujwICTwaXd3P98ZHicj5KE4nOcLxHjVGgb23KzzW2cQvo+8vzj1qjzrcTJl0i5N8Xfy7Pn3riRU/Hx4L9hbG6I5eIA2D3yg7Dxm8h+XIMB4UvvUenE5Dpl9EaY4XKWhYZ9kgcV9x3nKnWWiILkGTbyz/ItvCs/v5xlXqKOlDFuRXkhAdE80Zeu7uxQeOLqGmuV8R7C5i4x3VbVa3bnIp9djhN40/qHAnLKS+oTcWVXEkQWD2WjNKi3vQIQANyEXyFaoqttHPHkMEhxDjiBa2MXTFwdZestt7SFc+ZZl1xEaaXrr/2dZv6tHhDpmWee8Zk/sYyuueZ623rrbWWLME52IotF/2qdR+JTZ5tuMlVrQ/zdRR7/d8JnfWbMQlL77fNme+j+B7TewwbEUfI2wQwCaUG3wCpeDyHcM9d0cUXRWS8hVuuvXnuKXuPXYlsC7C4AA0gMoNGXvvQlV7UADqLqYbVWIL08USBRYI2lQOTGK1xALPNhCDAJIggWppeMvcqd8xj9bbWJIg5qoHrkpWdsvs69Xp1Zo6alHdzHLG8pW+C7YSYOw+t77OP/sLbAxgqlLkyO43m8FAASRO5rF6PFah7bhEWLm5xZDff9w3meMnaJ0fum39DaYZEuOJPWCQcy0vd3ihl2KZbAIt0x3Vptjvb/eO5J2Qg0265bvkESAtWliFlWuPQjSA+QIBSnAAaH1nXKRC8WcWK9CpYVRvQP0MJIbr2JG9jECZPs05/+jAOZUgETQjmzgFBlZb196lOftO997zsCMYJaYvBtbS06H5YuxhKfQD/Vaot//vOfdsIJJ9h5551nr8n2YLKkCqzQOW5cg1+b/drrXvwKeUzg7ucW/UiGXAU0uhPAADBw4okn2p///GebNGlSAMWqdiHi5OgmQapdokCiwApSoESziRUfJZ2Lhsc7c35RHpmTuEiPzrWIA74mGcIzLXPsGxeeZ42aiX/s2OPs0O321ay1x8b7XHvpCaa3MtNglYeBk7rEVMo12LIHTlThLidUU4buYDUlys4kuaC2cYaOiifsQS+oBpAayJxSrSBgZs06Xa39Ivvqt74maUi7ffmTn7WDJm9jE7r0tOqF0r67Vks2U089A3BgAxgEEKgZeTznEpYATFA2lYL0OEPh9BBrNJTAlKVWIGARd7bKkBNpSk0lpZXbqNdAy2arw+y49c52151/twmTJ3hYa1ImaVOZJBHkg20EebQtbrGaei2xLYkOevZMAIjywRB5dXNbu0I3Bw8T8uAp3CRLlJfHBHBdiVJs4HC01v0fwye7JKwo8VnHoEis2rjjjjvKTuMJmzxZkT+xtRGwalewqQQS1romTwVOFFhlFBiWDYKX0hlBmL3ys3+GHdKB14sxbFe7kR3x5oPtd3f/2X559eW24ND59o59Dpa6YdkAAVH50BL3RVY19H3wMVj6/a5CUL5dEpWgNOgolaujVAitWatVismF8i39+cCaVs51whAj3WDPe2C0rloQYw7SFlh2+MWVDskZmrV/8Kl/2NU33OD2Bofstq/ts9GOVgsjpwGprZg81CwTGOpPf1g5qVh1P2ALOb9SrAIBA0w2y+RdAEPKxMWZ0YIrgRbtEvkjHeiR10iXoibW19dLSiNPBV2P+RKzAIaXibFlYmxtCvxTJ+PDlsXNWkQrrMrURTAghbtuaWmTp0O11CUCIyILIvbo3ghTRPpDIgqjL1SULzjlJ9fCBAiIQZC8XqJTVDEAlgiSdOutt9rRRx9tuDeSuL94Ma61sNqpyIkCiQKrgAIjIkFg5taeT2Cq4VXOaDSj0wiPCmFumyLfyU2wU0Dh4r9eZ7//8y260GV1OqdYeQVGMFB94+A+0LWROOfFXcYsEuvvaAne1NTk7mGIubG8r9YS0XEVw5Eoy3Dy6IbjimsX18UVMuK01MFFzYrhwNLNhDxmFr/TNtvYp977QXtD/SQbA8NGT6FHYJ5ZZSBKKRnmIJCf2JZyyHJN3JFjilB0lya5eabvSc6w9G4vmM9yxbQUSZHOUUlYRM9RkiZJLarkuVDGoU4DRLz/dLZajZh6NOVENkI8ihoBDm7CSNSZpO7pRtIgaQKqoLjOghdJKZqJOGDQ89zHGhB5YcNNa+H/1D16JDiI0lbsoYD04LnnnrP999/faxcDJgEckpHiWtjgqciJAquQAsMDCCooAxJiZ8Z1hn8HCJHraoBv1PoEuBH2aNDuUeyAmRrQn1k40+696257+OGHFZlQs8LAUVZhtXtfhWh6WYnBlkEVJos4NsyCM5sjj4yNN96YEXdZjw96bTgaHmb85Tnx2BHcibbw3zAKvb1CHgzYEzTPX2QTx4z131PW38AOEMM4YLe9pOZREsMe464C+i0vBJavRpzP8wUPyJzHLw0gQMVQl0CPoHgIDInZaqXcP9lj+OlLCqvsqA66FVQK+lbI8JBzFTyuzFyVI2OKEkkWegRqMjH1CtE/88iXqEFYU0BSE8qq+5qaW136QBncQl9AriMHCthh9EhFQVsWZtuSSvgqhgCNUZKK1Q3QAXqfcsopXs8LL7yw0Ie93gJIgATAbkqJAokCiQIDUWBYAIHJGdbuPtvTxnzQB/gIEGBW6Bx0kdlph1zVmhVHQGGFJOyW7lhCewXQ9eeXJooPZoBkCLta9XtUDKGGwWiPEqA532u/ve2GG6+3SRMmr5ZyQQ+UC6g9oEtY24H5NLELxFR9zi1GoGMJ7CWpqbAKMdNKLTNZL8bqhoc+4dciSWIWAIFu7ATkWdLMolNaJZFrWmcx3FcEEHgUQb2DAg7ib5+uQ6E4MVe5mOGyzoKYtNsKCL3AoPBmcAlCnkGzmFWVjClLtWgTZhBEqmRxJVQZUXrQLdeGEtwkaRNFtsQ9kgw8YqWAA5ECkfAgYo9ShPDesHBUnD2HGbakJCobz42W5NKaHPACZJubm20DGWw++eSTNnXqVAdHAN2oYliXFq0aLW2c6pEosCopMOzRMQqUyQgteJAka9TvgX0oAQ5gAtoqpVKAzQfv6zBzUTT9nKVws7OtAfb56dW2w2ERUENFiHNgVrew1daTXmXDJawuVm0hKRfsPvBZoAAp0jHQlpbw+7CZUANgYEgdgsQfcJC3m2IRUMdyqU4AfmXczLSelO8KxnA69maNhgs6CNd4UygFOgJnxrpWKq7v+EEJBpX/1DXerQiJAgdc9zDWOsbuAFsK/ki8BoDh2JOyRXChez0OhRLeETFFFQNlIl/qWix652R/w77Cw2vRj2K1AvUBfHEOaRdxIs466yzbbLPNnOauisntDwAHUZKwFlU3FTVRIFFgFVJgWACBwRozORJDNIO4S7w17cvhQbgaxny/r1ziAvzSY3IBA9fzZ1flPpYBt8BlJQZSZqvMfiOzGSuL+zECQfWrodyRXv3L7O6NkfC6WITRihi8mie/z2/NubarJXQYpUF+Kb6gKE+PgJmnAjYouh4u0cA5SOi9fcBffVU8oTe5eiIPuNT/oaHl2vtUMT365zUajgEF2MOMGTMmV+EoEoeYP9EkTzvtNLv88sv9GGlCnaKFAh6immU46q3RQLtUh0SBRIFlU2BYACHw+cAxSsRhYBjuBqetPOceBbc4yaQ5FbdYrPLoJqdnGPwRKa+qPWVw3rYEg+tLtEyzaLfa1wY/7ZHoHfF4mUT2THhXVXkHek+gPu6FzKQ1K3aExtkQKRLE4EDOyxnOd3Of/mi/GG3Y78mfLK49rqrEuoiMPJIqggPuLf7d+6zLk4qz6vO7mOTc5SVzaQC3FT+X3+k3UOLgxuh36FIvAKD0pNArC+UsfpFfFxUiKNK+2Bsjz2Ct2mFn0KAAZCQ3vNRGOumkk2yLLbZwcBBVL5wvtjso2GP4EyklCiQKJAr0pcCwAAJZud+99sVMgsEbxhJTnJkymLv1ez7+Oy9Tireu6n1vCfXLGdDAexdF59eJMcBxlZZ/JrrimlB+WoAi9oIDSgVYABj0Z9OB+FGvX0wD6J83jZ+G5XoT6cLggKA4p6H/dtL6S73X9LaBvzvvILGj4NaQn6JA4XoEBkN752icNVMnbAvolwAGVAsPPvigXXHFFX6MtwLqFcAB+6iKiGBiaJRLdyUKJAqsaxQYFkBgrI7a7jiGM0sdcCYqLgMDYibLrLXbA+r0ZUirmvjFDJG6DIQR4F4luU6EMnMfbnuVCsKzuEmLDOX1XdVl731f5JgUrC9BXW2g8rMvSAy4TRXtZb7hureNNlf5FFUGNsx5rnvdiy7GNi+6fYV+9koB4uPQOdpV6J1IDvJZf7xjJMDBaLBBiLYE0eAQ48THH3/cntZy2ICBCAKigWa8j+MEEFaou6aHEgXWGQoMCyBAJUTbbkom7lE8l/PZpwZ1j7jn09slaQrzwu1ujUixiP32zMCD/wI8yivjVSHADhIEjiJIWtX16A/EKF8xmSMwoFyUk2sFahejAK7ruLge7i6ZVyjuHRzkB0zmRy5FU1dyVK36IIb8RaEyvQXo09sGL0l/ycFoAAfU2ttc9Io2BhdddJGvUfGOd7zDryE1QJUAGIgujVHNED0aBqdeuiNRIFFgXaTA8ACCM4zAlLrEULB8L04wVvfT57SQgoOG8IgPauU5s12TCR8WPQolLGNRpLwOLB2MOKSYIa/qesA6o1Eh2KUQ1CgvJAzd78kLGfm789+A4PIii0FHjs9Nuk5NeY78l4YF8lvzPAbaFVOnb9/ovbsXVrrag8IVbo3gYKC8OVcMSQcuZX9gwFMBHPDswM8s7W1r4nnqh6QAA0QMEy+44AK75RYFIqN2Ol8cSjmqIaLtQZQqrIn1SmVKFEgUWP0UGB5AoPwaoCLj4TAOuT6zdv7AgO+hbXzvNwMMnBfgFRB05VxesVTMhJY/h8HE5M6vcobljFXJY/hE8W0xj1r+1w/vCZUHOqK2iWUszpDyUtbIcym+N4E3GD8EDKQ+KVAwr2doo5DTgCyU9w2v5Es8XSgDPaj3INzX77jv4YAlXCL/CBRiG44GcEAl6YdxTQViQAAQdthhBz8PAEBawHcGUECKwG/uZ5+CJC3RTdKJRIFEgSIKDA8gMFIz4urfQBm5SNrH72Axz6DUO0CHUvhsrj9DWIVNNJRXxzLHRW6YuWr81QCs6E9D408rpUaUHRBGEQp0jZw7rxjmE8XM3O9jc/P9qFTI90XE4L5ilUPhOTLL3xkqVfRQv1r2beul3RcASi8Ze3/1ecIrSZnC2V7ZzbIbIEgLoM/S3t+v0GvgYQz3HeuAV0JxzAcYP3YHp556qt2gNTa4L8Y4KA6nHJ9PCzStgY2cipQosAZSYNmj6xAKHGfgLhHot/njjMv52Ly2DtG9s8+cOWkAxtgrejEMgUwr9ZY+dC2id3xpPLVM+hffVNReS2S3zExWvJrhPcvojv3KFN60jPtXvChr1JPRhgDmzm9AKuAAm4PYL1EZfOADH7BDDz3UpQYpJQokCiQKjAQFBpr4L1e+a/PMbHkqWqzLps6Ic1m8KaVEgZVNAfoeW1QJIB3A5gCwADi47777fBnnz3zmM35fVDmktRZWdsuk/BMFRjcFRv8UbITaD1CAXjcmgtMkgDBCxE3ZLJUCgAKYPsw+pvgb1cK8efN8tcbbbrutEAsh3geQSClRIFEgUWBFKZAAwhAoF6Ukcc+APW7cOI9Ql1KiwMqkANIAgCm2BDB8VAtxXQXUCay1cPvtt3sRuI97sDEojp64MsuX8k4USBQYvRQYtoph9JJmyZoBEKKqgdj3DNYpJQqsTAogJQAIxL6HaoEEEPjjH/9oV155pb366qsF24Pi4Ec8Vyz1WpnlTHknCiQKjD4KJAnCENq02P6A2xmsMRRjkZyUEgVWJgWQFtDf2GD4SBTYz58/33bddVf729/+5q8vVoHRX+mf/fvtyixnyjtRIFFg9FEgAYQhtCkDbbQOj2oGBu41xYthCFVIt6ylFKDvYYzIHnuEGMvgmGOOsTvuuMO22morrxnXIyCIz6RQymtpo6diJwqsIRRIAGGQhogDL6JaBuo4GE+ZMsXmzJnjx4AHtmgUFu+LoGKQV6TLiQJLpUAEpFGCwI1nnnmmA4Vjjz22sJ4C/TPey++45sJSM04XEgUSBRIFBqFAAgiDECgOutwW9bmABowUFy9eXJi5Fet6i+8bJPt0OVFgmRSIrooRgCK5wgjxkksuSYstLZNy6WKiQKLAcCmQjBSHQMEIEopFthtssIHNmjXLn46i3TjLS6LdIRA13TIkCqBWiCABCdX2229vf/nLXzzuQYpzMCQSppsSBRIFVpACSYIwCOFg/v0twQECkyZNspkzZxYMyMimWNqQLMgHIWy6PGQKxABJH/3oR+2tb32rTZgwwZ9NaykMmYTpxkSBRIEVoECSIAxCNABCZPzxN8eoGPBiAAgUSwwimOB8XDVvkFeky4kCS6VAXJIZV0ZiG/z85z93YNDW1uaxEVJKFEgUSBRYWRRIEoQVpCx64LFjx9rcuXM9h2KDxKhyWMGs02OJAgUKADixdTnnnHPs2muvdXBA/4qBkxKpEgUSBRIFVhYFEkAYhLLFEoF4K7pgpAibb765vfTSS3462h/Ee5IdwiCETZeHTIEjjzzSNt1000Ksg+Kwy0POJN2YKJAokCiwnBRIAGEIBItujFHVEN0ZN9lkE49iR+JasbFif8AwhNekWxIFlqDAdddd5/3qC1/4gl9D5YAUIS4BvcQD6USiQKJAosAIUSABhEEIGY0UY/x7jqNtARKEGTNmeA7M6uJ59MOkpGoYhLjpciF2BqSA6RMpMfadG2+80aZNm+YhlUkA02KD2RRnI3WgRIFEgZVJgQQQBqFusWSAwbn4eIsttrBnn33Wc4gSAwZ49MNEWUxqhkGImy47w4/AIMY4AAjcc889dtxxxzkoiBIrrsc+yL4YLCRSJgokCiQKjDQFEkAYIkUHmq0xu3v88cc9ByLXMZBjvBiPh5h1um0dpkCUPKE2oI8BLNnj0njppZfa1KlTrb6+3ikUgUL8DbBIKVEgUSBRYGVRoERi8GxlZT6a8mXQRkoQJQiQjcEcKcKLL77o0gLAAWGW4z3M+PidUqLAYBSgP9FX6FO33HKL7b777oaNS0yAAfpgjH0Q7x8s33Q9USBRIFFgRSmQJAiDUC5KDopVC1GdwNK7++yzjz366KMODrgXSQKDN/uoTx7kFenyOk6ByOwXLFhg73jHO3yFRuJskLBniQaJERzQzxKuX8c7Tap+osAqoEACCIMQOQ7ExQCh+JEDDzzQ/ud//qcwYEdw0NzcnALZDELbdDkYsiJ1Qn3wox/9yCUE3/ve92zMmDGFYEjFkijAQdyKVQ6JlokCiQKJAiNNgaRiGISiDMbFsRD4XTx7Azh86EMfcnHwWWed5YM6gzz3EWmRgT6lRIFlUYA+dtddd9m2227ragbWWSBqYk1NTcH4NUqyUGUltdWyqJmuJQokCowUBZIEYRBKRnUCt8WBmcG6eJDGoOwf//iH5xTD3wIiEjgYhLjpsoPN22+/3Q4//HBXSQEOkCjU1tb6NaQE9DWkCGyciwA1GSmmDpQokCiwMimQJAjDpC6DOdICIt1Nnz7dfzOAs2dwT66OwyTwWv44YDIGN0IqAOOPngv0kddff9123nln+8Mf/uAxD7BdIaGiwsYlpUSBRIFEDVciKAAAIABJREFUgdVFgSRBGCblAQBsG2+8sb3yyiueGwN/sWpimK9Ij6/FFChWSQEOAI3R2JDlwgnV/cADD7jXQrGECnAASEgpUSBRIFFgdVEgAYRhUh4GQNpmm23sqaeeKuTGrDHpiodJ3FHweJQeYJuCC2PsL9inHHbYYe6xgPQJ4BAjcUYVQlqtcRR0gFSFRIG1mAJpuedhNh6DOdKCGA+BY4BBZATDzD49vpZTAKYP84/MHsBAHzn66KPtqKOO8jUWolcCkih+s0cNESUNazkJUvETBRIF1lIKJIAwzIYDDDDgMwucOXNmwbAsMoZkgzBMAo+Cx7FToR8gQUBy8Mgjj9gll1xiG220kdcOUBBtDwCWgIMEMEdBw6cqJAqs5RRIKoYRaEAGf9wc0SkXez1EUfEIvCJlsRZTAOkBTB+bAgIh3XfffQ4OkCzguQAYwICR6/QZJAcAzOSlsBY3eip6osAooECSIIxAIwIKcE8j5HI0UCTbZIMwAsRdy7NAakA8A0DkKaecYkceeaR95StfKagQOA8owICRFEN18zvaJKzlJEjFTxRIFFhLKZAAwjAbLroyNjQ02Kuvvuq5RSlCUi8Mk7ir7PEevWkpwjRWKilZ2nXOxzTQ8z1WU11pC+bPtW9+6yw77/wLrEGBs6LhYpZ1F8U1KHUQQd/xfqN9V48MF0v1mxRXTElLexTRPP1MFEgUWJkUGGhUW5nvG3V5Rze29ddf3wFC1Dcn8fDa0tRi8mLUbDDsbh2yWdzyHz2m6/5byZl1/pzOd/d0+qnCpks9Pay02G0dbc12wH772pixDVY/dqyVlZcG9YGesRIZtJYqZoYwQBlfYk/m4EBn/U0luuBqKp2PZYzl1GoMBcxAaVJKFEgUSBQYaQokgDBMijLjAwwgImZwLw6MM8ys0+OrigJqw4AIfOLum6c+65wWEEOfa13dHWLuGBZ2aYORoyYIgbIy9YuLf/RDe89RR9rXzviagwD4fZewQZmYf1c3IEJwoOg99KfC+/Ni9N9llDEHEf2vpeNEgUSBRIGRokBSMYwAJaMeGSnC3LlzbcqUKT7zSzYII0DcVZKFol8ONB8HKAwk0udcBrbGxVUrLna1W3VVvYMDYQIZH3ZZU2OLHXfcf9vVV/7GKqprwxodVdWGYEH2h/62YMSav8BRQd+XJfS+Sho/vSRRIFFgKRRIY9BSCLM8p6OaYb311nOAADBIHgzLQ8E15d5SsWgE/GLffBmluUpBPwP7LvpcdAImX1lRlS/1HaQDxM3CI+GQQw6xXXbZxcp0PUNFoAx52sGBDnuyHqssr3BJgIsMABx5nlBjwA8zvx4lDgPes6aQMpUjUSBRYK2nQBpjRqAJo90B7mwwB1QOxd4MI/CKlMVKooCUAdL3w/6LPwWAgQIa9RoiBAael8Fn/2wlpdYpgwVsFkLkTLOXX5pur86a6d4Kp532ZdkXyF2xO5OEodI6OwLg6GKFUD3b3tEe0AKIIWf+vZCkV56ASsGLmFKiQKJAosAqpEACCCNAbFQMeDOMGzfO5s+fX1h1bwSyTlmsZAq4aqHAgYNmHxPB8BcUD4AI58+uVuhNAIvyskqXGFVUlNu11/7e9t9/f+8HJ510kpVr4aVOqRvYNy1s1D2lroIAUHbKEKHXjVHnVQ4sEqKlQ5QSRDVVBCW8Pamu+jRDOkgUSBRYSRRIAGGYhAUYIC1gBgljWLhwoecYpQjDzD49vpIpkPWgDsodBeDCrg7wH/rr1sYnoq0IHEQmzl0diA9Kyu2KK6+yk085yW644XrbeJON3Fi1ubVN1ogKtaw86xvGWE8LYMGsqqYqrPRZqoM8X/KSL4UDBC9BKIJ+pZQokCiQKLB6KJAAwjDpHm0NiH4XDRPZpxgIwyTs6njcObNYtOIPRK8GTnlCyuAHQQkQz6M++NrXv2EHHHCAPfLwQ7brrrtYV3urVag/VMs4UfBRj8q7pYVlwUNMg5bWFqkcqh1EggToL92SRhTAgd4SJBa8N0gM/PVFaoakcQjNkv5PFEgUWHkUSABhmLSNQACxL14MqBji4jvDzDo9vhIpAFOOGwICvBGc6SIRkESos7vdOjK5LgIYSLkLI8+47YDSrNnzbf+DDrIXZXcwfsJYaxg3xro72628qsoZP0+ihgBEdLZ32J67vNHmvDbX113AxdFVDJIuzJgxww5526HW1NFq7ZJIUY6udoEUfgggEPMg5OWvLZQbBUihDuFS+j9RIFEgUWDEKJAAwgiQkjj76JXHKEoeKgZAQwqTOwKEXclZBNODHtkDECRJtgFtBCgQ09bMvqKswipKKnQ+SA6EFaLwQGslyKagrcNuvPFG++AHjrVf/+rnwZOhW4syVep57ZWRGyIqJIJVlJdYpaQHlaWs8im+r4AIBQmT3t3dJQCB1ELvrvBASfJ2qNS+FUlGSAVJhg6T9KBAlvQjUSBRYCVSIAGEYRI3ujQyK2Q2h/QAuwQXG2uf0ppNAV9JsRxAJ5fFKs3sFy6y9x5+uH3hpC9YVWW1nX3O+XbCCae5DcH73vkeb9dfX/ZL23DDDe1zn/60ffHz/2dX//Z3HvhIQRFt+nNP24aTNxAQKLEvnfJle+/732+LmzutW4GUMoEBwGSZpE3PPvu8jR0zzsbUNdgZp5+OHsFBQrOAJmAlI9BiVVBJROlBMUiAqsUBltZsKqfSJQokCqyNFEgAYZit5gO+Zn1IEJAaEFExLriT7BCGSdyV/DgMFnDQI3E/k/6udon9xeiff/YZ23nnna2xo9l+8fNf2c47vdGaG5ts5vRX7CcX/0iLLp1s2+/wBpuzcJ7UAs1WUycDRKkiOrs67POf/7z98AffE1DM7A1veIM988KLUlnI22FMvbU2NcsuQbYHipb0xS9+0S751a+ssa3N3v72t9uCBYs8mHOVgCYighKMJZeBLxM4WMmdI2WfKJAoMHA8lkSXoVMgLs0LGAAczJ4925lAkiAMnYar705iGDBjl5hf0p5yuSpig1Cr9nvrwYe4NKiufpwdcfhRNufluTb3tddtu222tXv+fpe98MJzLkV49NEn7F3vfKu7Hs6Z85rWXmi1d7/73dahZZz3efObbermW3qsBGtqtYb6MV7Vl2ZMt8WLFzswkEjBdt99dxu/3kQHEm2SInSgoagUSujK7R90iPSg92j1USy9OVEgUWDdoUCSIAyzrZ955hlrFzPA1XH8+PEeKIklfmEYv/vd74aZe3p8ZVMAVQCst7paayPIrsDkXdDa3ObSoE6pBbAluO222223XfdQmOTMdthxe5s6dVObM+tVe+ifD9n+Bxxke+y5v4dSpu3pC0iVKmWoCEjkHHv8G9v0GyAC8GAJaI9nIDBSUS6jRlQMulYlCQZCBFNRXJRQ0CsUfar9dQ0rm0gp/0SBRIF1kgIJIAyz2b/yla/YZZdd5oM+jABJAoP/nXfeaaejW05pjaYADoYVYt7SEGkCL4YsNUCNQALMu0yGiq0t7XbXXffYn26+xdabMNHbuFx/HVInbLv1VpIEvGYLFy+y5uZm22rbba2+vlaA4hav8913321zFyxUvpJMKD/yrZb740YbhTgJN97wBy3k0Ol9ZdGiRVYqdUebpA3gCZftybgxpUSBRIFEgdVFgdUHEPJZELs+E6J+J+LhmjppOuecc+zrX/+6L/UM84jLPJ9yyin23e9+d3W169DfW0RYfqL2Zituhj5t0K99hv6iNfNO+RNo9q+4BZq1l/JfbY21yIvh0X89btN22tk6WpvsjK+eaju8cVsZLPQ4ALzkskutoaHBasTQ68pr7Jyzv+lBsno6u+3HP7nYPv3Zz7iR4j1i/JMkVaJfdHZ2WJekEq2SMNTK+PFnP/uZfepTn7IxMn685ZZbbIL2lSJ8nTwc3L7AsYF+5BiBXeFjRbBQIiCR8MOa2alSqRIFRgkFSjR4DY/3Sn9bSMzAlEKGITxthv5VCdeuwjW9MgyCJdbNQMcF6V6xAi9VdLk2zcZKyyutslpW5f5UGCfJIRpnMUDG8/ktq2XXpXKfffbZ9vjjj9thhx1mDzzwgB166KF25pln2v333z9oWNw8iO9qKbu/lEh+ABuJ2Tv1s0N7OfiJGcmDX22H2x2UZgkjWrc8NrczKZ8Yr/EJsT6MHTUA9iGkpqYmn+2TevA2ySQVkEqhWn1u/vx5tv3OO9r5F1wgN8YPWhkd1F0J1FfL1CNdLYGHgdZTULyEKkkaugQOMGGQs6QbLJaUVtqd99xv5154kVZ0vNrqRFsVwXrUyYnR2NneaTUCCp6vsuvSeUjrfVwnywtfpR6C1mSdX4vF4ZgloNaCJshLn3aJAokCaxMFVjpACKFrGcnCMOYDXQQI+tkmUW2ZZm74jBP4pQcfdIl8Ix+Kex+O9TC5ZEIJ4TyBcLnCKMvQunr2BNV54y672UFvOcBmyNL9P48/Ztdde71N23mn1VquwegBxZphlLV13j7QtF3/l+mvceECW2/ceFE0BOkhfA/3V6xlAAGJDhgYGxFAAr+xEcGglH2NFlEi1kGJ+t/LClh0xLvfY2d84wx7xzve4R4OwCOegWn7XlERPfme/pYTpIdFmTrsXYcfZn/5253yaCCWQYW9+Pwsm7zheiZNhdXK1KBVURSrBEIqFWOh00GF8lG+EfDGvb+CPwGXQvJPiADQvSkBhCJipJ+JAokCI0qBkQMIRVPJMNuJC9zk5c2nOf0Bgoew0yDZKkbUJvevMkkQkBrAlqpy9s8MzmdxSgqdL6kDa+35UT6DWjowCGyNhx1aLPce1rAsRivvd1Why37/+xvtk588XkZomSQIh9g1V18jozMFztHscmnPM5MMwGb5y7Wi9en7XHg7JSwRQVvkaleriIBSsIvgwAGVq0ILUUHzvKSFma3OxVLr0hqfMB7E4yQmgAOxK3rkMlAi4HDDDTfZhz58nH31jDPkgniiYhKgFmi3OgcQASCEZ6GLUg4QmlsaXSpRIoBQ6jYD8opwagEtACQydhQ53fCQq1I1EHG5ShIGl2zk4Zcj5O2VjIUPZkmAQFvQb0JKAKFAivQjUSBRYIQpsFIBAmUNwxyTpMDhPbBQrIR+cJ0ototLezR7LbXFYv2sbDdGYm6FlymAhJhPmLOFle9gvEHwvXSAsDIlC4jhATI1KiVl/dgnPyKDs7vtH//4u02YsF7h/LIAQlhuePWUP9APWotZtTXbetV1kuCIpprZMvt1fzvNdlEl4HlHchar9or679gu+eU1buceBf3WyaAPxkW2Xpkx0y6QKuGC73xXrosv2KabbZZLGyQzQFUgaRVqrbBSAtXrCxB8Ri81k+IkWruYf3kFUgY2JGKlsnnUUs81lR5BsaW5w+rqBCT0DCqJcqnRvP/m6rJA2l7m7+9CupF/MJHm7AO4BIaUFb6xNY74qUCJAokCazUFVgJACANoAQT4qNd7FAECEgCGwg4NlJ2apc4TLPjjo3+3Z+e/bs+9OsOeeOIJ3ZDZWC14I+zgDInZVbey57kwWGoI1oEqoTOwqlW/5/3tElXXy8d9sazZX3lllm255RbOIMp8Fr70cqEqIR5OTzDIWOXl5/1TpkyxLTfa1LaZuKEdvPveNrGkVoChzKo0w66Vtb7zQ1Why5lS1LyHWSw1WxtmsKgSkBaQ6H8ePVHHJ598sl1+6WV2/PHHK+rhye7aWIV7ou5zpq/ZfZzZRybtmeT5sO9RDOamxhZ5rtR5nosWz7Na2TYAEspKKkWzcu/+LigTLbukjiorQ67lSjO/L1A25BuPoKunHBVwW1+AEC4DD2iHlBIFEgUSBUaaAiMDEPpYqvUFCNgVeBIndKVDruvGzZtZKUDhhUWv29k/vshmdzTZnK4WyV9D2OJaVrxrbi0ABMCBGzUqmzhg58PoSNNlSPlRhnLi7ctHrq6uzg3fYD5YuHMOMbb7ui8joTKJA/8yblspl2D4JRWa6SoEcL104usp7O+7ZWh5yPZ72waS4MgyAcN9T0577SPkgamF36uzBVaMLD/84Q8dGKEaeOMb32iTJ0/2jGgvQILbJshVFYlAhcArqRggFLcpdgflZcGOoVn2BbW1Ujeoz3d2t7l6qbuThZsErMBaIlW7Ii9iD1FRFowlS0pyiwKhCPoCKQCx3NahCCBwLQDlXkhRnuBBIFr6P1EgUWDEKTB8gMAUGCYIo1PxIjvkt68258OlZlMa2XyQ1SAJKGjRMNik/RPzX7Evf/Mbil5XY5MmTbL99tvPtpy6uW2z/mbWlrXZGM3CGCp5lIEz2B70vqf4ly6vhhTq1yH7f6z/Q50BQ4FxFgDSUkqGDcPqSrCmmc2z7flZM+zOB/5h//zPY1Y1tt6Offd/2RHb7WOTRPkGiC7id8kIJAAENOtqxvy8K9SXjYFWV/X8vXFtDJj6888/b0cddZRtuummdv7550vSs6UDgcbGZvdocMYvrxz6WsFGoahybjRYqI0IgGhAnRojxy6pZsolQWiVy6SV6bcsaivKBA7UJ+j33fpOenpkkCs7BQxyu4QGOF+GcY2vGCnJhmeOAiLsXXkQVXMUSqkXIISSFJkwhhvS/4kCiQKJAiNEgeEDBAauHBxQpmJeETT0YVCNHgjc06GbsDVYoKH40+edbotbmu1NW+1k/3vsh61B+vwyDdLVMgJjeC08xyArXsrgGWZYgQL5uBkOVvH/YVgPoIWBmqWBKzT4RxrEGfeyirX64EGgI2UUS7P5ao8bH/6L/ea2m9wG4Wenn22bldTb5B4BAFWUXac4GuzLAQIPQnx894obfVmVXU3XnnvuOTvrrLPsoosusptvvtlDITOL92iJMHZk/8zgZWzK3tfQEFhAClRW0WvYuDSAEOQqogy8XrSQhYEUC53WosiMNRVj5V7ZbbV1UC3C21Jr03LOVZKUlWTI0uhJet6lTVC4t1fwCyARJRhR2hSMZ3X3Gk771dTk6bWJAokCI0CBEeNPceaMMWLcYvnaXdQejro1IDNH0zBsf334bnu1aYFtMHVj++ixH7J6MZ1xum2SwEEUbzM8oz2u0PNVGij9tzYKDlOu1rkaNo2xq3pfm7+bsgJmxggcIDjmNxte9jWDbauh3JFO0Htsm9lk6XomiaKH73aAHbznfpoAl9hNN/1B9IWpKSnEcKZ2K6Vt9edzbEQI0qWPRCpeAZP8+vcfzhHDIF6DcfdfKZPjeI782EjnnnuuqxGIXohKAQlCXD+DewAHzVJjIT0IbpAiirhxjzxQsCkAFLASMwwZTNQtEEj5PHYCdNC/dpWNvFwA4YUs1X3dek+Y39cqjDMgoE0qiEBB9V2BA78VmpKXHnZ3S6d5/B3oG4IioVoLdfIHU0oUSBRIFFjJFBgxgMDQFYevONuh7Jwrwdc7P2AgZo7dphnW8zNetmpFrttzNy1WI1Y6QSJZmK6Pg2JIOStiFPWMShjQ9RPTMXJk7xIGXQ+zrFW7h2E6UFEZlrZFF82l7WEBq6v8zs2Y9iqNUU3wZjhgr7211HCXTZ8+XV4lEJ2rsC1tYnz88scEhvzayGAEn9FH3T77/rYbcQGseA1mjq1ATBxHUMD+4osvtl9ptcRp06bZk08+ad/85jc9zz7AQtPvVnlq1NTVKMKhmLckCCzY1NXe5moAYkQc9Z732MKFC6U6kDukXsZ5p0js5KyfoGf8fgGN9pZO/w2IeWXmdDvsrW+XCkNBEIQyqquD10JQu0nNpvdQ1ve97316plJqiQr76le/5t0dyQBqiSVTAglL0iSdSRRIFFgZFBgxgLBk4XAMCy6NsBUGPThLHPgJyPPMc89apohye+0wTfCAuAdKjig0YyzrtnaVrl1owUPDoKdllqbofuUalMsxetQ5ItN1aTbbIw68qvc97kJBeVd8vzrL3yVU01NTYh2azIqFicpdtnn9JtYj0TirUhJd0dkRvcSBHT9pUz2j32wDsTAeGWoKwYf6AoJiCUJjY6NnFe/jN30Ixor9AOexF4DxM+MnkiW2Bddcc40vt0xUy4033tgXUeI5pAdRGsFCSpW4cypVYxCrfAhawJLP1HfO7NfkmdLki3DVyN2zpdVXUCosuCSfUOvuCg6gPVoVsk5AA7VBl/oo7+GdXq48vy65XHbq/g69p0X9vlLvvPSyX+seDFpb7dlnn7af/OQn9thj/5GBZD8g4H0sgQNvgJQSBRIFVgkFRgwgREYRJ1aFCZaqwbXuGHKZ3/n2ukLatje12PqlitinGRZibA/NLKYb3OpgRvmg6IZcpODFwGAZMAf/B0PBVb0PeuDecsXyLc8ekfOqLnd8HwCu4/+3dzZAelXlHX/e/d7NFwSSGCNC+IgiahGIEbF8KFimfFQ7IEPjaKlYbSktOG0HdEqnDFS0oDM4oi0gOI4WizAy6IxEPpyiCCaQMA5aHQ0fRTChgsmy2d13v/r/Peee3bub3YR9392QvPuc8O5933vvufec/7nc53+er6OBQsSRwRJzzrA8EjpJViUBjAah36fN3sT08Z/QhNFAvNTdOv6WtQWZHOTtggULXKBzTiYLaAsQvJAEhPrWrVvtoosucjMCGoO77rrL7r//fjv++ONHW0X4IoU6+fs8ZZAEfUxg5DxoFVlAWNPf3u7tdvHFF/tCSm/Smgx3f/cee+cJ79LaSpglWuzSSy+1O791h2uwjjryjXbeeedq1l+xhQsWawXHPs+qSNvJ2Ih2RExCpEtZFZe9VmSjy96j5aS3acnnCy74C7tT7cXMcMghh4jQnG6/V8IqwmTTSpPean3S055IQhCF0YGNL4FAIDBrCNRPECQ4MjlIrWQH0iQVXmXYrJ0wFHcbwu4qC7c8E5R9TnHi/GqSvZaZYXG9JII04yvEEcfQuw5pclfVtl8v0EFX92Zhtee3iEjsxt7oGj7UHRO2e779bu2WYER0LhT+i+Xd0aE2zWM1Q8XlMV/G8l/VieBOVxlHzCntGtgWPPHTMNf8dzJywL5scmAWjnkBIoDA5TcFbcGmTZtsy5YtErbv8XMef/xxF/5HH320E4G8DDfqfn5DOrguW8wGPHe5/ZgFdmgNkGaIhM7pVNjql798g51yyim2ceNGW7JkiZMSQlnZtisdOGWHFnMaltbhfWed7de9/vrr7fzzz3d/hu7ubZ4jo7dnhxIj9dsll1xi31t3j7QDA3bhRz9mn732c64YG1SfmlvblUPjeXv66Wfs2GOP9XUdqhO1CDWjHBUDgUAgEJg+ArMeJYUIhxukpEGpgT77k5ThJdrhNm2pW3GJ420t4c+G4MbkskVtyAEbqZMlPIo9fl5mOPn7ntzSG5/X1SEl92R7HcICs9GtOgDu/B7SLLdTfiCDsssPjaBXSPkDSbVMXTQ/EASoTPZd8Ip8Zqj4bLtUcoKjbEqAANx77732z0qJjBkEbQE+BhyHBPBs8Z1ZftY0cM18XbQRHGP1xUGlxe6uKp1yJxRpOC3kpGsMK1SxqbNrVEPRL5MLZC5rA7gu1+EJbVeUQ6cWWfij09/rJGbt2g/aZ667xokEpIU69GFIGoUnfvZTe/vqNco90SWNwYj9yQfer0WdUjTFr37xC/vjs99v677/AxGhDtMtXYMAwR5DpPSLgajnwZuh8YrLBAKBQOMiMGMEYfyLbDxgrkZHAyBvePe+0ktxoEje26Z9bb5qYBI+SQqRda6QOqw2SEEmFXYLjrTzciwzheIW+VZ7YpuE466lo/te7Krk47kvE7d0nVvMUv8QnGh4mnWTXtnHB6Q5GBBRINMfazpya18HA/y9rcy6NcPfXb921edJjiHUJ5acuAhhzPdbb71VKy5W3cfgk5/8pPsXZAKRNQ3eQl0rr9yIMKe4QIeQSmjne5HREHJQlWmrWbkLfCT1uDXJt6FPvg+cl9dvwF+BXAf4Pbz0khayOvDA5CQpUFYdfoQt1sJW27drXYau/Z2AcD5khXO7FrRLk7DNScrWF16weQsPEElQ7gSRhGp/j3wdnrXTTjvNfvjwo0ratFzXFVnpJFVzMfD+oJfMCjKvVfL/F967KIFAIBAIzDwC46drdVw/X4j0vcmeMHax7FfAC5MXcItelLi/4XOg97JmrXh3l4r2ofrmFam3tA7k4LB0jmePS7vTe5N3Z36HTnPrlxm9VnE/D2jXZ9xWJ467TzpebjeH6Vf+R2udD7EtPgj7bJVwjlO0d6ptrf16JfUQgOhj3DlPbelsk2CUYQEhiiAE1BQl4oe9jArycQNWHKxzUyYJmAUQ+vgAPPnkky6QN2zYYCeeeKKdddZZdsYZZ4ySA0gDbaYgmDFRZD+DfE2OOxnSM8hxfxYpwr9DoY6c1yRyNKIcEL5v4X6+b1CrjbaIvR588EH2f1u3aJXLbUqqNN9u/Mot1taZ7rnpsY12xx132H5a6AqnQ5wjly1docenYosW7+eOju1d8+3ww1bZfffdJzJSUWrnK+yaa66x55573v7wXSfZw+s3yIdiueedamtLxCzDmZx98xOU9xaNL/+M74FAIBAIzCACM6JBQFYwT3MBiQTUDAfBwsyzHZOAZm4IwIriwrOMxaRAmmIkJxENijrXuXo3y7TLJQip40UN4XDbdzGbcrs5B/w+BRJ1CCvnASICLJsAKXFSUISyjeCh7qoN3V3t8VmpwjJRZTcRHM/bXPbnCixAwsUX4ZGIJTxTC/oqza6upxCBFuLhyZGjvuHF3iQBMKS6A1Ljz5NDYB3Nr+tRyJhmP4AB9b+tojU0tYjQNrfRO9g+doTcNaufTQJqRP33wSmWKgYfSEZW47PNs//cQCcjjJkKwp+ZP1sK3xHyCPUXNMMmVfU555xjDzzwgJ177rl244032rZt2/w8rp39CzIJKK/SiEqfku9V9nHI2gSO853+8T8A7q6EGPKt0iahnzpsrzv4EHty86/s5Hcdbz/QIlznn3eOnAyXaCGuxe6kiI8Aga6d87qUN+JuW/uYV4VMAAAYG0lEQVThC6y1fZ49/ez/ckU5ejbL30CpwxWRY0qt/IUv/occHo+28z/45/aWY95mD4r8XP1Pl9szz261gw46SI+QIh+0kuaDD/3I3rHm7fJrZEEn/t+hrcJc+I1RB8bAe1JsYxMIBAKBwMwiUH8mxaI9CACfGSexIgFfOIAp6ZEfQ6zrjYzc71Gd50QLPn75J9y370v/ep29Xt4IvNp5aTNXGlveOcUxYO91U4WKKynKYrVGCcvVnNQg6yTURwlCce0R5eJ/01vebNde93k74+z36YUtb3cJx1aWDfaoioJQoOsQI1KqHoVdyuHM+1Cx557aorUNzrF7vvN9O2DFEhtULH3LfhKMyp43LK0JBQH1ar3i6X9/VQsZSXOATbxPM9tfD/faR//+72yhZsk3XHmtJ1Car/OIsJNstu6Xu22BFqaqCDRm4VURHgR1JgeZCIATJc/W2V82B2QfgUwkyFtw00032S9/+Ut76qmnXFuwZs0aV9cj9PPMH1KRtQV+gzpLfl7Lgtef16L9tM8JiJ5jSAzrK6ABADuew8Ge7fb2446z7913ry1Z/lpFROg5EvloFmHEp4Mkje63UZAmSGW/TGqeLVHbDqnQWO8B80X6f0jrNMgBEvTS0546yLPpzpt5rxIx+f8pvux0lEAgEAgEZh4BZPGcL816g1d40foHOPR65gUsIdGi/M58hvvJo98ihYLOIasfAqRfagHe02gYpHUYknNfm9QExLtXFCNf3dFtbRII+89faMPb+jUTPcE2bXjMqw6igVB5tQegvS2F/5F0qF8Craup02fXPfLo79M/BBVRJ46KhFSeoftsVkIPU0RW3edIAc7NRCETgKwlYD+EYv369XbllVfa6tWr7aGHHnICcNVVV7mmgGiFk046yRYtWuSLYGE2gChQ2HKNUROB762/uHAuPlwNYczHSY224JOXjR4SmRoYECb6D6wgGTwbOBx6f0UOBkWc2BIdgeYJcknbnXCIAHSKFLAuQ6uiF4Z1PY7xgRzsUMZFNDYF7N65siYk9fbVfnLqxzyuEAgEAns3AjNiYti7uzh16+ACmAVKwW7pZE9Kg+vekC2QyrmF0HjMCRKgkkwyEisOX2TAQ+KUZx8pT/a9dmzSslm3o6bWwjwdSppDCBxhbvNkmkCrQnjcQFVZ9eaN5fifuoWzf4RljUGAxYpYPKtnaIfP0MnuyOJTiCEcGBGG2QxAHWz1aFLyyoeZCLjqXnXxH8gzf4QsJGDdunWen2Dt2rUu4F988UU3HxynGTgfBLBraBDKKpyDcIUkUPI1OQeB6aYe1BqzUBD2uQxKawERShEQiq/JYR86BQ3Yxo2brKLFxnL7IH9uRtFYU9dJVSHt0VSMKNdCvwgAERDZXNKpc/hOKucuRVC83NunrRwqZ6FvcclAIBAIBF4JAnOaILimAPHob+EEBT4PFRwopP5FrVvd3msbfviIffRv/tq29bxkK/ZbaOsf3WDt8jbHpjIis8HFH7nQbv/ut+VmMGgnK1Xxt27/ukwO/bqibPoSEmR/PPEdq+35322xM8842+6+f52tOvIICZSqdbW/ukShWcSnr08pkSqa7YrQdMhW7rkGEL76B4ki81+L+kq2Qcw81JEDiavhEZyQA7QCCLgHH3zQV0tkgaQbbrhBsf2/sTPPPNOTGCHUP/3pT3ueAs4vz4ohBdwXklD2TcjkgH1Ze8F36nPfegkCpqpsusr/w5TbxZoLrNJYjpJAgzAEPtIOkL8AFkWirxb5EHA98IFk9Yk0thXROCPSSA2gYWqXOccr6C8mOT0bkAP6wn0hVxQnISr8ndi+3M7YBgKBQCAwmwjMcYLAyzfZyn2j9zZ+FJCGijQIRKEvlnng0R//xDZrqWBWYrr7q1+xCy/4kP37f90pZ74O+/gFF9j+ixbYFjnXKaeufeT959pln/hH+8xN19rw81vtZYW+dS1cZP/90IN2/DtX25eUAvjwVUe4MgJykMTAbA7x7q/dyey3t99nq71K+evaAM2gf/zYj+3AviZbIVX/65evsPUbHnEhhrAny/TNN99sj258zB0JyXJ4+eWX+3LdLIh08skn24UXXuge/StXrvRGoIHg2gh6tmgbEPZ5m50OswaBc3xWLSGdoiqkoNG+fLzsdLj7Xk59BkLdlSRlnX5xehNtVLvzIXwFaE+byFSvTB+tcjIY7hNBmjd/dLZfldaoTZmOukg45QQ0mS8wIUA03Jwg8wNjX1F9FnuiAU6aRAzQ0GD6gWBAypK/DXquRBem7kkcCQQCgUBg5hCY8wQBKF0wFJI6EQS90InE0Cu/RTmfv3jd9RL+milWBuzM00+3z3/uOtv89FMSWvvZT3/6hD0ir3NfblLC66p/udrO/dOzrH/rC76IDy/9qoRnm5ZQhEh0zVd6X506JG91eTgQ/PCql6qcMWknWRMRyNj+N0sDcMUVV9jSaoudoz4ffdRb7PovXO8C7tRTT7XTT32vLVu2zD71qU85ATj44IPtsssuc4EPiUB4s83aAK6LdiD7EtDpLOzxMYA0lOuWZ+wZIMwZbv4ozAuM20yRBO6RNAeF01+h20dL0iKH0lZFnuCXQTtbMBORVAqzAKs+ql+05WUt1tSkjJQsygThxHGV+vSlU/kW8OEAZwgGuhkIU5M0VmBCBIPvJ0pE16oqWVOXiFsuY6aGbPpICaEgNlECgUAgEJgNBPYC8TQb3ZrONZOqeHT6p6p4HzThh4AAkhrZ8ziojGimV5F3/xGHHqaUuE/bEW9Y6M5pLqT0cief/vLXr9TMsSvF7i9Z5mSgtUPkYuAl+TRWlctfH804F3bJyz1F+U2nsTN+7qAEXZts4UPyKSD0ckHbAheES5cutVu+druiGFo8iqFJavVTT3u3q89d5a2Z9NuOOWaUWNEwSECe3buQkwDMIYjZLIBJgO/5vLLpABw5Tt2c0IjvCG4+mRxkvwfuN2sF0qiS1f6QGcwdTiZVEOY+7rITVAlHVHTDPIU7Jk0EoZzSdMhXhfMhB4S34pOQ641iINMD/g55P/4LaBf4QChGV4/MDHbWOhwXDgQCgUBgPAKz4+G1D6HMTM6FgGQN8iYpcpMDHEQBB742BLxsxhWRAb35bfPmzW5nJ3lC34BIg0wL2JUr0jK8oMQ3kIBDDz9M4YyqoxwIVSIWtBBQVXkPBpRyt13koLtHKvbki/eqopVn4GwRffhR8J1ZbRGM5+0j7a/7HhRlMtt/eR+YlvMTZPMB1TM5mPg9108z+SSc2Vf+TZ1sbpisDaMNrPcLkr6YnnP/rPnIbcl9I/qlrBVBc0BYIyaGHN7ofhsFnvi3QGx8xUieKdYg0bMzOg6jGEMO6AQkaBIipPumuvV2NOoHAoFAIDA5AnOeIIxFMEwASC9qBND23h67+NJL0kxZL/1/u/pqO3D5Mlt56KEiCa+ztx17jH3sor9y8jAgYnDTLV+xNSecYG0HLPXM0i9LVYzQVU5faxZJYLY4oNl4Zydx8pMPSuzddxCYQnyP60DSOYxpJCAJEI1MNvad3kZLA4FAYC4hEARBo52d1Bh4fNrRKrAWQUXe6x37z7czP/A+W7rsANtfEQwbf/aE/eeddxa26Ga75as32Y6+HmXX21+2+MPsJxsftc9e9zl55MmRrXO+SEGbL6lMRsaVR6yyU959kn1b9cUTNGucS4/avtpXpvFlQ3+mBOVt6ls+07eJDyQikJ4w1wMUu6cEA6fGtETT+FOm2j/lheJAIBAIBAJ1IjDnfRAwKY/Iz8CzPus7WRVJeqQUNh7K9/31D0vYj9h5f/sRDPEyPifHAWZ/bljoaLGv3fZ19Oa242U5linVrhaZUN0+W/KaFbbp54/j1GBDvd12yze+bjdKCzGitL6k6SUbYUd7sIQ6n+HZrz6JIyCkEhNUKtgVihCYEgPwauxXwVyTCAR/9eRok0lEcZHYBAKBQCCwVyEwxzUIdD9/GBepfj2MAYKAA5o+bfq9ULH5MhO4QJCjmRcxC9ZBrEp7QFKlIXIakNBHzmwuN8gr0ErynCE3NVRIqiQTA5qDEfkidMhvoUNObFH2VQQmMy6U2MEk3cKc5SmWeTxKPg6T1UpkQudx7qTX2r02YpJqsSsQCAQCgVeMwBwnCOBUQOBv4pShz8mBvPehAMM4lWl/X7VfMepaxpeYdcWoJ292OTDO61Aq4G43JaBD7lHsurIjaYaIB7vy6ktDgDPiCHWVHc9NGHhEimD0iVRE2csRmEw6F01209SEf6MS3Z8n/qA72FmYu+Zqkv17ORrRvEAgEJhDCMx5goChIJXyjDDN2zA3VGVWGNQpnUqEg/Bv65qnCD8JeRwI5I0+2KcYfjQHvPAVDjlvkYICVX1H74AS3iSHRFYQJuKBaIhhhcS53gDzAqQiyj6OAM/N5LP8yTpGRMNkmRF3Jgv5eRyvqdj5vMnuEvsCgUAgEKgfgVkhCOMmXXqjYWv1uZT+jL3gULimX+UXZq7rmv7iB430kDG9K3ey2/o56SU9/e14ANM9001H9IMPYWy9Az2Kde+zTqXJdU0CuQCYAhL+xroL7m2oXigujdh1YtnJp0+63GaZKIZZ10GdyFkDCXMbVLjjkK/IV0/7a+13rgdi6RHIYzSG4ZjxhWNDgqUsqsrjMx7FufKLRNSUKf4Xyg/y6Bk87XkndXj2d1XyddlOcY9dVY9jgUAgEAjUiUDdToo5cQwCgxcg/yhJu5pegqxu2OK597WIj471DCuznBz1mmSvH8LUX7wAWR6XZZ6bFDLYIwHaqgx22PlbXDKVrut56hOtSH85gXtNd0tDM2nJQjO1mTUZijT6Nq9VJMCLFlkiVBFvBBIpUblS+CSIvdBncEiv/yT8+S6Lg9dtV3perk7/sohQ4l7tmW67Z+Z8roI+g7bQC3pJSOaQnCzpJUs15QeEVroihB64/wU7hmc0kyGX3NMlPVWT3HXKA0lY58P52fUrTKzjv/FnAbex4rsnnjt6eCIZGP97ymql68fXQCAQCARmAoGJb6OZuOb4a0iYkI2Qwkp1CMhmSV4E/0JlnqtKOG6zHVpJUMspFxnkWCmxVQSCgihK4kivRp+1p0x7+IRnzQMvzTwDnrj1sATqTbpVFjsuqTZUNMX3ly9Tfb9e8WLXlpd7s28lEEvn+4kjHKVtqocPw+jxfN3ylvMLyP36+fxa2z9Vv8b2T8Sj/BvhBvlSBmnr6e61bmX/M2u3Xo1NSpLEio4iD96nscLqjn4dZ4FzuaRnZBwK/jAWnxI0U+zeDXiz/7/nbhoQhwOBQGAOI1C3BgFB4ermqYrU6ZWWNH/CRt+k78yfiQhY/rqD7Lktz9j/bPmN8gy8wbZX+2zxSFpeuYVFa6AAst0P6T3JJ795cSLklp6rwOMS9aMkeL0pWdD7XDedPel2inpTXW9P708+Ertofx39cyUInEBhFpX9Ou33wvu3tt2G57fb/KZO1yC0Fuew6CSngiamHh90J2wFvNpECQQCgUAgEGgcBGZkiuKzSX3KhZ+jdurSTBOqwE1Zy+6oNx6p9QkG7EePbdCMVUvqSn0/pGhAxQC64CFDMddBte1yTDsnKuSHdW3pKHSv2E4XhwSyEO6sWLfw/e1gt2168uc2qME87JCVThCy9QMelj0mdGoaGGcHUQKBQCAQCAQaEYG6NQi7BYXAfxXMASwhzOQzKeWb7K2rjrTWe75j6x/eYOvfusaOW/EGJw8jcgjsau6QvX+MEGQm48oCfRBWbOe8lhtwayxYR6rSDKCd+Z1Gpk/anW/cfpsN7ui10088xf0QMAoxhD0CngWwwbxd3928MIEU1tiMqBYIBAKBQCCwFyJQkZNh7a95ahbVk7ZgfJJYj/lHqLAaovwOOAffgX7pAthKmW13bfih3fzN23z53A/92Vp7x9HH2mtbFhkBgP1OK6AUSZPtvgDcUh/XcvuRKLUiAMnCXPNM71b79W+ftRu/dqsNKO/DiX9wnF1+1odtoQDulPkBAtEt4MG7Q387NJCeUIodMLdQJNQ6BFEvEAgEAoG9FoEZIwj00MP8Sl31wC4JEcL6WK2O2eiQCAWpjCEJChKUe+KIfWPd3fbNB75n/VrlcIdCAln90F348F/QGgZcA+fAZnhGwQrITeCkBN33LsruHOnq4Ue7uO2MHdpd+3d3o131j9DFQQHLyoTtihKp9PTb6lVH2T988C/t4BHtI48TphuRg97kRqLz0lgUXopBDnY3AHE8EAgEAoF9FIEZJwjgkEkC83/dwIW4EwQJfCIZmhStUNWaBq1KMTigGWpVax488uIzdtt937Unnn3Kft+zXURAYXZat6CP1MW6TrPPWmWmkCAjBHGwICM+gd01R9hHh2b2mw3Bqg4P2iIlgTr0gNfY2SefZsevfLMdIOK2mLBSlp0gC6RAJjyV0sFwoDwQU6N+Efsx+42NOwQCgUAgEAjsUQTqJwil5vqMXqWsRSj7DnCMGW0+z0/Wjz7Ve1Ffd7jpIYUTdkpIEXPfrz38S8YKjnJFsgfkKxcx+X6xnUvOy7DzkdgDAskfJCWWxueAzBPKWOGhjfCuqsYmmSKSNaGjP43ugGxAaIJy/UAzEAgEAoFAoLEQqM9JEUKQZ+/6Xv65K5jKM37qkD6oS1sag8BBQHViUtCWRD6DymZIkaGiEEiFvru4CU3I945tGpJXggMUC9ONY0sFFUw47vipD1QgR4342Pi56USyU3Bs/EhwPEogEAgEAoFAIyBQH0EAgUKwZDD4mef2ZYCQLW5yKO3MRKFVXzq1H8dEBA7LJBX5Cf1afDIP8RkrP/K0Vjv4mvQKsZ0ODoItjUeJDKDd8TEUxsBM0so0JhoXVx6kEcTkM3HsORolEAgEAoFAoDEQqM/EsBsMMAyUVfzJJ2Gskgt6+SUgaIb1A295BBN2bU/iw4EijnGgYBOeijkTBE6R/8I4k8Vu2hSHJ+IvZ1DhXtUHyDMhwyGUMsAOlbaJuIs1OEdIfCGdFH8DgUAgEAgEGgaBujUIyOpcRmUFOz1aQdtiJ/KG3Xl9g7E62uukQKfqJL+e1/M96TRtmMmiKRjSRdm26HDiDClSIp0Yf6eNQGJkXi0PFwSN3Ad5zBgTfBEYgzHcp32nqBAIBAKBQCCwDyFQzA9razGCAyFSTDbTRQpywA8X4DglFv8m3oUZ6IjrsPWR4MfprUmSyUP7YBJIrKKgieAf90pEIc1g/RrFebFNYE0LB+HMPycFqo45Af8C/mP8YJDlh8RJQwnzPD6xDQQCgUAgEGgsBGZMg4DgeCUOa2Uy4QTDPeGVEQEhn+TS6MwVnuCOcfoQsw8x4CelST8QYMToT0sgco0gFAWKwqJIdOX4q1SGCj+RQgMEYWv1UFWdAFPQh3GggKP7hBS/YxMIBAKBQCDQOAjU5YPgAr7AYtQg4AI9i/HxwphzOW9sW1FgYxJIbT6PTQSA4/m6LcWl2GSSwDVaC4LAFHfsbkVjYvPKESiNVeHmMR5QWFqZIEDIGIviDkEQXjnUcWYgEAgEAvsSAnURBDqahfNOs0gOTNiZd5W3mSyUTy0L/F3un+Qe+xL4e2Vbd8e2igGZctz3yk5FowKBQCAQCASmi0DdBGG6N4zzA4FAIBAIBAKBQGDvR6AuJ8W9v3vRwkAgEAgEAoFAIBCoBYEgCLWgFnUCgUAgEAgEAoEGRyAIQoMPcHQvEAgEAoFAIBCoBYEgCLWgFnUCgUAgEAgEAoEGRyAIQoMPcHQvEAgEAoFAIBCoBYEgCLWgFnUCgUAgEAgEAoEGRyAIQoMPcHQvEAgEAoFAIBCoBYEgCLWgFnUCgUAgEAgEAoEGRyAIQoMPcHQvEAgEAoFAIBCoBYEgCLWgFnUCgUAgEAgEAoEGRyAIQoMPcHQvEAgEAoFAIBCoBYEgCLWgFnUCgUAgEAgEAoEGRyAIQoMPcHQvEAgEAoFAIBCoBYEgCLWgFnUCgUAgEAgEAoEGRyAIQoMPcHQvEAgEAoFAIBCoBYEgCLWgFnUCgUAgEAgEAoEGRyAIQoMPcHQvEAgEAoFAIBCoBYEgCLWgFnUCgUAgEAgEAoEGRyAIQoMPcHQvEAgEAoFAIBCoBYEgCLWgFnUCgUAgEAgEAoEGRyAIQoMPcHQvEAgEAoFAIBCoBYEgCLWgFnUCgUAgEAgEAoEGRyAIQoMPcHQvEAgEAoFAIBCoBYEgCLWgFnUCgUAgEAgEAoEGRyAIQoMPcHQvEAgEAoFAIBCoBYH/ByxCmZBeRFJRAAAAAElFTkSuQmCC" alt="" />
理解Storm可靠性消息的更多相关文章
- [Storm] 内部消息缓存
这篇文件翻译自 http://www.michael-noll.com/blog/2013/06/21/understanding-storm-internal-message-buffers/ 当进 ...
- 理解Storm并发
作者:Jack47 PS:如果喜欢我写的文章,欢迎关注我的微信公众账号程序员杰克,两边的文章会同步,也可以添加我的RSS订阅源. 注:本文主要内容翻译自understanding-the-parall ...
- 【转】快速理解Kafka分布式消息队列框架
from:http://blog.csdn.net/colorant/article/details/12081909 快速理解Kafka分布式消息队列框架 标签: kafkamessage que ...
- 【原】理解Storm拓扑的并行
Storm入门教程 1. Storm基础 Storm Storm主要特点 Storm基本概念 Storm调度器 Storm配置 Guaranteeing Message Processing(消息处理 ...
- 交易系统使用storm,在消息高可靠情况下,如何避免消息重复
概要:在使用storm分布式计算框架进行数据处理时,如何保证进入storm的消息的一定会被处理,且不会被重复处理.这个时候仅仅开启storm的ack机制并不能解决上述问题.那么该如何设计出一个好的方案 ...
- storm源码之理解Storm中Worker、Executor、Task关系 + 并发度详解
本文导读: 1 Worker.Executor.task详解 2 配置拓扑的并发度 3 拓扑示例 4 动态配置拓扑并发度 Worker.Executor.Task详解: Storm在集群上运行一个To ...
- 2.RabbitMQ 的可靠性消息的发送
本篇包含 1. RabbitMQ 的可靠性消息的发送 2. RabbitMQ 集群的原理与高可用架构的搭建 3. RabbitMQ 的实践经验 上篇包含 1.MQ 的本质,MQ 的作用 2.R ...
- 用实例的方式去理解storm的并发度
什么是storm的并发度 一个topology(拓扑)在storm集群上最总是以executor和task的形式运行在suppervisor管理的worker节点上.而worker进程都是运行在jvm ...
- 理解storm的ACKER机制原理
一.简介: storm中有一个很重要的特性: 保证发出的每个tuple都会被完整处理.一个tuple被完全处理的意思是: 这个tuple以及由这个tuple所产生的所有的子tuple都被成 ...
随机推荐
- java里面的package/import 和PHP里面的namespace/use 是一模一样的吗
java里面的package/import 和PHP里面的namespace/use 是一模一样的吗? java: php package mypage; namespace mypage; impo ...
- dojo入门
1.引入dojo.js dojo的发行包里有4个子目录,要引入的文件是名叫"dojo"的子目录里的dojo.js. 假设你是这样的目录结构: project | +--dojo-l ...
- [转]在ASP.NET Core使用Middleware模拟Custom Error Page功能
本文转自:http://www.cnblogs.com/maxzhang1985/p/5974429.html 阅读目录 一.使用场景 二..NET Core实现 三.源代码 回到目录 一.使用场景 ...
- [转]win7 如何升级PowerShell
本文转自:http://www.cnblogs.com/wenBlog/p/6198354.html 背景: 开发的PowerShell 脚本需要使用Invoke-RestMethod命令,发现在老的 ...
- uiautomator 1使用简介
1.生成build.xml android create uitest-project -n jar_name -t id -p projectPah 2.修改build.xml 改成默认执行 bu ...
- asp and javascript: sql server export data to csv and to xls
<%@LANGUAGE="JAVASCRIPT" CODEPAGE="65001"%> <% //塗聚文 //20131021 functio ...
- CMDB认识和需求分析
一.认识ITIL ITIL即IT基础架构库(Information Technology Infrastructure Library,信息技术基础架构库)由英国政府部门CCTA(Central ...
- Android实现双进程守护
做过android开发的人应该都知道应用会在系统资源匮乏的情况下被系统杀死!当后台的应用被系统回收之后,如何重新恢复它呢?网上对此问题有很多的讨论.这里先总结一下网上流传的各种解决方案,看看这些办法是 ...
- 在Eclipse中安装JSHint插件
离线安装 1.下载插件包 http://download.eclipsesource.com/~rsternberg/jshint-eclipse-0.9.8.20130728-0004-b94b44 ...
- SVN:验证位置时发生错误解决方案
1. 2. 3.preferencens > svn >svn接口-选择SVNKit(Pure Java)设置后,再引用svn路径后,直接弹出输入用户名和密码就对了. 4.