One thing we are observing is that organizations are actively seeking out
solutions to better manage their security data operations. Until recently, they
have been aggressively repurposing common data and observability tools. I
believe that this is a stop-gap measure because there was no alternative. But
now there is a growing ecosystem of security data operations tools to support
the modern security data stack. Ross Haleliuk's epic
article
lays this out at length.
In this article I am explaining the underlying design principles for developing
our own data pipeline engine, coming from the perspective of security teams that
are building out their detection and response architecture. These principles
emerged during design and implementation. Many times, we asked ourselves "what's
the right way of solving this problem?" We often went back to the drawing board
and started challenging existing approaches, such as what a data source is, or
what a connector should do. To our surprise, we found a coherent way to answer
these questions without having to make compromises. When things feel Just Right,
it is a good sign to have found the right solution for a particular problem.
What we are describing here are the lessons learned from studying other systems,
distilled as principles to follow for others.
eyJ2ZXJzaW9uIjoiMSIsImVuY29kaW5nIjoiYnN0cmluZyIsImNvbXByZXNzZWQiOnRydWUsImVuY29kZWQiOiJ4nOy913Yyy7IueL+fYo55LudW/enN6dFcdTAwMTd4I4zwgu5cdTAwMWVcdTAwMWE44Y1cdTAwMDBcdLPHefeOLJAwojBcdTAwMTJIMFx1MDAxN1rrn1x1MDAxMlBkZWVGfGEz4n/+66+//lx1MDAxZU371b//919/VyflYrtRXHUwMDE5XHUwMDE0x3//t3n/rTpcdTAwMTg2el34iNivh73XQdm+sj5cdTAwMWH1h//7z59iv28tv2WVe535N6vtaqfaXHUwMDFkXHLh2v9cdTAwMDde//XX/9j/XblXu9Gt2tfa7y7vhDFcIptvx3pd+7ZYU0w1JujjgsbQXHUwMDBit1x1MDAxYVUr8OlzsT2sLj8xb/1cdTAwMWRcdTAwMTmKfKOZXHUwMDBiR1wijbtm4nkw0Z7+ym2fXHUwMDFi7XZqNG3bMypcdTAwMGZ6w+FdvTgq15dXXGZHg16rmmtURnUzgY33P7477MFcbiy/Nei91urd6nC49p1ev1hujKbmPbR8hGK3Zo+xfGdcdTAwMDKvtFKWIFx1MDAxYVNcIlx1MDAxNTww51x1MDAxZp+a71OhLFx1MDAwNYtBXHUwMDA0wURcdTAwMTG2OS9Pr91cdTAwMWKYeY1cdTAwMDbF7rBfXHUwMDFjwF4sZ1cqlls1mGK38nHd/1wiRJWqYnnNePHETFtCaCpcdTAwMTjhXFxRpulyXCL1aqNWXHUwMDFm7b5mWLW3XHUwMDA2XHUwMDEzTlxi1VIvt9ZMoFx1MDAxZqrYXHUwMDE08v8tN2RQ7FRD5ivd13Z7dT27lcV6rn1QMlx1MDAxZvhWiG051Gu/UpxcdTAwMTNcdTAwMDZcdTAwMTZaYlglwjTTXHUwMDFmn1x1MDAwM1x1MDAwMbY2h2v3yq0ttDRcdTAwMWNcdTAwMTVcdTAwMDcjd6NbaXRrm1+pditcdTAwMGWftIvDkafX6TRGMI2HXqM72rzCXHUwMDFl1zVcdTAwMTj0xvVq8dNDw8iOn/XNcEvuMj/Lv/5a0pL94uPv/++/91/9eTP3fZ0wXHUwMDBiLlx1MDAxNFxuSFFqLOGvXeOxfcM5U9O2m8lvTu+4xVm5+r9Wf/+f/z5cdTAwMTLkKJVOIFx1MDAwN5PUjHO+ZJV9IJfqXHUwMDE2XHUwMDBiJJzKslhe5O9wpkS1N3lcdTAwMTUgR5WluZZCccKpROLMIKeEquotIMcxkIjAVCouXHUwMDA1YVx1MDAxNH9ccuQk0lRcdTAwMTJKl49xXHUwMDAzuctcdTAwMDS5z5iw7+t3xMJCSElcdTAwMDXCXHUwMDEyqFItXHUwMDE52PxcdTAwMDB1UI5cdTAwMTFQjlx1MDAxMlxmSFx1MDAxOX9cdTAwMGbljlx1MDAwN+Hd4/1cdTAwMTLKIeKIcoJJSlxiZ+xwlJtNR61eXHUwMDE3sendxKfGscCwyaNcdTAwMGUoVy+W66+D6r9cdTAwMDbh/lx1MDAxN66a/+1Et60o+I5wXHUwMDFh6JMqSVx1MDAxNMdAxlot9+VcYoCTXG4mKTT5XHUwMDEwoDd8+9fg2zd1QMksjlx1MDAxOGLCXHUwMDAwIyfse6M5Uuu2Z9v7aDvnZjGMgTUlXHUwMDAzXHUwMDAzhVx1MDAwM7pX7/De6Z1cdTAwMDUsQZN1NHtcdTAwMTFohIxcInI4WFx1MDAwZVxu0teUXCLD8pmsxKlUKf+WLV2FSoiZXHUwMDA11lwiUlx1MDAwMsxFkKTLUaZzXHUwMDE1y1wimFx1MDAwM01gpZlilG1M7CjEdNRcdTAwMDepxYkmYHVrgVx1MDAxNeJKXHUwMDE5slje6lx1MDAwMzKp1JaEyTApXHUwMDAx4aXEn3VCLFx1MDAwNeVCquW3b5h5MZh5t3ujzc/nLT5cdTAwMTG/c+yoXHUwMDFiXHUwMDExsCM0woRcdTAwMWVhXHUwMDAyRp7vXHUwMDAyIZ8syVqunb9cdTAwMWL06XBQuFx1MDAwNn7HYHdZmFx1MDAxOfEgtNZCrju6XGJjlsRAxVx1MDAxY8CZUCHpWVx1MDAxOJ5LmITR0lx1MDAwMFVcYsDtUsP54PXltD/MPdhCSlx1MDAwNL+Ze5fI2o5buvH17zExwZvvflxibcKQXHUwMDA23Vx1MDAxZVx1MDAxZC60a72U+yF637qLx2hLZ733pVLU/y9gYlxuTFxm4MpcdTAwMThDimkkxMbEfo+HXHSmSEt6c0v/J7Owo95NXHUwMDEwXHUwMDE4u4yDIXIwXHUwMDBiu+9Cs77LV2vnkuPnXFw7XaqmXFyxf1x1MDAwMVx1MDAwYoP5YYFCjiVcdTAwMDFViUvB5MbMfo+HlSCgl91Y+D+ZhfXmu+8srFx1MDAxMKj1mK+45Pdx8H3aN2gzXHUwMDE1ZFx1MDAxNVxcmZTzr/fZpjv/L+BgzoglKVx1MDAwN7tcdTAwMDIjoFhxOYo0XHUwMDA3XHUwMDBlMs6e5Vx1MDAwNzdcdTAwMGX+XHUwMDBm42CmXHUwMDFj9WhpvF9cXFx1MDAxY2FcdTAwMGKr575XJ4rRVEQlk49h6Z1cdTAwMDWb+io4XHUwMDE4XHRqYUqx1FgwzZfMc6W+L1x1MDAwNMo+w/gmmi+RsX/R91x1MDAwNZTh6PzCXHUwMDAwOFxu1Dm2pP59XGbfuPON01xyXHUwMDEy6Kc9L7F88sE1XHS1n66B4XcneTGhLEKx4kxcdTAwMTJcdTAwMDZyXW/M6/j8XHUwMDA3hsqIy3MleVGEtFx0f9/k+Fx1MDAwNbL7Lcfr0MU5XY5cdTAwMTfb4Vx1MDAxY9RIw78jPFx1MDAwYqlg7TmWvOu3XHUwMDFl4qO7XHUwMDA2a7hcdTAwMWJJXFy7XG6Q25lcdTAwMDJxepA7b5JcdTAwMTeowFx1MDAxY7Qwclx1MDAwM7lLXHUwMDA3uVuO167VOV2OXHUwMDE3dUQ5jVx1MDAxOOiXTFx1MDAxZu58eeokp6VBJFGovPLAa7Kq44HWyFx1MDAwMeSuJMfrYIC7kFx1MDAxYy9CNKXi5oz5XHUwMDE34tstx+uXc7wwwo5gSVxiw0Lhw7FSKnSnUqPRuHdcdTAwMWa/S8fyXHUwMDEz9dK/XHUwMDBlRzVS0tJCKlx1MDAwMWowUZIvXdEnT4p1PNd0XHUwMDEysCRKSbmapnPDyovByt0m4UWD517z+Sjs3G8975rb72iVTDn7XHUwMDA3lVx1MDAwNlx1MDAwYlx1MDAwZWF9uOn8XHUwMDFjdk3yXHUwMDEz3q9r92P8NdH2pu5ixatASthDXHUwMDBiM9hIrClhglxce0RAIKpMXCLf7Vx1MDAwNMFcdTAwMDVcIuZPRFx1MDAwNEbVyWgrw6+4+zdcdTAwMTlcdTAwMWX0XHUwMDAwUFx1MDAxNtBcbrfsY3hcdTAwMTZ9pDX8nMp4ROKlj1x1MDAxZVx1MDAxZlJ14rpcdTAwMDaG11xcWkRhijnnmNB1S1x1MDAxMmtcdTAwMTOJxZJgaXZcdTAwMDd9y5J0jFx1MDAwNXAwV1x1MDAxMSCNIFRSJLjYwulEW1xuYSBcdTAwMTLOKUdoxcB/Z3RlXFwoXHUwMDE4X2na+3OvO0o1ZrZa7qhG2Ff5i51G29ZaP962SVx1MDAxY1b4rbdKXHUwMDFi5l1Xu1Hr2jRcdTAwMDezr1x1MDAwZdb4YNQoXHUwMDE321x1MDAxZlx1MDAxN4x6/eWnZbhPXHUwMDExXHUwMDA05eDzOvVcdTAwMDaNWqNbbKe33tNI1+D7nmGLrNDDsGqLXvN8X+JXsKRcdTAwMWNcclx1MDAxOVx1MDAwNFx1MDAxOKJA7ThcXEBcdTAwMDfeep1y8TlcXIyUZ/VO2+tKtEXuXHUwMDFh+Fx1MDAxNcMlltGxpORcbiu1Qm5HcixQbJl8jWMlsSQ3Xm2phaAr1shcdTAwMTH8ylxihilcXKspc1x1MDAxMn4tTUfV4U8z7MZNz8ixXHUwMDAyOybJcVgsrehcdTAwMTFcZtvkITrDycfoW7bufmP5eFJcdTAwMTVcdTAwMTNXwbCEgXwjXHUwMDFhSI5qzfWmRr3OsCuZK5tcZkuedZWxrzGsklx1MDAxNkWaXHUwMDExMFx1MDAxYjnMQW1cdETt51gqKGyavNJiXHUwMDAzJ+HY6ps9x1x1MDAxZmbZzbuek2eRc1x1MDAwNJlcdTAwMTOhXHUwMDE4YP7hXHUwMDBlQ914ldFUilxyIzKXKaXDKvhcdTAwMTQm18C0XG5rXHUwMDBicWZcdTAwMDSsXHUwMDE0XHUwMDFj+HONZ6lcdTAwMDRcdTAwMDLilDGtXHRgXHUwMDE4Izus4F+WssLEjjG60lx1MDAxM2Nnl7JcdTAwMDN7Ia9ayGrnsj6UXG5O9Vx1MDAxMZno40Fn8jR9Qdla4e2BvplcdTAwMWE/LnFcdTAwMTX8XG5KMWJcYnjVLoezYirYXHUwMDAxUeBXrI2EZVx1MDAxNJh5h3//12UsXHUwMDAzUMGEi+tcZoaeX8aei2F/UMTylXD9plosqJE6h+ehTp9mT7OCt9DPJF25++xrsp1+6F5cdTAwMDXDUmUhXHUwMDAx0pVQhSTi61YskdLSXHUwMDFhpK9cdTAwMTaEXHQmvlx1MDAxN5A7q99Jm7R5/p+sXHUwMDEz7/A6nYtbT+50ck5cdTAwMWJfSUvZ1IdcdTAwMDHnqVx1MDAxNpxcdTAwMWPOrlx1MDAxONVcIuPkZDoqkIin4m1ccl9SXHUwMDFhX1x1MDAwM7ti4Fx1MDAxMsukoGFFjXd8o2SC0Fx1MDAxNueMailcdTAwMTHGnDnasN/OqDxRbVBOXGJCjKHrlLL/8qDQN8PeP5tcdTAwMDJ5fOj7XCJTKldZYVx1MDAxM+YwUlx1MDAxYbj+iFx1MDAxMsiPSVx1MDAxN/fKcKDColx1MDAwNVe67e6Hm7x+XHUwMDFkMEeFpSWo71xmmcAxWrcjTo9zjqrJaTLHXHUwMDExvI+YvKWOX1wizlx1MDAxMVx1MDAwMvsnNVKcXGKQr8tQjf0hszhcdTAwMTYmM4cr0C5cdJP7hrulkn8lO1I5l8CjWlx1MDAxM21cYvhg3KtcdTAwMTVcXDKTXHUwMDBi+F0v2anb18jgbGfkdFxm+GJyyU+FeZeRTI5cdTAwMTVcdTAwMTbGqFx1MDAxNLd8n0uEvMvKkNyZ1Pil4YimXHUwMDA0XHRJlSBCkM2Hk2DWXGJuXHUwMDAzPvre5M5cdTAwMGKXg2p5NFx1MDAwN4stmEm1Y4SIYcI4KCyHa4quYLpYzbKqi4/SxVHsnsaeXHUwMDA3V1E4YfdcdJzDQZMyWmToa8bwSVx1MDAwMFNcdTAwMDCfXHUwMDAxaF2XXHUwMDAz62vCfrUw3maohFOlXGI6pvxl/7GAXHUwMDFl+/mnusLRcbh19/ScRtdAuVx1MDAxOKxcbktQSYAkmJKri3KNJVx1MDAwMDCnlMBTX2lcdTAwMWXRv1xc4N9qXHUwMDAwXHUwMDFjujg/0edcdTAwMDVzMGg4pvhwmPOnXHUwMDFmM5NG9yVRJv37SKrDO6/3nauAud1Hvk5cdTAwMGZzTse+TuPKXHUwMDExVFx1MDAxM6zFXHLlLlx1MDAxMeVunpzfh73Vwn9cdTAwMWKwRzlcdTAwMDf14JiiXHUwMDAwtc5k8qZSr6Lxplx1MDAxM6ozbnhSd5GLd+ScXGLxLsSRgylSbK2Uw1xy8S5cdTAwMDfxLsuRc6tcdTAwMTNwgvp4zlx1MDAxNW05XHUwMDAzcUOPyPtltN2vXHUwMDA1M29cdTAwMTF0XHUwMDE3U8WS9Fx1MDAxNGOTwVVojTvzXHUwMDFjrq1cdTAwMDeqYoKBdXxLc7hEXGK9mcaHLs5cdMvjOfd5RuZsi+JHnPH3oofX+Cyezz835Xhab4zaxW7vOkBuZ8Tv9Ch33ixcdTAwMDdzkoxcdTAwMGIlyHWe/P2Xw9zNNv593EPOR6e10Fx1MDAxY61cdTAwMTWX3Fx1MDAxYvjQ6FH3itVJ0t1L5p91jlLAnUu3jU9cdTAwMDR5XHUwMDE3Ylx1MDAxYkuhXHUwMDE4k/qW13WRiHezjf9ttrFy9C1cdTAwMDJcdTAwMWZcdTAwMTLM5Fx1MDAxMS3Xqi9cdTAwMGbemN/XT7WjpJlcdTAwMWE10tOaq3FcdTAwMTVq4+7A8dVcdTAwMWRcdTAwMDLQXHUwMDFhXHUwMDAxXa1cdTAwMTbEvoHoxYDo7Vx1MDAxMMDBq3PCQ1x1MDAwMI4uQEZcdTAwMTUxXHUwMDA3a4+oq1xcrFSqsWH8Tlx1MDAwNfxcdTAwMGaJ+ohcdTAwMGVcdTAwMDHHr1x1MDAwMuZ2h1FOXHUwMDBmc+dcclx1MDAxY4PCXHUwMDBi08W/fqCYLydwQ7n3n5tx/PuohzTdfPvDOFaEYybQ4Vx1MDAwNzybhE6ng15cXMSz2Ne6U91U2Ve6eOP4RIh3IcaxwmDnY4J/O3B8Q7wtV1+YcXw7XHUwMDAxcCxaOrtcdTAwMTKxNjFidIyS6NG8PUhcdTAwMDUmLFx1MDAxNVx0vE7wY7kx8aevQknc7U88aa6NY/jkNHDJXHUwMDE5l1qLX1x1MDAwZlx1MDAxMt/gcsvVXHUwMDE3XHUwMDA2l7eS8n9cdTAwMWR7XFxKONrUWDFQrUD5P1xcvXyrpV9cXH1SvCuqUeYx1Fx1MDAwZvprLae8xFx1MDAwM/Bys2zd+fDybqVF4+Y3Tq1FypWxP4BwNcL13jzSNIui7Fx1MDAxNP6///mgmHeioIt3/s+X8JBLRVfI4ptcdTAwMDeidtKnc1x1MDAxYmQtQOlX6ohcIuj3d1x1MDAwZqNcdTAwMTD3y2AlXHUwMDExXHUwMDFkvUyqrUG32b9cdTAwMDbyXFytkHAp5CnAiufyJG3/Tk2eR4vrr5Mndm5fhDlcdTAwMDWxwY+oIXz3+Fxce6k3OXHFap77Urf3Uo44ha4vij4xU5dHoKZVXGIgXHUwMDA0PUWz7SumULIjqUxRXHUwMDEw8EbHOZhE++l8YFxcyeVcdTAwMWIxt79cdTAwMTWlL7GnQc5zXHIkXG5mn2U3Klx1MDAwNYNHoNWuYub7QsKnWsOmSFx1MDAwMatCz5dgcTD1UsS5lFxunaBQxMnFv1x1MDAxMoLQn6Fe6ViMXHUwMDEyg1x1MDAwZU/xMXWf3MXRi4/Got3YbDJcYpZmjIVcdTAwMWVS10C8XHUwMDE46WujXkVcdTAwMDRcdTAwMDJ0OYGT87Kp17GKqnPhXHUwMDFlU+FXgCF4eE6G96maTXqmwu1OJGKv1FdPVkvfKFj2c4RLxDql3mGtzkacYlx1MDAwYm1cdTAwMDJ+WKCkKoFcdTAwMTGhXHUwMDFhc7VJqYJSyvlJXGL1y+6lo82p5axWXG6kXHUwMDEybDFEiFJcbmtMieBrV31cdTAwMTRIXW7ke4HUlVxun2vVUdvV53NcdTAwMTRHXbndZmVUvrL3XHUwMDFmpVGx5l/iQOl4zlxcmIPmglx1MDAxZFFNo1x1MDAxNuuWXHUwMDEz/jGa+vPhO1x1MDAxYSZMPneuQnKY9llMUsYpXGJcdTAwMGbjy/o5dsTcpGNcdFx0ii6jmq1E7Vx1MDAwZedOJriSWv9606yvOX9Pwp3kZ7mT/Fx1MDAxMHdi5yrjmEibWI/gz7tk+uHe3ytVMFx1MDAxZDKdr7dcdTAwMWXHj5lr4E8sKbG4olx1MDAxMlx1MDAxMaQkUMh6bPvMXGaKLCkpNd19TO+c5Z1cdTAwMGVnUHhCXHUwMDAy3KF+u5zdLzIo/VlcdTAwMDalP8SghDpXo1JIKMRcdTAwMGWPXHUwMDBitFkmU3hcdTAwMWV3XW362HQ9Z1x1MDAxZjrN8d01sKcgwFwiQlx1MDAxYi+SXHUwMDAww4pu9MZcIuZjqlx1MDAwMLBcdTAwMTRmkjO+MbFcdTAwMTPyKsOW0Fxca41cdTAwMTnnSH6FVymHXHSvdSH8XHUwMDA1VfdY4+u0vMp+llfZT/Gqc3No02BJYHFcdTAwMDSzdlx1MDAwM7VWaFx1MDAxNOyPPPeyMmi5XHUwMDFlO9W765ClXGZcdTAwMDFdKFx1MDAwMrJUXHUwMDEwplx1MDAxON/kVsws4Fx1MDAxZqm0ZJhcdTAwMGImNmZ2Qm6lwjK5eZpTTLakxe5cdTAwMTerTClcdTAwMGWY8qt9sX6ZV/nP8io/Ma/uqGThWMueYDCUKCFHOOTDPM9ytWn2sfrQePa/pkPNaNepsfPlZHRcdTAwMDI9WKD6aiqVXCJY0HWzVIFiXG46MVx1MDAxMKBkXHUwMDA0hJ1z+zpk/+xOTypXK6xS/MykiltcdTAwMWFcdTAwMDNcdTAwMGUoXHUwMDEwqlx1MDAxY4yNLd11XHUwMDE4sTTnUplOelx1MDAxMlB0JbX0vToppkDTv6r+fp1N/+XJSevJRJtbue/bglmg9lx0KSTTXHUwMDAyTFxmtms0JPZccudIbebHYKRcdTAwMDS5XHUwMDA06plWXG5cdTAwMDHwf2t22ELCSFx1MDAwZoyoXHUwMDAwmchcdTAwMTE1XeuPWq7T1bTgjmdcdTAwMTONSk1cYmdHVLBcdTAwMWY8t1x1MDAwNnfTRCP/6MrE7lx1MDAxMpmOR1x1MDAwNFx1MDAxZi5cdTAwMWXtXHUwMDA0KFx1MDAxZVKC8q6oQlxiy/VmYr+DdttcdTAwMGXrXHUwMDEwy5h1UoNcdTAwMTBcdTAwMTJ6tWnoXHUwMDAy7MyXOTtFRPJcdTAwMDZ2p1x1MDAwNjusLYGoMVx1MDAwZpVpNKnZ+lx0QNBikKEwzJjCeC9a3WFLgXhGyFx1MDAxOL/GbYzWM883KGUv+DFcdTAwMGJRXHT0QyhCXHUwMDFjbULp6liU782kVNRcdTAwMTKgOijBTTRUL3Vke1x1MDAxZCytpNTK9ClEQlx1MDAwMD7+XHUwMDBl7mHpmHahYOaSM3Z44DoxjTfHdDJ8euq+euid7tQzgfHFw1x1MDAxZbPFXHUwMDFhyCeFKUZcdTAwMWFdq5KHXHUwMDE5VbBfmNyA71x1MDAwMoHvs+60S7Par6jdtMaf01x1MDAxYYuGQrZnTzjayMaNo1x1MDAwNMikw+HzqVx1MDAxZOo8u1x1MDAwM6nhS6xcdTAwMWZcZlbro/HUXHUwMDFkunj4pKA1XCJcdTAwMDUrXHUwMDAx5iWoymLdm6Ukgf1cdTAwMDLaQKbJO1jRjvBZRVx1MDAxNMbaXHKfVV0tV5+3OLLATofFppyaXvJcblx1MDAxNv4zfn5O/kFcXGgtsDxL8s87XHUwMDBi/lDyz39cbow67/TG17/J2MIxqoSJYIA/Wlx1MDAxY+6qTnVdfe1Jj93TUbnQf5v5aehcbvRcIlB2LKO9UokpsDC9XHUwMDFhxrajT0icIFx1MDAxOePG1lfJ1k7xJ8FcdTAwMWSNXHUwMDFkbnzaRFx1MDAxZlGcuVosP2cmMobGb1x1MDAwMVx1MDAwZnfVujXxXHUwMDFhvnimprDQ1O7bLFx1MDAxObC03vDxXHUwMDAwy1x1MDAwYlwiwVx1MDAxYVwiXGZ+ceekju8wNZHIXHUwMDAyvU5RRpFcdTAwMTJ0W90pXCIsxSRcdTAwMTUmMGWKbeAl03xcdTAwMTS2XHUwMDA3s5kyflxu6f3LoSdHy2Bf6KnR6bdcdTAwMWKw9391q6Nxb9D6q9zrdqvlkaH2tYs/ok5leKjqYI03Tlx1MDAxM5Y6aCpcdTAwMDdcdTAwMDasdvK2syfD+Vx1MDAwMImWyCzwXHUwMDExXHL1PN1UpD9cdTAwMWW6Wp7YS2qCsiqDx8GLZ247nlx1MDAwYvCpuVwiXGIvY+3zr1x1MDAxM2KBVKRamLAy33GY/tdcdTAwMWRcdTAwMTnGXHUwMDA1rYU+xYmomyPj1KL65ni4gHBcdTAwMTXc39E+wUpcIqyPKKU5SrJ0r1H3h/qxWrLYaFdcdTAwMWZKT07njS9cdTAwMDfsQHewJDaFUsBcdTAwMTgjeONcdTAwMDTHL8HdttohXHUwMDFiQVxi9Kl2iFE9MVx1MDAxNr/bbPmGd7eI1VVErIhzeU1sgIAzdkRcdTAwMTbhkLqLrdZDkbejd/X7UZTE/Vx1MDAxNafSSZeDfVx1MDAwNMBccraWgVx1MDAxMYVBUaLr2fjXpOqZXHUwMDA0QiZuMauLhL5bzOp6VUdH17YkjoU6sVx1MDAwMkBcdTAwMDFb+YjSc6N7mS54XHUwMDFlo63YLJsqhjKyc0eKXHUwMDE3j5+ghFlcXGmQmJxotO5cdTAwMDPDgKuWNFx1MDAxNUtNO1x1MDAxY8zP49jW2KKEXGJccoY6o1xcrrTKcPZrU8kp7FxyO0uphZtj+yxcdTAwMTDquM9cdTAwMWLfPoinXHUwMDFk/drMWSVcdTAwMTJA4OJcdTAwMTiNqIWLiVx1MDAxOfOhXHUwMDA31syONO1PO0i5L56jKVx1MDAwMY5cdTAwMDa4VlRcdTAwMTKs2Fx1MDAwNk9rqS3GkTBcdTAwMDeLsNQrlHpav7awmGKgjVNcdTAwMTBcdTAwMWV0ZVx1MDAwZUf4tUFcdTAwMTYppiU7QfTqstzaK1x1MDAwN2n3uLWrk4txa1x1MDAxZjSVM7u1XHUwMDFkXHUwMDBmIJvTuFipI85cdTAwMWZcdTAwMGZ5UPKgb1x1MDAxMuO+UHRQarRbSVa4eN7eXHUwMDFkiL4ma0dcdTAwMGJcdTAwMDUwRH+1TsBNVN+sk1+3TnY4tp1cdTAwMGJcdTAwMTJJzqiUx1QqLKTvaWnUXHUwMDBm91x1MDAxZVwioUDuKcNwqtW+eLxcdTAwMTOgrVx1MDAxMFx1MDAwNHDGMdFitW/CtXm2KegxSrNfbSl6w7ubY/s6XHUwMDFj29jZMSMl/P+YXHUwMDEzaKXZ032f3nuiL+F8bVCpelx1MDAwNNaBi0c+rqlFtMJGy1x1MDAwM9tIrlx1MDAxZsW4Jk3PnJpcdTAwMTfwONeZnfQvR76bX/tfqDlS7JiyTVx1MDAxNYgyJo6Az1b5xdd5ybzmW6l8qNVcdTAwMTiG1Vx1MDAxYpNcdTAwMGXweVlcdTAwMWRVpFx1MDAwNkGsJSiOICFcdTAwMTlj66FBalf8wJhcdTAwMTDQLTnAw7eKizi2VMFcYiZcdTAwMDHCWyBQLoBo6Fx1MDAxNu2RI0tTk1x1MDAwMopAsIHw+1RcXFx1MDAwNIjU0OnvN6Ba7sRcckLff1xit1x1MDAxOKhKhuUliGuk15XH9U/3dsi7o1x1MDAxNph1XHUwMDEyXHUwMDAzzphOXHRcdTAwMWNh06V4dcRP1LJvSOOLRUB+XHUwMDFjY4BcdTAwMDZF5LdG+0TQatfjYvqt2f1STyrqnFx1MDAxZE+EXHUwMDAybUuSw6NcYpMn0Vx1MDAxZEWek81wlz9Ph2Wfp1x1MDAxMLz4s2xcdTAwMDQxYXHBTGJcdTAwMDVWJji4XHUwMDA2nmCTW8xcdTAwMWOxlWBcdTAwMGUjypVzXHUwMDE44Vx1MDAxMPB00j9PXHUwMDAynlx1MDAwNCGNXHUwMDA1mDW/3Zb5hp5brr6h579cdTAwMTA9nbs+XHUwMDBirU1p/MOPXHUwMDFmKFLw91x1MDAxYlHlKrWigWI+llx1MDAxZXRE9crR88Sq51nRXHUwMDEz8ItIrU/RNOhcdTAwMDaeN/C8gec+8Nxx3JoyLfhabfW9lUFHcTWMlrIpXHUwMDFl6+XqPpZuXHUwMDBme9krR09418JcdTAwMWMkiVx1MDAxNFrZsaHLRU9cdTAwMDKKMsOrddFv6HlDz1x1MDAxYnqeK6NXSefahaBtXHSuyFx1MDAxMc1RWdL/wmnz8dX7MvLOeKhcdTAwMWLLXHUwMDE2L/9EhNLUksLUS8aaK7HRQIRcbmJcdTAwMTFYJlxuxjtgJ6Hf0z1cdTAwMWSrVUhpYVOAiyhcbrNgcksvkU9ZvVx1MDAwNFx0XHUwMDAx1oE6T1x1MDAwM9XvpfXeUNRcdFZcdTAwMWN3euPr3+NsjKWjYsQlXHUwMDAwlzymYjqKPWZcdTAwMWaa1adIrPyWXHUwMDE4h1x1MDAxZuOjdKJx8ZytsbZcYkVKXHUwMDFhjUJLtn7O86c4myGLa4mAUblGXHUwMDFjb+lrgIm0TJMuXHSfck7Rat32906fRCqNxK9WJr2x9CGy+e7zbu6FXHUwMDA0J1x1MDAxMtk73vcwQkvHjDmNpOl9fITpxJ8zoYHnYdRMu59cdTAwMWXDqEpcdTAwMWWK+PKF/36IkKC0XHUwMDExbqrUrfaLOS1CUItgzEBcdTAwMDXBxmDdYjhhk/2vMFx1MDAwNfVEmfLK7HPaXGJhitBcdTAwMGLoI3ZcdTAwMDOIPVd/3sv9+OBAIPuGO1xiXHUwMDFldnanldy5iZlcdTAwMDCzzT4xczBG1MezZn5UrGCPLPSfntPkPlx1MDAxN2o5YMRcdTAwMDav/15KLdVcdTAwMTZcdTAwMDJwRmBcdTAwMGIxheRcdTAwMDZCnNY1XUGl5+dt54NcdTAwMDTMXHUwMDAxTEaiqaJcdTAwMDRz/iXXtFSEXGJ2ds/0XHUwMDA3/f3PXG6Zbj+JtkJcdTAwMWLpgDfQnGVcdTAwMWXjYX/bVShNyjnX0/PfXHUwMDFm1/2fd1o+IfzsZFx1MDAwYse2t8xRr9ZIXHUwMDAzXHUwMDA0XHUwMDEzfPhcdTAwMTnY7Vx1MDAwZn3pQlMw4/xg0lx1MDAxODDCXHUwMDEw/TpLMG1xWCVAXHUwMDA3ijHWZ1xudVNcdTAwMGKks8Qm6VaBTqS26NWfXHUwMDFjVp84gjOJXHUwMDE4Ib+aZf51qbl6ZFx1MDAwZVlUUipcdFwi5qSQWvFcdTAwMWbsOTK30krnuINxnUalsio01s/G7cP6zeNyK9M47FCc+o5Qc2wmXHUwMDA2ZjEx0vSIiGteueNcdTAwMDU1vkPdbEmEnlx1MDAwYndcboeily7UXHUwMDA0s7gw5KKEaVq1XvDtxEJN66p+JluEmrJcdTAwMTCmJrWemYbvX0r0k1Qqjs5vXHUwMDE2f02msU6yiVxursazSpamI9nm8jWRvkiZ5py/hZDgXHUwMDEyUP5whtj+1Fx1MDAxNy/UJLYwKNdYKU2RWCmr8INCjVlcbimtXHUwMDExyFaOudjaWW+vUGMg1Vx1MDAxNIxxnSlcYidcdTAwMTFq7jNcdLU9WL8p1Nw/KdR2XHUwMDA0wjnYaZygI1x1MDAxNNOn+2zJXahcdTAwMTdVNZ8oNYvt6iz3Nrt0oaaRhagplmFYXGLrs1xuNUdLTVpcdTAwMDBcdTAwMTNSMaBcXIwoX8miPFxcrFx0zWD6+PxV/b4m1rw424lcdTAwMGVcdTAwMDadUnRCKnet9ks+NylcXKRYc4xucs2ASsRcdTAwMTFcdTAwMWOx/aEvXqppaZl+XCLwm4GOpX9Fqp3CVJNcYsbgv1rb5F9qqO2B+t801FZ9i5tcdTAwMDezjGNOsSNcdTAwMThYq9jQNyq+1dyzmEjeP6QjXHUwMDBmncGFizRgXGKLacNcdTAwMTaaXG5Mfsf3eFxuiaaklJyQS3U+XHUwMDAyiTexO3nP32pJv0b3T8N8eHSBXHUwMDEybXWPP3VWxkAuUqHDo/rbn/rSRZokxOJKYWWMJFwiOVtniutcdTAwMTFpXHUwMDFjvsaROkW3mZtMW5dpe7D+N2WaJjtS7ihcdTAwMTgu9IgqNc1CMuNcdTAwMWa24qFYqZGbPVx1MDAxNqORgKCXLtOY6eFi3H5a0tVU3zPItOdymVS2nDI+iUzDyqRTi5O0izqHUHub3uXrbV80RzLd17xr0Hnp1OpcdTAwMTco1CR29D6aMoewUUdoedtcdTAwMWb64mVcdTAwMWFTlqnUQlxiSDcpfymghk1WMlLAoISupDtcdTAwMWYh0lx1MDAxOMhlvVZn6z9OpHnOJNL2QP2mSPOcVqQ5n78hjodcdTAwMTc5tlx1MDAxYlx1MDAxZeojikwmtX9S6Fx1MDAwNlKuUXP6SmvTSHXKXHUwMDFjmPeyamfAs1pSXHUwMDE4aVx1MDAwMWbpZ1x1MDAwZb6i2lx1MDAxOVxcXCKh6bWy8L88kex2XHUwMDA0Z8fjXvRcdTAwMTFcdTAwMWMnXHUwMDAwZcLZxVx1MDAwNU9F5TE+6jZccuQ8RU8rQp4qvtH9a29USKJcdTAwMGI3XHUwMDA3XHUwMDA0Nlx1MDAxNfZAzFwiqaRcXI1RnSFJn5bKulLaYlx1MDAwZjgqNjtq6pvEidP0gL5cdTAwMDHl2YHyPLzrXFw3jFF8XHUwMDFj7/pcdTAwMWZrTelcdTAwMWJGalx1MDAwMVx1MDAxY+WBNC/MsJ9fvuFcIlx1MDAwMFIp4lxuoNr0U/tccuZ1Vml2dXBcdTAwMTf2mehf7Vx1MDAxZXTjXlx1MDAwN+513NGNb1x1MDAxZsS9uyNMzi1tjMXNVjuJ7rVeMsX6aDKRXCLAYvFcdTAwMTJlnXQuX7pw6aslsrBgpmQqXHUwMDAyklx1MDAxNOvNL64nXHUwMDExXHUwMDEwU1x1MDAwZcpcdTAwMDMg/tnNllx1MDAwZuo7ylx1MDAxN5d6y08r4fu4r+tqP98/pyV9mOUv0Fx1MDAxNyeQ83lcdTAwMGZcdTAwMGUrj1xiWiGqfVx1MDAxY7H9qS9dpmkwXHUwMDEzQK4xXHIkpyiVXHUwMDFidTCvKFx1MDAxM1BRXHUwMDA0XHUwMDBmoW6ZgFx1MDAxZm+dzFx1MDAxZLdcdTAwMDfsfzNcdTAwMTPQXHUwMDA0glx1MDAxZJlcdTAwMTiUNLpeXXqvUVx1MDAxOVx1MDAxYrmDuNhcYlx1MDAxNZ5cdTAwMWGFe9ZcdTAwMWW8NnH50sVcdTAwMWFcdTAwMTNcdTAwMTZYZ1hcdTAwMTCT9ST4eiogwchcIsJEbrTxKeDNiV3SmS2GXHUwMDExUVxunaJz2znkWozmdLLi9aY9jaioNyPozj1sXqBcXNPOclxyJFx1MDAxYWOIXHUwMDFkk+G+/akvXq5xXG7mXHUwMDE40szUyDfetHWmIMTS8GPqSFx1MDAwMcmuxtwuLnNcdTAwMDIzSpjg1+l5uejEiT1g/5uJXHUwMDEzILpcdTAwMWNdpVgpRqiS4vDkJ+6qz4q1h/CsWsfjXHUwMDE2c/kjwcmln0XWkoKlXHUwMDA01M9cdTAwMDGu9Go9glx1MDAxZlx1MDAxNGsnSZ0gVCCm6fndL19cdTAwMTNrvjdvuZps+1x1MDAwYsGwP1x1MDAxMcpOXHUwMDFmXp6q5Vx1MDAwYlx1MDAxNGtcbu/oeYVcdTAwMTlcdTAwMTjs9IhcdTAwMTJcdTAwMWXbn/rixZpCXHUwMDE2Nk1cdTAwMWHMsS0kybpcdTAwMGLjmsRcdTAwMWHBjCBcdP+7ZVx1MDAwNL6/dTLBtlx1MDAwN+5/VbDtaNTJTVx1MDAxM17G9OHm2iNcdTAwMGI1XHUwMDA0uU/Ga65wJ+Gb1lo5r1NJgVx1MDAwYpFrxqdkcXhUrLEw9s5uufa9KjxnlWuEXHUwMDAzXHUwMDFjmcKJlynWqvFRn9Zj9dlrs91MXHUwMDEw0kTZykVaa8TZgVx1MDAwMVhcdTAwMGWqzWqB7X1cdTAwMWOx/akvXFysXHUwMDAxT0hLMEk4RVx1MDAxOGEp10Nrm2KNfY8pzpvnjkEvZ/h2duvjrZNJtT1g/8vmmnNreWqarWskXHUwMDBmXHUwMDBmrj1ST+r5sTJcdTAwMGW+TMPJcOm5q1x1MDAwMrXpZYu1PcG1XHUwMDEz1+U+a6q7XCLSVMY9f0uYr8m1t+L9jHhcdTAwMDd341x1MDAwNFx1MDAxZD1mZ7Ggm0w8XHUwMDE3KNeUs1xcU4hcdTAwMTgqOcKBsf2hL1xcrFx1MDAwMU9Iy27FrFx1MDAxMFx1MDAxN5KsO+aZNLXs4Fx1MDAxM05MiVx1MDAxYa2+xVx1MDAxMWfNdMeYMlx1MDAwNcL5SrskXXSq+1x1MDAxZaw/c6r7bqlGpeNhXHUwMDE1oTTAOD+i1Vmu+9Rtpp5mPVx1MDAxY31AqbeAp0n9d5fOwoxcdTAwMGKLS9NpQiNhNMONgumYWZQhQ09cdTAwMThJqp29kFx1MDAwN3TaXHUwMDFkXHKK3WG/OFx1MDAwMILawscwXHUwMDExgFx1MDAxM9NCVFx1MDAxMyVcdTAwMTja0m5cdTAwMTcw1Vx1MDAwMovRXHUwMDFjszS+IbRyzUfLXHR4XHUwMDAyjdSFelwisayHXHUwMDFlM/KpN/X0U4nWvfe+ek9XRNt/b1x1MDAxZnbRXGYq8MJDb1wi4JPFQJdlsLfzotLrd1kvXHUwMDEyfOC4s5BcdTAwMWXkXlx1MDAwMzJLQoN2roSjgXGzfti4+0Uxl4qu7MaZRLFcdTAwMTG2ToxMXHUwMDA00DU/pvjx9l26dEZW2lx1MDAxMmBNm/bApvC03ky9lsBejFx1MDAxMlx1MDAxMNTYXHUwMDFjbTlcdTAwMWIja2SBnauV7eQxyS5b5DFcdTAwMDUtXHUwMDE2tlx1MDAwNcO2aJBT+HNcdTAwMDFk05JYq98tXHUwMDExcjTtblx1MDAxM8hYWVx1MDAwMKKIglwiTkxtu5VcdTAwMTP9e1x1MDAwNHK8X1x1MDAxZFx1MDAxNEe9wfBMgnmPvNpcdTAwMTTMW6azKaBcdTAwMTWXmH38V62Q0FJcXIvviGvqXHUwMDE4IJGcgqVzTHxklJRD0ktcdTAwMTbrXHUwMDExdz4+Rlxc9zLli9e4QcG1sNKgUVx1MDAwM31qtqFxX5u0Vkbphv/8Ulx1MDAxZJE5XHUwMDFkvHafaDhela7eQyRcdTAwMWNkXHUwMDE5Xlx1MDAxY1x1MDAwNHonXHUwMDEwq6/5Vluhx0HFXHUwMDE1caunxIvWjW7uW+Pu0y5mXHUwMDBmbjRsvjR8akpw2Fx1MDAxN5lcdTAwMTRcdTAwMTLyuFx1MDAwMpU/JK2JwE58PKdryo8wnbc/9qUzssKGVYXUyJxcdTAwMTRfrVx1MDAxYjLnZP1DnCyIXHUwMDA1KjPSTJjIXHUwMDE0wVtcdTAwMGVLXHUwMDFkIK5NXHUwMDEzZGlq1v/nimt/b9Apjr4qq0e9vqOg3iOpNlx1MDAwNfXmRH5aSoNQcOJuWFhcdTAwMTN5OFwi6dyd8dZcdTAwMTLBcPC5UPMgWUWtbDrnlNhzMcyNsWWSPLk5L29cXMVko1DfwWL6XHUwMDAwx9hcdTAwMGaIaVDjXHTS5FIro9w9pUPyld2peJ5Oht12XHUwMDA0vbYnlyj2KHX0NikqOIb/XHUwMDFkXHUwMDFlQtn+1Fx1MDAxN85cdTAwMTgmkVsjXHUwMDEz9lfGQck3nU2HXG697/KFXHUwMDEylkDCZFx1MDAxOTHjd/2i0FOmkFx1MDAxZsO/6jT+ZaHn6XW7IFxmeoNzyL092P/Jc/x5LqdcdTAwMTd9jsyNsePZQ8y01FxckyNa9NFcYnaNnpuVfD/6XHUwMDFj4mTg73XbT5fO3UCOXHUwMDE2x1x1MDAxMlRaYnffJOtZXHUwMDBl1Fx1MDAxNGxcdTAwMDC+p3Z4XHUwMDE0xI1ziPS7Si1VXHUwMDE2h1mYMlx1MDAxOObQ50r596XYXHUwMDEzXHUwMDE25VhcdTAwMTnNlcC1cOVnpVx1MDAxNjicXHUwMDEwcn5n8tn5m1rIQcTvO3A1XHUwMDFkVZ38T+3q8+hrnL02/U+Hq9ZveVhcdTAwMTBcYu9kWseeeWxHr1x1MDAwNFNcdTAwMDVcYmmFj6h4tNuVcFx1MDAxNNeSjffPyLWmXHUwMDFmmaRcZthTUMnIpk9JgKxcdTAwMDQ5KDlcdTAwMDOmRXDR2bhcdTAwMTZcdTAwMDNPmiAoNtFcXLBcdTAwMTLUlmOSYDVTXHUwMDA1cttUVtTAXCKaVe9Wc+PfW1x1MDAwMUlcbsL5d7smXHUwMDAw67KVjO6vXHUwMDE3XHUwMDA0WOnmW53fei5cdTAwMWafVbszVoOqvH+LZrO5aKNf6mVWNGRg7vKrmaWppFx1MDAwZoRAXHUwMDA11ZwpXG6rw1b61P5dK/bNrFx1MDAxN28sO1x1MDAwNK/VXHUwMDFlcJpEyttqJkveXHUwMDA3T73diFx1MDAwNFx1MDAwMq+Bwsswsm1cdTAwMTJ3q7PgiCAu9Vx1MDAwMZM4cZlcdTAwMDOgwMaG6XrahsCONGx/upV6l2P+1+rvL6DZXHUwMDBlv1x1MDAxYchkXHUwMDEwXHUwMDAx6lxi03u3XHUwMDAz8zrRjCFuaYw4qFx1MDAwNpJcdTAwMTJGNyf2s2D2uZBcdEycMcnOX/jgN3GLJsh9ojhrXHUwMDE2q1x1MDAxOemfPOhcdTAwMDFcdTAwMWalovtwXHUwMDBiXHUwMDEwgyiyjCZ+XHUwMDE3t4K+mb85I2jS7sXa91GKnt0rXHUwMDFkzXbg1qGz+Fx1MDAwMnBtXHUwMDAxp5/rZL5cdTAwMTO4TlqmXHUwMDA1I+zc3YaaXHUwMDFlfmL11Mzeulx1MDAxNDsl0IXaSkQgsD9cYlx1MDAwMJTGtl6+XHUwMDExruemV7E0R75cdTAwMThooXrHMYlcdTAwMDOAyjl5XHUwMDBlMUtwbFx1MDAxZsZcdTAwMDCrWKClXHK7dIQsXHUwMDEx9L1WXHUwMDFhXHUwMDAzXHUwMDA1QtDzXHUwMDE3lfwguqP8gUFvdlp8e37w4UBSP2BcdTAwMTdcdTAwMWIlXHUwMDFmk1x1MDAwN0ftzlx1MDAxNFxy/EbyzjvDndBI3Mm7zi5cdTAwMGXpmFx1MDAwMy5AnTvOf7l9ly6dazVYoFxmYWpcInbGLb5cdTAwMTG148pCXHUwMDEyS1xmarZcdTAwMDZcdTAwMTDF58uyYcRSUmCNTFx1MDAxYnkmlNxmK+13cWiTKFxuht31uzC/7OJ4KFx1MDAwZYbVL/sv9+TY7JFNm76PzbmcwvmxR1x1MDAxNFx1MDAxM8dgXHUwMDFkllxiKFxcIXW4ybBbqbpUpt4jioHnQVx1MDAwMGupNNVgO38rXHUwMDE0f2JJrFx1MDAxOVx1MDAwMqpHl1onzeeKXHUwMDE2RLvOcL8xjr72xs9tz1prud2S+OT5M/+edFesXHUwMDFkXHUwMDE1aFx0YoFgeUSlw+27dOlMq5FcdTAwMDUrrpXiJq7NN0pcdTAwMWRqaVFsXHUwMDA0gXF5XHUwMDEwdL70XHUwMDE5Ri2GjVx1MDAwNOWKa/pFKYwwXHUwMDEylGL6myVwfltcblx1MDAwZlx1MDAxYeuS9qRieI9cXPokhjcn81x1MDAxM3LYufaHMFx1MDAxZVx1MDAxOeDow+Xwbs/whbI0lZZcdTAwMTZScoW1yZlcdTAwMTFcdTAwMWKVXHUwMDFhXHUwMDBmt4i/dZzsS3KYwYzRWtLiRcnhdJiXY3U1eynK9OtdWsRcdTAwMTNvxcdcdTAwMWawiC9HXirn08ugQXFzpP3w4Pz25bxw7lx1MDAxMspcIlJrRs3RZbxavftIy/W7uTeMWYiY8uGmlqlcXK37dlRsXnBNONH/wVwiM9IrVs4mMfdIkE2JuTmXn1x1MDAxMJjO7aBcdTAwMTlcYlx0QVx1MDAwZteAd1x1MDAwNyQulKH3iMuDrdafl5ZcdTAwMDZ9mFx1MDAwNEPlQs3Wbj6c9WpcdTAwMTdRvqeHXHUwMDFjbup0bkj8P2C2Xoy4JDvqhlx1MDAwM2MxckxXy+2reeHMJYllMNl0u1x1MDAwMFx1MDAxNqJs0yV0qHn5XWFJhVx1MDAwNTJOXHUwMDBiYVo7maj2l1xmTIokQz9Rn/FyhWWq+HY2WblHfGzKyo2pnDfBjTl39MN27WCkjihHtzuKdaEpIaAqgpBSoDFQZViJbkjKtVx1MDAwNDdcIs/nKzIuK0Bcclx1MDAwNdyq7TrVn3n5c0aIuVx1MDAxMslcdTAwMWaoaLAvI0SsUuyJM0JcdTAwMGVOXCLbyMXAWi3L5v71zYyQN1x1MDAxMqVVV1x1MDAwZVx1MDAxN9ydpMxnko2Mb/CwbVx1MDAxMsSCPeGmXHUwMDFkg+BcdTAwMDC6gsrPU0BcdTAwMTZbU4z0pzldWWKbI/FufPu/Vn9/XHUwMDAxr3bUwFWYc81cdTAwMTU/XHUwMDFjr3b7+q9cdTAwMTOvfi6FTZtKneYsjlx1MDAwNitDXHUwMDBitUW5/4RXXHUwMDA0MZDN+rfPxJxcdTAwMTeuXHUwMDBlzlx1MDAxZNuSOraSVvVDcHVHLK41rIhGoMgyzJZuyuVcdTAwMWNAsZJcdTAwMDK2mFx1MDAxM4pcdTAwMTnjVH2a1JXlszlcdTAwMTLvxrdcdTAwMGbCq1x1MDAxZJbSjtqmpttcdTAwMTAlR2TcXHUwMDE2gpVcdTAwMThJJNTLYzvo7txFXCL+Uf7i3fbS9KGQQnJOXHUwMDExsFx1MDAxZVo/01x1MDAwNyhlgeFcdTAwMDFcdTAwMDRotoGvnLQ7+ZlcdTAwMWZmqulLadqbXHUwMDE531x1MDAwMt6iXn061PdcdTAwMTm+NFx1MDAxNVxiid9Wt37zTF/oT/xnT/ys3fArR/a4XT13+fPVI3zKOX1cdTAwMWXwkyt1eIxgNzpfKCszhC1BzVlvXCJAirON7LafO7/HmMWk0JRoXHUwMDA2XHUwMDEyXHUwMDBibvqZlfd7PVxiMkXtiPytqNycXHUwMDEw7qdBOWy3a1x1MDAxMVx1MDAxZp5cdTAwMTYrtIX8b+P7300o3TnuZaXHbEW2TSdcdTAwMTBfu2pcdTAwMDey+d7sXHUwMDFk+1Fw27znYe5cdTAwMWV0XHUwMDFhRCNsh/dcdTAwMDdcdTAwMGJcbvbUXHUwMDExWVx1MDAwNeX7XsetmulxJpDk/vxj9zWXvviOXCJgIVmg9nIqpNKgk60kRn3oJ6aLnsRcYiupd3RcdTAwMTT59okgqixjzUk7WVx1MDAwMHB2W1x1MDAxN8i9XG5cbsZUSsbx9WfsfllBMVmyYFx1MDAxYv2x03SMkfSjXGbtfPdfVF2IcjzHLE0hcCC4wyM28XElXHUwMDE2j+bJ8Pm1Ma7pWDNIeP/S+ZxJZSlcZvY1oWD+XHUwMDAz8/yWXHUwMDFkXHUwMDAyXHUwMDE2p6VcdTAwMTRcdTAwMDMwIebANNt28G8vm2PKwHBcdTAwMTWrbVxm/+PY3NPr9F9HxZEh8Vx1MDAxZuXwrTc+P3PvzHdcdTAwMTDYUZIzRlx1MDAwNOjKR9QpXGJ5uOjSXHUwMDA3V4PxaTNcdTAwMTRLTVx1MDAwMy2PkyAvXHUwMDBmesPhXb04KtePZvJKz/iKTprFJLglXHUwMDA1w1x1MDAwMmx8zFx1MDAxOV4/3auQtDhcdTAwMTJCmbqzXHUwMDFjMWcmP0FcdTAwMDEhUCokYlxieJxcdTAwMTK8xUBcdTAwMDHDXHUwMDAzXHUwMDEwXHUwMDA3jCXOJWOruYFcdTAwMWZFXG40lopQcnZcdTAwMWXfru/vS4PIIFxcXHUwMDFmpXKFXCJcboVcbqm3XHUwMDEyb4/V8Dh1XHUwMDFmNHRCV1noLF3OpXMyPJGmXGLEXHUwMDExJ1i2P/TpWeP0+X3ahJxMiWcpTXviXHLOwOSHOINcbktT5yNpzKLatGtQXHUwMDFhXGY4ovknrjAqOF9cdTAwMGLy/ILgO5Zut1xuPmxxXHUwMDEw4zBcdTAwMTAsOVwidOVY0b5cXIXe66BcXHWQed+qqLVcdTAwMDf4P2UqbEzkQNv161JOOlx1MDAxZlxmXHUwMDA3Y1Vrzo5oMlR8bN/l3rTbV0BcdTAwMDPt7TXvm2VWuVxuKSdcdTAwMTW2kKlcdTAwMTNcdTAwMDJWK1x1MDAwNmZdP9yiXHUwMDExsXN1JVx1MDAxN1ox/b1OQzt5XHUwMDE5pJdFTJ8+XHUwMDAx6lx1MDAxYmJyS1x1MDAwMFAyXHUwMDBimXLzwO7MNFx1MDAxN/tUPFx1MDAxMmthyv3pS21cdTAwMGX74MdcdTAwMGbReL7w+FBIVeqeu1x1MDAxMa1cdTAwMTSPa1x1MDAwZfszUk46N+CyU6GN0XIwa2x/6CuQcmDZWVRcdTAwMDKkXCLbOFJygzPkXHUwMDBmcYbmltBcZoSpXHUwMDExYiZD7yuizigngGjn909frqhLVjsgnlx1MDAxYd3aX1x1MDAwZo3+XFyCnEHs7ZFcdTAwMDSbYm/XpM4uXHUwMDAyhXRcdTAwMGVCXHRzRplcdTAwMWaT2Z4mr+NcdTAwMTJuXHUwMDA2XzyJyKx3l6s/udzui3flmDqSUlx1MDAxM8JcdTAwMDDWqEBcdTAwMWK6rDkuaVx1MDAwZWxcdTAwMGJgdCnQqqp7+lwiTszUT9ZcdTAwMTSBONaMbvPlmNPjmlx0XGZmuDmjt6K4vlx1MDAxZlx1MDAwZVMwXHUwMDAwoMWFlk/OKDV47sWzT32Sqihv/ok8XHUwMDBmj2u39zNcdTAwMDJQccdKXHUwMDA1XHUwMDA0wSZcdTAwMTFJjzj0vP2pT8tcdTAwMTinV1xmOTGcoUzHXHUwMDAwQUEh22RcZlwiLMxcdTAwMTWsXHUwMDA26GRcdTAwMTh/Kz77v6q6Wq5uaa1MXHJLKFx1MDAwNXzJNZeIbqmtSpQlTUVrmKpGcFx1MDAxOf7EXHUwMDEzRMJcdTAwMDX4l7Naf1f0pavdWWPw/1x1MDAwMlx1MDAxMVe+LPT2JKbvQf9Nubd9Rlx1MDAwN0k8wnby9LpcZl2JW/BcdTAwMWTpnlx1MDAxYcRcdTAwMWSilFx1MDAxZF5cdGw4eKmEe6qQLDH6VFxiXHUwMDA0XHUwMDBiL4271KVLO6GEXHUwMDA1pCjBwGWKy42SQopKi4P4oaZ5JdpcdTAwMTG2+M4xLiYsxClIOFwiXGIzrUC2p06hNVvwcz100GWxYohdJ1Nv5H5u5lo7fHLiLO7z5UPeYUtcdTAwMWFcdTAwMWFcdTAwMTOKmqoxoFnx6lx1MDAxZF4r8vdpi/eNXHSigDNkspSZUGipuG5cdTAwMWSM7Fx1MDAxYu1cdTAwMTNcdTAwMTWuXHUwMDBl91x0Z9Wxk0NrXHUwMDE569hCJsfadMZcdTAwMTDGjkNcdTAwMTRWg+1cdTAwMWLTacn/a/X30SBIkeNRVoKENuGDIzzYbu1/KnSzkVIv13tcdTAwMWW3XHUwMDA2XHUwMDBm3vvc66WDoELMwlx1MDAxOFx1MDAwYqw16P18I/NMU7u5tjH5iYLl+lbw9swoXGLv/n7g9lx1MDAwNoLb+XdcdTAwMTNF1iHrXHUwMDEzxuzFg1x1MDAxYqheLqhi58r+jFx0Tkyi98Ggms/0QsNOYpDG5XbTXHUwMDFkuVx1MDAxZurg68WX/Fx1MDAwMIvZwoIzIFx1MDAxOJNtcr2YiiXVWppz0DdQvYHqXzdQ/T1QdS5cZoE06KpHnSbvhCpP+fhj5XX8dO8vuapT12hcdTAwMWO7eFDVwlwiJo9YcSyRXFxxf11cdTAwMWKqXHUwMDEyOzb1yyWUbqB6XHUwMDAz1fnPfyyoMuXcOY6YgodHVXNNPT7GJ6WBp+ztXHUwMDE1x3fFl/a40FxiXFw6qGpGTNdcdTAwMTYspJSmJeNGWP9XQHXpk1liqim6XHUwMDBls2HEnJVW+POZM1NGxJwmuVn/l4ipyOKgoFCJQPBxvmJcdTAwMTHZn2KLXHUwMDAyJiisTVFcdTAwMWPjdDtcdTAwMDBTXHUwMDExYpxwoqRcdTAwMDRcdTAwMDNLr1x1MDAxZaz/61x1MDAxM7XgfeMxbiGmKaHajFx1MDAwNnNkO4ZDau/8XHUwMDE4s5Q5XHUwMDFliVx1MDAwNFx1MDAwM8Lg+jNcdTAwMDJcdTAwMDJcdTAwMDRijUxrSoH2XCLqWdCPI2czXHUwMDFkYY05LMfh4JeYTtWDh3dcdTAwMDR6K3tcIrxcdTAwMWJcdTAwMWVE/E6nbi8qr4lpbJmG0UpcdTAwMDLyMLxRnVx1MDAxM3jaYppzwrAytOuc8PDt4pxcdTAwMDdoljuu+YhcdTAwMDRRpSRcdTAwMDWFYytcZn6Qzt9cIuJcblPC89HRvW49+rz5yOP97D334IaWv4qWa1d/3vOj1Tl2zvE+h+G/o7xcdTAwMWW3NieDQulsXFxcdTAwMDOOI1x1MDAxYshcdTAwMGaGQl2dJpNcdTAwMGaTTN4/4VxyNi3Ha49D1zVAIUhcdTAwMDRLI9hcdTAwMTJNuMmnWkdChixlalx1MDAwMkiKXGJZaWN5+txnQ2+SSa20lFisej6cq1x1MDAxZoF1XHUwMDA1s+NcdTAwMGW5zjfcu1x1MDAwNtxz3viNr39T73EsXHUwMDFjJFx1MDAwMcBcdTAwMTjYpofz+ujheVxcXHRcYld+kEpcdTAwMTVcdTAwMWIx1EyzXFz2anjd1PLXYIkjWOyN5Fx1MDAxN6YsTlxiY0Z7XHUwMDA2M/mM3M4sqUy1PpAxmGp0XHUwMDEwt5tcdTAwMGXRWFLu0D3rxu5Xwe6OO7/x9e+xO3OuVs6xOk60R1wirZBU2ZaY5dMvsVmlmej7r4TdsWXy15GtcVx0tHFGkSuLgcAnXHUwMDFjaVxmJu5cdTAwMTnPNX2F2zWYolx1MDAxY0tcdTAwMDfXzo3Zb8z+wezU0afBXHUwMDA1ZlSvXHUwMDFlXHUwMDA238fsyTdcdTAwMTJ8zjXpS/AhUlx05vmYRFxuwetg9t2ynVOTJI5Ay2JarWLBRXA7XFzNXGLBXHUwMDBldUxv3H7j9lx1MDAwZm53XHUwMDBl31x1MDAxOGeFNod/XHUwMDBl5vb4qDHO82C/XHUwMDFiXHUwMDFmZlwiyaw/88Keq9fC7Vx1MDAxOKxyybnE0jTE29DkmWXKYEtuXHUwMDBlriCxObHf1uRcdONcdTAwMTTASm0/o3Vj91x1MDAxYrsvXHUwMDFiXHUwMDBmcb4jXdv0tlHyiKJ69eks8zxcdTAwMWRVQjzfXGL3k82QflRFXHUwMDA3jr+YeC1T3MJUmjP/WnO5UaFcXJvgP+dIcYE0Wj3kdcpzaFx1MDAxYVuCcUYobDfDXHUwMDFjbTmCPT8sroFcdTAwMTQkoabZxadIXHUwMDA1fCy4Xj1Ru53vXaHS5HGaLVx1MDAwNCosXHUwMDFhy99FXCKk/ahWTlP+XHUwMDFkadfEXHUwMDFkq9ertUj6uTeNzyokj1cvXGKGYy+xQSo6eC550sF7b6zuust/XHQ5Vlxugi+I9T23Ylms+1x1MDAwNignXHUwMDAwlDtk2f1RqKmjXHREjZfHr8xcdTAwMGZWXHUwMDE25kJqXHUwMDA2XHUwMDFhgOT7I1x1MDAwZcgy57hMs3VcdTAwMDZcdTAwMTiBtUJrXHUwMDAwRYVcdTAwMDX8gphhK4TZ/nCsXHUwMDA1V1x1MDAwMZtxU32DUtOJYi38zJAlXHQxkV1sKk1cdTAwMTHN943ILKExwCZcdTAwMDLW1mDqyrXhiMVcdFx1MDAxOO5cdTAwMDRcdTAwMTaDXHUwMDExofaHn4np0KuIKUlEXGLIfEHWxmNcdTAwMTZo2JLBM2jj7N/7vMZcdTAwMTeITGF/XHUwMDAxIFx1MDAwZoNujsbNJyZATmDcvblLkllcbmNcdTAwMDFcdTAwMTY9NiXx6drOMjBNuNaCKEVcdTAwMDRoLXtcdTAwMWZVmVx1MDAwM69CYrg5lqaA8tpoxumBTEVlpCjVsFx1MDAxYvuG07B1XFxK0+TBuELY5r4y2FUpKTdccqj0XrpcdTAwMDOgXHUwMDA0suOAg0SBTSPXRqOmYlx1MDAwNpV2U0hAXHUwMDAzvHdcdTAwMWJgblxu4NRcdTAwMTTDxvA4fC2FXGZwXHUwMDFmVkGZqjUmPUai/ZMzZVx1MDAxOSVcdTAwMTApiE5cdTAwMDa7ulx1MDAxNtVcdTAwMDNcdTAwMDbEwF0wQUVcdTAwMTj8XHUwMDE3kH7vTpjK0Vxutlx1MDAwZZZPXHUwMDAzJayx2Fx1MDAxZOxcdTAwMDSIXG54VFhcYqBNvn9nTSMwXHUwMDEwXHUwMDBmklNcdTAwMTNcdTAwMTRgaC1OeFx1MDAwN1x1MDAxNq7CXHUwMDFjiE4rilx1MDAwMVxi9k7PUD08pYLtpabbwlx1MDAxYaHcUUtcdTAwMTnvXHUwMDE4IVSZPmt6b8ZcYsGW6YjCKKxcdTAwMTE80OZoXHUwMDE00Fx1MDAwNlFcdTAwMDRcdTAwMDMxWMD9IVFLgVx1MDAwNsxhMFxmS6iR2lxcPC7mTXdcdTAwMDBcdTAwMGJcdPDNXjqG/UNgXHUwMDAzMSBcdTAwMDWqTFUwtI5cdTAwMDHmc0PBpopcdTAwMDPQXHUwMDEzoKzU+8b8Vui12m43+sPtelx1MDAxZKC7c+VccimRabV4RFx1MDAwMfhSYlx1MDAwMrByn6O5u1xcplRjo8f0Xeny9TpqaVx1MDAwMpBDQC2SpsjiumKHtYVcdTAwMTBWpklcYmKrzpGvKHZKqKpcdTAwMTZbXHUwMDE1O1x1MDAwNjhcdISrkDlccrglXHUwMDExT1x1MDAwM5PDZIQy9XOMiPms14FEVlx1MDAwZSeRL1Ot+zmDcCeLOFZZ5M6JWiZgaU6oXHUwMDFmnqh131xm+KhcdTAwMWKPkc7EXHUwMDA3Xla+z6b74jr8XHUwMDFjyOLUXGJMYqSBXHUwMDEw635cdTAwMGVcctKZmILLiJnskvOFMLhcdTAwMDZlXHLEsFx1MDAwMEFGQGnbUprtU1x1MDAwMapPVThA+Vx1MDAwMVnklK5wodS7nJVzXHUwMDE1XHUwMDBluXbRrlKL9C/3K4y+ssInKzu1s8bwllx1MDAxYlx1MDAxZlRoQ2+UXHUwMDE05l9iZu584lx1MDAxY3NcdTAwMDbQXHUwMDBm4v1wZr7LJetcdTAwMTPRST9kXe5nNGtPXHUwMDA2hUjtOphcdTAwMTmMXHUwMDFhXHUwMDAx5lx1MDAwN5XAsuJzOWFcdTAwMDXiTlx1MDAxYlx1MDAwZoFtV5yNmcGSZEC3XHUwMDAydFx1MDAxMNNVkIotXCJvPzebpClBV895/ku4+fCaOv7GajWcn6hcdTAwMTW+fscvsbDaycJOfkjhnFFg20yc6SMqgo/ROCwrjfu7VqVcXKs8NbOxmtuJhTfY8NeYV3FcdTAwMGJMXG5l14U1Na82XHUwMDA0MbeEUGDuambasDmnXHUwMDBlVUFzoXi3qurkg1x1MDAwNLvGXHUwMDEyxlx1MDAxNEKm7lxy2SaFP8dcdTAwMWGUyW0wdamvkk//5T4/x1x1MDAxZN349n+t/j6WdyV1zPRcdTAwMDWDnYA4XCKHXHUwMDFimpFkmiTBRslcbk+mXHUwMDFmbEbCpedp8sJZl0lcdTAwMGJcdTAwMTP4wZSaZlx1MDAxY+tSl4Ncbq0loooqSZzb8XyLb7GJX6xImC11XHUwMDFkPzOuqUCAJb7Seq3/dsZ13NKNr3+Lc4Wzj8i4XGKZoEdcdTAwMTjB/UxYVHqzVq86wpF0slHzXHUwMDBlXullc65AIFZcdTAwMTXCIG8pXHUwMDE4jnjd+lx1MDAwNfCUlpRcdTAwMWNUZlx1MDAwNjJcdTAwMGU+P1x1MDAwYvcqXG5cdTAwMDAhXHUwMDE05iZDXHUwMDFigaQ/iHmRZPpq+1xu/MuZ13FHN779Ld5lzJF3OaVacHxEoo5cdTAwMTh22Kj7wvvPL7VcXNbrKdbyaadSk1x1MDAxN9ZcXIBTiypcdTAwMDE2JKhcdTAwMWFstUPgcXrzt1x1MDAxM3WkXHUwMDA1pjc25rVcdTAwMTKEo21G72c2NravXHTr3JTnXHUwMDBiZGPnLd34+kF8vLNMulx0RTlxMzUnpMnh+fSp6LhcdTAwMWXksLmTTGpa6uqmaj3mfkpcdTAwMGUv1YVjmFx1MDAxOIxeSymBicaUXHUwMDBijDaLezFtMcFNv1x1MDAxZpOBI87X7U5cdTAwMTPL9GLQoFxmMNPmY4tcdTAwMDUstGWO80lcdTAwMTNcdTAwMDJcdTAwMTSYfa5Dw7lcdTAwMTaIOdSh+SCav9vuR67L7b7npV7OXHUwMDE3XHUwMDBiXHUwMDBmXHUwMDEx74QtI2pwQeI1SEnZ38qjyCyUibhzT3k2OFGKzXso9odSbHYyRqNTrG2PYYLp6Kiewlx1MDAwNtjtclx1MDAwZmaL/GiKoneyV+/lR1x1MDAwZrH2WKF+L3/pXHUwMDExTKqIXHUwMDA1PIE4NVVcdTAwMTLAXHUwMDE0WD9Jrzm3wO6k2j5hgpSjgrqV6E9do+mQk/TC/pH7XHUwMDEy1E5H+78jXHUwMDE2R69Dm1x1MDAxZYpv1fVcdTAwMWVN89n+TVx1MDAxMTWHMlx0rlx1MDAwMtBUS9RcdTAwMTji1XKpUjSaXG6FXHTQYlx1MDAxOVUqgC9FWUFCMM2ewVx1MDAwNiyVdFVWiqUqL+miVojzXHUwMDEyXHUwMDExwFx1MDAwN1VcdTAwMDJYVcXPpVwiNkeRyIrZNSxcdTAwMTdtulou7krOxztcZuyWXFxOYVx1MDAxN0LJjvppttp1TKXfXr5ZJFx1MDAwZp5cXK0101TOnjKequvie8zvYVBcdTAwMThcdTAwMDBZJt/OJIZIwaWzXHUwMDAy+u0m88B9IJaMjFx1MDAxNIquXHUwMDA2f5ZBXHUwMDE350jEx4lvUJK13ntcdTAwMDT0qvlzJTajLbIm79naRbtCM+1XmONf7oZTqPVcXFx1MDAwMZot9z0oTCOPXG7TOMpkWCRHlje1eVx1MDAwMNKOOOmdbiQqg5ZvXHUwMDE2ekjl3DV3eNSqylO3LTk9y0vTzl6Yg66mltlKIaK5w1dSiyFcdTAwMDZcdTAwMDYn1oquXHUwMDA1Nr8mk3d3biWWhFkgkznOQPJuS1x1MDAxYsdgICOgcInNUZbPUtlcdTAwMWP5VnL/aZH6IDFpuyY083hHXHUwMDBiianGZVx1MDAwZq5cXFx1MDAwYtNcdTAwMWYglCvomZaIQs+lXHUwMDEyfjatnXWZkLLJ9kNcdTAwMTUsXHUwMDE5XGJcXFmuVjXiyJzqXHUwMDE15Vwik1x1MDAxNZNBzJF6Lslcbnsu0zJjSJSx5KZZdlWUaVx1MDAxNT1zWiqXykJcdTAwMTZPKpR3m5OghjlqziZcdTAwMWJb6CNCMrNoQzVyvuKkXHUwMDFmSUzir4Ga7/GtceFcdTAwMDalYKZrOZXEeHXVpkFpzmZzpoBtTPMhhL91pGO3Qcksc1x1MDAxY1SY0oxcdTAwMTJr/lx1MDAwNYOSXHUwMDAziEi5v/rU6djzsu1F5+472jGnXHUwMDBmtDOwkVa7me3NXHUwMDAyXHUwMDFhXHUwMDE3vG+NQlq4XHUwMDFivXwsXHUwMDFm9fcmL/zSRZNQXG5MMGTnwYGBQcg61Sthupua6n5UMya+lVx1MDAwMXTuXHUwMDFh6ZhcdTAwMDDdI3JcdTAwMGJwXFyiZ/RWfvdiy+9cbufjnNicxVx1MDAwMN3kiJhuinrS4dBDk7pf4qnytDd6eFx1MDAxYnYuXHUwMDFmXHUwMDA1pa2Bc1CIuUbbuu8orZRcdOuaTotcdTAwMTeMglx1MDAxNFGGJKc3XHUwMDEwvIHgXHJcdTAwMDRcdTAwMGZcdTAwMDdBuaO5KlFcdTAwMThcdTAwMTjqXGK/ZKjLPLVO13dcdTAwMTfvpl3ci9g9XHRcci9cdTAwMWVcdTAwMDM1skB9gu2FLcPLQ5JzXGJUxFx1MDAxMpyBaYTByqXfKzt5/jaMXHUwMDFhyPRa24rfMPCGgb+Egcvzs59PuMGTKlwiXHUwMDBm11x1MDAwM1/6k9dRdkDTnVxc3NNcctRr93GOr1x1MDAwMVx1MDAwMylipvRcdTAwMTXwsCDrqUHGrWeZg/dCXHUwMDFh7+c3i++eXHUwMDFiXHUwMDA1iTROu1uy7lxyXHUwMDA1t1xydkNBXHUwMDA3XHUwMDE01M5+cEyYUkiQIzKrnrLl9qTeeXjVkeeXWrZcdTAwMWXCqaZTh69cdTAwMGLJcGZCXHUwMDAwXHUwMDA2arAjtTJcdTAwMTUn0IYjXFxcdTAwMGKLwY/kkkixeo7ylFx1MDAxOc5cdTAwMDRLS1CpXHUwMDAwwlx1MDAxNJfmwNBnXGb8nFx1MDAxYomoVjfEu0zEc97Rja9/i3uldqwqXHUwMDBlXHUwMDEzkGDmqcOZNz5KzorRVMo3qdbaOfn0XHUwMDEyyU2eLpx57bRIrSmSxlx1MDAxM47URmEyTS1zMoRcYiBV49E6XHUwMDBm81x1MDAxMmkxSShMgpuKOltcIsxbXG5cdTAwMTBcbkBcdTAwMWO8amXfmPdymNdpRze+vc67/7VcdTAwMTjv72K/n1x1MDAxYcFS//1cdTAwMWUo/PutUVx1MDAxZLu3kNSz/WNCkDbn26H2ZXzx/Elwy0jm351Gp5peTW75M3yr/TPptP/egImfy8xcdTAwMDNyLWaSXHUwMDExc1Pz5/9em9b/ZVJ3wFZ4XGLGSGHqZqXc5LU867OHVPi1jHW7XHUwMDFhTLZLnYRcZjU+PusvPqtcdTAwMTfTw0YoWFx1MDAxZpVcdTAwMDJ8XHUwMDE271Sm+Ud3b/FZt9zxj4vB6Mr3UKNcdTAwMThMorK391x1MDAxNqFcdTAwMTVamXJcdTAwMWGd8rdyp/xcdTAwMTZtusZRj55VOuXleN36sJjjXHUwMDAzXHUwMDE4r1dcdCbH8YZ6g2/RSLc8i3T0tDBVk3i6xSN0flx1MDAxZNyHXHUwMDE0XHUwMDFlw7NiTr8+pEKTSNPXXGJcdTAwMDXaLfh+NP/YbpfbamLmXHUwMDAyn43LwVx1MDAxYdynpUNN97jqXHTVKp12u4LCb1UvakQ9rnHI61x1MDAxYsc9jIS8ZVx1MDAwNt+ZVYLtYSGNXHUwMDFhhVx1MDAxY6/nO5N2JFx1MDAxN67nyVxinlFjWFx1MDAxYlHqZGnI66rBdydRb+011nDRuHexNt7+rFx1MDAxY/A3zffLwXC7TLLTSidcdTAwMDOfVfqFYFx1MDAxMtYrhKMwh2Ig2y+QOlq8/sfTcKkyTfJSIFOD+4/N9yuBLKt4dLNMo42HWq9cdTAwMTby8FnF65aFTntcYvfB5c64XHUwMDE3wrFcXFx1MDAxMrV9jzP/8316pD211muZJiZVUuiXXHUwMDAyY1F5XGZcdTAwMGbvPbF0tlVcdCf9avo4bcnnRC9cdTAwMWPpxlC0O3ozcy0+Jnm86XqNe0edYm4yjHez05Kn1szgQjCVST5HserHSfY1n1x1MDAwYlx1MDAwZlx1MDAwYincyOdig1x1MDAwMlxyv1VyvFx1MDAxNe/wdmXqgrm5luPSw8aN+Y9cdTAwMWI3XHUwMDE2PHDc7JHjPjqM04ZxKLr3pMy6XHUwMDE3ZIm6gVx1MDAwZdqomu6NI82awz5UzD5cdTAwMDBcdTAwMGb5XHUwMDFisJejfFx1MDAwN+ZLKtNcdTAwMTLNvlx1MDAxNrz918Jj2dy7tlx1MDAxY7eyMW7UYdz6kePWXHUwMDBmXHUwMDFjt33kuO1cdTAwMDPH9Y1ccq3t5CFcdTAwMTg35F3SbHRjf6MzXHUwMDA3ekz7j5yzz4lcdTAwMWYm0bU99k2rRI+BXvqVYEtEPWxcdTAwMTZ3+t6xPJGOXHUwMDFkSD8+dOy6XHUwMDAxXzisU3Zcclx1MDAxM5zoPJourF/XXVxc14hO496wPzqrmeeoPVx1MDAxOMy2sZHdh7yTUeExWS9cdTAwMDT8KG9ee1x1MDAwML9Igb7j+UIuzFxu3bJcZjXtz2sgc1x1MDAwMLtj7fJs8Vx1MDAxYcYrXHUwMDA12s3CY9TgXHUwMDFmPNNk/jpcdTAwMWJ7g/VuXHUwMDE2MvP1LE/djVx1MDAxMk2iXHUwMDEywdFCroDSNFxm2NlcdTAwMDbcXHUwMDBmo3I321x1MDAwNszuXHUwMDE1cu1uMZhcdTAwMDCMtzGcXHUwMDE2YTWLXHUwMDA239MuXHUwMDE2aeZcdTAwMDF/azrUQJOYt/xcdTAwMWFthGpVwNdog7GPub3PZfPe87mqXGKNdSrmb+/4rZTLonwuWa9cdTAwMDR8Nm5cdTAwMTdcdTAwMTbXwPdfXHUwMDBiOf80ScOwLu12qZuoXHUwMDE1czCn9lx1MDAxMqNhbkZWtoq57GvFn31cdTAwMDVaN2uFjZzI2PSRfSi1s7NCXG7m6PXB8/gmQIc41myZ5+JRmHdsXHUwMDA22JdOcPs5vCG4JvRcdTAwMWH1ttj8uczr/Fx1MDAxNPhyXHUwMDE2TYPcXHSAnM4l+0BPKFx1MDAxYlxm10vdWKdEwyO45yj/mJxcdTAwMTZcdTAwMWZrvWjKyEBXLZL2zWVaOvpcdTAwMWFL+6axVGshd2zZ9Fb2uN9cbp3CrPBo1lx1MDAxOfhcdTAwMTPmXHUwMDE0g3su5JZcdTAwMGVcdTAwMDGdl6hrlCd6WKIhXHUwMDExmrnG8XTFm0yFXHUwMDE2+zt+s8fxftCDub5WXCKFXHUwMDBlPL+RhVx1MDAwNk9oPFxyslx1MDAxYz6r5iZtmOesXHUwMDEy0ONILvZWXG7oKdDk2OhcdTAwMDGJWeZjbrA3ZpxcdTAwMGZcdTAwMWEy14dcdTAwMDK6U+jG2lx1MDAxNVvGM1x1MDAxY037+Kpsnz9cdTAwMGZulsjkrdzsNaPNXHUwMDEwT/r8vlV6MOPsev5YM0HiqV3Pn5gm0lGWbFx1MDAxY/P85VksXHUwMDFk2vX82Mwz7lxyXHUwMDFk8/w82ozufP5E2u+NNfOTw59/11x1MDAxZcU8yVxm4Eg6unWOMLbR4dr5x3Dwg1x1MDAxN7xcdTAwMGJcZlx1MDAwMTwpetzNUsA/Mzok4NFcdTAwMTjmbfS62JyXo8NoXHUwMDFheJhER8C/OJKGffAgZv9OoVx06HE84vW9xlx1MDAwM/B5is1cIl6g0ylcdTAwMDJ+yFx1MDAwZlxyXHUwMDFkRIC246kxrHOyXHT0br5cdTAwMGJ/h8xYfDFcdTAwMDayX8M4Zlx1MDAxZPJTRFwiaeAvXHUwMDE427y3+M4kOmXMXHUwMDFlO2ffh5q/4yk0g+9cdTAwMGVhrFkknYD7juF1275P3DOGOWRGsVx1MDAxNCMwvzG8Z/ZcdTAwMWGeJdw048OcQIdtjWJccvOd2lxinlx1MDAwM8bPv8Y67+ObMcxzhIaxXHUwMDA2m0TSeTOmmdNsMU+Yd8Z8RudjwzxgXFyzJrGGvSZcdTAwMTSuMVi4+L5cdTAwMGbD/YYw5lx1MDAwNOZcdTAwMDSf11x1MDAwMS9agI1jeD8xjJlna5gxK81oOj+KTc1cdTAwMWNC8Fx1MDAxYeZcdTAwMDN4XHUwMDAz85zCOFOYO1xc347Gvb5htFlvfqxRwzxvfjRfp8RirDzQgrs531x1MDAwN7Mv8Mz2mptn95k1J/mZz1xcO7b3q8GQXHUwMDE5K5oya5I364Dzs/JiP83aJcyaT81zRNM1sy9wXcw7p5OyTSdmXW1cdTAwMWRcdTAwMWTuXHUwMDA1z4BcInNdf2bWXHUwMDAzrlx1MDAxNVx1MDAwYnpcdTAwMDf6dFx1MDAwM57X5vRcdTAwMTmY9EHO1sutJXYubItcdTAwMTU9OlQrfOB8MlvqtJGh18ojyLd2zOhcdTAwMTDtNOHZMjG6f21cdTAwMDK8bdZiXHUwMDE295an7zhcdTAwMWU36512kdj0XHUwMDFkx31js9exWVx1MDAxZdnXNOdYXHUwMDFma0an0fX7ZYBvXkHegj2FdKiD65VguF/11CZcdTAwMGK7ZDTHdJ+hU8C+XHUwMDEwvv/A4M/4XHUwMDAw62Fsq3HU627Dfkx34iRKkFjGXHUwMDFmOFx1MDAwNidcdTAwMDF7xrGdOFx1MDAxOZrFZmFP3HNcZk5mxrF0baeciPpCLNHajpNHYtDk1zHI8Mecb43uaPNcdTAwMDL8bbDCjDmBayY2zdv8XHUwMDE3NXxsdIBRzKZ1uN9cdTAwMWOngFx1MDAxN21MwPZcXNJAJ+Z+wFx1MDAxYlHAmZj5PJ2xn2HBx/N5wXs2TiyxZmrPweb/zGK+XHSDXHUwMDEx9vfNvWJcdTAwMDaz0lx0+K7BXHUwMDAyRG3+NfzoscemiVnN8P/UxizzLF6zXHUwMDBl5nXCPMM0YXAgheY45pmvIXxcdTAwMGWvXHUwMDAxZ+D6xMw1tJ/H4EjKfK82X1vAmpjRj33RacS2zVxydrTmWNhcdTAwMThcdTAwMTP7+4CdsUzUYCozr1xyjsZtjIXrmjCPQFx1MDAxNJnv2M9jsNpeq4zZ8/fPJzZccth7XHUwMDFiWmBcdTAwMWQ8h8fcq9B8x+v564TBMXidMXti5vKOgVObLlxm9plna1x1MDAxOFxmhPvkzNj2M1x1MDAxM3tsg5FmjOlCXHUwMDA2mLmZ36kxW4xt5jh/fvg7P8sv1sngv732k/nz21x1MDAxOIxccs3B/CY23dnrXHUwMDA2dGXkXHUwMDE0fFx1MDAxZWuNmVnLuFm/QHRs5FE0tZhHXHUwMDAz2bRcdTAwMTYz8zbXdsznmdF8b2zstvdwvmeFxT3WsFx1MDAxZJlxgFx1MDAwZuDzetPG4vT8+WK2vIzaa1x1MDAxMLf3NGnWx6zLcOX3dL7X73Ozx5zM11x1MDAxMM3pwjO/Z9TMbU5cdTAwMTfz37Y8sa83dGXwXHUwMDFmz/E/MZzzc2LOz9O5rIjOZcWsutDbXHUwMDAwK8agK/dsXHUwMDFj8U4+44bH3S9cdTAwMDCOrvhL1vXuXHUwMDFjXHUwMDA3ezJcbrhcdTAwMDd6/WM4bfuHMvo1XHUwMDBissL4qIwssPWFZmJs5EFcdTAwMDGeZ67LL/R/2IPozDezrzUywczVWyMxz7u+3zJ0TUBcdTAwMWY/r76fXHUwMDBlcSOrdun7Ua/x7Vx1MDAxZKXvT2Oz8m5cdTAwMWP3Rmcx31H6Lo42y2SnXHUwMDFj87pcYug74+P0/bIth3c9f1xmXHUwMDE1PInj9H1cdTAwMDT7uef56+5cdTAwMDQ6iS49/ZBjNtb6vfbvd1x1MDAxY7Ix1PyueOe8Zeutc95qwG/Dv4+9+TzMs5nxvYfavsmv2L5GXHUwMDBlsljT6FAto0NNbFx1MDAxY/cmcOzD9s1cdTAwMWI+XHUwMDA2Xcn28U43rzmXzmTWXHUwMDA3+I3uoTGbXHUwMDFmjtKVZiG6l8dmoIVcdTAwMWRFY1x1MDAxOeCx/Fx1MDAxZVx1MDAxYcuDXHUwMDBl6DqGx0hcZvS2Pc9Pk62w5yhcdTAwMWWbwb7tef64z+9cdTAwMDVK3vb8KkI+6+5cdTAwMGLctjE8XHUwMDE0iFxy84+xmb1cdTAwMDZeQNlcdTAwMDDct4VseVx1MDAxZs1cdTAwMTi5XHUwMDBmPJBcdTAwMWGjXHUwMDBmXcroXHUwMDEzIJdcdTAwMTKzhG1vmddzW81n9Fx1MDAxNptHoq0oXugl8Dqz+D2/7qsyJJY9XoZcdTAwMTg9XHL2cVx1MDAxYU2tyVx1MDAwZVx1MDAxYfXaWDiXXHUwMDFkxlc0y5D4h+xYu2aFP5Nwbz4rdPS0XHUwMDA0Y5dyflTutNm915ZcdTAwMTnjXHUwMDEw6HE239g6aFx1MDAwNngh01/x822hQd80vlx1MDAxN+dsfjmGXHUwMDA2Z4Dz+3hwXHUwMDE2nSWPo8E08OBcdTAwMWW/Vqzp48fJuTxcdTAwMDU7aM/zV1x1MDAwMk72isPz05g3s+/5WVwiXHUwMDEz8259fuPL/Izbc3pcctr2cC1PJvUyjdprYPRcckOjaaM/23ppvemkZ9mvc9GlXmbbQOP319h+3YqSOb8tfFx1MDAxZNO5XGayfVx1MDAxOEb2XHUwMDA0vyprXG5fkDVgt3gzK3pXi4NcXJnNcbNm5FxuNvZPrFkj77Z5XHUwMDFj5lx1MDAxYzW0kPplOdNMsCiK4qPkTFx1MDAxYehxJ42HUNxb8Ma246wjje/mm1x1MDAxME80/b7j/KGtff7QaaJcdTAwMTWdJtO1U+hH+F0/Mv4voMeZsWPzs3d7PT+Mr9pWts1t/HdRY1x1MDAwM89se9vYY8BcdTAwMWZg53BjPy3sbrKw82dcdTAwMGI7nto2lP2d9oKHNngntfBcdMDrhc09Nja2bUfB53HbZ2D7xGybx77Pu/2z8t0lX4ZBi47aPFx1MDAwNs8wM/qesVvnfkajZyW9xq9n+8ve/WOGJ81r2/9WaS58XHUwMDEzY9tcdTAwMDdo/84sns3Mx7a5+cL/XHRjtj7s8rk/XHUwMDA0dDJcdTAwMDQzXHUwMDAwWVxua1xutqC5XHUwMDE27K5m3txcdTAwMTNcdTAwMTksg/dAjla+6pOjX/DJwVx1MDAxY1xcs5jRXHUwMDAz3vVL4zNIZ2g89a5fZoixUeLe8lK/XFy55qZf3vRLZ/0y/65fjm1/0txvZXhcdTAwMTAvfTyJhY2VML5cdTAwMTVkf9740D/nfiNcdTAwMWJ75t//qj5cdTAwMTn3f0Gf9KzpkdNYM88/9EjAxXg6QWPN9rvP2JaJgIvGf0Vi5/VF7KI1XHUwMDEy94a9R9JcdTAwMWGKp3fSL6xHxZtotlx1MDAwZVx1MDAxZnOXv1x1MDAxYlx1MDAxNVx1MDAwMslcdTAwMTb8285jR9JYeUljxj4nXHUwMDFivi+bdua+MkNbc0xcdTAwMGUtdLLQ64ddT7+qa7W/oGuFjNxBMbBV3mMhQDcmjmP02Xd9a2J8cmD7z+b2zMJWaTBuePictsouzFx1MDAwMf1vmphcdTAwMWTpN/K2dvqi4iBrXHUwMDEzKMRPXHUwMDE0e53TVit/XG59iH34i1x1MDAxYVx1MDAwYp09XHUwMDEznS3oXHUwMDA32XFcdTAwMDWbvspcdTAwMDa7XHUwMDAwy/xekG08stCdlteZmIO5zv9V2T6Jflx1MDAwMb9i5r4z0I1X7WGg+9jMjsHZOGb782c1XHUwMDFhW7WHl9fcaOz8NMbXfZIx45Ocx8zseEl5QUOgL/uic93bjoW4hrY9+S3s8k2+oDNOo7YvOIrj635cdTAwMTagmdqHnyVqx9drM+MvXvGzvF9zo6vz09Uk+uGvqC1idIWPWKKJd9r6l52HYOy499fzuGvC5Fx1MDAxOVx1MDAxOFnpLS/ilD5cdTAwMTNcdTAwMGbENr21otT2XHUwMDE3mriViVx1MDAxNzXmccv4e8yu+2V6/GpegdGV6TKvwFx1MDAwN/Y92Cyed1x1MDAxYiYxtf1Ptlx1MDAxZG3bMNTEwOLexG/7/GZcdJhXXCKTOCq2XHUwMDEz2+tcdTAwMGZcdFx1MDAwMU363cfQeTxcdTAwMWTFu/0hvlx02Fx1MDAwNW6HXHUwMDFjhSN1Nt9KPkHGjnub3Fx1MDAxMOBNQ0uT+FwiZlx1MDAxZjP5Pal5nFx1MDAxOOQsNnFVO0Zv2+smVm2/PzMx7nmcP4FcIvNcdTAwMWOc6Vx1MDAwMj9XYsuAo/PYqfl77oOwfdRons9gx+5ccmZVvGAj2rHruUxcdTAwMGaZvVx1MDAxZUZNvH1lrl+OjaZjX4lcdTAwMDNcdTAwMDGOgr7YdE3W9UVcdTAwMTPD+9BcdTAwMTepTVx1MDAxYrP1OJCxO8/rn9tFM3lcdTAwMDZYcaSfOMF3+9BqXHUwMDEz44mNXHUwMDFmnlM52cUrc7wtbM/nOdI/bOPL3Fx1MDAxNiG2b1x1MDAwN2zE9DzvwfaTbcT0XHUwMDE3tsncXHUwMDE2ScwyXHUwMDFmuVx1MDAwZXN6tXPZ7Fxch9jX5Tv6XHUwMDAyntKYyWFJ5/mKL9jky/Do0lx1MDAxN1xm9qLL4Fx1MDAxYvxOvNNcdTAwMWI3uX2AI7+Nqbc4yoXHUUA2v/PJwlx1MDAxN2owNtaM23yRX+QqvmO/ya+M2vlLUVx1MDAxNJ3F59dcdTAwMTNcdTAwMWL/ZyFcdTAwMWKTQT9hXHUwMDBifYTN/cQmxvLhXHUwMDAznix0XHUwMDFj89rOPVp5PbJ9TO86kPHvmrwoO69oTOe+3PE8XHUwMDE249tcdTAwMTarKVx1MDAxYlx1MDAxZZ3nbqEoec/NMj4rO1ZcbvOeP5/vXd8yfL/NTz0xa1xuXHUwMDE4sFx1MDAxNju1df6pXHUwMDFke134wqKLXHUwMDE4kp33RFx1MDAxNvboZDHGPEcstfjcloF2rtb4XHUwMDAza7xcdTAwMWYxKtumWK7VXHUwMDA3Ls1cdTAwMTa/cX62lns0WfGlLPK35nbvx308XHUwMDFm85rkZ+/XJj70zbmPz34+0MFXZXvLzjda5KTiuU88+lx1MDAxZJtcdTAwMDZ/SYdsmFx1MDAxY6NcdTAwMWFeyleXka84uvTHIKMjLHzl5jUztFx1MDAxOGva9tvv6pBp0CGbR+FcdTAwMWTokKHdea6zjPEtXHUwMDFmdVx1MDAxZWC/XHUwMDBlXHQ6edrtjZ3E7+dD23TIvMmrTJk8x/I8X9HYXHUwMDAyJlfbzlX0ze1r0DPN9fO8cJMn6bMx5j1OY+etLnl1JVx1MDAxZVx1MDAxNd2IR0U/Po9NV+NCWe881zpkbKbp/LdcdTAwMWQv9sbm+YqGXHUwMDFm5nO0cyXzizzBitfOTffauYl4gTczgycxz3hcdTAwMTFrW/VtbsbM7Fx1MDAxONRcIlx1MDAwZnE815HfczlMbseHXyq69Es1bL+U1+bF9HuMOrP4fKFDm5zJ9zyoefzvI/cwtlxcqyXGTOe/Y7lccuxZyVO013COMXR5n8THvFZi52hcdTAwMTk7f89xtXNO5rml8/3lc1x1MDAxObHIXVxcypQv+9ti7S/420zcM52hsVx1MDAwZr9Iy9idgFx1MDAxMfmlT9ecXHUwMDA1MDl/XHUwMDFmZ5XKMPc88MWZzyqly9PYTl096Y9lYk72nVNsXHUwMDFhdMKd2DRJwj5cdTAwMDH1nMSfYdsxtj9j7Vxmg31+ZFx1MDAxZZdNjOZx4czI0MI8T6lu55jP6cfOVydzOYnmedFzOThZxJan87Mo8zFiXHUwMDBivorP7caRXHUwMDFk1037XHUwMDE2eeKGR43taOeio3lO+HtcdTAwMGWuTcfzXFzy6Xi6XHUwMDE4f5GbXHUwMDFlWsk7NrRcdTAwMWOd89Du3HRkj237lk0+dtTgisFcdGKfh0ktMMnYXHUwMDEwi3zneGpxRmZcdTAwMWXPhueomZzleS6yjTmhRTx+kVttzpLYudcteM7x/JyLPT8zhslcdTAwMGZLNmNccjY/XHUwMDBi1LBzlskyZ9nOjTZ6wffPnmzVXHUwMDE3P+KIdH5Wx+iE2eZcdTAwMWNXfFx1MDAwYuytzbE0beeIm/NFo/lcdTAwMWXY54bmNn/K1lx1MDAwZue4/n5mybM4N1x1MDAwMJ8lZmVk63xNW++iMc/7vcBcdTAwMTaDtYXnmTrFIOHvLvw29E1cbjP2f680IVx1MDAxOVQ/6mdIbno0UUwwWS3ccv5cdTAwMGVcdDsrNvS7tc1qXHI/17Jhe7VcdTAwMDaY0nulhkbWXHUwMDFkT47RfaDWc8FPLJWp+zI1+GtqXlx1MDAwNlx1MDAxMlx1MDAxZVdcdTAwMWV+u3PhRFx1MDAwMpl3XFyPsVRcdTAwMTKFXFyDISuLhMtcdTAwMTVyucNJnz9T9cth97GTXHUwMDBm+lx1MDAxZvGfkU7TQqxcckNcdTAwMGVDw07rhb5cdTAwMTTcoWjE5/a3s9iTSWbdXHS/z+9+m77c11x1MDAwNrDVkVAv0nNF7j0vr43QQLn9/oTf7Xr0uzI+Nlx1MDAwZVx1MDAxNVP3xceXIUs0kl6SXHUwMDBl31x1MDAxN2Tz5U9/mk9cdTAwMTcyrelbhZayafz2kFBcdTAwMGbPalaQr5VM4fVl9Np7dfnHXHUwMDFkmOHmv3Y+1PDkVNNcdTAwMTXzXHUwMDE0XFyuT//yLk/dW3Z//szjiiVCmVCskIhOfOGWy7X5z++JK7ev4fr0rzhO9Fx1MDAxMvfTeqFcdTAwMTFKhVxcvs1/975cdTAwMTjzhn0uz+Y/XFyrJ2r+uneWSbRcdTAwMTKu0Oa/TCgyXHUwMDBlblx1MDAxYnDgXHUwMDBl1FxckUCg02uHaq7kxj+YS7D2sGX+4Zwn5nLlQrFYMp7csm6J2oOruuV2qaGv6HJcclx1MDAxM8ViI9/4dLvkfc1cdTAwMTX36S3zb+VDyOXO1zD2TXyuXHUwMDA23HLzXzksP88/XHUwMDE5XHUwMDFhu3tuT909eFx0d0LbXHUwMDE23NVL08/z7yRq3ozH7/HmMt5octveu1x1MDAxM823LberuXJD2CTPsJfLN7btL1x1MDAxMEzVNd0y/1FcdTAwMWU2yZ1PKOzbtr9+j0e50ZZcdTAwMDHvx8meyzOp91/C21x0xlt8dVWqrzFMhrjw0JW8XHUwMDEyKWRFu1x1MDAxZH8rTYvx4aTtIaVx/CFcdTAwMWVcdTAwMGW9evqo63lO6edeOs/EjD4861iOtHqN4af9166E29N3XHUwMDA1XGJuhlxuwXw0mCu/ZSo06St03lx1MDAxYW8tV7RGRH3s8rh8I1x1MDAwZnOz4LDZXHUwMDE4Tv/5XHUwMDEzXHUwMDE5/5Oru99wP1n7tMc6kTesXHUwMDEzXHUwMDFidb1cdTAwMTVJm0X8Nsi9pct+Xs9EqOuPt9zsVsrDzNRFp81WbJZcclx1MDAwZf7E9Fx1MDAxZlx1MDAxZYhz4nZ9WuteLelKvCT6s3yzXX5rPTZ4/Fx1MDAxZlx1MDAwZk9cdTAwMDZd/VpnmK1cdTAwMGWyj+7ZNJWRY52518/P3lhiyDv5l0/jXGbcnlx1MDAxYcyv06pmp+mJ7LzGy+5oVrq8s6DnrVx1MDAxZFx1MDAwYsvWWzY45aV/Smgw5YXha3pcdTAwMTKIpb2+1qe9qoXGqc5cYraz3+74XHUwMDExKj27VTbsipSGnlgw7m63wuNyrpl/rCdH2b5+jcTrgTz6tJ/SXHUwMDFkz7dq4dY4XHUwMDFm8iNdfM29ZZK1wjiQXHUwMDBmXHUwMDE3tPTh7rMvkS3w3MufdtmFw2+kX4t+2rtJKO1qu2GHSt3CW/Y+/lxco65mM9hPpGPtP27i0ZOk/vOn0OlcdTAwMDbqkU902vXVo4GMb1x1MDAxYVxuj/xkXGbbr6etRCToyjSnr/Hhyz++XiVcdTAwMWXOdlx1MDAxYird7k6Cg02SLIaTrlb9jy8wQc2H6J9SqIiFP+V9KOla/0+v8Fx1MDAwN9HBS7P4WM80g//0S2HPp/1o14O9eNmf8lx1MDAwNNJcdTAwMGbJl0Z7mmxccjLVmf4n28w8dP7kXHUwMDA32Wm2XHUwMDE0j4885Y3l97hLdW+vkPA14ulnXHUwMDE5TzyLcU64RoV62v9cdTAwMTjO3Vx1MDAxN+tcbnXC8X5jXHUwMDEzJjzudq2JXmruMK/MhnhCe3H80mi1PF3fw3223HZxX8aTXHUwMDFmP4RcdTAwMGLR2jqGjN2JOlxuRj19P6CM609w0pW1REjkQ02q5Mzl/ydcdTAwMWXsXHUwMDEwMtHyPuxvqGKHjGr8sb6OJ7VcXFwiITwt97DrrY9cdTAwMDc8XHUwMDE4xFx1MDAxM1x1MDAxZcl7XHUwMDFmw67YXHUwMDFmLkaZcTbTplSl31hcdTAwMTJ1XHUwMDFiqNmqre/1yPdPrT1OhbyRQXU0rVx1MDAxMpIjz+lQqNmI36d6xcGfbi3xUCvm0uv410X3oUDVl/LOoiPeTVxm/cGqTD6kXHUwMDEzOuIvVnMvb5Kn02+pWuKTvIj6XmthVyHyUIipfm+kxlNPJ9xLZl6S9D5CXHUwMDFiKdJsrt8rXHUwMDExV6lUZOy6zyWmcXRfjo+DUVx1MDAxOUNklO5Nn1P3wz7N9728XHUwMDFhzPWw62GyibeRXjjk93m4tzAkz1T/qcSA7oK1XHUwMDE294hiNlx1MDAxZlx1MDAxYTRmXHUwMDAzqf/MVC7iZ39cYlx1MDAxYdSY//P6wv1cdTAwMTOuKfBCXHSR9nDGi2/lTKba8vU9Pt7HXHUwMDA1/c8nPI65+q5eK1x1MDAxYoq0o6WuXHUwMDBljvtD4S5GgqC3NkiQhoB5yuyfh5baJN5AOFx1MDAxZVxu+zyFaMDjrjxcdTAwMDSyPapcdTAwMTLMV8lcdTAwMGZcdTAwMTlNv2ZG97XSPyla+ydcdTAwMTWeXHUwMDE0x+3+2kTz8V4ydVx1MDAwZvPM5VRmQt1cdTAwMDVcdTAwMDGYrnuVYWk6XHUwMDBi+FP/4Fx1MDAxY8v8049uyCm362WcSIWRt+NNzKKebLxfXHUwMDFkXHUwMDA3XHUwMDBig1jWncboz/OjO1PJXG6c62ImmpHa1NdZn2+kXHUwMDFmXHUwMDBlXHUwMDA1fZ5wXFxzP1x1MDAxYjT6XHUwMDAx7slxXapcdTAwMDWVt9xcdTAwMTmGXCIh/0so7Fx04opv4slli1wi3sy5ujVXpe7N0kSwXHUwMDEwrjF8/086mml7ecH9/7P1XHUwMDFlW7Iq27blXHUwMDA3eVx1MDAwMa2KaK2FXHUwMDAzNbRwtIavT2Lfl3nfPidbi0JcdTAwMTRiuYNNm2P0YWawrjmywf/QfMVrQbZh9IaES1x1MDAxM2bLTSxt9tm3ZqZlTePlOFx1MDAxNOYjKJ8gqiHjRJxiut9cdTAwMTmdeS5ccttcYi56nMdcdTAwMDBHuFjS/l2Epouk6lx1MDAxNd7/8s7+dm2VXHUwMDE23ZyCLNb02rBYJrRjznRcdTAwMWKQ5XTslPiKtb2GVFx1MDAwYpPZXHUwMDFlOu0u67TVfVHCa4VzMrXj+NRcdTAwMDXCjyz5X1q68XKl269cdTAwMWWnkWbUx1winT9cdTAwMWZW56BK01rHVXv9ZGLnXHUwMDAyXHUwMDA1Z3hJY+k+XHUwMDA0qrXOgdnifzXcJzldNbzM2dVcdTAwMTFq4CuNU+zKtm/rfX9cdTAwMWNs/Jefq1xmxzBya1tqQT2xU2pvRodR8DHUk6gvR2qIXHUwMDEySWpuRVx1MDAxMm5YXG5v7lDBVYVcdTAwMThB0tVGfFNcckpcclwifK9cItD/4iuQvZmLbmw7LyjXlVxi4zloY79cdTAwMGVvhSNgXHUwMDFiO1x1MDAxN4tI5JfodXdSXHUwMDBmtd9cdTAwMWVcdTAwMTBcdTAwMGXs1j9ylJtcItt9XHUwMDAy9cHTz8SrevRfTFT5kaLwKr1cdTAwMThcdTAwMWJuXFwg7XI+vkrpyljthFx1MDAwZsumZVx1MDAxNnfiR9rkpk58nnhcdTAwMDW2gfJhwlx1MDAxZHmuXHUwMDA3hOVEXCLos2mW5iRaS7x+h///XFw/4zLOe/2HclArT1x1MDAxZok4/Vx1MDAxNmdcXNLtamBcdTAwMWO08CzF3+jKVPHv8Vx1MDAwN1x1MDAxMKHTSZo/PoLiXHUwMDA1i4LzJ0W25PvoXHUwMDFkOEX/MeacxLLOy1x1MDAwMFx1MDAxN47UlL/GmUDt/olcdTAwMTWXq01ZucXMUt0/tc5UWO9Soj61tMcxplJInSmJejr006r+iy9X5WJcYtpRXGavWI7XtezK7F+WSl6S+jRcdTAwMDRF7ab++aGhXHUwMDE5I1x1MDAxNm7WXHUwMDFhyUbaXGKo6M5cdTAwMDDXSaOJI4DRf7Oe+eNo6q1cdTAwMWF8XHUwMDA3piU/JSQl1Tvz+Z/68StyITwzn1xmXHUwMDBir3BcYt5PQTTgJZ9cdTAwMDMk/03g3JEj9Vx1MDAwNYpO+i+/X0G70cBXXHUwMDFmjzg7/UTKp4FcdTAwMWMmMNCN9Y9TYNF1416xNO08+lx1MDAxNm1rOXONTVx1MDAwZuBJ/rdcdTAwMTaljiZbXHUwMDExO5lcZn6c5plcdTAwMTIrh8QuMFx1MDAwMu1cbs5jKdlVNMPriUJwU1xyRaqxM1x1MDAwZixVxojk2Ufm5f7n/Yo09d6c/Hu1qFBcdKbbvnmxQrnZXuRA8plcdTAwMTaFsCV+pM1Ui24603xTXHUwMDAwYbQqxoZTXHUwMDEw+++xg1x1MDAxYtpOTtG9P184M5dahmE9RZTwSj5v23zo24aJXGJcdTAwMTLOw/fpvFx1MDAxNaPyXHUwMDBiXqSYMTPzXHUwMDE2OKf/az7qPFohL6elPVx1MDAxNl7ncOjGb1x1MDAxMZyrJFx1MDAwZvjoycfx9pvFMdS81TJpPPHPe2wqRMqBvE3r/m92yauB/6IsSnRrdtNAXCJcdTAwMTVuXHUwMDBm6KavXHUwMDEzVKY1JNQnZlx1MDAwZUtDiFx1MDAwNGBVwuNwze5r/FlYloDoXHUwMDE20PjfmeqVrrGBXnVEiXeYP+GdRtTtXHUwMDE3iG1ebSSiRPaO559PXHUwMDE54mtcdTAwMTFcdOM3OPGlUzah5/TeXHUwMDAylVwiXHUwMDFmIab+/+tcdTAwMTJU2k94RJNcXJ1BhM8wzVx1MDAwMlx1MDAxYaGQXG7gXHR+War9Z9JcdTAwMDI3uqlsMJTsNLz0XHUwMDA0oXSJSvVcdTAwMWZlkVx1MDAwNYhcdTAwMTHl7dW7vUBcdTAwMDXa6u/5ayuZ7njoVVx1MDAwMURClFx1MDAxZntNXGI+UsLN2YZcYsBrVHNvXHUwMDAyXHUwMDAxvoH0iIr9n58n/c/n8XdZ3aLqoslcZlxmR1O2bz6wsplBVH72xoCcO/dlyWguXHUwMDFi3T3/c9zU18FcdTAwMTlcZlx1MDAwMuDCltFcdTAwMGJKUPsjylx1MDAxOMlRozrgXHUwMDAzukdcdTAwMTTxKM6hXHUwMDA1XHUwMDFlXHUwMDE5o4Vz2SHXhdRcdTAwMGZEhFx1MDAxODr/S9JdeaQ/UUwjfT+HrvSbP98qXHUwMDFi1emjwGpcdTAwMGZcdTAwMTSkXG5cdTAwMDY1oXm3b4lxtvnAXHUwMDExWJBeof/lQ6l80YuaV3+Mil3wuLqkL5e2hLn0SY3fzify/Cy/r4Bws7dcdTAwMDaEUz9cZu6HJYDe14e+9P/q+1rno7/pMWFcYle/Zdz3L1pcdTAwMDHCvHystaxytrvOl5PoYSvqTCflXHUwMDEx45BcdTAwMGXV1CtJXHUwMDFi/f7v61vY7J/+ylx0vVx1MDAxNPZKYLZccipcdTAwMWbp3J4sOi6z9s8w/J5BVTRcdTAwMDWbuo3Ijuj2KbFu2uVH+y/9/P3sN1RcIovY7Ibz20nVR7FUw5JFkUyE15Z210Z6TZpSjDW0pkzm5q2r0dvjM/xXYPfeSMI92s3tRKVhPrFziOJcdTAwMDBcYk8yXHUwMDFh0lx1MDAxNnfAkKfrcrpcdTAwMTnqXHUwMDFhVmouiPSR+N91bOiW/46c3j/Q0Vx1MDAxM8xB0aK3OFqlgOZrXHUwMDAz7f9cXFfvklxiaJ5viS7l4HNcdTAwMThW0+X7+v1rVI9Im3VcdTAwMTP9V99ntnpcdFxy41SRuW+Qyiz2XHUwMDAzJ1x1MDAxZjgpelx1MDAwNCZf27TP+NlcdTAwMThcdTAwMWJcdTAwMWZIwOqCJWc+LCioNKOc4pejw1x1MDAwZlfBXHUwMDExOP5nI/zpXWRcdTAwMTen4GZcdTAwMWGU0um9XHUwMDEysbCrP0bfcMkoKFxmXHUwMDFi21bAjJo7M+DFXHUwMDFmKvk9v6g//2vsvjzaUDQnUMJa8Vxy47dcdTAwMTFuYthcdTAwMGJR7Zv/oLqKRKOenWbKX+XAwHhq1Fx1MDAwNdfbaWD+Uzf2X1RRlfr76b+CfjGwd5NcdTAwMWbIv82wvqjpXHUwMDFhXHUwMDA213DH3pHf29qTXFw8itBi73FcdTAwMDfKXHUwMDE34FrL/++sXfyN281ioYhq04XvjMLM5VBcdTAwMWJFcjr4XHUwMDFiXHUwMDE47JCxfFxiXHUwMDE1W+nvfDVcdTAwMDVcdTAwMGZcdTAwMWPtMkkqXHUwMDAxVk2jXCJcdTAwMDXpXHUwMDEw/ej0LSr/aVx1MDAxNbIw8PJ7z/Jv/ptnQ8SSsPRcdTAwMDCUQi348VxyOZq0licpXHUwMDEzUo+F/iZcIs28gElcdTAwMDRUjivtXG5cdIXTXHUwMDAybHrDeln+r5pcXNX/mddtZ3+VX6FkdGCjXHUwMDAyYMic/bLprWHs5yGhYqRYLjWddyw2zS6CRiT6qPqv2tiuXGYyN010jHJcdTAwMDWJeddcdTAwMTbjXHUwMDE0QWlRP1pcXC5jXHUwMDEySVx1MDAxY8E42aJcdTAwMDa1yKLPpjzN+m3A0PhqMiwk/zmmjMLKjPDiufpl8kKDft5cdTAwMWGP+6Jq6CewwjL5dJrLLkdcdTAwMTGQwZXua2tTOFx1MDAxMtC2JMqLXHUwMDA0mP+1vmaL6qdST082UaUymkJcdTAwMWJcdTAwMWNqb2P40Vx1MDAxMFx1MDAwNHGyrWrzO06tmMjlWuvKsfxFbso6o8o1M2FtIaw/Ssj+5zqaa/csWZnkXHUwMDFkr4i/IUEmgOJcdTAwMDdKo6mrlMtehPiD7D1Z+1x1MDAwZsw5XHUwMDFjxY/ckLdcdTAwMGKsWMK3XHUwMDFkbyPeXHUwMDE1kFx1MDAxOIea9HZhXHUwMDBmzedn2axrVVmd6lx1MDAwMS+iKVx1MDAxMFA8XHUwMDBlXHR74HSPo1B2XHUwMDE3fFx1MDAxYtJcXNVcdTAwMTBcdTAwMTh/t+JpN9FpvSntOnf+r/bprC9PdPSyXHUwMDFlpFx1MDAxNH85amguXHUwMDExXHUwMDAzX65cZutkXHUwMDFhOnxcdJxcdTAwMDLpXHUwMDFmOLuLp2rie/tcdTAwMDFI3G6FXFyqK7pcdTAwMDdcdTAwMDD0fFx1MDAwZsGoflx1MDAwMFx1MDAxOGT9hJ6MlDOkXHUwMDFjzqzK2Ey/XHUwMDA1LZHUXHUwMDEyqdjOzn+Yr5dcdTAwMDS7ilx1MDAwNSpcdTAwMDD/LmGD/p0h9dFzlTdDXHUwMDE2wS0mWSFUXHUwMDEymKfCc0Df4KbkZ1x1MDAwMiDwjuWuffLEQV5cdTAwMTRcbt2BQGjnoFx1MDAxMdtyXHUwMDE2XGIn7txaxD5cdTAwMWNcbqlGs1x1MDAxMlx1MDAxZp6V+PnrbqJ7u46pvfJcZi1F965cdTAwMWIpq9dcdTAwMWKvwbh2qJ47+24uXHUwMDAy/sOf/8plt2u+uYx3UVx1MDAwN1x1MDAwMo+CXHUwMDFjM+FB/O9q/LhcdTAwMTUs6jrQXHUwMDE03q9cdTAwMTa65+AuuU5GzyFcdTAwMTfxV9pDpb55v7AyoVx1MDAxNf1KjKvRXHUwMDBiXHUwMDE1sj/ZatUpsmX9b11Jn1x1MDAxMVxc+HHFXHUwMDFiNppcdTAwMDTY1fzXXHUwMDEz9vlccl1uopxUiEJxJ2gzav+VU1x1MDAxMttxlZPu88alMJKeXHUwMDFh38iPcoHcUqykjuGtm/hcdTAwMTBfMPxJoOI/LEm/mYs2qnjfXHUwMDFkc58xelQ0vFHKXHUwMDE5smf1XHUwMDE5kz5cdTAwMTP+Nf6jnL3xXHUwMDFmp1x1MDAxZPPUhiOPVZ7YRlx1MDAwZovEaGK95id09r4qnGn/rVx1MDAxN6Xyllx1MDAxML5hv35V1SPvXHUwMDBmdoWJXHUwMDAz6PhZhq3QuVvUrFTyxfxr/i9cdTAwMTD/f9ZcdTAwMTdg9olSXCKgIO6muSO39Vx1MDAxZqw7qIF/viV4fJdcdTAwMGIlk1ax2LhcdTAwMTHOWcC9XHUwMDExplqRKdlaXGafs1x1MDAxNz9cdTAwMTNgr1Is5lx1MDAwMKBcZqXTV2dQguj/1o5jgzdcdTAwMTO57/dcdTAwMDNM1v2Qs3UkXHUwMDEw7uLFf6COzYPXiLHgg/C4nlx1MDAxZVVcdTAwMTiWzq9CzvQ8ROKXPsVAS2UgcX3vz0NcdTAwMDZ90fXf61x1MDAxNlxmrV2MvNBMrIAqmdw0ujFZXHUwMDEyhbI+XHUwMDFl7e5cdTAwMWJf68w06vplWFx1MDAwMaQrUHdcdTAwMTRIYpCuXHUwMDExWzZP11x1MDAwM9XJ0oXyXHUwMDA1blxmVur02dXfW1X+Y09AfbPibpOZrvhcYlx1MDAwNFQwuytcdTAwMDGuuJdhXHUwMDFj8YzFx1cjoPmKusBtVqpfXHUwMDAx66VCvD1pTJnTvjbrXHUwMDAwyHQt8f1dqj/UciuY+O/1IfYvp2+2qnxiM+8pcMTQL8m4ZV6V1JiD3USHUKRXy1x1MDAwN1x1MDAxMsnmW77EXHUwMDE4NrCqnsyauPvweCdcdTAwMGJoa2HO5KbdXHUwMDA3cH3jXHUwMDAy+9e6JMvs71x1MDAxN1x1MDAxY+9X2WacU+fNXGbMXHUwMDFhzpY42SA5MqtcdTAwMTCikGUpze6EekRcXI5AiiPr/ZQp1UIzeNlq/5QotNhJJZ3/5qrOZ6y3wCNkXHUwMDFlTCtcdTAwMTVTO5H3a1xmzSirmrtcdTAwMTBAXHUwMDE1efZPe5bw1VrqLn7IXHUwMDBm98VkaTBBe6VKXHUwMDFlqpZcdTAwMTf/lftcXFewVVLm2SvbNe5cdTAwMDDtPFx1MDAwNKqHnjGdRSA3V486vsu85HDm5Y9MQkFMIFO+XHUwMDE4TlxyPyqHmoqpgq9e/d+br6u51kbxRVx1MDAxYcPjXHUwMDEyM+mBlJqOd9KAd1x1MDAxYvuZvkYku5RcdTAwMTSV/Sqe/1lcdTAwMGL6+1lZN1xusack49w2VFx1MDAwMHw/kbuy6L9qxtBcdTAwMDPdgt3rbyf8veBcdTAwMWRxR+NezrFtmK3zNFwi0Vx1MDAxM6lrtqD+wJ362Vxm7nGAXHUwMDA1QPFZqnpNO1x1MDAxY/Q4ipj/1zz2Lms03+vMs+M5WMRrOpKGNXh4scU/czjrW4na/P2rST+S/ep7rCmSXHJ4hJu0gT9Cy0lx8Uzca/lG2JK/uH/1elx1MDAwN9agorNcbqtikbFcbj1cdTAwMGXnRqhiqkCkQip/f+dy2lx1MDAxZkg7XGIo0lRcdTAwMWPqtbRcdTAwMGKMbqWa7+RLpFx1MDAxNfGpZoeLt0bzh5J37Spk7vB+ZDuO/2KSSkFcdTAwMDOZsYw8lGNcdTAwMDK6JNJcdTAwMTDGXHQ/i1SqXCJ2RcdcdTAwMGaAYWBcdTAwMTaHrlOXXHUwMDA27+9CMZXj7f/dQ5iPIPvJINvnfpXsrPKbqLny//bsXHUwMDE2okcmK+9cdHC6n9xcdTAwMTenw4/g9/N8cGaYwfKsZkHqMrXad89QY/ZaVrH6mV6gWdu3XHUwMDBl8TuQ7UH8XHUwMDExXHUwMDFh8O89yIpcdTAwMDZZXHUwMDFmVGmHpalcdTAwMDfZ9u8gTFx1MDAxZfx4M1FfnuWiMt1+0kLv8cA1S/aVyVqkXHUwMDE2wbqKtjChn/ODbqlcdTAwMDSQ42gnvpXP/1x1MDAxZI5eXHUwMDFk+Wl8/eHbnD7C5Vx1MDAxNMzlc9GlysK91ikxs1x1MDAxYpbtRTT8I3VJi7Sf0Fx1MDAxYZ5cdTAwMTkl5lx1MDAxMIBhIVx1MDAxYv/ed09kIY2cXHUwMDA2nXCyXHUwMDEyYfq/9oxTW/G8iNVJXHUwMDE0+cpeM2Po0fSyu3JJr6HTtvAxXnQsXHUwMDA0XHUwMDBmXGLacsRcdTAwMTJL91x1MDAwMWbGilx1MDAxNIr2zNmsTN+lu8GXn+F1+LevZV6vyGzMwXzKpcTYOfmDijqB2YFzJTUtXHUwMDE0JptcdTAwMTFXWVx1MDAwMsX0ekSF4Uh/T3tzXHUwMDBmrSlcdTAwMWGUJoDpTUFcdTAwMDSCgFx1MDAwYlxunb/k1v+lRfHb9GTyUmg5XHUwMDEy0XRYMVx1MDAxM+HocNmVq9OeucmglbBcdTAwMGIzlN+u5LTLXaDwXHUwMDAzXHT4QiCvN+zXQFtcdTAwMWJ8KNIvMOXF0l7fnu7vkXXxvzNpvb7FlW6FJVx1MDAxY3vwh0tbM/Cr02ro1VP3y9TljYNcdTAwMWVcdTAwMDEvXHUwMDAxhuFcdTAwMTj0ILaeu5I9xlpxXHUwMDE4XHUwMDAxR8q282EpkfB90jA9M1x1MDAxM7KgIT2enn21XoUvXHUwMDE1TuRcdTAwMTZcdTAwMDWVjapf897QXHUwMDE51kJcIoRcdTAwMTGQ/eZrMaRcdTAwMTM5+1Zer1x1MDAxNYn926uUs7Yr8eajw1x0XHUwMDE4mXicjs9cdTAwMTiRk7yVK2z5XHUwMDFhq1LI2Vx1MDAwNTSjcpKm77dLXHUwMDE0XHUwMDAx9iBQgIg1P0Usl1xmt7RJKTSgnfqsM1x1MDAxMby2XHUwMDAzveqwXHUwMDA3546iXv3FOTx8ib0/pG1WkepQX62By5hk/+1cdTAwMDdcdTAwMTdjVu9fVXVhlE7nIVx1MDAxOcpotNGvdFxcKp5cdTAwMTDTmO9cdTAwMGXQUabhgD9DvKcwXHUwMDE1XFxnu/ZcdTAwMTUsjVx1MDAxOPJcdTAwMTFQy21cYlxuiNLjXHUwMDE22KuErVKjX4PExz1cdTAwMWJXXHQmyGA5Q+Lbh+v64i35Sr18hP/KXGJV9Vx1MDAwZd9oK9PokFx1MDAxMjRcdTAwMGU6Mmw7f4OxTsWAIEs180GkRvryJ4pAIfO2eWh+ZXvFXHUwMDEzXHUwMDExsveD6cfc05CqXHUwMDA3w5SL4OzjPOrQhETSxezQXHUwMDAxavJ3XGJpuHQm+te6Qi7rNONXXHUwMDFlxHa0OGZQXG4kZJqpXHUwMDFm8OvTcevtUFx1MDAxYXduZvlRklxma+3fsK9XRdvTMVx1MDAxMeRZoTNAXHUwMDE36YBcdTAwMDAmXHUwMDA2nnX/8q3M9Wg6kHlcdTAwMDSuafH3zlx1MDAxNqJcdTAwMWTeimr9k40wosFU6idnmfZz4lx1MDAwZthcdTAwMDZcdTAwMWNtXHUwMDBiiSenJ+9cdTAwMDDWlTVqq199hIPDWvv3r150KnekmWlsfr4sI5y6tFx1MDAwNXFyK0zU0lx1MDAxN0uQsVx1MDAwMah+/OVLPqqQfD3aVKTdazJcdTAwMDa1JVx1MDAwMq7ZXHUwMDFhVrCo7vTJbG//cb3GP9d7/XO9OlRhXHUwMDBm1l+5i5dcdTAwMDdze3nPl0tQaSg85Vx1MDAxZvfl31LlIFWFiP/ZKFhQXHUwMDFl5T7QrIP4PHCXy0YwXkHEf9S3/ae+y8hWgVx1MDAxY1x1MDAxMdw9XHUwMDFjXHUwMDE57Ic3olx1MDAxNzu8XHUwMDE46VdcbjtlXG5UbMbBMfWWQad6pNnrLo3i6dbAvlCI41x1MDAwM2RwzJ/tf+zV13979co0sXQuR4vy8sVcdTAwMWXQY2d1bYDX6Gx18/ApQNc2mOaDXCI/kpGMpCqyrX9ccn1cbqzvK78ybf5rzZmhu7OzK857xWO2r55cdTAwMGVCk/rQxlxuxVx1MDAxYnxDhdKgXHUwMDFhadtcdTAwMWHSsVxmXHUwMDA05lx1MDAwMoR8XHUwMDFlQn4jXHUwMDFmjItcXFx1MDAxNKO2i0tcdTAwMDFnh6x8O7fu2f9aXHUwMDA37F9cdTAwMDKmXHJeXGbp3rm/Ws8gKuuxU26mW1/U9lRcdTAwMDSARiXUrIHdcFx1MDAxY+b2sVx1MDAxYrok4MePQYfYmFx1MDAxNn3OpKr/9lx1MDAwNv69rlx1MDAxNck+zYCV82UnTomCLuFcdTAwMTDB0ktcdTAwMDZpjY0r2MQrylxi/Lnj2yaQOVx1MDAwZl9NN78o9vo+PIx88Vx1MDAxZvdP/WlcdTAwMTPnMUOl/LKuxp5ns1x1MDAwNDXX32vEnfiyXHUwMDE4XHUwMDA30Fx1MDAwYqWYUaP9Ok+BTaBsaXTIULGRguO/1yfQ11bo2VWGjqU9XHUwMDFhfcV7XGKbXYV+0Fx1MDAwZaeCXHUwMDE05uJcdTAwMDTPgYd75Opw3Pi1RKpUVfnx5Stn275cdTAwMTNcdTAwMDR715WErvz/e4+xpf+OqPzYtPJHRuf6w6ZcbiyILOLXzVDMWq5lg+JcdTAwMTnAR4Et4Ffrnoj6NJx6kfyq9VNq8N9cdTAwMGI0XHUwMDAy4Kk90unD/7NnaURW+s92MJ7a0oX90rlHW7w/u7ZHjUhO5mfUZIMtecpgmFx1MDAwMzdkl0BgYFx1MDAwZblcdTAwMTPI37sheuX1/EQ+X12p20FPNpWn+1x1MDAxYVxuzsPN6EdZsrX1tTq8cUHwzERH0jesVziAZbKdpY9cdTAwMTRTeklb70Qtx3/utaWFUfCNactVdSYmXiVdPihos1wi37lcYvsgXHUwMDEz5Z8kqMmNe8rW7qo3J0r/nCFKXCKeZNa+i960s+/Qr9XhWKRXL1O8ZsWtI+x/h13uLtk/UDjqMf9r2l1UXHUwMDE3fCeCMknl1pGPz1x1MDAwN2WzJlx1MDAxMGVXqP7yRtzocKRwXFzAZndpXCI57OWqNOPmkTNcdTAwMWWRm6qWxSvrWGr8sHj/mdTCXGat6ddcdTAwMDSa1GbBgFxiiiz//rk2nFx1MDAxOYVbjesnLPOUgdy0UiZcdTAwMTKPXHUwMDEyomvW4JVqXHUwMDAybi35U+DO09s3XHR1kChfL+FcdTAwMTiXT4lcdTAwMTj/P6y3PIpP+NVFylx1MDAxMHV7hq+TpmuLp1wi0G8mXHLm5Vxifv51cu3YWMHbZCnv0p5cdTAwMGbnklx0XHLWXHUwMDBmNlx1MDAwNXHHyqWLgehcdTAwMWU/KKa8sPo//W68WuJl700s+uGOIU7diW30IJ4mXHUwMDFl8I3W8is+sFxuXHUwMDFlXuAhgfz6I1FQciGYaeSlXHUwMDFkMNBcdTAwMTepZbfIkc7odjS/8b3QXHUwMDBlXHUwMDAy6zvlNX1cIuuwXHUwMDAwyeCtd1wiVGyVXHRcctvfLb+ycfU/vdbZylx1MDAwZiRodVlWTZb394vndXZcIlx1MDAwZYGH753GVNpcdTAwMTP7XHUwMDE1oVx1MDAxZdL/TuIzNaiVpa3ykUHGrppv5TXYwzKWWuS4PWqVd4aGXHUwMDFlqTyj83BM8nu1/qOTQ+1W4pl0oy9cdTAwMTGU0KA8dYx98DZ2SMveaJTZvnMsJrrv9Uebrb9szXq3aj+fcjCXXHUwMDEwV+wpgu+bo0dcdTAwMTeR38zXnLTgMlx1MDAxNjVW3LRXnKOlaVxcXHUwMDFjc+NEh9j3TZrnXHUwMDA2qSym1FiGlKFcdTAwMDN0vrZtaFx1MDAwMddqXbLXRUzPXHUwMDBlQSh9zHCxXHUwMDE4vcEo7yzB8JJP0d5cdTAwMThTjTYy6b9cdTAwMWZ7slx1MDAwMstcdTAwMTiU/I5cdTAwMTUjM7/1MLLPUv+av9pAXHRcdTAwMGY/rzdcdTAwMTCU521JrjdcdTAwMTixr/lt+KJ/o1x1MDAwN3OgWVx1MDAwNfBcdTAwMWVcdTAwMWaPb05cdTAwMTO2aFx1MDAxMrxG5/hOPVx1MDAwZafPIZhBYSaqN3S9JHpcdTAwMDedP3+tavKf+fnPXHUwMDFhYqDWYlx1MDAxZEn7sF6siC1jj3w9ey/yR/bDh412wdZcdTAwMDFZYz7yT/Zs0W245LrZjlx1MDAxZFx1MDAxNZZcdTAwMDZcdTAwMWGppGm6ovmOt1x1MDAwM0+RKs1cdTAwMTmQXHUwMDE4z/FNJFx1MDAwM/H1gFnNXHUwMDFi2+ZO2X9hXHUwMDAxrP6n/uSD7c7LcjvdXHUwMDBm3jQv99KpXHUwMDEwucK95II4Jyak++rJova+vNTdbZWIUfuAXHUwMDFh8pOtaK6apzF+ujdcXFxcmj9LXHUwMDFm7seFxlpUtDlAO/q0+OP/M5a55lVFs9KWmilcdTAwMWRcbsdag4rAiOZccmNcdTAwMTI8XHUwMDAz/TZdvNiQm3yTXHUwMDA1rDDiSkhhmLwkXHUwMDA0lFx1MDAxNqZ+9G/z9bdcIlx1MDAxOH1A9Pgpe7Nkn0dcdTAwMTNMeSp9Ts9rxSySlFx1MDAwM7KkI+692p9SSp8yyjjY9Fx1MDAwYrzfXHUwMDE0Ky1cdTAwMTTT63SfavXjXGLOXHUwMDFiccSdXHUwMDFkvJuQQ4B9IXvfx1xcXHUwMDFlllx1MDAwMVx1MDAxZVx1MDAxNur526w4SVxiIVx1MDAxNbRwnEzDxoJcblQuyKGQs26MNpyqnWIuJozYuIKZiV5cboX2XHUwMDFhbf+8n8JvMIRcdTAwMWJWXHUwMDE3XFyZXHUwMDA0f6shXHUwMDFissjiYOgtXHUwMDE1sVBccj3a2pLTRTRURSSL0vaqPK5/hVo7w1x1MDAwMOE63/TaXHUwMDFm+mV8jc6rl2rlXHUwMDFkNI5Z3VxuZVx1MDAxYTDn26V4fN+jIVxm/Ghu+bIyjpeOUOJcdTAwMTBl7tLYXHUwMDAz7PRcYtTN7zTmuz39Qy3XXHUwMDBmloFY7nLX2/ZvMPC5pnNcdTAwMTh6jlx0Zq2K3s+aOaJcdTAwMWJfXHUwMDBmv7SuXHUwMDE4PFbd1W6/XFxLIJBA7Xdb0G+RzHNcdTAwMGJkq/5waetTr1x1MDAwNZFxXGZDhFZcdTAwMTVJzpDf3lx1MDAwYtxcdTAwMTb84n5VqKVcIqmIqC11oTC34c2Ux5XZXHUwMDFhJFx1MDAxYpAsoVx1MDAxOFx1MDAxZWJLm33gXHJy5rr2P0/dZnA0h4FSfZ7W914/q2/8ZOq3eDrrXHUwMDBi7NvjJDbhpZtKSoDQ2iShRINH9U/FpFx1MDAxY1x1MDAwMr+AhZtcdTAwMWagOKTmSox8TjRm+t+zTokhXHUwMDAyQap6u6ti7uw7S9YrXHUwMDBm5qkx4FxcV9nDsKzCRitD21x1MDAxYT5cdTAwMThZi09RyOXw8lx1MDAxM9BCTZ1Cmmzm2PXs6kJcdTAwMDZd/epeVvx4/H4zTFXr6t/mLECQMVxub+GxXHUwMDE1XHUwMDBlwDFcXFx1MDAwM/Ypet1cdTAwMTN++vfl3Gc+ncTL1idpiDm2ze9f6cphrUmhrob2XHUwMDEz5XncaumuJcH+QOKcK8epLkO2VEpcdTAwMTE3XHUwMDE2/Osl8tVcdTAwMTTCrFx1MDAwN/0nt6fgslpysVxu8UNcdTAwMTk91dLr0Cq9PeWfNkGV5L6KIPOT7DP3np9fr67F+DEz1uTiNlx1MDAxMZUtXHUwMDBmXHUwMDAwe/VDo9uJz67+k9+ENFdT/+Lolla5MJuC+XDazsiPOzJRa1x1MDAwMqZqc87XeI+D2kGkd3mFZFx1MDAxNbrLo1x1MDAxMaZcXJZccm9cdTAwMDdZXat9TFx1MDAxOTbe7GtcIl96UzhcdTAwMWGrXHUwMDAyNJR59PNDYKlR8PRmyeJcdTAwMDfEVlxyWtXLv3bIiEOYSPcy7IzNoeTbvJtIXVx1MDAwNWedXHUwMDE0nXspR70wzSD9Y/R4t+NabTDw4ufTw+m+JIQwkLSlXHUwMDBm4FxyrVxm9/biz9u89F8/jFx1MDAxOfs2uVHUfyvfTVWwKr84X4c05/Exd+hxsexNlmzQ19FcdTAwMWVcdTAwMWEtgsv60vrQwbVhdkD3XHUwMDA2zElcdTAwMDDvNUcvkDqKmfDSNOMyWYzUMixcdTAwMWOFwJqYj+p/+ZMsalRbXHUwMDE3OYhcZkiRyLzvgvJcdTAwMDNqI5GKoZcnV3Cvsp9cXP3MYkDzXHUwMDAx0EZcYjXBsm3e/VxcyXVcdTAwMWHo78dM4FFSYCFcdTAwMWO4XHUwMDE3i3N9VUBUgmpcdTAwMWWfQFx1MDAxZrSEc0ruXHUwMDFi4WbnXG5cdTAwMGW6XHUwMDA1XHUwMDA3W0ytYVx1MDAwM4H5vXvsslHksPFaaaBtxtlcdTAwMDdcXPHym1xcX+FJnzePXHJH7qqqXHUwMDA28VxcumsnXFw7WMGhcpmLklXkXHUwMDE5XHUwMDE53nyxYkJKzl1cdTAwMGJxXHUwMDA066qnoLzs6IKs+4UlnSenQZdcdTAwMWHNlG7QIOTkJKYrkl5cdTAwMDLos9e3vqqr9aZ3ypFcdTAwMDJLNb3p0eezz1x1MDAwZXdcdTAwMDRcdTAwMDS73kjXOp+mRFx1MDAwNZyTXHUwMDA02WpSXCL/O8yUwP2EmcP9VfmT/Wlmctif71x1MDAxOC1Bk3tcdTAwMDD+d1x1MDAxNqrhOWt7XHUwMDAycziAKzD+nlx1MDAwM0h3y4zqqiSdWzti71x1MDAxY/xcdTAwMGYvjuPbO9lcdTAwMTZcdTAwMDI1jcBcdTAwMDJLwyqnSy80XHUwMDA0/7N2W4SkR+yNhOo/zk1b7UtcdTAwMGZcdTAwMWSqV3tNW8w61HP29tdO2lx1MDAxY1aTqUWC1EpO41x1MDAxYqyQXHUwMDA3wK9cdTAwMTRcdTAwMWbIXHUwMDE5g0s9TzT3zcvg0lx1MDAwZnhAhlxiUHargmK4RDfeLn1cdTAwMTXq8OtcbtSRz3eWXGLRgVNUu1x1MDAxYlx1MDAwMlx1MDAwMfxERlx1MDAwNybJ6NX/JoXfVuVpu1x1MDAxYUirdab1UYLANJhf7NvQnFx1MDAxNGBXMl9gST7FN+UjLiFcZlCj1ko+WtpcdTAwMDD88KKwbVx0pEeFTKiCe1xu3IVi7mhcdTAwMDFr8/RWpeu7lFP2LYMxTzLrr3aJ81x1MDAwYriXu6Iq0lx1MDAxNs5ZP5uUO395bCV6jH3z9lx1MDAwNaNcdTAwMTbTqExd/X7fkfsxg8p5zUxcbj9mpVx1MDAxYeXotZN6QU98iVx1MDAwZfonp629X3u9QPtDqHVcXOXy22LF41x1MDAxOKKHM1x1MDAxZZfLXHUwMDBiT1lcdTAwMWLGb/qh9Vx1MDAwZlx1MDAwMTXFOlnZ2PR4e6aByjk43e9FUrTpo/emg1xurqJcdTAwMTJcdTAwMTc1ey7L4GhUvHdgK/VcIlxmNUyQy6zTbqHltzJ73spF2iV5kSojxLXMhlx1MDAwN93LmE+hRSr2p6zIRbuHXHUwMDAy7NXaVsGHh6lGoMd2oFdqNmKqXHUwMDA1tovNQsCjQsLHhS9Uylx1MDAxY5zdXHUwMDBlKrJcdTAwMTnJYlYv4lx1MDAxNFRcdTAwMTW09Pk7m2NcIn77p/D++Fx1MDAwZZ23r4vzRlx1MDAxNvPcP9+Ciz6HaierL9NcdTAwMTFxb/RvZXi2ceyKyUiClueSflU5vtaeVCo0W98kXapS3cJF3LVyTH/iXHUwMDBmrdhcdFx1MDAxN4hcdTAwMDFw+vY93UHRVt8ldz/FYdhcIuyanYa9qaxj96xyXHUwMDAwXHUwMDFhpjWT8I+c92s/+8vkXHUwMDA0kjx12/ZTxSpcdTAwMTGUR/5Nerc27N/rkTnwJU7nO3Tz/NlcIpCCxlx1MDAwZkevju9cXG+25GLz/z1cdTAwMGJbo7/GXHUwMDFjXHUwMDA03KyP1JD5XHUwMDE3fa6CPMC0PyRcdTAwMWRcdTAwMGK1xz/CsznHXGaWr9JcdTAwMTOh0E5cdTAwMDWZUb/4+dJcdTAwMWFT7nQjol/JtceMiWhxhoZcIoh1/KDCd16VsaR/cv5cdTAwMTGt7y9cdTAwMTZY1pNnmWFD17d1XHUwMDAx8k7uh46oWPrjizX/5LmkIYD6fj10XHUwMDFif490/qJBzye6J1xuXHUwMDEyRVx1MDAwM+hLvZ65w7iKXHUwMDBid7emcKrA/3NOdc+NUr5UXHUwMDFlXHUwMDE1dVx1MDAxNd5cdTAwMTbJ2VufXHUwMDFl6ytcdIO/Rb7BOFxuSKQpKVx1MDAwNsx0QfmsxpBfll/fUlx1MDAwZtRcdTAwMDT6y1x1MDAwN9NcdTAwMDA44y9o4/11XnZcdTAwMTRcdTAwMWFcdTAwMTFpXHUwMDFlPmNZR67qdIghUnNcdTAwMTJjXHUwMDBlnlLvisMvXHUwMDFhXHUwMDFm/1qpnDFCfqQyt0zdNlFqtID4aqMtulcldql0XHUwMDBiN8OeI8lsvZlcIsWUXHUwMDBlmWtN3qnuYcJZ/JX8Uo9TUGK4XHUwMDAzK/pcdTAwMGLL3MRcZmE/mCPPt7ygPiuyQ6Vcbn5f+o/uXHRZaLNcdTAwMWQ+hilpNEhcdTAwMTU8Jy2FtzHjXHUwMDE3QuJcdTAwMTU1MVGdJrpcdTAwMWLfXHUwMDBl9fYhr9DRXHUwMDFjfDZcdTAwMTT/WF9cdTAwMWWhun8uTi4oXFxcdTAwMTjbVrlkhs/03SY+1CZcdTAwMWbxT3+zldJY/IBcdTAwMTk0dlx1MDAwZXw40r4+/Vx1MDAwNHlFt9B7quWw/OhSnEou57woOqyQbv9v/SZMSlx1MDAxNHvyOrD0XGKU27D/8s368WeCuEA0bY1i6ef5XHUwMDE1nlxiXHJcdTAwMTe/r0JbxlxmYN1cdTAwMThgNvPdWC/rI0Y7l1pcdTAwMDE1jTWt8ryex0HlwrTLfOnVhpAvQkBcdTAwMTamn85cdTAwMDP7/sPQTuR3Oam5Pvq7NYsz9e/YYGKIzGG08OjxY1x1MDAwYlxijVx1MDAxNF/mzqehmf20RZ3CO7Vtv45cdTAwMTAxZTv6XHUwMDFmlUT4cL/7d579Lql5wL5cIk+v0Xg2q/YjZ0w6XHUwMDE4XHUwMDFjXHUwMDEylt9cZlx1MDAxZdLdiXffdkjee4jtN983lX56OluzWNE0o2SIsTvtmv2SlcRSyVx1MDAwZqRcdTAwMDdWd76V6eWEnvGftTM5Rb5cXJaeXHUwMDE4Xlx1MDAxM1x1MDAxOHJcblx1MDAwMFxc/UHGYZhNR++/XHUwMDFmXHUwMDEwLH3+x9JcdTAwMDJcdTAwMTLqLvhDZ4mFhU2I+V7TfM0u5d1YmDvgZ1x1MDAxYS2CzH/TKb0yJmbR32D4XHUwMDFjnuBi0Vp411dGp0l/tWfx/Fx1MDAxZZI4IHuzcU8lJP79eif9/62fXHUwMDBlc1aTTEwstLDPeHNKYFxyqFx1MDAwMJFcdTAwMGVcdTAwMDFcdTAwMTZKjCnMtJVzsVBzXHUwMDE4geOQRVx1MDAwNowuXHUwMDAyaZ6kmHBfb1x1MDAwZv8tsaZqjzKgkv929c7fXGZVy/Ki1a/O/Iqf8eSuI1xiq/pTXHUwMDFkcF5cZlxiq8qb8Xvhg0YyhVxifFh5QqSsacdWdHhcdTAwMDZcdTAwMDCfh6VccoR99F7vQmJfxDlcdTAwMWOVZ1x1MDAxMvx+85F4ZJ7095/mXavhmjny25lcdTAwMGXdXHUwMDFh45T6/Eu/XzgzgFx1MDAwNu/FeLSo+Fx1MDAwZT+RP+bxXHUwMDE1zetH0I681Vx1MDAxM9o/XHUwMDFiSe9q/Fx1MDAxMvWbp5zK2ZmAwoPyXHUwMDE0oLCV/qnrXHUwMDE1/Fx1MDAxYVB7/Vx1MDAxN8zEZ/07esx/uK6i70hcdTAwMWFJuqyRm1x1MDAwN0twnrVcdTAwMDOBUTyEtMZHWVx1MDAxMGp+6s9I0L7k1CdDNnVEXHUwMDBiNecomnclrn01vz0nrNdZQJXNI18mnNjN8mNcdTAwMDHOXHUwMDFkwy8jXGb7RiEyn6VHw0fHsvJO7d1fv1x1MDAwNFx1MDAwM3xGpZV9dmgzc8KQxFPk8dwrpkCbLFxu3lx1MDAxNGGIJ1T+O8O8i1FbkN2Ojk2nVlx1MDAwN1x1MDAwN47fXHUwMDE5Slkpj9nfbyCHlVhpzKmCN1x1MDAxZCxcdTAwMDerS7lvIfj7XHUwMDAxcXdDn8jivd/1/YwxXHUwMDE5hlJcdTAwMTZcbmU3qlx1MDAwNG58XHUwMDE0h1x1MDAwNMCKXHUwMDA241wim2aMvNpV4DpcIptcdTAwMTWzhVx1MDAwNZ9ZIInA9lx1MDAwYvzywZ6QxFBSXHUwMDExXHUwMDA0xUYylOgt5Fx0LXDPQdOBTnw5uNViRVx1MDAxNbLvjPnlRi2Wd0zdXG5cciGbme1cYudcdTAwMWFcdTAwMTOmY2yeffTAXHUwMDE1aH76KiE3NlLUXHUwMDFmQVx1MDAwMIZDgYe7sXqo98OW5CR5vKZOTVtcdTAwMWH3gCh3tqTGiPLalvSRp32F9bNNlLGgX8ZLeaRcdTAwMDdcYmD7XHUwMDA0UsjkYSZiWkZvv8dUuSnBc8X/Slx1MDAwMPbrX2RcdTAwMTkyXHUwMDEwr21cdTAwMTnaV1ZRystcdTAwMWJ8fiDC4O6YM9tcdTAwMDZEI9wgXHUwMDA1XHJMaK5IXHUwMDE3IVx1MDAxMEqmluZ+gi1k5pRcdTAwMWbox1xuXHUwMDE4xsX9Y0FcdTAwMGbh/bmwpe4kK69e/80zXHUwMDA0NUQj5axnrFxm/Fx1MDAxNGPgQt4oSFxco8z1yFdDXHQ4yuFYgMFcdFx1MDAwMaftcDH6j6ntWsTEmDO+u+QtMimn+7JcdTAwMTBcdTAwMGaFkoUmjCSC55vyQatcdTAwMWJcdTAwMDNPljQ7wuqC0euyY0mK0sNCXHUwMDA1S1Kj/TvLJ7LcXHUwMDE0XHUwMDFmYLLWWVx1MDAxNlx1MDAxY1x1MDAxZZVcXPud5vpoVFx1MDAwMP45tSnKXHUwMDAwQr3sI5FcZt3YXmY3zvrk4PpuwTn6e8hcdTAwMDVcdTAwMTB9XHUwMDFlx1iRw2e521VcdTAwMTQ+v/WKP465PHR2hia90ohcdTAwMTPSXHUwMDA2s1xuV4NLqIhcdTAwMDVW8vOZXHUwMDE3S4pcdTAwMWX0zsNcdTAwMWF8XHUwMDEw5lmJO1TLXHUwMDBlllx1MDAxNIdcdTAwMWFcYrY0p/TvN49cdTAwMTJId/Br2Fx0cyS1Um7Izptj4+DR0vI8Pn2TXHUwMDA0XHUwMDEx/lx1MDAxZPaUZijt1NJFXHUwMDA1LUEht1x1MDAwMIBlmvKTyI9o0J5/lHjONlfq6SM6t7riXHUwMDFircVLi3BcdTAwMWOylNBcdTAwMDJcctS9bN9FaIOVLyQuMYZm8nxcdTAwMGZcbuXTXHUwMDAxTaRcdTAwMTDOb2c6XHUwMDA0WOFAKjRrWdMj+VoxM3ZQwuTPoX9QtvnAKoNcdTAwMTnkydbBuY9tVlx1MDAwZim+dWFH/u9adrmL7mhmMo3QSL1cdTAwMWJn3JhFyc2D9kXEpUuejNtcIqR7+uTRwFsqRp2FoX1f7mNitHrxJJYmgFx1MDAwM8nxLy392mQ+1Vx1MDAxZipccoQ98FxcZf7gN52xRyeb6v55ft+VM11vKLJcZjdcdTAwMGa8w54un2ex21RcdTAwMTW1L75cYvA34oHk9+/ROf2nbVx1MDAwMHay2PsrRsLFhlwicFu+klDUwmx1Wmblo2hi3lx1MDAxMkSlMVx1MDAwMWvvXGbfsuiuo1KqXHImfultXHI0xGAhISR7qjri65ltwMygmJInL8mHTcMpxVx0XdePVU1JJEJpb3B/VOyDXHUwMDFhUDxS+nfo154ym1x1MDAwMD942WqNcjgjouKcXHUwMDEwT4thMXHDiVx1MDAwYlxuXHUwMDFipvxcdTAwMGIwXHUwMDFhTT6Ta/s3x5refExifFx1MDAxMVx1MDAxMT48d39cdTAwMTJKXHUwMDExNKT6s55cZrAsYfYzglx1MDAxNub4V9dsXHTRZrXkXHUwMDEwOeTp+ORs2nBI1bkz0H1cdTAwMDXC6EfvfDZodFmQXFw+XHUwMDFmI41FXGLmbFtojkH3ZZ7qrL+3ur1Grlx1MDAxZdBCa3s6PZ9iXGZs7/23Rlx1MDAwN8//nLmd89JcdTAwMTKymqA5Y5Hh81xmdDHA2/ZQp1Jr4deyz0BmiN3JX8licSdNPzRsKFxuzmpgI1i9T1x1MDAwMLujc1xu7tirT5c/VOfQ0HhSXHUwMDBm3caIUuFcdTAwMTmN+i5cdTAwMTlcdTAwMDJnfaT+wVx1MDAwMGDReCghiNbWpltcdTAwMTa+XHUwMDBm5cXTgktcciFpQUviSFx1MDAxMi5MophYseEkdDpy5GMvPVxyyZImvSx/2Vx1MDAwMc5JXHUwMDAw+KafVpnQJlGl8e4nYPyodm3pbWLBvlf3aFx1MDAxNVx1MDAxZoFzxr+TSHtraFx1MDAwMpbuRVJmstpcdTAwMTPVN1x1MDAwM9fZRnOAblnDxembXHUwMDA3ckj6XHLaPJmgv703VzCkZMvx6FxytFx1MDAxMfuzXHUwMDA20lLOT4FcdTAwMWL6n6eWwV7EU2lNXHUwMDE00G7eXGZG2q93QFx1MDAxNf7i0YF+a/JD3Ouh5oRcdTAwMWTPUFx1MDAwYlx1MDAxY3vzeqHweailXHUwMDA3YVtcdTAwMWVWp6z+Tk4ki5B8fDHlqMZ9x9Zid8+zUqePq8BHun5ccmZcdTAwMTXSllx1MDAxM7dVNmT4XHUwMDE2ZFZSOaF1XUaRyL/OSimvxt9cdTAwMWZcdTAwMGJajHhHZG5/5V3wU4+TkrvbnGL8hSasOaFcdTAwMDbBXHUwMDFmSlx1MDAxN4dcdLdpPSd5dnpvPMMxOFpznFx1MDAxZfo5ooZC9fZbw1x1MDAwM3f3y+5Q33bhyVx1MDAxNIxUkyd9hVr05Fx1MDAxZcJcdTAwMTHncVx1MDAwNitcdTAwMTbMo3aVIVx1MDAwNVcu8J++oVx1MDAwM1x1MDAxMvGgi1xuSEqIgqSJiMrdTr5cdTAwMWSMQpKkJVx0vWhB+uknad6NxVx1MDAwMMxey5fB26O483usbVB49Nvmrjj5XHUwMDFhqUVmblxu+WyYtEb6etJcdTAwMGapW7/qtEOGvpjhJlS8XHUwMDAzuNZOJ/wxXHUwMDFm31x1MDAwN4x7jVx1MDAwMj3883pII1NcdTAwMDAuSYNlgqffUXNcdTAwMTL28ZPygJrb1IxcdTAwMDdZ8FbFtJ5cdTAwMWbARC32XHUwMDAyXHUwMDFhvYhmdiP1XHUwMDFiSZTnYfTyedhGXFzwOVCRz1x1MDAxZKif/KtnN1xy9/4uXHUwMDA0bNfG4/b0sIL7XHRoXHUwMDBiNZaTXHUwMDE2NFpcdTAwMWbF1ehXoiWnXHUwMDAzcCiz6JNJc5bJxFtcdTAwMDC/Mt+6IG9cdTAwMTOO7TT3kazXPlsn8+uhyt8svkmr2nt+/ZayYXhrTUM4fFmUbO3fXHUwMDE5XHUwMDBmJ5dYispvvc75XHUwMDAyzKXGepOSKzpcdTAwMGJflbxccsI/cegrXHUwMDE1meXuwV2NT5h3XHUwMDE1JHhcdTAwMDX5oEcz6evLMP08KMZqXHUwMDAw+JKlkoQ1KJdcdTAwMDBX+d53a1BDivBcdTAwMTVCZGBcdTAwMTduPlx1MDAxM+U7TktxrOlvQnMyYdWh805Ey5nY9lx1MDAxZaUzXHUwMDBmrDfNMmAl+X/Zn4umsf+BoVx1MDAwNsDatOnSVfL2Lpx7XHUwMDA3XHUwMDBlwXntRClx5jVMXrUuylbj+1xiXGZXXHUwMDE0Lqt+XHUwMDEyPy2OP3tcdTAwMWFfXHUwMDFlilx1MDAxZEuZXHUwMDA1eXw/Srfp0C9x1Vx1MDAwMkjYf7zzXHUwMDE3fofzPGCq+Vx1MDAxNS/6eie87HXWXHUwMDEyfitTZCh5lJ7pU1x1MDAwNr5SRMXeXHUwMDAzXHUwMDFlIVx1MDAwMLx549Hyz1xc7fZh7lx1MDAxZmdky28wha/0q36E7PDmTkSd3fBXr9AwW9tU8OI0S2PIzopcIrAnR81/Xv7xI1x1MDAxNmwuV1x1MDAxNn5dQGfXbkGexod4+Hf+XHUwMDBm5DFTfDXzN4Jo239aXHUwMDAzRsDuxYenZpWT8FWQ/7TLXHUwMDA3eJbvJSAmSjMtdEzEMos28aM8MVx1MDAxYpdIPGlcYnLId46xXHUwMDEzsnnb99N/XHUwMDEy25BcdTAwMDVXstXNbs2VMobSYefP497x91x1MDAxZfDpR1x1MDAxNUhcZpTUXHUwMDA3xHUoz+k2grTVN65kXHUwMDAxfpLzdXlfNtPUwnyhMb9cdTAwMWPTXHUwMDA1XHUwMDAx8lxue7Bg09shwI0xyPohvUTz0lBQ+2nI3OecjFx0ibbOXzSVp/GK+6Z3it5KOS/c6MxG5lx1MDAxOUYmLKXxsaR6akvfJ2wqXGZcdTAwMTfrt8kssEczP5/yXHUwMDA37Fx1MDAwZUJcdTAwMDY/2evrev9cdTAwMDBcdTAwMDbs0vzQoHg5XHUwMDAx6ppu3olgt1x1MDAxYYfcaSSeh8BcdTAwMTN4f8RcdTAwMTf71/aO9dVmz9Lgmlx1MDAwNlx1MDAxNMpkXHUwMDEwVTxcdTAwMWTmXHKoNNtcbpdf3m/T30NFx8cjJkilN9k91KSY1Fx1MDAxZtfvMFx1MDAwZXNj379DXHUwMDFiM/5cdTAwMThMWDJcdTAwMDNHZ1x1MDAxOEluoMSzlD/t+/ZcdTAwMWLeJVx1MDAxZqCN3kapu03S5UNcdTAwMTaRglx1MDAxOVx1MDAwNmt/tSGFwcfjj1x1MDAxZHQ1vViX2Fx1MDAwNFx1MDAwNy9cIrSYkJLJV00hPPovs8H976RcdTAwMDHRXsiTWnVcdTAwMTCRXHUwMDEwJl93WLzBkvo6XHUwMDE1c1x1MDAxYS1cdTAwMGI0XuiTd1x1MDAxNHFWQ9BcdTAwMWGojV1ocqhZ5ojW0uBQt92dTPTq3XZktrx2w7i1XCJwP1WGXHTNqVx1MDAxMc7hPYFcdTAwMTa0Ylx1MDAxMXZJNlx1MDAxMsL15lwiXHUwMDE5y4V9Mj+i1TpcdTAwMDRcdTAwMDGfcNlcYq2UXHUwMDE5sfRcdTAwMTBcdTAwMTT5XHUwMDAyJiTSXHUwMDA0x1xmz5ZCufEpU1x1MDAxM87mSD668Cnxbt5cdTAwMDczpyBBIJWDR1x1MDAxMjpcdTAwMTNXXHUwMDBiXHUwMDE3mCqQxYeTvNMt9cL42FxcvMjgvSzNnlx1MDAxNT1Sg3/Ho6HRXHUwMDAwWVx1MDAxOGhcXHBcdTAwMDUotbuCzEpcdMl4a/bPc0+LcLTDfVx1MDAxZIZcdTAwMDBvVo+AXHUwMDExPUhcdTAwMTPyt5AjPYIqXHUwMDAzxJGNlJBcdTAwMDaQTrFcbnBB/IJcdTAwMTdeXHUwMDE2rbdHWWPFXqXBVFx1MDAwNlx1MDAwZlx1MDAxME9cdTAwMTbMmDtrZZxkOEJY3zJnK6PAme+m4Vx1MDAxYudJr0dcdTAwMGKTXHUwMDAy81x1MDAxNSqwXHUwMDFjXHUwMDE3MHK7VWdcdTAwMWOQXHUwMDFh7Fx1MDAxMlx1MDAxN5BidUp4OVx1MDAwMvN/XHUwMDFjILGqt1x1MDAxY1x0ze5cdTAwMWJcdTAwMWS+YMft+lx1MDAxMumOJKQg8N3TpHO1q1x1MDAwMzFKxJpcdE3HhW7T4GyZyktLZojxijE8XHUwMDAzJ8bcuEX0rZatXHQuXiTgXHUwMDFlpWookmD5ITL4a5okpEhcdTAwMTj/rZP1tUBVNlx1MDAxMjfFXHUwMDAyXHUwMDA2YjOH5OM3rMmpzf/8XHUwMDAwQqU0hbFcYjbyakqUXHUwMDEzpD3liETGxFXnwFx0+kS6dlx1MDAxMGJcdTAwMDZcdTAwMTFcIkvd4KdcdTAwMTCHIbRcdTAwMDKyklxiMdZvXHUwMDExXHUwMDFim999/fDfVLFxVsk/o6hx0EvAhTBu4N53KWlxh2pJsFx1MDAwNzCX4IOWgVSyz2gwdEid0Kmig+m/90dol42uvGUkXFyj21xyOTJcdTAwMTk/cd7BQ1x1MDAxYzfEXHUwMDBi0NlcdTAwMDZV78/llFx1MDAxMjziNXWY+EcpXHKehTNIiLfYm10w41x1MDAwM3j7/Kqo7nexRvPwXHL9Uq+Aw4+1XHUwMDE5foZcdTAwMTXX+NtcdTAwMGVuz3PFvUKM+Tq+XFy2XHUwMDE5Q1hvIOtXXHUwMDE2JIVuzW9bsd7dc/vvXUnJl9Z7gpgygWwxjVx1MDAwMqgjQVUulYjrgZOHhMxcdTAwMWHZiDY+4zjpPl5cdTAwMTJOccV7g9k+OKrPXHUwMDEynVevXGLyuN6muGWsXHUwMDAz8KTxZ0x1XHUwMDE2XHJZrG5cdTAwMTYtXHUwMDE1Idy8XHUwMDE0J1x1MDAwMUfmwLNEKMK6mjve/kWKQvv0VyE831x1MDAxZD/8jeFcdTAwMTO181x1MDAxNvjYrye87FY/XHUwMDEzSMfbot/Q+erpcVTJ72bc44hbclx1MDAwN3kg2q1cXMjU7CnL6WNcZpnaxqgjIVuFOVRwzVlCpooxKpngcrhcdTAwMDf7XHUwMDE2XHUwMDBmXHUwMDE33EX+XCLsizpzzpzemyj3XHUwMDBmXHUwMDEySWRcdTAwMGame4xn8nm/0f3N/Fx1MDAxYo9cdTAwMGJcdTAwMDL6XHUwMDAzXHUwMDA1n2VcdTAwMWS+XG4qMlx1MDAxMfSgs6FcdTAwMTAwlePZ6NdZh1x1MDAxNyRcdTAwMDFcdTAwMTi7QLIj9pmyuu4uKzFcdTAwMTY7itZcdTAwMThcdTAwMTLcXHUwMDA1z5tTaFx1MDAxZDDxS1x1MDAxMc/jKFx1MDAxMtq7s1x1MDAwN8S7QWTkZjVbXHUwMDFhnuZcdTAwMWZjPoyk7vGLn3/PtmFx/PQ/YvibLyGMXHUwMDAwoE1cdTAwMDbSXYfAtzrS7n+uyXXoqrqGo7lcdTAwMTe0Ylx1MDAwM1x1MDAxYrpsXHUwMDBlONs0vNtnOdauSp9cdTAwMTKsmziu9Lc7/FxuXGZ+YKanw+/JQTOacqGkk7fkiSvnXHUwMDAxpiU94kZZMo9cdTAwMDPjSydcdTAwMDGlpFx1MDAwMsd9q6VccozW1mxKXHUwMDFm7LtAXHUwMDA2ikTper5cdTAwMTNlPni9hWg1gXg8q0Pye+smsn5dPFx1MDAxY1x068VnmIOLt4f26fh7XHUwMDA10colLsOWc2z/PSuJjNKHX1x1MDAxNi1cdTAwMWGiaFx1MDAxZkQ49Fo7nNSluTFrk4xu/MNcdFqQRZTFWLJ/g7etXCLry9M2XHUwMDAy1yXecGmNXHUwMDFh5mBmflpcblx1MDAwYvBccr+KlVx1MDAwN7mIOW+8pcblXHUwMDFkQ6mTXHUwMDFkXHUwMDA1sH1cdTAwMDW1q2Sac6WNu1dllqrtXHUwMDFiUbZPXHUwMDE5+0o7qlx1MDAwM7IxXHUwMDA2b57/klN1LS9v5YLpMjDASFx1MDAxYeRcdTAwMGKswmhcdTAwMWWkvkn8slx1MDAxNKY6XHUwMDAxn5FcdTAwMGXiXHUwMDE4PsfjJ2tcdTAwMGaNXHUwMDFmqqFopn/6l+xDd5Rcbv7UXHUwMDEwWqvLIIhcdTAwMTRSY2Wo8zvFxvq5mL683v29XHUwMDFj8D62+LjPuL3IfVxy3vxmMDmeXHUwMDFigbxZeItcXPFFl+glWFx1MDAxNVx1MDAwMWO3XHUwMDFiidtcblx1MDAwNjv793w282ifi7K+W3g1UtRspX5xdL3+eDFjosFcIlxcQcrAtMBLXHUwMDAyXHUwMDEwuPv6nHuy6S1cdTAwMTZ+SDHI3yhbkTApkmuQhlnK9phcclx1MDAwNYAhKlx1MDAwM1TDMeZIn1x1MDAxMmrvXHUwMDBm9lx1MDAwYuS6XFyxptLX4T584SerPy095ez/jFx1MDAwMUoyn0NpeOuGrEQzXG4yX5hcdTAwMDei3lx1MDAwZVx1MDAwMdjKR6bvXGa944JtM3/mMFq0i35cdTAwMDRcdTAwMDKqnN9cdTAwMWTPpYslUeSNuKLbY0dcboVcdTAwMTJrYuNcdTAwMDAus/R3tCf4O9pcdTAwMDP4Mlkm4CeOISvqcVx1MDAxOcI7v1x1MDAxYVx1MDAxYS9KXHUwMDAzypuZnVx1MDAxZe2b2iSg2XKROlx1MDAwNuQ49i/cXHUwMDEzXGLR6zkmt7vBwMhcXHZccoXxQNWw6flg5WJTcZbt/6zpn1bB6TWxIz6dqiY32szUXHUwMDE5rkhcdTAwMTTy/Fx1MDAwZvdodfLmXHUwMDE0yFfDu1x1MDAwNuLR2D+5RFahXCKEgIJy01x1MDAxM27Iw+tcdTAwMDLZbUEpWkncmsc3vdDsdWpMhku40EDJPd3jt9ZcdTAwMWakWKPaZIruS1x1MDAwYpxcdTAwMTaPt4SXjqVcdTAwMWK18ng+fJbup0QgNvKvmt7rRKm+tVrF/vKGqoJcdTAwMWLV8stcdTAwMGaiwronbyuXwNLeXHUwMDBlXG5CXHUwMDBm31x1MDAxMVx1MDAwMDzFXHUwMDE0XHUwMDBlie/tXHKDXHUwMDFiyd6T8qmZRC6be7DX4aefoVx1MDAwN1x1MDAxYe2QXHUwMDEyRHqmXHUwMDFl2ZBM+9xxw8CMafbpJCGXzLGr7tWzRS5tXHUwMDAzSVx1MDAxN1x1MDAwMlx1MDAxOWtcdTAwMTRcdTAwMDK5M5G2PFx1MDAxNaBcdTAwMTSVyHFPK4qfu6wrXHUwMDE331lcdTAwMWXJcskhoVGQXHUwMDFhY22E33p8lvDVlVwiL6mapz9Ic1vBe5FcdTAwMWa9s1FcdTAwMDYo5oFyXHUwMDAx8T5mSFx1MDAxMubkO6fwm80hXHUwMDA1P7ll49EmpTWBXHUwMDA0TZrL/Vx1MDAxMp47e1x1MDAwNsM0g+ZP9lYzqmKsskJcdTAwMWXsoPicoruzIJdcXJ56NUNyXHUwMDFlXHUwMDAwqZAj7Xl5QVeq+PVcdTAwMWWZX2g4ut78XHUwMDA0c9fo81x1MDAxNmOS86eEO0JcdTAwMTCO5+n9+/NcZlxyoI1cdTAwMTBBJJSw5ZyZ4v/s/8KYmHBcZrex5i6TUJDGoFx1MDAwZYVcdTAwMDJhsTVnfTB+fG3kbLTIwGJcdTAwMTj2TmXfP/aX3pqi3lx1MDAwMo25VLhS1l1331xunULzeT9pWVx1MDAxMa/tRuBcdTAwMWY2XHT9IUhFKlx1MDAxMna6XHUwMDA2NaZcdTAwMDD3XHUwMDBmgFx1MDAxYjsyas6H11x1MDAwNyqDdklNiDVcdTAwMTS8SnNcdTAwMTCHdIzKqKhEoIGAvlmNcKRVXG5cdTAwMGZ7TVx0y3aI7cJrJaNsOfisXHJC6Fglalx1MDAxZU6BgIaleynrKod+e1xmXHUwMDA2/ubbn28gOLSL1/FlyaC7wXFDYlTJXHUwMDE2ldp+XHUwMDExb7xcdFx1MDAwMJhXt5abjvp7XHUwMDBljq7s+8yMvIdcdTAwMGLqmFJVKa9cdTAwMTfIZW8xMFx1MDAxN/ymTeRNXHUwMDEwK3Z+/1x1MDAxN9zv9Ga/WCtcdTAwMTUvWda+xKDZP+/Hu49G4bm/V5y09Fx1MDAwMf2K25hBYTu9TUJcdTAwMWWYsPfd6Pe0x4RnM0VcdTAwMDaqksPAPVU41CpgNvX/Ieo8tiXlgWz9QFxm8G6ISbxP/Fxmb1x1MDAxMu/h6S+n/u6+qyY1qJWFpIhcdTAwMWTfXHUwMDE2UuBfmkooeWSEuSmcRFCYXHUwMDA3lP1d2c80eu6uN7hcdTAwMDN+ynhZxde0IVx1MDAxZrZw/s7821eMXHUwMDA23ypkXHUwMDFl+ii7VrdcdTAwMTk5VS7GZVxu7WdcdTAwMTWv9SxkQ1x1MDAxOEZY+Cmlf1x1MDAxMlxcXGK38pZ9vP/2T/slpu5VXTj/RehP0aHlrZ6oQe5LXHUwMDE3oVx1MDAwNDeYz4JcdTAwMDUtXHUwMDE0mfyU0ot4YT7r1W90XHUwMDEy2lx1MDAxYrs4JDIyXHUwMDEwjPgsOZ24h0RaIVx1MDAwNFrRcKnqUlx1MDAwMmc2PMH8vVrdTsBdynNcdTAwMGWOdsVcdTAwMDBoxLJTM/J3flPUXHUwMDFjbNRccnqW3bjNPOZcdTAwMDFcdTAwMTOgv9SQ+bvPXHUwMDEzMjdw6n5/XGKyXFwj89luuKi/klD1lVvJXHUwMDFmeZX4ZFTRjrzBgkYoXHUwMDE4XHUwMDFi97874MK1zlg8SjmQnTx4xzPbq3+F2J6L7aQ84+RcIii5jlx0OCfbXHUwMDE4W9F+a8dhVrYtXHUwMDAwJutiXHUwMDE36j4pWu1cdTAwMWS1YnQ4Kq+NJdHgiPZr7lx1MDAwN1xyXiWCjDIpXHUwMDA0XHUwMDEx+myRMVhcdTAwMGJ8y2lVZu7gP0ZcZtojciov/PM7cDV8nvxqnf55hqGIVVx1MDAwM59cdTAwMTWrXHUwMDEyqznuXYOm/t2Rplx1MDAwZvV6zlx1MDAxZiXZXHUwMDFj6kRV4ZZkXHUwMDE0XHRFpHpPVVFBWVx1MDAwMpo/KJv8XHUwMDFiWDpRXHUwMDA0XHUwMDEy1Ne3bvCbMNA1XHUwMDFh3yZ0uXmRvWjFOqBWp1x1MDAxMPlcdTAwMTltY1lS7Y1cdTAwMWRcdTAwMWTh2VmfYFx0pUE7R1x1MDAwMZr2z1JcdTAwMDc4KpjIMNj1gGLBXHUwMDBlOUxw92rqcJ5cdTAwMDG5jkPDQeF8mY5Sqp3UMf3VkNNmXHUwMDE4jmG+nsP6ZicwvnKiccZ+XHUwMDE2pNtQecItpFx1MDAxYkVtc2PEt1x1MDAwM6hpXpxcdTAwMWFPXlx1MDAxYzWTl61cdTAwMTebqdJcdTAwMDBcdTAwMDUztPn/eaafJVx1MDAwNEUwS1xixFwidKhcdTAwMTHDtZ05Ss9wXHUwMDAxkir2lsFcdTAwMTjOc9ZQdHpYd8qDXHUwMDEyXHUwMDFhxWBcdTAwMDfjJqZcdTAwMTdcdTAwMTePhVx1MDAxMEz96O/652RxIClcZrZcdTAwMTKWX75xl1x1MDAxOVx1MDAxYr9jXHUwMDBmP1aRwC5veYdPzKq4iEbl6/VPXHUwMDE4K2yjm4w4ljIqi1x1MDAxZqN3fYj59uvY/OBcbqg538kpr5JcdTAwMDS3XHUwMDA3XHUwMDEyXHUwMDFkXHUwMDBlYfW6bVBmy/UjscH8tPBbqVYwc1x1MDAxNHYu5lx1MDAxNNUtXHUwMDFk8tHaXHUwMDFhSYUoJpFix3GYhFx1MDAxOZlcdTAwMDWQjMuA8VxiveU3UGCgXFzfXHJ3kVx1MDAxZsNCXHUwMDFiniNf6I25oLIzKVx1MDAxZlx1MDAxMVx1MDAxMXNJPynfUlx1MDAxM+wwiaBnLdmvds3QVm9r/ddzklx1MDAxZbJcdTAwMWaohLBwzbT6Ye8+f9h2tMH05c6nbERItlS7fFx1MDAwYuxwf1Nle9BEz24zQK6G44bo9aFcdTAwMDCAUO3HelxyIVt9XpFj201cZkCK4Vx0NuQxz1eVqVx1MDAwYoUouVx1MDAwMnqNblx1MDAwNFx1MDAxZHxcdTAwMDPFfjUt1/dHuDZzXHUwMDA0XHUwMDE0QCGHx6uWsS02f8/Pf+9hKXjnWF5jTyRIRpkuc1x1MDAwMDxcdTAwMWX4O5RcIqLkzn+emFx1MDAwNLa3oqQtrqDol1JwXHUwMDBiXHUwMDBldPCde0nK4We1XHUwMDEzlPYuRaDrZvZcdTAwMTNesjqtUvvirD9cdTAwMTZcdTAwMTIvmShcdTAwMTL75S9T0n5wXHUwMDFh/3lsyFx1MDAxOS3AtFxu8GrPLHlQa7j4Jlx1MDAxYlx1MDAwYp6UxrZcclx1MDAwMz3+XHUwMDAy7VpGjkY65XW7XHUwMDE3KYd8dO77/uhVeaZ2TGzoa9y3X0FwjPwzxeX6VnmB+mjHo+vfXjtcdTAwMTKyXHUwMDFmXHRimo/ZwcZ5fGfGXGZcdTAwMTJccrKLv1x1MDAwYnxWQE7UnKFG+4zEJP9CcaDYVTQkXHUwMDA2oWaR8WVcdTAwMTZmNLpBXHRwp8hcdTAwMGb3c+RvglTkXHUwMDEz+MvHze5cdTAwMDWMubWkcJ6BziFcdTAwMTI4TrB74Vx1MDAxMZNNyFClTNSPu4HBXHUwMDExlKgq6o9cdTAwMGLutE1cdTAwMTE4efxcdTAwMTggXHUwMDFh2rUlQlx1MDAwZTjMQFx1MDAxM3ZcdTAwMDSVmFx1MDAwMlx1MDAwM4RtwH2OyZXii0DaP0108W+OuOV3fl1cdTAwMTBcdTAwMTjJeUaQmPQ76kJFnl+YZapjZ4JcdTAwMWLThP5Gl0E736Jvnlx1MDAxNlx0j1x1MDAxNJmYXHUwMDE3cc9wwURy71x1MDAxMJBsJzCywFPaXHUwMDBlLZDy3+QuoJfKSFpcdTAwMTRcbn8qXHUwMDExs4aDPTIsuuT+iT6tXHUwMDBlofg9ndmDTrRPsaqLRqBcdTAwMTZcdTAwMWSb2fJieCOIM495XHUwMDE3YJusenxC4JPBxG9MuPon63FScMuflcjJMU/ekqWzXHUwMDEzSCb1kLPKky7E1IlcdTAwMDFPXHUwMDFlb105XHUwMDEztItcXGitWTSEXHUwMDA1l/LpRzPxXHUwMDA2xm+FfyH++7ZO6lx1MDAwNVrnUWbyJUFcblSprvlx/97Zkc1MxypcdTAwMTKoXHUwMDAzr1x1MDAxY+03c1xyXHUwMDBmZX5cdTAwMTXnXGbmXHUwMDA2PNgnQ8Mv67rbuH6T24ef/uXEo1x1MDAwNP+7XHUwMDAzVOZmUyeH29f4XHUwMDE3O7FcdTAwMDWKS1OIXHUwMDBl4bomtEmL7okh5W9cXPuVr3/asMWL00DKtFx1MDAwMIpyeLmfia1CXHUwMDEz1pNcdTAwMDRcboyETeSvwoK1LeLXuyNSXHJ9fnpcdTAwMDGKp3SivYgvXHUwMDBm+G9Pis67zVxuXHUwMDFjf1x1MDAxML4z0NGzKC1cdTAwMWNcdTAwMWbqMVx0XVImXHUwMDEzW5TbXHUwMDFmhCo3O1x1MDAxYlx1MDAwMkT5XHJS5aycwmVcdTAwMDSKsoxHILqpkcrL1U63udc+zoVBXHUwMDAwnvWYsfBRgbCaZqPGVOS6xVx1MDAwZqBYIVxigGLpw8Q5MaRqXHUwMDEwie3JJuRsjcA4XHUwMDFmW8hcdTAwMTa4llx1MDAxZIDlVOnGe1x1MDAxNc56n/TlXHUwMDBic/Attlx1MDAxOLZKbsuRXHUwMDExb9glS6YxXHUwMDE4WFxc31x1MDAwN4i04Zf/uV9smvjfWTCcie9cbsLmUFx1MDAxYzP0Z3O1j2dcXKWS+1m+Vu9cdTAwMTSp6iZcdTAwMTCHXHUwMDFhaVx1MDAwZUG+U4VAXHUwMDA3sF42tZarXHUwMDEyWHtU/91B1jmYXHUwMDExpLm3eXyoyktNtFx1MDAxYV39KU85IYTu4eWvtGVaXHUwMDFm59cuUueLPFJcdTAwMWXBgO5MXHUwMDAzOHdcdTAwMTnpS4soLTBly/ycc511TKSYgPQ9Yk6LXHUwMDE5O+ovXFyC4qTEua60kVNypdLpQ55cdTAwMWb5XHUwMDFk13pq0Vx1MDAwMIU4SFpcdTAwMDKUcIby3yF5vzW+ROxvJ/I7bclNcJw/XHUwMDBlYmIp6ptcInHTgl9HjqiQXHUwMDE5LtElvY+LPqs58lx1MDAxZVdXr/eVMlxmWMFTQWh63DFcZoC9uXO3ZET4Ylx1MDAwNlji9Vx1MDAwNP3yiP7X9v+YXHUwMDAybJO0yVx1MDAxZmPPVSa6rD4knHH845hUmFx1MDAxOUat+K/mh3jhXHUwMDE2Y8FB606D+aBpZPdcdTAwMWFT81x1MDAwMZlyeun6V4rOL1x1MDAxZFKDXHUwMDAyStmpnp5cdTAwMTDchSjqb44rXHUwMDE4XHUwMDFh/JiDm/jxhls2dyg+5s2WsrBcdTAwMTC08Fx1MDAwNtPBvfN8uUdUhJzKoTrBOFwiXHUwMDBlIapcdTAwMTk92MdcdTAwMTZ6dY2tfpHQMMgs01x1MDAxY2XMXHJcdK/kqFx1MDAwNb5tI0T45ulyhWU9nCv4xv/8llKR7jDTs1moI12NaWy6mtZTWIXwXnDw9zN6KTVcdTAwMTQz7y2AZiykeVx1MDAwNylcdTAwMDL65WLkw/hcdTAwMDe9XVp4XHUwMDFibVx1MDAxN1xykp9C5Xcl52kqOCvwytrPSIJi8iX1L2WpipQ8UGRdQrK8XHUwMDExY25BXHUwMDEybD36ilx1MDAxNms+yC3G+jj7yJWsXGI3XHUwMDBmN6+39KlcdTAwMDDvL/0woIj5OvucIe+kSW76WuPWjIj11dTBXHUwMDA2P4Jccj7i+fdcdTAwMWXglVx1MDAwZsJWftjK0Vx1MDAxMWBcdTAwMDHnXHUwMDEyVkVLXHSZ8PJyPn82KpBixGiRj1uFXHUwMDFjhj5EL32xp9/W1p4rJs41aFx1MDAxMaTG9cL69V7Yy7VcdTAwMTZcdTAwMDJ624pcdTAwMTdbMIzaMlSkPCFPx99C+des6fP+PbqwL8JyLMustlx1MDAxZr9cdTAwMTWMXHUwMDE4/Vx1MDAxZqw75qC5vUCQXHUwMDEzppZ/MVx1MDAwM8mYJ9L6X+l3nVx1MDAwNixbXHUwMDAxenNcdTAwMWKp3dRmPP8kPetNLbZcdTAwMWY3r2RcdTAwMGapZCmA4LAqXHUwMDEw9Vx1MDAxOSpE58inKS9f81x1MDAwZULSO7bElEwrmVx1MDAxOa7D0K2zXHUwMDA3MVx1MDAxY/FhXHUwMDEzXHUwMDEx883q5FOZulx1MDAxM1x1MDAxYz3ZqWlcdTAwMWJbp0rUXHUwMDA0Sv1cdTAwMWSgUJM2ejFoSaBW/0FcZvd1vGpuXHUwMDFi2LdCyz21+zBcdTAwMGI6qF3naWFRXHUwMDFifWBn7c/wZF+Lx9lcdTAwMTE3y5E2o1x1MDAwMUFmhZlteq36QOappYkw6K+3eFx1MDAwMTmrKedLIGCSzqxcdTAwMWa6+/9nLIckiyqCQHdPlcRgnTrMl/nBKkizXHUwMDA11M+V6ZRumYnuxjudW8P3dWCgXHUwMDBiXHUwMDEzxetVJidcdTAwMWa4Y9dAPCk4XHUwMDE49ylcdTAwMTCfXHUwMDBiVp9YJYpcdTAwMTm5XG7k/86VU5BcdTAwMWEz2nJsha3hzbzhhCptYdf5u+54oDZcYsaAwsxfjZ5wfbRVbYsndILAPF17R/lcdTAwMTNcIoDaYLRASVnfXGYhme1cdTAwMDcvuHvMjSuiNVR6xFx1MDAwMs/koyfW4e/ZX2+E2oHtZCmTutw5dIxezWDyXHUwMDA0v6NcdTAwMDfQyVx1MDAwN/R2JsJB2KnFmSi2iFx1MDAwNVx1MDAwNj6rnydzn6hoV7/DXHUwMDAz8HeEI1x1MDAxZsSmSffWXHUwMDFk2lx1MDAxML69iG1TXHUwMDEy+0tL/y1yeC9Hpv16istcdTAwMTlcZnnsxXT7u6uplLFcdTAwMDfctvphWlMtJ2DT/EOecUpZXGb74iVkhygh/cvbkfoyiWnIi/H3XHUwMDAyppMsmFx1MDAxN+9cdTAwMGZC5vPC9G4joVx1MDAxZDTOhOOiTDqGk6W/XHUwMDFhi2Jbev1cIkpCt1x1MDAxM/fV1nyf54NMNi9dj1x0yFx1MDAxMVx1MDAwMJfCqcGiLH84RZxYLkSnMFZubChcdTAwMGLqxr5X1PVkXHLlWpW+TGte2OXBODpIJjZcdTAwMWZ9Mqv/wmZ8p8HgknnH07lLQdggRzJsUovKOeFK+NOsXHUwMDEz9dl/xlx1MDAwNHfoyjNcdTAwMDPP+caRcfubxV/5XHUwMDBiv7Zlr3V+XHUwMDA2nLs2x8KbgZeVXHUwMDA2/sk1Vfy//lx1MDAxZop+KdjanazPV1x1MDAwMb2Du/BjS35Q/jr5vJPIcjO27i7p3En9c38ocENS0jvpTfzuXHUwMDE4PShcdTAwMTInXHUwMDA3yeZcdTAwMDU+iVx09+9s69b9Xj2+rFx1MDAwNFxipmJ754UmUVx1MDAxNFxynq5eutA1c5uGZI1cdTAwMWXhkLpcdTAwMGb4Y2zEXHUwMDE0zPTn1XxcdTAwMDJcdTAwMWNcdTAwMTdcdTAwMGaC3N9cdTAwMDD53TqkNFx1MDAxMUT8T3//Qbvyt+1cdTAwMGX3hCg2klrPUEzzJbgsXWJs9ClSP2nVJvFnPFuR7JFDLrhlW5CFL29cdTAwMDeCc6XUgCzaSSd7tOlkd44nXHUwMDAzSMxBbUv+9VxyXHUwMDA1pFDrea5kKNNk2t9nR24uXHUwMDBlKvVKQat3x4xcdTAwMDFcdTAwMGZcdTAwMWXi8Fx1MDAwNdJezk9lae5G716aUThcYuzEbchcdTAwMTgt8fnzuvBBXHUwMDBmolx1MDAxNc8nKf7juz7EZZXOaFx1MDAwMzNcdTAwMWJ9zsa0oX11scosRZJqasEpJc5cdTAwMDAueWFcblx1MDAxNp9q51wifrU1n0f7q8lcZpNyszLUXHUwMDE3qlOTvnRYUDulRCzEXHUwMDA1XHUwMDAxXHUwMDAyQIdQvkavJqK54/2CtyjLNiWQN4lcdTAwMWapPJVcdTAwMDXqhkWRUeRTS1RcZpuXMb1cdTAwMTnQVkRcdTAwMDG9Ofr6uY9cdTAwMTTucMFcdTAwMDJepFx1MDAxMojHrlxyYEtDQlx1MDAxM5JV47+0St3vyFx1MDAxZsVcdTAwMTGkXHUwMDE2XHUwMDFmfrdg0dR0XHUwMDAzrZitXuSZZufbQGysXHUwMDFjpkPTv4v13Inape7Qb8n+UVx1MDAxNcRzrNdCxKHtRlx1MDAxYSbp+q/HcYtsXHUwMDA0R4CQeHKvvWIzLrxP6VhcdTAwMDT356FcdTAwMWUqLnrKp8v00+BcdTAwMDBcZspHpriYV7j+r8dO5clcdTAwMTXvNYXR2yRcYtCWo/WHZez0XHUwMDAwcYbrk2N36qB248Su+0hR4+pcdTAwMDKttiojQqtcdTAwMTWGw0ZcdTAwMTZ6qVx1MDAwMpuZfom4XHUwMDE46i2GT1x1MDAxYuih71x1MDAxZspPezBfXHUwMDFmwlxi0a4mhiXvwqveXHJcdTAwMGbnY2lcdTAwMWWRXG7cXHUwMDAyeLNgXHUwMDA3zIp93/xcdTAwMWJPNrFZLV+Dtp/ErFxmpzi6sE01XHUwMDAxwKDhXHUwMDEwetDJUlx1MDAwM/I+seFsXHKtJFx1MDAxZFx1MDAxMFx1MDAxMrFcdTAwMDFcdTAwMWZy/pHM1nyz/LkjXHUwMDFkX4HcJI99MvFFoZK+5DpcdTAwMDZpjCVcdTAwMThcdTAwMTlcdTAwMTlnM9VKXHUwMDFhWm1K+Jjzv13jXHUwMDFjXHUwMDAz5+9WcIRysjeVfNtEhyqkv0Y72Pe71OddwCBcdTAwMGXxQlx1MDAxOVx1MDAwZtGjeo1CLTZoXu1uYpTM7FW69NdS/ZNiv47NXm/WMSaOSt+Cz2JcdTAwMTSX2WYq1WXZnV1cdTAwMGU6yFx1MDAxOed2XHUwMDFmNjXOXHUwMDBiolwiT75cdTAwMTA4jFx1MDAwZi+6gL9MeVx1MDAxYdFcIqukTb+OMiZcdTAwMDFcdTAwMDfpMV+8a15cdTAwMWIjuWejSj4xOlx1MDAxZik3XHRcdTAwMGav5/KA96Gr7LIhflx1MDAwNjC7XHUwMDFjkVx1MDAxZnTf/rfPXHUwMDA0MlhyXs24wlx1MDAxOKuj1Z+nh15KI1wiVNNcdTAwMWVhjoTvK6fqXHUwMDA1KSNB01x1MDAwYtBRdFx0aOKfXHUwMDA1sLFcdTAwMTn8u37zmmzXI9nPypTccD7JrSRSyrJcdTAwMDemLY5PuyNSxE9cdTAwMDfQ2o/5a3zdP7+mXHUwMDFiz4LS3MlKaVVcdTAwMDZRad58JOArKi2uXHUwMDE1fq3DJu7OvYedaaX3U9nlKLTGXG7taP3vTviyYuWFyjhoWT9/2X4si222XHUwMDE1S1x1MDAxOb8+o2ZH72L4XHUwMDAwJ1x1MDAxZfXvSX+LyvhcXFx1MDAxZTvc64/fsfDSXHUwMDE5XHUwMDAzfkaDnomLXHUwMDBiP6JcdTAwMDRGrq3ZeWOnK/dAlJzQWiUo89xcdTAwMWTBRSbhScK2gVJcdTAwMDE/XHUwMDE3L3/CpCFm72RcdTAwMTVWkpOunairXHUwMDA2bVx1MDAxYphI+tZQN9wlSLU0O+fyXHUwMDBl/6aqith6uTTAS7RcdTAwMThcdTAwMGZKipFFV1x1MDAxOKlLndNjTPeTXHUwMDFhXHUwMDE3ws04hmKlJkRcdTAwMDZcdTAwMDIjXHUwMDAx41uXjti8hZdcdTAwMGKGn1qvXHUwMDFj+tp70fuppJ5cdTAwMDFPj1x1MDAxMJ1Bu+afXHUwMDFmZnX+UT3nNDDVY1x1MDAwNn0gUEIs23OAnC5cdTAwMWNE6tXfOGOIXHUwMDFhUe+HMT5cdTAwMGJT26ryTT9cdTAwMTfeaslvKCxyIat45j2s5La+XCJIVLJcdTAwMDNTxz9rP0W3INimUX/ItJWe4ch3z7+aucHUn/U6+Jqp/r3LRIewjGGm3JRii1xynLiMWl2C8+XTY8ieL77Sz//uNVx1MDAxObj9OFx1MDAwMkBcdTAwMWNwtS6t99rIuHY9cLhcdTAwMDTbfpnEQq5CfcvSMp9cdTAwMWGd58BcdTAwMWHY2Vx1MDAxNi5cdTAwMTe2XHQrbChcdTAwMGJa59tmINvvWq9RL+q9LcdoXHUwMDE1dL/UgFx1MDAxZdg+XHUwMDE1p6qHXHUwMDBmI/TfuSRcdTAwMDVzsYpZXG5G5cCZ8pn6lm7S/9LgXGJ1N1x1MDAxZW0kgm3eXZCaLd7/epZhqClZv4WVXHKRsEfAK116fdk64V9DM1x1MDAwNKCm8KhRXGbBbFxyTbSzKeolXHUwMDE09Fx1MDAxYeg0LrVCoVx1MDAxMVbNYXMniYK1KzJcdTAwMTZhxeNcdTAwMWG1ylx1MDAxZXRcdTAwMGVcdTAwMWRjezbfveNccsQ7ZL7ignIn4JtcdTAwMWV7Q4W3SFxyM/n4XHUwMDAzlsMxjOM7/3j/3vlY6r6TXHUwMDFi87BcdTAwMTBgOt7na337opeP6LFcdTAwMWWEnbFcdTAwMWVyTo9cdTAwMDZmcMuOsuevz4lEOeX/0FxiXHUwMDBmiaKyrziHp4hcdTAwMWSUXHUwMDAxzuRcdTAwMTjIrP7onVx1MDAxY8XwvyZcdTAwMDRWfF58l8NcdTAwMTTSdXF1XHUwMDA2Pij2NX/DpVx1MDAxM6FIXHUwMDExaFx1MDAxZEhE+jVcdTAwMTNkd6dMb3PG89FAXGJkPlXMsr0oLthcXHTGrH9yd/zrXXBiXvykXHUwMDFkrLVcdTAwMTcxSlxm+lxce4hCiUbS15fWJUpQXHUwMDE5wyA03lx1MDAxZlx1MDAxMoHjW+36XHUwMDBlXHUwMDBmeKeEkyXcglRcdTAwMDLzXHUwMDFktk/RZzT593TC7HNcdTAwMDaZy75dUTNcdTAwMGJ9IJFcdTAwMTBcdTAwMDeNMsnG8y0/yvyypFx1MDAxM/HiSKDiwn/nSlx1MDAwYucxqoRYnbvZP+Yw2dQujKuVa6bJXHUwMDE3oYmHcjxduMhcdTAwMDFpu2tcdTAwMDfvvd7gNFx1MDAxMlx1MDAwZTwu5mi4XHSoPIZcdTAwMWa3dHhi+1x1MDAwMXS7ZKSJZouvoUNcdTAwMDfj36U3K1x1MDAwNuPKtd1i9U+mUnz4lvpcdTAwMTNvXHUwMDEzWcmI8rzYjrCl8UrsJzgz/Eb5XHUwMDFktXfVdFx1MDAxYsJcdTAwMDQ16i1pnclsRjb1p/ybW1x1MDAxYjXIYsEw11x0gFx1MDAxYqCbpZy0nMNzttlcdTAwMDJlRjrDnd7gm2KYXHUwMDAwPrXr/qCoxubnhkNw4F6D2Xdz+VlOn/1UUP5cdTAwMTXXknBOy9513CrjwtRcdTAwMWGMWtlM3H70kax+gyaCXGKiWPBY05iMXHUwMDFm7uCAY/pB6PbhXHUwMDAzIPI+xLvkXHUwMDFlVKZKXFzHueGGzTVCQsHV3vCaXGJgXHUwMDAzdH6hd1Qxg9bhTs1j+qfliDhQN++rd1s/PaUrneNccpE7Slq9giFjNL1cdTAwMWVyXHUwMDAxXGZ4XHUwMDE0OvtcdTAwMGKe3tlPgOq5RqwyuVxchPnKKa9AUEYp0Fx1MDAxZVN85Vx1MDAxMFx1MDAxZVxu+TbStioqikc0lU57NFxusJd4Z5Q88sH1KYlcdTAwMDZcdTAwMDE0L9Iz8+NcdTAwMWZKveqHlnlcdTAwMWbB1GdcdTAwMWS+edhcdTAwMTPcLP91xUCMSmvYRsYwtdFGk1x1MDAxYolKbtrq1NRx1nVmNlx1MDAxOapcdTAwMWRcdTAwMWKmmeX7rri00cfxVPqPLjC7XHUwMDA2e3mA2THzs28pIVx09Fx1MDAwN+ahwXKfjphd0vdDXHUwMDE4fLNysMxcZkdpXHUwMDEzp1x1MDAwNSPPI1x1MDAwMlx1MDAxNzGOduBi+FafXHUwMDFiiMBTh5lcdTAwMWaWXHUwMDBlXHUwMDAz5bFXMJP7kJeWc6q6nptcdTAwMTKDn1x1MDAwZaerpbtcdTAwMWLE6C6zRTfwXHUwMDFikFx1MDAxNGnOMVx1MDAwZbp3liZfXHUwMDAywIafvq9DWcV5XHUwMDFlb3RcdTAwMDWCukrwYKd/0Vx0nnTA91xmeSdcdTAwMTllwIrHP8JaMPFcbmNcdTAwMDJ4XHUwMDEyPtOV0cvzLFx1MDAxMek4XHUwMDAzn4Y47mdcdTAwMWZUoIhnXbdQpEVlio5VoCXmq324Rlx1MDAwYjzwr7eTeC11hCOIRFx1MDAwMMBeXFwk5v+AMqfGOLPhXHUwMDEyVqpcdTAwMTZpli1cdTAwMTlcbqD5ivVcdTAwMTBFOFs6OPUy013KsZLHZXlRau1VO0XEK1xutT3oMUimmTWpPjOrk/HnXHUwMDAz+m+Vz/RiXG5U+mtcctRY7Uxjf+aL327yjCNcdJLeaDtwVN5cYvpxnJx+dI7zwWSzXHUwMDA2vSzoXHUwMDFlbZevfC9YpodcdTAwMGYwSIBbXHUwMDFjq7c1jXSGssNKXHJ+UFxuZLGhXHUwMDE2XHUwMDFm4c7Uxftf4Vx1MDAxYj1mk1x1MDAxMK73l+6xOLG2XHUwMDAzy62FhPntOHrT3Vx1MDAwZX+Nt3I5pvjGP5FcdTAwMTZu/Vx1MDAxOOIp8DBy37Dgt2WY3zM0z3mCWUNcdTAwMWGkXUnETFp72Vx1MDAxMJF3pOVmXHUwMDEzXHUwMDE1z9u4XHUwMDAytVx1MDAxYlx1MDAwNGVBIVLSXHUwMDFkReTC4pvKelx1MDAxNYZi6utcdTAwMGJcdTAwMDG2XHUwMDFlS0gxPdWXuM2Y7mdGLH9HzsF3lT6ExWxamTSVKd9Bb1x1MDAxNp01hlx1MDAwYsKSXHUwMDA3qL9PmFx1MDAxOYL6jcdkW8FcdTAwMTMgR8IhXHUwMDEwvmKeXHUwMDE5JNC1cDO+mGvamr9EXHK8UFPH8iGGnE6stpk+yc6NxVWAIWHN5pdcdTAwMTif+Giq5+6wVMFpXHUwMDEyjI/j8pyogkospueXnFN931x1MDAwYpJkrI7Y2Fx1MDAxZVwiZsjwfdib83IjY9JTx1x1MDAxMC6f4mWi5XrT2P9cdTAwMTLCO3MtwPlcdKfc/NiYXHUwMDA3YDeiXHUwMDE0fOBufmOBQkpcdTAwMGKFRFx0btBcciTX6oG3oC40qSpa8Fx1MDAwNlx1MDAwN+BBXHUwMDE3PFx1MDAxMZLJV2Yxz1DeiWQrsGgmKFx1MDAxMShtXHUwMDE1zLucsqPSc6LfVVxm00/uU/JtecnQVcApvFxiPn6esqxyS69OpNHQ9eRiUFn9YVKBL+nEqYajn1x1MDAxYXfEQTK2y8dqXHUwMDAyxtmNWWaSXHUwMDA00+64gKtHXHUwMDEz/b7GpdXzXG778ydcbk3qTJ/edZZ6YzuOSHMltJDt91OKIbpsXHUwMDE08DWCi+70TN/AldIl7cKKofVcdTAwMTe3pVx1MDAxMUJztuSdZDPZidcmrXAq9kH1+UZ1olx1MDAwMzHX7kY1p5pb8URbJV1IX6Xjr1xiub9EIGWfI39cdTAwMDfc/6KGyl+PRqTpayEngbw81VxmkVwiXHUwMDA0j1x1MDAxOa9m7Fx1MDAxM1x1MDAxOMUyziWynZPSXHRJtazc9fRrMKPBXHUwMDA398NmUi+QXHUwMDA3XHUwMDFlv1x1MDAxMFx1MDAxNEI52tss74XqZXB9Zopsa1x1MDAxMJaFXHUwMDBi9qjXktLBNHP6t1x1MDAxMEi0jiWJ8utFJWlrXHUwMDBmpfp4VPLXg6yPudd+XHJcdTAwMTfivrFcZmEhXHUwMDE2ylqXpdtWm1LO6dzLunxaXHUwMDA2XHUwMDE4U7bWUlx1MDAwNFxiYq7pXHUwMDEw/Z6NXHUwMDA02lTiX8nyrJAm6TVcdTAwMWLf2W7+fM6PXHUwMDAx0lx1MDAxMF1nv2FqnYo6+HStXHUwMDFkoCB+OnFGhOSvgrI6QzPbvdhcdTAwMWaEeUtcdTAwMTDxmadFyH+xvEKbkNdvWbBzgjn4JbT94tOrYXNbi/XNXHUwMDE4WTu9NHLvXHRHISxhOXLg5Fxi+1inelwiX5o6PGj85MLcr1xiNXfqVHOAT1x1MDAxNZM9XHUwMDFhlPBV6lx1MDAxZIorzVx0JFJcdTAwMDGBQVx1MDAxY1Xaylx1MDAwMHKDzGZobeuhMSd7LdY3ZVxyVpDk696AJaHT9ciJctJcdTAwMDVipUkpzFvqXHUwMDFklyNYe35+vnFccoZ8XHUwMDA0M5n0+NRNKMpcdTAwMTbT5CWFqPhCIGCVXHUwMDFkXG5cdTAwMWYggD2uQFpIalxmXHUwMDBmfuJcdTAwMDb7XHUwMDE0i/ZFujJ7Vpxo2Kx1XHUwMDBixFx1MDAwMqPsxUVcdTAwMGYscJJcdTAwMWPEKEzpkdBA+Vx1MDAxOFxuXHUwMDFmiyzpXHUwMDAx2WRcdTAwMDa/+tizPFJm+s5cdTAwMDRDkjxeiLZcdTAwMTG0pXTv8THW/mSbU6Tb89Yo3e7+3Omw++Q3PG1cdTAwMDJcdTAwMDbkbVx1MDAxNFg1V6hPeFx0adRcdTAwMTdP263UWqh/2LxcdTAwMTfbnVx1MDAwNrf/y1x1MDAxNvObUMw9wPAvw6bB/qsh6reoXHUwMDE5plx1MDAxYnRFfnDiqCaxeZK8I1u7RVxiusTN02/L/Vx1MDAxY/lcdTAwMWWI49hcdTAwMTarn9895Ip/x+pHpz5cdTAwMDCY3KO8ePz3XHUwMDE5hNHk+1x1MDAwM8BcdTAwMTlcdTAwMTQvfleQ7ZaTR1PMgsL5XHUwMDA1eVx1MDAwM8RXzTtcblx1MDAxZHi22rErNWyrX1DgXHUwMDBmXFwlUcPyyv5h+m/T6GRcdTAwMTdWzlx1MDAwNVZ1tf/QsVxc8CpcYlx1MDAxNaP4JF+4gDmG8lx1MDAxNTid0NF7MU3UUqulu1x1MDAxM+3PV/OR9febbFElx+RcdTAwMTNJPkZnXHUwMDA0vUtNYClcdTAwMTXkoeUjseVcIsySkNBcdTAwMTZccr8zba7tJWrmJ9SE5oxDy0COlfk7YFi9JfmtXHUwMDFkllx1MDAwMp9oRr9BYVx1MDAxOe1ZRJXwacSTRZZry/LCXHUwMDAyaZqgVaddlOeWpzfHRj9089e7fYDG+Khtc2PDUGPYfIVNXHUwMDE4Ws7rhu7T2iuFR+ywy9pcdTAwMWZluI/Rwcb9XHUwMDA08GX9XvFq3OS6vYnNmift24zvWXFcdTAwMTO67Vhy7oDJXHUwMDBiLMtUXHUwMDEyjXaNoGtHXCKfpqtcIof5go37Uscpi1VcdTAwMDCILH1cdTAwMWRUu6ySbblcdTAwMGV74XCggdNcbu1Lh1xuTFxutM23ts2MOtXjjFFH69f2ZcB4oUo5wN3TeOZN+LDZk3a5IX/e4jJcdTAwMTbeXHUwMDAy+vPw67VpXHUwMDFm0lx1MDAwNab091JcdTAwMWY4XHUwMDBm5DYgJ4eMWFx1MDAwZT2/68F/XCKHs+OMz7+/deR4qVx1MDAxZmGWUvN5XHKOzFx1MDAxY/8umpfAXGY3MPmK7a+fvVx1MDAwYlx1MDAxNb/7ck0lTclcdTAwMTBK2881tUq0ovNcdTAwMDJcdTAwMWNWkCNTOHJcdTAwMWbx8y5cdTAwMWQ2MVx1MDAwZoBuXHUwMDE3Tjqqwq6VJ1x1MDAxMLxcdTAwMWUguS6rn89deMM+kE4mOCWfmjGOelx1MDAxY4CyXHUwMDAxPSzevM9/XWiX1DV+csonnOSHXHUwMDEwWPL2k/vFXHUwMDE1KOfQXHUwMDA2XHRG4SHdQUE5ZTqnXHUwMDE4k6RcdTAwMDQ/4as1T7j+YCwh7Fx1MDAwNaOQXHUwMDE1Tv61XHUwMDAx/8FdtPgp76BXs2PTXHUwMDBlttRcdTAwMDdopZTBliYhXGaYxEzkXCLfh766XHUwMDBijUGh/J08h3Ncblx1MDAxZdtcdTAwMGX8xpMql09Qzoy+Py8nVPzJXHUwMDFk2nGAr4vfkvZcdTAwMWTKxsi/QSDZPFx1MDAwN1x1MDAxYtu8XHUwMDBl5vvDVuDCY/BcdTAwMWLlmlU3a5zJ8uhGV/uMoTRKXHUwMDBieYBPIK7hiFxcnFxc7fRcdTAwMDWXXHUwMDA0YjPoXHUwMDFhbC/Malx1MDAxZj6pjemznnYgXHUwMDBi1ZnS5DpNXHUwMDE2voJw41x1MDAxZlx1MDAxNGaJR8CEYjH4n1x1MDAxYu9821x1MDAxMmnpXHUwMDExm2WXh0LtqVx1MDAwM0aOMJC7TX9cdTAwMWTEXHUwMDEzUz3E61x1MDAxYr9IXHUwMDE3xF1cZrzs3nf2cj3H5Fx1MDAwM6v8XGJcdTAwMDY+qqtUu1xmn6NW66yacYg0qy7/RuH5hH+hXHUwMDA0/aTkk1ViwcraT+JcbvlcdTAwMTme10lRXHUwMDE3lWTD5T1cdTAwMWNvY5swXHUwMDFmILXcplx1MDAwZXxcdTAwMWWgfDRq/Yg94afHS/BMyiOepeGlklx1MDAwMJhcdTAwMDXH71RcZrRcdTAwMGb42/gygLpFzt/vsqKTZ7TXMGDDJyS8QH7Rv8FPILmnXHUwMDExXHUwMDBlryutQCmlL5nbilx1MDAxZFk0+lxmf7VwWVx1MDAxY8fguWbOa0wsf1x1MDAwMrBHLZqbelx1MDAwNFx1MDAxNaLKuvOk+YYqUWGYja0m6Vx1MDAxObecbtz2lFx1MDAxZva007EnibdcdTAwMDYgXHUwMDE4ZfExtDdcdTAwMTWI4p5Vpmv8ekG04pDQalx1MDAwMFBYry+hLK9cdTAwMTHLazmiXuHHjOritaWCYImeWz+p6OSV7JiSPvnCZ9doanO2waSCMdVydLBcdJFsb+rZlZfkXHUwMDE2edSbc7uP4PRBvOsrXG67TJB4XWmSXHUwMDEzb/VNY2r3tVQ6n6xgSVcv0jFcdTAwMTJkNExFeHJcdTAwMDLEXHUwMDEw9rU9v17LXYaMQNoysJjnwjBFQoa4gqAg3nMs7cP0Kk2LXHUwMDE1tq6XXHUwMDE3QXL4L9RhXHUwMDAz+VOpcyHNz4v/NnOQ95lcdTAwMDVgXHUwMDFl2OzG/oz+2OczSXdQTW6d+35h5uy+2rLsoC1hrv1cYqBNXHUwMDBmKNq2V+5cIuKM8Dp7wUIqXHUwMDE3XHUwMDExXHUwMDFic9o8YJtlVtfq+bJcdTAwMWFnoDirIU1cdTAwMWNcdTAwMTinXHUwMDE0Oes1XHUwMDEwj1x1MDAwMt+33uQ5PU3wPL2eipCxKFx1MDAxNW28r/ai/MbZsbdEXHUwMDFhhztcYpPU1VlcdTAwMWbuJstARs3JXHUwMDEylVx1MDAwNfPd4NqBp6PAn/BWV96hrVx1MDAwNlx0XHUwMDE1NFwi7NVWiMNcdTAwMWL43HhapqRKLIpQKvHos5JcdTAwMDLW7IFcdTAwMTWed1x1MDAxMP18TW99OvRGmlx1MDAxMGhcdTAwMTdcdTAwMGKzP1xmlTh9U+9cIlx1MDAwMZNcdTAwMDCVwrirmmbp3y1nh7JiXGK38uPMXHUwMDA0XHQzXHUwMDFhXHUwMDFmNV1S4oxcIlFwxIhcdTAwMGLQUHtpMepoLb72ZCHftsxArlx1MDAxYi5cdTAwMGWpotq2Q/RfyvZShjXN1qi8jfZXpP0+eECW3faDb6Y2Olx1MDAxM60rPT+jvGlTt1vgQz2O4kWGRPNcdTAwMGZk/EiK4VJcdTAwMWbKjIpaXHUwMDFj0UuCXHLnJIziKtl8klx1MDAxN4FZniGI3lx1MDAxZm5KXGLCyVx1MDAwNIGjSryzbWo16TZcdTAwMWJcdTAwMTRoUVx03Vx1MDAxNu6iLcz6MMBI+yhcdTAwMDLioThgsWdJPZFphnbySbla4XM/Lr2OeoldX3YzoGq3KTX86Xn518cqcoyZun7h2XTSm1x1MDAwZiHdKmK2e7ZAXHUwMDE12DqCXHUwMDE1Xi+GpFx1MDAwMO1cdTAwMWVcdTAwMDcx8ExnzvGYk051k6FS2mRcdTAwMTA3sUjnprlSvGxcdTAwMWV32I23hn1p/FX/r7e70yTc//OozFx1MDAwMcfFu1x1MDAxZXA/4qNIa9AvOqZwwFxySoxcdTAwMDHWh3ucNNZtY/SQXHUwMDFjXGJrLZ9cdTAwMWZhfJeBQm6WUDJKJnxnXHUwMDFmXHUwMDBmdLZcdTAwMTWknY9wzmNcdTAwMTRcdTAwMWHaXG5TdUb4uyv3Q3El5Vx1MDAwZWYkZiy0XZ/RxiwzYm71k1x1MDAxYYGkXHUwMDFma5NQbfNcYquxm31o4PeNeXpsl7ZzOHy7XHUwMDAy8fc7bF1RXFyN5OkmY1x1MDAwMjKC51x1MDAwMkt9l/PQZMu0XHUwMDE2dMqoRYo6Uuv4cV/d2kyigGHCXHUwMDE4llx1MDAxMlx1MDAxM09X6Fx1MDAxZewgOWp7lJZcdTAwMDXp48xzqc03OLz6iTQ0Ua6EhndcdTAwMTjDsKvPU0BMVVx1MDAxMvR5IP2V0nlcIs5ccjHD5lFrN1x1MDAxOSy4spxDTmlcdTAwMTk9nUg3Mrc2dDx0oGLwpiONxr9FXHUwMDFjmFhcdTAwMDA+O1x1MDAxZV1cYjnYryaKV5GUaFx1MDAxYkjq6zFcclx1MDAwZYH7RdD8mMvE9J7IkH4nTFx0TLPnz2yOuaaIikmrsFx1MDAwZlxmjU9cdTAwMDbDXVC8Ntx9vjjr9kJcdTAwMTnf+irVY1uLTG5ZQLKoxb3AyFJcdTAwMTK9p3+vv4MljkpcXKF3XHUwMDBl9lvXw7ZAXHUwMDAwI5pfj35QXHIr1eCbobtcdTAwMGU5buXVv9I6XHUwMDEwXHUwMDAwXHUwMDAwaHJeieSsXHUwMDE4RmZYxflcYp5pptdcdTAwMTS72nGud+biPvgyXHUwMDA1uja/IGI/wP39jTajxFebvmkmrK3PRlx1MDAxNHCtqSCNVI+QXHUwMDFkKuM2jlxcxuBhXHUwMDAwtzGQM8o5mzJb4KpHSGBVXe/7lGRcdTAwMWJCM9pvrDtQNqndYr16WXD59VCMPFxc4FxuQnSw5NaWY/tcdTAwMGJJWObPh5+Oe9LwQl/8Ujg6NXzDnIObXHUwMDE5XHUwMDBlZDlOg2LK0L3prXlHzXxcdTAwMDeGVFBfo3eg2k6caI86XHUwMDA1VUqaXHUwMDAzW1x1MDAxONVcdTAwMWbPd2MrhY2pvE4vt9ks9y1cdTAwMTNIt7WILdWsUL1IbZmaaPOaZiSm06zjvzhcdTAwMDFZOc0tr+WSIVx1MDAwMdtcdTAwMWW3N8lwe6JT+Eqb2SOz31Xy79HAat9pWLYoP82SrTiPs4KlskCOpduEtFx1MDAxM06XPGZIlebf0shcdTAwMWame3Zbp1x1MDAxM+LY4aVRIIj7rXIlXHKviGdD1obci9abViS/XHUwMDFi3ECmZlx1MDAwMKPSXHUwMDE3XGbSUFb4vVx1MDAxMlx1MDAxY860T2jYp3ffuE5xTLO/XHUwMDE3XHUwMDFh8odilVx1MDAwZif9OGtcdTAwMDFrXHUwMDAwMIz9IchT+jpcdTAwMTItncK2bzHERzxbzNTYzVx1MDAwN7opPXVcdTAwMGaO9oGEL0eEXGJcdTAwMWFFz1x1MDAwNNmPZlLmh4JZaSOHoTjwULAzXHUwMDFkXHQlk2u3NZ8+JX1cdOHlSkXZhFx1MDAxM9hLXCIxXHUwMDFjYtp7UIb/LC5cdTAwMWNGn1x1MDAxZfa8r5GM/fQwXGZ1X6Z+2UhcdTAwMWNMWJVcdNXYj+CwLZbyQ2slySX8XG6haXCOLF3lMtHhKL81/8dcdTAwMDHeKyxnq2PF0Y1dZ8mCTaqNhNtcdTAwMWbndlxiXHUwMDFk8Vx1MDAwMpmDwOunh7htiiO0SFlYk2WRiFxyJFx1MDAwMCbuYsBR5OCfXHUwMDE3XHUwMDAxbqOwzpO9XHUwMDFj8OWunV6TXHUwMDExM7F5Yo7b53uPjEydt0RSufyQSavcQX9C2k+MQcX0tzRcdTAwMWSTgdWY65nG0c1cdTAwMTjUjjtqPzedIW+Zdlx1MDAwNz7sf2mLXHUwMDA3Rlx1MDAxYlx1MDAxMdtWdlXfNNPVNW6ffV02tLldwKXlgv2DXHUwMDAwoup5VeRcdTAwMWMrbF8rp4whblx1MDAwMcBWe85cXHMg7SdcdTAwMTPYsGVY+vqOls8geKyrXHUwMDAzliyOpttcdTAwMTf9jd1MU255eKLhN/Y1XHUwMDA1lbn5eDmtXHUwMDE5jVx1MDAxYySMXHUwMDAwoFwiITuBXHUwMDFmZihcIkGbkt/Rf75MTEyMSubs3GpcdTAwMDBcdTAwMWNXkquTtfPWhjcmXGZTWZqTXHUwMDFjujSU8ogr+iWmKXMzXHUwMDBiXHUwMDFkk27WzTbI4szvWlx1MDAxZSehqz0kNFx1MDAwYuirZHhWkJpcbkA87lx1MDAwN7BDrLm6qL1cdTAwMDLqXHUwMDAxIVdcdTAwMWbO/lx1MDAxN/B3PbpjYtbegXBC/2//QVx1MDAxMpvUb4RyXHUwMDE5XHUwMDFhXHUwMDAwkPbcj45cdTAwMWJ5kaLMekHwXHUwMDFjlIVcdTAwMTmVWO6VM4nPPn80oD98L1x1MDAxZtSWd5kw/sL5j+sjXHUwMDEwNmDxu1x1MDAxZd3HQY2ByWVcdTAwMDdcdTAwMDb1ZFwi/lx1MDAwZUxlJ+C31UOgJSRwf6dQij0uN+dC/r65o03GR0+RepVcdTAwMTBcYl5KXHUwMDA3sDlcdTAwMTbkXHUwMDFjPmOeypr3SW1UXHUwMDFjgoVfbCqz/9d/rFx1MDAwMqBcdTAwMGai+45m869XJUCTnmHmrdfk3nLMuT9ViGuVXHUwMDFk5o7TyOFAqf2KXXAqzFx1MDAwNZ+dcLOvgLLHY2r4lEVEXHUwMDAzXHUwMDAyZ1x1MDAxMya36oSjXHUwMDExfrp/sDedzp13V1t3e+m3z5GgotGBzqVJLzv4IXL4PW00jf/djN8hXHSppFHRvPNys1x1MDAxN0JL1MnhvZR06kK72Fx1MDAwNCdcdTAwMWKHPzKvL7OtLzu+jM+L8tM9RzWZL/P8Y3zgXGJUXHUwMDEyK8GQzFx0IYLx9m7WgzL63FEmnsK4yVr9gYdfh/tcIitk1WjRW4FGPZCEJMYwXCJCqVxuSWr0pZQqvyZcXFLmsdP1dFwimNibXHUwMDE2gJBcdTAwMDdv9ptjpC6EwYKWWsPwaUgzS1x1MDAxZHNqXHUwMDBl/F2olFx1MDAwN1ZCU9rHXHUwMDBld2n3XpawIFx1MDAxZSrw6FxcWLuKXHUwMDEyolx1MDAwYk1cXPhwXHUwMDE5hYVcdTAwMDQx5XfJL3tDZLWWOlx1MDAwMIGny679TJvSsc44v9ehcim3UpzCTlTwrsvtrMl2j3a6+Tttz5VcdTAwMDPnNHjPr3d4qNK1wVxuYG1cdTAwMDTQT7CJPoHMfkCk8VqjXHUwMDBime5cdTAwMWWrKVx1MDAxN1o8xTj+JSm3v96ak/eRo2P0XHUwMDE1uIQw+OFcdTAwMDPSPGlcIvfQPVxmVZmcKkpG3KjWzpk6TjTi32c1czk5P7dcdTAwMTd9MXLtmYHN4tHzmE95Ie2e5Tlr2SvfXHUwMDA1f8zOzVo5vMhdXHUwMDA29zevv+lbXHUwMDAzpVCnl8GIOFxc+KGGSKAgSXytuvvp1fb3noivx83pOzNpkLM9PuLjkY5cdTAwMWZcdTAwMTfAzlxuXHKTv35/9XBcdTAwMTOK61bSw8E7dM5cdTAwMTNzlyakm1xuVTre1z1cdTAwMTPLt7JH+25cco9ktkpcdTAwMTiG+yiYWFxyXHUwMDE2I0lcdTAwMDLzRW5+rvAsMMdcdTAwMGZOkXn6i/pcdTAwMDLNsuH5+KBoXHTUX5M4/ceSXG7/6qD71lx1MDAwZvx+POBcdTAwMDJ//rDjZfVo2lx1MDAxMLg0u1x1MDAxN1xygVMpXHUwMDE1Tk6+XY5cdTAwMTCfn2+aSt9QZnWBk8RScu9WxcdcdTAwMGZcdTAwMDeTL99LMVx1MDAwNVx1MDAxMadcdTAwMTW7wi9cZlGfqrA8oc5cdTAwMWJ2o9EquNdvXHUwMDExXHQ6VJWnbf29XHUwMDA2ocnZulx1MDAxYVpouablXHUwMDE3cLS1hCwrMJQ9RFxmcpqmI+7805XebFxunpw2gebh65nahPuoMVx1MDAxYaAtaN53wmGOniU950OlofPXVlx1MDAxMVx1MDAwMcyfXHUwMDFjkip38frwbKg78Uq90Fx0MpCTXlWQqTnJguXpXHUwMDE3nknlR8/8UOLm2iay+jNcdTAwMTbRZFx1MDAxZS3wrTdcdTAwMDZcdTAwMTNNmTSIb1x1MDAwZVWsIUlfjlx1MDAwMzigzEnpXHUwMDFiizJcXG05vvxipZ9V5TrkXHUwMDE3XHUwMDAxZahMcFx1MDAxN0NcdTAwMGVkeYIxPyGFhJqEOiDWXVYxuiqE8v6wIIhcdTAwMTlepP2eXCJJg7tcYmmIXHUwMDAxXHUwMDFlx2iweI6fXHUwMDA11odcIm6wzFx1MDAwYvmK1uvwLVF1j1x0gsrEXFx3cIO9XHUwMDAwrIr9S7+MXHUwMDEyKlx1MDAxY8Z1XHUwMDE5wz9R/mZ1MD/wSGGGrU4+clntXHUwMDA3u3S8f+dCs1wit5JOXHUwMDFk+vtmKUJcdTAwMDWy8bpcdTAwMTOCYc7CrUdcdDCxKFx1MDAxMe09kLNcdTAwMDVFfi/+L+Fu7WY0s2lLg5o5MntDSiZ7J89cdTAwMGWsXHUwMDE1O4GZqEO9iqJhlIbLNsP+mmFcdTAwMWEym2zDXGbeeH8nzaJccl+UJZVnXGZgLFx1MDAwNFx1MDAxMuNJMv6RXFxQTe5ccni64ypcdTAwMTdcdTAwMWNZRlx1MDAwMjuMZ2U0eZpRNWTRLqa63Fx1MDAxY+xcdTAwMTBhe2hsXHUwMDEx1MNrR70mt8GtXCIxa1b98FxcXHUwMDEzob9H9GaTj8Tj+rN/uYjA24ODXHUwMDE2zsZcdTAwMWSTQotcdTAwMGV8metcdTAwMTTxvfmw1+fnavxuXHUwMDEzXHUwMDAx8bd3+uvNs3r5qLZccjM1xqOuXHJcdTAwMTlBilx1MDAxNvC4eFwitVx1MDAwZUE07UxTXHUwMDAwUkNSk1xuzsruL1x1MDAxOGRksbrfuolkiUq273Ek6W/ft6j6uO9cdTAwMWZcci158vh2ppVHLGq73LdWnlx1MDAwMCdYlL2n0PhcdTAwMDUgXlx1MDAxZUCImy5cZkSPmlx1MDAwZftcdTAwMWNxWfRY5a5FXHUwMDFmUoxMJbBcdTAwMDBe97V9XHUwMDFm0rRcdTAwMDZ9TGfVoyRAMo3+vkfPeyO/XHUwMDFlm2GucGz0qCBpXHUwMDEy/eJyXHUwMDExWlx1MDAxOUhEJ+I6WWt4ICx474Jmm4uG8HaiefEwxkCFt8qWXHUwMDEy6C0gzFsgXvB/XHUwMDFmjVx1MDAxOVx1MDAwNP58QnDKWDJCOWouLrKmXHUwMDFiQHWnuJZcdTAwMWShK1FcdTAwMTRcdTAwMGZcdTAwMTTmzbhPXHUwMDA0SeJcdTAwMWJfyZLH2tJcdTAwMWUm03y5mFXJei4rud4pPbFcYmdcZih9j8JRiDRK3Fx1MDAwNXCx6zee/vb9v62/dIJOT9MygUiZg+g9h+XxvJBBZMRbhF9cdTAwMWRFZKu24dJcdTAwMDSSwdRcct0uunehNo7UVeBpzY9cdTAwMTD5XGZcdTAwMWVvNVx1MDAxNZ7fTbRcbjq4X4C+lIr2y1x1MDAwZpi4aLacXHUwMDE5wCNfXHUwMDBlX7VTXHUwMDFipL89RZlcdTAwMTlt4ctQgHfDvGs8ds+TLXhyn1x1MDAxYdmS43Dc+IXJwfTZj45PdHTGXHUwMDA25Z6NZm1zaKfhXHUwMDE1XHUwMDEy8LhcdTAwMWMueFx1MDAxM5et/oK/nVx1MDAxMWZcdTAwMDUpbpdigPDvoi3+uuWP5f5cdTAwMTHpXHUwMDEyUq1cdTAwMTcnrJUjTNjG0cTBZMr4uSv1wIc7gjXNwcbthi1wUcemJGxcdTAwMWLnwOtcdTAwMDJpYNPb+k2d2FahoMWkhqJcdTAwMDNcIkdmyDWsssBcdTAwMTn1J1x1MDAwZuDstE/wbVx1MDAxYkRQiWqW1nBcdTAwMTBWXHUwMDFjvm40fTnJofIhRlx1MDAwMVx1MDAxN74kXHUwMDFkrraqy8CwaC5G7LZcdTAwMGKmmaDeYYSQz4XkUOz8gitK8/a1z3vTmCHgvtLxTWY6L8wrtDhBklx1MDAxMydcdTAwMDDp9a6v+2KQXHUwMDAzXHT1XHUwMDBmv31nTJGwMDHL2aNN4ibhjXa5nGg3WFC1oU+fXHUwMDE4XHUwMDE1q6Osnb9PpeVwXHUwMDA3Q9RcdTAwMTE8XHUwMDA30yT2XGalNLJJ18Ml+HheXHTjqnhDO1x1MDAwN2NeQ/D3PTfYpkhcdTAwMDBBrnNoXYBE6JxihDW6wlx1MDAwM5SgT8RcdTAwMWNcdTAwMWE6XHUwMDAzXHUwMDE0uDZr9jJNMK9cZjulL+Q0L4tcZuZHtjZDXHUwMDE5XGIyUadk45yJbEfEsPLJXHUwMDA3T4yoQ6rtyGFcdTAwMDdiXXLD0tZJ2FAuXG5cdTAwMDeBfDjIQ3rjmCboXHUwMDBlxt/pMn700Cp94b9cIicuzdZcdTAwMWVcdTAwMWGwdiBZdJtcdTAwMDHQrky3JoZcdTAwMTXCPeJYaDUyNiU0q0I8dzmPgtvj/ExcdTAwMTSTilx1MDAxZJn5/lx1MDAxOerhc/Tv//yWX0B7ieC12/1DjiY9QlxmUJNGe1595ctcdTAwMDRExVx1MDAxY85cdTAwMDfOhECNZYp1xbylOaA3NPmG+Fx1MDAxN7ne0lx1MDAxZF9cdTAwMDJ1ldhhXHTi3Vx1MDAxYa9zU1xuXHUwMDBiXtCzjMlcbsmFV3++qOtDn1x1MDAxN1x1MDAxYjZcdTAwMGXn8vWcSY06NbrZyPBoXCJcdTAwMWZRj+jNM1mWNe1cdTAwMWJHWrlcdTAwMTXQXHUwMDBigr5sXHUwMDE315tjNVx1MDAwN+Dksb5LZcnl78Vk7CHAXHUwMDE2urS08UKrLP/eXHI5zvO351fYXHJ/aFx1MDAxY7CAYc27V1QtLl1rXHUwMDFmNlx1MDAxMdEwiUZpwafdpuRU9CdcdTAwMTQhU4eW+Vx1MDAwNiCGPsyN+UDAWIBRXHUwMDA0noXTtFx1MDAwM7m8XHUwMDBiXHUwMDFjSXtcdTAwMTFkLLWb33lcdTAwMDb0yFxm+oj9/DxkXG5fXyNeXHUwMDAw9o3RY1x1MDAxOUL8kFx1MDAxMVZbf2l55DiKxjfrma8on3+XXHUwMDFhXHUwMDE5icrpXHUwMDE0mejfQ1NcdTAwMGZcdTAwMWVU8MzU7P9501x1MDAxYlxi6OnlMrp4iVx1MDAxNkhlbENfKlx1MDAwNU0yPlWa1/lqXHUwMDEwizZgk5HC03ntJ4xdl0er/8ZcdTAwMDYq/zM2d+x5PYvIRqRRiEx5q5+jXHUwMDE2oON5K9lcdTAwMTP2m92exTNPorjk+j5M6aZ/XHJmXHUwMDFlSdWkQ3725lx1MDAxMdbNKiujPNO7T/NIOLZcdTAwMWSbMOX6RuM1gPSacFPF9tRcIm7weGnhXe8xXHUwMDFi2ao/XHUwMDFlz+mSKuUmiaiTY/6QSypWXHUwMDE11zGCLM6FztZcdTAwMTB1sfbBrlx1MDAxN9PAJTpfJvJmrnSP/ZBtldY2Y5Sk46D2sGaSMz3+9iAsXHUwMDFjWu1/ObQ18MvzbMGZXHUwMDA2ie89jcHZLXwvPKH6L7qHqbsgrU5ALl89eJe2Jf2hv4NQuSZCXHUwMDFj2jxcdTAwMWS0tHqc8vksQpfN2ocnwpFbVfAoNq1ccnZ6u7hB1zT0c9th1SxcdLpQqXakgb5cdTAwMTTC0vDDXHUwMDBi7TPOWlNcdTAwMGW6XtTzh+chyN5Ujb5cZnVWXHUwMDAwbLjE0Vx1MDAxM8P+58Ut8fNgdDoghaWQWVMp+Jcu0Vx1MDAxM76ePFx1MDAxNM9AVtEuiDjI2GekdoW+J85cdTAwMDZcdTAwMTS9XHUwMDA2Rlx1MDAxMD0/XHUwMDBlmMDv3Ztfv+vMRlx1MDAwYklcdTAwMTfkvtpcdTAwMWRcdTAwMWPhSMFI5cnH8yPKcl++k7eF277wzPz1IYZcdTAwMDfyN8Z7XHUwMDE49O4vhFxu8JZcdTAwMTVcckqGo2ItPlx1MDAwNVLo+Vx1MDAwN4P966jxXHUwMDAwPkJi0Y7nNfpcdTAwMTZcdTAwMDdfLPnqcp7XiliaPiUoevIozVx1MDAxYjNcdTAwMWGB+smA6dFbXHUwMDE0XHUwMDFhRVuOzq1cdTAwMDY1tCnVRSaBNmqfXGZcdTAwMDS+39AsZ//GXHUwMDEzdnLw902YcbFHnJlfXHUwMDA0Uz/G813Bh4IqlqAxL9K9UDsmXHUwMDEzpJDSQFx1MDAxM4bYwMhhrOqqnCZ/XHUwMDAx2UXyW8b22Hz6d+1pse+A9re+mmNcdTAwMTBUeV7OXHUwMDFlXHUwMDEzuYkke2baLlx1MDAwNSqYn2FcdTAwMWUrVVx1MDAxYpjcP5FxoDe10C2lcv2b36Mnm5/p5LVi/yAsXHUwMDFhIEdcdTAwMDOxR//vXFwupiRGVSSwdTVcdTAwMDRBWpBjXG665zCKhiRI5jb95utIXHUwMDFldl24k+tX/tsj1Jw3x1wipNmaXHUwMDA2w3+rqVxm2Gvmn+lcdTAwMDd9+pVkX9bAh1wiYY26o/69x6t3M1NcdTAwMTS2ZczHW55cdTAwMTPRXHUwMDAxvKlj8qFNkVx1MDAxYlxuV2Jm211sYbpP5Ued29TyQuxk6Jz1xzlcdTAwMGUqfazuLLJcIi9gKO7AXHUwMDAypSBq5IZ52CrpXHUwMDEyVveAXG5zantcdTAwMTTXYU/sY6JbXFzKWt3cvC/pXGZcdTAwMDBcdTAwMDDySVx1MDAwZrc3P21cdTAwMTnLhrvvUFxil5uf0lx09cYhbalAuFx1MDAxY2afWvS+PjZcdTAwMTRcdTAwMTE8XHJJXHUwMDBl/pgubX6YbPRcXONFLFxy3lx1MDAwMsKOelDyI8clYzenXHUwMDEx4HdcdTAwMTdEqsVcdTAwMTfFJ01uzm7WwS1cXDhOgiZ5XHUwMDE5ln5cdTAwMDBsgIXjYVx1MDAxOVx1MDAxOGjTuYaeXHUwMDE2KHD1+HqZXHKdjlx1MDAxZTpcdTAwMDG1/kvFOpOiXHUwMDAxSFOizcJDWHB6jpw7u2CSPuiDrfmDLer0LGw1ccFcdTAwMTZ+R4BVXHUwMDE20s1cdTAwMTSuzC9nLmlv/jE/WeVNXFw/Sa4h+Kxj8E7RsHeQNp3Rx1x1MDAwMoSZ156hjC9d/+BcdTAwMTidXHUwMDAxqU1cdHo+hmlcdTAwMTJYfL/uhVDjY0c3M1x1MDAwMeT6p5hTgVx1MDAxNalccqBcdEDY9cdgvK9cZvM67sSc3lM27OnVXHUwMDA3yyB+6yx3zbyd/TSvPCHv78J/veaD4NVcdTAwMDZcdTAwMTlnXHUwMDE4e4lcdTAwMDSmXHUwMDA2XHUwMDA1Z7Big/A8t/uMdsZcIkbaXHUwMDE3ylx1MDAwYlx1MDAxMrDGLtdcdTAwMTc7s64/YGrvLkCNssvj9Vx1MDAwZjfJRlx1MDAxN1XSV5yP396sLJIo8Fxy4Ilq/r/2vmvXVWbN9r6forVvOVx1MDAxMphg4Eh9UeRogsl3Jlx1MDAxYUzOIPW7XHUwMDFmvPa/+19z7fNcYj2lKc0gXHUwMDE3VV9cdTAwMTjfXHUwMDE4lXgmZU1p6WVcdTAwMDBScDdiylxmvGVi1lx1MDAxYT/9/Vx1MDAwMZFcdTAwMGVcdTAwMTN/341cYj5cdTAwMWZcdTAwMGZcdTAwMTUxXHSLo1CHjd7bNGOz64K7+SmGXHUwMDFi6TYpOVdcdTAwMWSMJjZcdTAwMDNcXIdn8jFmbzSI0rWfWfRcdJjX62mp4Zd/XHUwMDA1n+1jXHUwMDE0mVKDcbcu3DHjXHUwMDE2UGDyctDzsLW4YkRXRFx1MDAxY9dJUC1e+D3yui1WOrhccldcdTAwMTQn/lx1MDAxNEhcdTAwMDPLrch+POjs4mBwTkyh1k30O3wzUoCpJlx1MDAxONtXXHSOXHUwMDBmzqRbv2TRu8FSn9He002hcClyv32hLKF0R1x1MDAwNdtcdCB7vsVe8MRcdTAwMWWj6yHsllx1MDAxYyp2ulx1MDAxN3FEi6x/WUIoXHUwMDE2vcuOMjfwN6ZtXipcdTAwMTE94tec51x1MDAxMJTwXHUwMDEymVx1MDAxM4dcdTAwMDF5QWldTtVcYlx1MDAwMF2YX77dkfrg1sqwg1x1MDAxZL6n8TmcstbVhYgku/1cdTAwMWFcdTAwMGW15JQ7d290JbqH5cLJQLJzL4u0XHUwMDA3PHjWkCMr5CiGLVuLxc0v5tdagqKMeVFcdTAwMTXn61x1MDAxNqczUr5A1czaSjqPrEpcdTAwMWb1jre2Xz689s549+dcdTAwMWLK64x4vmeks1x1MDAwMK+6MmCFS4JmxXeK6Ebx9VX/9NerPY2c21x1MDAxYz9cdTAwMThDXb9xQlx1MDAxOfl3moDmXHRvYDtcdTAwMTVu2lx1MDAxZchcdTAwMTclNUZZXHUwMDBivPNcXO1+rnQuXHUwMDE0VFx1MDAxZTBszVx1MDAwMvB+bkpcdTAwMDLYXHUwMDFlPFwioWTnyVx1MDAxZFxi+MFb6ze2kGImy/VcdTAwMTf3qmEvXHLOUdHng+hcdD5lJ9puXHUwMDFlnrLiZPxcdTAwMTi185hWLdwxLNySv/pcblx1MDAwMPO8LFxuvv1Fpu/85K0urmjYmT2rh4FcdTAwMWF9JIK9S6t3X62+huTdXHUwMDE3ieRQPqekXHUwMDBirVx1MDAwNqCzW3ZcdTAwMTK9fbJcdTAwMDLi+79twIKH9W3zklxcl37n7uunWVxcXHUwMDEwjXmwTLNfzuKc0idkh1Og7eSqf1x1MDAxNHPZfW23U7kjP0guiHOP81x1MDAxOKu+WOmWUFfPP5Wd/GZcdTAwMGZbvlx1MDAxZaZ9wN2vLE/ObmXdmp+FXHUwMDExL9DAXHUwMDAybLQ0QUz9e1x1MDAwNFx1MDAxYlRcdTAwMTW/nCudfu1ztOkpXZp7J1x1MDAxZC1cdH+8NEVT6S/7XHUwMDE2XHUwMDAwuFx1MDAxZFwiJr+mwzRwtW2+NnYgSa1IjyhYZpn0Xlxm9Ia+XHUwMDFhbkWuXHUwMDBltOHyXTMqoOLGJ1x1MDAwNnJzbp2xXHUwMDFhY0hcdTAwMDf2/Fx1MDAxZU7ecv+OXHS+vNq/Yuz9XHUwMDEyvvf7+H/tXHUwMDE1TGxy2kJcdTAwMWVcIq09vKF702LkvHqYSlx1MDAwNC/OkCjAXHUwMDFiuFx1MDAxM6/uc2PW21x1MDAxYZ+eZZfJv/r6bdtnolx1MDAwMqRcdTAwMTdLu9qmR0G8xHnAVs1cdTAwMDe2yXTeXHUwMDFkIU7QKUHLm9+iXHUwMDE0dFxcXHUwMDA1+nTERjxcdTAwMDBcdTAwMDY7hWK8UOadXHUwMDBizOtxI++P+eGH1e+2+Fxi4C9bbF9b7M+BIE2W2ddh3u5E3+DbrVxuUcOce7qmj+87Jlx1MDAxNKrfXHUwMDFiPsIknu5mXHUwMDFlIXj6NVx1MDAwNq+WXFzNpkJ+i1xyXHUwMDA2wJv3hciNuXTQ1cNjb1x1MDAwZeeqUK2XXHUwMDE2NFx1MDAwZumE6n+i4ZO5d9itST9/ZclMaSv0qozKXHUwMDAzWjyvUoaZ+dO8fJH39JqRfML83Xf/KU9XrsiGXHUwMDE3XHUwMDAy6Vx07Fx1MDAxN+gqIecpXHUwMDE3TulwTJalXHUwMDE1TE35YnGOYf3dXHUwMDE1hVx0zc22qqvMfJ/dWlx1MDAwNIAnP1x1MDAwZTfJPCiNXHUwMDExXHUwMDFiM8W+IaGn/8iZ5zdnRGR63mtcdTAwMTd9S2MzQOydS++0pu3FzlChgFiwXHUwMDFhZeOd7mTcc1x1MDAxZlPbUuTcglx1MDAxMT1cdTAwMWSqzdHaXCJG77XCT22A5Fx1MDAwNcRcdTAwMGY0TM9FnTZOL+1hLWF8XHUwMDE0cTUhsMZMUzFcYp7vqy71Vlx1MDAwMWS349ny65xYlFx0dtVVXGKvnFxcmcC45Vx1MDAxZttiJlx1MDAxZriArJ3O2UxcdEqvujvT+dE3sVx1MDAxY7xr6YRv6y2/XGL5w1x1MDAxZi+52e40Ram1QU1VS6GESEeITKlcIlx1MDAxZVxcTfpcdTAwMTKuQt4pXFypP3zoM6qL69lcdTAwMDD8M1x1MDAwZkvb2/RXcFx1MDAxZlx1MDAxY2P2vax3mnqJulx1MDAxNEYzRmKw9qA8Uzli8CWOdlx1MDAwNvDgXHUwMDBle6+LyM1DXHUwMDAzl1devTqJcja5mT6vYt5cdTAwMWPg2DKenv7pXHUwMDFiXHUwMDFkflx1MDAxNr1cdTAwMTekc/dQtmiojFe1PNg2ku/LmHRcXPHcrpp4XHUwMDA0fT1XRr5cdTAwMDYxSX0s57O9re73XHUwMDE4i77+MUSSXHUwMDFk7uS6mW3Ee1x1MDAxYsNy0aGONrhvXHUwMDBlLlxmQjvnq1x1MDAwNb9KZ3O7JVx1MDAwYkWgwqP9Onrho7+Jm0OhQ9ai40ZcdTAwMDTbX3a/xs7UafF8J1x1MDAwNe4//OptJE1cdTAwMDbW/Vx1MDAxOEFF9Fx1MDAwZlx1MDAwMj9cdTAwMDff9JdZwnVcbm4pqa/Bl6yF2G037rfspEaydIKHXV1DXHRdaZNn53/sWYOCsVx1MDAxNGcq2MjE8qXVOaUtcsaN4ozMqlx1MDAxYlIkbKBcdTAwMTJcdTAwMWPqQu4lMqXsjVBV+1x1MDAxNsJcdTAwMDNcdTAwMGauVN8rzu3C7al+7v2NpFx1MDAxNKax4Nay+L9j1lWZwXuBiFx1MDAxZpbskItcdTAwMTZq7bh+7XnX8Vx1MDAxOWdZrTDuKz+Ta+JPZNjq7XmD3yjTYSlcdTAwMDLSUaZvXHUwMDFkx69kO2XblWtcXDLgvPtbzrmi3XDq91x1MDAwZUFj7260N9NYL/bKTiXf+0OaxVxcXHUwMDE3n55iqTbBXHUwMDE0uj1nrfBcdTAwMTHi0EztXFyUN6FcdTAwMTf1OvmQolx1MDAwYmacq1x1MDAxYTTc9Fx1MDAxYtY7YaOz7vW7Oq6zwexyho+xh0ubTos8f66reqBcdTAwMWTszEZi1/tZW9rqXGKmkWS5at/hUlhS/J85+82fkVdcdTAwMWSuY9yyuWsjrPWMg3+ej+S5e1x1MDAwN/PxVixC/TepNNWMkW146nMrsH1cdTAwMTG2nnzWgFx1MDAwYip4zPDgRNTK0/aP9TemXHUwMDE5b+uKXHUwMDFl7SOo/cxcdTAwMDSiSMPCzotsgaE9rlxmtyp57SH6qFx1MDAwNlrfkO/67WdJXHUwMDFj84FcdTAwMTXiYb/bszoqnmLuryjxiOz7vopcbp316qP/Zt+gXHUwMDE03pVcZiYrnJCbz0c4Pflw0klIQqKhXHUwMDFlpbSr9Vl+XHUwMDE3dSO26FRfQlmVSDBcdTAwMDZNLnuTwuXheIMukWUvNvesf8NcdTAwMTGgMtZrXHUwMDAxnCSS3PGBlFx1MDAwZrvc0818qVxyLKc3cTzewVx1MDAwMK0l03XVite3XHUwMDEz8T6SWYrsXHUwMDFhhWhRgVx1MDAwN5HQOZor1WxGn1x1MDAxZlx1MDAxOFxcstvuglgptlCeXHUwMDFidPWxwi5GqECG8Lbd7+OeWnmawzA90PJWXFzOaEvfXHUwMDFhgvOZnlx1MDAwNrjC5Fx1MDAwNvtQXHUwMDFixmgob7/VUblcdTAwMTh0XHUwMDBlXGKHfoVcdTAwMWF+eVx1MDAxOCrtXHUwMDE24TZ0KLpXRuWsdH9S5IFhwEKQilxyumXJ1IhzkJ5cdTAwMTkrTNdLXHUwMDFjxjxcdIOHNylFTvFcdTAwMDPPfVlgVJdN+DRNtux2VXmc4CH26aZcdTAwMTRpjmK+XHUwMDAy5KmSI5Fs9v1Vj0dcdTAwMTWR7S4+gp3U8JIlXHUwMDE1lvm7Lvf8XFzIl0BUg03KYyOfP9yGvMY2iFi/Qlx1MDAxZKZcdTAwMDFcdTAwMTRRXHUwMDE2XHUwMDEzw6luTVx1MDAxY+RcdTAwMTkwYpfcnrdgvdU1jEWV9Vx1MDAxYs5cdTAwMGW2L5uu8NSb0PZYPoCsY/BcdTAwMTAhw1x1MDAxYvN9ZHB9YitcdTAwMDe/xLuIfayB2DrWZGaLQe9ccvbZ+efImlx1MDAxN7qlXHUwMDEwrJx8pNu/4cGzsDqEXHUwMDFkWIIpp7xge1qiPptK7mLpz1x1MDAwMz+I+rjUUTxn7iNcdPFTUVtcXFx1MDAwZXVcYlx041xcpvHwdiax/Y3paiPDlSvSXHUwMDFmPEqLQFNMllx1MDAxYbdNVrDrXHUwMDBiW1CXvFx1MDAxMvC7XHUwMDFmXCK+YX3T3ntP6Zvubua3rmiRXG6Wb9ff5CFxV5F60o8jbNGXWa56/T+2YJlcdTAwMTQ0n7lcdTAwMDA9kWvreykxZFxu0lx1MDAxNd24uyj0ppiWv+bnXHUwMDAzIfJb6sFnxexKmPnSblx1MDAxOZnCQ4JaP/wtyYJ7cenv/WBjv7dcdItyLSGAxuxcdTAwMWaqXHUwMDA1M+VcdJu+wpFcdTAwMGVny/p8e0OkIUrOnsv7VZ+ffFx1MDAwYqWvNzXUx/rOUpJhW6Xx6+e/asTXb/dN7TWeVfd6K8q3Md+3M1x1MDAwNKAj1kxcdTAwMGLOzzjOuoLlg1x1MDAxM5lMo342Rn9CXHUwMDA11XZaYdIhXCLWVCjuc9ymIGns33WA0zVcYjewPfPUxstcdTAwMDFcdTAwMDbOK49cdJtzy1iF4Wws33s2XpRcclx00CQuzYGOe09uXHUwMDA1XHUwMDFjXHUwMDE4L3JoTy736Vr/sVx1MDAwZlx1MDAxZXU4W6RS8vSDU3++bVx1MDAwM/uBQbU1Q1x1MDAxZdBcdE9e3zlcdTAwMTPc201DjEtCfrVZOkBCZZVKbEVoydZ4h1x1MDAwMFx1MDAxZJDKwi9wqMKBJtBcYi1cdTAwMTdcdTAwMDL8XHUwMDEx+KFG6ojpYMGwYVx1MDAwMVx1MDAwMtIscPObXHUwMDAwTNDB+EvYzziOL1xm2C9cdTAwMWRQYUlWVD911I1RZM/ij880eZ5o91fq0i5cdTAwMTBcdTAwMTZXXHQ0XTmJ51e7zuuyo1x1MDAwMdZcdTAwMDav1+yPr5N9XGKJurNcdTAwMWN6x1rcQ4eTdVx1MDAxZpl3QE9em/LJn5bnXfu+njdllSCV0LktXHUwMDE2XHUwMDA3cDK5mVx1MDAxZXm2XHUwMDBm0sy1g5qrPJpcdTAwMTDmXHUwMDFl/lU3fuFlL/DvXHUwMDAwZOqr3Fx1MDAwM9zloITJNTqqdcjf0Vx1MDAxMXt7N1hXqW3GI1x1MDAwNS4n0ECyOCwxXFx0RFx1MDAwZmmBOd9cdTAwMWXY6SBoXHUwMDEwXHUwMDE4rYFJbzzKXHUwMDAwXHUwMDFk0EwuP0FcdTAwMTBcdTAwMDWhNi1cdEazspZIm/p9o0qYpithXHKeXHUwMDAz3Vx1MDAxYXdKXHUwMDA3/be+KE5QXuZJKp6lykdf0EU2XHUwMDFkIzGsRbFcdTAwMDfmQkpcdTAwMDG+v1x1MDAxZVmsX1x1MDAxMSVvXHUwMDBine0+ZZOxVHmnVGvShV+RflZ0g+JQYLZnUzf6qr+n3ujiN9TFLGXMXTaUennhreBJXua9XHUwMDBm8c7xYjPWdfrdUycte4y8j/B3PcJdvOtVXGbWv9bZSunzXHUwMDE4XHUwMDE1OllzXHUwMDFjoSEunlx1MDAxY8jvc21Jxlx1MDAxYlx1MDAxYSVHJsk4+3dt7q1Q7rReXHLBd72SXGZZ/oRjKSlcdTAwMDJLxVxmKKf3h8VcdTAwMWFcInD0alx1MDAxY2u3yHNRf8SOdUVcdTAwMGZ9ib79LLL3Xf7dX1cuMk83XHUwMDA0YYjFXHUwMDBmdbkrL/LmUrqvXHUwMDEyXHUwMDE4cuRs145cdTAwMTXPPFx1MDAxZsJccr7phYTXrSNcIohtRES7psA0XHUwMDFlu1x1MDAwMP7mff/kvCBl3F979WeEh4WLaFx1MDAwZovmlJlccsnh/XhUhugmS1x1MDAxY/PaRlcrz+1u6y1t+pbEx8792VZnsUNeXGK98bxImJhQd1x1MDAwNpZcdTAwMTT8dsdB/SRe053OpW0vztx978OFyz5FM1T8ODBruVx1MDAxNIkn/D3Gf2KjXHUwMDBmrGeAc59krOc35Srn/ZQvfVx1MDAxOL1fLJFhbTR1Y514g/jd87+gXHRcdTAwMGI/XHLQRa+HfFx1MDAwNpZC5llcdTAwMTjmcyYzmcLbaF+AXHUwMDFmmGOx3H6NW2lMZlts+qar2dKU42eW+9wgl/F8h3chPanMXCKRXGIs73Z/PDsrdXOTxuYpfef/n7GXT1x1MDAxYdit1uSMn0RSQ5BcciWXPdmOMU858/r+3ut/++AnXHUwMDA1mFx0wV6t9u5cdTAwMDb6oXvYXHS15Z2crOL3WvZcdTAwMDZFiFx1MDAwYnxccoFaOM9s48i0Ok6u6jpCoMZ8wVx1MDAxMm5cdTAwMWN5ZHQ6YqLsu9oo65WHXHUwMDAwXHUwMDAwQ0Zq3vIslNnNLn1dcUZWXHUwMDBm3S7j3+P6+1x1MDAxY2ebPmtcdTAwMDGiJLmYRXNcdTAwMTWM5Fx1MDAwMlLwJDOFxFx1MDAxYd3dl6JL21x1MDAxOU8jTblcdTAwMDGeXGIu0jymXHUwMDAyXHUwMDFj0ftcdTAwMGK5XHUwMDExz/m3uZxf7fI8UiCWJ1/5/eIz47FcIn6ML1x1MDAxMcnQzK9zmI9+rmy5TpNcdF3B81D5xjzz2N9pXHUwMDBiJ0/jqd3NXHUwMDE3L0afXHUwMDFm+YNcdTAwMWLUZVdcdTAwMDKUY5uAp2ZoXlx1MDAxODiGXHUwMDFmfvPtnbq7XFxYqyhcdTAwMTnP7ixgqyv9IDT06f6d+yaDqeTj3+35bU9WXHUwMDE1MF11PMRxb/ddmyAv1tOPXHUwMDBmglx1MDAxZLyjUuNcdTAwMTB5Kqav6e0w4DIy6N5FxlLrvt6GNbiwWIJcdTAwMTH8x5gtWezA9Fmsx0mplnqDXHUwMDAyXHJcdTAwMDdokKOHO3RLXHUwMDAwNZEytlx1MDAxN16daYirVYnibVx1MDAxM6D4aC7MT19cYtL7JT/4X5zoRJR9mYJ6XHUwMDE5L22yx/lcYr1cdTAwMWZEXHUwMDE5XHUwMDA0MFxiQDyiXG69XpRobYKyhslywPCKn/7o08VcdTAwMDPYq/pDutZcdKmf53D6zCm8vqpcdTAwMTPAucBPZidcdTAwMTHHiDqJVXNwzsV/2ii8SClcdTAwMTJDQFx1MDAxMDDM7URcbqOj4dc5XHUwMDBijJw3Mi7po1+Q6D3aojD3d1x1MDAwMlB5PVxccHTHPuWqMaX0I85YLlx1MDAwNd9961x1MDAxYV7z4lx1MDAwMrvAXHUwMDAxkFx1MDAxN+TG2fbPW4FcdTAwMTCtYktcdTAwMTcxc25Col+q3Gy6yziPXHUwMDFmvIOtueJcdTAwMTVcbrxwgEtcdTAwMWU/PCE4wa1VXHUwMDE1fFiqNKO5edGwXHUwMDBiXHUwMDBi5Yak/c6HZy/eXHUwMDFl+FF92iuXIfI5Q/Ku/YktXHUwMDFlY1x1MDAxNd8zP97BtqjQLSDGz3u7rjPjw1x1MDAxZSZIldlcdTAwMTBqTTpcdTAwMDNWxHvxcdv76a9POCwnXGL/3VbfNp+XbnSnMtL3k4mObbntsLqOWb7nXHUwMDA1zXq3w7FrMD1z5vHuefN2onC4zruffn747LLVyKQyzT5C5eqXXHUwMDE4cafGkn45auulf4BcdTAwMTbitlx1MDAxYTx/nZ+mcr5cdTAwMDVJLbLjkziLXHUwMDBmzKXka2Wa8KfdXHUwMDE5tHCt4Hv3W1x1MDAxZSXckqpN+WEwXHUwMDExXHUwMDBl6FxmPVxm/umhspfgiFwiXHUwMDE1800oZ+NcdTAwMWNcdTAwMGZx1eZ0NH0yqsD2XHUwMDA3vn0s9ymFjD5AW1x1MDAwNen8jPhcdTAwMTeHXpcjIKnBqFx1MDAxYefCmsZcdFx1MDAxZmKnUlx1MDAwNNZkp8OHzfa7XHUwMDBmr7FcdTAwMGXClXuL9U9++qGitunhIb/0d1x1MDAxYUuDOVKs8d1nwGaYlXZSID38K4+2K18xz5mHnza/dFx1MDAxZfJrfIbkPlx1MDAwN5JQcTbtkNs5kSgnXHUwMDFi5megvVx1MDAwMcvkMFxi3eUsXHUwMDE3yFfOJvBut3hcXFx1MDAxY6zGUDjKXHUwMDEwLNpcdTAwMWWq+yeG8Vx1MDAwNXc1O278VFacVNdcYnco2ZAvt0qzV1x1MDAxMVx1MDAxMzn+kV6IxZXxtsXW675AMYS6abRcdTAwMTD6+WN+u7DMq7n6n3mkyUJolrbZ0vY012XvmXe/Zl1k78spLFx1MDAxYlx1MDAxMEZcdTAwMTPBhIMztMFq/ftcXPlXf2bC501cdTAwMDFP++eZXHUwMDAys6nJp+vgzFKta1x1MDAwMqGQgYhcdTAwMTj87VuAs9g8L1x1MDAxMFx1MDAxYaRcZnJcdTAwMTFbw3tcIjAxe3O67NKPPOCYXHUwMDBldFduXHUwMDFhsdE6c5WVL1x1MDAxMkxcdTAwMDA54PLKXHUwMDBlqIck8vuS2Px7XHUwMDE2wUa4XYZn5a4/alxmo5nPRDOXXlx1MDAwN/xcdTAwMGZuXHUwMDAyXHUwMDA0/OLc+fXXsLeTZDeAR7kgOSFxalx1MDAxN/87x1x1MDAxM77fY4foLtt5Sf9uky5hLr5qXHUwMDE20Fx1MDAwZaFvu8l/xLDIcIVnuTJ/YV/0XHUwMDA2cGlcdTAwMTiEbVxusWP6Y0V250ZBkGAl+Hkjq3/NU5xcdIdyhj9cdTAwMDVcdTAwMWY2K09dkq1/qyfD9XPwyNPIKlx1MDAwZo5cdTAwMDdNNV12NPt98yb6vE3OjlVvUX+Fd1dcdTAwMWZux1x1MDAwN1x1MDAxOauH0r777HHxSsWi5sxRXHUwMDE3I5CTP/O3Vy8gj7K+5nTMWrmXqOTTba8uLKhcdTAwMTOtot9cdTAwMTmyVydcdTAwMTdHwKRcdTAwMWXbc54r2ENyIEJm1pMk3o+mTHB/4tSVx8LFU6CX/M743DiwNEVcYlx1MDAxMb35XHUwMDBiZs5TOC9cdTAwMTmRXHUwMDAxXHUwMDE1XHUwMDE3e9FcdTAwMWUrXHUwMDE5XHUwMDEzvKyI1ZGALWKvknJTf9a/4dd7mMxgRU+l5qxcdTAwMTMvXGbqScXq5GXT/arWplx1MDAxMcTK54j7rLKxhazc+XPWnsxAZlx1MDAxOGYrl5ooXHUwMDAx99n9+SqQ10roXHUwMDAw/yNGg1x1MDAxN+++XHUwMDFmwFaMfvlcdTAwMGJcdTAwMTOymz5cdTAwMWHpLKjmgCs70bapV7PwcoUnisLcy3stXHUwMDA2T12BXHUwMDE0MGTbpDHI3e++LnhQ0SbmrT/qXHUwMDFhn13OXHUwMDFigN7WyTxcdTAwMTklpH/vj5GYNypcIqNcdTAwMDCIcNBcdTAwMGL0u7dccjZcdTAwMWVcdTAwMTNsXHUwMDFk8lx1MDAxNk7nxVx1MDAwYlVdxVxuoeg3XFxcIv3gZOhcdTAwMDRcdTAwMTHhZp9iyVutU/X/rMXi+5eUfnLlu1tmKMnVvVx1MDAwZuImXCLXh3WM+GpxXHUwMDE4I3MtY6qd8e6gvvJST0tcdTAwMWTZoEFaP4p842KUvzdtXjJ4b3rLmlx06TxcdTAwMWPc7+snX59cdTAwMDTd/NFwtlx1MDAxN95U4TxfT8I83jFcdTAwMTmwqHy2XHUwMDA1XHUwMDAzp6/owmJcdTAwMDa5p6r3uDhn/CfnbHZVllxc4dCfq8zVZ1FcdTAwMTRcdTAwMGKhKajyZkB1J+9w7ae0r4x/xinN40X9XWNiuXcpTr5KMlx1MDAxMnlcdTAwMTSiQSgg3ttcdTAwMWKcs1x0b2NTXHUwMDEzKOjPWqcoXHUwMDE3XHUwMDA2jSBUSq3NQGma8UO51chImUX1elXjXHUwMDAzXHUwMDFivVBcdTAwMGKIsbWtP7hsjCu9XHUwMDE2XHUwMDAyNvH/mj8wyb7PnoXtXHUwMDFk2eSvbeQ/U+XT/MB4XHUwMDFkXHUwMDAw9v68XHUwMDAzocFcdTAwMTNDsvCNgvlcdTAwMTVXqVVmgsHoXFxyIUhpklx1MDAwMPpcdTAwMTa5xIH+rMslO1j3Qv600t5j41a2+lx0g7RcdTAwMTjUKVx1MDAwNHRLdfzpYIHWT2iOcFx1MDAwNpdcdTAwMWHl73NUNSjeltprXGLDUnd5j/dcXEjhXHUwMDAyOiRcdTAwMWQqXFzEk4R4X5nZgbT6c/zBq8HRbTz43lMjPnWYXHUwMDFhwPu+0dQmeVx1MDAwZf2kV1RjVvs80Nr+4cvBdr+z9Z9cdTAwMDdcdTAwMDP/a8+L6qFcdTAwMWE2uDMkXursJJ1cdTAwMDVndVx1MDAxYvxh11x1MDAxNJc5wWIu3L54PHpj32ckXHUwMDEyJGLbkkB818HOMqNcdFx1MDAxMZp9U/zB8dju+lxcx1x1MDAxNHNzNVx1MDAwZSVcdTAwMGbHoUwryHTG9Vx1MDAxM1kn4KF4Z3LeZv7S4I+NiP7AJVx1MDAwMVx1MDAxNHpw4XxTUuw0zWly/7D4k2JcXEh+4opiY/AkXHUwMDE3XCKjOkrp9L9zgO+cTMJcdTAwMDChZFx1MDAxZFx1MDAxNeLdyqlzgc0+SVx1MDAxM7ycW/c2XHUwMDE0c801y9z78Cd3WFx1MDAxMUc0LDbi1VujT7l8l1x1MDAwM0BU3vfKf/lOu1s+jW2b3Wb74lx1MDAxZOBcdTAwMGbeUSGuaFx1MDAxNqyiWa8kRVx1MDAwMnWxSSCQrkXO0JvsuYZoKrUxvGSkXHUwMDFjPC9+fvZtd1x1MDAxZcp811x1MDAwMd57J1x1MDAwYixcdTAwMTnqt+GgQ1OlP5xjXHUwMDFh515QqtxQoIHiXHUwMDA3uezE+Ycu8p/y9VxiXHJSUtGOjrelpy9cdTAwMGZnXHUwMDBmeSHZmcudlnpuVipdmOXDQ8wgv89lf/vxYNNNscYrnZq3NVx1MDAwNVxchUFcdTAwMDdrtJbpuZZcdTAwMTZ3VXkhWjm7RLirq/2CXHUwMDBlWtVT3zLsP7WkjauO/mFcdLGBgyzX0Vx1MDAxON9cdTAwMWamtbrKJofKlC1rONxY3cpVl1x0XGbmonBcdTAwMDbNTt2/cd27koOaJUD7iU1cItDiaFx1MDAxMVx1MDAxM1x1MDAxY1x1MDAxNFx1MDAxMCOyXHUwMDE33GFcIkblnu5cdTAwMDVcdTAwMDQ1Op5+0Fx1MDAxOTWzT1x1MDAwNV5y7jR+YqzKgHizw4I7XHUwMDAz3TNlwcNnpNpFWaRcdTAwMDRd07FTvFx0/stgW6QoPOqYb+hcdTAwMWRn/Vx1MDAxMrmFy+NP3flhZeaKp9hXXHUwMDBmXCKB0uVBIZFRXHUwMDFjhlRcdTAwMWVqsUn6Pffv7Fx1MDAwMm5yXGaxd1x1MDAxNUpi89VefSdK725uwb/5W/5cdTAwMTRA+3BRsO3l+TpioEJC8diabdhcbl81XHUwMDAw+9KTLZekhEeZXHUwMDFlaLXEP/e9WLiGXHUwMDFhlbp2XlJ06n/U3U5/84BcZlxiXFxcblx1MDAwN1x1MDAxOVUq4aukoulUozZNiLOPXGZe3N5yPZVcdTAwMWZcdTAwMTV9baJcdTAwMWXZt3TQ4cfnXHUwMDAzbn5UqVx1MDAxMUONNVV3seGAn1x1MDAxOHn1XHUwMDFkKVx1MDAxZFx1MDAwMMrvSWkv+ZPPfqSvbUBcdTAwMWYgbONsf8SEYylcdTAwMTNgXHUwMDE0XHUwMDA07XbvT74/2ElcdTAwMDE8+Xhn1t0zwFx1MDAxZtriXHUwMDAxylx1MDAxZCCj/TpcdTAwMTWX/SNGelx1MDAwMVx1MDAwNcxnlYXI7P7dttvXts9ZaI36z3g4XG4vLFSbXHUwMDAy0Vx1MDAwN/rfMf7vXHUwMDE4/1x1MDAxYyMs0ep++GSQJ1xucX1cdTAwMDJ8z2i7XHUwMDA0P36Ui/r813/94//8x3/++vpHMmavOUv/8X//83anXHUwMDEwgkZwmryh1K9///d/fL//+/9cdTAwMDHAXHUwMDEwi0cifQ==void bytes events bytes events void 1 2 3 4 5 implicit network connection explicit network connection A B A A C B A A A C Operators Format Connector Bytes Parser Printer Loader Saver I/O Events Parsing/Printing Computation Source Remaining Pipeline Tenzir Node S3 Bucket File Fluent Bit
This article comes from the data engineering perspective. What makes a data
pipeline "security" is left for a future post. Technical SOC architects, CTOs,
or Principal Engineers our audience. Enjoy!
A Value-First Approach to Data Pipelines One way to think of it is that data pipelines offer data as a service . The
pipeline provides the data in the right shape, at the right time, at the right
place. As a data consumer, I do not want to bother with how it got there. I just
want to use it to solve my actual problem. That's the value.
But data has to jump through many hoops to get to this goldilocks state. The
pyramid of data value is an attempt to describe these hoops on a discrete
spectrum:
eyJ2ZXJzaW9uIjoiMSIsImVuY29kaW5nIjoiYnN0cmluZyIsImNvbXByZXNzZWQiOnRydWUsImVuY29kZWQiOiJ4nO1ZWVPbSFx1MDAxMH7nV1De16DMfeTNnIYsx8aE7GYrlZLlsSwsS1pcdTAwMWQxTor/viNcdTAwMDFcdTAwMWVJPjCOXHUwMDAzTiWiXG7b0z3Tc/T3dffo29b2diNcdTAwMWRHqvFmu6FuXHUwMDFj2/e6sT1qvMrbv6g48cJAi1DxO1x0s9gpNPtpXHUwMDFhJW9ev7ajyDK9LCdcdTAwMWPe9VS+XHUwMDFhqiBNtO6/+vf29rfif8mW71x1MDAwNarQLVqNJU5YvfUsXGZcbquQXHUwMDAywLiQlE80vGRfm0pVV4t7tp8oI8mbXHUwMDFhb99dOchtXHUwMDFkeVx1MDAxZsdXKFx1MDAwM1x1MDAxZnb/QrhpzPY832+nY/9uTbbTz+LSpJI0XHUwMDBlXHUwMDA36oPXTfu59Vr7pF9cdTAwMTLq1ZtecZi5/UAlSaVPXHUwMDE42Y6XjvM2XHUwMDAwJq124Fx1MDAxNmOYlpt8s1x1MDAxMbBcdTAwMTBcdTAwMTJcdTAwMTRcdTAwMTBEXHUwMDEw5pROpEV/XHUwMDAyLKklXGZcdCRcdTAwMDVHktcmtlx1MDAxN/phnE/sXHUwMDBmUDxmalx1MDAxZNtcdTAwMTm4en5B1+go1VE92+iM7peLXHUwMDAwsED5wVx1MDAxM5W+8tx+WltKoopDQFx1MDAxMGNBmZByXCLJLUbH3cJcdTAwMTc+ma2P7aE6zrtcdTAwMDSZ75d3L+je715F0MlcdTAwMDVcdTAwMDcltzJDZVHXvnNcdTAwMDHIJGNcdTAwMDBwzrg0bqRdbVBcdTAwMWbOXHUwMDBmncFcZq9JUjtOd72g61x1MDAwNW69i1xuunMkvp2ke+Fw6KV6XHUwMDFhXHUwMDE3oVx1MDAxN6R1jWLcZlx1MDAxY4ejvrKnXHUwMDE2rUeeK4vy4VxmjvLHfNs2nlP8mHz/9Gqm9lx1MDAwZZx7qvmjpY+NUDryJXs8bYbztLfKn7evnsYpXHUwMDEwcFpvfiBcdTAwMTVcdTAwMGVcdTAwMTkmQkDj3o9xyqnfPlx1MDAxOFxcsMHpped3W8676JA4/U3nXHUwMDE0uJBT0Ho5pYN6qNOZ5lx1MDAxNFKaZplEqi5J6pyCKaVQXHUwMDAyaFb+m1I2ilKeyFxieKpHjZNcdTAwMWVcdTAwMWJcdTAwMDBVXHUwMDA32IFcdTAwMTZBXHUwMDEwXGJKOKRcYmgpUTuQvFxm1UBcdTAwMGXqzZP8RbuRhFx1MDAxNPPlueboQnhcdTAwMWToXpzCk//Sj0x2w/eH7zeea2SFaog0681cdTAwMDfAXHUwMDA0rZNsbNpcdTAwMTW93jTZaNBaWDtcdTAwMDOmXHUwMDAwMlx1MDAwMVxyq5SYXHUwMDA3WppcdCmCiFx1MDAwYoFcdTAwMDRcdTAwMTZ15pFQUISQmeDzXHUwMDEzj9CTk2Z/f1x1MDAxM8/Ds1x1MDAwMvHQOS6RP1JYiFx1MDAxMMK1Q2pcZkOGXHUwMDFlXHUwMDFijCxcdTAwMThsp+5YiP5QNkrVTTqLjVximZv36DVcblxiqYTLXHUwMDE3U/udI9tcdTAwMWL+c1x1MDAxMr49uzlrfc2usT9cdTAwMTZzyKhGKlUqQs9HRTqx0SfEMVx1MDAxN5hhymCNilx1MDAwNFxcloqgyv9cdTAwMTZTUa+nXHUwMDFjKaepXGIyajGpoaypT2pAQ3MqXHUwMDEzMsLIXHUwMDAyub8wqutbQthcdTAwMTRcdTAwMTdBxjBDiPyklVUvXGbStvc1P1wipHdDh0mzWlxc0Tq0h54/rlx1MDAxY3nh33qH31x1MDAwN/pYMifVYa7kJrm06Xtu7vFcckevQsVcdTAwMTUwpJ5j+1x1MDAxM4U0jIzU0fZsXHUwMDFkyuPp/VxuY8/1XHUwMDAy279cXGg7z1x1MDAwM1qTgGIhWnKQRFx1MDAxNVmCXjBeXHK9fP5VXGJcdTAwMDCIXHUwMDAyvXPLo3e0XHUwMDFmne6eXHUwMDFmnfWyz7s8brpAnFxctTdcdTAwMWO9lFhYZ4tIXCKsSVlUwau59VnAi7lcdTAwMDVcdTAwMDFCXHUwMDE4MKKZXlx1MDAwN4hVwEuBToY4lsY/fjnwtl9cZrqzLP9I4FI6XHUwMDE3uFx1MDAxOGJBOGXG3GO4XHUwMDFkKuyzjnvN9+D5+f7+sH/sjOaVXHUwMDAwm4JbLi1cdTAwMDG0s1x1MDAwMV2VSVx1MDAwZVxmXHUwMDFjiv6CP1x1MDAwN25cdTAwMDWzqI63pHD+1UIuw1KyX1x1MDAxY7R9O3pcdTAwMDHA1qyuXHUwMDAzrHZelcxcZrOl+q6GVlx1MDAwMoVcdTAwMTRcdTAwMTiQ5Vx1MDAwYnavd3DRPslcdTAwMTLqukG8J52YuFx1MDAxZr5sNlrZwqtBsvzVoHQw69DV0DrjYlx1MDAxME+/XdDkySDlXHUwMDEwmVx1MDAwM1lcdTAwMTmRXHUwMDBmXHUwMDBlYlxc5KHku11ccqhcdTAwMTJcdTAwMTP8895cdTAwMTA20ti784+JxlrL9eqNXHUwMDFkXHUwMDA26ypxcelmp54kXHUwMDBiziSlT0mSe4Pm33+mo2uX2F3Uap1lJ7KFNlx1MDAxYr50XW9cdTAwMGK/XHUwMDA3vlx1MDAxY1pcdTAwMWNTyTnkeiqwlP9cdTAwMTg4m4ndo5lcdTAwMGJcdTAwMDYghOAlr9dWR205vIpK64JwemX7mZpcdTAwMTNNfdVLf0AsrZlcXC6U0tVCKVx1MDAxMrDeOlx1MDAwMSNcdTAwMTNcYnHAgdF4XGaMTWJcdTAwMWbefL08uFx1MDAxY143+2dvL8f908HRZoNRu9TysVx1MDAxNJPavEqJr+TQQWtcdTAwMGKlSGJL5CU0lVxiXHUwMDEwjqbrU4HYmt7arz+ucoFg2X83Lq7OiJ3PdlxyXo2rU1x1MDAwN72uKEvn58icQFx1MDAwNDBePkf+zFx1MDAwZd3s4/GOXHUwMDFhSyfl9HTQxJt+j8zEQlxcg6WD7PdcdTAwMDBbV7RI6iBLuE56XGLFZimlIFt9lTpcdTAwMDV0XHIlXHUwMDBlXGJcdTAwMTFrSKBfuKRcdTAwMTXVlTJS0VpcdTAwMTSDQz9cdTAwMWI+d1x1MDAxMK7ZfFJcdTAwMTTeulx1MDAwN3/DjqJ2qvdywrKNL55cdTAwMWHtznSh/Gls3SM9x5QqyPl26/Z/rtqeXGYifQ==Unstructured Structured Shaped Value Volume
The idea we want to convey is that you begin with a massive amount of
unstructured data, which makes up for the bulk of data in many organizations.
Once you lift it into a more digestible form by structuring (= parsing) it, you
invest cycles and time to make it easier to extract value from it. A byproduct
is often that you end up with less data afterwards. You can continue the process
to reshape the data to the exact form to solve a given problem, which often
accounts for just a tiny fraction of the original dataset. Data is often still
structured then, but you invest a lot of time in deduplicating, aggregating,
enriching, and more, just to get the needed information for the consumer. This
data massaging can take a lot of human effort!
It's incredibly costly for security teams to spend 80% of their time massaging
the data. They should spend their focus on executing their mission, which is
hunting threats to protect their constituency. It's certainly not building tools
to wrangle data.
We argue that making it easier for domain experts to work with data
fundamentally requires a solution that can seamlessly cross all layers of this
pyramid, as the boundaries are the places where efficiency leaks. The following
principles allowed us to get there.
P1: Separation of Concerns A central realization for us was that different types of data need different
abstractions that coherently fit together. When following the data journey
through the pyramid, we start with unstructured data. This means working with
raw bytes. You may get them over HTTP, Kafka, a file, or any other carrier
medium. The next step is translating bytes into structured data. Parsing gets
the data onto the "reshaping highway" where it can be manipulated at ease in a
rich data model.
In our nomenclature, connectors are responsible for loading and
saving raw, unstructured bytes; formats translate unstructured bytes
into structured bytes; a rich set of computational operators
enable transformations on structured data.
The diagram below shows these key abstractions:
eyJ2ZXJzaW9uIjoiMSIsImVuY29kaW5nIjoiYnN0cmluZyIsImNvbXByZXNzZWQiOnRydWUsImVuY29kZWQiOiJ4nOVdaVPiSlx1MDAxN/4+v2LK+XrJ9L7cb1xuLqiMOuggvnXLXG5cdTAwMTAgiiwhuN26//09jVx1MDAwZVx0IYGgwMRcdTAwMTmmapTO0tt5znPO6dPtv58+f97yn/rO1t+ft5zHut1xXHUwMDFinv2w9Zcpv3e8odvrwiUy/j7sjbz6+M627/eHf3/9avf7VvCUVe/dvTzpdJw7p+tcdTAwMGbh3v/B98+f/1x1MDAxZP9cdTAwMWaqy3Pqvt1tdZzxXHUwMDAz40tBdUrjaOm3XndcXDXBRDAhNZaTO9xhXHUwMDAx6vOdXHUwMDA2XFxu2p2hXHUwMDEzXFwxRVvPP1x1MDAwZVxudVdcZirlwePg4aRfcNglXHKqbbqdTtl/6rx0zK63R16oUUPf6906XHUwMDE1t+G34TqOlE+eXHUwMDFi9mBcYoKnvN6o1e46w+HUM72+XXf9J1OG0KT0ZVx1MDAxNP7+XHUwMDFjlDzCNyGC7+ZcdEJJpO58r9PzTN1f0PhcdTAwMTPUXrPrty1oQrcxucf37O6wb3swKcF9XHUwMDBmr71cIiyoq+24rbZvXG5DTVx1MDAxYzrjwWUwL1xiM1x1MDAxY/TI1NIvNsbz/E8wop5951x1MDAxNM1cdTAwMTPdUadcdTAwMTNcdTAwMWWUbuN1UKYu1MyF3ajIhMVmSnR85zHoRGieR1x1MDAwM+w1j37sXHUwMDFl43xeN2pPRbJXOtia3PffX/GvfXm4La+v8j/2T129ne8+n9qXXHUwMDA3N1x1MDAwZjvTtfys3/a83kPa91x1MDAxZZ43L8vdw9tcbqc51Tw7kIdVNlxcwXtcdTAwMDfMru7kXHUwMDBihevB48VBp7x78lhvkXTvff0tmK9Rv2G/wFx1MDAwN1x1MDAwYlxygodcdTAwMTlDWInJ9Y7bvY3OWadXv1xyXHUwMDEw9ynU4Fx1MDAxOahPzVdcYuWC0kSUI0Q11kSmR3n87GdcdTAwMWPlXHUwMDEyI0tQ6CxnpsdITGGeYrY2zGOqLEm1JjDMmmAl+axcbqBcIqpcdTAwMDEwRZpcdTAwMTnxoOtWXHUwMDAxq5TOoFW9rl92n8dcdTAwMTKmpkr37Du38zQ1j2OxhWE86Tue7fe8XHUwMDAwteNL21x1MDAxZLdlpHirXHUwMDBlTXa8KVx1MDAwMfddoMTJXHJ3bqNcdTAwMTHmuTrUZ7tdxyumoaee57bcrt05T25cdTAwMGWMgHPwc9KwRVx1MDAxNJeYTf5XIVx1MDAxOVx1MDAxOTrmXtN9Plx1MDAxN7Lz2ZnzaGnAziBcdTAwMWFYXGJcdTAwMTXcsVxit09dt/GDPFfuvOfa8dPN8aWkxdOs45aS7LEzQVxuM1x1MDAwMS1bOzbn8VK5/mNP37fbtdNS6fGEVkrfW/dHK+C7i73hw16pv1ttnN08te+qJ+0rcvau9y4yJ7ZcdTAwMWLkaFi4qHdy3rZXKlxc3fZzzd1cZtIoVzJcdI5gKyMsuGQ4NVx1MDAxY+N7nXU4amIhqWC0sVJMXG4uXCLolGtDp+aWYlRcdTAwMGIqXGJFTCg1i9VcdTAwMThcdTAwMWHVlCtcdTAwMDX1/kE0utfz7mz/rVx1MDAxY+r3+olcdTAwMDS6gEGiXHUwMDA0XHUwMDFhbciG2VNTXHUwMDE0LZ3AlSqtqVRCp4ZrXHUwMDBmy53c9s326cGgyi5cdTAwMGJcdTAwMDe2+6xcblmHa25cdPbEjvm3fvbEWlx0zFx1MDAxOcmqc3t1oypcdTAwMDPRXHUwMDE4lVx1MDAxYVfyuNpcdTAwMThdypPjm1xmspFcYiEmXCLeWoLvgCVP79PFdzrj0k2pXHUwMDA1VIRcYrhWXCLsVi1iovdKOqbEXHUwMDAyJjL+XHUwMDE5XHUwMDEyJJU7XHUwMDA3OFx1MDAxMJJRof4gXHUwMDFlyve6XdDPPW9cdTAwMWRUtEBcdTAwMWRHqSimLatnozeEX0BcdTAwMTmC2ag4Sk9Ex9/Pjk6bslmlPSTvLrp7XHUwMDA3vcN61qFKQobxOOBCpIWQJEpJJFx1MDAwNFxmwtrMRlx1MDAxZYxswEpcdTAwMDFmX/FJKbRcdTAwMTAmPlBcdTAwMWFcdTAwMWZcdTAwMTWeaKp0XHUwMDBlPHeefCcp0tJxmv7bgDnV3ChcbiNVRlx1MDAxMchDkzzBXHUwMDFjVnMx9+KCxoCOXCKZaP4pXCLA/mM0PT/Od7aXXHUwMDAyXdRcdTAwMDJbXHUwMDFm6LCKgFx1MDAwZWNLTz5cdTAwMTKtL5KCZYx3XHUwMDA2niNcdTAwMDPvXHImRmmlkVLcyYWMwJ/mIZFUco5CfP6RoDj0bc/fcbtccrfbgouB5flzpe6Fvr5dXHUwMDFlXHUwMDFm9Ytn3zte43nYLOefXFy3V1x0WaNcdTAwMDDe+si0Mlx1MDAwN1PGmUZcdTAwMDRcXG1JMWFcdTAwMWFcdTAwMDaNhG5s2X3T7teCSVxiZsvpNlx1MDAxNjejoi+OO6XB7lWxUbty8pVcdTAwMWJcXHJrcc3gXHUwMDE2RppcdTAwMTMktWCSSWmmTqRoRcdcdTAwMWX6+d7dnevD+J723K5cdTAwMWZcdTAwMWTH8YBtXHUwMDFiXHUwMDE0t1x1MDAxZHtmNqFcdTAwMTfhayB1bsTf65uXTpv7wW+fXHUwMDAzRIy/TH7/56/Yu0Nyaz7xXHUwMDEyXHUwMDFivORT+OdcdTAwMWI0lNLR4sAuYEyDj7SEXHQ/P273UVSU3LBSmlxy7mKKXHUwMDA1XHUwMDAzPVx1MDAxMMzNb6h/alx1MDAxZO9ip9Q/r+n27qBwTy/QsIrjgFx1MDAxZsLP+1TNruu0KoWj8o9DvHOJXHUwMDFi9fNRaVB8a41vUCsxqiOiXFymnl+nWlx03Z9Kg8yNcnFCoqVcdTAwMTMlwjRGVKr0vsV8Psiob0GjXHRcdTAwMWP6XTrkS91psIZcdTAwMWSjP0RMgIvNKFx1MDAxMDG2YMj6Pf2JXHUwMDE0LVx1MDAxNd5i9eplq3iRk9XHznW+dVjUnUoz7drQutac3pFcdTAwMTPyXHUwMDEzQStUpnPBmLg4hFx1MDAxMtdqoVxySEuwuFPjMH6SMo5DhqRFTD5cdJZUXHUwMDExhUkkXCKntcXfXHUwMDAzzLnkLrjFudZUcELBsYtcdMrNOv1cdTAwMThLTIxcdTAwMWK49kh0drz+U9tcdTAwMWI6b47ILUiwWEBcdTAwMWbRcEC0LauIXHUwMDA3LODKxJA5XHUwMDA2i1tzhZcgy/lcdTAwMTZNRkFcdTAwMWElS8p/KVnCoCtcdTAwMDaqc+3G9tvIctit0Yuui1x1MDAwNlx1MDAxZJYr7V/6N9vI3v11iVx1MDAxNO9OdMxcZlmSxNhcdTAwMWPYyiBcdTAwMTCCLpF2XHUwMDFjP0tcdTAwMTlcdTAwMDdcIkPCUtgkJErEuVx1MDAxMCxcdTAwMDLLtZKlsCjYI2aZQykhcapcdTAwMTA5w1xcXHUwMDAzxdKP6Vx1MDAxN7+NLD13mlx1MDAxMFfKllx1MDAwYvhjhi2jjVk/Xc5Zt1x1MDAwMltLXGIscHDHXCKUzlx1MDAwZnlmXHUwMDE0pdH8iTmuZYpV5feyJUOUakozmjgxyFx1MDAxZN3Xi+63o+3jb+VR+1p9P75xNuBZZobUcHK2LjhFjCvG0mfrxo9mxuFiiIUhRITinM3mZMz1XHUwMDAw35uVIaRFsdZMXHUwMDEwpePTMmI8QC3A4tfqXHUwMDBmWvY97tmNtVHaXHUwMDAyXHUwMDFkXHUwMDFmpbRoWzbAaFwiWlx1MDAxYay4IKQkZig9ROdcdTAwMDfRM1xuUZLe/9tcdTAwMDCjXHUwMDExTFx0XHUwMDExVOCMOoD75Hp/p1+v7bhHw8dzzym1XG50Z1x1MDAwM1x1MDAwZWBmOI0mri5cdTAwMTBGXHUwMDE12FwiXCI9XuJcdTAwMDcz43iRXHUwMDA09Fx1MDAxMFBcdTAwMWFcdTAwMDFXXHQrXHUwMDFh2Tc21017L6NxbjGtNWeEUEFJaKl0XHUwMDFlpTGipSBi/SGV7HBa2b5fXHUwMDFipS1Q8lFKizRlrSlORPPkXHIpQptcdTAwMDTVJfJcdTAwMDfmr8FkNH+Ak2iK01x1MDAxYfNcdTAwMDdoTJxkNr1difHGvN8uf2nO+nyoJEV60evNi/NcdTAwMDcmNVoxXHRPSXXGb/KcqfOjJSZcdTAwMDWyXHUwMDE3uf9T+OdcdTAwMWJUXGJLjPGY5Fx1MDAwMUKWWVx1MDAxMZlcdTAwMWaZ/igqZJ0pSDRVXG5cdTAwMTInmlL+QSOtKTOQVppcdTAwMGaUKlx1MDAwM2n+9u9QjTlksVx1MDAxNJV+tCQk+q4kpCRcdTAwMGZBkjk2iORKkHBcIsBCXHJS9Y5K/j7/lt8u2cP9M+n289eZd1x1MDAxMabXbrBCkapXuJsh0E1zdlx1MDAxYlGOtdSK/UGbjYpfTza7l2Gqwlxy7iXSyTnDTEollokxV/dcdTAwMGUv9OHj7fXViI9cdTAwMWX3XHUwMDEwXHUwMDFm9I941tHGZcRcdTAwMDff2FZcIlx1MDAxMbepISamLDUymUi/9HSIbJ1aXHUwMDE0i+3U7v3u/bjHXHUwMDFihXe0zlU48olcdTAwMTQqXHUwMDEyMS0oxlx1MDAwND7pj5V4RJf1Zu6G99B+6cim7slDYe8k65imdIZCw5iWIWFb+aEvOFx1MDAxNaWaXHK8RGP+XHUwMDFiLFx1MDAxNaXmVJOfXHUwMDA3JvXXceaBsa03isDk2jfHtlxuJSfXKySpostsXCI86e3e5Op7vLrXOVx1MDAxMuq7Tb9hcZ51aFxuvTnrXHUwMDE2xzHsLFx1MDAxNkEhiI1cdTAwMTBsdqBcYn5mf+Tbvlx1MDAxMcuNojC24lxyXHUwMDFm5Fx1MDAxMk5Qi6CQa0qpoYjUIPSOef779f6dlGde7aiSe7qlrcxvn8fabMBUimJKOSPg2k1hkjFtXHQkXHUwMDE11lx1MDAxNDGlxbtM4C82b6hmM1x1MDAwNp1MWlx1MDAxOFx1MDAxYntEwP+ChVx1MDAxNENcdTAwMDDWXHUwMDE5c5hTTlx1MDAxMJVyXHUwMDA1waxQYOdVbuhrSVx1MDAxMJRZ0bpvpU/02fXO6MArXHUwMDFm7Pfw/k3tXG76t1ZcdTAwMWL5baZj8iZ3TIU5L0stcUJgfK8zjlxykC5Lm9QqSiX4XSS0y3OMXHLOVoiNxHRcdTAwMDeiLcq1kmrmfNF5rqJcIkRqyv+kXHIoXHUwMDE3XVx1MDAxOPdR3Vx1MDAwN9lpJFDZe5dsXHUwMDE3qPgoxcW3aP25SDpcdTAwMTG6Jv9cdTAwMWRpotMn14p+o1arob3DwV7+9vHwRlRcblwi8ynwnDGLSiWxkJIpXHUwMDE2cq1egFx1MDAwYqPOpGDELKhq+q50+C810iS1WlxmcCmzuFx1MDAxMphcdTAwMThccmJy4tNwXHUwMDFh5phgsZpTXHUwMDA1N0hqxeJduXM5qlx1MDAxNtxe4fbx2DtXg9MsnmzGRWKWXHUwMDFlQeNpQkuQWnyvs1x1MDAwZVxyriyQMlx1MDAwNYaTgC5H0o5cdTAwMThcdTAwMTcrhEZcIqchaSFjQJgjP1x1MDAwNNJxa5cxnCY01kLh38A7S59/tG5GW6DeZ5KQflx1MDAwNZ9hmrypS4BcdTAwMTXKxFx1MDAxMqGSK6d4dSDKhVx1MDAxM8GfL68qXFzdXHUwMDE3XHUwMDFijayDVmNcdTAwMDCt5Ob0XCKTg4cjTprhM05cYlx1MDAwMaKTSihCI1xyW1x1MDAwZbWOU3OasaglXHUwMDE2kZKAL1x1MDAwZV4j4jJcdTAwMWSjaVx0/UNqXHUwMDE1p55skNHI6EndXHUwMDE1L25cdTAwMWZcXHVro+fLXHUwMDFmTvWumUFGXHUwMDAz9yAxhKFcYkdS4iVOXHUwMDA3iO911sFBucUpYyD/UkrNeVx1MDAwNFx1MDAxY2KV4EiiNCHfcEpcdTAwMDAnTJs/g/NcdTAwMDc5aeW23V9cdTAwMWKZLdDtM2RcdTAwMTZpy3pPXHKcc1anQopJvcxxOvNcdTAwMTdhM5pcdTAwMGanweyjWmhcblx1MDAwNFwiQ39cdTAwMWVqvNaOXGZMJcBcdTAwMTRTXG6/rG+LMkbaQlBcdTAwMGbTRIJekKGNplx1MDAxM6xqQDPjikswUYWiaFx1MDAwNrqAXHUwMDFkXHUwMDA2XGa4XHUwMDE2TiOLOe1XptelTnZDZis4Jlx1MDAxNFNOJYxcIlx1MDAwZWWJvaa+heVcdTAwMDFpMO5nur7y/DssXHUwMDE50kzAYJnIXUBcdTAwMTahNklcdTAwMDSkXHUwMDAxvpEgysjJTJs+WIYvXHUwMDE1XHUwMDE2JVx1MDAxNFhJXHUwMDEwJFToXHUwMDBmSZhPjiiLUKSIouYvsjGYp0XvU9xcdTAwMDJcdTAwMWZMXHUwMDBiolx0N392iE+/j1lcdTAwMThmXHUwMDEzakSIcMOGi96XXGbIcesptE+Do1xus6IkV1x1MDAwYl9cdTAwMDd8j9X4jEOBXHUwMDE1XHUwMDBl/FvzXHUwMDEx2qLY2NDgXHUwMDAwXHUwMDFikZSLXlx1MDAwNjKMJPRcdTAwMTTB+IByXHUwMDAyXHUwMDAzXFyG38eUZdpcdTAwMDWCKzTjYJhcdTAwMDfv+1x1MDAxNP5pzMVxXHJbdr9f9lx1MDAwMbFcdTAwMTNp3rp3nYedXHUwMDE4S6M5/lx1MDAxOJNzLHlGpztjhfHfp//+XHUwMDBmokebXyJ9Operators Format Connector Bytes Parser Printer Loader Saver I/O Events Parsing/Printing Computation Unstructured Structured Shaped
One thing we miss looking at existing systems is a symmetry in these
abstractions. Data acquisition is often looked just one-way: getting data in and
then calling it a day. No, please don't stop here! A structured data
representation is easy to work with, but throwing the output as JSON over the
fence is not a one-size-fits-all solution. I may need CSV or YAML. I may want a
Parquet file. I may need it in a special binary form. Deciding in what format to
consume that data is critical for flexibility and performance. This is why we
designed our connectors and formats to be symmetric: a loader takes bytes
in, and a saver sends bytes out. A parser translates bytes to events,
and a printer translates them back.
Here is an example that makes symmetric use of connectors, formats, and
operators:
load gcs bucket/in/my/cloud/logs.zstd | decompress zstd | read json | where #schema == "ocsf.network_activity" | select connection_info.protocol_name, src_endpoint.ip, src_endpoint.port, dst_endpoint.ip, dst_endpoint.port | to s3 bucket/in/my/other/cloud write parquet
This pipeline starts by taking compressed, unstructured data, then makes the
data structured by parsing it as JSON, selects the connection 5-tuple, and
finally writes it as a Parquet file into an S3 bucket.
Pipeline Languages Everywhere
New pipeline languages are mushrooming all over the place. Splunk started with
its own Search Processing Language (SPL) and now released SPL2 to make it
more pipeline-ish. And Elastic also doubled down as well with their new
ES|QL . When we designed the Tenzir Query Language
(TQL) , we drew a lot of inspiration from
PRQL , Nu , and
Zed . These may sound esoteric to some, but they are
remarkably well designed evolutions of pipeline languages that are not SQL.
Don't get us wrong, we love SQL when we have our data engineering hat on, but
our users shouldn't have to wear that hat. Splunk gets a lot of flak for its
pricing, but one thing we admire is how well it caters to a broad audience of
users that are not data engineering wizards. Our slightly longer FAQ
article elaborates on this topic.
P2: Typed Operators In Tenzir pipelines , we call the atomic building blocks
operators . They are sometimes also called "steps" or "commands". Data flows
between them:
eyJ2ZXJzaW9uIjoiMSIsImVuY29kaW5nIjoiYnN0cmluZyIsImNvbXByZXNzZWQiOnRydWUsImVuY29kZWQiOiJ4nO1a2VLbSlx1MDAxMH3nKyjf1+DMrlHesNmSsFx1MDAwNVx1MDAwM1x03EpRQlx1MDAxYduKZUmRxnih8u93JFx1MDAxM21ekI2dmLr4XHUwMDAxrNm6p6e7z+mRXHUwMDFmt7a3K3Loi8qH7YpcdTAwMTiYhmNbgdGvvIvaXHUwMDFmRFx1MDAxMNqeq7pQ/Fx1MDAxY3q9wIxHtqX0w1x1MDAwZu/fXHUwMDFivl9NZ1VNrzueKVx1MDAxY9FcdTAwMTWuXGbV2H/V8/b2Y/w3IytcdTAwMTCmNNyWI+JcdHFXKlx1MDAwZfNi46nnxpJcdNYo5YzDZIBcdTAwMWTuKWlSWKq3aTihSHuipsrP+0+6vPl8cH5hWFx1MDAxN7d1p0nuXHUwMDFhvVRo03achlx1MDAxYzrjbVx1MDAxOWa7XHUwMDE3ZFRcbmXgdcRX25Jt1Vx1MDAwZlx1MDAwYu3JvNBTXHUwMDA2SGdcdTAwMDVer9V2RVx1MDAxOObmeL5h2nJcdTAwMTi1XHUwMDAxkLSObfBhO21cdTAwMTmop53skGhcbs48j4XXPcdcdTAwMGJcIuH/gPiTir83zE5L6eBa6Vx1MDAxOFNYxDLSMf3fW8qs21x1MDAxNnarLVUjy8hcdTAwMTKxYTFEnGCeXHUwMDE5XHUwMDFjXHTwP1rxXHR/z+7ctZ527vZcdTAwMWMn1Snq2C96RdYzMkc20IenuF87tq29bz/anea56bgo0T3nRkZcdTAwMTB4/UrS8+vd9HV/XHUwMDBml2Ig81x1MDAwYo0l3lx1MDAxY9dcdTAwMDPeXHUwMDBlr+nxV+/w28nNcMh3QWbZp2/pRnu+ZYx9XHUwMDBlMo1cdTAwMTGic8KRjpJ+x3Y7RVx1MDAxYjie2UnddCuj7+NWXHRtknWmbmbsNpxVad5vXHUwMDEwmDhzXHJPXHUwMDFlOZrnkatwuEXiXGbNijPLk5HRl1xutFx1MDAwNVx1MDAxZPbJ8SHEQENcdTAwMDTQ1KxpmoLarDTFdUwgXCJamTRVXGaNnFx1MDAxYS/3s9RtXCJ3UUY880VgSHVM6dl4rmzYI1x1MDAxMUvJtVx1MDAxZVx1MDAxOF3bXHUwMDE55qxcdTAwMWIts+vYrchcdTAwMDBcdTAwMTVT6SyCXFxcbpe2goNkQNe2rGyOvzdCoXSORZGk1VSiXGbVXHUwMDFhfCyTsr3Abtmu4VxcXHUwMDE2NzQ1pEpcdTAwMDGOhmadJCTK7pxcdTAwMDJa4iTH0WtcdTAwMWacXHUwMDFhXHUwMDA33/YvdyRcdTAwMDadU3NcdTAwMTBe3dWvN1x1MDAxZHAg2ii80TjEXHUwMDA0IJa6yOvCm/G6WoA+9a1a6LGjg3t0PFx1MDAxYfG9XHUwMDFke604dvdwcX3V87VTRzO/XGb2mu2bm/blX8Ox6dqUwDGI8Vx1MDAxYo6tXHUwMDE2xzDFXHUwMDFh01G6elx1MDAwNsYmXHUwMDFhk+RcdTAwMDexTlx1MDAwMVx1MDAwNKmh32DsyVNKwNgzQLBcdTAwMWOMjVx1MDAxM8WUU1R2nVk0Ma5hXStcdTAwMGZh81x1MDAxM+KGQlx1MDAxOKqiQs7Aa8IwSDPZKUk9XHUwMDEzIKbKJVx1MDAwNWJcdTAwMTSsXHUwMDBlxOblbUpcdTAwMTlly1x1MDAwNFQojUDWbNey3ZbqTPHmd1x1MDAxNV+GlEWbM/zCKcTRZ/ZcItXBU1NcdTAwMDJsXHUwMDE14VrPXHUwMDBinVx1MDAxZkKLXHUwMDBidYxQ1r1u147y77lnu3JcIl9G1tiNgqwtXGar2KuUzvZVZGBcdTAwMTc4pVx1MDAxZi2aZ1x1MDAxY+m37dRJ4ofk+/d3U0fnPK0wYyv7fynSS2cmXGZcdTAwMDaQhiHUy9+y3I5+ujdcdTAwMTdcdTAwMTj02EdcdTAwMTme7ejgqqP5m54xVHRuXHUwMDEy6VVcdTAwMDZnXG5cdTAwMTRcdTAwMTlOcXGdrHf17HS8bv+SQvhlpKNG7+TMaT7oomvytbLeWmPUrFx1MDAwN1x1MDAxN1x1MDAwM+/SPGQ+XHJcdTAwMDZH9f7xX2O907UpwXpcdTAwMTVFe2O9q2W9iFx1MDAxMFxuXHUwMDE0h9VcdTAwMTeivVx1MDAxOHFONUbT65032vvkKiVo7zNQsGrayydu5pLqRVx1MDAwNVx1MDAxNGaUL/CyYH5O3FBcdTAwMThDmapuvbyXVbUyxJdcdTAwMDCGVeDR1eHY3yS+z3LQhG5O8FK4XHUwMDFj651cdTAwMWZBcyVGTPj1s96sn1x1MDAxNaa8nPZmiNfEXS9njHG8QKV8d+LDs/P9g1x1MDAxMdw7PMatw6F0XHUwMDFlNv6yl7LN4r1cdTAwMWFRXGJcdTAwMWSB41x1MDAxZuG9f56f7p/RW3Fyf73fhN2dXHUwMDEzLbzyO6f1xfgpQDhcdTAwMDN0L+Kn07UpwU+p9sZPV8xPXHUwMDE5J1x1MDAxYeLT2OlEW0JOsSpcdTAwMTOJqlx1MDAxNVdPTlx1MDAwMSaILOBkr5CcPpOvV01O9ZlXLJBrkDOV98qT0/mJa0Oxhlx1MDAxMFTVXHUwMDAwYVx1MDAxNHDF0yj5c1e0gFBMdEhcIipK0miZTVuZ2lxy0TSW/vjoNdPWXHUwMDE3kcjciVx1MDAwMb5cdTAwMWONnVx1MDAxZmv/XHUwMDAzXHUwMDFhO8tcdTAwMDdcdTAwMGLTS1HaPFx1MDAxY2d+Klx1MDAwN2bWv4RcIqYq4FJv78ZcdTAwMTnG8380waXUxD0hXHUwMDBmjaPDXHUwMDAzrl/trjjDvFx1MDAwNGVnXFzj8qraKCu+/Vx1MDAwMbBKozdftKDJYlx1MDAxOYYjU4diMsOQKYUwmqS2XGLqKqdcdTAwMDCcnsE6c8rSt0tcdTAwMGLDdGSbPUNcdTAwMWHPwW9cdTAwMGXSXHUwMDFk0ZRzXHUwMDAwXXqZa6I8buf2UFx1MDAwNOlYj+WCh86uXHUwMDA1KadcdTAwMDTpXHUwMDAwlq9cdTAwMDW9PWnV/VZjp0tb3fpR7eGjtXuy8dGDKK5cdTAwMTJcdTAwMDb0bNW7OfFcdTAwMDM0pVx1MDAwMM6ewlx1MDAwYuNnXfezb1x1MDAxMTRRqEQ/N9Gz1c1zXHUwMDAxdNr8fN35od/i3dtcdTAwMWFcdTAwMWY2Rq1Bq0Y2PoCIKotcdFQuupFcYoRcdTAwMTkmXFzPsoS3XHUwMDAwWmtcdTAwMDBtPVx1MDAxMcKK4ftccqmskzDkyoMt+rUpJ9yMP9H8OPxcIkdcdTAwMTeRqVx1MDAxZn9t/fpcdTAwMGYxykNcbiJ9Operator Operator Operator Operator Data Data Data
Many systems, including Tenzir, distinguish three types of operators:
sources that produce data, sinks that consume data, and
transformations that do both.
eyJ2ZXJzaW9uIjoiMSIsImVuY29kaW5nIjoiYnN0cmluZyIsImNvbXByZXNzZWQiOnRydWUsImVuY29kZWQiOiJ4nO1abVPbuFx1MDAxNv7Or2DYr41WR+/ab4UtLZRtu0Bvae/sMCZ2XHUwMDEyLyY2tiFJO/z3PXaI7ThcdCGtU7L34lx1MDAxOUhcIsnSsXSe5zxH1ret7e2ddFx1MDAxNHk7v23veMO2XHUwMDEz+G7sXGZ2XmTlt16c+GFcdTAwMWarWP47XHRv4nbespemUfLbr786UUTKu0g7vFx1MDAxYd/pXHUwMDA13pXXT1x1MDAxM2z7X/y9vf0t/19cdTAwMTkr8Pte3jYvrYxkTL30XdjPR5WgpVx1MDAwNm5k0cBPfseRUs/F2o5cdTAwMTMkXlnj5mZeyH19PTw78lx1MDAwZYedw/NcdTAwMTPH1yejctSOXHUwMDFmXHUwMDA0J+koXHUwMDE4P5LT7t3EXHUwMDE1m5I0XHUwMDBlL71Pvpv2sFx1MDAxZWrlxX1JiFx1MDAwZl/eXHUwMDE1hzfdXt9Lkql7wshp++koK6O0KHX63byPsmSYtSBCgGbWMKNBciZEUZ11IFxmXHUwMDEwroSxlEpulOE1w/bCIIwzw36h+VWaduG0L7toX98t27Q9V7hO2WZw/7imtKnn+d1emo1cXJYlXj7n1nJcdTAwMDCltSoqsv6jXHUwMDAzN1/4v6qT0nfvJ6V/XHUwMDEzXHUwMDA0pUlZxauKs5T33ESuM15ZUFx1MDAwNlx1MDAxOOOgLJe2qEdcdTAwMDe6rHdcdTAwMTeE7cs5zpCkTpzu+n3X73frt3h9d0FN4CTpXnh15adoxofQ76f1XHUwMDE2eb8v4zhcdTAwMWP0PMed0/PCuijrrkRHdpXftkuHyH9cdTAwMTTf/3qxvLVY2lxcrdjeTLVnlNDqXHUwMDA1q1xyx4mUXGZBrLQx6MBcdTAwMTS8XHUwMDE2yJVcdTAwMWWwYu9W9fPuxWpEw0vD6kTDuULgUaZcdTAwMWZNNG9P7e3o6D211+lXQ4eHkYZdufFEo4BIaoEzLqiUVLBcdTAwMTmi0Vx1MDAxY1lcYklGKm0rPNQo06BcdTAwMTFAOUevMMKCLNn9XHUwMDAx4lx1MDAxMYpcdLDWllx1MDAxNq+HeLRmklx0TYUoo9Iz8UwuVmOGpyaqRZ6UW8eJppZcdTAwMDI1yjIlXHUwMDE08H8tcWldLy1cdTAwMTSS4oxRVlx1MDAwNsllvOV8eHt77p2ev/5cdTAwMWS6b9RoeHT0RdBN5y2GvCUoMKo1p6BcdTAwMDUt5ceEt5Q1XFwgrzE2Vf3kvFx1MDAwNVx1MDAwNlx1MDAwNFx1MDAxOEUrXCL3mbieiev/g7iEXFxIXFyMXHUwMDAyUFx1MDAwNK4sXHUwMDE5YVx1MDAxOXWdv/7zVMafXHUwMDA33Y+R6Vx1MDAwZSP2/uXewe6mU5dgjHBjXHUwMDAxUMBILeuCi1x1MDAxMiNNtthcdTAwMWOlTYVRms3splx1MDAwNXyZP1x1MDAxNrzFLdGCK8wuwWpDZUX4jWlcZvWi1YzK57zvKVlcZlxmYblsZ0Dxr1xm+3llfVxyl/XWQrUvhJVaXHUwMDFii3/IOaLa34xPLOtPT1vH2UO9saW9aWKMXHUwMDAwhbqfXCJcdTAwMGbCXHUwMDE0RVx1MDAwMsJcdTAwMDZQXHRcdTAwMThAo5FDuVkrv6XeMJ3Hb1x1MDAwMFx1MDAwYreukL1FlrBUcqhl/HaRyM9JeFx1MDAxY3W6XHUwMDFk/5LdXHUwMDBlguFua9gwv7lh5uONajNhicIl0CV5janNXHUwMDEwKo20XFz/XHUwMDE4q4F0nIvOLKtVpr6gMVZcdTAwMTlqzFvSYPy06EPrVl+KZ57KaEV7rsBbnbCfnvhfx4FxqnTfufKD0dTq5N6IU0NcYtmZKnxcdTAwMTn43X5cdTAwMWWPvc60v6Z+21x0iuo0jMraNlx1MDAwZeJg/I5cdTAwMGZmuCuM/a7fd4LTeVx1MDAwM2Yx/81k4oFUpv7CSbxcXFx1MDAxMWSL9F24slx1MDAwYmFlJDModNXjXHUwMDEzXHUwMDFleipcdTAwMGbdXHUwMDEzqlx1MDAwM7h+tSd2e2503GlvPKpaUEklcjxRTbhcdTAwMTWSXHUwMDAz+zE8XHUwMDE51rbgzeJJlY77XHUwMDAwnjhcdTAwMTXWUrN2PN3rXHUwMDAwRTmtetxa8XQyftnxUyFVXHUwMDFmc52oQr29MFppSZnA2X48rs7iv+mnXHUwMDAxZ6I1XHUwMDA02kvPPlx1MDAwZlx1MDAwMr6/8biSXHUwMDE4lrg1gtfDVeXOJlHFXHUwMDFmXHUwMDE1pYCjTaiaKu9gflx1MDAxNFaFwvlWfCuWLtp9c/Xy5Fx1MDAxZOvQT9fh17NzPTxqn1x1MDAxNbZP+ZKT6dqdouZuXCKXNlx1MDAwN7RZ/z9cdTAwMTeyUyOuXHUwMDEzsKwyj3XAXG7DOVx1MDAwMtaWydwywH50OY2cL1x1MDAwM791ffrh6n0w8NNIbzxgMdxcdTAwMTOtpGLTeFWSXHUwMDEyyS1Va4qGoOZkybPAzVSfolQ391biIdzKtvjQPd9vjXquXHUwMDE3vD5cdEYqXHUwMDFl2Vx1MDAwNnB7v3XIXHUwMDAwRNWv14rb09jpJ50wvnJSdOvk50J44eBNoHk89fPi7+LdMJBcbpWVhsrrrWVwfthcdTAwMTk2XHUwMDE2zlZcdTAwMTHFuFx1MDAxMlqCwJinp486qGybwGIj84NZ41wiXFxcdTAwMGJFKFxihlx1MDAwZT9cdTAwMWWez1G9QIFcYkPFtFx1MDAxMWPAI1x1MDAxNVx1MDAxOaZWUb8ljidcdTAwMWUy2fq4W1VcdTAwMTSXSaaueux3bo5VXGa7P7xz8Ig4kSO7fZNZ2aKEU1x1MDAwNjiNQuOCiHJzMJtcdTAwMTgnyqeS6DxKaTnz0D9tP24njf2xN1x1MDAxNi1cdTAwMWHdlWvxmk9zVb2/xShRwFx1MDAxOaqjpbvwrcX+mVdXXbPsa6v6uTItMcbqpVx1MDAwNS1xoylTelx1MDAwNVraj+lp/KV7MFxmL079fdW5XHUwMDExveN442mpJTVcdTAwMDHFXHUwMDE0qld0ZaSfMlx1MDAwZsqzXHUwMDAzsIQyRrnkXHUwMDFhs1+9JnIyfJZ3yleLnHBhtcDFoGBs5Vx1MDAxNeeYmbLoTY1cdTAwMDC2Slx1MDAwZdE4OUlDdVx1MDAxM+T0NDv362ZcbsmI5lnuOTlKVb3bXHUwMDEyS4XgUozXd1lfc5wlu+pu0lx1MDAxOEuoheJFXHUwMDFiaUGrMtNdxlx1MDAxMVx1MDAwZuefm8pcdTAwMTFSK2KQXHUwMDAzoJaKIORI9qI1i4BMKmpqJjXDXHKomzj2n1x1MDAxZN3CPNvAPIbQxHBqjLZSSkHp7DaDVmCEUnyVdKV5ikCp+12b5I/UL1x1MDAwZm9MVfRcdTAwMGIlzPLsmJuiXHUwMDAwyuL6Vd5/TVx1MDAwNFxmXHUwMDEwqSuR+39RvsjsUKDkylxuM3atqdeAXHUwMDA2/U5JYFx1MDAxM6da2t1CT82uXHUwMDE5XHUwMDFmXZGfXHUwMDE2n+2U9dJcdD2h0yEjPv6YwavUMX/uRt1zccs+yuP/vG3Z46ZcdTAwMTOrxo9cdTAwMTlkXHUwMDA3SpQ1yMNcdTAwMWPJXHUwMDE4eEnWk3NcdTAwMDZW4YRnW7xaremYwfdcdTAwMWOPQtWiXHUwMDA1z4xagZKej0c1zVx1MDAwMc/Ho1Z54MbOdZqFmZdcdTAwMDFcdTAwMGKM28efR9/7O+Hxxdfk8FV841784Xu96zdN7+42zlpcXFCiNTdWZ6qqXHUwMDFhecrz6EZKaynHpVx1MDAxMrZm2Fx1MDAxM/KWkpjPXHUwMDFiXHLPx9Gfaau4/q20tXV//45cdTAwMTNFJyn6XqGud259b7A7XHUwMDA3TJ38yl4w5KSX8YuXZ1x1MDAwYndbd/9cdTAwMDDiYlx1MDAwM9EifQ==... Source Sink Transformations
Most pipeline engines support one type of data that flows between the operators.
If they exchange raw bytes, they'd be in the "unstructured" layer of the
pyramid. If they exchange JSON or data frames, they'd be in the "structured"
layer.
But in order to cut through the pyramid above, Tenzir pipelines make one more
distinction: the elements that operators push through the pipeline are
typed . Every operator has an input and an output type:
eyJ2ZXJzaW9uIjoiMSIsImVuY29kaW5nIjoiYnN0cmluZyIsImNvbXByZXNzZWQiOnRydWUsImVuY29kZWQiOiJ4nO1dW1faSlx1MDAxYr7vr3C5b1x1MDAwYnvOh96JLUpF5KCCfmsvV1xi4SAhIFx0oOy1//s3wdaESGiiqElcdTAwMWJcXLUymWQmk/d53sO8M/n3097evvMwMfa/7O1cdTAwMWL3umZcdTAwMGU6U22x/9ktn1x1MDAxYlN7MLbUIbT6bo9nU31Vs+84XHUwMDEz+8vff2uTSd47K6+PR49nXHUwMDFhpjEyLMdWdf+nvu/t/bv67WvLXHUwMDFjWMaq7qrUa4lLXHUwMDEyLK2MrVWrUFx1MDAwMCwkk1x1MDAxODzVXHUwMDE42F9VU47RUYe7mmlcdTAwMWLeXHUwMDExt2jfRp2eYT1cdTAwMWN362d1MKy0KGh+J16z3YFpNpxcdTAwMDdz1SN9OrbtXFxfc/S+V8N2puOh0Vx1MDAxY3ScvtuDQPnTufZYjYB31nQ86/Utw7bXzlx1MDAxOU80feA8uGXAu1x1MDAwNc3qra7hldyrb9hXwz1DXHUwMDEwXHUwMDEyaPtwbI6nbtvOVLPsiTZV4+31oK3pw57qhtV5qvdcdTAwMTdCom0wr87ix11cdTAwMTGvqb4x6PWd9TLbWFxyL1x1MDAxNVxcQFx1MDAwZVx1MDAxMXo64F5/UuqsXHUwMDFl8j/emE61kVFyz7BmpulcdTAwMWZcdTAwMTKr82NI1lx1MDAwZbTdXHUwMDAz33zy4l1qNuloj89cdTAwMTYyyVx1MDAxOESQYUK8XHUwMDAxVTI0XGZezlx1MDAxY+vDXHLiYDva1ClcZqzOwOpcdTAwMDVPMaxOyFx1MDAxMVOzncPxaDRwVDeq44HlXHUwMDA0a6yuezCdjlx1MDAxN31De3bT6sqhxybu5TyAuFx1MDAxZu+vPU9cdTAwMWNWX57+/ufzr2uTX1ZHIFx1MDAwZtY+JN75ZK09XHUwMDE0ob2X342v9if///99jkcsXHUwMDEwIFx1MDAxOcosgEiBqWCRiaXSXHUwMDE2zpmuW99ccnhwr01cdTAwMWH2Td26SVx1MDAwM7EgtntiXHUwMDExTFx1MDAxOHJcdTAwMTOxwDwnRFLOhVT/uNfjbTyjnlx1MDAwNcWSet3KeCaZPPNr3OdcdTAwMDJcdTAwMDJcdTAwMDDkXHUwMDFh0WCpXHUwMDBlY4ZcdTAwMDWDklx1MDAwYkBJPN6Jy1NcdTAwMWbDO1x1MDAxY8Fg6U/aXHUwMDExiFx1MDAxMskpj27PLFx1MDAxNsWL7v1ph51cZoFl4PqsfoRaIbTT1/T+bGqkinL+gob7s5VuNtLST8pcdTAwMTGRbFx1MDAxOYwlXHUwMDEzXHUwMDEww4xj0s8xMSmBxawvXHUwMDAy3Vk3nGC85nCeUsQhZlxcXGJcdTAwMDAogEZcdTAwMGXSj7GGWLgxRKnqXHUwMDFhXHUwMDEyUESmpYODXHUwMDA2nn8zzSW7MIvmYem03KOpcLNcdTAwMTBZpyYmXkVNoZZcdTAwMTDKXHUwMDBigqCr/zAg6sd98F5LT0yFXHUwMDAxzSs7VDKiNFx1MDAwM+Q+evhBXFxQqlx1MDAwN4NcdTAwMTRveM8mY67EMFdu62N2P89cdTAwMWXwjuCMYKiRoexpJlx0Q9F9m4vpqFxcXHUwMDE5XHUwMDAz0Ojz7pxf5lrtstDSgGZcdTAwMTZcYprw11x1MDAxOVx1MDAxYeF+XHLbYGU8MzIgUuOuzF6WRUySiFXC3kSxXCJIQ1x1MDAxNatQfq36gOhQPG9cdTAwMWG5Rm6kXddBXHUwMDFitCAlw+ZcdTAwMDKmXHUwMDExikppfSBcdTAwMTQpwpAynMUu/ywkhpu4jEslkVxmRve8yzo86Vx1MDAwZW1nNJ4sblx1MDAxNqeT4vx20kgjXHUwMDEyJfhQpchcdTAwMTGSWGZI/KOQiHC4TuSAXG5BeXRnU9S+89FyaeBjy+R654S062fdVFwi8Y2czYhIpFx1MDAxY3BcdTAwMDZlXHUwMDE2XHUwMDAz+4OQXGJ5qHWKpXJbXHUwMDAxotGB2GImbaPZtDvTSpdcYt1cdTAwMWR1h6VyXHUwMDFhgIhcdTAwMDNcdTAwMDHppEd9XHUwMDA0pZJjirOgT1x1MDAxMqH6YUFcdTAwMWYuQ1xyXFzBXHUwMDA1RiRcdTAwMGWYr8qUOrlW5bB+M69rXHUwMDE3J8urXHUwMDEzk6ZcdTAwMDLMQa1cdTAwMWHuaUae0CZAXHUwMDA3lL80U0bpVFwiISA4U61cdMRrlipcdTAwMTMhVVx1MDAwNodcdTAwMWHsnFx1MDAxMVx1MDAwZVx1MDAxMYkxOVSZWieyWazdXHUwMDFlXddv0VxyKeG7ajNccsxcdTAwMTKct95cdTAwMDWz7DRVXHUwMDA2XCLKXGIkPMuVSTzRZLkye1EsXHUwMDFhXHUwMDE06p5cYo6hO3PuXHUwMDA1jn7FO+OideWcXHUwMDFjXGYrXHUwMDA1XHUwMDAzkyNiaLqs1tKWK7OFc94pV0YoiFx1MDAwYpBNOP9cdTAwMDZcdTAwMTSTpcq4v2OTXHUwMDEyXGI1hlx1MDAxMESSXCJcdTAwMDFjsFx1MDAxMr+ossOr4vLcoFx1MDAwMFx1MDAxNVx1MDAxYVewcn+VjqCJWGemV2bxha5GiMZKXGIgrpxt7ptLzXgpMbyEMmJ6XHUwMDBmN02EJv1AxFQvsc8x+Fx1MDAxNS+dXozhKa5cdTAwMGXLs8LgqFW/aXUuh5U08Fx1MDAxMlx08FLSg7lcdTAwMTCqy1x1MDAxMIx9q9gy5kpcZnO9fTTXMe6djWgm4WhWXHUwMDA2hlTOIY5cdTAwMGVnszhvz8617mTQP7s5mmr1K3mfilx1MDAxYz6l1vOcKlAzZVkhN8Cxhm5cdTAwMGVAXkg18pwpd/hVQFx1MDAwZlxy8rK88E2TPSHb74k9Qllcbrg+dZ0mIHfHltNcdTAwMTgsV2YsWCstaqOB6Vx1MDAwZbY3viuhVYM2XHUwMDFm+5+2W3pgXHUwMDBletZKilRvjemaZDtcdTAwMDNdM58qOOOJd1RX7WhKr02fj8t4OuhccizNPN/YpqtcZo9/Plx1MDAxMphHvkdsXHUwMDFiK0355afBXHUwMDExXHUwMDE3gdtS9zhXdj7COHrY8/jiW+dw0W9fjaxTVlx1MDAxY+SgzZupSFx1MDAxOMJCKoJcdTAwMDPuXHUwMDFhPMGYXHUwMDBmZHHwJznU0cvwR0WeSlx1MDAxY1xygYRhIFx1MDAxOUjpTMuLINh+cFxm+70xXHUwMDE4aPRcckGIIVxulv5cdTAwMDQhXHUwMDExXG6GSOndyFx1MDAxOLw/dXCh1r0tLUuXmq63q5e3RZBcdTAwMDZcZlIg84D5oqHPsVx1MDAwN1x1MDAwMFxudMfnW3elQcjL4MdBXj2DSOiDlFxuzCGR6TRlX1x1MDAwND9jvurTO+Mv2OpbasHwXHI4JGaMcVx1MDAxOGO9KmvyauPrJVtcdTAwMWVcdTAwMDBzQMp2p1Gc4zRcdTAwMDBQSVWe+JXQY8hL5EWgXHUwMDBi76/zIFFiXHUwMDBmsExp6GvnSm+6XHUwMDFhqVTrPFx1MDAxZoFcdTAwMDZXb0FBXGJg0VeMkFlcdTAwMDHmjlx1MDAwMH6wYePw2rGv+2fFg1QgToFcdTAwMGJcdTAwMDY0nkTbXHUwMDAw915aTlx1MDAxOcNcdTAwMDKldVx1MDAwNmz3Su6t8PaOOlx1MDAwZYZnzimPXtk0sazMy+p4eVtr1lx1MDAwYlx1MDAwMPbIXHUwMDEwXHJn0mksUlx1MDAwMTku8lx1MDAwMVx1MDAxNcdcdTAwMTUwtqi4d1x0qzDEXHTiSP5BgNtcdTAwMTJXeSu47TysXHUwMDEyNk0heKhHpzhcdTAwMWYjzmGMeYrjSmVSNO5ZXHUwMDBlLYej2XCh9dryLlxyYKOBrVx1MDAwNjh7w2yyaHmqgFIkUbYsMpEzXHUwMDExr0rf2n1ealx1MDAxMtLDIJChVKLUNnXFOXqAVu/O+Ons2pF6oVV+ONTb184yLD8sWUxcdTAwMTLc5mBcdTAwMDdMXHUwMDEyqrVfkpeK2WptLUqng/qb81xuXHUwMDE0eUQpIFxiqSfkJjD5z4Zxs0yzrFXXZt6yl5JQg8LiLG+daVx1MDAxN6Xit1x1MDAxYbFqqDdq15tXs+bRbdLTVmNQ0julrUKEXHUwMDA1YTTb4y2RJPTGXHRiXCJmfS7zkmFMXHUwMDAwZIBI6W2m9Ni7PMCUYC5cYlx1MDAxMVRcdTAwMTFcdTAwMWOL1/zbktLU0J1HTG5yvcIntFx1MDAxMVx1MDAxMIhwXHUwMDE5I5a/vDtrfV9aJ43Te0P/Vlx1MDAxNq1SX9ppsJeCOfXbyFx0XHUwMDEzrFx1MDAxMfAyrytcdTAwMWExXHUwMDExTLl0dWWaeGmrXGKGRtkwXHUwMDBiXHUwMDEzP8kkUFx1MDAwNkGMTcm6s05tIXO1RrU5rts9aJ093PA0SF8wb5r5RWKH0sdxXjAsKWKYcbgx1IZpUFx1MDAxOCnEkiPxXHUwMDFihNrEWulTqM277s9QW8mazHzi+j7zt4FGg9E26nviXriNvlxmdSTUR1ZeXHUwMDE5UaaojM753ctyWVx1MDAxYmjgzDhcdTAwMDeofVO9mDcnLFxyqEProNu2WOE1oJM877I5XHUwMDAxXFxShVwisikh+Fx1MDAxOeggXHUwMDEwXHUwMDFjwbTuXHUwMDBi+Fwi0J3NnHDUvVWEO9joLlBcdTAwMTe+XHUwMDE3Q6iuU1xcTCjDNEaQu4euzDNcdTAwMDPdz44vbuyvXHUwMDBiUDip9c7TXHUwMDAwO1x1MDAxMsBdXHUwMDAyNmPAXHUwMDAyXHUwMDAySf2GbprQ9pv7gdlmXGavem9cdGKcXG5cdTAwMTLnhUiNpnN00zyz2oUpmDUqpaOH71x1MDAwYidccsxcdTAwMTI0o3fBLKEvRHpJ0Fx1MDAxYlx0xvjakquMZ1x1MDAxMsMzWdB7Q+1X0Vx1MDAxMlx1MDAwZs/ThpxiJYxxUmiK1cXJssCG1+hcdTAwMTL3WVx1MDAxZNBcXKdcdTAwMTe2R0xigt4xKOmdgt6EcaDckGziLYlcdTAwMWOULYredoO74iVcdTAwMDHCl1G6PjpcdTAwMDcsxq54x+doNFx1MDAxZlx1MDAxNk9ql+VF4+jO7FVrbJZcdTAwMDZzKZht9PHvj4SYQ6Vcclx0zVx1MDAxY7FcdTAwMDSSU+aIRdlcdTAwMTVvy6tpibL9XHSP8Vx1MDAwNslDelxuT1FrySadar1DXHUwMDBl6v2DiZVcbmp5g1fT7jT9XGJcdTAwMTJ3dpOBjGmSyDSZK7ah9quIicPw2DOmXHUwMDEyQ1x1MDAxMMNcdTAwMTPrXHUwMDFk31x1MDAxZTq15vygwVx1MDAxZYblwv3XlpiHvdg2MZ5YXGZKeq/0I1xiKeZEpHTV0G/OQZkrtu1cdTAwMDZ35or5oFx1MDAxMtxFmFDFyHGmxC5cdTAwMTQoza9cdTAwMTf69VU110Wj6rduXHUwMDA1p1wi/yM4JZaAdVx1MDAxZlJcdTAwMTAoXHUwMDAxy8JESeSmbN3Hj1Kf51x1MDAwNcODOlJJXHUwMDEyoizG1ljzy7tcdTAwMDLuz6uFwl2xcVx1MDAwNS+73FikYqe7YLx5XHUwMDE3TLLTKTBcYlx1MDAxOCCY+s3NjFhcdTAwMTJDLJnjtaH2q3hJ3XZcdTAwMTgtXHSssMBxjJn5XHUwMDAz7Y4sb5ujUvfq8PzhrDK6ZaCUdMcrXHUwMDA2Jb2T40VcdTAwMTGUmFxikVFQXHUwMDAyKShb9vHmlFx1MDAwNENj1Igjl/pjZP/eTGr2tCfg+LraupZa26idap00WErBeNArZ+ZDw9PRKElJXHUwMDE2XHUwMDAxad0mNGOkLFx1MDAxMrRcdTAwMTeVlVZcIrx57kxcdTAwMDRLn2hcdCh1zTiJwUt6hVx1MDAxY5/fXZx9tXKmxXPorr1oh83KJ8ZUylGel8pbXHUwMDE1gVx1MDAxZHdcdTAwMThCeVx1MDAwMOH6kp2d205008pcdTAwMDTxjKogI0hcdTAwMTJcZsGHmk9UiYs3XHUwMDE2McjKcsXvseqjnH76Ief72mTScFQz6uij1O7PXHUwMDA3xqKwgeu7q8/+p1x1MDAxZlLuSpPh9vjf/z79939cdTAwMTPs14gifQ==void bytes events bytes events void Input Output
When composing pipelines, these types have to match. Otherwise the pipeline is
malformed. Let's take the above pipeline example and zoom out to just the
typing:
eyJ2ZXJzaW9uIjoiMSIsImVuY29kaW5nIjoiYnN0cmluZyIsImNvbXByZXNzZWQiOnRydWUsImVuY29kZWQiOiJ4nO2ba1faTFx1MDAxMIC/+ys89mtN937pNy9QrKhF8FLf0+OJSYRISGJcdTAwMTJF6el/fzdBXHSkUINFStpQtTK7m5kkM8/MXHUwMDBl8fva+vpG9OhbXHUwMDFiXHUwMDFm1zesXHUwMDA3Q3dsM9D7XHUwMDFi72P5vVx1MDAxNYS256ohlLxcdTAwMGa9u8BIZnaiyFx1MDAwZj9++KD7vpau0lxmrzdcXGk5Vs9yo1DN/U+9X1//nvxcdTAwMWPT5diulcxNpKkmwUhWeui5iVaIXHUwMDAxQZBTiEYz7HBXqYosU1xyX+tOaKUjsWhDXFyCneZj7TGqtFr9W357XHUwMDE2XHUwMDFhJ19Ttde24zSjRyexyFxivDDc7OiR0UlnhFHgda0z24w6sVx1MDAwNVx1MDAxOflobeipK5CuXG68u3bHtcJwYo3n64ZcdTAwMWQ9xjJcdTAwMDBGUt1tJ8dIJVx1MDAwZvFcdTAwMDWnQFx1MDAxM5BcdCYgpFxiMjpcdTAwMWGN1yOJNVx1MDAwNjHEnKs5dOySXHLt2vFcdTAwMWMviO2KXHUwMDAy3VxyfT1Q91wite5KN7ptZaJrjua9Q0hcXFksndN/OmOSmtWx7HYnmpSFVnLpIaaCQI5ROlx1MDAxMivw98zEXHUwMDAzvqVcdTAwMTc80HvWXnJr3LB+czr4Wlx1MDAwMyfyoTVg56he25VcdTAwMTOX0DWfLqF75zip9fFAZcy/0qPf+aY+9Fx1MDAwNcgk41x1MDAwMEoqOcajceVz3ezhXHUwMDFjz+hOcZ8w0oNo23ZN221nl1iuOWPE0cNox+v17EiZ8cWz3Sg7IznuVlx1MDAxMHj9jqWbU448c8yPXHUwMDBml1x1MDAwNlT8Sn9bT90neTP6/dv7l2eTXHUwMDE3pyOggYlcdTAwMTeZbz2Z0Idy6Hv92YzNXlx1MDAxYv//x/v5QFx1MDAwNIGUs0iEKFx1MDAxMpJJkcbdSyA6OujUXHUwMDFmL25cdTAwMDbdiyjk/nUvXCK8clJcYlx1MDAxMMHlgkgpsuQ0XHUwMDEwQY1cdTAwMTNcIinnQqpvnp7NL7iEVMpQJMCs5FJcdTAwMDG59DInNjNOXHUwMDAx5Fx1MDAwNJiwVMOYYcGg5Fx1MDAwMlAyXHUwMDFmp+bl2p/hXHUwMDE0lzArXHUwMDFkXHUwMDE1TCo8XHUwMDExlVx1MDAwNOcvmHjU39+Ko7FcdTAwMTJ06zvV7tam3rJncKqjXHUwMDFinbvA+mtcdTAwMTj1XHUwMDBlWvG/X/JpKseeXHUwMDE5JfJcdTAwMTVLXHUwMDFjXGKAlVWshNLfXGKlOVx1MDAxOcLmnC8y5kxWZnA+dVijXHUwMDE0cYhcdTAwMTlcdTAwMTdcdTAwMDJcdTAwMDBcbqC1XHTpn8FcdTAwMTifjTGOsOBiPIu/hDFcdTAwMGZ49VbQ3/PvK42Lw1x1MDAwYslPt7r1QpRbcmkom7nny4kxiZXPXHUwMDEwLNPkUmJslTGGSo4tgWOC4az0mWNEiDhcXIDIjbGgZlx1MDAwYq67ZjXqfVx1MDAxZZy1Q1i9PjkqXHUwMDAyxsiSd41cdTAwMDRcdTAwMTiA8le3r4QknFxugVJDSpStMsrK9lWe9lx1MDAxNcuKR+0rxFx1MDAwMOaSp1x1MDAxM15cdTAwMDLR7lx1MDAxOVx1MDAxMtt7XHLBL1wicdlA3T3ngczaXHUwMDE2rlx1MDAxNIgwX5E++mvaV0LVvSqZyXKjWFxmLEGhIUpcdTAwMDFBXGJcdTAwMDL1jeT4ajhvM6psbsW7wpk9eChcdTAwMThCgDOan2Kd6i7q2vWv/kFwf3xE+r7XblxcrXpza0FcdTAwMDRbVnNLeb5QX7RkVjGYVe5cbn91gktp0isjXHUwMDEx4XKOJv1m2Dn3dlx1MDAwN49Wv9reu95qnXWUXHUwMDA3XHUwMDE2oFx1MDAxYSOLeaohV3dr1pYwXHUwMDFmx1xiVdZcdTAwMTBcZsvmVomx9Vx1MDAxMmNPXHUwMDE4k1x1MDAxOGSlaTmmKCaknKNJXHUwMDBmP+3XXHUwMDA2/c92TZCOvf/ZXHUwMDFl3IS121wiYIwueVM585mInFx1MDAwZmdhXCJcdIVlo74gLPutfdriu1mrsFx1MDAwZlRxNps8XHUwMDA0MMlcdFx1MDAxM/nJY3pcdTAwMDe26ctcdTAwMDZqXHUwMDFlnVx1MDAwN8eoa502KpVCkFx1MDAwN69IX/017SxcYiBcdTAwMDdcdTAwMThcdF6CqFx1MDAxOCAq+1lTZv9cdTAwMTbHXHUwMDA05jMxJlx1MDAwMSFJ9yQ3xsRVjYrN/Vx1MDAwNt5cdTAwMWWYyNSvjuu1S33V+1lcdTAwMGJC2JL6WZJcdTAwMDMgXHUwMDE0XHUwMDFkynZWMZD1xvtAMed8LjXJVP1cciBcdTAwMDNESlxiJ63TXHUwMDAwplx1MDAwNHNBiKBcbodsPvVvi7DIeoimIUwxalx1MDAxNsJcYmVcdTAwMTBQSfI/XHUwMDE2v9m+qbbMVvX85OBAP71pfHLqXHUwMDE1o1xihVx1MDAxOEJcXKNSSoLjP1x1MDAwNCB47DO6XHUwMDA0Y4xpXHUwMDE4qD0xIOpLgrdpZWFlw89cdTAwMTBTiTktsJ5LL4RVRmVs7Lxcbs6xa8+NmvYgyZxsQlrVe7ZcdTAwMTPfhPS4iS/HadnTx7wglm45dttNvEtZa1x1MDAwNVx1MDAxM1x1MDAwZVx1MDAxZtmG7owmRJ6fjlx1MDAxYUqPrnJ8sPdcdTAwMTPOvMBu267utKbqjFx1MDAwYoPa6E6N3agrPbSSqkGJ6etcdTAwMDJcdTAwMTOhrPQ5MJngjGGK8j951KxcdTAwMTinXHUwMDBmlVx1MDAwN9Dfplx1MDAxZft00jjph3WzXHUwMDEwgSmQRjiMeUtVXHUwMDFkIeRkfYFcdNaEoJBTiolENGPXYuJS1TA8d2CqI1x1MDAwMFxmxL9cdTAwMWSYpmV4PT+IjV5yeE7T/JZBXG5nPlx1MDAxZUgpJGqPRfN/XHUwMDBlZO33b1vHXHUwMDE3Rzt8p1x1MDAxMnRMz9lcdTAwMWXQXlx1MDAxMYJcdTAwMTRLqLGk7GGEclx1MDAwNtJcdTAwMGb5h8mTaFx1MDAxMlx1MDAxMoFcYmFcdTAwMTRwMpZb/0z2JFxcXHUwMDAyMNHa/lx1MDAxN2M0sJafPCd1vmVcXFxumpWmf3auMitH8/RcdTAwMTdcdTAwMGZl91BHrTZcdTAwMWS09MPmedPzvzifi1x1MDAxMJiqgteAhFJcdTAwMTCsYMQzVe1SkqeyXHUwMDAw5U2enCHB4fhcdTAwMTPV/2JgKt+3jGjZoZnV+obBScHMylx1MDAxNkJIsUSE58+abuVcdTAwMTK29+rHm/4gqN+eQozsi7NcIlx1MDAwNCdlVCNMxVx1MDAxZlTZkUuR6ZypLSfnmFx1MDAwMZU5XHUwMDA1Q2Of9i0yOqHIXdpKxiiSXHUwMDFj/DVcdTAwMGbVvyo4I2/ZgTmucVx1MDAwMUGZ3J6pUYlm97K5gIAxifKnzFx1MDAxN279avay03fDXGJcdTAwMDRcdTAwMTnNi+xWT2lXQ1xiNMQkxVx1MDAxMFx1MDAxMZm8fsqQKlxiobpcdTAwMTdzbC8nfGtRXHUwMDExpyD9mohzY9dcdTAwMWJOXHUwMDFk+ujaU69zQ/f9ZqTUqNGhx27c21Z/e1xuya6T18bak4fHnmTFXHUwMDE2f/+x9uN/aar9OCJ9load decompress read select to
With the concept of input and output types in mind, the operator type become
more apparent:
eyJ2ZXJzaW9uIjoiMSIsImVuY29kaW5nIjoiYnN0cmluZyIsImNvbXByZXNzZWQiOnRydWUsImVuY29kZWQiOiJ4nO2cW1Piylx1MDAxNsff51NYntchu++X/eblqCgoisqMp3ZZIVx1MDAwNMlcYkkmXHQq7vK7n5WoJFx1MDAwNILoiGNGscaBTne6071+/V+ru/HfLysrq9HIt1f/Xlm1byyz73RcdTAwMDLzevVrnH5lXHUwMDA3oeO5cIkkn0NvXHUwMDE4WEnOXlx1MDAxNPnh33/9Zfq+kZYyLG9wX9Lu21x1MDAwM9uNQsj7P/i8svJv8jtTV99x7SRvkprWRFx0zqfue25SK1x1MDAxNkIxLVx0ZuNcdTAwMWNOuFx0VUV2XHUwMDA3LnfNfminV+Kk1Wi4fuSdf7toXHJ8y1pfP/JcdN9EabVdp99vRqN+0lwiK/DCsNIzI6uX5lxio8C7tFtOJ+rFLcilj8uGXHUwMDFl9EBaKvCGXHUwMDE3PddcdTAwMGXDiTKeb1pONIrTXHUwMDEwXHUwMDFhp5ruRXKPNOUm6Yb0c1JCqlxc3Vx1MDAxYl7fXHUwMDBi4rr/g+34J629bVqXXHUwMDE30Fx1MDAwNLeT5lFC2Vqkea5cdTAwMWaeiFx1MDAxOIpcdTAwMTEskWZcdTAwMTQx+MF2JdO9Pdu56EVxc1x1MDAxMDdcdTAwMTTlWjDCXHUwMDE5lizTXHUwMDExdtL5mjDKXHRNi8ZccvCrncRcdTAwMDL+STs8MFx1MDAwN3Y1XHUwMDE5XHUwMDFh1Fxu7YPNqFNpuWf7tzt+XHUwMDEzXHUwMDFmX59OdKHbeehCd9jvp09cdTAwMTdf+G/GvtK7XHUwMDBm/Y55b1x1MDAwYlhoITDWSnGsx9fB5i7zt+t71uVcZvNcdCMziNZcdTAwMWS347hcdTAwMTf5XCK22ym40jfDaMNcdTAwMWJcZpxcYprR8Fx1MDAxYzfK50juu1x1MDAxNlx1MDAwNN51zzY7M+5cXHjNj2+XXHUwMDAyXHUwMDE1v9J3K6n5JFx1MDAxZsbv//k6M3dl7rjHr6lcdTAwMTFPb/kl+//d12fyLWgh39BcZoJcYuepqT/F9yk+9lx1MDAwZTyy0yb7/slxuLZcdTAwMWTcXGaDMvAt1CTfhC6HbybSesY0p0lcdTAwMGb0XG4sKSWMp1x1MDAxNz7xfdf4ZoY1V+BcdTAwMTfhlIVwwmSBmSSCLFxm58Ba71arl3L9/OhcXF2s741syzwqI5xcdTAwMTT/TjixwjBcdTAwMGIznvFcdTAwMDA+6fyQdMpC15ggjlx05YouLp0y3Gme967q1eHphu87Z2enP65pKenUv5NO8I5AOzVJp8VPOD8mnCyf+lxiJ4xcdTAwMDRGiomF0VTu4FqI2r5HXHUwMDA2tfaeWTk9POr4ZUSTLSlqXVx1MDAxME2tXGJEL/ozKP3gaJJir5ZKIcCr1YsvKdVo69SjnmCBf3I7XHUwMDFh6K16t6rKXHUwMDAwJ2PlWlLCXHUwMDA0gbBq+un2llx1MDAwNN/ft6ZEXHUwMDBi15SEkoRwRFx1MDAxNo9au7eW3j3/SUc3pkeOW97aRmXne1x1MDAxOfjmomx8K0I0QurTdf5cdTAwMDT8XHUwMDFl8Mi+iWZcdTAwMDGe1ee8c0001ihcdTAwMWJcdTAwMDM+XHUwMDA1uO1sj/o/ZPu77Tclv2EwkodcdTAwMDdlXHUwMDAwnHJmSM5cdTAwMTRcdTAwMTKaXHUwMDEzmNVE2inJXHI0M5SO41EhXHUwMDE50fpcdTAwMTfDYoYsxOUs39tQkk/zTtLWPFx1MDAwMo45xVx1MDAxY1GURj4lXHUwMDA3vOu5UdO5vV9xmUjdMlx1MDAwN04/WY1cdTAwMTgnJ8ZcZo905WXNIE5d6ztcdTAwMTduYl7QWjuYsPjIscz+OEPkZeI+XHUwMDBi6jFBXHUwMDAyg+pcdTAwMTTnXuBcXDiu2T+eWWesmzuP44RccpJcdTAwMTn30E5ENX6eXHUwMDE3kUmFyqeOfWutOWdCs8W1VzTOq5v1XHUwMDEwXHUwMDBmm4NK67DS2+7UtswyoFx0j1x0XHUwMDEzXHUwMDFm4lRzXHUwMDA1XHUwMDAxRWpcdTAwMDTPXHUwMDA1U0tskZeByZXBNV1cZk3KgVx1MDAwMabZxyazPYrs8K3RzFW6RDbZnK1WRSRcdTAwMTJcZpRzYTa3jqz2Ma5ccqX3Xa+57cb22t5+s1xmbHKlXHIkSMrFXHUwMDE0k1x1MDAxNCGSa06KXHUwMDFi6WqbsZchKZFBMVlMLGE0qGDyg4ulfZW06Y2ZzNe6TChZ8WKUJljBXHUwMDA0jlx1MDAxNlx1MDAxN8y6bdZu16NvXHUwMDAz3rxWdri7XHUwMDExXGZcIlFcdTAwMDYoXHSjXHUwMDA2y4pVYlx1MDAwZYxcdTAwMThSZ1481563XHUwMDE3SkykUpj+OXuvry6UQdJ3ZdZJzuZcdTAwMWNJ4lrDP7U4krdX4tSuho3GQLR0r35cZsGwWy9cdTAwMDWSRFx1MDAxOTgnk4wsTORb6STHkjLwoT91slAnl4XkXHUwMDFiyiTlJJ86ZpJcdTAwMGLOiVx1MDAxMs846+B8u6xfOsEtb+1cdTAwMWU099c2zVHV75aCSdCqnEhcdTAwMTLBXHUwMDE2XHUwMDE2ybdZ5lx1MDAxMZhcdTAwMTBcdTAwMThcdTAwMTHxsYmcs8yzLFx1MDAxZd9slYdk4sQ8jUjGcZTmi0eS21v22fX26V5jZ9Ps9Hq9m8bJzW5cdTAwMTloZPlcdTAwMWSWzHn3PHuUUZOh+excdTAwMTXtsEhqwPSmXHUwMDAxKSoknokhzVD/cNpcdTAwMDGjeGbEf8xphyyFalwidUxhOoyPXHUwMDE0Vl1/XHUwMDE4XHUwMDE1YLi08DFXaVx1MDAxZUSeMYKURP5CXHUwMDEyRT71kURcdTAwMWRbikB0cVx1MDAxMFx1MDAxZPu7/bPvNm5cdTAwMDM04rS2ed7ev10rXHUwMDAziNlcdTAwMWPJbDzn9PyvgKilwUFrXHUwMDE5kporrdisbc5cdTAwMTkgYkRcdOJ/5uLqwiRcdTAwMWVcZqNiXHUwMDE0l6WI+UpfXHUwMDAzxcC2onsznMUjK9z/IFxiJmSqn3Mmd7dXXHUwMDE5ubXBxVZ7u1Gv7rSO+u3t81x1MDAwMiBzUP02TeTUXHUwMDAw109hKlx1MDAxNEJcIjM9JWBCTEmx4FxmXHUwMDEzoIcqmWtXiiBKXvMx7XZtS+tcdTAwMTknXHUwMDEykDIgIMCEXHUwMDExzbTIeqJjTqF9XHUwMDA2Y1x1MDAxOFx1MDAxMJCKYaoz66yPX2FjiCnO5HJcdTAwMDT00axSw6JcdTAwMGYpd8U0j8ukpYs0XCJjRWeHJ8RUP2hv77xRPz78Xmt3r8jqON/dw7vXnCpepmWkcFdcdTAwMWZ8XHUwMDE5qlx1MDAxOJHP8CpnP3VcdMSMaWpgKTXWlPH4m1iT2/pUXHSDU8nAXHUwMDEzlIIjRYp9zkVcdTAwMThcIkS17Vx1MDAxOVJcdTAwMDeAXHUwMDFhXGacTlxmXHUwMDFlXHUwMDA2VCnJNEKZWGhcdTAwMWP6UUUpwn+k1GExkTpH6o5cdTAwMDPTXHK7XjAwI7DhXHUwMDE3715cZpxOJ6syk7r3lDjkpbCwUVx1MDAwYmlcImYv10Q5Z+2GYJBcdCye8S2yM3GGW6a9jV3ZcH60auGBW2m9N01khsSEKvBcdTAwMTFcdTAwMTHMW1wiNb3k3Fx1MDAwZcaGXHUwMDA0jVx1MDAwMu9cdTAwMWPHXHUwMDEyxHK7XHUwMDFlglx1MDAxYoJRXCJcdTAwMDWShEhEc+18XHUwMDFkjcRUXHUwMDFhSiFcdTAwMDBDI2CWpk825lx1MDAxYtqBNeNcXFx1MDAwYq1cdTAwMTVMzlNcbkkwRZLDtFxceonUODq3/F0l9Nb5t73Kce1o4+zoXHUwMDFkSqRkxVx1MDAxMiklVzg2qYVRmv3U71JcIudcdTAwMDPFXHUwMDExXHUwMDEwwyllWkmUOV90r5fgXGYyxMGOXHTB0ENLkUuBXGZEsVx1MDAwNlFcdTAwMTZcdTAwMTSp7HdM5silVCCuhP45J9pfpJbN5K+ILEsln5CLvEpONWbp6khl4Vx1MDAwMVx1MDAwMIJcdFx1MDAxMVx1MDAwND9rLbVXrdVPbGr3yM8reXji0L2bw/emjvmIkVx1MDAxOIJThlx1MDAxMcxuXGY8zlx0fFx0xJOSwbzGoCuo5HI5ckhcdTAwMTA3IFx1MDAxY2VKk3j1Wum0mjHAySxDpFTQVqwont75kFC/iFx1MDAwM5Wy62FwXHUwMDEwoI1ufSD6tdOwulx1MDAxOYzCesV6h3rIuC6EXHUwMDA3kXjax8/Yqp/91O9SXHUwMDBmc0faqDAk51iAccZ+5aRcdTAwMDJcdTAwMTKRXHUwMDFjeNPAXHUwMDE4XHUwMDA1wflFgopcdTAwMTRcdTAwMTD8SYBCQ+VYS1wi+Iw1l1x1MDAxOVxuXGJxPUHyoysg3H9Z+veEIEzp32RTXkP9krGbffSt0JeFqJDCTPqMpdInzGKC3Z5p9YaB/fu5zf9Rrywgz9+7j+JcYt83XHUwMDAzsJhpPFx1MDAxNZ+1WaGml3BcdTAwMTYmcVx1MDAwMofXwU5cdTAwMDJ4NGt8i2LnxiZ2n/XeXHUwMDE2vzyI06rp+81cYqpcdTAwMTnr5+qVY1+vz3RccuJXLHKJJccmYyeye/fl7v+P16o3In0=void bytes events bytes events void Input Output Transformations Sources Sinks
This is quite powerful, because you can also undulate between bytes and events
within a pipeline before it ends in void. Consider this example:
load nic eth0 | read pcap | decapsulate | where src_ip !in [0.0.0.0, ::] | write pcap | zeek | write parquet | save file /tmp/zeek-logs.parquet
This pipeline starts with PCAPs, transforms the acquired packets to events,
decapsulates them to filter on some packet headers, goes back to PCAP, runs
Zeek on the filtered trace, and then writes the log as Parquet file to disk.
Visually, this pipeline has the following operator typing:
eyJ2ZXJzaW9uIjoiMSIsImVuY29kaW5nIjoiYnN0cmluZyIsImNvbXByZXNzZWQiOnRydWUsImVuY29kZWQiOiJ4nO1da1faSlx1MDAxN/7eX+Hy/XrMmful39CqeEFQRC3vOsuVQoBATGJcdTAwMTJcdTAwMDE5q//9TKhySYkmSjFpY1dbmVx1MDAwYrMn2c8ze+/Zmfz7aWtrO3h0je3PW9vGuKVbZtvTR9t/heVDw/NNx1ZVaPrZd1x1MDAxZbzWtGUvXGJcXP/z33/rrqvNe2kt5+5HT8My7lxmO/BV2/+rz1tb/07/XVx1MDAxOMszWoFudy1j2mFaNVx1MDAxZo5IXHUwMDEwLT1z7OnQkHEqXHUwMDE4XHUwMDAwYtbA9L+o4Vx1MDAwMqOtaju65Vx1MDAxYvOasGjbXHUwMDFl3e5cdTAwMWPd211adY7aO/ePtGI3R/NRO6Zl1YNH68e89FbvwVuQyVx1MDAwZjxnYFxcm+2gXHUwMDE3XHUwMDBlXHUwMDFlKZ/1aztBKMCs2nNcdTAwMWW6Pdvw/aVOjqu3zOAxLFx1MDAwM/NcdP64XG6ft+YlY/WJca4hXHUwMDBlMeeCUIRcdTAwMDGf1Yb9MVx1MDAwM1x1MDAxMVH2XHUwMDFjy/FCUf5cdTAwMDeN8M9cXJZvemvQVVx1MDAwMtnteVx1MDAxYkNcdTAwMWEtozNvM3qeIFx1MDAwN1x1MDAxYeZcdTAwMDJSzCRhVFx1MDAwMjxr0jPMbi9cYttcdTAwMTCqYVwiXHUwMDE4R0hcdTAwMTLCKSZzUYzpXUBSXGJJXHUwMDA1RrOKcHz3qD3Vh3/ml97T74yjsIf9YFmLXHUwMDE3z24/XbxnvZlrXHUwMDBlfir5Pp9g2H4/qnGLWrekeYExXHUwMDBlZjNf0Fx1MDAxM2/klVx1MDAxOVx1MDAxYuhBiTTLg/3y+Fx1MDAxNFSC7Vm770+/zcV/cNv6XHUwMDBmtYNMMlx1MDAwZZDAUN2qWb1l2oPo3CynNZhr6qeFifyEkCU5XHUwMDE3wUFRLDgwUjdNMlx1MDAwMlx1MDAxMqNj9axXo8N3XHUwMDE0zlNjI9Lr/dDgWGpAKVx1MDAxZiVMXCLKXHUwMDAwikCDvlx1MDAwYlx1MDAxYZ2O0ZLyZ2hcdTAwMTCmXHROf4ZcdTAwMDP6Sf0hwIxhxVLk/fq/VPGToq9TXHUwMDE351I5dlA3J+F1R2Cp9EC/M63pNZ5cdTAwMTVPlVRdtolhXGa2l0pLltlcctV1u6WkNbwlTVx1MDAwZUy1ZMxcdTAwMWFcdTAwMDSOO69tqXF00za8oyTk7Xhm17R163KlXHUwMDE4atJGeUZbXHUwMDFhWrjvvlx1MDAxMVZOp/hcIlxip61WgFBgXHUwMDE2XHUwMDA3Qk5cdJdcZoHkXHUwMDE4bN+fXHUwMDFkMH7rTeqksl+7PZ5cdTAwMWOaZVx1MDAxZYPBluf4/k5PXHUwMDBmWr2PR1wiRlijXGZcdFx1MDAwNUYuJFm4JmF/gqDGXHUwMDE4VGtcdTAwMTdRXHUwMDBiNlx1MDAxMShcItdcZnOBp9u+q3tKUV7GJkLim8FWYHMu1lxml1x1MDAwYmXPuFx1MDAxNFx1MDAxNFx1MDAxMkBcdTAwMTFfw7r0dlxcKsVAYlFFk+LSXHUwMDBmdC/YNe22aXejXVxmu1x1MDAxZFNj6X6w59zdmaGBUnNMO4i2mH5vyfOcUc/Qf5q0+ubYOjf8uuVcdTAwMTV3/tvWXFxXplx1MDAxZma///PX663Jq81cdTAwMTHQwNJcdTAwMGZJ158sjYdcdTAwMTKM9/bZLLT+tPh/WtKBgMNo8TPrUCq5XHUwMDE0aMHmeo11XHUwMDFlvlx1MDAwZbpiYlx1MDAxZHnoXHUwMDAw37TlznCnVVx1MDAwNnlgXHUwMDFktbZtlHVcdTAwMDRcdTAwMTOGXFzFOlDjhEiqTHSp/i7cm5dIiFx1MDAwMqy0lcuChLJOQq+Twk5EXHUwMDAzgFxcYiFlp3KlnlgwqDRcdTAwMTVQko6U0pLYx5BcdTAwMTJnOFr6zElcYmOuVlxckdxXP5FsXGK6zVqjX1x1MDAxZF20h+jUaXz9umZfPat8lMQ7WclZz3wkkllBWCqVXHUwMDA0bKF1QUB5JaCUfMFStlx1MDAxN1x1MDAxMXGWTS6YbjhcdTAwMDVcdTAwMTJcdTAwMWFGtFx1MDAxOFx1MDAxN1x1MDAwMlx1MDAwMFxuoLFcdTAwMDPph1CWILFmlFx1MDAxMFx1MDAxMGIh59bkq5R1To5pk5daXHUwMDA3zuUpqZLTxiFcdTAwMTiIPJhRXHUwMDA0bNaMXCKgXHUwMDA1KH+r80ZcdTAwMThnXHUwMDA0KkFcbtbKOGtcdTAwMTW+W4zvRqLFz6SDJZFcdTAwMDApXHUwMDFkS0w6l48+83dPXHUwMDFhw96Aosld//Z83NjPXHUwMDAz6SjTI1x1MDAxYlx1MDAxMaO3+G6CXGLGXHUwMDAwIYXllEFcdTAwMGWCQkOUXHUwMDAyglx1MDAxMFx1MDAwNOovkou9YVpPrPDswkA2j5bONprC/Vx1MDAwNXVpWHLX7rFqW7a3R7s1zz37xvdblUbTy7prtya62pBrRyVcdTAwMTRcdTAwMDRRVPBTXHUwMDA2+Vx0XHUwMDE1rt1GOEtGS585izBcYpVsLLlrt9uuXHUwMDEzm91Mbtz6JZvsO/75I73Kg5VFyMZoK9atS1x1MDAxOI1cIkxcdTAwMTBJ0ILtW3BWwVl/XHUwMDE2Z8VH0KFCJ4CM8OTbemforD/a63teu9RcdTAwMTlcdTAwMWFfxs1cdTAwMDFcdTAwMTj38kBadD3JXHUwMDA0myAtXHUwMDBllfmr1KZcYkZcdTAwMTWk9ZuTVlxcXHUwMDE2XCKW8VmIhCh8cI6Tx7NcdTAwMWOzbXv8y8Gkut/dXHUwMDFkn9zcu3eV+zyQXHUwMDE2kkQjlHHFSYBRiudMPs2Tk1jDXGJcdTAwMDHFWlx1MDAxYyFcIt+XmVx1MDAxOEdamGsr8lx1MDAxMqFcXEh4eyYuJliYKFx1MDAwMj40M/HNxLWQmVxi2VLpXHUwMDBimYmWoy/c8bVlJi7JXHUwMDFiTUNcXFx1MDAxZTNJXHUwMDFh4lx1MDAxM4pT51x1MDAwMqN4XHUwMDE0QlxuhfJ2UHJ/xzrap1V2Uru3Zbcuai68q3j5iCpcdTAwMGKoQUaVemNcdTAwMDZcdOTLyfKEK9JlVLmGgiis0o9GoeBcdTAwMTBBiNBcdTAwMWZcdTAwMDRCz9g8XGKXx/yVIMSxcVJcIlx1MDAxOVwiXGaK5Fx1MDAxOGxO9Fx1MDAwYtlcbirlfqd/dWT3R1fGYS4wSDHRXHUwMDE45mqRXHUwMDEzykaRXHUwMDBi2r1cboOIRVx1MDAwNFtcdTAwMGZcYuOS9Fcuhlx1MDAwNFwixiVE+bTi34RDZX0vhtU3XHUwMDAzxMigv1x1MDAxNInxyyFiTGJcdTAwMDFSeNLBtY4nToncXlb8oFJcdTAwMWZS81x1MDAxMFx1MDAxZudcdTAwMDGKXHUwMDA0UU2qVVx1MDAxMFx1MDAwM1x1MDAwNKVcZjNOP8AqhVx1MDAwMGtcdTAwMTAlXVx1MDAxMpVTjzBcdTAwMTZ/0JLYNlq66z9YSohNXHUwMDAzcuXQv1x1MDAxNJaxQXmMXHUwMDA0JpSn2EeEXGa0T/R7Vu31a02rd9qtP+zH7SNmXG6VSss0iVx1MDAxNUVxqmY835/eoI2aZnlU/KBcYlx1MDAwMoCcZju8XHSTfs+wrE2jMTLoXHUwMDFhcFx1MDAxOJv3XGJiU5AgJMpkI1wiRa62/cWWLWfvXHUwMDEwKa1DV1x1MDAxNVx1MDAwNI3JyW4ugLie3bFNPbXGoGRCSVTskGUw2FxcZD4myHyM948hUWafxFx1MDAxNCa3yr+eiH7ttEMv7Cpzh5TYfXB2klx1MDAwYtrJSr71W1JcdTAwMWZcdTAwMTGEXHUwMDE0c85yXHUwMDFhtPrNWajIfVxc0fpdpMVhrMtcdTAwMDLVlWGMklx1MDAxNOnap+z+7Fxist0mfqy5V1x1MDAxNy7c7Vx1MDAwMJr13Mc18dWGclx1MDAxZjFcdTAwMDU0PPokn97Kb85PxZb8S1x1MDAxM1xcXHUwMDFiZ5FY905BlEMgUuxcdTAwMDV6g6F7b7uirLvdnXH1sE27e0e5MLM29zRurGeXNI1cYmBGXHUwMDEwKM4jKTjrT+UsQUG0dGZnUcElXHUwMDA3aY76a/aQcTC6bZTqQ7bbuzAmtbO7XFykXHUwMDExiaz4homIK3RcdTAwMDZcdTAwMDVcdTAwMTGkyH/MXCJxXHUwMDE1IalcdTAwMDQhKVx1MDAxMZtyzaBcYiPhNLl3dzgqn1x1MDAxZFx1MDAwZc+/XHUwMDFlX9QuLkffPHDJjbhDSzLFOjzPXHUwMDBm4yrrSUBcInFcdTAwMTFcdTAwMTbPIFx1MDAwN1x1MDAxNVx1MDAwMalcdTAwMTWt30VZnMVcdTAwMWU4iYGUIMRoYsbaf1x1MDAxOLLSYadcdTAwMTNYWHjB5UnnpiHinlx1MDAxMclMPGpNbLWpZ3HDJ3FB4dtlkp5cbt/upVx0rs23g7HZeFx1MDAxOFx1MDAwYkpYisMqv95cdTAwMGWO/Yp3PWhSdyxHd0fXXTtcdTAwMTe7fmLDh1W+L9mAQszR0jNcdTAwMDNcdTAwMDVrZYa1XG7HLoFjR2i0eHZcdTAwMWElXHUwMDA0yltcdTAwMTCLJ6++emZcdL9/ZLfQss5d/7ZcdI1jj12Mc8E6XHUwMDFiTnFaa65cdTAwMDFUpjxS1lx1MDAxZSxsp1xmslDh2q1o/S7S4ig2P4pSiDhafNvLq0/SVo3S8cGt0z258SpcdTAwMDGu7jZO6/Wsu3Zroqtccrl2ITVRUDz9n0l6Klxcu5cmuDbXTsaaWVIq3eQwhZV1fU4nXf2yxquk0UGD8rHNrYs8WFlyw/Hz2Fx1MDAxN1x1MDAxMSRLN1x1MDAxMFJcdTAwMTJIXHUwMDExLVwi5lx1MDAxOeStd9kt63fmsmBcdTAwMTdBXGJjY94w9OQoXHUwMDExKbbpXHUwMDFhlVNHXrvXtfrdca2FS2JYvjrIXHUwMDA1zWTlLUtvceZcYmKIcsxcbmMpg6RT+HIrWr/PMFx1MDAwMvFPoDOBOZYsRT5cdTAwMTO3XHUwMDFm91Cp5JRq7dumWzfdUlxyx1FWZpy5NdHVpl6HXHUwMDEyyoJcdTAwMTU/XHUwMDE1XHUwMDA0lUGC+sXenEjZnktN2fyYXHUwMDAwyFx1MDAwMJFcdTAwMTLCZek0gCnBXFxcdTAwMTBllyjyY+mG/7WEXHUwMDE1+2w+iyUstSBcYsIpTVx1MDAxMX0y24MgOPRuoH8xpDu1i377cvwlXHUwMDBmNlx1MDAxNoNM41BcYopZeGaWnH/Lqlx1MDAxMzMycHpN+CpcdTAwMDJcYnBOXyP3tsNrPHPzZ2VEXHUwMDA2/ZWnZIh404FcbkxFqkfOXHUwMDFhxv1Vudyg8PqsKsuTwDq/bezkXHUwMDAxiZwzXHIoXHUwMDAzUirrQFx1MDAxOZMy8uLzzSAx+WFumKrlQHL6XHUwMDA34fC3PsyNQlx1MDAxMS2do5BTgFiamMNwUO/4u+Pe8aTuXHUwMDAyo9bfq1x1MDAxZX5p51x1MDAwMYWCSo1gSjFcZjHIXCLrYVx1MDAxNk9zQ5Sx8OS5fNrxxYK4XHUwMDAyiiR2QeSUc65cdTAwMTbF5JtcZnvut04g98Hjzt3JmVx1MDAxNVxc7HS7Zj9cdTAwMGZIVFx1MDAxZbRcdTAwMDYgRFx1MDAwNHIgVfOX18OPPttcdTAwMTRiKLhcdTAwMDJBTt/T97ZTo/ThxlG4PGZcdTAwMWFcdTAwMTB+evIvt3XXrVx1MDAwN+FcdTAwMTFwn58guT00jdHuXG616Ex/tj89QThcdTAwMDSLXHUwMDEx3oN/v3/6/lx1MDAxZk6kh/IifQ==zeek load read where decapsulate shell write read write save
P3: Multi-Schema Dataflows To further unlock value within the structured data layer of the pyramid, we made
our pipelines multi-schema : a single pipeline can process heterogeneous
types of events, each of which have their own schemas. Multi-schema dataflows
require automatic schema inference at parse time, which all our parsers support.
This behavior is different from engines that work with structured data where
operators typically work with fixed set of tables. While schema-less systems,
such as document-oriented databases, offer more simplicity, their
one-record-at-a-time processing comes at the cost of performance. In the
spectrum of performance and ease of use, Tenzir therefore fills a
gap:
eyJ2ZXJzaW9uIjoiMSIsImVuY29kaW5nIjoiYnN0cmluZyIsImNvbXByZXNzZWQiOnRydWUsImVuY29kZWQiOiJ4nN1aW1PbOFx1MDAxNH7nVzDZ18bV/dI3roUtXHUwMDA1SqBcXHY7XHUwMDFk11FcdTAwMTIvjm1spUA7/PeVnFx1MDAxMDmOXHUwMDAzgYY2bTJDkiPJOpK+73zn2HxfWV1t6NtUNd6sNtRN4EdhO/OvXHUwMDFir6z9q8ryMIlNXHUwMDEzKn7nySBcdTAwMGKKnj2t0/zN69d+mnpulFx1MDAxNyT94UhcdTAwMTWpvop1bvr+Y36vrn4v/pbm8rMsXHUwMDE5TlOY3VSEiKp1P4mLaaFEgFLEXHUwMDE4XHUwMDE591xi800zl1Zt09zxo1xcuVx1MDAxNmtqbJ3j/W737KIn5PlFcoYu3q9cdTAwMWStuWk7YVx1MDAxNLX0bTRcXJRcdTAwMWb0XHUwMDA2mXKtuc6SS3VcdTAwMWG2dc/OXrGPx+WJWb5cdTAwMWKVJYNuL1Z5PjEmSf0g1LfWXHUwMDA2wNjqx93iXHUwMDFhznJjezDhSVx1MDAwMDmgRECMKFx1MDAxZLfa8YxcIlx1MDAwZjNBIGdYXCIkZMWvjSRKMuvXX1DZt/Psi1x1MDAxZlxcdo17cdv1kVLJXHUwMDBlcn2uR6vFXHUwMDAweEgywd3kPVx1MDAxNXZ7esLbXFxcdTAwMTU7XHUwMDBmmfFcdTAwMTJcdTAwMTBcdTAwMGXQuMXOk+62XHUwMDBiXHUwMDA0fHL7nfl9tVuczP77brfP9viZ/rwp9sJb4sv1t1x1MDAxM7tcdTAwMTi3R7tcdTAwMThcdTAwMGaiyC3CNmyV8OWuPkjbvlx1MDAxZTkkXHUwMDE5XHUwMDA3XHUwMDA2KFx1MDAxMFJcdTAwMDeWKIwvq5eLkuCyXHUwMDA2Pbn2M71cdTAwMWXG7TDuVoeouD2jJfJzvZH0+6E2blx1MDAxYyZhrKs9iuuuWez3lN+uuXK5raGzcIiQcY/UXtTRyr7ct1V3MsWP8fdPr2p7T59xZdhK+fPuVT2TtbrRdURGXHUwMDA0Va1jXCIzJFx1MDAwMSdcdTAwMDa+c1x1MDAxM7lz0OzlJ1x1MDAxZlx1MDAwZi+utltrmFx1MDAwMVx1MDAwMbPPh8tOZFx1MDAwMplHXHUwMDE4x4JJLFx1MDAwNDFcdTAwMTSZZDLnXHUwMDFlJ1x1MDAxYyPT+HJMlsJcdTAwMDMmUlx1MDAxMElcdTAwMDWRXGZI58OY0GiK0YxDjClBf1xmoTtJrFvhtyH6Jqzbfj+MbifOuIC0VVx1MDAwZj9Xq0lndZCX9t42rkVh12K8XHUwMDExXHUwMDE4p1U2XHUwMDAxf1x1MDAxZFx1MDAxYT1cdTAwMWN30EnqWlx1MDAwMzOdXHUwMDFmxirbnaJ+koXdMPaj44emNutVO/eHXHUwMDA2PURLgMiVbbV28iBdM1x1MDAxNehKUHGchbRcdTAwMDTCKmlcdTAwMTEkXHUwMDA2Plxmza++naurwYbYj69cdTAwMTTtJPtvd7Oz01x1MDAwZmfLTlpkXGLDMUZcdTAwMDJxgTBcdTAwMDVuQ+x4k354XHUwMDAyYMlcYoXkhzmrpFxuVGeas1x1MDAxMFOPXHUwMDEwiiGqkd/yXHUwMDEy7lx1MDAwNVx1MDAxOEBkglwiK0F7kXy9XHUwMDA3kYNcdTAwMTFcdTAwMWVZ7mbTeDzGjZ6lXHUwMDFhJcjw08+6w1x1MDAwZfYuPnx5239cdTAwMTdcdTAwMWRsXHUwMDFkxU3VXHUwMDE497u7l6RcdTAwMDXGiGepXHUwMDFilFx1MDAxNMxkXG5cdTAwMDDU0IQ/Qd7ql73kTMFG3qCgUlxiyCijkE8yhcJcdTAwMDUyZZa6XHUwMDE5Lz2KpU2XMcZSkFx1MDAxYXmj03zhJv/AUP6J8lZcdTAwMTLzR+RtM1x0XHUwMDA21q3mv/FBXHUwMDE2WiVrP1fm+mG7XZaUSaV7TFxiquI3dmzarbkkkOBcdTAwMDc5PbP2xJxXrfecNsmTMJQm84vf0ZpcdTAwMWZm0WkwWDvZ7lx1MDAxM39/Y+fvo2zZKb1cZqWn82jMYDwteeY4XHUwMDAwN364hmWhMKW8XGbXhZecJTVcdTAwMWXdZ1x1MDAxOS5v7/T4+KKZRts7NNzz8y9Jqm5JSWNNOFxiXHUwMDA21v8m9Ex+w7BJXHUwMDE3IFx1MDAxMFx1MDAwMlx1MDAwMJfj2G3001wiXHUwMDEz9DgjJlx0QsjEdkSn9P43q3Unejdccp7cgJXy51PzXHUwMDAwTPHMNIBcdTAwMDAqIJ0/XHR4+Fx1MDAwMJc0YlDhmT0ggnPAhVx1MDAwMZO7ilx1MDAxZI9cdPFMXHUwMDFhTYx9XHUwMDE4MUjFsVx1MDAwNdW4dlx1MDAxNiwxpaT+ltV0hWv4ylx1MDAwMTJlrvPo51x1MDAwNZD63HhcdTAwMWXdmFx1MDAwMOVQyJ6YXHUwMDFjPzM8PauAPlRZJ8n6viXEMzOL51x1MDAxNtC1U798XHUwMDAxTVx1MDAwNK2a3V0vwFx1MDAxOVx1MDAxNKXdeywgpOh882tcdTAwMDJvNk/eXHUwMDA1yfH6JfxvXHUwMDBmbyx7QICSe1x1MDAxMFx1MDAwYo7pqH52XHUwMDAxsIhcYlx1MDAxY3lcdTAwMDaDXHUwMDE08VFZ8GNcdTAwMTFhYVx1MDAxNTQtglx1MDAxN6cvU1x1MDAxMvzEXG46endcIj5cdTAwMGWuXHUwMDBl/lx1MDAwYjVeb8tcdTAwMTPx/nBj6+lBgpVJ81wiXHUwMDE1tEBwJlUsOqSUcH7xrF/2knNcdTAwMDVBk4pcdTAwMTFIjHxKXG5cYkN4gitcdTAwMDRIjy2OK7NraO6ZQl1cYmZcblx1MDAxY1x1MDAwNiRcdTAwMTbTlCnRaMRcdTAwMTjDXHUwMDE2Klx1MDAxMV/CXHUwMDFh+mngrVO4+Wvols5cdTAwMDaBNmB6qdL5XHUwMDExXHKoyl6dP/Opnni+6iFcdTAwMDJn3zZcdTAwMTZcdTAwMTRCXCIpcqB6jMqbt82b5lVL0eZcdTAwMTHdOT9cdTAwMGXWkvB4luxcdTAwMDVZkufNnq+D3q+ns0mDPVx1MDAwMIzCS8E4hlBMPu8hXHUwMDEweZJLTqgtrX6Yzj5ti85cdTAwMDKkj3NBXHQqP5z6TZXvpiUygdqtLkk/aH2931x1MDAxZGzR3SVUPsTZzEejhCCOXHUwMDA0mJ8s9Ytect3D4mGi0IVcdTAwMTJllu4x4HEuJeacXHUwMDE4XHJcdTAwMDasji/Tuscg5qaw/1x1MDAxNWXj8sjesYq/hdlcdTAwMGJJ3iPxvyp5VV9cdTAwMTYhd8Xp1XGXo5n/niRcdTAwMDGxd0yfcIv4XHUwMDExYCwnd5uceiZVpVxiIyaYXHUwMDA0tFLfIelhYThryilcdTAwMDYhrfj1JObqzI/z1M9cZp6m2StA3Y1izjxKsUmmpVx0K1x1MDAxY06xXHUwMDE3XHUwMDEybo+J8PnT1lx0XHUwMDEyLYasmGH+rOc8sYXlsOtcdTAwMTC/KyM9a/hp2tJmmrHkNr6G6nq9Jlx1MDAxY3aKl9XFXHUwMDAy/Vx1MDAxNmaqUOq7lbv/XHUwMDAxMoXxmyJ9Ease of use Document- Oriented Performance Structured Tenzir
Eclectic & Super-structured Data
Zed has a type system similar
to Tenzir, with the difference that Zed associates types with every single
value . Unlike Zed, Tenzir uses a "data frame" abstraction and relies on
homogeneous Arrow record batches of up to 65,535 rows.
If the schema in a pipeline changes, we simply create a new batch of events. The
worst case for Tenzir is a ordered stream of schema-switching events, with every
event having a new schema than the previous one. That said, even for those data
streams we can efficiently build homogeneous batches when the inter-event order
does not matter significantly. Similar to predicate pushdown, Tenzir operators
support "ordering pushdown" to signal to upstream operators that the event order
only matters intra-schema but not inter-schema. In this case we transparently
demultiplex a heterogeneous stream into N homogeneous streams, each of which
yields batches of up to 65k events. The import
operator is an example of such an operator, and it pushes its ordering upstream
so that we can efficiently parse, say, a diverse stream of NDJSON records, such
as Suricata's EVE JSON or Zeek's streaming JSON.
You could call multi-schema dataflows multiplexed and there exist dedicated
operators to demultiplex a stream. As of now, this is hard-coded per operator.
For example, to directory /tmp/dir write parquet
demultiplexes a stream of events so that batches with the same schema go to the
same Parquet file.
The diagram below illustrates the multi-schema aspect of dataflows for schemas
A, B, and C:
eyJ2ZXJzaW9uIjoiMSIsImVuY29kaW5nIjoiYnN0cmluZyIsImNvbXByZXNzZWQiOnRydWUsImVuY29kZWQiOiJ4nO1da1PiSlx1MDAxM/6+v8Li/bpy5n4531x1MDAwNERcdTAwMTHvXCKrvHWKXG4hQFx1MDAxMFx1MDAxMlxmXHUwMDAxYbf2v59cdCpcdDFcdTAwMTFQkHCWWKUwmSQ9SffzdPf0xF/f9vZS7rhnpP7eS1x1MDAxOSNd65h1R3tKfffah4bTN21L7UKT73174OiTni3X7fX//usvrddL+0eldbv7fKTRMbqG5fZV3/+r73t7vya/XHUwMDAz1+qYljHpO2n1r1x1MDAwNKHE4eZz25pcXFx1MDAxNlJAXHUwMDEw40SAaVx1MDAwZrOfU9dyjbra3dA6fcPf4zWlskNgXHUwMDE4XHUwMDE2OLZcdTAwMWNojG9hye0+wKJ/3YbZ6dy4485EJN2x+/39lubqLb9H33XsXHUwMDA344dZd1ueXHUwMDA0ofbpsX1b3Vx1MDAwMv8ox1x1MDAxZTRbltHvz1x1MDAxY2P3NN10x15cdTAwMWLwh6BZzck5/JaRd8cpT0tcdTAwMDYkpoxcYopcdTAwMDGf7vWOVzdcIs1cdTAwMTBcdTAwMTRIXCKuPkNcdTAwMTGSK2t3bMeT63/Q8H58yWqa/tBU4ll1v1x1MDAwZlx1MDAwMTqg3O/z9DLawH1uXHUwMDE5ZrPlqjbit/WNyW3nUkCCmd/unb5XqE9cdTAwMWX+P/6tdrSuUZg8lPOzZrPLTvmdW82JU3NMNJk5mrl5Vv3l5lmDTseX3dtxXHUwMDE4UC3/7INeXXvWXHUwMDAyyCTjgENCIfY1SanbQ/h0XHUwMDFkW3+IUJy+qzluxrTqptVcZlx1MDAxZmJY9Zg9XHUwMDFkre9m7W7XdJVcdTAwMTiXtmm54Vx1MDAxZZPzXHUwMDFlOI791DK0esSZY/f1vNP5tuRt/qc9X3EmX6af//lcdTAwMWXZXHUwMDFizXRHc/vPdCdzu7Ml+4uQOGlcdTAwMTDc4HKXw2lKXHUwMDExh5hxIVx1MDAwMKBcdTAwMDBcdTAwMWH7kC41wIC834J/f39fXHUwMDEyxlx1MDAxMIbh5ldcdTAwMTgjkjEkoCBcdTAwMGKjXHUwMDE4r1x1MDAwZezcNa8/tS8pPz+B91pn/Fx1MDAxOINiLU1vXHJcdTAwMWNj81xiRt5FMLJSXHUwMDA00406qWtcdTAwMWZFMDVcdTAwMTasZGBgh2E7XGbb22GYj2FcItw8dcUg51x1MDAwNHKC0cIgNsyOboTZuHQ4qnC3pD1cbtPubTeIrdZccvtcdTAwMWOIcSZcdTAwMTCkiLJcdTAwMWSG7TBsh2FTXGYjseGkUk9GMVx0YMA8XGK7z1k4W+tcdTAwMWL4tPXYLWVcdTAwMTHpXHUwMDE2quZ2Q1x1MDAxOEtcdTAwMTCEMaKCfyZ2XHUwMDEwtoMwb/vDIEzznllcdTAwMTSGccrDrVM3jEmqNrFcdTAwMDSGZS5cdTAwMGWP+kWr0ON992hYhoNis5R4N1xm43fdMLRKXGYzpKFcdTAwMWKNt1x1MDAxOFx1MDAwNrFMQ0glUlwiXHUwMDAwICXxYWqKaW9DSypcdTAwMTDy8mO+n7xKTPs11bFXNUIvLb93ULdKqIt/+KHDP2fqXHUwMDEw0PjsN1DxXHUwMDE4gogvXHUwMDFlclx1MDAxMVx1MDAxZJzBe1Qt5c8uLkgu23auyvnE2/r7IdfX2DpcdTAwMDRpXHUwMDAyXHUwMDE5klx1MDAxMGBEXHUwMDA1XHUwMDE1/lOZ2npwJK/Wjlx1MDAwNGZcdTAwMTIpuXZcdTAwMWXMVpj1TO999UTn4kCsYrw9w+egQFBcdTAwMTJu9efBXHUwMDE0XHUwMDEwQSHB4lx1MDAxOeSRXHUwMDE4XHUwMDFkNK5cdTAwMWWPfmY7P2SzJKpaqUq3XHUwMDFmXHQkV1x1MDAwZVx1MDAxMMCAYVxiUUiuVSFcdTAwMDFKXHUwMDEz71wiSlx1MDAwMkBcdOJcdTAwMTGsL2WaXHUwMDExXCK4kExwJUzgXHUwMDBlveCCZFxicIx3uLCNuPDm8c5cdTAwMDeJOJ2Zc7qFXHUwMDEwwzF099leXCJQg2FcdTAwMWGHXHUwMDFhXFxcdTAwMTLBKEOLg8ZP65LzVr1zRFxc11x1MDAxZFx1MDAxNKzC0XnjNlx1MDAwNjRCxr8pyIDhQMFHhdUnbOug1mhEYIZcbj2JpFIwiVx1MDAwNeHePX+LXHUwMDE5b7NcdTAwMWbqXGJKqICbyH5MVfBXQFGnXHUwMDFh51x1MDAxYSM3XHUwMDE1VOFcdTAwMTf9qF2OXHUwMDA3h6cnXHUwMDBm7WuNgn3dKFx1MDAxYtfVXmra7/erOq9cdTAwMTCA3rWMXHUwMDE5OVx1MDAwM0aBabxRXHUwMDEwirFcdTAwMDBL+NTRg044k0KC3jVcdTAwMGL4XHUwMDE1SUC4gFmgt0nBSU8l9n+FOlx1MDAxYrbl3pg/n9M3M615rWt2xjNcdTAwMGZ5otJqSFx1MDAwN6mZpoOO2fQ0O6UrUVxyZ0bpXVPXOtNcdTAwMGVds15cdTAwMGZSha6uo5mW4Vx1MDAxNFx1MDAxNoF42zGbpqV1Sm/F8DLux9NYKI1oQCf6xiRcdTAwMWbv6d1nqIyFW6eZeykkpEj4OjHX/zXJ4bBcdTAwMDFzhVx1MDAwYvmjeKfRcS3fjqtcdTAwMDNLXG6Vhb3fdVKZlIZsoFxiKluIuiBGXHUwMDA0XHUwMDEyyVx1MDAwM9abdO4qtG9cdTAwMWbusvq+OGk/5ceOuNXwXTuR3Fx1MDAxNZtcdTAwMTBSMiAsXHUwMDE5WTz3XHUwMDFiPeikc1x1MDAxN8NpSIgkXHUwMDEwe/F2ICz+QuqCaVx1MDAxNWJKISiiWFx1MDAwMlx1MDAxNkC7d6hcdTAwMGJCQaWCqv/MfNaHqCuzJuqaXHUwMDAz6WHqynwldcVPOnNcdTAwMDFcdTAwMDBcdTAwMDQkMMc5l7pKXHUwMDA3me7loF5sy3L++MpcdTAwMDRcdTAwMDeVyk3CqYsnIVxuW8BmI6hcZkFMXHUwMDA12cwk9MeorNY4XHUwMDFiufj+pHz9aFx1MDAwZVhcdTAwMTeWyofkKJFUJmOtQonh+fmLR2GRY046k1x0nFZeq8SMXHUwMDEwpZic01mzSHBcdTAwMTSGnie9XHUwMDA02YSHl1x1MDAxYy5bV1x1MDAxODZcdTAwMDfjN1x1MDAxOYZxXHUwMDE4a7VcdTAwMDRCXGJcdTAwMTBbYjlOXHUwMDFlXHUwMDFhg/shK1xcP1XExfDm5GrwhK5cdTAwMTLOZXJruUxcdTAwMTKA1ePh66k9WFx1MDAwN5X1cm397FLmss2n+yfz8azVu+hcdTAwMWJcdKQyguNLcpRcdTAwMDeBlFx1MDAwM7FEnj161Fx0JzNcdTAwMDS2lswkXHUwMDE1XHUwMDAyUSZ2KcVA08q4bFx1MDAwZcZvkstcdTAwMDSINVulxFx1MDAxNCt4XZzLbG7qdtZ2XHUwMDFmmDuqXHUwMDE08PHx2ch8SjaXIfiFXFzW0HVUj1hV+sG4jFDOXHUwMDEw59tcdTAwMTOWjXPHXHUwMDAy91x1MDAxZaHlXHUwMDE0K/ZttlptXHUwMDE1a+VcdTAwMDRyXHUwMDE5RfElZ1x1MDAxMFx1MDAxMYa5hItPj0WPOulcXIawUnxcIjGH6oZzQkKVJl/FZVx1MDAxOGApKJWUXHUwMDAzXGZcdTAwMTfMMTIsuaKzP3x+LLsmMptcdTAwMDPyYTLLrpbM4le1gPiVeUB5RJxcdTAwMDazzvNstnrvnOTahcZcdTAwMDVcdTAwMTbsXHUwMDE021x1MDAxOFxcZ8BljM0m6iVcdF9Z7PG5lyQgIKlXXHUwMDBivqY68F1cdTAwMDXY3m5ty8KXS87yPIxjk0vK+lx1MDAxOZRcYpPF42izwS1cdTAwMDLYOT+365mOeXqUL2ZcdTAwMWaS7ZHDOVx1MDAxZflKq91xTZf1WlS92ltcYotwNKCKsVx1MDAxOSe7XHUwMDFh1m1EsJVZbPzUJuRcdTAwMDQpXHUwMDE1XHUwMDAxS5Tl/PjR7F9cdTAwMTYqXHUwMDAz91x1MDAxMLRcdTAwMWLDdm+YOVx1MDAxOFx1MDAxZiY+WpjjdnyJzZJFbJZ7XCJQtpFcdTAwMDTwzmS9bTmTJZ8y2fencVx1MDAwMFxut/pMq6JeSJZZTuK6h9o5ubUuxpjmoX52U5HjbrKZXHUwMDE2h+dx1lx1MDAxOCt8rppcdTAwMGVcdTAwMDGmwjdcdTAwMDS2qFx1MDAwNKFyTIb38CDDa7WyPdCA4T5cdTAwMWU0XHUwMDEzmOtcIjB+3kYpXHUwMDA2IJjjxePm6FEnnL1cYtjWcjpcZiRUYVx1MDAwYvqzM13rKqebXHUwMDAz6Zssp5Mytlx1MDAxMlxc3X0kljLaolx1MDAxY51VM5pcdTAwMTh0XHUwMDFkt75/NsjftkZxLmdSqIvLNFx1MDAwN0r7MWOQcelcdTAwMWLA85v0aFx1MDAxYWHMKFx1MDAwNcpwOWIsJNgmXHUwMDE3NSmRXHUwMDExXCJbNW/zM1c8XHUwMDA148NeZXhfOs6cPrSq+8W7XHUwMDA0clx1MDAxOY/nMlx1MDAwNLD6IUtcdTAwMDRi0YNOOJUpRXzPLuBK7WK1JVxiUEiG+Ex2608ks3XVIMxcdTAwMDH5TdYgSFx1MDAxMJ/yhIxyXHUwMDBlpVxcfLq1e33RK1PrOLd/XHUwMDA1RvuXI0eWXHUwMDFmXHUwMDEyzmZcdTAwMDSANJRMXHUwMDAy4L1GgeHNsNlcdTAwMDeLXHUwMDEwpHJCXHUwMDE5pNtTUadh0jku6e1iQ1x1MDAxN8adxWvoPo9cdTAwMTLIZlxmxft4XGJBXG6WeMVV9JhcdTAwMTNOZp7ic0YkUFx1MDAxZS1iwVx03i0gM1x1MDAwMlT4/KdHZutcIrM5XHUwMDE4v0kyg1x1MDAwMMUuradeXVxuoEuEZufli6uTQe+pVT52q5V7t3VQ3U94dThRRFwikFDbM5n53Fx1MDAxZUVmMiTXRrmMYVx1MDAwMJS3sVx1MDAxMVx1MDAwZvRjXFyWJ6d3w/xV/qY2ztc6TsO+vmFJXFzoxOPfm61wXHUwMDFkqnB+maXr0aNOOpshnsaSXHQhn9ksZFx1MDAxN3CVdrFaMqNcbrK43MVla6GyOVxiv9G4XGbGXHUwMDFhrWCMelx1MDAxML+4zdYuS/suPylcdTAwMWNcdTAwMTXyR5XyrUU1ka0km8nen1x1MDAxZlvta6JXW1x1MDAxYY44ViFcdTAwMDLYomVON9rR8GisXHUwMDFmNHI58sjOXHUwMDBmXGa73ddcdTAwMTJIZOxcdTAwMWRcIsNcdTAwMWWk8iX+iU30oJPOY2C2Mnx2kVx1MDAxM0twYTiDUMBg5f6fyGPrKlx1MDAwYp+D72suXHUwMDBinzyzSFx1MDAwZXunnFJpg/I8XHUwMDAxW9xg5+hDMlxydp/TNCCMXCJv5SuTgM5cdTAwMTZnKZ80jb1Xpis3T1lcYlxyybWUwbqOZvV7mqN06a3RcuVcdTAwMDArP997x2OUuVKaxlx1MDAwNFx1MDAwM6h+QcghXHIgx2uqkVx1MDAwM4JcdTAwMTFZgtVmrGg11qpQJ1x1MDAwMHlLWKvlaehz12dV/vZCZymt17tx1WVSr28vT1xyTeMpXHUwMDEz5SVMNo9cdTAwMTYnhuApnDF56fnvb7//XHUwMDA1ylxmpdkifQ==A B A A C B A A A C
Some operators only work with exactly one instance per schema internally, such
as write
when combined with the parquet
, feather
, or csv
formats. These
formats cannot handle multiple input schemas at once. A demultiplexing operator
like to directory .. write <format>
removes this limitation by writing one
file per schema instead.
We are having ideas to make this schema (de)multiplexing explicit with a
per-schema
operator modifier that you can write in front of every operator.
Similarly, we are going to add union types in the future, making it possible to
convert a heterogeneous stream of structured data into a homogeneous one.
It's important to note that most of the time you don't have to worry about
schemas. They are there for you when you want to work with them, but it's often
enough to just specified the fields that you want to work with, e.g., where
id.orig_h in 10.0.0.0/8
, or select src_ip, dest_ip, proto
. Schemas are
inferred automatically in parsers, but you can also seed a parser with a schema
that you define explicitly.
P4: Unified Live Stream Processing and Historical Queries Systems for stream processing and running historical queries have different
requirements, and combining them into a single system can be a daunting
challenge. But there is an architectural sweetspot at the right level of
abstraction where you can elegantly combine them. From a user persepctive, our
goal was to seamlessly exchange the beginning of a pipeline to select the source
of the data, be it a historical or continuous one:
eyJ2ZXJzaW9uIjoiMSIsImVuY29kaW5nIjoiYnN0cmluZyIsImNvbXByZXNzZWQiOnRydWUsImVuY29kZWQiOiJ4nOy9WZeiWLQu+n5+RY3aj+5cZumbfcd9oFWURlx1MDAwNFS494xcdTAwMWF0XCJcYqKiXCKcsf/7XVx1MDAwYo3GaDOyqcraNyMrylBcdTAwMTaL1cz5zW824P/5X3/88eeh2cZ//tdcdTAwMWZ/xufQz9No79d//if8/Fx1MDAxNO+rtNyAQ1j3viqP+7BruTpcdTAwMWO21X/1+/52e/d41l1YXHUwMDE2lzPjPC7izaFcdTAwMDJt/1x1MDAxZvD+jz/+T/f/J9fax+HB3yR53J3QXHUwMDFkenI5XHUwMDFjff6pXm66S+M0SeJcdTAwMTjKPlx1MDAxY08rXHUwMDExXFztXHUwMDEwR+Dg0s+r+PFcYvzoT2Oo5DEt7PVhlU09ZVx1MDAxNaPRuX286DLNc+vQ5N2gwn1ZVV9W/iFcXD22qFx1MDAwZftyXHUwMDFkz9PosFx1MDAwMm3QZ58/nFx1MDAxYpVcdTAwMDc4iIfD+/KYrDZxVd2cVG79MD008DNcdTAwMDR5+PSyXHUwMDEw//XH4ydnOFWSvaNoXHUwMDFhoVCCwkmCIVx1MDAxZo7C879gyLOhXGJlXu7hUP5cdTAwMDON4b/HsVx1MDAwNH64TsCANtFDm8Pe31Rbf1x1MDAwZnbpsV19P0mCvWNZjGRcdFxmXFyWJanHS6/iNFlcdTAwMWRAXHUwMDFignly/bhbfpRcdTAwMDA7Q2Ms8ThfeNWtXHUwMDEydYLwv1x1MDAxZlx1MDAxN33vXHUwMDE3sVx1MDAwMk/ZXHUwMDFj8/zpkm2i65LdXHUwMDFjXGLgXHUwMDAx6blMPZWrXHUwMDFi2TrE58dJPVx1MDAxMVx1MDAwNUKi5GpUU6P6iLd1yqOyXHUwMDFkXHUwMDE2fz60++/rX4/jPG4j/1wiWSjF0iiDXHUwMDEyJFx1MDAwNXbk4XiebtbPx5qX4fpRXHUwMDE4u0//+z9f14GbcT5cdTAwMTF/XHUwMDE0o99cdTAwMTJ/jCQxIFx1MDAwYjj91fL/+qR/vPxXJVx1MDAwMIFcdTAwMWYp/lx1MDAwNILdkVxmjrNcdTAwMThN0SSOM8St/KPkT5N/irhDaZbFUYpAKOxcdTAwMTXhf/LZVfYpjFwicKgrP1v0f6R0Po6q3Fx1MDAxY6y07SRcZrn5VPaLNG9uNrFcdTAwMTNbsITWxVx1MDAxY9x8zuVpsulEXHSMN97fSPchXHUwMDA1huKhwaHcPlx1MDAxZVxywZX8dFx1MDAxM++Vr8Hscp8m6cbP7TdcdTAwMDZcdTAwMDImXHUwMDFlXHUwMDBm77dcbr17slmBX8XwKPyceVc337VPOEa9aZ9IXG5hXHUwMDExhnxcXK6PXHUwMDE09CRcdTAwMWLCTCn3s8xcXLXrMD67X/zFv8JAganeqCRKXHUwMDEwd1x1MDAxOMXQOMUgQGFplHg2llx1MDAxZqehxJPBPWglijF3NIrSNIYwXHUwMDE0QiFcdTAwMTj2wkJhXGZNXHUwMDEyXHUwMDE4yzzyh1/KQlxyj3Mj85H9l3ZBxeJoxVx1MDAxYe7sr1/RQrH4m1x1MDAxNlxuYWhcZkNI5usp2uuz/lx1MDAxN5goiqbugKQhNMVcIkCqKPaZOrB/lzqgXHUwMDE0dYfRLENQKIt+wmZhNEaTXGb9k5Xh5uBcdTAwMGKJJSmcXCLxT0js91mtaVxcXHUwMDAwS5Nukj8m6fZiXGZ+glx1MDAwNftcdTAwMDDUn1uw91x1MDAwNvXTrVx1MDAxOca8qcwoSmJcdTAwMTiJfcKaWVRcdTAwMTW3hDucXHUwMDA2my+KvXeX/li039DllVx1MDAxZq6O+/if12NcdTAwMDK9IyjgaOFcdTAwMTROXHUwMDAzq1x1MDAwMWzEjVwi4zh2XHUwMDA3XHUwMDBlISRBU1xiirDUs4E96jHS/XyHXHUwMDFls+xcdTAwMWRQSVx1MDAwNmFYgmZcYvrJpVx1MDAxZa1cdTAwMWNC3LEoirGAZrBcYmj8ZDhXK1x1MDAwN3aNXHUwMDAyRlx1MDAwZf/Ziv2NVq6141x1MDAwNTs3v1x1MDAxNFx1MDAwNio7XzZcXC2X4+ZTVo7EXGJcdTAwMDTFnqrIz7ByOPKmYpBcYsuywNbiX61cdTAwMTivT/rHKsaPp3goityxXHUwMDA0nCyGM1xmTZG3Tlx1MDAxOFxmUTAoQyNcdTAwMDSOXHUwMDEwXHUwMDE08Ezp71GN/4jZOIyXr/hjyFx1MDAxZFxy/TGaJoi3zFx1MDAxYvlcIlx1MDAxY8EwcGhPg1x1MDAxN3+/S/ZpQf0+42bHmzbd/79ATKNvNmtFXHUwMDFhRU9ccsUzy/ZcdTAwMDHAP7dsr4/oq2xcdTAwMWGBv6u1t1byXHQ3Reg3o4eAi9E4wbBfr7ZcdTAwMTI6XHUwMDE4lFx1MDAwN0puVW9cdTAwMWOllqNOh0T6q9sznCXvoPXAcVx1MDAxNFx1MDAxOFxiiqSeaS12h5I4QaM4gcG4XCLzXZGU/1xi44iI/Jday7ziolx1MDAxMS+DhjjO0lx1MDAxOMmy/yxcdTAwMGIlKFx1MDAwNsO/SVGrg78/8OkmXHUwMDAy9O35KfEmeuNI7ldcdTAwMDehLIpcdTAwMTRcIvakTDeH5y26frn9vqxXsf9i2qDnN49tYXe39vnxrz9cdTAwMWVlpXvz8Pf//s+PW1x1MDAxM1x1MDAxZjanPtmeuWmPIXfI01x1MDAxZvRzl8PvSFx1MDAxMlx1MDAwM2JN0VxmgyAkgsZfUPJTXHUwMDEzfDLe//X09bMgxDxRuefUgSCBZjLs13PqXHUwMDA1RonoUVxi5OFf5DlSTU6JbOxXxyBcbrlcclx1MDAwZWHI2/mKr+FcdTAwMDbfiTKAwVx1MDAwMFbN0D+dXHUwMDEyf1x1MDAxNJthfmPMi9bYM1x1MDAxMPiNST9cdTAwMDeTmOef3mNcdTAwMTJcdTAwMDV4MuDK7NenldaHUTNholxm+/IlsuSZp0p/pdNfXHUwMDFlk5hfXG6TcFx1MDAxY2EpXHUwMDFhiMRvTPqNSVx1MDAxZrT/n4pJNPb801x1MDAwN1+NJHH6ST71I0TiXHUwMDEybjlgiVwirFx1MDAxM8Y/b9bOXHUwMDA2X29+dUSiqV9cbpFcYpzAXHUwMDE57Kl//Fx1MDAxYpF+I9L/r1x1MDAxMFx0RXD2+cdcdTAwMGbpXHUwMDEwXHUwMDFhIcDYWPzr40fVX1x0SaooOjfQXHUwMDE57fwlb2rRo351VGKIv1x1MDAwYpVuheZxWVx1MDAxZkBcbmfvaFx1MDAwMqdwhkJZmkGexJ9cdTAwMWYwi8Rgndpvz+5XxCyUucNIXHUwMDEyITBcZkXAL8Y+PVx1MDAxYn2+t1x1MDAxZvX2XHUwMDA1XHUwMDA1J1x1MDAxMCxJ01xmXHUwMDBifmmEJZ7290JWPuqPvlx1MDAxZN1j/O+13rBcdTAwMGZ7o+9cdTAwMTiGQClcbiNcdTAwMTCKxVx1MDAxZevTurneMSSKoDSDgkFcdTAwMDORwZl/XHUwMDA23dA341IshSE48ZnKJX+iR47MTpeIwk9s4XggXHUwMDE20Vu53l+qboOk7licXHUwMDAxwFx1MDAwMVxcYlx1MDAwNGzYYy/d+ehcdTAwMWRGMDhcdTAwMDV0XHUwMDFhQymM/nllXHUwMDFir7Gyl2W1XHUwMDE4QpFA2DHkdVb2IFx1MDAxOX9cdTAwMGWbSpT+mlx1MDAxMtp8V52U81opXCI1vM+r/k35ri5L/lx1MDAxYlxi32/NfJJcXH22/cfckPqO0f8wLGLejEehKMti1GewyFgth7MhReJkffSK4dhkPPT8b8BcIpq6XHUwMDAz1lx1MDAwNZghlCZcdTAwMTGKIJ6l6uiu1lx1MDAwMzZgXHRcdTAwMDJHf1wiXHUwMDE4XHUwMDEx5Fx1MDAxZKxhhnkwhqSBqXqJTS9cdTAwMWRGXHUwMDA0XHUwMDE2neFPXHUwMDBiZn5D031n/1x1MDAxNmh6c+Ofnf2dxONcdTAwMWSvXG74fSxF419fMVr8NZS27WJU/1XTizAyXG41J/J/iba/wzzIv415XHUwMDEw+Fx1MDAxZEKSXGZcdTAwMDK3XHUwMDFkx8H1vkLZKVx1MDAwNFwiXHUwMDEwg71cdTAwMWWu/q3r/1xuXX9r35+d/X26/iSo+aI6XHUwMDFjOFNA+vGvj+tu18nS/mu4s0o+2+jNSsGC0/BfoevkXHUwMDFkilEsTsDMXHUwMDFhTj3JvsHzKeaOXHUwMDAwjidYXHSCXHUwMDA0SoVgz8b1z+o6SVx1MDAwMyDC3igg/a3qv1X9XtWJN+NcdDCTgFx1MDAwMsv+9bHSOY9cdTAwMDaUXHUwMDFhcVx1MDAxM7XRJZVcdTAwMTPGXHUwMDFi8su/hcO/Y9Up5Fx1MDAwZWcoXG5hwP9cdTAwMThcdTAwMTSjn4/rXHUwMDFm1nRcbrT8XHUwMDFkW/it6Vx1MDAxZmn6k1Tsc02nSJYmWPrr+XupyoxSXHUwMDFmZlRj1K518rlhzP0rbkpcdTAwMDY2nSBcdTAwMTlcdTAwMDZnUVx1MDAxMiVcdTAwMTn01lkniDucxVFcdTAwMWPDXHUwMDExhEVQ7Cfeofwtmo6hgG5cdTAwMTBcdTAwMTT9RkH8b13/retcdTAwMGY5UJR6211cdTAwMDf0XHUwMDFlpVxi9lx1MDAxM6VcdTAwMTl/sVx1MDAxMVdVqZ9HQaNEY5yYa0T2qydBXHRcdTAwMTKG3iiGYlx0YNWB5b7RdZRB7oCgwttSSFx1MDAxMmdcdTAwMTH2bav+PXe+oCR7h7JcdTAwMTTLXHUwMDAwR4IlXHUwMDExsPUvXHUwMDE1nSHuXHUwMDEwjFx1MDAwMYydJChcdTAwMWOg8ItcdTAwMTQpLDdmcCAyXHUwMDFm6H1A11x1MDAwNjpGJpIz0Xb2TuTomek9uYHrT48/TshIQNDWQE+ZfdaPVpQ8bUDVXHUwMDA1N1x1MDAxY0f8ekBu4/2WWMnSfP5NyPF4Q9m9tN7n3/7721x1MDAwMFx1MDAwNaNx5jegvGz9XHUwMDA1vUMoXHUwMDE0iDNcdFx1MDAxNlxu+Hz0TfhcdTAwMGZH70hcdTAwMDJBUVxm3lx1MDAxY1x0+Cv1YU5cdTAwMTW5IzGUxjGaQlx0lKCfIVx1MDAxNIXfkVxifKhcdTAwMDfFsDiLUVx1MDAxZpaJIEC2XHRcdTAwMDLYWoohXGKgXHUwMDA3JHGT8qWBXHUwMDE2XHUwMDAy5lxyxFx1MDAxYmZoMYb+qD/mXHUwMDBlJVx1MDAxOEBWXGKWgf+om4Q0jd8xXHUwMDE0VCNcZiPwj9PHOFx1MDAwNVxceFx1MDAxNKAw6Fx0XGJcdTAwMTd6OzJcbsyUXCJRhMZcdTAwMTFcdTAwMWFBXHT2w5HBhydAn1x0XHUwMDE2wrBcYobf9Ebf4Vx1MDAxOMt0XHRkXHUwMDAyOFx1MDAxMVx1MDAxZnWGYuxcdTAwMWRcdTAwMGJT21x1MDAwNPiPXHUwMDAwXHUwMDA249nQXHUwMDEwcFx1MDAxNZZGXHUwMDAw72dcYpr6sDdcdTAwMTKMXHJHYTSDXHUwMDAxwH+7pTR2XHUwMDA35k5cdTAwMDGEXHUwMDAyxFxirMaHiW2UpO8oklx1MDAwMPvPMjSDPUvig1x1MDAxZMXAXHUwMDFhQEFcdTAwMDR7gNBcdTAwMWZKXGJoe4fiwCTC8lx1MDAwMlx1MDAxYVxuwY3AXHUwMDExd1x1MDAwNIJQXHUwMDA0RsMgXGbK4l8zOppcdTAwMDTyXHUwMDA0ZouRYFtvJkuCbYCQj2FcdTAwMTjLXHUwMDAy5/crulx1MDAwM74hXHUwMDAya1x1MDAxOVx0YLSf1rjAny9gsiSOXHUwMDAxeFx1MDAwMltcdTAwMDT2llx1MDAwMr1/2CNB3Vx1MDAwMUVcdTAwMDUvJI3ST25B7TrE73BcdTAwMWFcdTAwMDadgFx1MDAxY+NgXHUwMDAyNPPxXGIxMCkg81xiOFx1MDAxMfiwzO12fCHho3AwXHUwMDE2I1x1MDAxMMBcdTAwMWTBXHUwMDAwP6zKXHUwMDAy0lx1MDAwNVx0XHUwMDAy4Fx1MDAxMFx1MDAxOFx1MDAwZeSFuVm/L+Ag2HVcdTAwMWGhXHUwMDAxg0Apmvhwujh9R6JcdTAwMDTQXCKGZVx0XHUwMDAyY5hno1x1MDAwM4NcdTAwMDNyXGZkXHSsXHUwMDA2gX4ofGDtaJhcXFx1MDAwNJadpIFZve1cdTAwMGVcdTAwMDM2nSUwXHUwMDE2IcFkWYBeXHUwMDFml6RcdTAwMDCAYkhcdTAwMTJgXG68IVx1MDAxYqVRjGCf7TDQMWDG4Vx1MDAxM0kommRJ/MNcdTAwMWT5rmxrnOfptnqD1jFv39FcZjBcdTAwMTHe40t/PauznGC6Ocd7IZA9TadGbOJgu1+e1Vx1MDAwMYhcdTAwMDfWXGZcdTAwMTgzlFx1MDAwMMj9pJKvO1x1MDAxZlhcdTAwMDBcbnA6XGbsKVx1MDAwMG/27Vx1MDAwNMzXkDpgs2KWeo3UMXdcZlx1MDAwNuBcdTAwMTmDhI4gXsm0osC0UFx1MDAxNMbgXHUwMDE0XHUwMDBl9oVcdTAwMDY685zUXHUwMDAxxGUhfH9cdTAwMTSi/ZVI3XfcRv1J9vauirx1vz/29k17XGbAMiA0nyhIYJb1WTutLSXa71x1MDAwNOYs85N5/e9cYnFgwDqTXHUwMDAwqVhcdTAwMDDPXHUwMDA0MIQ3XHUwMDFhgqGA4Fx1MDAwMbVhcUjiaPLJ4Vx1MDAxZv5QXHUwMDFiXHUwMDA0KCN88lx1MDAwMNBE+HSdJ+VcIu881Fx1MDAwNlBPgv6HXHUwMDFmxPbtzsa3PYhccv+DP4LunqzhXHUwMDBme5LNzaBfPHjt5YV/xNNq3n4u4pt5RSDWXHUwMDE0ikM/4KtcdTAwMTV0Qlx1MDAwZfTc2stcdTAwMTY2WZLVsTzNsXHyr1BQ6lx1MDAwZVx1MDAwNa5cdTAwMTNOXHUwMDAz8lx1MDAwN4gveaugX1C2SzuSQFx1MDAxMmGzJ3VcdTAwMTc/WkFx7Fx1MDAwZelgXHUwMDAyIVx1MDAwMNsjv/KpU0A7XHUwMDE44Fx1MDAwMrL063VcdTAwMDS/enzxmzRUTvO3nseRx8vDT1DN2yv+XGKtfCtYiL2d7Vx1MDAwNzKBdjz6q5VcdTAwMTJJ/GHBKGNcdTAwMTMvLTtMd0029Pw3lPKZYv1T6og9XHUwMDExg+bZ++dcdTAwMWFcdTAwMTcjOIqj31x1MDAxOFxufK1a+JVcdTAwMWLdaVxmXHUwMDE2XHUwMDBi4j/7XHUwMDE2rlx1MDAwZlx1MDAxZeqG3tRz/Vx1MDAwZbfd/6DMd3l3bykhMH1vKiFcdTAwMDbcXHUwMDA3nEXpr+euREAuXHUwMDE4OV6Ta8rUk2GZsWW5+rW1XHUwMDEwIPpcdTAwMWRw2klcdTAwMDDrLEVcdTAwMDLz8lhP01XWXHUwMDExd/Bua+BKXHUwMDAxu0hcdTAwMTH026z1e1RcdTAwMTR77amkL1SURVx0jKTwn37b91x1MDAwN1x1MDAwZrxcdTAwMDFGXHUwMDE4/a2hL1s/2cRn7b9PQ995mFx1MDAxY6BOKFxm0361glx1MDAwNrJYjXx9z1pCdPhLXHUwMDEyI0yr36p//UVcdTAwMTRcdTAwMTQjyTtAunCSho8uxJ6Ul3d17sxPMppcdTAwMDRxXHUwMDA3XHUwMDEzeFx1MDAwNMbQXGJCM6/cYfiKXHSF4X/251x1MDAxM9RcdTAwMGZcdTAwMTRcdTAwMTTeU/hbQV+2fnNPn539XepKvq2tXGbOUOxnXHUwMDFlb1x1MDAxY1vVuU1cdTAwMDYkMVuzq1o5m5u/3oqT/mJcdTAwMGb4RtE7hiFJkqBgLFxif1x1MDAxNi19j+l+d4FcdTAwMGJzh3aYiONcdTAwMDA5wOW/QnFcdFh3XHUwMDAzXHUwMDAx5rfe/op6++aWPjv7q/T23SdcdTAwMWGTXHUwMDE49eY3aDBcdTAwMDDYWXjT0lfrrzJcdTAwMTiTh0zUJVlvuUTH83ZcdTAwMTSO/i5j+0hjP6O4X1x1MDAwMNu/oyiMxlx0mkZwXHUwMDFjfaxcdTAwMGa7KC51R1x1MDAwMpqMwSRcIk4yP/OJxtQrlPhpIO/+5lx1MDAxMoLCXGKYP35Vd1x1MDAxZoTjz81cdTAwMWHZ4MWm2lx1MDAxYiF+3ODR+dRok6fZiuIkXHUwMDA3hzhcXM2EXHUwMDEz489Y/UhcdTAwMTBcIveDSlDuc9HfVoLyaWB4V1x1MDAwMdLCT15/pFx1MDAwZfpmoSaKg1FcdTAwMTDI08etfyT8+7/ML1ZiYbNGMFQ23lBjZfvLP7/iXHUwMDBi4IvviT/+teL/qmh/73N3XrnDXHUwMDFiPsRcdTAwMDKhMeKjysxcdTAwMWYn3N/3qItvNW+HY9VtuH96SlSAXHUwMDEwXUb7J3CSSJqgMTQmMVwiXHUwMDBluqhFXHUwMDFjXHUwMDA2kY9h8Fx1MDAxNlx1MDAxYZbG/Vx1MDAxMIlcIlxuJXw6QiiKYIklTpFBwMZ05Fx1MDAwNzFcdTAwMTmwPssgJFx1MDAxOWBcdTAwMTROITGGMmyMLlx1MDAwM1x1MDAxZmVcdTAwMTDgd+BPRDP0O8F5XFzcXHUwMDA3UfvjQc/fN0HvfDnGm8FcdTAwMTjgXFxcdTAwMDLOSrHo1/t6TTXS7INW1+t4XHUwMDE4rF0mw5S/3H+5XHUwMDA24ijxVFx1MDAwM99OUXyv+aHZO1x1MDAxNoX1OjiLkTTz5FHcj1x1MDAxOYqXXHUwMDBlIMPQoDX6Rlxm9X+IOj5JZDzZnY9cdTAwMTJcdTAwMTn5XHUwMDExXGbqXHUwMDBmPn0r1/iz0lx1MDAxOa9cXPfrklx1MDAxYcS3WVHgS7ylw1x1MDAxNMrggK0wX6/COz7gi+M4+tJaJFx1MDAxYq7aOlx1MDAwYtdvZTV+IVx1MDAxNSbh116AeVx1MDAwMiSFNZjMbUiVJe5cYlhyheIkzsJcdTAwMDK37zWiXHUwMDFmfCUhfkfDckpcdTAwMDJFWFi3+cpcdTAwMWRcdTAwMGY09FbhN+TBIDD7NCR+7yCyKMUgLPL6tz896vWX/U7coa0n5fNqkKtmOaqtv7nihWBJgvzWJ0p9ZGYjZIlcdTAwMDdcdTAwMTiDLINcdTAwMDBdXCLw20ZCXGZcdTAwMGJcdTAwMTlcdTAwMTTBkVxipVx0YELpMI5ZXHUwMDA0XHUwMDE2nGMkXHUwMDE1+lx1MDAwNFx1MDAxZFGwMlx1MDAxNWGWXHUwMDAxXHUwMDFkXHUwMDExy1x1MDAxMFx1MDAwZiGPXGZRmsRoXHUwMDEyialcdTAwMTCPkSWJXHUwMDA3YVx1MDAxMFK0/0PN7PueXHUwMDFlSr6ppyhYQUBcdTAwMDaeXHUwMDA22j9cZtWIxWxzXHUwMDFjaFx1MDAxMrXHgtREXHUwMDE1cT2P3lDUX8bVo7C7yzRJXHUwMDAyXHUwMDE27GAv7jPueFx1MDAxMsnC0FxiQbyppj/A1Xsl//+Kq4fiNFx1MDAwNbRcdTAwMTgn/j41/OGu3Ge1811cdH/nYV1vZ/VYQJVcdTAwMDHYfeYuXHUwMDFjdbq1WHNyXHUwMDFjbHZcdTAwMWLJjUJrSJW/ulx1MDAxNcJZ5lx1MDAwZZb+QveIJJBnxS4oXG48OZRGSHh3XHUwMDBivKfg7e+f+fnfZIExkFx1MDAxNzy9XHLyXHUwMDFmXHQ/0lx1MDAxNEb+/lwii1x1MDAwZlr/flx1MDAxY+rlw48xXGJ7+4mBKI6Q8KZcdTAwMTDs61xybDAx0r1xXuAnXHUwMDFlXfFcdTAwMDeMj4rdL/+QZkBv4Vx1MDAxNzkyXHUwMDE0RlE4YMW331x1MDAwZVx1MDAwN1xcenhcdTAwMDdcdTAwMTVcdTAwMDI8XvhVkOw/+206wJ1mYLrmN1xi/Vx1MDAwNqH/OSCEI29+4TJAIMB9P/NNfGrqXHUwMDEzx3GgMlx1MDAwYmpcdTAwMWRKjiFn42b2q2NcdTAwMTCB4Hc4QdDAtyVcdTAwMDHYXHUwMDAwn/xcdTAwMTaE4N2DXHUwMDA0Q9Pwe1x1MDAxZuGzXHUwMDEz/1FcZlx1MDAwMo46xmLob1xm+o1B/4MwXGJ/M6+GYVxm230z7FdjXHUwMDEwvXH2+uq0XHLcoV/LjoPrWPXL+2JcdTAwMDSC3Vx1MDAwMSSmXHUwMDExnMFRmn36PeNdUJ9i7lBcdTAwMDZ+nyBN4DhDfNeNXHUwMDA33/1NXHUwMDE2XHUwMDA0gCGafiPU9zfF8H5/p+BvXHUwMDA0+oElae+EOlx0gsVIXHUwMDE2Jb5cdTAwMWWBTvuGljVTIat8OjLKv2ZMNVx1MDAxZPzaJaQofochUK9cdTAwMDHPQVx0hrj1w1CcuCO68i9cdTAwMWPDXHUwMDAwXHUwMDE2ve2GfU9BKU4zd1xiyVx1MDAwMFxiRJBOXHUwMDFlXHUwMDFlveN3KkpcdIwmwZion12Z9i5cdTAwMWExNPr4MIPfaPTw8/aWPjv9u7SXQN58olx1MDAxMkFcdTAwMTJcdTAwMThGfeJcdTAwMGJBj1x1MDAwMT+slKFcdTAwMDKkVZ81XHUwMDEyXHUwMDExLZQj/mvrLrxVXHUwMDEwXHUwMDA3nlx1MDAwYlx05krAp6vcJlx1MDAxM3FALShcdTAwMWOhXHR41zv4h7995/13aS9L3sHH0jBcdTAwMTTJXHUwMDAwT1x0+5rHplx1MDAwMd3FXHUwMDEwXHUwMDFhJ/7ZqlJcdTAwMTJD0Ccp6d/ae//z5pY+O/tWef/Xtb8//e3WOoCl/vM+SfTnKY1r/lx1MDAxNZladj8w/dSpfpdOfcwt/fzSpccs1p9FWsT201xuhn51Snrn4sktIOnfXFxPXHUwMDA1xNV3piq8KPzzv26G9X/BglxmivjPyVDHvIYngvn5XHUwMDE4tltiYo2OIcrm8XCaXHUwMDA3hUkr6cOx7fXYyrerVFx1MDAxOa5cdTAwMGXBgGyNXCJq3Fx1MDAwNV9ej23CQq79ofbkPCT1h1MkXHUwMDE0y5OKR3jUkLjWkKewXGJPWsbVmsC2UVx1MDAxMT72t1lV/pzcg/7KaDitjZQ5gbNwdVx1MDAxM7ZqwTZew5xccntNqvilXHUwMDFkuFx1MDAwZeYtRq0/Z49cdTAwMTNLOauZlCqDfFxyztfcRZ6HOXOGY1x1MDAwMcfqcJiA66xZJePrWFCSqMjzXGJcdTAwMTmdYlx1MDAxMUk1gatcdTAwMTVRqlxygcBcdTAwMTQxJMA5bTTMK89GUm9OrtzinKvz0crFXHUwMDBlYI4sXG7Whlxuilx1MDAxOa6IXFxcdTAwMDLOPWtictRTXHUwMDBlN8Tr2ojbNlx1MDAxY8hcdTAwMTk8P1x1MDAxY47yXHUwMDEwmzVR4YBj0dZcdTAwMWJOwXopqFx1MDAwNsbgXHUwMDBmZltcdTAwMGZbIdf3PSHlmFx1MDAxMJ+SwcBJwPVreH40mFx1MDAxMZHAZiGupZOkTFx1MDAxNIFsI5GnvVwir8B10LCoS1x1MDAwNdXnUySXXHUwMDE2rbxcdTAwMWPbXHUwMDA3VkjWx1x1MDAxMDfPMeZtg0FNRYtRNVx1MDAxNnR7to5GU5lpXHUwMDE2zZpemuVI3eiItjmc4Fj9xZQ0Mu5oiIfCn58rYzNrXHUwMDAyIclcdTAwMWPUXHUwMDFiWs50qaHM1sBmR3c+qjxcdTAwMGJN3bm+9/DRKZqTa6Mg86jhwNi4x37xr+tXlz/Xrz78yn5nn+x38UY/OehcdTAwMDdHxoJcdTAwMDXX3aNcdTAwMDOcXHUwMDA3cpAjsV3Wapa8sVx1MDAwZlx1MDAxMdxcdTAwMDegQ3Jcbvby4Fx1MDAxNmC8WNRcdTAwMDT47OiJ26O3XGLhtZPHfqNn/Wpv9Lv6ZL+rr+w3/2S/+Vf2K9VQ1t7VIdCvXCI+yqz2bH+19lxyebTlT45ZektcdTAwMWbO2s1cdTAwMWVLTYyxNZCXbTRcXFOaQLTGW+d9Vids/SvlR0I+u25AL95Yp9lccia8Jeea7d2221xc26VaY4gjWWtcdTAwMTM4j2RcdTAwMDIxu8NGYqyI54O3mK68gYy48L1cdTAwMDDwXHUwMDBi8/B7PL/ahdbbhLSSdcdcdTAwMTNgc1x1MDAwMHbredhe34P+gkGeeVx1MDAwYlxy4lx1MDAxZpjT+fJ+pp/Aemeec1nPsOHTXHUwMDAwn1wiXHUwMDAxhmre3ENsfFx1MDAwNLAzXHUwMDA3uD9Cws0sXHUwMDA3mF1683zjXHUwMDBmTYDxXHUwMDFkhuM+WE1cdTAwMWbiu81cdTAwMTFq5lx1MDAwMvxNWCVFzrpcdTAwMThcdTAwMWW1VEligK9aSlx1MDAxMFx1MDAwZmO7XHUwMDFmy/NrX8bKqLheRPBvsT5cdTAwMDXzXHUwMDE54s6nq2ggdbjtXduA84/eXFxupvhcYqxLnlx1MDAwN1x1MDAxYjPx52BM+SNGg7FBW7n257NjJM+OQNbhWqHQTjidfMwmQT5rPVx1MDAwYoxRlMB8pDOQQ1TP1nBepFx1MDAwNsatt1x1MDAwMPtsk+zmISqgjXLUxDVxmVx1MDAxN3zvNkAvW81cdTAwMDZ2Z1x1MDAwMOz0fLpcdTAwMDXyhMyGo1Ww0YtcdTAwMDBcdTAwMWZcdTAwMWTANVx1MDAwZu5i2viLpNQsaFx1MDAwM7lEtaWLTbO1o25LjW6tr3ans02nUOBPXuG13lx1MDAwMq4z0E8wJlx1MDAxZFxc82q3WFx1MDAwNch5gHNcdTAwMDdcdTAwMTdjq1x1MDAwMFcopeVqw47EqaVcXPe3PnX9iFx1MDAwZvJcdTAwMDDbJ1x1MDAwMeZcdTAwMTVg/tBcdTAwMTZCPMFcclx1MDAxYthycCyen3MwzjZcdTAwMWGwtTrXT8GAbYBM1pBcdTAwMDeYrfMwNrA3sJ9cdTAwMDdcdTAwMTmC7ZVcdTAwMDFbeFx1MDAxYj2POlx1MDAxYk+gmi2RT237ZT5oXHUwMDE2YOdTmJWZlinkVJKlp/JcdTAwMDD7eW/+emZihvXe/M3GtDVimn5m/mGr28p780fhOFxyUfnM/Ekt096dv2nLop6556+f/3t7pFx1MDAwYlNcdTAwMDfgiK29OkbQN+RwubtcdTAwMThcclx1MDAxZnRBvGJcYsBcdTAwMTNf4LNgILeQQ1x1MDAwMjyqwbghr9MvuqxVmlxydFx1MDAxONNcdTAwMGVAf1HVXHUwMDA2+yAgRPdqIWfA40hVlI7GXHUwMDAwXHUwMDFjt4hWXHUwMDE1gZw2XGLQXHUwMDA3t4JyoFx1MDAwMtk2rFx1MDAxYazzNFx1MDAwM/JcdTAwMGXPXHUwMDA1fyuwL/LaXHUwMDA30r1cdTAwMDf9wHVwXHUwMDFiXHUwMDA0U22gX6Bv+Nn1nLPWXHUwMDEwRNf3vLtcdTAwMGVcdTAwMGX/NiykXHUwMDA151agr1a1TXDdXHUwMDFhvM+761x1MDAxOEJccsbgXHUwMDFjdIvAwPhq8Fx1MDAxOdxrMJdRXHUwMDA2+1x1MDAwN2NcdTAwMDJcdTAwMWN2fdBTeE5yXHUwMDAw81x1MDAwMP27R72471x1MDAxZvZcdTAwMDHnoVR6SpxV24V9wjG113GCcTvwXHUwMDE4fulcdTAwMWKMXHUwMDAz9Fx1MDAwYtdET7s1wUFcdTAwMWKIhdfzJVx1MDAxNFxcr1x1MDAwMn2ewZjA8Vx1MDAxNcCLNcDGXHUwMDFhfG5WOpxbXG77jDLNdlx1MDAwZnpcdTAwMDPHoID3YDxcdTAwMDBvwDhcdTAwMWLQT1x1MDAwM8ZcdTAwMGXa55ohSpWWrbKHNUrhfN3DZZ3Ma18ukFx1MDAwNT677Fx1MDAwM9xcdTAwMTcw527N4dwluOaY20qwbd3tV0ogsC/NgmviwnVA3Ta87idcXDtcdTAwMTOueVx1MDAwM+eh2Vx03Fx1MDAxN9BOXHUwMDE3L3JcdTAwMTJ2clx1MDAwMte14+jgWmBcdTAwMGWIeuH6LVxcXHUwMDBm0Ja6yjuQT1x1MDAxZeB5cpHPwXlcdTAwMGLs7CpcXD9i59W3eMKjlcR7wPnpLChyXHUwMDA0ymu0XHUwMDAw9i3XIYfIbYychVx1MDAxOOT+yVx1MDAxOeg2XFyL1lx1MDAxMMPmXHUwMDFlx1xyuN42h+nNPY5LNdxrvXWRrk12wXo901x1MDAxYe32elx1MDAwZdCbI7C3wJ9CWKVAV9FwtI2F5Hz1S1x1MDAwZVx1MDAxN0yXoJxcdTAwMDLsU9DxXHUwMDAzXHUwMDA2v8RcdTAwMDewXHUwMDFl0LeqNZHPwX407+IkYmK6I1x1MDAwZj6Dk1x1MDAwMHtq/V2cVFq9XHUwMDFkXHSG8Fx1MDAxOZx0at1O3rVcdTAwMTOapFx1MDAxMOb6dZz8JFx1MDAwNp3/cVxmgvpx0VvIXHUwMDFkO11cdTAwMDB/Q6yAfZ5Bm3Mn853+aVCPIVx1MDAwNzjonayD611wXG7oYodcdGg3XHUwMDE2XHUwMDFiyFx0vFx1MDAxZdBcclxy4IxcdTAwMGWP2043h6tcdTAwMWVfxlx1MDAwNT7rcOJcdTAwMTFrmm5cZp3+O9fxmlx1MDAxMCO68+G1dIhZtlx0zoVYgOCd/kJ9XHUwMDE0ur5xs02g/jdcdTAwMWRmwbmIcFx1MDAxZOB7XHUwMDEzzqExIVx1MDAwZVjIXHUwMDA1x4TLXHUwMDFhguPgPcBcdTAwMTnQ3my5qptcdTAwMGbEXHUwMDExXHUwMDBinpdcXNZcdTAwMTZgjVx1MDAwZfmxpDVq55tD7FhfsDCtse58gJ26o0FMJeB7iKNGh7GgXVx1MDAwNsYx0Fx1MDAxMHhON1x1MDAxZojV3Vo5cM/vj587XHUwMDE56PZWuWJcdTAwMWSYh1x1MDAwMK/lZfd4fXlvQlx1MDAxY1x1MDAwM+9cdTAwMWS4J3As91x1MDAxONh0clx1MDAwMbFcdTAwMGbOLYVcdTAwMThcYq4zh313c8a6viFGwj6aq1xygGODr1ZNXFz7hmO8zFx1MDAxZvzttu51nSD+d2t/vsy/w2BcdTAwMTTKXHUwMDFjXHUwMDE437mTu27dgFxcQTtcdTAwMDWO6+uagGtpwPVcdTAwMWJoNbRHmnVcdTAwMWRHinSypsNxw7ZcdTAwMDU87lx1MDAxYy5702F3t4eXPfOu17jBdlx1MDAwNPZcdTAwMDP0XHUwMDAwXHUwMDFjX2VcdTAwMWRcdTAwMTbbl/npnb3UujUwuj2dwvWB61I9eW0ue30/tq7P82VccpGLXFxcYpdranBsXHUwMDE3ubi8dvaka1x1MDAwZuVcbuI/esF/s7ros3nR5+ZiK7SLrWjjK29cdTAwMDNYUVx1MDAwM65cXHY4XCKeX+KGwG89gKNP4iW3vHtOXHUwMDAyf1JcdTAwMDO4XHUwMDA3eP1iZHfxIYc9zoCtgDEqaFx1MDAwYjq+kJk1tFx1MDAwN1x1MDAxZZjPhctf+T/YXHUwMDAzrZXari20XHRwrGKC6cI9319DucZcdTAwMDBcdTAwMWb/uXzfVkhoq97j+5pcYmN7n+L7jd6G7+O4qLW69Cm+i2pZiL1rx0RcdTAwMGVcdTAwMDN8p/5cdTAwMWPfXHUwMDBmOzv83vx1xFx1MDAxM8zP8X1cdTAwMDTs51x1MDAwN/Nf8SbyQ7h082DHOqyVxe71XHUwMDFlhzpcZoWvkXjRrY63XnQrXHUwMDA1r1B/XHUwMDE35WVcdTAwMWNwbrB/8Wt93+m3+L7QXHUwMDBlXHUwMDEyelx1MDAwNjnUXHUwMDFhcqhzh+OiiepcdTAwMGa+r1x1MDAwYvVcdTAwMThwpS7G2zxv87M4XHUwMDEzXFxcdTAwMWagb/hcdTAwMDcy1unDp7hSq+BcdTAwMWbqWFx1MDAwYljYp2TMXHUwMDAxOuZ+IGMu4IDcZ3RcZtNcdTAwMDFv+2D++HQ9XHUwMDEyPqVjLdi3XHUwMDBm5m9IslxiJPm1+TMq9pK7X3G7w3BloFfuQm+7NVx1MDAxMFx1MDAwMcpcdTAwMGXAdddIZ+81XHUwMDA32n2gXHUwMDAzVo08cCnIJ4BdMluz87fg+4uvJkHe0umIttbQKy9cdTAwMDHvnevrpd232lx1MDAxMH32eVx1MDAxYlx1MDAwMnlcdTAwMWHYx0azbmxcdTAwMDeuiVx1MDAxZFx1MDAxNl5sXHUwMDA3jFx1MDAxNbVcdTAwMGVmPNiOmzZP9HNcbq5Ntl7BNlx1MDAwMeg7mMtIWOTEWOxsRq1cdTAwMDBcdTAwMWXX6U3HQVx1MDAxZKBcdTAwMGLO9kmc71x1MDAxNVx1MDAxOZRcdTAwMWHjQ5zr9OUzMthcdTAwMDKc/0hcdTAwMDdbrZ1+Tlx1MDAwNm2gg1x1MDAxZsS19ExcIj9n51xcXHUwMDFj+EFcdTAwMWbMP1x1MDAxYbzlr7wxf1xcXHUwMDE3nY/mT5iOLr46f1x1MDAxOMt8idtcdTAwMTd5XHUwMDFkdv5w4mLnVYhr3Vx1MDAxYUC+XHUwMDAxZdSG/LnjpavsLZ7VvZ9rj7ys84Hq+/do936tYVx1MDAxN327xjqai1xy6mJcdTAwMTjQ9lxmv9XWeN9ga4DfXCI6T3jXmlx1MDAwNHalveBmXHUwMDAy7VxuXG79XHUwMDFmPUuwe9/cXHUwMDAwY9agLFj/sJ3JTEJDNPRTdsZcdTAwMDby+K6MK4gheqL+Os6+KePv641CmpksfS5cdTAwMWW6/ihcdTAwMWXamGutmdrJj+BH6D0/gvEvII8t9GPd9t5fdyvjqW/V+dwwfqdBXHUwMDFmuO38beiPXHUwMDAx/Vx1MDAwMH5cdTAwMGVcdP2nq9+NXf389urH451cdTAwMGbVnZNfdeiZ7ljXmFx1MDAwMHh/9blr6GN3flx1MDAxNDhudDGDLibW+Tzdde79nyfnPurlXGKwaK3TMTCHXHUwMDE28j3ot17ijJBnTUVcdTAwMTjX6+Jl9/ExqJPwfVx1MDAxN3+Lsmtsou5igN2rc51cdTAwMWJcdTAwMWNP53OT1/gn6HP94Jdf4iGAkyFgXHUwMDA0wJaCNVx1MDAwNb4gbFx1MDAwYvyuzIXXRCCWgc+AXHUwMDFkjb41Jod/Q0xcdTAwMGWMgWt1yFx1MDAwM+75JYxcdTAwMTnYXHUwMDBlblj3/NLBoI9iiOEjv3zS5je//M0v3+aX7j2/rLt40iVuXHUwMDA1dVx1MDAxMH2M8ZhXXHUwMDFmy4SxXHUwMDE1pDuePvDPS9yow57L+d/KJ1xy+Vx1MDAxYvikcMMjXHUwMDFiPXPJXHUwMDA3XHUwMDFlXHRw0bBNXFzP8vuYcWdcdTAwMTNcdTAwMDEuwvhcdTAwMTWm/9xYxHuyhlx1MDAxOeJI/KSsIYb9rvyC9YhEM1t/fZ/vxbtcdTAwMTFvMF2D39d17JMyXHUwMDE2PspcdTAwMTj0z7Fnsa9Odi6xMihbXHUwMDE3TFaunEw5Pvj1+LdyrfxcdTAwMWK4llx1MDAwMu1cdTAwMGWiXHUwMDAzX+U+XHUwMDE3XHUwMDAy5Fx1MDAwNuZxIJ+951tnXHUwMDE4k1x1MDAwM75/e/Fnrr5KSpBQh3+mr/JcdTAwMWXmXHUwMDAw/teY7SfjRuL63ViUXHUwMDAxbK2JKORcdTAwMGbKvV5ka+3+XGI+RDzEi9IrZ3e09io/SJdX6OQrhNhcdTAwMDWwTFx1MDAxNoFtI9Urd3psXHUwMDA3c1x1MDAwZbCd/K22/ax9XHUwMDAzfunwui3gxk/9YSD3etvl4DpcdTAwMWPr4vltgutP/eHHNr9l7OfLXHUwMDE4eVx1MDAxYpPUYUzykjPr8iXhVYZcdTAwMDBflrRcdTAwMGL37nIhXFzV+ZPfhV3S+Vx1MDAxYjhjo3WxYFxyNW7jLEBmkoc4i9bl15NcdTAwMTbGi5/EWe7b/Jarny9XZ+0hXpFcXHN03kMuXHUwMDEx5js7/tXVIUA/7v79Je9qwjpcdTAwMDNoK8XwmqeUYD5cdTAwMTDt5G2t4V28XHUwMDEw5q1gvii95C2N+5zd5pvl8VvrXG4gV8ZcdTAwMWbrXG4k4N9cdTAwMDOfRbj3Ycymiz91fnTnw+AwXHUwMDA3ZojmP1x1MDAxZPNrTTAu0zE/ldvRP4yHKEAmZf4zcm7YXHUwMDFh+n48RDpcdTAwMDO/gH+jRuGTnE16Uk/gdHlvWFx1MDAxYlx1MDAwMnRcdTAwMTPK0tm45ux1WN9jXfLEwM6iMK/a5eg7f1x1MDAxZOaqu89bmOO+5PlNRL3U4DRX/HySW1x1MDAwNjh6yZ3Cvy8xiC5GjVxc6lx1MDAxObrcPcSsSFx1MDAwND5il7u+2HRcdTAwMDXudaXBfPuTsX5zbtTWvyVcdTAwMGZcdTAwMDRwXHUwMDE08MWMO9/yRZjDe+CLeCdcdTAwMWLtbVx1MDAxZVxi+p0/Nz73nsy4XHUwMDA0wIpPxolN8v1cdTAwMThacoaRWOPrayrP7+nKXHUwMDA1b73X63k+XHUwMDE5XHUwMDFm7vDl4otgXWxcdTAwMDf4iPal7qGLkz3L6V99k4svYrbOQ63DRV67Wrau1kH/dvuOfFx1MDAwM57iOqxhsV3ySSxcdTAwMTjWy5DaYyxcdTAwMTj4i1x1MDAxY8Q38Grey1x1MDAxYlx0a/tcdTAwMDCO/NOY+juP8ovnUYBtvteTayxcdTAwMTRirJ5cdTAwMTmdXrjXWsV77If1lVpXv6QhWmtcXNpjXHUwMDFk/rdKh8mAn1x1MDAxMFc+Qlxc4sQwx/JcdTAwMTBcdTAwMDM+XzlcdTAwMGV839VcdTAwMWU9eX/oYkz3XHUwMDFjXGLGd2FdVFdXVOOXWG59ycVIr+VqQqijl9otRMPua7NgzKrLlYJxX+Yn3fMtqPevxanPcE1cdTAwMDFcdTAwMDbc5E47zt90uddrLEy75pC6uifs6o+er31cXGrErOvxzlx1MDAwNna1WvVcdTAwMDPWiFx1MDAwZjmqzqd4XFyrXHUwMDA3XFxqr6+o297UXHUwMDFlnZ/EUq71W1x1MDAxN7/34TrCw7jObnvf1nzgm5dcdTAwMThfNz/AwZ/a9nVXb3StSUUvMXHte3xcdTAwMWH0mzhkXG5rjFx1MDAxMvTRvnLQvqLaYzxcdTAwMDaBXHUwMDFj4Vx1MDAxYSuH71x0KIt61vlv/yyHtFx1MDAwMYfMPoV3gEMq79e5tlx1MDAwZYwtf+p+gI85JODkNi/qPyTuJyGvcUhcdTAwMTfWVVqwzjG81CtCX1x1MDAwMNZqd7WK0sW/XHUwMDA2PFx1MDAxM7a/1IXDOkmpw5j7PE1Xt/qoq0/yUdqzfJT2cFxcb57mhWbipdZagT5Tc3nt8sWifqlXhPpwXHUwMDE5Y1cr6V7rXHUwMDA0I7GrTVx1MDAxN7vaRPSKNy3EXHUwMDEzXaivubansc3nObMuXHUwMDA3da1DrC9cdTAwMWP5vpZcdTAwMDPWdjzEpbTHuFTaxaXETlx1MDAxN+37XHUwMDFjtXM9fuXQsGbyvlx1MDAwZeqS/3uoPdRcdTAwMWbX6lx1MDAxMWOay6s+f4Y9T+pcdTAwMTS7NbxgXGb+eFx1MDAxZPNhXFxPcufIY+78vsa1qzm51JZe9pe82Ihr7eKjTfnmeJuef0O8XHLmPW1cdTAwMDfXXHUwMDFm4lwia+h3XHUwMDAyjHBcdTAwMWZjuvBeXHUwMDAwWPP3cK9SXGLG7lx1MDAwMr34yfcq2WGjv8vVp7Lu6G/5d2/lplx1MDAwMSd8XHUwMDE3m85TsE9Aen5IPKPzY7p4xs09XGbd/SOXvKx5uOSFnVx1MDAwM5SFS53Sqqsxv8hPV6+OXewkcqmLvtjB8zW33Fxc7kW59KFf9cq4+I2HLq9rS9c6caij0HfsatGRS034fVxybifHl1rypm6u/V9r05UndcdQlrWLXHUwMDBlvV+bjnR9d7FlWI+tQVxcgTiBdffDWFdMgj7Etd7ZsK73yFxc8tlgXHUwMDFlXHSsWb7UXCJ3mKNcXPPx19pqeC9JV3u9XHUwMDA286wv97l044N9wPqwaaanxOVeoLSrWcZcdTAwMWVrlrvaaMhcdTAwMGK+/96TV/niQ1x1MDAxZVx1MDAxMb/cq1x1MDAwMznhLLvginTF3uSCpXZXI1x1MDAwZe8vOlxc9qC7b+ji81tcdTAwMWQ/vOD6/T1LwvW+XHUwMDAxcMxsQ6TjfFnHu3BduL9cdTAwMTbwxcDagvk0b+Ugwd9cdTAwMWLwXG7lXHUwMDFi81ri/37y1Vx1MDAxMvv44flcdTAwMTk0/IpcZlxmRzFcdTAwMTR7+uSWn/9cdTAwMTT8d5/YsN0kz5/W8Pc9lv/1pzWAId0/qSGd8ca0RsaDpOTAj245K8lJwF9ccnw7MFx1MDAwNc5cdTAwMDWv/Hxkmlxi/IRb6NZcdTAwMTRRuH1FhJTJcVxux4+mkuzEMl1tXHUwMDE2hTuUXHUwMDE3aP/A2rin56DLSqmK9Vx1MDAwZd95vKKpXHUwMDEyL+czVHCmM96UJZk/Nbtxslx1MDAwN1utKqVacupY2Fx1MDAxZFNlz/CybMo8t5A5R1wiasW3xv5iV1x1MDAxMWY6XHUwMDE1MXs09uhs1982ru056+ZcdTAwMTThwcxGT1x1MDAxM5OZLJnWo4+R41x1MDAxZHeHY3nk5LpcdTAwMDAjfP6bu0oqzJmM01x1MDAwNY/jXvy6nLBcdTAwMTJD/uUxgdNNxVF0z9TO0mjNcc9/ZcFgeCnlXvz6tVma42blpYqlcNLz37GkXHUwMDEz4kjihOe/aLIyXHUwMDEzeSW2jrk2OeX5r6Oo9fC1XHUwMDBl9/wg4dTBoChzJeGmz37BWIbJ5JXxj+aCznFzRdenxvSVdTOTXHRcdTAwMTe/cjmrknyOq0zfT930xeWm44QzJPaV8a9dXHUwMDA14Xg3QVHpLHEpuOTz33BEv1x1MDAxY/9UqfmSXHUwMDE3Vvx+NyqU11x1MDAxNpwrbfzl+Fx1MDAwYjNcdTAwMTFcdTAwMWRBXHUwMDE2xLkjatPX9p43s9Mrl0u4eVx1MDAwNTZJqMq5m762v0BgYq55ZfxcdTAwMDdcdTAwMTdsXHUwMDEy75pcZiq9tr+yIDA88kqH43pacsJ5td2NXlx1MDAxN1x1MDAxONE/clF81FGsQr3JhiYj1ZtReW6cgsY3qnMuYEFtTIyRclx1MDAxNLbIRlha7LK0XYJq8cmS1efYukyrXHUwMDE3+89yJi9suVx1MDAwMYZmijd0teE8PDlcdTAwMTE+lbzilJ7WnJZg1KrmXHUwMDA0TjpcYlx1MDAwNE9cZqssrZpeX61781x1MDAxNX9Ct9PkxVx1MDAxZbOmXHUwMDBiVUc/bMSIxjNcdTAwMWY97ecnO5TJlaPiXFxfXGazTVx1MDAxNFZOw+FNttbb2XDf19k+OTBIjOderHWZTDlzZ25bN8vD03qRkkZPIKdDbptcdTAwMTTVLN7PXHUwMDE2fNtYXHUwMDBlXbPOmF0uRd2syMLdvehnz1x1MDAwYlx0XHUwMDE4X7GOZ419poujXHUwMDEx8tqM5sR2KJxyfUSvT7NhQ1x1MDAwNr1cdTAwMDDZN6RXXHUwMDFk7fNAt0Vp/WKvXHUwMDEypbaKXHUwMDAz2M5tXshcYlx1MDAxMix5Zjbi1KBcdTAwMTL0ocHn61FcdTAwMWTOM3exmlx1MDAxZWZb9qhcdTAwMWGrgYu82E+aN9x1MlrXrlwiI6x/nJ+caeLVXHUwMDAzd+SxtIRulpI588j5rp+HXHUwMDFjOjph20R7sXdnxeZyXHUwMDFl7FCw8U6zsbFMcC7LhlvT1vM+j1x07HnK9vtesVx1MDAxOazUXHUwMDE3crqRVtrAkVx1MDAxYWV0kLFcdTAwMWFsP9usTXXIOVlzNKpdTyojYzTbpIydb87D/XOR9EdTbr3qS4Mzkk20fqD4KCVb4iRgk22/9PpcYr7fZf5i5WTD3jZcdTAwMThcdC/2I19ccksjlC1hYE+muzRvpuu9XHUwMDEzt2xvljmTou/uZ80sMIyDXHUwMDEwPlt+gVx1MDAwZlZi6ZlSathL2jCXVD2nuIO3suXFaD72V1xmUoyMbfpcdTAwMWMmXHUwMDA0Pk8yZJfwIzJqK/SMl1x1MDAwNrpL12thI03GszDnSMlcdTAwMTHcejLytORcdTAwMTZDat5cXCFDTdjKXHUwMDAwZbj+8LyhXHUwMDEzU6FcXCXDXHUwMDE5uuXknjEsMOzM0uORnDJ+gVx1MDAxZFx1MDAxMnKxusWTZG6alLDmq424qvfkcIieSdVcdTAwMTVcdTAwMTcjTu+T1MGpZ06O44x9XCKmyCZFsnVyu9dcdTAwMDepl+S1pYjqPj40MYbNsaWtKFlqjK3S3/c3iTlJ/Ll9i39cdTAwMWJkrFxmYslcdTAwMTJb7UBuzEpcdTAwMWXG9HRim6wq+/F8d6JJ2z5ZifnCXmjSMVx1MDAxOXGeOvF0ZltcdTAwMWWYulx1MDAxMYpROXV2U3ys4qmFZdnttUyDsSy15sZzszGQcWjUQ43WXHUwMDEx7GCXzdJcdTAwMWFXW9zdimQ8nJcoNzk/x1u1XHUwMDFjKbIkkKJXYUuc7Uc6kLthsiZcdTAwMDXKn7nKPm33NNtvmbkqXHUwMDEzfVxm2SeE/HJ9wfVNrlx1MDAwMbpcdTAwMTAgWF61pH9cblx1MDAxZCdeS1tBXCK3qMf2XuCxzm25cj1T1FxcXHUwMDBiNuyw3lZcdTAwMTTvq0PAW1NsiCtAeUKiN1kzz4V3MDKUkSR42kDgo8lgVuKMSUiRW1x1MDAxMbh9dFx1MDAwZeMk6Fl40rNGZ7/OtzdcdTAwMDN1jXJqjcE453PGOeO8R1x1MDAwMUxny6hcbpp2IFs9dE44va32zE7x3K42rVx1MDAxMVwiXHUwMDE2otlqwszYxvXQ2+sz3kaR/nLBO9GMQudcdTAwMWKUoDI1aaTidrzqdqRcZiVhZLCkTOzT7YBcdTAwMTTmJFx1MDAxYiRDRlxmi0pRXHUwMDE1eaeMhCFcdTAwMWFJZ2E+8ykjm3ObhItW4lxmN4feKCHQcc/WnFxcJD3+vHNN5Fx1MDAxOeaP7FxmXHUwMDExUl5LXHUwMDE5bGlgwvIwWJpCezykO05RVUnxXHUwMDE28u40W7Yzd4XqNT6Nt1xykOjQtjjMxKmBLdp8/7TYT4bH+V5Oc3eYXHUwMDAw4H1hO4vGMsfcwIpYdFwiXHUwMDE4draI91tcIufr4LDB9/XUXGbo+WBlVlx1MDAwYjbDmPC4mGZHReMm+Zyg7Uyut4Z6OvVWMS6VXHUwMDAy81x1MDAwMktcdTAwMGaSkmgmwOPAVfXVaT+s11x1MDAwZTbezZIgWGnU2Kx64SC3+rGo23460Vx1MDAxY1x1MDAxNFx1MDAxOa80XHUwMDExXHT3zlxcpVx1MDAxY0bUxrpcdTAwMWROj+NcdTAwMTJNsXPgXHUwMDA15Dk8zDN7vlx1MDAxNjH9hT1cdTAwMWbzXCLPK5k5XHUwMDE5x2zrTZcq8NExXHUwMDAyafVxTa/O02FKL3F/JVa4L272sb3LXHTZXHUwMDFhy1x1MDAxZY5cdTAwMDeViTvGeLZUUdqxXHUwMDEzmnjBr1x1MDAxMKHhz1xcappRzFrWkNbbXHUwMDEzp1x1MDAxZs8nu8Lc/qHMLdJl8LWvrfKabdljY/dcdTAwMTdcdTAwMWLhULSKXHUwMDFiXHUwMDE5XHUwMDAzIe/Nxi1cdTAwMTX0ttJYc19wosRxRyNpzO31XHUwMDAzpZ9cdTAwMTHOXHUwMDEyXHUwMDFkqlx1MDAxYVx1MDAwNlx1MDAxNT/JttRmf1DDiVhTpyCNXGaN7rVe1T9sWFx1MDAwN6OtUlx1MDAxMou+vK9xXHUwMDE37Vx1MDAxZNSJOvXVjFx1MDAwNvaOemX8vMVPwfhPo1x1MDAxM1tJ3MlcdTAwMWZs1/tpuVx1MDAwZlx1MDAwZedcdTAwMTSjkFx0XHUwMDE1XHUwMDA2XHUwMDE0cF35xFu3zlx1MDAwNsG5YDvc9Vx1MDAxY5ygYoFAdr1cdTAwMDA/+PNWy5Gt+2zNxaEgTFx1MDAwMVx1MDAwNzhT+Ip1Ki+U2aNTk/HZUrfh8uDx+6RZj1fhXHUwMDE40/KAXtVqUFAkn4xcdTAwMTiNX9Kr7UmrJ8lcdTAwMGJ+WY3OPM1NR7pcdTAwMWTvT8BqmYlRXHUwMDAwLuVcdTAwMDMm1Utplj1cdTAwMWFab00sXGZcdTAwMGafUMZKZVx1MDAwNFct+2PiyPfPNUf4U1x1MDAxOXFfcj1jLXIs2DWsmVx1MDAxOVx1MDAxM6VdokM/XHUwMDAxki+txz0nYfa0bURbfUIlXHUwMDE0ilx1MDAxZGt5oGP7aDfDo/VcdTAwMTbZ5UzJzvtxPnxh7yvETFVcdTAwMDTg48lcdTAwMGJrx1x1MDAxZkbbXHKz2VwiM02vIE/BXHUwMDA2luVcdTAwMTWjiarWp1wiI7KVXHUwMDEyWvpBm2Fb5Vx1MDAxNouCqapMXFxha/DUqTbqgK5E3LP6ZT+rkF25XHUwMDFjmom7w6qaQLE02cSBKuyk/j5cdPlcdTAwMDFTXHUwMDE3rnG2ns93wLFgcspcdTAwMWFgUTym+fwwj+Jcbo2M7MxsXHUwMDE4KVTdXHUwMDA1Nlx1MDAxOfSGXHUwMDA3Y1x1MDAxY+fbOohcdTAwMGWjvlxcTlx1MDAxMt7EXHUwMDAyhHy5dljKmX49sJreXHUwMDFjXHUwMDBijf1KwTAtwEeLs99cdTAwMDNq0+NcdTAwMWFcdTAwMTOjXVSuT47DRdnAXc6RMzNcYvlcdTAwMWRcdTAwMGY2OOJeyKMmXHUwMDExXHRcdTAwMGV4WlCQi3O9OWn6ei9Pz0vmhJ1cbqad2sdGoEjCaMZLP7VcdTAwMDfQ9pjsXHUwMDAyX26Yxpg0L7lLlGykOSFcdTAwMTB0XoVcctf3h7FV9DXD0Wg2VFNcdTAwMDYtfCPChptcdTAwMDU+Q5IlVm7OO1x1MDAwYlx1MDAxOP5wsVxc9lx1MDAwN1aMli99Klx1MDAwMF1lilx1MDAwMnQkaLDMvUVcdTAwMTO4bOPEuGmcM3dA0CFYT2in9Fx1MDAwMTBcdTAwMTE+76RcdTAwMTQ951x1MDAwMsHndkFzmI1ZppU99vV9mSXqWm5cdTAwMDdcdTAwMDZTTTdcdTAwMDOsXlx1MDAwNOGMw1k86Uu0tN8nx7XByWJpXHUwMDA1is6zyjSVhu1sMTxcdTAwMGZGybNtUWSUXHUwMDFmKFx1MDAwN4B3x5iQuUnR7ObmKNSmNnFO+rRPL3tm5dOSO1pcdTAwMWOmh43bp1aEajU03p/Phu1gZD7vb3jpT2qWSTNcdTAwMThbhL/rb07pMlx1MDAwM/7BJNzx+Fja2eWM2eVcdTAwMTbgku5umWpW/XzdxsCC8yTax2JTIc6oT5i9gUIyXCJbjjfUhji6LN2Opid1ZjNcdTAwMWVcdTAwMTFPz+ZCzFx1MDAxN+xcdTAwMWHBZVx1MDAwZq1fQLqllFxcz/U4vCh2XHUwMDBia7je9eZJWI63vVx1MDAxMTYu+jEzRmYrWrVcdTAwMWJnMvDCg9M/zSaollx1MDAxMC/sUKCcuf04SiBHJc9YWVmMoyzNIWlxNVvOc4eOono5XHUwMDA3XHUwMDAwXCLu7GpGT1ctTzmLZZ9ozj3urL3Q+5UmuVA8tiQursA2XHUwMDFlj3NcIunLu31vUi2TSMjPNeBJ3OZcdTAwMTCvQo1RSlLEc0JcdTAwMWSf/SDVmpfj21x1MDAwYmGnX1x1MDAxMa0t5WNcIvOHXHUwMDAzumyH9aFcct3T2Vg59WIxr2dJnMZCYKVcdTAwMDOhJFx1MDAwZb0lmW+PSqu+wM/12lx1MDAwNE4lvlx1MDAxZqRHfbo+MmOHIFx1MDAwM5X096OhgUvqPjuqJVf56XLgqcSKNfhGmpxTLTv1Ni9cdTAwMWN2XHUwMDFiuCRiqzbikU5U0qGPXCI+mvZxieFVPIubXHUwMDE5z9SWJWrGQlPJpWoheOFcdTAwMGVe7mPKZdK8XHUwMDE0taJFT1x1MDAwNc2fWG5g76dqMkJcZmBcdTAwMDayy7hcbovBXHUwMDExo1x1MDAwNlt0XHUwMDFlnaRcYsPGwX5cdTAwMGXsPTBU7YAzVqn7Qu9Dc3yWU36auMbxgI75vdliflx1MDAwZvPjXHUwMDAyx1x1MDAxOGA2zdprXHUwMDBmvEltmP4kn+0jvicg8pjjR/VgLnKLnphgLlI+V1x1MDAwNIh3rlx1MDAxOdeyXHUwMDE1qmjAXHUwMDA1TUV78nG85rVcdTAwMDM11GOWJMssk0l9JdZhXHUwMDFm0Fx1MDAxZtZft2u3qF+s3VxcXCJSllx1MDAxM2VWrlx1MDAxMinlncylXGaSXHUwMDA0JCpcdTAwMDP+XHUwMDFmukrcgb7aTdNtXHUwMDA0kINEvG063lNatt3wz3HjuHZcdTAwMTM2XHUwMDE5r9faOuZcdTAwMDBcciwsf41IQFx1MDAxOSpANS1dXHUwMDE3U/F0zJl5Mzn60eBcdTAwMTQvJkJTXHUwMDFl+0tA4LKJ89LXjuG6NVx1MDAwMrlcdTAwMThcdTAwMTDq9kxcdTAwMWT5XHUwMDExv1tuVnrs11NcbjhcZuaCnzgoMciGsL6axTZcImfxfjDsT1ZcdTAwMWMxYFFccuVajWtcdTAwMDaj56ZCkTeSXHUwMDAy5qysd1DONq7AYMO2z47YPXWaL0SOmexbf+kzmidcdTAwMTdccu2qxrm/XHUwMDFk9MeiuDRcdTAwMTN8IdeTvslcdTAwMWTIQlFe7Mk5ucp1lpvz0TpcdTAwMWWF3Mwk5L6uiCbgpo1KXG69lkHjklx1MDAxNcTAmIK1OKhmPEtcdTAwMDd04SYv9sa0XHUwMDE0hG84OudH55lvNKtcdD+NZ8tcdLvmXHUwMDA2+7O+XHUwMDFkMFx1MDAxNE6KyoTdjOPQ7Vx1MDAxZEZtWs1TZKHPVVx1MDAwNZP952vKj1x1MDAwNIWXXHUwMDAxPVx1MDAxZs/5KFbRtV155XE/VonebLJY+r1cXLWE/SmeMbNzcKwyk6XwXHUwMDE5Z1x1MDAwZVx1MDAwN8p+2DdexNfMwbiXjGtbMYhRoqexupmyx8zDWlx1MDAxNcfxaXhIsqjxgolHR8pKzZflcu1agTAtx2K6oyeHXHUwMDA1prWjhfA8jmaZhcAkXHUwMDA203hcdTAwMTXuXHUwMDFj8FkoI4NcdTAwMWVcdTAwMWG42zxcdTAwMTmdzb3s9fBjwaycXHUwMDE2XHUwMDEzp1wiK5XiJsr22GhcIs+zstG941xiocvNirGP8nFhtOuJKViTJFxcXHUwMDA12kxcdTAwMWFcdTAwMTBBf8ZKXHUwMDE0Klx1MDAxZmfTvJ2OWDOfzVPGqMaLfrluRrba0LlaXHUwMDE4w6Mm1o/Yp1x0jrLlXFzA9dBRXGb9qE16XHUwMDFlkFxi4JWLlb/d5NR+No3xosXCJm6T1GtcdTAwMGXrPu5lh1hZjiviOOuj7fwk68m6j8zCYkvU/DDiXHUwMDE5ZbFcdTAwMTPGvMlcdTAwMTeHWUb7qyEzMqdHqcfPbX92XHUwMDFjk7NxXHUwMDFmW5/lXHUwMDAzeutDaqVtjYBcdTAwMGZcdTAwMTnPmoFcdTAwMWbGcjJEokBuT+h81rBKu+2jSOMpedZG/lx1MDAxNFx1MDAwN1RoYW1onJueONycTPcoRTfRZD8oXHUwMDE2m3i4XCLCJbVpK3rtVEeDOGZVXHUwMDE5mJXEc0O3OWp6IGirg6RilHpcdTAwMWHb1s6xokHfaaX6xi9rLFx1MDAwM/hlkkVMUeRcdTAwMTQzZSi3uDOv9LVYIfFqNVNHkpPsuULEcv9cXPNahFq4U3E2MSxScMHEQCtiPuQtlduzXHUwMDBiYa1MsvHWNVx1MDAxNVxyxpW0XHUwMDFkTslrMVx1MDAwNs5G6veP42hd0GY9X1jilp1cdTAwMDayu1x1MDAxOFx1MDAxY2nOcLNcdTAwMWI/xTen1qjmiii1WJLhtqmjR6flXHUwMDFltZaDZJjz0qShe/RcdTAwMWNZrIfIyGlcdTAwMDWGXHUwMDAzPlx1MDAxN6cn3vE4NY47kitHKpWOljvU3I3b0i9C+Wb9SyVcdTAwMDTuP8VNjVrdnFwibyzRh9Im3YG7XHUwMDE17HQt5+axXHUwMDFhiYZcdONFgXLwaUc3gb1KVqXkbMyEXHUwMDFjbJCpXHUwMDEzhmSF1sdcdLtcdTAwMWIlypm/kf89Kl3jXHUwMDBimNC6XHUwMDAxPWNRseHEU2Rqa0ybXHUwMDEyOtWbL5HTfH8mXHUwMDE4P1x1MDAxYk1cdTAwMDQvleudTNklxmZcdTAwMDN+KaxcdTAwMDaLti5cdTAwMDa9bd+sht4g6vdHm+W0SOrZXHUwMDEyIVx1MDAxZfdOXHUwMDE0ZsAnssD1+3yYr/E6m1x1MDAwZVx1MDAxMSz39k6L5kI0XHUwMDAzhpic9XCJ0oJTslgsp+tcdTAwMDSvg/o0oNdBXHUwMDFib7jhcjZcdTAwMTSLwtltQnROVLdxXHUwMDBinlPPvLLneG+EjFx1MDAxOb/hiFx1MDAwM1x1MDAxZvruQtHKU3Z09PmkXHUwMDBlVfa8XHUwMDBlybhcdTAwMWZU/VXOXCJcZolqKn1cYnfbc4uu/H2+UM7IgSeXXHUwMDFhV+ereTNcdTAwMWU9y1x0jIGveDSZUFx1MDAxYjk42k8w4TiaUSPrrOsnb0d6p7lKo7uzm8+stGKLqj9cdTAwMDGskMpqjlx1MDAxY+2CYmWsZv1QU33HOVx1MDAwZVc9dt+MyMFtfEiAfvrBXHUwMDFjj3qeXHUwMDExXHUwMDE1LFKSxJzhrWWULNkyQvItt0BdLdn30Fx1MDAwMZPOl4AxLlJsPK75yreOm9auhb5axcaOOajNqX+eezF5XHUwMDEzl1x1MDAxNPgjuMBcdFxcyjS8iK1cdTAwMWJ+w1eL3WSwNVx1MDAxMabkK3lBoJPJKD1OXHUwMDE3mkufpzIzKFx1MDAwNXs92lx1MDAwNurCmFx1MDAwMW517C1cdHRv+smwvuVVucNPwFx1MDAwNpeoceKzYbzNtkxcdTAwMDNcZkNaKmPV2tP9xLXNtdruXHUwMDE3XHUwMDAwa9kmXuNrylx1MDAxOfj7lJRVXHUwMDAwVcomyaTBjd9nWbI5Zlx1MDAxNEk4h0dVPCFmtOgnLbcjNVx1MDAwMUetaHxaec0yWopcdTAwMTRcdTAwMGb4RzgkXHUwMDEwUmZcdTAwMDIp3tQqdUqm7DbeJti5XHUwMDE4P05+lexWajlcdTAwMDCURrdF3/CLfsBuT0BokCbznFCrXFxG2C9ZNlxcJ5K0nuyJ9XpcdTAwMTLmpezZI7/cZSk76897rlVcdMTNnvHchsuQXHUwMDFj2LdcdTAwMWGbn7EjbpV6s6/LLOVcdTAwMGa5rdK+5lx1MDAwZvP0MFv1sHzcO+hiO+3v+1x1MDAwNLVcdTAwMWImhaqepsTpXHUwMDE0e9KNXHUwMDFj2+dJaYBxRuGpPVx0uJ3mXGaHqdhcdTAwMDbQXHUwMDE2p46wsMiG7ME5ztXhmlx1MDAxMeba0VNHQ7Nv05afzZxcdTAwMTLd16zo7eimWlx1MDAwMlx1MDAxN3YpncVcdTAwMWJdz5FcdTAwMTUy0oSRMCZdvZJcdTAwMGJcbov0xZhcdTAwMWPLdCBcdTAwMDfKfF3va7OHqidcdTAwMWF11TGFXHUwMDE2apDP9Lxi0/nWXHUwMDE5Mlx1MDAxM1dcblRzsbcrd9djlaN6jlx1MDAxNfFkr5msLG84STJcImZcbj/Ro4Xi0eh5yOhyuaXqOFx1MDAxOCauUFx1MDAxMWWvT5JI6C2s6WqpS85RjrfLsnHgXHUwMDFjXHUwMDE2UYlcYr1cdTAwMTA1XHUwMDFkcZ0o00pcdTAwMDFcdTAwMWW1uHxqszOUK/lw2Wz703ytXHUwMDE0cT2VSmTea3tcdTAwMTS/2SHLOtnJwzxcdTAwMWMnx6Otjz3hvK9cdTAwMDbJ2rBn6uQwXy2oZqaYm8GaVvu3OciEQ1x1MDAwNFx1MDAwN1x1MDAxOXNTgWNb/HCcb+StjbX2jl6d7YlFKFxc1lx1MDAwYmKtoGaWsVx1MDAxNFx1MDAwMEyuXHUwMDA27F6enOMsNtD1dI02w2VcdTAwMWY/nbKtlCn143JcdTAwMTTjUtqWwD7M09rBxYjFxGhcdTAwMTfnwWgvXHUwMDAy0znkd9ZimZ3pVGqHuZ/hWW8x2bQ7gt4t+lx1MDAxOCaHJXzePVx1MDAxZC44vNY5X1RGLqnd5IxcdTAwMDNzZNuuoDFcdTAwMDQ+V+x0R1x1MDAxMqe0UKxK9Fx1MDAwYpXYXHUwMDFl9pJHxbmAYlx1MDAxYpzIRHrvXHKbXHUwMDEzXHUwMDEy6lx1MDAxNVx1MDAxZY/Udlx1MDAxN+5G2/k+b1x1MDAxMMCfsWpza9dCu1x1MDAxOCmCJ2JSIFx1MDAwNnSZT6OWXHUwMDE4aDRpzqZnf8XJsSGE9Hm57MdbYCNcdTAwMTKSwotme0ybTWZcZnRWlZGgYVFcdTAwMWHHkT2B1mu/0W6wyFx1MDAwM0rP+ICFLkva3Z4mXHUwMDFl71LE5mwmlsbZxkFBJr6w5zfLeb5cdTAwMTTVs7VHXHUwMDE3PVSm9jRcdTAwMGVsw/G84SZcdTAwMDfsNFx1MDAxYa5nhrKfqMBub5v5Kcy9W590VYHNXHUwMDFkNiOBnppcdTAwMWJnc1arXHUwMDEwmWvceGGvtvk6XHUwMDFj74E7aNPYfkaSXHUwMDE0iba4qUXW0Cw9NT7pM5FRzGlPYFx1MDAwN7TjMLphXHUwMDFioVx1MDAxY85Sxpa4nTNeVfKcXWyZgztLTGI8N5pcdTAwMDOxw9RcdTAwMDW9wHBEmEdVvFx0tszOmUSrKmHIW1s1qldmMmgk9zSd8Vxu3U5zKeRcdTAwMDfi0K7E2FTOZbKUI2GPXHUwMDE47nI73M7nuT+SMVx1MDAxYkVklK6iekBGQ91amsxwoaNHtlft6Fx1MDAxOTA7KECH46w+XHUwMDEyhL2aU1witVx1MDAwMIy9OFxyXHUwMDBmuzGenMZcdTAwMDBrsKXHXGK39uDMXHUwMDFiXHRolaxifTnNbTwkeJXTi4rzliNb9jjSsTboaVx1MDAxOSw2VLvxjlx1MDAwMcbOznVWXHUwMDE1XHQ2LEm8J1x1MDAxM1x1MDAxMyul2b5cdTAwMWKcXHUwMDFhWTgvsclS5YCBpMpjWFZDjGZm+3pBz4tFVVx1MDAwMXrLXHUwMDAwqFdOi1x1MDAxYlx1MDAxZiFJwPKV5mhbTpkhWm40fHM4Slxy4mms15eV4Yrv4cN0OJdqXHUwMDAyR1x1MDAxNzxQ84UxV8yK8lx1MDAwN6h5PPFFXHUwMDE52SqeXHUwMDE0yFwiXHUwMDEwXSzsTdvxJl3Qfu5cdJu8P/ZhXHUwMDEx0uas8e5NXFwhUjSOd1x1MDAxMlx1MDAxYlx1MDAxNXJuUIZo0PeZIFx1MDAxY/eQucN5mX1EXHUwMDAzL7fCieP6/qZaOVxy5mhJnFx1MDAxNZxHz6Iw1vh+7mp9XHUwMDE58XUqzG/sVmjZXHUwMDFjN1MkXHUwMDFjW3GDNZBcdTAwMTY624BcdTAwMWRVizYsMVxcxdjA8etlUOx8Z0NcdTAwMWX6pyxDXHUwMDA3taj5YFx1MDAwMVfJpFQrJ+nJJ5HMzPWNLk5cdTAwMTOr5Phtma5cdTAwMWRFwcXxPovpWqwwejWckz5epn22KNfRPirHqHJu1W1cdTAwMWPkwMjo7MGXKdVUyVggtGnh78zDs/Hq3XjP3Xg1NCFbsjhHXHUwMDE2tTzxjVx1MDAxZFx1MDAxNdJyP0tUXHUwMDAy20Y9XHUwMDBi8N/lWETHY5S+JFxu9oREiD10pyHUbiOeLcHFqFx1MDAwNKWf7W/W7e++XHUwMDE0kpni0mKzOYWYs2hwLT5iez2YXHUwMDBmXHUwMDE3+Wg7XHUwMDFikztcbilcdTAwMDN7v9HYXHUwMDAyT4+rPHC9baNcIkU8ok+9foh5Up09y9WvYK5+tN1cblxcpLj7XHUwMDEx4Fx1MDAxN8dcdTAwMTlX5pM8m1ErYjfJd5tejFimzqc9XHUwMDAyXzP8UPeTODxcdTAwMTTAoG9nkzmAX4UzbmLOPJfXuZmINlx1MDAwMI+deS642cJge5xeod5cdTAwMDFr0HiUXHUwMDEyKmOaKp5cdTAwMGI8ikQyivdaWlx1MDAwMS5cdTAwMWZGXHJE1yNMi1x1MDAxYc5EcyEozbTRbPMmXHUwMDBlWFx1MDAwMFx1MDAwNszp0mDBXHUwMDE102auXHUwMDE2PD5cdTAwMTZsYVx1MDAxYlx1MDAxOcGhiFfmNp71VdZndyqSb04n49AzU25JY63jIVP6wGdEW/vJXG7mXHUwMDA2buNaruJwPJJM58JWXHUwMDFjubPcXHUwMDE3cXmiLXk801x1MDAwZmIs+Ha8dJG1VVx1MDAwMjVBjd1mrmrGnCCB3cc2pVx1MDAxND+bP1x1MDAwYrFJtPlNMlqH+Yps28NEXHUwMDFlR1x1MDAxYVx1MDAxOCM19c5cdTAwMTN+2tfiUbwj9Gw+bWNyiyhcdTAwMTOVW/Csp1x1MDAwN0h5XHUwMDFinyCAWeF21miTXHUwMDBinM1cdTAwMTFcdTAwMDC8N4v0OEbX6Fx1MDAxMVx1MDAwYuThXCJcdTAwMWFssd3MpmymmopiOZ9cZtjleKy0jnKOhKzIZdk8aiOfS5ynOcaMgyUqayFInJLXxOJksjE5cyf0Ot+hnjCxJiYyqGfYKSb3yFxczVuX7aXi+MxIlVpsXHUwMDAzXZqfXHUwMDExfdZvVzYzLVx1MDAxNtecpe5Ogi5cdTAwMWRMXHUwMDA15vBMroNdQWRUUedZQeiu4u/aUlV0YSmxOs+fKF2xaFx1MDAxY+vvXHUwMDE2Yt2PwGzoYlx1MDAwNGy+r9RcdTAwMDBXVtlG81x1MDAwZmOJK1borD5ZIdeO9mGVOepq0VCybFx1MDAxYr6GXHUwMDA3wFlPqD5cdTAwMTkqZlx1MDAxOLRDj9WW3Fx1MDAwNFxi6rLs5ppxcik7+vZcdTAwMTCNxzt6K41cdTAwMTlLmsWckTBAXHUwMDE2MVx1MDAwN+HdqOfPVsxBbJeZmSfAT1x1MDAxY3Y1RL4rMXxV5C7wdo5HdJ1pmDfgKjtcdTAwMWPZaUVNTotifTKXR4spWnRRap60TrPjYLynjvRs6Vx1MDAwN0o2VU69XHUwMDFlIYTpbKBYclx1MDAwMv1cci/VMHckijMhbJZcdTAwMDZcdTAwMWVhdjRcdTAwMWXuKONcdTAwMTTxNlx1MDAxZFx1MDAxOWM19CphOlx1MDAxOXutQFx1MDAxNb3tODZcdTAwMTaT7TqdqcMsnG1weaQo625sXHUwMDE0X8rN2Fu1i2VcdTAwMTTwqFx1MDAxNSSjLUO5Pp2n1VxmQDWNZVx1MDAxM6VcdTAwMTdT07YwXHUwMDFiXHUwMDA2zdGBclx1MDAwNlxmRz877ICULlxcb9+OXHUwMDFj2knOjIKyja07XHUwMDFhY1jmoFx1MDAxZclcdTAwMWPwSWe7/Wm2ds61mJXpZFx1MDAwNpQskCzOdrBoaKCbyVx1MDAxYTPkwZFcXO5zr+82ZY8gR4CsXvRdXHUwMDA3WGKHYFx1MDAxMnvtZJVcdTAwMGKKbXxTL1x1MDAxMCrw7f7crZbzQYuNkZM9s/GZXHUwMDAy7CNcdTAwMWSzSixcdTAwMWKBa1x1MDAwN3l/w51cdTAwMTk1bFx1MDAwNlwiMy2tnJNcdTAwMGVSIWdcdTAwMWJZcKbL87bnTk6T/lCXJkBcdTAwMTBcdTAwMTIhXHTlVCiaTKpcdTAwMDQvuehabo7WXGLNjff7SlWUI7jwrtpNXVx1MDAxMcc28ybw2KCgj2eXsPFiXdO9bUpMwiBcdTAwMWL1XHUwMDE0hDeTdJ7YKdlcbvxkXHUwMDFjR5RZqoldL3TNXHUwMDFkS7wmYVx1MDAxZSNcdTAwMWSTqsPJzcpKXHUwMDA2tZ+XzpBm5ZSQ2FNZzIBiLzjFLvVleDyKXHUwMDAyObDA+N2DqVx1MDAwMW4t2M3YbHvLjbFfUCNz62JNI3KlhSvA50trTrb4XHRbJuL2mIhTNVxivPi0S6fuaVBcdTAwMTRpXHUwMDEwRToz2lx1MDAxYsN0olx1MDAwZkNig9bAbOvqTMzU3D+uYo/bTWl6VHi86FxyXFzgXHUwMDE4RflE1m2/XHUwMDE3Z1xyySeliW+19VqoXHUwMDA1WeB1Vlx1MDAwMWvFK/y6Oulhb79ap3BvUF/CWmBcdTAwMWJo1rZcdTAwMGZ+pKUkfayiRndcdTAwMDZOQ5z4XHUwMDEzXHUwMDExJn3JlrxcdTAwMTL4afLB3cp2qolSPj6dpkWEYjyB8e7qQFTnIXdEptC+Jiumk88uhjhcdTAwMWKvXHUwMDA2K3d43FRnYUDuy1x1MDAwMp/b5jGOWsVZtIJ7lE2tr6h8T1krtjmwUtE/N0IulCOB66fDJcdxXHQn5ZI5s0fDRJ1ucI+KqMOAmVxygFxy2I2j1DTFWnFcdTAwMDBZQJLL/jMteZxcdTAwMDIud+SKjb3d7Zt9PkaZXG4rhlx1MDAxNkKJXHUwMDAzn7FcdTAwMDCe7MeFo+xXeTNZ4vrK6Y9cdTAwMTfS1lx1MDAxY6nWOFxuPKq2XHUwMDFhLD6rzm7YXHUwMDEz1+JCr+KEMzbokWgzqnW6tYxUO4nTipuMw1FOYJ6aXHUwMDEyg35JRClv0Fx1MDAxMo+uXHUwMDBm2uAsLMStY1xi/cnCXHUwMDE1l+iI56MlLVx1MDAxM5y8LUqnMYB9i2el01x1MDAxZtjSNlx1MDAwNL5kXHUwMDExuVuMtcdcXL1tgSlcdTAwMTZwf7nB90FJ2Vx1MDAwMPtcdTAwMDN2VFx1MDAwNPyo3JhcdTAwMWMgvPOAXFxOXGJSW1x1MDAwNcftatybylPg4lxmjsLGbmhl0Vx1MDAxN1x1MDAwMMk+XHUwMDFly0jZ7DfYZs+2MFlRMyjOjIh4OlxyVbKM2dlYnEXoQpw0JKdPk2zriVx1MDAxZa17+nm2413AQtHjisig7WepXHUwMDA2WWCpoMmWwiDrSld0ZSBQyMLeJ/SeTbnSVPdcdTAwMTFcdTAwMTe7myR2lcHwXHUwMDAwUJ7S5vJKrVx1MDAxNzNcXMxcdTAwMWTDztbEnHdULkpcdTAwMDCrVY6IftqNXHUwMDBm8Wi7IafzPKC8pil1eSOVxiHaV/zUXHUwMDBlStSf0svI4si2f+TK/ipd1/quyWrnNF5WPTJEyMhcdTAwMTLPQO2BY+CIaT7luZ1H81VcdTAwMTJcdTAwMTdOmO5cXC51tMWc00a6RCZNcjRcdTAwMDGv/f+IOo/tSJkoWz9cdTAwMTBcdTAwMDO8XHUwMDFi4r1N/FxmT5J4XHUwMDBmT39R/d2316qBXHUwMDA2KimJiLP3/oJcdTAwMTMhXHUwMDEyhUV6v9uSeSfJOrdAsVx1MDAxYoDPWp9+LYhKXHUwMDEyXHUwMDA0JvW6TFx1MDAwYpZcbnsv+LRQSPh1qVWqrKGSvjSlyt6mN9NcdTAwMWVf5WuQbmC6RFJ0SC1j9YE3KPnn4/w7dZsj8Vx1MDAxY1x1MDAwNWpccjyt771+1tzEyTbv5Fx1MDAxOZwvcm+NU/hEVJ9MVlx1MDAwM5TRJ1x1MDAxOSO/RNz8NFxcLmAoXHUwMDA0bcJcdTAwMDLA8pC/V2pcdTAwMTZzqrPT//U6paZcdTAwMDRcdTAwMDaZ5u1cdTAwMWZccv/MvrvkvfrgnpaA7nVVPYIoXHUwMDFhYrZcbryt0YNTjfSUpVJccm9+XHUwMDAyW/jbZLCuWFx1MDAwNX49u7ZQQde8upeXP4G4X4apXHUwMDFiQ/t7OVx1MDAwYpJUgiFbdGylXHUwMDBi8iz/hfpcZrvuiTj9+3Lvs5hO8s3WJ2VKXHUwMDA1vs3vd1x1MDAxOephr2mprab+k5R53Fx1MDAxYfluZNFcdTAwMDFgaS7U49SWIV9qtUy+NvLrZerVXHUwMDE00mpcdTAwMDbjp7Sn+OH09OJU8oexRqZn16HXRnsqP32Ca/nzKoJcIkyKz957cYZe00jJY+WcxSdtKqlbXHUwMDExgM7qR2a3k8Cu/eM3MSu0zL94pmU0PsqnYD7ctjOL444tzJ7Aqd7c8zXe46B3XGLtP4JKcSrTXHUwMDE18YjQXHUwMDFmjotuXHUwMDE3XT92+1hcbmK+7GuhIbOpPIPXXHUwMDAxXHUwMDE2KVx1MDAwMlx1MDAwNvxQRP6qRHZzVPlcdTAwMDNcdTAwMTO7gez6zb9OxEpDlMr3Muysw2PUW7ybRF8lb580U3hcdTAwMTlPv2GaRfvH7IluJ/TGZJHFL6aHN3xZjFx1MDAxMDBtK1x1MDAxZiS+jDrc21x1MDAxYn/e4mX+6mHMubfIzbL52/n+1iWnXHSLXHUwMDFiupQ1j4+1w89cdTAwMDfPX7Lkgr6J98hsUUIxltaHXHUwMDBmvo3yXHUwMDAzvjdwTlx1MDAwM2RveGaBtVHKxTdNs1x1MDAxZjZP0EZBxKNcdTAwMTQ5XHUwMDBi9zHjjz+pssH0dVGC2IRVmSr6LqhcdTAwMDBIXHUwMDFmyUyKvFwivYJ7Vfz06mdcdTAwMGVcdTAwMDe/XHUwMDAwiH3FSFx1MDAxN23HXHUwMDExPsCVXqeJ/X7sXHUwMDA0XHUwMDFkXHUwMDE1XHKV4kF4iTQ3V1xyxlx1MDAxNaRcdTAwMTXJXHT2QUu6p/x5XHUwMDExbnav4GBaaHCkzFx1MDAxZTZcYpzfp8cvXHUwMDA3Q1x1MDAwZodo1C+8zVx1MDAwNPdAK1GF6Vx1MDAxNYpP9rw8Nlx1MDAxY8VH03RY4LNdP5HGxUtcdTAwMWVTqkKS7bLIqehcdTAwMTbKXHUwMDE1XHUwMDE3M2ruWpgnuY92iuqbXHUwMDFkP1x1MDAxMPdcdFx1MDAxMdlcdTAwMTCoaTDkr27JN2SSSnqS01x1MDAxNctvXHUwMDAy6PPXt0Lto/eWdyqxishccrNcdTAwMTkxXHUwMDAw7LPLXHUwMDFmXHUwMDAxya032rUu8K0wkeBlUbG/XHUwMDE5Wfw1M6VIP+HWcIeacHI/3UpcdTAwMGZcdTAwMDdcYsd4XHS+hVx1MDAwN1x1MDAxMn+9UF+Bt7cnsIZcdTAwMDO8XHUwMDAy8+9cdTAwMWNAtttW3NRcdTAwMTXl3vqReOfgXHUwMDAzgjSOb+3kW1x1MDAwNDZcZoqIXHUwMDFjg2i8Ib+hIfhv77aMKI/cvzJm/PhP1uohM3SYUe9ccmOz69DM+VtfO+XweENlNlx1MDAwNdErNY0vWKFcdTAwMGZIXFxcdTAwMTkxUDOOVEaR6p+Xl6GlXHUwMDFmiICKULDqVlx1MDAxNcNcdJn5ertcdTAwMWOq9OE3NWSgQDjLpORcIlx1MDAxOabfX1x1MDAxMlx1MDAwNf1UwVx1MDAwNjbNmdVcdTAwMGbT0m/r6nQ+OsRoTa73cYpcIlxmVFxc3FvQvFx1MDAxY+BXOl9QRT1lmFx0MZ+SJqTTa61cdTAwMWMtY4J+dNH4tlx1MDAwNPKjwVx1MDAxNlxcIz1ccu1iOXeMiLdFdmvyXHUwMDE1LtWUh1UwXHUwMDE2aW7/zV3q/lx1MDAwMv7NXXFcdTAwMWTrXHUwMDBi767AJlx1MDAxN+5cdTAwMWaPrWSPcy9vX1xiZrNfjW3q3y9cdTAwMWP5XHUwMDFmO2i8950p8ceu9Fc9ev2k36AnvYlcdTAwMGX+x2lr7zdeLzL+XHUwMDEw6Vx1MDAxZF9/hG2xk3GMsMNcdTAwMWSP6yOIT9WY5m/6Yc1cdTAwMGaFdNU+OcXcjGR7poEueCTb70VW9Vx0MHrLxcSPqpFcdTAwMTc9e1x1MDAxZo4lsLh8n8BRm0VcdTAwMWNcdTAwMWGEpJbZYD6lXtzq7HkrXHUwMDFm65fsxZqCktcym1x1MDAxZXwvYzFFNqU6QFVTi35cdTAwMGYl1GuNo0GPgNBfkVx1MDAxOduBWenZTOhcdTAwMTbcLi6PQI+OSJ9cdTAwMTBDuFJ4JL9dTOJyisPtXlwiaLguXHUwMDE5XHUwMDE5+OvNsVC//VN4f3yHztvXxX2RxTp3ICz5XHUwMDE4ODQnXX2Ficl7Y34rK3Bf16nZnFwiXHUwMDE5Za6YV5WTa+0ptcby9SXpSpObXHUwMDE2KZOuVVx1MDAxMlx1MDAwNkhcdTAwMDBGdVI+kFx1MDAwMvD0nXu6g7Ktw6X4XHUwMDAw5WE6XHUwMDEy8rE6XHUwMDFkf6ms4/a8dkFcdTAwMDZhdIv0j0LwXHUwMDFiP/9jclx1MDAxMk2fpm37qebUXHUwMDE4LmL/prxbXHUwMDFm9vB6XHUwMDE0XHUwMDFlelx1MDAxM6dcdTAwMWJcdTAwMGXdPFx1MDAwM1tcZtHwXGLwzOr67vWyJZ9Y/9tcdTAwMGLbYL+vNYiE1Vx1MDAxY5mpXGJv9LlK6oCy/pBccjzSXHUwMDFm/4jO7znmiHJVnlx1MDAwNEdOJiqsXHUwMDE2XHUwMDEy55vW2Gpnvlx1MDAxMlx1MDAxNspcdTAwMWZnzNmYkWZ4KIPEIFx1MDAwZTp611WVyFx1MDAwNlBcYo9kh79E5DhPmVx1MDAxNZaLPr5jiLB38j9sxKTKXHUwMDFm31jzj+fSL1x0Nvfrodv4e+TzXHUwMDE3XHUwMDBmRjExPVlSXHUwMDE4XHUwMDE2wCH9euaOXHUwMDEwXHUwMDFhId7dmiGZivzXp7pcdTAwMTdmpVxcmoBJhoZsi+zurc+MzZVGwd8m32BcdTAwMWUlLDG0nIBWtmBC3uDoLy+usDJcdTAwMDIthf/4YFx1MDAxYUB3/Fx1MDAwNW2yv87LjeJXQr+PkHOcq9RNNiQwpbupOVx1MDAwN09ldOXhl1+fXGLtTMlZsTgyhV+mbptoLV4gYnWwXHUwMDE22+tcbr80pkW+w16g6Wy/TJHhaofOja7sdPew0Sz9KmFpximocMJFVONccsv8xFx1MDAwZVE/WKMgtIKoPSu6w5VcdTAwMDaFb/qP71x0XVx1MDAxOKtcdTAwMWRcdTAwMDDTknVcdTAwMDaiS4GXl9Lb2DGE0WTFLFxc0qaJ6ca3Qr19KGpstFx1MDAwNp+LpL+sr4xw0z9cdTAwMTevlDQhjm2rXlxuK+TG7pBcdTAwMDC9KUfyM162Ur+2MOAmg5+DXHUwMDEwjYxvTD9RWbEt8p56OWw/vlS3Vqq5KMtcdTAwMGUv5dv/27+J0lxuw5+iXHRsI4aUNupD4btcdTAwMDL+TJJcdTAwMTeEZa1ZLv08v8JcdTAwMTNj0eL3deQouFx0rlx1MDAxYlx1MDAwYs5WsZvrZVx1MDAwM1K885lcdTAwMWTQ09gwmiBcdTAwMThFXHUwMDEy1Fx1MDAxZoT5sCGzOjBcdTAwMWGiJGzjxuk+iO8/LOPGfldQ+sfHfrdu85ZcdTAwMTGOX1xcitA5ilx1MDAxN1x1MDAwMTt+XFxcdGOx6iv8+XxcdTAwMTl2P1x1MDAxZMmgiU5r29BcdTAwMTVjtmpHXHUwMDFm0ChUiPa7f9fZ75K/XHUwMDBm1NfU6X11gcvr/ShYi1x0XHUwMDA2l0KUl8EjpjuJLmyH9H2GxHn5/ltcdTAwMWKnZ3BccoeX3+8om1LymXbdeZOVzNHpXHUwMDBmYlx1MDAwNs5ww9ryXG7SyFx1MDAwNWDtLF5Vrlx1MDAwZsdMrKCLLDVcdTAwMDUgof1g8zCtb8fsv1x1MDAxZlx1MDAxOCx98ZelRTQyPtBcdTAwMGabZVx1MDAwZVx1MDAxMTcxXHUwMDExel33dadSdnNh70CYXHUwMDE5rFxmcv+lU2ZlLdxmwmBcdTAwMDBcdTAwMGVP/ODxWnpXqGDTZLzas3h+XHUwMDBmyzyYv2zc0ylFhKF3Mv9//3SY84ZiXHUwMDEzcmHEfSa+p1xmNaBcdTAwMDaS2Vx1MDAxMOCRzFrizNhcdTAwMDWfiFxyj5NcdTAwMDRcdTAwMDHbVMBcdTAwMWFcdTAwMTKYXHUwMDE1aYaL9/XW8N9cdTAwMTZrpvVcdTAwMThcdTAwMGKpxW/X7uJlqEZRXHUwMDE2vXl15lf+zKf4uKK4aj/NhebFhPG6ulm/XHUwMDE3XHUwMDAxLFZoVFx1MDAxNKLaXHUwMDEzY3XNOq5mojNcdTAwMDCFXCKqXHUwMDFjMOrj9/MuXHUwMDE0XHUwMDFlou7halx1MDAwMptcdTAwMTL3y0fSkXvy31x1MDAxZs27VvNjXHUwMDE16G9nO2z7mqfcXHUwMDE3IfP+wplcdTAwMDV1ZC/Ho8Wkd/jJ4rGOULKuXHUwMDFmybjK1kxY/2xcdTAwMTSza8mbqF+ecmt3Z1x1MDAwM5pcYqpThKNW/jevV/D7Qvrrv1AuPetf67FcdTAwMDDwXc3csTxSTNWgt1x1MDAwMFXQPOtcdTAwMDeKYERcdTAwMDTrX1x1MDAxZuMg+PvTfmaK9Vx1MDAxNa89ObppI1ZqXHUwMDA1TzPCR+bbV/Pbc8J7g1x1MDAwMzXFOoplXCLI3apcdTAwMDBcdTAwMWJ071x1MDAwNHkzwrBvNKpcYnl2fIX4WFbBbbw79CsoIGZMXrlnhzerIE1ZOiWBKLxyXG70yaaRTVx1MDAxNYdkwpS/XHUwMDFl5l2K25Lqdmz8dlp98NBcdTAwMTjOcMbJRcL9flx1MDAwMzWs5Mrgblx1MDAxZLx0sFx1MDAxY5whXHUwMDE3vo1cdTAwMTLvXHUwMDBmSLpcdTAwMWJcdTAwMDZiW/B+V1xijFx0XHUwMDE1RXJcdTAwMWWJVTdqJGFcdTAwMDKqS4FQzUBJmU8zTl3tKvJcdTAwMWSZz6rVXCKizy6wTOL7XHUwMDA1hUKwp1x1MDAxNDlUdFxmw4mZXHUwMDBlXHUwMDE1dotFyoj8czBMYJAhj7R6ompiXHUwMDFlzrhfbfRie8fUrfBcdTAwMTBxudWOSKGzUTYm1tnHXHUwMDBmUkNcdTAwMTbQ1ym1cbGq/UhcdTAwMTI0XVx1MDAxYTo+XHUwMDFiZ0RGP2xpQVHHa+r0tGVJXHUwMDBmSkrnyFqCqq9tyYAy7StinG2qjiXzZrxMQHuQXHUwMDA0NyCQI7aIclx013Nm+z2Wxk8pUah+KIP4r38jy5BDROMo8L5yqlpd3uBcdTAwMGJcdTAwMDNcdTAwMTlcdTAwMDV3x575NqA6+Vx0MsjExe9cdTAwMTVcdTAwMWJcdTAwMTJcZsHp1DL8T3TE3JqKXHUwMDAzXHUwMDAz7IBlP4R/LNghvv8ufGk62S7q13+LXHUwMDFjxUzJzHj7XHUwMDE5a5M4pVx1MDAwNLzQXHUwMDE3XHUwMDA1yWtU+Fx1MDAxZVxydYxE4lx1MDAwMklEXHUwMDA0mlBo2o5cdTAwMGbO/GVqp5FwKeHNcJe9RaGUbF9cdTAwMTbyoTGq1MWRQoliU1x1MDAwMay+cejkKKsj7S5cdTAwMTi9Lj+WtKw8PFLxNDPbv14+ieOn5IDStcnz4PDo9NrvrDBGs1x1MDAwNlx04NSnOFx1MDAwN0ntco5UNlxyc3szu3k2J480d1x1MDAwYs3x3yFcdTAwMTdQ8lx1MDAwNVx1MDAwMucknpiVbtcw5Fxmm5V4XFxreZj8jCxmZVA3Ykx2XHUwMDE1ry8hY1x1MDAxMlx1MDAxZdjpz2ffWFL2kHdcdTAwMWX24EOIwMn8odlOsGRcdTAwMDT8hVx1MDAxMVt3K/9+eZREu0NYo06cY7mVXHUwMDBiU3Ffjk2CR8+q81x1MDAwMPpvXHUwMDFhxEQ47Fx1MDAxOcPS+qlni1x1MDAwNtmiSm1cdTAwMDGIKFxm7aexXHUwMDFmM5Az/2jpnFx1MDAxZL4yskdyb20lNkZPllx1MDAxNuV5dKngXHUwMDA1XHUwMDFl6HvZwkVsg1UoZT41h+/k+Vx1MDAxZVx1MDAxYymnXHUwMDBiWWgpnmFnuSRUXHUwMDEzYCZ+16phRuq1Ynbs4JQtnsNcdTAwMDAw7lx1MDAwYiBcdTAwMWGLm9TJNcG5j23eXGZcdTAwMTmxdVFH/d9edrVLn9HKXHUwMDE1XHUwMDA2ZdBmN8/ka5VcdTAwMTU/XHUwMDBmeohKS5c+Ob/FaPf06aNDt1xcjlx1MDAwNofA+77cx8TqzeLJXHUwMDFjQ4JcdTAwMDdaXHUwMDEwISP/2nQ+tVx1MDAxZiZcdTAwMGakM1xifG39kJfOuKNTLG1cdTAwMDeeX7jy1sdcdTAwMWLKPCesg+jwpyvmWeo2TcOcSyhcdTAwMDPiRTyIXG7/js5cdTAwMTk/fVx1MDAwM/GTw98vcVxuKTdcZkXa6pWEslx1MDAxMWe703O7XHUwMDE4JVx1MDAwYveWIK7MXHRcXHt3XGKrsruOWq03hPxltz0wMItHpJjumeZKr2e2XHUwMDAxO0NSRp2CrFx1MDAxY1x1MDAwZYNkNC92XT/WXHItUyitv+D+aDiAmXAy0kY49GtPW9+AOFx1MDAwNMVuzWo4Y7Lm3YjIymGxXGLTTUpcdTAwMWFcdTAwMWamXCJcdTAwMDRZnaGe6eP4N89Z3nxMUnKRMTE8d3+Salx1MDAxOXwp7Wc/OWjb4uznJCPOya9puFxuZqx6KWBqKLLxKbjsy6N195nBLlx1MDAxNEmzXHUwMDFmvfPZ4PHDQdRcdTAwMDJcdTAwMDBmlkgwwjuO+D1cdTAwMDbDV1x1MDAwNLqz/251e41cXDvghdH3bHqAclxmXHUwMDFj7/2/ZofM/3pu56KyxbwhXHUwMDE53lxcXHUwMDE05DxcdTAwMDNDXG6Itj20qdJb5LXsM1BYcneLV7I4ws0ygEFMVSU4XHUwMDFk+op275Pg7lx1MDAxYbxKuM7qM9VcdTAwMGYzeCwyn8zDtjGmNWTG4r5Lh8BdXHUwMDFmuX9wXHUwMDEwXFx0XHUwMDAxTkmydfTpVsTwob1kWlxi+UvKetBSXHUwMDA0mkZcdTAwMGKbqlx1MDAxNl5uXHUwMDA0XHUwMDA1n65cdTAwMTL7+JuehnTJ0l5RQm5AXG5cblx1MDAwNMNcZmjVXHT7ppo83v1cdTAwMDSOgOY0ttGmNuJ7TY/VyVx1MDAxMbhn8jvJrLeHb8AxvUQpbN54kvYycJNvXGZcdTAwMGZcdTAwMWG2PVxcvLF5XHUwMDEwj2Zh0Fx1MDAxNulcdTAwMDT/vXv7iKacblx1MDAwNVx1MDAxMb9AXHUwMDFicz97oGz1XHUwMDA0SsI0/jy1XG72Mpkqe6LBdvNmKNZ/vVx1MDAwYmlISMRcdTAwMDdcdTAwMTY2XHUwMDE0QN7roVx1MDAxNaSTzHBcdTAwMGJcdTAwMWX79/VCXHUwMDExeOilh1x1MDAxMEdcdTAwMTlWt6r/OifSRUxcdTAwMDFfynj6+3nH1uZ2z7Mzt0/qwEe7flxyZlxy1peTcDQuYoVcdTAwMTZiV0o94XVdRoksQnel1Vfjb8CGXHUwMDE3M9lRhd9feVx1MDAxN/3M4+X07ja3XHUwMDFjf5GF6G6kw1xiQFx1MDAxYtIwXHUwMDExXHUwMDBlY1x1MDAxNJTATe+D51x1MDAwNI7Ea0EwQz/H9FBq3n7rRPDZ/ao7tLdcXFx1MDAwNCqDYs1cdTAwMTIoX6VcdTAwMTcjvYdoJFx1MDAwNILFy1x1MDAwNffoXWMp8aOUxM/YsFx1MDAwMY1cdTAwMDXog4loRkqirEuoxt9usVx1MDAxZKxKUZQti71kw8bpp1nRjeVcdTAwMDDOXitUwVujhPt77G1QXHUwMDA1LGyLjzT5OqXHVmGJxWxajE75RtpcdTAwMGbZp3nVaYdNY7GiTaxcdTAwMDVcdTAwMTf82DuTXG7HfIRcdTAwMGaU9DpccnlcdTAwMDTweshXoUFCllx1MDAwN9uCTr+j5zTqkydcdTAwMTNArXDomVxi8uCdXHUwMDE1y35+IFx1MDAxYrf4XHUwMDFi0JhFsvJcdTAwMWJtXiRRn4c1qufhvtJCzIGGXHUwMDAyd6BcdTAwMDFFaOQ3g/T+Llx1MDAwNlxc1ybj9vSISvgp5Ihccl5QNjzagPrRmVeiZbdcdTAwMDNcdDi3mZPNXG6OzaVbhEJFaD+Q4JCu437vI12vfbZP9tfDtb/ZwjerXHUwMDFi7/n1W8ZF0a1/v6QrVGXFNf6dXHUwMDBiSHpJlaT+1uucL9BaXHUwMDFhvLdopWby6FXJ2yT9k4BDucztz1x1MDAxZdz1+ERFV8OiV1JcdTAwMGZ2fCdjfTNMP1x1MDAwZqq5miCx5Jks41+MT8Grep+7NekhQ4VcdTAwMWElc6iLNp+Ni51g5CTRjZfQ3FxcXFxccvi8U8l2J669R/ksXHUwMDAy+6VZXHUwMDE2qmX/j/35eFx1MDAxYftcdTAwMWZcdTAwMTTpIKJPmyFfleDs4rl30Fx1MDAxMJzXTlYyb13D5NXrom5ccrGP4HDF0bJcdTAwMWEn+dOTXHUwMDA02LPk8jD8WKo8KJL7UbvNgH/pRyvBlPvnnb8oXHUwMDFjzvNA6O+vfKOvd1wiy97kLem3XG5NRbJHXHUwMDFiuTHl0CtFdOI90Fx1MDAxMYHgy1x1MDAxYo9eXHUwMDAwc707h7VcdTAwMDPuyFVhMEWv9Gt+jO7I9pnIJr+R0KixKF/bTPSSLM9cdTAwMTLYycsycCZXK35eXHUwMDAx+DFcdTAwMDd9r49cIv66gMmv3YY9XYiI6K//XHUwMDBmXHUwMDEycEt6NfM3QljbXHUwMDAzrYmgUPfGh6fh1JP0NUhcdTAwMDDaXHUwMDA1XHUwMDAwnyW8RNTCXHUwMDE4toWPiVxcZskhf7Qn5eNcdTAwMTJLJ1x1MDAwM8Mu9a4xbkI3b1x1MDAwYoFcdTAwMWVIXHUwMDFkU1x1MDAxMT+yo21Oa620OVQuN1x1MDAwM8/nTsJ7IKZcdTAwMWZdolx0WNFcdTAwMDBEXHUwMDE4cFEwbVxm66tvXulcdTAwMDL+ZDf8XGK+YmWZjfvi11xuebZcdTAwMGJcdTAwMDL0XHUwMDE19mDBp7dCwFx1MDAxYmfRXHUwMDE1oLxU97JI1PppyD/POZlcdTAwMTNcdTAwMWFvnb/omsBcdTAwMTA1XHUwMDFmZneG3Wo1L/zozmbumWYuLpVcdNhyM7WV75NcdTAwMGVcdTAwMWRFi/3bXHUwMDE0XHUwMDBl3ONZmE9cdTAwMDWAuoNUICB/fd3oXHUwMDFm0EQ+jDB8MaKaQG3NNu9E8VtLXCL+NFPPQ5FcdLpcdTAwMDHpjf1reyfG6nBnZfLfLyRW6SBpRDbMXHUwMDFiWOuOXHUwMDFkLb+i36a/Q0VcdTAwMDfgkVx1MDAxM6wxm/I5tLSctFx1MDAxZt/vXGKB8GPfv0ObsP5cdTAwMThMeDqDR2eaaWFi5LNUPz18643oUlx1MDAwMGzjt1CabpNccuVQJLRkh8HeX23IXHUwMDEw6PGEY4c+ulGuS2JBg1x1MDAxN5N6Qsrp5GuWXHUwMDE4XHUwMDFkfchuSP87XHUwMDE5UHJcdTAwMTbqpFdcdTAwMDNCZZQt1lx1MDAxZJFuqKJDt2ZPs+XAr1x1MDAxN/nUXHUwMDFkx7z9JVx1MDAxOVx1MDAxZNLHLrJ4zKpcblRvXHUwMDE5aGja7k4nZvVuJ7ZaQb9cdTAwMTHCXlGkn2rTgufMjOboniBcdTAwMWJe8Vx1MDAxOL9kXHUwMDA3jZBm+6A5x0d9Oj+S3bokiZxI9Vx1MDAxNVs5N1x1MDAxM/khaepccpiwxJA8OzxbXHUwMDA2XHUwMDE3JlBlXHUwMDE2ks+xcnTRU1x1MDAxMd28XHUwMDBmVkHDokiph4CmTC6tNiGydaBIXHUwMDBmL3vnpzJKXHUwMDEzcPhkUaB7Wb57XvZoXHUwMDAz/bVHw6NcdHFcYvj9QCtIa91cdTAwMTXkdkbK5jtn/849LeLRXHUwMDBl93WYXCKy2T1cbsXMIE/o30aO/IiaXHUwMDAykkc+0mJcdTAwMTbAXHUwMDA2zangXHUwMDA1XHUwMDBiXHUwMDBiUXp5vN5cdTAwMWVtjzV3VSZbm1x1MDAwMkg+eTDjn1mvkjQnUNJcdTAwMGWrgqvNkmDDTSc23pNfj1x1MDAxNidcdTAwMTVcdTAwMTFqTOR4PmCVdqvPJKB05ENeYIY3XHUwMDE56Vx1MDAxNShcIvzlXHUwMDAwmdO85UhcdTAwMTlu35joXHJ2/G4sseHKYlx1MDAwNoHhnqXdR786XGKnJfw7Ydm4MG1cdTAwMTacLVt7WcVcdTAwMGVcdFGzpmdcdTAwMTLkWJi3hL2z5ejihyhTaI8zLZIoqFx1MDAwMshcdTAwMWNcdC2LglVcdTAwMTlcdTAwMTfCJl1fXHUwMDBi1Fx1MDAxNDP9ZHjAwlxc7lJC8sKakjnCz1x1MDAwZmBMzjJcdTAwMDSPXHUwMDExs6inVD0hxlOPWGItQnNcdTAwMGaCZE60a1x1MDAwNzFhUTG2tVxyeUppXHUwMDE4XCI7oGqZlFx1MDAxMuOW8PH7u69cdTAwMWbxm2ouyWvlZ5Zcclx1MDAwMXkptJDmXHLe+y6nLeHSLVx1MDAwNfUg/iGFoGVhjepzXHUwMDA2ilxcyiBccrrsXHUwMDEw5u/+XGL9crBVsM2U/1x1MDAxYc6XXHUwMDFh2VxcmHjvXHUwMDEwYJ5cdTAwMWaSXHUwMDA17Fx1MDAxY5Nu9udyK1x1MDAxOVx1MDAxOYmGPixcdTAwMDJQK1PgkFx1MDAxY1x1MDAxNpMt8eZcdTAwMGaUXHUwMDBiXHUwMDAxslx1MDAwMb86bvpdarBcInqhX+5VaPhxXHUwMDBlK8yI+jH/Xlx1MDAwN7fnuVx1MDAxMl4pJUKTXFxcdTAwMWbuO0aI8YXtX1VSNLZ9f9uK95+9cP7uSkpDxuhJcspFqsV1XHUwMDFhpI9cdTAwMTTT+Ewmr1x1MDAwN0lcdTAwMWZcbrZcdTAwMWF0I9vkTJK0XHUwMDAzvDSaklrwXHUwMDA2q31cYsyYZaaoX1x1MDAxMVx1MDAxNFxio81cYttcXFx1MDAwN/DJXHUwMDEyYMxcZlx1MDAwZYs4vPkueibBhHWpblxujexB5KlYRk09d4Lzi1WV8ZlQJT3/M1x1MDAwMsKNXHUwMDEzXHUwMDEzvVx1MDAwYjb0OK8nvNmteSaISbbFuOHz1dPjqNPfzX6OI2mpXHUwMDFkXHUwMDEywHi3XHUwMDBiMdfyp6omwFx1MDAxY3KtTTBXRrdcdTAwMWF36eCa85TKVHNUc/HDXHUwMDEzXHUwMDFl4ttcdTAwMDJS8lx1MDAxN/WL8Vx1MDAxMHPngj29lyh3XHUwMDAwjWWqh7I9IXLlvF90f5l/XHUwMDEzXGJRxH6Q6HOcK9RBTaWiXHUwMDExdFx1MDAwZVx1MDAxY4GWejxcdTAwMWLzOuvwXHUwMDA2SVx1MDAxMMEviOrIfabtrrurWkqkjmZ0loJ20fPmXGZeXHUwMDA3XFxcbmnyeVxcVcb6z+yByW6SObXZ3y2LTusvYz6srO3JXHUwMDFiP//OtuFJ8vQ/cvhbL1x1MDAxMYKCkENcdTAwMDXy3URgWFx1MDAxZln332f6uExdX8PxvVx1MDAxN6zmXHUwMDAyXHUwMDA3vlx1MDAxY1x1MDAxZTzbLLrbZznWrs6eXG5qvklSXHUwMDFib3X4NVx1MDAxNPyg3MiG31NAVjxcdTAwMTVixaTvlKdcdTAwMWalXGJwPe3RT5yn8ziwvnyScEapSNK3evZFsMaeLVx1MDAxOcDDXHUwMDA1NjE0ztbzXSjzIVx1MDAxOC3MaCksXHUwMDEweVx1MDAxM1HhbVjoXHUwMDFhfohoJO03PiM8Ur41tE/H31x1MDAxNUQrn35YrppcdTAwMTPn76wkOsqAsCx6PMTxPkhI5LVONGnL98btTTa78S9OMKJcImFcdTAwMWPOUf1cdTAwMGLejoaub552UKSpiC+fNZhpXHJW7meVuIBhXHUwMDE0qnZcdTAwMTFcdTAwMTRcdTAwMTLuvnhLj8s7hnKnuCro+Crm1Ok0XHUwMDE3apt0r8osddt/JcU5XHUwMDE1PJR3zFx1MDAwMFx1MDAxNXNcZl6eXHUwMDBmqam+ljdvXHUwMDE1ovVhXHUwMDExkJV12Fx1MDAxNzmV1T1Ye0n8slW2PkGflVx1MDAwZvJcdTAwMTiA4/HTtYdHgP7SXGbbP/2b7KPPKJfCqaOM3lRBXHUwMDEwq5TOKXDnd6qD93M5hYLR/V1cdTAwMGV4XHUwMDFmW3LcZ9Je1L5cdTAwMDYvv5lsQVx1MDAxNGagbDbRoldyMVx1MDAxNXaJdk1cIvj9iaVthYKd+zufzT46cNF2uEXXV46/W2VcXDzTrD9Bytl4sMmPKOdQVlx1MDAxMlx1MDAxNVx0ivx9XHUwMDAx555uRotHXHUwMDAwJVx1MDAwNcWLsjWFUFx1MDAxMrVcdTAwMDZZlGdcXI87cFx1MDAwMJqSOsBccpLgrlxmVHB7XHUwMDAz+C9QmmrFv7WxXHUwMDBl9+GLP0X76dmp5P8zXHUwMDA2XHUwMDE4xVx1MDAwMof6XHUwMDE17Fx1MDAxYrZT3SypYmFcdTAwMWaYfitcdTAwMDTkalx1MDAxZp3CXHUwMDE5fsdcdTAwMDXfZuEsXHUwMDEwrGxcdTAwMTfjXGJETD3DnSjki6Mw9EVcXOnT40dcdTAwMDZHMmfh41x1MDAwMC2z/NfaXHUwMDEz/LX2gL5CVSlcdTAwMDQkXHRsxz2hwETn18PXi7OA9mZ2Z0bnpjdcdTAwMTn8boVEXHUwMDFmXHUwMDAzelx1MDAxY3uI9CRK9kaBK+1uslxiOlfdl8ZcdTAwMDWw/nLZ+eDV4tBJnu//9vRPu+SNhtxRn8k0i1x1MDAxZlx1MDAxZHbqzI9Elsr8L/foTfpyXG7sa9HdgMlo7kAhU3Wkilx1MDAxMahi/PREXHUwMDFi+lxihkh1W1BJdpq01lx1MDAxMWZcdTAwMTeWv06NK0iFlDokf87P8VtcdTAwMWJcdTAwMDAt17ix2LJcdTAwMGJcdTAwMTmR15PxlonKtVxys1FcdTAwMWbPR87qXHUwMDAzVCjMxf7VMHuTqnXYaHXiLy9UlfyoVaEwSCr3OVx1MDAwNUe9RI7xdkhcdTAwMTR75I5B8CmnaEh9b/+yhJnuPaWcukVcdTAwMTaKtVx1MDAwN3tcdTAwMTNcdTAwMDH9XGY/8OhEtCgxM/0opmw5506YJm5Os8+kKbXkrlN3r54tSuWYaLaQ6NhgMMSfqbxcdTAwMTWZXGJnmEyNe1bTwtzlXbX47vLI9odcdTAwMWFSXHUwMDA2g+gx0UfknVx1MDAwZmCJXl0pi4puXHUwMDA0XHUwMDA2QL+3XHUwMDFkvFx1MDAxZlx1MDAxMjA6XHUwMDA3Y8FyXHUwMDFl6Fx1MDAwZijdx1xmy+KchnOGvGxcdTAwMGWrxMkvm4B9M0ZcdTAwMTcpyGL4wq+QuXNmKMpyeFx1MDAwNvJ3NuM6wWs7XHUwMDEyoFx1MDAwZU7OKb47XHUwMDFi/lDL06xWRM1cdTAwMDMol0qsP29eMNQ6eb1HXHUwMDExXHUwMDE2XHUwMDA2ia+Xn1x1MDAxMP5cdTAwMWF9wWYtalx1MDAwNiqkI0XxeJ7ev4Fn+IL6XGKTZEqLW8FbXHUwMDE58e/9L4JLKc/yXHUwMDFiZ+1cblx1MDAwNVx1MDAwN1lcdTAwMDJcdTAwMTlwJJI21/A2gFx1MDAwYuNrI+dXj008QVx1MDAxMO9U91x1MDAxZHBCZvuWzVx1MDAxNujspSG1uu7G552hU/xcdTAwMDLvT1pW1Gu7XHUwMDEx/JdNXCJ/XGIyiY7FnWkgnS2hXHUwMDFkXHUwMDAwXHRzR0fdXHUwMDA1XHUwMDA0Y6BzeJe1lFxcI9GrdVx1MDAxN3Up16zNmk5FXHUwMDA2XGaYm9NJV17l6HDWjLRcdTAwMWSX3C6iUXPaUVx1MDAwMmD9oqSB15LuXHUwMDExNFx1MDAwNOp4tleKofFY2ONcYvi33v58XHUwMDAzJeBduo6Qo4LuhsZcck0wNV80evvFgvlcdTAwMTJcdTAwMDA4r59G+Xb03zk4pnbuMzeLXHUwMDFlKeljyjS1ut5ArniLiX+gMPvG3lx1MDAwNHNS5/d/4H5nN1x1MDAxN+KtXFy+ybLxZVx1MDAxNsv/3Y93XHUwMDFmX1Xg/644aZlcdTAwMDP+lbc5Q+J2epuMPlxi6ey72e9Zj4vPZkksXFynh0l4mnhodcBuWnDpXHUwMDFhoVx1MDAxNrFcdTAwMTlcdTAwMTWWeFx1MDAxMmFpXHUwMDFkUP53ZD/X6bm73sVcdTAwMWTyU84rXHUwMDFhvmZf8mFL96/n37lcdTAwMTI0/NRcdTAwMTHz0EfVtYbDKJl6MVx1MDAxZVPqP7t80bNUTHFcdTAwMThh8adWwUlwXHUwMDEx3CpbLvj/7Z/2S0Ldq7ZwwVx1MDAxYqGFskOrWztRk9yXLkZcdG6wnlx1MDAwNVx1MDAwYlsotvgpo1x1MDAxN+nCXHUwMDAy1m/e1Uno79rFIYlRgHDEZ9ntpD1cIrJcdTAwMWEh0JqGK82QUzh34Fx05u/V7nZcdTAwMDLuMp5zcbQrXHUwMDA3QCeWnZqRv/5NSXex0TDpWfGSNveZXHUwMDA3TIH+0lwi5u88T8TcwGlcdTAwMDT9ISpKg8xnu+GS8UpC3dderVxiyirz6aihXHUwMDFkeYMljVAwNu5/Z8DFa52xZJRcdTAwMGIgP3nwTma21/6M2JnL7aR88+RiKL2OXHQ4J8dcdTAwMWNbyXm947Bqx1x1MDAxMVx1MDAwMYv1sFx1MDAwYvWeXGat945aMTpcdTAwMWHVXHUwMDE3Y0k0POL9mvtBh1eZIONcXI5AhD5bZFxm11x1MDAxMt9cblpTmDv8LyOG7Vx1MDAxMbu1XHUwMDFm/fFcdTAwMGVcXFx1MDAwZsJTXFyt2z/PMJSJZuKzatdSPSe9Z9LUvzPS9KFdz/mjZIdD3bguvYqMY7GMNf+payqsKkBcdTAwMGZcdTAwMDZ1U35cdTAwMDNLp6pIgsb6+lx1MDAwNr+JXHUwMDAz3aDJbUGXV5T5XHUwMDFirVhcdTAwMTfUm1xmXCKF0TGXJdPftWMgPDtcdTAwMWJcdTAwMTMsozToXHUwMDE0KEDTwVlcdTAwMTlcdTAwMDBHhVx1MDAxM1x1MDAxOYW7XHUwMDExUizYIYdcdTAwMDXufkNcdTAwMWTuMyDXceg4KJ5vpqPUeidccsx4NeR0XHUwMDE4hmOYj++ygdWJTKCeaJKzwoJ0XHUwMDFiqky4jXSjpG9eglx1MDAwNE5cYn2/b5xcdTAwMWFPXlx1MDAxYXWLV+w3NlOVXHSKVuTw//OZfrZcdTAwMTiW4SwjXHUwMDEwi9CRTlxm13ZcdTAwMTYoPcMlSGrYa4NcdFxcXHUwMDE0rKlcdTAwMWH0sO6UXHUwMDBmpTSKwS7GTUwvLT5cdTAwMGIhmCZcdTAwMTjv/Fx1MDAxN2R5IFx1MDAxOVxmtjJWXFyBeVc5m7zPXHUwMDFlXHR2mcJcdTAwMWVv+0dAzJq0SGZcdTAwMWRcdTAwMTjNT1x1MDAxY2tso785cSxVXFyVP8bo+lxiXHUwMDBinJfYgvBcbqm52MmpqNNcdTAwMTR3XHUwMDA2XHUwMDEyXHUwMDFkXHUwMDBlcfW7bVBn21x1MDAwYmLpi1x1MDAwNVlcdTAwMTm0cqNi1ijuXFzCqZpXueSjt1xykolxQlwi5Y7jMFx0M1xuXHUwMDBiIDmXXHUwMDAz41x1MDAxMfnLb6DAUL0+XHUwMDFi7iE/hoU2vEA+0LvmwtrJ5WJEJMwjg7R6rSbcYVx1MDAxMkHPRnZe7ZqhrdnW5u/OSXrIf6BcdTAwMWHB4jXTmsDeffGw7eiA2Zs7n+orQYqtOdVrsMP9ydTtQVMjv61cdTAwMTC5vlx1MDAxYzfEL4dcdTAwMDJcdTAwMDBCtYL9XHUwMDAyIVtcdTAwMGKvyLHtJoUgxfBcdTAwMDRcdTAwMWLxmFx1MDAxZmjq1EVinF4hvcY3glx1MDAwZYGJYr+GVppbXHUwMDEwr81cdTAwMWFcdTAwMDFcdTAwMTVQyeHx62Vsyy3Yi/Pfe1hcbt45ltfZXHUwMDEzXHTTUaGrXHUwMDAyXHUwMDAwj1x1MDAwN/5cZpWEqIX7XHUwMDFmXHUwMDEzk8D2OkrW4iqKfihcdTAwMTW34dBcdTAwMDDfsZflXHUwMDAyflYnRWn/UkW6+c5Byst2p9daX56NYCPJkktcdTAwMTKxX8Eypa2A0/jPZyPObFx1MDAwMaZVgVd7ZtmHWtPDN8VcXPC0MrdtXHUwMDE46PFcdTAwMTfq1zJyNNKpL+1epFx1MDAxMvHxue/7Y9TVmTlcdLGhL7hvv5LgXHUwMDE45WdJy/Wpi1x1MDAxMlxy0I5H17+9diRiXHUwMDA1XHUwMDE5Yr6C1cHmeXxmxlxuU1x1MDAxZHLKv1x1MDAwM3x2SE7UnKNm+4zEpPxcImmg2FUyZVx1MDAwNqFmiVx0XHUwMDE0XHUwMDE2ZnT6i1x1MDAxMuBOkVx1MDAwMvdzlU+K1ORcdTAwMTNcdTAwMDaL4OX3XHUwMDAyJtxaUTjPQOdcdTAwMTCLXHUwMDFjJzq9+EjpJuaoWqWa4G1geIRcdTAwMTWqScbjgTvtUFx1MDAwNE5cdTAwMWU/XHUwMDA2iId2bYmIXHUwMDAzXHUwMDBlK9TFXHUwMDFkQWWmxFx1MDAwMHFcdTAwMWLwgGNcbrX8IJD+T1x1MDAxMz38UyBe9ZlfXG5cdTAwMDJjpchcdFx1MDAxMpN/R1NqyPOL8lxcc51cXPRcdTAwMTKaMN7VZdLup+y/T4tER4ZMzFx1MDAxYnHPaMEkcu9cdTAwMTCQbCcwtsFT3lx1MDAwZT2Ui9/kLaCfKUhWlip/qjGzRoMzMiy6XHUwMDE0wYk+rVx1MDAwMaH4PZ35g050QLGah8agXHUwMDFlXHUwMDFmm9XyUnQjiDuPRVx1MDAxN2Kbovl8SuCTySTvmvBcZiHvcVL0qp+dKukxT/6SZ7NcdTAwMWLKXHUwMDE29ZCzxpNcdTAwMWXENKlcdE8+b19cdTAwMDVcdTAwMTO2i1LqrVV+XHRcdTAwMWKulDOIZ+JdXHUwMDE4v1x1MDAxNf5F+O/TuplcdTAwMWbqnU9Z6YdcdTAwMDQpUKO674/7986O/M50oiGhNvDq0X5yz/RR5ldz7mBtwINcdDlcdTAwMWF9WM/bxvWT3lx1MDAwMfz0b048KvC/M0BVYX2b9PD6XHUwMDA2/2AntkBJZYnxIV7XhH6zsntcdTAwMTJI/Xuu/SrWP23YksX9Quq0XHUwMDAwqnr4RZBLrUpcdTAwMTP2k4YqjETfOFjFXHUwMDA1a1skaHZXor70KfRcIpRM2UT7MV9cdTAwMWTw355cdTAwMTRddJtcdTAwMWS6wSB+ZqCjZ0leOD4yXHUwMDEyXHUwMDEyuuRcXCG2uHBcdTAwMDSEqjYnXHUwMDFmQkT9XHJy7a6cyuVcdTAwMDSKsoxPIIalk+qbq91u8659nEuTXHUwMDAwfPuxXHUwMDEyUdCAqJ5ms8E05LolXHUwMDAxUO1cYlx1MDAwNECpXG5g4pxcdTAwMThSM4nU8Vx1MDAxNVx1MDAwYnK3r8i4giPmXHUwMDBi3CguwHKafOO9XHUwMDA2531AXHUwMDA2yoW5+JbYXGZbp7ftKog/7LKt0Fx1MDAxOFxmLF5cdTAwMTBcdTAwMDBE9uWX/zlfbFn4Xy9cdTAwMTjOJHdccmFzJI05+nO4JsBzrtbI/axe1Dslqr5cdMSlRppDkM9UI9BcdTAwMDGsl0Ot1aqG9lx1MDAxZTd/Z5Bcclx1MDAwZWZEee5cdTAwMWRcdTAwMWVcdTAwMWbq6tJSvUHXYCoyToyge3jzV9YybYDza1x1MDAxN2vzRVx1MDAxZVx1MDAxOY9gQHdmIVxceIz8oSWUXHUwMDE2maplfu65zlx1MDAwNiZRTEhcdTAwMDY+MWfljFx1MDAxZM1cdTAwMDeuQGlSk8JQ29ituErtjKEojuJOXHUwMDFhI7NpgEJcXCSrXHUwMDAwSjwj5a9JPmjNXHUwMDBmkVx1MDAwNNuJ/E5H9lJcdTAwMWPnj4OYWIr6ZEjybcGPq8RUxFxml+SRvuChz2qNvM819cu+co5cdTAwMDEreKpcYk2PO4ZcdTAwMDGwP3felo5cYl/OXHUwMDAwS7xM0C+PXHUwMDE0fJzgL1OAbZp9i8fcXHUwMDBijYkvu49cYndcdTAwMWP/ckwmzlxmo9X8R1x1MDAwZlwivPTKseSgdafBYtB1snvB1HpAppredP2rJPeXXHKZSVx1MDAwMZXi1k9PiN5ClM2nwFVcZlxyf8zBTfx4wy1buFx1MDAxNJ/wVkvZWFx1MDAwNNr4XHUwMDE3M8C981x1MDAwM6VHNIScqqE+wSQmXHUwMDBlMW5cdTAwMTgj3MdcdTAwMTZ6dY2tf7H4ZZBZoTnKnL8kvJKjXHUwMDFlXHUwMDA2joNcdTAwMTDRW6fLXHUwMDE1Vc1wruC7/ufXSiW6wyzfYaGO9HTm69D1tJ7iKkb3goO/n9nLmalaRW9cdTAwMDM0YyPf9yElwLg8jHyY4KC3S49us+3iQVx1MDAwZTKo+qzkPE0lZ4d+1Vx1MDAwNDlJUEyxZMGlLnWZkVx1MDAwN4qsS0RWN2LOLUiCrU9f8WLPXHUwMDA3uSVYn+SCUiuqePPw92XLgFxu8f4yXHUwMDBlXHUwMDEzipmPu8858lx1MDAwZZrsZS9cdTAwMWG3Vkysr6ZcdTAwMGVcdTAwMGUoiFx1MDAwZfhI5997gFc+XGJH/WErR8eAXHKcS1SXLSXm4puXi1nYqFBOXHUwMDEws0VcdTAwMDSvjjhcZn2IXv5gT7+trTPXTFLo0Fwiyl/Pj5qXvbA319pcYuhvK15u4TDqy1CTyoQ8XHUwMDFkf4vV32VNwvt1fGFcdTAwMWaE5ViWWZ0geVx1MDAxZIxcdTAwMTiDXHUwMDFmbLjWoHu9SJBcdTAwMTOmVX9rXHUwMDA2UjBfoo0/6/fcL1i1XCL01jbSeJnD+MFJ+vZbWmw/bn7FXHUwMDFlcsVSXHUwMDAwwWF1KFx1MDAxOTNUSu5RTFNRvfBcdTAwMGVC8vtsqSVbdjozXFyHoVvnXGZSNOLDJiHWW9WpUFuGXHUwMDFiXHUwMDFlPdlpWZvYp0Y0XHUwMDA0Sv01UGhpXHUwMDFivzFoSaHW+EFcZvdx/Xpuv3BgR7Z36vdhlXTYeO7TwpI+XHUwMDA2wM46wvDkXHUwMDFmm8fZXHUwMDExt6qRtuJcdTAwMDFBZpWZXHUwMDFkeq37UOGp5Vx1MDAxYmPQ393iJeSullIsoYjJXHUwMDA2s1xudPd/PZZDmsc1QaC7r8lSuE5cdTAwMWRcdTAwMTYo/GCXpNVcdTAwMDKacOVcdTAwMDZl2FZqeMlOXHUwMDE39vB5XHRcZvRgonxZZXKLgTt2XHUwMDFkxNOSg/GAXHUwMDAy8blkjYlV44RR6lD5r6+cgrSE0ZdjK1x1MDAxZFx1MDAxZP/OXHUwMDFiTmjyXHUwMDE2dV2wXHUwMDFirlx1MDAwZuqDaFx1MDAwZSjM/Hn0hFx1MDAxYqOj6VsyoVx1MDAxM1x1MDAwNFx1MDAxNtnau+qfXHUwMDEwXHUwMDAx1Fx1MDAwNqMlSirGZorp7Dx4yd1jYV4xraPyI5V4rlx1MDAxYz2xXHUwMDBlf5/9ZSPUXHRcdTAwMWQ3z5jM486hY4x6XHUwMDA20yf8XHUwMDFkPYBOXHUwMDAxYLQzXHUwMDExXHLiTi3uRLFlXCIy8Fn/fIVcdTAwMTPisl2DXHUwMDBlXHUwMDBmwd9cdTAwMTGNfJhYXHUwMDE23dt35ED49kZsh5LZX1ZcdTAwMDWvyeG9XHUwMDEyW87LXHUwMDE0lzuYythL2fZ3VlOtXHUwMDEyXHUwMDFmuFx1MDAxZE1gWkurJmDTg0OZcUpdTOfiZWSHKDH7q9uR+jCpZSqL+fdcdTAwMDKmk22Yl25cdTAwMDEhi3lheu8ro1x1MDAxZDTOhOuhTDZGk228XHUwMDFhi2Jbdv1iSka3XHUwMDEzXHUwMDBmtNZ6P4+ATFx1MDAwZS9fj1x1MDAwNSgxXHUwMDAwV+Kpw5KiXGKcKk0sXHUwMDE3oVOUqDc2VCV1Y58r7nqygVxuvc7eTGtd2OXDODrIXHUwMDE2Nlx1MDAxZn06a/+WzfhcdTAwMGWDyaXzjmdzl4GwSY5k9M1squDEK+VPq0m1Z/+ZXHUwMDEz3KErz1xmPFx1MDAxN5hHzu1vXHUwMDE1f5RcdTAwMGb8YsveXHUwMDE4/FxmuHdjjaU/XHUwMDAzb1ZcdTAwMWH4p9A16f/f/6FcdTAwMWGXiq3dyVx1MDAwNnxcdTAwMWTSO7iLP7biXHUwMDA39e8mn3dcdTAwMTBZbsbW3SPdO21+3lx1MDAwZlx1MDAwNW5ITns3u4nfnaBcdTAwMDdF4uQgO7zIp1x04f31tm7d79Xjy06BcCq3d1xcaFx1MDAxMkXR8OmapYs8q3BoSNHpXHUwMDExjqj7gFx1MDAwNXMjpnCmhVfzXHRwXFx8XGLyflx1MDAwM1x1MDAxNHTrkNFEXHUwMDE48z/j/YZ25W/HXHUwMDFi7lx0UVx1MDAxZCSzn6Gc5kv0WLrC2FgosyBttW9cdTAwMWHMeL5cIvmjRFxceCuOqIhcdTAwMWbeXHRF98qoXHUwMDAxWfSTTvd4M8juXHUwMDFjT1x1MDAwNpCZg9qW4lx1MDAxM5gqSKH281xc6VBl6bS/n1x1MDAxZLm5JKy1K1x1MDAwM+3eXHUwMDFic1x1MDAwNjx4iMNcdTAwMTdIf3N+pshzN/r38lx1MDAxZMWDwE7cgczRlp4/1oVcdTAwMGZ6kOxkPknpX77rI1xc0eicNjHra8z5mH3pQFvsKs+QtJ5acMqIM4QrXpzCJaDauUxebS3m0fnoXG7DZNysXHUwMDBlzYVcdTAwMWHUZCxcdTAwMWRcdTAwMTY2biVcdTAwMTNcdTAwMGJxQYBcYtBcdTAwMTFUrPGriWjh+r/wNWXFoUTyJvEjU6aqRL2oLHOKfFx1MDAxYZlKYOsyp7dcdTAwMDLamiiht0Zfnlx1MDAxM+Roh0tcdTAwMTbwY41AfHb9XHUwMDAyjjykNCHbXHL+y+rM+4z8UVx1MDAxZWFm89FnXHUwMDBiXHUwMDE3Xcs20E7Y+o080+x+vlx1MDAxMJuoh+XS9O9ifW+idrk7jFt2flRccvFcdTAwMWPrt1x1MDAxMHHou5lFabb+u+O4RTaCI0BIOrlcdTAwMTev2JyL7lM+XHUwMDE20fv5qI9Ki5Hx2TL9dDhcdTAwMDTD6lEoLuFVrv+7Y6f2lZr3v6XZOyRcYtC2q/eHbe70XHUwMDAwcaZcdTAwMTeQY3dcdTAwMWGgfuPEblx1MDAwNEjZ4NpcdTAwMDKtjqYgYquXpsvGNnppXCKbW0GFeFx1MDAxOOovZkCb6GHsXHUwMDAyXHUwMDE1ZD1YrFx1MDAwZmFGaNdcdTAwMTDDUnTR1eymj/OJPI9IXHJuIbzZsFx1MDAwYublvm/Bjaeb9F3tQIe2n8ysXGanuoa4TVxyXHUwMDAxwKDpXHUwMDEyRtgp8lx1MDAxN+RcdTAwMDNiw9lcdTAwMDZaSTokZGJcdTAwMDNcdTAwMDRy/pHM9v3kxXPHXHUwMDA2vlx1MDAwMoVFXHUwMDFl+2Thi0qlfcV1XGbyNZdwZFx1MDAxNJzNNTv90tq3go+5+Ns1LjBw/mwlR6gne1Ppp01ccqhG+mt0wn2/K2PeRVxm4lx1MDAxMD9S8FxiPepcdTAwMTdcdTAwMTRcdTAwMWHpi1x1MDAxNvXupWbFzH5tyH9Xqlx1MDAwYlx1MDAxOfbr2Pxls46xcFT+lHyeoLjCfqdKW5bd3ZWwg9xxbvdh05KiJGry5EuRw/jookv4w1SnXHUwMDE5L4pGOvRLlFx0XHS4SI9cdTAwMDXS3fD6XHUwMDE4Kz1cdTAwMWLXyonRxUh5aXT4PVeEfFx1MDAwMF1Vl1x1MDAwZskzgPnlSvxgXHUwMDA0zr99JpDB0vP6jiuMsVx1MDAwNlr/MT30pjRcIkZ1/Vx1MDAxMedY/Lxyql2QOlx1MDAxMjS9XHUwMDAwXHUwMDFkRVeALv0hgIPN4N/xm1x1MDAxN7I9n2SFlam44XzSW03ljGVcdTAwMGZMX9yA9kakTJ5cdTAwMGWg9Vx1MDAxZvN38XX//L7deJaU7k12RmtcbojK81x1MDAxNiAhX1NZea3wi1x1MDAwZZu0u/dcdTAwMWV1lp3dT+1Uo9iaK7Sjzb8z4cuKVVx1MDAxN6rgoG3/gmX7sSy2OXZcIuf8+oy6XHUwMDEzv5NcdTAwMTFcdTAwMDCcdDS/J/stXHUwMDFhXHUwMDEzcEXici9cdTAwMWa/z8LLZ1x1MDAwMlx1MDAwNDlccvpcdTAwMTYuLfyIXHUwMDEyXHUwMDE4ubZW54+dod5cdTAwMDNRcWJrV6DCc3dcZpe5jKcp24ZqXHL8PLz6iZOOWL2b11hFToZ+op5cdTAwMTa2bWgh2euhXrTLkGbrTsFcdTAwMTVcdTAwMWT+yTRccnGMavlcdTAwMDJvosV4UFbNPL6iWFuaglx1MDAxZVx1MDAxM7qftKRcdTAwMTRvxjVVO7MgMlx1MDAxNFx1MDAxOVx1MDAxOVx1MDAxOF9fOlx1MDAxMutcdTAwMTbfXFww/LRm5dBcdTAwMTfvJf+nkUZcdTAwMGU8PUJ0Ju1ZfzzMXHUwMDFh/KP57mlims9cZsZAoIRUtedcdTAwMDC5XTRI1Ku/Sc5cdTAwMTBccqLdXHUwMDBmY1xuXHUwMDBi0zia+smEXHUwMDBib/X0N5Q2uZB1MvM+VnFbX1x1MDAxMyQqO6Fl4MLaT/Etio5lNlx1MDAwMpm18jNcdTAwMWPF7lx1MDAwN9d3/mLaz35cdL5h6n/vMtEhqlx1MDAxMpipNrXcXHUwMDEyXHUwMDEzJy6z0ZbwfPPpMeTPXHUwMDA3X+nnf/eaTNx5XFxcdTAwMTEgXHUwMDBluF6X1n8xMmk8XHUwMDFmXHUwMDFjLtFx3kxiI1epvba0zKdOXHUwMDE3XHUwMDA1sIZOvkXLhW3iXG6b6oI2xbaZyPa71ms0ymZvqzFeRSOodKBcdTAwMDc2oeY07VxiYIT+60tSMVx1MDAwZquZpWQ0XHUwMDBlnKmAaW75JoNcdTAwMGZcco5Qd+PxRlwi2ObfJak70v3vzjJcZrVk+7ewiilcdTAwMTHOXGL4lUevb7ZO+Vx1MDAxN2iGXHUwMDEw1FVcdTAwMWU1yyGc7eFcdTAwMWLvbIb6KVx1MDAwNb1cdTAwMDCdJZVeqjTCalx1MDAwNWztJFGyTk0mXHUwMDEyrPrcV6vzXHUwMDA3nSPX3J4t8O5kXHUwMDAz8Vx1MDAwZZmvpKS8XHT4ZMf+paJbooaZfIJcdTAwMDEr4Fx1MDAwNMbxnX/8f+98bG3fyY15WFxisFxcX/jYn77slSN+7Fx1MDAwN2FnrIfc06eBXHUwMDE53PKj6vlLOJG4oIJcdTAwMWZcdTAwMWHjXHUwMDExUdbOlVx1MDAxNPBcdTAwMTSzgzrAuZJcdTAwMDC53Vx1MDAxZr1boFx1MDAxOP53XHSBnZxcdTAwMTffXHUwMDE1MIV0XVKfYVx1MDAwMEp9w99w5cYoUoZ6XHUwMDA3XHUwMDEysXHNXHUwMDA02d1cdTAwMTnTO5z5XGI6XGKBjFAnLNtL0oLNZWfOhlB449/dXHUwMDA1J+YnT9bBentcdTAwMTGjzKDPtUcolOokfX1oQ6ZEjTFNQueDIVx1MDAxNTm+1a/P8IB3Rrh5yi1ILTKfYVx1MDAxM8o+p8m/TyfOXHUwMDAxZ5KFXHUwMDEyODU1s5BcdTAwMDBJhDTolEV+/cBcdTAwMGXiPKgqOpUujlx1MDAwNGou+tdXWrqPWafE6t7fXbCGyaF2cVxc7UK3LL6MLDxSkunCJVx1MDAwZcjaXT94/2WD00w58LiY48tNQO0z/Lhlw5M4XHUwMDBmYDhcdTAwMTUjTzRbfkxcdTAwMDM6mOCu/Fk1XHUwMDE5T2mcXHUwMDE2a35cbpXhw6cynmSbyFpB1OeN7VxiW5mvxFxu4ZnjN8rvqLNrlvclLFCnXkvrLGYz86k/ld/cOqhJllx1MDAwYoZ5blxi3Fx1MDAwMP1dqkkvOLxgv1uozkhnetO7+KZcdTAwMDQmXHUwMDAwofG8XHUwMDFmXHUwMDE0N9j83HBcdTAwMDRcdTAwMGXcXHUwMDBimH03V8JyXHUwMDA2rFBDxUdaK8I9bWc3cLtKSkv/YtTK5tL2o490XHK+aCpKIIqFjz2N6ShwXHUwMDA3XHUwMDA3XHUwMDFj01x1MDAwZkI3gVx1MDAwZoHYXHUwMDE3iHfKfajK1KRJXG7Ti77XXGKJJdf4w1x1MDAwYlx1MDAxMcBcdTAwMDZcdTAwMTj8Qu+oaoWty526z/RPy1x1MDAxMUmobf7H6LZ+eipPPsdcdTAwMWJcIneUtHtcdTAwMTVDxnh6XHUwMDE5clx1MDAwMUx4XHUwMDE0O+dcdTAwMDOe/tlPgOZ7ZqIxhVJGxcqpr0BQZiXSPlN+lFxiXHUwMDFlSuU2s7Yua4pHdI3OejRcdTAwMGWxN/HOKHlcdTAwMTSDXHUwMDE3UDJcclx1MDAwMmhRZmdcdTAwMWUkP5R61Vx1MDAwZq2KPoYpYVx1MDAxZD5F1Fx1MDAxM9ys/N2KgZi1/mW/XG6GaV99tLiRqJVvW5+6Ns6GwcxcdTAwMTZDteOX+c7KfddcXPY1xvFUe8FcdTAwMTCZXYf9XCLEnIT5Obecklx1MDAwNPpcdTAwMDOLyGQ5oSNmj1xmglxiXHUwMDA236pcdTAwMWNsK8dR2sJp0SyKmMAljKNduFx1MDAxYz61cFx1MDAwMzF4XHUwMDFhMPPDsmGgfPZcbmdyXHUwMDFmisp2T80wXG5LZvDT5VxmrfJ2k1x1MDAxOL1ltukv/C5IirTmXHUwMDA0XHUwMDA3vTvP0lx1MDAwZlx1MDAwMWDDz9jXoaqTokg2ulx1MDAwNkFDI3iwMz7oXHUwMDA0T1x1MDAwNlx1MDAxMPimspOMOmDlXHUwMDEzXHUwMDFjUSNaeI0xITyJwnTl9PI8S0y67sBnXHUwMDExjlx1MDAwN7mAilx1MDAxNPGs61x1MDAxNkm0pE7xsYq0zHx0gfvqoVx1MDAwZv7d7SRdS1x1MDAxM+NcYlwiXHUwMDEzXHUwMDAwsJdcdTAwMTeJXHUwMDA1P6AqqDHJXHUwMDFkuILVukW+y5ZcdTAwMGUl8P1IzVx1MDAxMMc4W7k49Wamu1JcdTAwMTK1SKrqorTGr3eKSFZcdTAwMTRqe9BnkFxct1x1MDAxYVJ7ZtYgXHUwMDEzQVx1MDAwMIPX5XOjnEKN/thcdTAwMDM11jvzdYT54rebPJNYhuR3tVx1MDAxZDiqbFx1MDAwNP24bkE/XHUwMDA2x1x1MDAwNWC62YNRlXSPtstHuVx1MDAxNyw3olx1MDAwN1x1MDAxOGTAK4/V375f+YxcdTAwMTSXlb/4QamQzUZ6ckQ705Tvr8I3eswnMVrvXHUwMDBm3WNJam9cdTAwMDdW2Fx1MDAwYlx089tx9Ja3XHUwMDFkwZps1XJMyY1cdTAwMGKxXHUwMDFlbf1cdTAwMTjhXHUwMDE58DBK/2XBT8swv2f4PudcdOZf0iSdWiZm0t6rL1x1MDAxMftHVm1cdTAwMGVR87yDq1C7QVBcdTAwMWWWXHUwMDEyJd9xTC4svmmsX2Mopr1cXFxisM1YQarla4HMbeZ0PzNiXHUwMDA3O3JcdTAwMGWBp/ZcdTAwMTEs5dPKZJlCXHUwMDA1Lnqz6KwzXFxcdTAwMThVPED9/Vx0M1PUPsmYbit4XHUwMDAy5Ei4XHUwMDA0wtfMM4NcdTAwMDS6ll7Ol3ND2/OHaIA31DSJckhcdTAwMTFnXHUwMDEwq2NlT7pzY3mVYETYs/Uhxic5vvVzd1im4jRcdCbHcfluXFxDXHUwMDE1ltDzm5wzY99LkmTsjtjYXHUwMDFlXCJmyFxmXHUwMDAy2J+LaiNcdTAwMTPS18ZcYq6e8s1Ey/WWcfAhxHfkWoBcdTAwMGJSTr358WtcdTAwMWSA85XkUIC7+V1cdTAwMGJcdTAwMTRS2SgkyfBcdTAwMTfdQHKtXHUwMDFmeFx1MDAwYptSl+uyXHUwMDA1b3BcdTAwMDBcdTAwMWV0wVMxnVx1MDAwMnWWilx1MDAxY+XdWLFDm2bCXG6BslbF/MutOio7J/qdxShcdTAwMTP+XHUwMDFme/+xXHUwMDA1KbJsXaNcdTAwMGZEXHUwMDAzrZporVwi0D20XGK0XHUwMDBlnv5cdTAwMTJ19vl2ZZ77XGL/qE5WjpFcdTAwMWW4udmyuVx1MDAxY3Byn1K+tpdcZl1cdTAwMDWc4oPgo3CXZZXbRnVcIo2OridcdTAwMTeD6upcdTAwMGaTXHUwMDA2vMlXnOo4KtT4S1x1MDAxYWRzu3ysJmCc3ZhlJkkw7Y5cdTAwMGK4ejQxvte4tEZeYT9/otKkwfTpt85Sb2zHXHUwMDExaa6EXHUwMDE2s/17l1KILlx1MDAxYlx1MDAwNbzN4KI7IzM2cKVcZlm/sGJo/cVtaYTQX1vyXHUwMDA02Up24rFJK5xKfVBcdO+oTlxmIOba3azmVHcrnmirpFx1MDAwYumrfPkrQu5cdTAwMGZcdTAwMTHImXDkz4T7T9RQ+ePRiDR9LOQkkpenWSFShOAx49WMXHSBWSzjXFxcIts5qZ2YVMvKXXe/XHUwMDA2M1x1MDAxYVxiuFx1MDAxZjaTdoE8cPuFqFx1MDAxMurRfq3yu1C9XHUwMDAyrvdMkW1ccsKKeMFcdTAwMWX1WFI6mGbOeFx1MDAxN1wiidaxLFN+vWgkbe+hXFxcdTAwMWa3Rn56kPUx99qv4ULcJ5chLMRCRe+ydNtqS845g3tYl0/LXHUwMDAwY8rWXopcdTAwMDBBrDVcdTAwMWSiz72RQJvK/CNZnlx1MDAxZNIkvWbjXHUwMDEz7ebncz5cZpCG6Dr7XHJTXHUwMDFiVNTBp2vvXHUwMDAwXHUwMDA18dOJM1x1MDAxMqS8VZQ1XHUwMDE4mtm+iyMgzNOCXGJhnlx1MDAxNjH/xMpcbm1iXj9twclcdObgl9DxXHUwMDBiodfC5msv9jtjXHUwMDE0/fTSyP1OOFxuYVx0y5FcdTAwMDOnRJhgn9qJvGnq8KBRyMW5X1x1MDAxMWrutKnmXHUwMDAwnyomZzQp8a3WO1x1MDAxNFf6K5BJXHUwMDE1XHUwMDA0XHUwMDA2adRoO1x1MDAwM8hccrKaoXXsm8Ze2WOx3ilrsqKsXFzfXHJYXHUwMDEyOl2PnCgnQyRWmpTDvKWeeb1Ee89P4Vx1MDAxZNdgyEcwk8m3T31cdFXdYpq85Fx1MDAxMJVcdTAwMWVcYlx1MDAwNOyyQ+FcdTAwMDNcdTAwMDSw21x1MDAxNUlcdTAwMWJJzeHGT9xk72LR30hXZveKXHUwMDEzXHKbtW6B2GCUPbjogVx1MDAwNU6Sg1x1MDAxNIUpPVx1MDAxMjqoXHUwMDFjQ+FjkS3fIJvM4NtcdTAwMTh7lkfKzNiZYEiS21x1MDAwYtE2graU7j0+xtqP4nCq/PW8NUq3b3/udNhcdPlcdTAwMTeeNlx1MDAxMVx1MDAwM/I2XG7smiu0O7zENOqLu+1Wai20XHUwMDFmNu/F9k2Dr//JXHUwMDE2651QzHeA4U+GTYPz6yHau6hcdTAwMTmmXHUwMDFiXGZVuXHiqCapuZO8I1unRVxiusSt02/L/Vx1MDAxY/lcdTAwMWWI49iRqo/f3eSKv8fqQ6c+XHUwMDAwWNytPnj8+1xmwmjx/Vx1MDAwMeBcZopcdTAwMTefK8h2+5VHU8yC4vlcdTAwMDZ5XHUwMDEzxFfdO1xuXHUwMDAzuLf65VRa2FafoMBvuEqihuXVXWD6d9NcdTAwMThkXHUwMDE3Vq9cdTAwMGKs6mr/oGO54FVcdTAwMTCqZiEkb7iAOYbyVTid0NF7ME3SU7ulu1x1MDAxM+3PR/OR9fOZXHUwMDFjSSPHRIhkXHUwMDFmozOC3uUmsNVcbvLQ8pbZclx1MDAxMWdZTGibhp9IW2t7SbolhLrYnHFom8ixMr9cdTAwMDdcZqunJT+9w1bhXHUwMDEzzegnKWyzPYuoXHUwMDEyhUY6WWS5tiwvbJCmXHRae7WLen+V6amx0Vx1MDAwZt388W5cdTAwMDLQmILWNl9sXHUwMDE4alxmm6+wXHRD+/W4oe9p75XKI07YZe2HMt3b7GDze1x1MDAwN/Blf1x1MDAxZfFq3OT6elx1MDAxM5s1d9q3XHUwMDE537PSJnbbseTcXHUwMDAxk1x1MDAxN1iWqSyZ7Vx1MDAxYUHXjkQ+TVdFXHUwMDBl81x1MDAwNVx1MDAxYvelgVM2q1x1MDAwMlx1MDAxMFn6XHUwMDA2qHVZpThKXHUwMDFk9uLxglx1MDAwNk4v9DdcdTAwMWSqMCnSXHUwMDBl3zpcdTAwMGUzXHUwMDFhVI8zZlx1MDAxZK1vx1dcdTAwMDDzgSr1XHUwMDAwd0/nmafgw2ZP2uVcdTAwMGL581x1MDAxNpex+DTQj4dfj01cdTAwMTNIXHUwMDE3mNLPQ33gPJDbgJxcdTAwMWMyYjl0f65cdTAwMWL/SFx1MDAxY86OMz5/fuvI8XI/wiyl5fNcdTAwMWFcdTAwMWOZNf5eNC+BXHUwMDE5bmDyXHUwMDEx208/e1x1MDAxNyq99+WaSppSIJR27mtq1WhF51x1MDAwNTjsIEemcORcdTAwMDRJeJZcdTAwMGWbmFx1MDAxYkC3XHUwMDBiJ1+ayq6VJ1x1MDAxMrxcdTAwMTEguaFogvAtvGFcdTAwMWbIVya+Sj61Ylx1MDAxY/U4XHUwMDAwZVx1MDAwM3pYvHmff6fQLqlrfpSUTzjZXHUwMDBmIbDknTv3iytQz6Fcclx1MDAxMozCQ7qDgnLKXGZONSdZXHI+4ltv7nD9wFhCOFx1MDAwYkYhK5z8c1xm+Fx1MDAwN+6ixU/5XHUwMDE3ejU7Nu1gS1x0QCunXGa2NFx0YcIkZiFcdTAwMTf5XFz01V1oXGaK5efkOZxT8dh5wU8+aUp5XHUwMDA35cxcdTAwMTj7/XBCxZ/coVx1MDAxZlx1MDAwN/i4+C1pn6lsjPJcdTAwMTlEks1zsHGs62DeXHUwMDFmbFx1MDAwNS48XHUwMDA231Gu23WzxpmijG50tfdcdTAwMTjKo7yQXHUwMDA3eFx1MDAwN9JcdTAwMWGOyMUp1U5fcEkgXHUwMDBlg67B9sCsLvBJbU7CejqBXCJWZ0qT6zTZ+Fxuwo1/UJgtXHUwMDFkXHUwMDAxXHUwMDEzSsXgXHUwMDBiX7zzXHUwMDFkW6LlW2qWXVx1MDAxOVxuradcdTAwMGVcdTAwMTg5wkDpNuNxXHUwMDEwd0z1XHUwMDEwb2z8XCJfXHUwMDEwdzHwsnvv2cuNXHUwMDFjU1x1MDAwZazyI1x1MDAxOFx1MDAxMDRXrXZcdTAwMDU+R702WC3jXHUwMDEwedZcXP7JwvNcdTAwMGV/qVx1MDAwNH3kRMgqqWBcdTAwMTX9I3OFclx1MDAwZvfjpKiLSrLh8m6Od7BNnFx1MDAwZpBavpZcdTAwMDFcYjdQ3jq1XG5ST/jp8Vx1MDAxMDyT8ohn63ipJlx1MDAwMGbD8Vx1MDAxM4qB9lx1MDAwMX9cdTAwMWJcdTAwMWZcdTAwMDbQtuj1XHUwMDFil5VeeUZ7XHJcdTAwMDM2fELCXHUwMDBi5Fx1MDAxN/2T/Fx1MDAwNJJ7OvHiXHK1XHUwMDE1KbX0ZWtbsSOLRp/hr1x1MDAxNi6L41x1MDAxODzXynmdiVx1MDAxNSFcdTAwMDB71Ka5qUdQMarsb54071AjKlxmc7DVXCI986ukXHUwMDFit92lwJ5OOvYk8fRcdTAwMDBcdTAwMDSjbD6G9qZcdTAwMDJR3LPLdI1cdTAwMWYviFZcdTAwMWNcdTAwMTLaXHJcdTAwMDCK6/Um1OUxYnmtRNQj/JhZXby+VFx1MDAxMCzTc+snXHUwMDE1nTySXHUwMDFkU7KQL3x2jZY+Z1x1MDAxYkyqXHUwMDE4Uy1HXHUwMDA3W1x1MDAxMMn2lpFdeUlukUc9Nbf7XGJOXHUwMDFmxLO+krgrXHUwMDA0ideVLr/irf7SmNa9bY3OJztY0tWLXGaMXHUwMDA0XHUwMDE5XHUwMDFk01x1MDAxMJ6cXHUwMDAwKYR9fc+vx3KXISOSjlx1MDAwMizWuTBMkZAhrlwiKIj3XHUwMDFjS/swvcrTYoet6+VFkFx1MDAxY/5cdTAwMDN12EB+NOpcXEhLePDfYVx1MDAwZfJ7Zlx1MDAwMZhcdTAwMDdcdTAwMGW7sVx1MDAxZrM/9vlM0lx1MDAxZNSSr8G93zBzdm99WXbQkTHXuUXQoVx1MDAwN1x1MDAxNG3bK3dcdTAwMTFpRniDvWAxVYqIjTl9XHUwMDFlsM22qmv1fEWLM1CatZAmXHUwMDBljFOLnPVcdTAwMWGIR4H302/ynJ4meJ5cdTAwMWVPRShYlEpcdTAwMGXeV3tRvuPs2FtcIo3DXHUwMDFkhEnq6myB+5JloKDWZEvqgvlucO3A3VHgR3y6K/+i7Vx1MDAwNlx0VTRcIpzVUYnDXHUwMDFi+Ny8W6akSiyKUCrx6LOSXHUwMDAz1uqBXHUwMDE1nndcdTAwMTBcdTAwMTXelrfeXHUwMDFk+kWaXHUwMDEwaFx1MDAxN1x1MDAxYnNcdTAwMDSGSl59U+9cdTAwMTJcdTAwMDGTXHUwMDAwlcK4q1lW6X9bzlx0XHUwMDE11Vx1MDAxNL/qh7NcdTAwMTIkzGh81FxyWY0zikTBXHUwMDExIy5AR52lxaijtfnaU8R82zJcdTAwMTO5vnBxyFx1MDAxNdW2XHUwMDFkYnxStpczrGm2RuNcdTAwMWS0v1wi/SPgXHUwMDAxWXbbXHUwMDA3/jK12VloXVx1MDAxOflcdTAwMTnlTZu63Vx1MDAwMlx1MDAxZtpxXHUwMDE0XHUwMDBmMiS6fyCjIKumS1x0lFx1MDAxNVx1MDAxNbU0opdcZpuvkzCLq2TzSVlEZrmHIHpcdTAwMDZuSlxiwslcdTAwMDSBo0r6ZtvU6vLXalCgRWV0W7iLtjFbYICR9lFcdTAwMDTEQ2nAYs+We1wi00395JNytcP7e7v0Olx1MDAxYSV2vdnNhKrdobTwY+Tl71x1MDAxY6voZc7U9Vx0z6aTn3pcYulWlbLdc0SqwNZcdTAwMTGs8HoxZVx1MDAxNWj3OIiBezpzjsde6VQ3XHUwMDE5KqdNXHUwMDA2cVx1MDAxM4t0bpqrxcPmcYd98dZ0Lp2/6v/1dt80XHT3//GozFx1MDAwMcfFs1x1MDAxZXA/4qNE69AnOqZwwE1Kilx1MDAwMdaHe5w0121jjJBcdTAwMWNcYnst71x1MDAwZmG+l4FCviyhZpRC+K99PNDZUZF2PsI5j1FoaCtMM1x1MDAxOPH3rtxcdTAwMDfF1ZQ7mJGYsdBxfUZcdTAwMWazzIy51U9qXHUwMDA0kj+sQ0K1wyOszm7OoYPvJ+fpsV3a7sXh21x1MDAxNUifz+FcdTAwMTiq6uokTzdcdTAwMTlcdTAwMTOQXHUwMDExPFx1MDAxN1jqu5yHJlumt+CrjFqkqCOtjm/30a3NXCJcblx1MDAxOCbMYSkx6XTF7sZcdTAwMGWSo7ZbbVmQPs48l9t8g8Orn0hTl5RKbPhcdTAwMTdjmk4l3Fx1MDAwNcRUJUGfXHUwMDA30l8pnSfS3Fx1MDAxMDNsXHUwMDFktf4lg1x1MDAwNVeXc8gpPaOnXHUwMDEz6Ubmq1x1MDAwZlx1MDAxZFx1MDAwZlx1MDAxZKhcdTAwMTQ85Uij8WeRXHUwMDA2Jlx1MDAxNlx1MDAwMWHHo1x1MDAwYiFcdTAwMDfn0UTpKpJcdTAwMTJtXHUwMDAzWXs8pskhcL+Iulx1MDAxZnOZlH4nMqSfgKmBZfX8mc0x11x1MDAxNFEx6Vx1MDAxNSbA0HhnMNxcdTAwMDXFY8Pd+42zbi+W8ddY5Xpsa4nJbVx1MDAxYkhcdTAwMTat+C4wspRE71x1MDAxOe/r92DJSyOu0DtcdTAwMDfn6ethWyCAXHUwMDE5zY9HP6iGlWvwqdDdgF5u5dWf0j5cdTAwMTBcdTAwMDBcdTAwMDBocl6J5KxcdTAwMThGYVj1JYieZaXXXHUwMDE0u/pxrt/MxX3wYVxudG0+QcRcbsD3/Vx1MDAxOVx1MDAxZEaNrzZ9ykxcXFufjSjgWlNRXHUwMDFlqVx1MDAxZSE7VMFcdTAwMWRcdTAwMWO5zMHDXHUwMDAwbmOg16jkbMpsgatcdTAwMWQhgVV1ve9Tkm1cYs3on7HuQMWidpv16mXBlcdDMcpwgStcYtHBkttbju1cdTAwMGYkYZk/XHUwMDFmfjruScOLffFJ4ejU8Vxye1x1MDAxZNzMcCDLcTpcdTAwMTRTpuFNT887auY9MKSK+jq9XHUwMDAz1XbiRHvUKahR8lx1MDAxYzjiqH14vlx1MDAxYls5bCz1cXq5w2a5b1tAuq1FbGtWhVx1MDAxYUXqKNREW9c0IzGdZlx1MDAxZP/GXHTIzmlueSyXXHUwMDAyidh2u71FhttcdTAwMWSd4lverFx1MDAxZZn9rlI+t1x1MDAwZVb7TsOKTflplmzFeZxcdTAwMTUsl1x1MDAwNXIs3SamnXi65DFDmjx/lkZcdTAwMTGY7t5cdTAwMWSDTohjh5dGhSDusyqVPDxcIp5ccllcdTAwMWJyXHUwMDBmWm96kXy+4Fx1MDAwNjI1XHUwMDAzmJWxYJCOsuLnkeBwpn1Cx4TeffI6xTHdeV9oyFx1MDAxZqpd3pz84excdTAwMDWsXHUwMDAxwDT3myBP+f2SaflcdTAwMTS3fYshPuLZYqbGbj7QTe2p7/DSXHUwMDA1SHxzRIigUXRPkHPrXHUwMDE2ZVx0XHUwMDE0zMpcdTAwMWI5XGbFgYeik1x1MDAxOUgoW1xcu635JJT0JYaXK1x1MDAxN2VcdTAwMTNOYC9LxHBIae9BXHUwMDE5/rG5cFx1MDAxOH162PO+RjJW6GFcdTAwMTjq3kz9sJE0WLCmXHUwMDEwmrlcdTAwMWbB4dgs5Yf2SpJL+Fx1MDAxNkPL5F6KfJXLRIej8vT8XHUwMDBmXHUwMDA3eI+wnK2BXHUwMDE1Rzd2na2IXHUwMDBlqTUy7lxir++LMFx1MDAxMC9QOFxivD5GiDuWNEKLnIU1WVx1MDAxNonUQFwiYOEuXHUwMDA2XHUwMDFjRVx1MDAwZf68XGLwNVx1MDAwYvs82etcdTAwMDU+3LXTazJiXHUwMDE2Nk/M8fX53iMjy+BtiVQvP2TSKn+hXHUwMDFmMe0nxqRi+l1aL4uBtZjrmeZlWDGoXHUwMDFm36hcdTAwMTW+dIY8bdpcdTAwMWT4sP+kLVx1MDAxZZhtRGxb2VV900xX17h99nbZ0OF2XHUwMDExl5dcdTAwMGL2XHUwMDBmXHUwMDAyiKr7UZFzrLB9rV5lXGZxXHUwMDBiXHUwMDAwtvp95vpcdTAwMGLSP1xugVxyW4alj+9o+Vxmgse6OmDZ5mi6fdDf3K005ZabJ1x1MDAxYX5jXHUwMDFmU1BZm4+X05rRyEHCXGJcdTAwMDCqMrJcdTAwMTP4YYVcdTAwMTJcdTAwMTK0KflcdTAwMWX9+83ExMRoZM7OrVx1MDAwZcBxJbtcdTAwMDZZv57e8OSEaalLc5JDl4ZyXHUwMDFlcUW/xDRlbVZhYPKXdbNccrI5672Wx0lcdTAwMThaXHUwMDBmic1cdTAwMDL6XHUwMDFhXHUwMDE5nlx1MDAxNaSlXCJcdTAwMTCP+1x1MDAwMexcdTAwMTBrrS7qrIB2QMjVh7P/XHUwMDA2/N2IvjEx689EOLH/Z/9BlprUb8RyXHUwMDE5XHUwMDFhXHUwMDAwkPfcj44v8iBFmfWi6L1QXHUwMDE2ZjRi+a6cRVxi+yzoQH/4Xj5oLe8yYfyG81x1MDAwZtdHIGzC0ns9OuGFmlx1MDAwM5MrL1x1MDAxODSSifg9MJWdgN9WN4GWkMj9nkIp9rjcXlx1MDAxN/L75o4+mYKRXCL1KiNcdTAwMTC8lC/A4ViQe/FcdTAwMTlzV/a8T1qj4Vx1MDAxMCx+Ykud/d/5Y1x1MDAxNVx1MDAwMFx0iOG/dId/vCpcdTAwMDFa9FxmM0+/JveWY879rkJcXK+cMH+9XHUwMDFhJVx1MDAxYyitX7FcdTAwMGJOxbngs1x1MDAxM272XHUwMDE1UPd4TE2fsoloQOBswpRWm3A0wk/3XHUwMDA3e9P5+ubd1dbdXvrtfSSoZHbg69Llh1x1MDAxZPxcdTAwMTA5/J42m8Z/b+bnkMVU1qlo3nml2Vx1MDAwYrEl6uTwXHUwMDFlSjpccrFdXHUwMDFjglPMw1x1MDAxZpnHlzn2m1x1MDAxZFx1MDAxZsbnJeXu7qOarId5/mF84FxiNFx1MDAxMivBkMxcdDGC8fbbrFx1MDAwN2X2+UudeFxu4yZ79Vx1MDAwN1x1MDAxZX5cdTAwMWPug6yQXaNFb1x1MDAwNzp1QzKSmMOIiKUmJqnZl3KqfppwSZnbSdfzXHUwMDE1wcTetFx1MDAwMITceLN/OUbuQlx1MDAxOCxouTVNn4Z0qzSwV82Bn1x1MDAwYpXzwE5oSlx1MDAxN5xwl3fvYVx0XHUwMDFi4qFcdTAwMDKPzoV1qighutDCRYHLKCwkiCn/lvyyN0RW6+lcdTAwMGIg8HTZ9Y/lUFx1MDAwNtaZ5/s6NC7lVopT2Ylcbp51+b7WZPuOTrr5O+3M1Vx1MDAwYs5p8Ds/3uGmStdcdTAwMDErgHVcdTAwMTDAOMEmXHUwMDEyXHUwMDAyhVx1MDAxNUCk8VqzXHUwMDBime47VlMutniKcfxDUm5/PT0n76OXgdFX4Fx1MDAxMuLghzdI86SFfIfuZqjK4jRJNuNGs3fOMnCikX6f1cyV5Fx1MDAxNL5e9MbItWdcdTAwMDY2i0fPY4TyQto9y3PWdla+XHUwMDBifszOzXo5PMhdXHUwMDA233dev9OnXHUwMDA3yqFBL4NcdTAwMTlxuPhBTYlAQZJ423X3Martd5+Ir8ft1XdW0iBne1xi0u2RLz8ugJ1cdTAwMTVcdTAwMWImf/z+6uFcdTAwMTZcdTAwMTTXrWyEg3dcdTAwMTicJ+UuTchfKtToeF/3TCqfzlx1MDAxZe27Pdyy1aphXHUwMDE47qNoYTVYjCRcdMxcdTAwMTe5+bnKs8BcdTAwMWPfOEXm6SfqXHUwMDBiNMuGW/BByVx1MDAxNqnfIXHGhyVV/tFB9+lcdTAwMWb49/aAXHUwMDBi/PjDjpfVretD4NLsXjRcdTAwMDROpVQ4vfLteonxKbzTVH6HXG5riJwslbL7bTV8XHUwMDE0OJh8+F6OKYg47dhcdTAwMTU/YYj6VIXlXHR1fmE3XHUwMDFh7YJ7/Fx1MDAxNpGgQ1V5+tZ/1yC0OMfQQlx1MDAxYi3XtHxcdTAwMDMvfS0h21x1MDAwZUx1XHUwMDBmXHUwMDExk5ym6Yg7/3Tlp5qCO6ctoLn5eqY28XvUXHUwMDE4XHLQNjTvO/Fijp4lvZdApeHrd6xcIlx1MDAwMlhcdTAwMWYlJDXu4o3h3lB34tV6oVx1MDAxM2QgJ6OqIEt/JVx1MDAwYpanb3gm1Vx1MDAwZj3zQ4lba5so2sdcXCSLufXAt59cdTAwMWNMdHXSIb45NKmGZGM5XHUwMDBl4ICyV0p/sSjDtZbjyzdW+llVrkN+XHUwMDExUIYqXHUwMDA0dzHkQJYnXHUwMDE481x1MDAxM1LIqEVoXHUwMDAzYn/LKkZXlVCfgUVRyvBcIu33XHUwMDE0SVx1MDAxYdxFSFNcbvA4RoPFe/lZYFx1MDAwYlx1MDAxNPFcdTAwMDXLvFCuaL1cdTAwMGXfljT3mCCoTKx1XHUwMDA3N9hcdTAwMGLAqtjf9MMoocphXFyXMfxcdTAwMWTlT1VcdTAwMDfzXHKPXHUwMDE0Zjra5COX3Vxu2GXg/Vx1MDAxM1x1MDAwYt2O3Eo+XHLo981ShFxuXHUwMDE083EnXHUwMDA0w5yFW48yYGFRXCI5e6BkXHUwMDBiinxcdTAwMWX8X8Ld3q1oZtOWXHUwMDA2dWtk9oaULfab3DuwVuxcdTAwMDRmklx1MDAwMfVcdTAwMWGKhlFcdTAwMWEu21xm+2uG6chssVxyM3jj9z3pNm36klwiazxjXHUwMDAyYyGSXHUwMDE4T5Lxh+SCanK/gGe8XFz1giPbTOBcdTAwMTfj2Vx1MDAxOU2eVlRcclm0S6mhNFx1MDAwNztE2Fx1MDAxZZpbXHUwMDA09fDaUY/JbXC7SKya1Vx1MDAwNJ5rXCL0c0vebPGRdFxcP/uXS1xivN04aONs3DEptFx1MDAxOMCbuU5cdN9cdTAwMWKBvYSPq/O7Q1x1MDAwNMRv7/TTW2f18FHtmFZqjkddm1xuglx1MDAxNC3gcfFE6lx1MDAxZILo+pmmXHUwMDAwpIWkLlx1MDAxN5ydfd9gkJHF6r7rJlJkKtnex5Gkn33fokpwn/90tOTJ491Zdlx1MDAxZbGo43LvWr1cdTAwMDOcYFH2O4XmJ1x1MDAwMPHyXHUwMDAwQtxyYSC6tXTY54jLotsudz1cdTAwMTJIKbLUwFx1MDAwNnjD1/d9SNNcdTAwMWH0MYPVjpJcdTAwMDDJNPp9j573Rn49NtNa4djsUVHWZfrB5VwitDOQiE7EfWWt6YGw6D1cdTAwMGKabS5cdTAwMWHC24nmxc2YXHUwMDAzXHUwMDE1fjW2lEFvXHUwMDAxYd5cdTAwMDbxgv99NGZcdTAwMTD581x1MDAwZcEpY8lcYuWoubjImm5cdTAwMDDNneJaeYldiaJ4oDJPxVx0XHUwMDExJEtPfiVLXHUwMDFl60t7WEzz5mJWI+u5rJR6p4zEJl5jQFx1MDAxOXtcdTAwMTSOYqRT0i6Ci1M/+fTb93+3/tKJXHUwMDA2PU3LXHUwMDA0XCJlXHUwMDBlot85LI/7gVxmXCIjnib86Cii2LVcdTAwMDOXXHUwMDE2kFxmlmFcdTAwMWFO0T1cdTAwMGK1caShXHUwMDAxd2tcdGLkM3i81VR4vjfJLujg+1x1MDAwMPSlVrRfXG5g4qLZcmZcdTAwMDCPvDl81U99kH97ilxuMzrim6FcdTAwMDDvXHUwMDBi8655Oz1PtuDJXHQ1siXH8XLjXHUwMDA3Jlx1MDAwN8tnXHUwMDA1XHUwMDAzn+jojE3KPVx1MDAxYt3e5tBJwysk4HE5XFzwS1xcjvZcdH47I8xcblLcLsdcdTAwMDDhf4u2+J2WP5a7INElpNlcdTAwMGZO2CtHWLCDo8lcdTAwMGJTKPPjrtRcclx1MDAxZu5cYtY0XHUwMDA3m183bIGLOjY1Yds4XHUwMDA3XHUwMDFlXHUwMDE3SFx1MDAwM5vR1k/pxI5cdTAwMDZcdTAwMDUtJjdcdTAwMTRcdTAwMWRcdTAwMTA5MkOuaZdcdTAwMDXOaFx1MDAxZmVcdTAwMDDnV3tcdTAwMDfvtkFEjahmeVxyXHUwMDA3ccXh64umXHUwMDBmJ72ofIhRwIUv2YCrreoyMCyai5G67YJpJqh3XHUwMDE4IZRzITlcdTAwMTQ73+CK0rxz7fPeNFZcYriPdLyTmc5cdTAwMGLrXG5tTpSV5Fx1MDAxNYD0+q2v78UgXHUwMDA3XHUwMDEyXHUwMDFhXHUwMDAyv71nTJWxMLHK2aMt4kvCXHUwMDFi7XI50W6wqOlDn94xKlVHWb9+n0rL4Vx1MDAwZYaoI7hcdTAwMGamSZxcdTAwMTlKaWSTr5tL8PG8XHUwMDEyxtXwhn5cdTAwMWSMdVxywe97brBDkVx1MDAwMIJcXOfQulx1MDAwMInQOcWIa3SFXHUwMDA3KENCxFx1MDAxYzo6XHUwMDAzXHUwMDE0uDZr9jBNMK9cZjulXHUwMDBm5DRcdTAwMGaLXGaWoNibqVx1MDAwZVx1MDAwNJloU7Jxr4lsR8S088lcdTAwMDdPjKhDqu3IYVx1MDAwN2JDdsPSMUjYVC9cblx1MDAwN4F8OMhDfvKYJuhcdTAwMGXGn3CZXHUwMDFmemjVvvBcdTAwMWaRk5Zma1x1MDAwZlx1MDAxZFg7kCy6zVx1MDAwNGhXoVtcdTAwMGLDXG7xO+JYaDdcbjYlNKtBPHe9blx1MDAxNXfG+Z4oJpU6MvP9MzTC++ifX37aL6A/RPDY7f4mR4tcdTAwMWUhXHUwMDA2qEmzPa++8lx1MDAxNVx1MDAwMqJiXHUwMDBl54PXhECNbUl1xTytOaA3NHmH+Fx1MDAxYrme1lx1MDAxZF9cInWV2GGL0rc1XHUwMDFm56ZcdTAwMTY2vKBnXHUwMDE5k1x1MDAxNZKLj/68UdeHhFx1MDAwN1x1MDAxYjZcdTAwMGXn8vWcSZ06dbrZyPBoXCJcdTAwMWbRjuipM0VRdP1cdTAwMWRHerlcdTAwMTXQXHUwMDAzgr7iXHUwMDE011NjNVx1MDAwN+DksT5LZSvl58Fk7CbAXHUwMDE2uvS08UK7LH/3hl6v+7fnVzhccn/oXHUwMDFjsIBhzbtXVC0uXetcdTAwMDKbSGiYRKO84NPuUEoq+Vx1MDAxM4qQ6YtW+Fx1MDAwNiCGPszN+UDAWIRRXHUwMDA0nsXTclx1MDAwMqX8XHUwMDE2OJL2XHUwMDEyyNhaNz9xXHUwMDA2jMhcbvqIXHUwMDE1Plx1MDAxZTKFj6+RLlx1MDAwMHvH6LFcZiF+KFxiq6+ftDxyXHUwMDFjReMv61mPKJ+/l1x1MDAxYVx1MDAxOZnK6Vx1MDAxNJnoz01TN1x1MDAxZVTwzNTs//OmXyCgp4fL6OIhWiBVsFxyfahcdTAwMTS0yPjUaN7gq0Eq2oBNRlxuT+e1nzB2XW69/s1cclT/Mzd37Hkji8hGolGITHm7n6NcdTAwMTag43kr2Vx1MDAxM/ab3ZmlM0+iuOT6Pkzppn9cZmZcdTAwMWXJ1WRAfvbUXHUwMDEx1s1cdTAwMWGroDzTu3dzyzi2XHUwMDFkmzjlxkbjNYD0uviliu2uJdzk8dLGu95jNrLVPjye0yVVKk1cdTAwMTJRJ8f8kEsuVlxyNzCCLM6FztZcdTAwMTB1sfbGrlx1MDAwN9PAJTpcdTAwMWYm8maudI/9UFx1MDAxY43WN3OU5eOg9rBmkjM9fntcdTAwMTA2XHUwMDBlrc4/NbQ18MPzbMFZJonvPY3B2Vd8X3hC9W90XHUwMDBmU3dBWoOAXFy+uvEubUtaoN+DWLlcdTAwMTZCXHUwMDFj+jxcdTAwMWS0vHqcKlxii9hlsy7wRDhyq1x1MDAwNlx1MDAxZcWmt8FOb1x1MDAxNzdcdTAwMTi6jlxuXyesmiVBXHUwMDE3KtWPNDCWQlxcXHUwMDFhfnigfcZZe8pB14t6/vA8XHUwMDA02ZuqMZahzlxugFxylzi6Y9hcdTAwMTdcdTAwMWXckoRcdTAwMWKj01x1MDAwMSlslcyaSsXfdIme8HXnoXRcdTAwMDaKhnZBxEHmPiO1K/Y9cTag5DUwglx1MDAxOPlxwFx1MDAwNP7dvfnxu6/ZbCH5gtxHu4MjXHUwMDFjKVx1MDAxOKk85bg/RFnuy3vytnDbXHUwMDE3npnfPsTwQP7keFx1MDAwZoPe91xyoVwivGVFg5LhqNqLT4FcdTAwMTR6/mCwf1x1MDAxYzVcdTAwMWXAR0gs+nE/Rt/m4IslXHUwMDFmXc7zWpVKy6dE1UhutXlyRidQP1x1MDAxOTAjeppCo+rL0bnVoIVcdTAwMGWlucgk0mbtk4HI91x1MDAxYprl7G8+YadcdTAwMDS/b8KMizPizPwgmCaY93tcdTAwMDVvXG6qWILGvMjwQv2YLJBCSlx1MDAxM01cdTAwMThiXHUwMDAzo1x1MDAxN2NXV/Vq8lx1MDAwN5BdJP8q2Fx1MDAxZVt3/6w9LfVcdTAwMWTQftZHc0yCKs/rtcdEbiHJnlmOS4Eq5meYx8rVXHUwMDA2Jt+PxLygp7TQLaVy451/R0+xhOnk9WJcdTAwMTdcdTAwMTBcdTAwMTZccpCjgdij/+e5XFxMTcyqSGD7alxigrShlyVcdTAwMWHei1F1JEEyt+k330DysOvCnVxc38pvj1B/PTVcdTAwMTYhzdY0XHUwMDE4/lktdcBcdTAwMWUzf09cdTAwMWZI6FeSfVhcdTAwMDNcdTAwMWaKhDXrjvrnPl69W5mqsi1j3d5yn4hcdTAwMDHgTVx1MDAxZJM3bUncULgyMzvu4ojT91Q/1LlNLS/Gr1xmnbP+OMdBo4/VnSVW4kVcZsVfsEipiFx1MDAxNrlhXHUwMDFltmq6hNV3QMU5dTyK67A79jHJLS51rb7cvC/pXGZcdTAwMDBcdTAwMDBcIqSH21tCW8aK6e47XHUwMDE0wuXmp3RCPXlI21x1MDAxYVx1MDAxMC6H1ac2va+3XHUwMDAzRVx1MDAwNE9D8lx1MDAwYr8tl7ZcdTAwMDQmXHUwMDFiPdd8XHUwMDEwS4e3gHCiXHUwMDFllP3o5ZKxm9NcYvD5XHUwMDE2RKrHXHUwMDE3xSdNbs1u1sEtXFy8Xlx0muRlWPpcdTAwMDGwXHUwMDAxNo6HZWCiTeeaRlqgwNXj62U1dDp66Fx1MDAwNNTGJ5XqTI5cdTAwMDYgTYk2XHUwMDBiXHUwMDBmccHpOXp9s1x1MDAwYibpgz7Ymj/Yok7PwtFcdTAwMTJcdTAwMTds4WdcdTAwMDZYZSPdTOHq/HDmkvbWj/nJKm/i+k5yXHUwMDFkwWdcdTAwMDODd4qGvYN06Iw+XHUwMDE2IMy89lxmXHUwMDE1fOn6XHUwMDFix+hcZkhcdTAwMWRKNPIxTJPA5vt1L8RcdTAwMWFcdTAwMWY7uplcdCA3hGJORVaiNoAmXHUwMDAwcTduk/HeXG7MXHUwMDFi+CvmjJ5yYM+oXHUwMDA0LIP4rbPdNfN2VmhcdTAwMWV5Qp5x4d9Z80HwaIOCM4yzRFwiU4Pia7Bjk/A8t1x1MDAxM0YnY1x1MDAxMTPtXHUwMDBi9Vx1MDAwMVx0WGeX642dWddcdTAwMWYwtXdcdTAwMTegRdnl8YbATYrZRZX8lubjszcriyQq/Fx1MDAwNfBEs95Z01F6/lx1MDAwNIBcdTAwMTS9XHUwMDEzX1x1MDAwYlx1MDAwYlx1MDAxYtiUc5bPRJhcdTAwMDDpsunv24jM5+MjXHUwMDEyKqNpXHUwMDFjXHUwMDE5oDX5p26dr67i4SBHMSs/V7Xk2y+rS/1cZnbRnX2szV8svPFe71wi/oRskrxcdTAwMWQt+vFX+Dk/VlWoXHUwMDFks1xczqM7djowXHUwMDE0s/olM1x0oLN7Uky3eJp2WdjufvR75fXcnXz2er6qbuwtklx1MDAxNlo68cs06eJhMLDE10hcdTAwMWZXuo5qVlx1MDAwZVHNZpYhaZjvXHUwMDA3Y/Nz2ou47tE8YPV6hVVcbpNj73ctlCM23qKiXHUwMDE3zih+4HCPPHHfxfMh7sy+XHUwMDFhentcdTAwMGY4XCJVMSWOXHUwMDE4SdXkcYvCz1x1MDAwMsxcdTAwMGV9ouGxmSZbWVx1MDAwMkAmyGSJfy3AXHUwMDBmXHUwMDFi51lUXHUwMDFkZ4BH85vaW6hcdTAwMGbmXHUwMDFjLDe/onpd3vOt6GNXSVB2vZL5qzW8SvBEb6gxXHUwMDExNTuvMPKr9ItYN8HZd+ZcdTAwMTI6XHUwMDAwV7VeirM7/Jaw/9xLUNWlrNrqTuA036AmYdp+01x1MDAwZtI1izY3u1x1MDAwYlx1MDAxYl5BY/pcdTAwMDPB+sS7XHUwMDA2yq7A3/VcdTAwMDaNXHUwMDBlI2iewnDiY0GL6rdFXHUwMDA0U0L39D8jSYbbKvnTXHLCJTJcZphcdTAwMTebOCBoXHUwMDFj2FasXHUwMDA3X7lcYutXqDxIai2KXHUwMDFl+vd9vKatNfhI1Fx1MDAwNIblOo5h6vepZlxmNzFmLDbctnozXHUwMDBlmoJz/HJcdTAwMGKqNrI5/mGvXHUwMDBl9PPwXlRj++JcdTAwMTMu5NxKv3rTV1x1MDAwZoxMzUW/v+uhR1x1MDAxN4pGZ/afa2VcdTAwMTj2/USU+V0vtP72J+GuerLhYq+im2dqXHSgXHUwMDE49Fx1MDAxZq8+/rz6XHUwMDExkUQg4dlX/dyyIVx1MDAwZTpcdTAwMDPc436RXGL8KSpAmP5cdTAwMWJcdTAwMDOOMZ3fmI/levw7T1x1MDAxY59+95h4KcN93YJmk7acvoFXtIb6RVx1MDAxZcZHtfcr0K9XrozkXHUwMDA3KkVpmzBcdTAwMDHltIST4Yx6rvzTvrJ/xeOlPD+mf1x1MDAxOFwiaFx1MDAxZF8p4KZcdTAwMWLsz85Kj2igIbo4uijlXHUwMDAxXHUwMDExg1x1MDAxNtWmifuU0z/POb7oNd97YpS/XHUwMDAzXHR+/DxHcvk/8a1cdTAwMTjGXHUwMDFiISn7ZztMZ56x7eTkZpLUq/xcdTAwMWKH+6aQfsJcdTAwMDI18PNwXHUwMDA39FxcwFx1MDAxMO2/e0ZcdTAwMTVQwUJmQbBcdTAwMGKP1mEtXHUwMDExXHUwMDFkvrZ6vlx1MDAwNcf7b05cYs0z/pNjdVwi/s73XHT+86xg9lwi1zNcdTAwMTJcdTAwMDDSuVwiXHUwMDE4ufpcdTAwMDElt8NHNTxMeEumXHUwMDE4wcLc9PDeJ3vAR3r7zqvJ/vdaf2NcdTAwMDdsXFwx+UNpz9j0XCJKjzlcdTAwMGa5tv+ALzLfLldMM2TNkFx1MDAwNlx1MDAwZVx1MDAwNoRcdTAwMDK+T4O+XamXvlxmXG66lWolXGJbl1wim5gwSZibXHUwMDE5RO2/Y/FcdTAwMTGZ/8Ti/MXies84aXPsdczbSeBTj51wXHUwMDFiIZa9TXRHf3/fmFCp6eqFXHUwMDE4lVx1MDAwNXrcXHUwMDA0XGJcdTAwMTfoZFx0k4E87L6F/pVcdTAwMWIsXHUwMDAznv5PXCJP9vFBz1x1MDAxNX6v/us+XHUwMDFkavDzilx1MDAxNlx1MDAwMFx1MDAwM9eCTzx/XG6PXHUwMDAwvY5cZsqkyDZKP4CktVqf0dPtkFx1MDAwYtQu3/azXHUwMDE25URcdTAwMWZcdTAwMDUpZOx/rz14K+tTK4rlR4z8Zl5cdDO2YilQXHUwMDFlmNPRku37INq6+tPiXHUwMDEyRSfCk8RcdTAwMTUp7aHt2sKu7/GoQkYgPy6/Klx1MDAwMtNYXHUwMDBiulx1MDAxNOpcdTAwMGKGXCLf+KNm3r+akaD1TXRcdTAwMWVSy0s/XHUwMDAzXHUwMDFjwedcdTAwMDSt61d1sVQkQlx1MDAwZajFxULQo4L5nrlcdTAwMGVcdTAwMDNFblx1MDAwM7Mgt0tcciXSOfjiJ1x1MDAwN/jWZ0DZmdREovzetfXkjeY1XHUwMDFmXHKILVx1MDAxMqZlONrbeS6F4bt++tLkVIzijVx1MDAwMtf8XHUwMDE2J5VcdTAwMTScO1xmXHLAWrdUV2Y5y8/LYdeA8Vx1MDAxOLJzR/e0ZSB/+u5Gl9+pT5Ww7uRcdTAwMWKEXHUwMDBmuHyA3FxmlsduXHUwMDBlXHUwMDE3TVFaZ1FrO1BcYi7RMaRQmoSFz5CBjGmAf4tP6c9cdTAwMWb6jrvq+W2G+Z86bF7+aSQhMbvWXHUwMDE2+MXk9t1cdTAwMWWPOYhcdTAwMTSszKLDl/Jt9ZsyP3B8XHUwMDE1XGZcdTAwMTZcdTAwMTKgnzwgt8092Dx1lYwy5Z5Kv36Sajtdxn0pWH5cdTAwMDd3YI3YXU1+mG+jqZ7x3FpJu5vcXHUwMDEwK8S+ZCNfvc+nJ37DqdtaqzzClKQ+jvs5a2f8d47Fv/WxJJKbXHTyOO0hXHUwMDE2/JPl+PirLS+GOF1MnMVhK1x1MDAwZlx1MDAwN0xcdTAwMWH39Ma9iCRGXHUwMDAzl1fyncSPUeOwSyFzMSDLiYfnf+L+zJ3t8updZ1x1MDAxNVx1MDAxNphBW1tZXzDH9V2YXHUwMDE2n0xcdTAwMWO758BcdTAwMGX2TcZcZlxuXHUwMDFjKHnqmFx1MDAxZqxFKHxZXHUwMDA0XFzc1EI2bmi+2mcqkSefyub+v3h2TMU6qrtWXFxso+U+XHUwMDE4vDpUJevFaUFcdTAwMTYtXGZVXHUwMDE5XHUwMDE3ajiPeID3mEy5qCGqXHUwMDFkajH6YuFT6lfLe2N0vrVcdTAwMGYxwSSlsr1cdTAwMDNcdTAwMGWOI/w3Zz2Nnf2EiYV5L75KNVx1MDAwMMMr7ZKrXHUwMDFjR6HgXHUwMDFkZ1x1MDAxMJfrXHUwMDEwNvLIgpWMXHUwMDA2Y7hhsEbYXHUwMDExzSEmX1x1MDAxNFx1MDAxYVx1MDAxZXnhIIe1OJ9a47NcdTAwMTlcdTAwMTO8f9WcJ716XvudIWhdI0z7XHUwMDFijU7SpF5U9js/pN/tY1x1MDAwZug1lTubWSNv4p1cdTAwMDP8Rlx1MDAxOLBRXHUwMDE3XHUwMDFml33kx5NBmnL8yIz7dIOeX/+l9W7UXHUwMDFinPf8v7ZcdTAwMWObxV5KgS2pj8mnQUuCcFx1MDAxZof2RUbQ3azs1V135+iHK9pWVpTai1x1MDAwMFx1MDAxYnHPsf+p2V/9LILm8iPrNT2hL6A+sS72eZvZ+/K/7Mc/0Fx1MDAxOFx0alLt21xyJYfoNrZB5KYqXHUwMDFhfOXuXHUwMDE4PmzBpcDCXHUwMDFi0lpfvz7OfzXNqp0ne/SPqE1cdTAwMWJcdTAwMWJKXHUwMDEyXHKKlyBxXHUwMDE1ikyYOsNtllxcXHUwMDExYrYzbZzQ7/7tZ89cXNtEK+n7qoe7/bZcdTAwMDLFXHUwMDEySZz5ePH7XkWLbEb7Mf5cdTAwMTXfsFx1MDAxMetWYVYnWiE4XHUwMDEwYoxeXHUwMDAzMFx1MDAxYmUoI5HIiHPa06eiJCTDSlx1MDAxZDo39kjRZJJZwr5U/FXly2iBgcdkvfZcdTAwMTf/7v6lI4zGOsnO8LJE8t9cdTAwMGagfridyE870XpQyWFp+dbhXGZcdTAwMWNccjuO7YF18Fxy+Vx1MDAxZtluJO6II6RqXHUwMDE5XHUwMDEzz+hcdTAwMTIp1Xaz489cdTAwMWZcdTAwMWHccOflMalanZGy9chcdTAwMTGg1atagFxumiP4JIjlyp0yL0GQnmnlrJ7FXHUwMDE4msCZw/ud31x1MDAxNvOkXHRcZlx1MDAwNsBcdTAwMTClSKSc/+qjSjVcdTAwMWI8I36NJ9WwZ4WB5jVA/InM1ZhcdTAwMTRUycnEm1wivyjKOFx1MDAxMNRy4bjvhVx1MDAxNvMuNLFLi1x1MDAxYUaDgagvo+BcXJNy7FZ/6HmgiKzmcZmQ59lZwE+Xx3BcdTAwMDHg3l5OkfZcIpVcdTAwMDdcdTAwMDO9NXLBs/NFJN3ybWNyuCQzvEhcdTAwMWRrOFLl2P/25UnYKuUxiFp4ymVqlduHP6FkXHUwMDE5wphcdTAwMGJaxGV7hsKbamV5zevwL3mHrDRm8Fx1MDAxYlx1MDAwZVx1MDAwZrjrQDRunX/p7Pxcblx1MDAxNNtcdTAwMTPfRlx1MDAxZr18TlxiXHUwMDAx5zv7kFhgvV1/XHUwMDBisLvRg1x1MDAwN1x1MDAxM4mQ0I8z4+fI2ezmsFxi0aOfS3gvnP2oW1x1MDAwZYDqLcTG61968K6cXHUwMDEx4mZcdTAwMGVnm7WsuImWqc+pkZfUXHUwMDA02yzMkrHsXZxuhWdmXHUwMDExdqvagCmRXHUwMDAxQFFaKjRcdTAwMTbBd5a+fjndnmR08FX+XHUwMDA3R+kx01ero6VDX1TckaA74pFPXHUwMDAx/p6HSGF06lx1MDAwN2Ly1alcdTAwMWZcdLuEx2qAWlCBn79T5sw7JOpNm99oQFx1MDAxMrs5jO7/xYJjc6b/bFx1MDAxNTPhpX7Ue4NCa5hcdTAwMWbIyVx1MDAxM5I42VLe/LM/XHUwMDFminEwUKZQVJsno3aiw1x1MDAwNZmDc4Y4f6y3rIjew9K/88GW6Vx1MDAxYTJcdTAwMGXhXHUwMDA3XFxkensyNVx1MDAwN2SbXHUwMDFitFx1MDAwM5UnXf6lXHUwMDE4XHUwMDFiXFxcdTAwMDOkJcnuVSrX05/fwlx1MDAwMORJTc3d96iLnGS5Qe2D7v2/PeK3bsSpTbrAaVd3Vk1tbcR5R1xmM+JHoYf3Z1k2Q0XL2Y1tttc+J2u8gYpcdTAwMWFGvbLpXGKSOiqSri1cdTAwMWRyJutf//ZcdTAwMDHu2EP8zE3sW1+eXHUwMDA1sDBBNVd0K1x1MDAxZOtcdTAwMTDnu3dcdTAwMDL/3ftxMWeMLvN5yVx1MDAxOJj/5lx1MDAwZoZnllx1MDAwN1x1MDAwZV+rx3/GITCv2ae+7lx1MDAxOWuUsv7B1J/f2MzLRIHO2Vx1MDAwMJ8xcF856pJcconh1CHrsZA/b5bPgNg6jZo6MdJwXHUwMDFkNkKMwZDqLuxgpIGhLtJcdTAwMTCtVFwi+Fx1MDAxMYW5g7qYXHUwMDFkQdF6gVwiwMibyG81zrDhXGJiiXjdaZo+XHUwMDFhcD0+oEWzomr/9FEwqyq+I3w/6+r70mt6Spf2XHUwMDE4cffUUDfUXHUwMDFif/+863bsXHUwMDE3XHUwMDEyokOYJFuwJDdnipl2cTxCoFx1MDAwM+Yj8815ZuF/gbegr+VcdTAwMWGs+5vQf5/nzTk1zGVkXHUwMDFiqt1leIU8bZ+8XHUwMDA3k7RL/UttbVx1MDAxOa9cdTAwMTBLRP/pXHUwMDFi/+jlJFxudchcdTAwMTRa0lxcIebxQMaWOlx1MDAxZHdcdTAwMDZcdTAwMTBcXMiC1j5cZlx1MDAxYVx1MDAxYXVuWKyCzcr0gFwizXtcblYjPlx1MDAwMXpob7CJ3i6EhKE1WKhcXGNxwdAhzZbKm1x04zDS1z1DaU7RM/nUfl9UifL8wJ3Zd1x1MDAwMbj31nw2/nUtqlx1MDAxYjZPeLJW4KjGnCq6Ktbvgs9HVV2hvZNyiF2JWaTGk1HKudPFXHUwMDE1UC8ylVv/ljtdfvQrNu6W7lx1MDAxMVxmXGLt4e673jiMep2sMa2BMeUoa1x1MDAxYou5MZpHb0Vf9lx1MDAwYr/+Slx1MDAwNC9I/dJ1+e+ZOnm/Uqj+Rv/2I/zDXUk1O/97n62RP+ai0tlRYlx1MDAxMFxy8OnqXHUwMDAywVTqe7bASJx9XHUwMDBiWcG4//bmyYmUUZ+0iPndryQjTrjBVM6q0NFQXHUwMDBiKOnLdDhLYlxco12WzqvKUjLM1HWe7KFcdTAwMWbTd91VUVx1MDAxM8q/1+upRfbtRUxcdTAwMTShqanthJqQsEdcdTAwMTmBhqPQt+TGYWlcdTAwMDX2bYowXGJcdTAwMWKVjHWDK0HQy4rx4chcdTAwMTnbMi+R+S/3/Vx1MDAwZvMyOev986z+XHUwMDA2XHSg+ID2vOtuU7xcdTAwMDAlXCK+ZmtJXranqaCfdHtcYvzlXHL+PuS1LJlcdTAwMTf/91ijw81lJU7W+4EwKaNcYlx1MDAxNpRVXGYmMKZ748lK0KV8XtVdevU1P7pcdTAwMWNQNEul5lx1MDAxN3X2x5H44n/n+D/aXHUwMDE4MM47xPhPtnRbTXnqTdzK41x1MDAwZuM64fBcdTAwMDJcdTAwMWTidVxcusyfpd8z/zuSceDbYsY4MZU7dFSyLKKo3FxuhS1U4YVMXHUwMDE184fmOFx1MDAxY38981Z7mz33XHUwMDE3XHJcdTAwMWJasffN8tmUqbTIfbnriFx1MDAxMPObKlx1MDAxY1x1MDAxMoqZvVx1MDAxZS7zPTq5V9o0uq15Xf7/mXvzppnXoPclXHUwMDFiZLHc42RPKc1EXHUwMDBlSypQ7nbUv3P94Vx1MDAwZnZTXGa7Qmgy6PU406bhozcwNFx1MDAwNLk61b97Wc1UXHUwMDExJlxuXHUwMDFkwHTifVx1MDAxNydP5u335ttxxEVqKXc045dFgFx1MDAxNnfEV+pFaL16PHXIMIylQJ3g+Fx1MDAwZcJe9pgnT56RrWm8mvTfef37XHUwMDFk91xcP0fFxFn2kEX/NIzsXHUwMDExUuZNXHUwMDE2Kon2hnft1ZhcdTAwMGZcdTAwMWKWx7pcbjNcdTAwMDJcdTAwMWU+0LzkXCJcdTAwMTjTV1x1MDAwMsH4e/vXXs4/41xuXHUwMDAyVEGOrzz1nVxihWVcdTAwMWVQkGJ7TLI0+897mOa0tS+ly7NcdTAwMTU5mPdXXHUwMDEzevsu0+CiXHUwMDFkjLytt07YiSDFnz/qXHUwMDA3s6gnrjjTLEPGvHVL96PQtYLoV2917l1K5Vx1MDAxY5Jsvce7XHUwMDAynbFcdMLIMlbit/dNhmsjpP+O5288RVOZ9enjXHUwMDExhvlX4L1w8qGeaTFxbva/rZZG0Fu1XHUwMDAz3Vx1MDAxOOZcdTAwMTlToNnwXHUwMDFmXHUwMDE4y1x1MDAxZOKA5yN8tFhcdTAwMDYh7I85O4o0Mutnd8yb0lx1MDAxY1xyXHUwMDA2Qlx1MDAxZGOQsES+3jzuIdDH6jI8enXnXHUwMDExprVccoJccn2IYIu9s3+uhSjXiWJcbv8w0Vxyqde+ht2+PN7kSstcdTAwMDWoTbxcdEOQXHSZdEFU+niQ6OjDplx1MDAwM8lmRrFWWP+6podcdTAwMDO4p/tcdTAwMDOGPop5UJZg/i4prHu6XHUwMDEzg/FhkG1uJi0xdeOH7mK8h/1cdTAwMTmj6IFSKFx1MDAwNVx1MDAxOFFEUW+UKJSO53/es0DJ7STThv5OO1x1MDAxNNfLS1x1MDAxMreJwFx1MDAxOars5keOXGL001x1MDAxYzrbyH/kXHUwMDE5x+fM77l1XHUwMDFk61x1MDAwNGlcdTAwMDc9xmVcdTAwMDA/LK17mN5wXHUwMDA14YP6klx1MDAxZjBzYTEzXHUwMDFlV27341x1MDAxM1x1MDAxY/NcdTAwMGbu4Dq+SlwiUVx1MDAxML/MY49NX1xmb1x1MDAwNlx1MDAxZTRcdTAwMTWb9zYvaH7bdfTRQqUn6WBcZsDNT09cdTAwMTP7tp/hqWWAfG+Acul/a4vPOtXvnVx1MDAxZv/LXHKIOO5Mit3EcFx1MDAxY1x1MDAxYlx1MDAxYoA+Ksqt3eNaR7ozWqVX9fFcdTAwMDbiXHUwMDBljjdcdTAwMTg1K4D9O1a/Md+Pb/TWJjaum42/51x1MDAwZV+gdixFeZVcdTAwMTXN+fDXfXXM+i5Zs55cdTAwMDRcdTAwMWK+XHUwMDExMDq2K8g/f6zZXHUwMDEzq4XNXHUwMDE1mjMj9bkuKeZvnSODZtGPx/8weoS9tPD9z/vTVClcZkzWSdzyxu/qXHUwMDAz8jmZXHUwMDFjbFx1MDAxZv1cdTAwMTl3XHUwMDE2qTwn/J39VsZcdTAwMTm/51rffFhUXHUwMDAyQ7pAvpbw9lx1MDAxMcXPMEiVq1xyXHUwMDE2m826l6906Fu+2Fx1MDAwMVx1MDAxObfM+Ze+fVx1MDAxY+8tR6wxXHUwMDAzZ1x1MDAwYlx1MDAxOMJcdTAwMDZcdTAwMDVcdTAwMGZDXHUwMDFm+zckqdlqe/fRmt6NTGnUKFx1MDAxY+2L21x1MDAxNaL+/PdcdTAwMWE+c53Fp/Z253/49EPFQz+Bc/n47zyVZ3uhOOv3nFx1MDAwMVegTj7KoWxcdTAwMDZPXHUwMDFknU+9or67zX/G/PF50D/zs2TvPZO4hnH5XGLB90pcIrxi2Z+Z9me0UKIw8va72YFAvfvQh+F02V20Q1x1MDAxMTAuIDQ+Tc37W8OEin+GXU5hbVpe7jqI/6rFXFzucKu/XHUwMDBlXHSVeMHMXHUwMDFmxeKb9DxTJyF2IFx1MDAwNVx1MDAxMC+Pd9y4/9jfrlx1MDAxY/tcdTAwMTmu+5860lx1MDAxNTGym5c90K9165rJt4mg4zzompo1anomilecjWZ3XHUwMDFlwsP5v3vlP/9ZiJ+aYnz9f94psPuOfHsuxu7tcWRcdTAwMDBcdTAwMDJYkISCv2tcdTAwMGIxXHUwMDBl3bZcdTAwMWRAwpyFXHUwMDFlsLX8N1x1MDAwNOKbv+X7Jf9RXHUwMDA3PDsy41ObVmpccu7WXHUwMDE2TUIyK1x1MDAwM33B5qlcdTAwMGVgXHUwMDAyZPL3kdjy9y7CXHUwMDBi4i9cdTAwMDXcVMIwO1x1MDAxNKXZz0qzj19nhD/YhFx1MDAxMbGHucvnb6PplWWXxfiUx2Q3IK3DXHUwMDFl/PZ4orpeRsjwuNHPpnrIxox9eNWugFx1MDAwYkDqV1/+kcNcdTAwMTLLV77jKcKjfXHNgI1l4S9bTF07WFpyvE9cblx1MDAwMEQnw26YbP93n+LOeIS3gjX8cEVzXHUwMDFisuL8n34yP39cdTAwMGXNMo+d5stcdTAwMGJM365PXHUwMDFj7ek6/ZW+4dW90LaWjCRcIjxjhr9cdTAwMWZoaU11qKfCfLhSdaitcLXdXG6V7O/6nbRHyONi6nhcdTAwMDN1XHUwMDBlPpHUcoWv9tGCLtNbui6gq735NGZsyjzf29aCPlQyXHUwMDEyYFx1MDAxN1x1MDAxM0li02IrOP+3Tj11LD6cXHUwMDAyJEpdXGKl9UXzXHUwMDFjwiVcdTAwMDRcdTAwMGV21N7WaNtcdTAwMGK8YDRMmqTX0iqo6Fx1MDAxN1WqLTjo4FebNaf2Z/+b//lcdTAwMGWTXHUwMDFkXHUwMDFlyK12vHNjlUW9qVRb/WIlnm5tW2Gqfr7pVLQvdCdbb/vcna+wgFx1MDAxZEXFwec2goNTQbyTXG5KXHUwMDBl3GCwv3I0TFx1MDAwNK82mZdqTft/NKGAjcXKN1GzZ0y98GHI/Y5cdTAwMDP3Jz1cdTAwMTFcdTAwMDTkXHUwMDEzP9ktgXpcdTAwMTIpZMmhz1Om9H7PdYGzhvSp4PzV14TiWbyZMYYu21arXHUwMDAxjN/5MTJbI1x1MDAxMrSIXGZcdTAwMWXNRoX8nm1cdTAwMDMtc1x1MDAwNZ2vckbr/XChZmhoJVbTiclkXHUwMDEw3iydQVx1MDAxMthfayr7h3Nrwd+9WKr/sdJvvqnHfVx1MDAwM7JSu6Yw7WPyMJ3vglx1MDAxZFx1MDAwZY+yXG4/sLY2WvVcYkytn/t67ipcdTAwMTbN5J1ZlSefXCJcdTAwMDLRXHUwMDBmZcNik+3vRyHm2/zl/33/5Lcm4bh9dIybxJqq3Hfyxu1vnZIhhyj3ULFgnsSPXHUwMDE2s1x1MDAxMJFrvvkwZ/o3c/aXpsie+DXeh8J3d1VVO66riFqzTEuQXHUwMDA02Fx1MDAwNTlcdTAwMWSoy995Slx1MDAwYljV/e4xcXzdSGugkaxMfivJwlUmvVx1MDAwNlx1MDAxOCy5THiha1x1MDAxZqrIn71OVVx1MDAxZlxyWphIbfShYFx1MDAxYdtOTVx1MDAxNe6ghbKrNknaxURcdTAwMTc/0kN8XHUwMDE5Xs5fLJti6qRHXGaXXHUwMDA1/9k/sMlpKt7Vy/9cdTAwMTZrcFxmcfDO1U//h8ZcdTAwMWJcZsNcdTAwMTFvglx1MDAxMXsss2RcdTAwMDc7KVA4MI06XHUwMDE0Npyt0SN3nJRXmUFqic9cXODvvtxws0NUymeQr1x0Xc5mMG6QyatZWyOGXHUwMDFlqFG4XTTUp1x1MDAxNSkh3uJzq/n3XHUwMDFlVcdUtaNNOsRyXHUwMDE0oVxc6VWKOVhcdTAwMDFf2Vx1MDAwMCpcdTAwMGbyZTG9XHUwMDBldnNcdTAwMDG9+3z/4mrmO55cdTAwMDLzO6dGelx1MDAxYiA1MzVx0tQp+y79plx1MDAwZkRnj9f9RbrXXHUwMDFmazm/vN9u/cdkwf995kXzXHUwMDExXHUwMDFknb1ccpBcdTAwMWV3dpPujnHGi/krrjmm8KLDPrr9cDxcdTAwMDJz9Vx1MDAxZEs4XHS9XrKI/+6D3U1B41x1MDAxMrBcdTAwMDW29Fx1MDAwN+Nx4/PvRrba+mdwIDNdl7KdsDBYL8hcdTAwMTRcdTAwMDNcdTAwMDfnqi6UciiCvcfMXHUwMDEzj//SJZGpjPDR+b6huHXd8oz4cNibYj1AeWOq+kLBVakkVnPVxp3+zVx1MDAwML89mYxlxIZzNUDwWrcrRa74ZH2YuPBYW6p9lLpjX1P0JztcdTAwMWOQK1lcdTAwMGVcdTAwMTdcdTAwMGJcdTAwMWHcXHUwMDFia6lcdTAwMTBKyOCt/zvyXyFo7yzXZVx1MDAxOFxueHs93MH8xVx1MDAxZC3kSXbFqbqTZDlcdTAwMTRq+4tkRNJzyFxyqMmJ7/G+1XrLz1x1MDAxNsrFyurPf1u/Rlx1MDAxZmF/91x1MDAwMeprVESOjFxmeP7Ska3RXHUwMDFm3rWt+6ooTekpplx1MDAwN1KT3C/8/stcdTAwMTdcdTAwMDVv5flcdFx1MDAxZFBz6Vx1MDAxNX9rx8hcdTAwMTNcdTAwMWbjvspOclx1MDAxYl+6XHUwMDAz9T6dXFx+NCtcdTAwMDDnlIX+vZf9u1x1MDAwZZPLT9VZnnLqa2dccvlcdTAwMTZcdTAwMDW+nDU4tu85ejq2zaNozebh0aVcdTAwMWSvXHUwMDA0+NKakVx1MDAwN471+ttLvjDNNT5cdTAwMWMu9WBYlFx1MDAwNpJil2k7h6eeSqSuxX5EM8xcdTAwMTlOqXlsaLFcdTAwMGbCWTS3jv+HdVx0tWQ6XHUwMDBlZ4ZPauOhnsa7lGFMXHUwMDA1sFx1MDAxMvfIXHUwMDFkKqFU6Vx1MDAxYn6IU4vrXHUwMDFiX7qgNu6tgnvJ39afXHUwMDFhq7FMer6iir9Dw7dcdTAwMTXRxzaovSRFokRDN9BbgsUgsbhcdTAwMDGqKp/6bjBCYFxc0EBwtJt/+85cdTAwMGansE8+pYH2xTMg301cboqt6mvJzVerTtkgyoDgdlx1MDAwNlZSgCM0IEvtZHiuXHUwMDFkb3zCPsP/s97Kp2L0XHUwMDBmXHUwMDFmh+fV3Mk3ZTRArMyzP+ezXG40i+FcdTAwMTIjO0tZzlx1MDAwNISdXHUwMDE4vZOF93VVO99Ti9p1blwix7fxV99cdTAwMWSNWmDIXHUwMDEwx+RoVlx1MDAxMLVcdTAwMTV/Tipeby1cdTAwMWXyXGa/p9hcdTAwMTKks1a6tfloSHJKRvyC89lcdTAwMDDNz4eBg7jVYpZaOqpcdTAwMWJTy2X+1Mjn2qHGZZjm96a0n/3Ns1x1MDAxZvlcdTAwMTdcdTAwMWJmXG4hrnfPv3LCddSVYVVcYlx1MDAxOS//b96fX1nF+Mq3Llx1MDAxY8K3mL+8hck0XHUwMDE3XHUwMDAzLa/kVj3ur1x1MDAxY5lEhGE/h1wixvb4f2N7/mL73sTB6v7Oh2/lR5X2opj4XHUwMDAz/H9z/P/m+P9cdTAwMWK6XHUwMDFm9T0svSsqw80j0pK9TIE6XHUwMDFjQXu0Q01di7K9gE1cdTAwMWZbWyVcdTAwMWQuXHUwMDA1MFBKLkpNLElNUbJSMDSzMDC1NDCxNDc0slx1MDAwMEvXcoFwLVx1MDAwMFx1MDAxOT5cdTAwMWZ6In0=Source Remaining Pipeline Tenzir Node S3 Bucket File Fluent Bit
Our desired user experience for interacting with historical looks like this:
Ingest : to persist data at a node, create a pipeline that ends with the
import
sink.Query : to run a historical query, create a pipeline that begins with the
export
operator.For example, to ingest JSON from a Kafka, you write from kafka --topic foo |
import
. To query the stored data, you write export | where file == 42
. The
latter example suggests that the pipeline first exports everything, and only
then starts filtering with where
, performing a full scan over the stored
data. But this is not what's happening. Our pipelines support predicate
pushdown for every operator. This means that export
receives the filter
expression before it starts executing, enabling index lookups or other
optimizations to efficiently execute queries with high selectivity where scans
would be sub-optimal.
The central insight here is to ensure that predicate pushdown (as well as other
forms of signalling) exist throughout the entire pipeline engine, and that the
engine can communicate this context to the storage engine.
Our own storage engine is not a full-fledged database, but rather a thin
indexing layer over a set of Parquet/Feather files. The sparse indexes (sketch
data structures, such as min-max synopses, Bloom filters, etc.) avoid full scans
for every query. The storage engine also has a catalog that tracks evolving
schemas, performs expression binding, and provides a transactional interface to
add and replace partitions during compaction.
The diagram below shows the main components of the database engine:
eyJ2ZXJzaW9uIjoiMSIsImVuY29kaW5nIjoiYnN0cmluZyIsImNvbXByZXNzZWQiOnRydWUsImVuY29kZWQiOiJ4nO1daVdcIk3S/d6/wuN8XHUwMDFka3Jfnm8oKlxiKiqo8M5cdTAwMWNcdTAwMGZLscgqXHUwMDE065znv7+RuFBcdTAwMTRcdTAwMTRcdTAwMTQ2aDFt9zl2W1x1MDAxNJBVdW/ciMjIyP/+Ojg4dMZcdTAwMWT78K+DQ3tUzDdqpW5+ePhPc3xgd3u1dlx1MDAwYl5cItPfe+1+tzg9s+o4nd5f//pXvtOxZu+yiu3m6zvtht20W05cdTAwMGbO/T/4/eDgv9Of8EqtZN5PKlxy1i+fllx1MDAwN1x1MDAwM8Ve8pfFk3h8PJ6+dXrS+4C6dtHJtypccnv20lxijlx1MDAwYoU+flx1MDAxZsPvXHUwMDE4k9mBYa3kVOEgRchC7j/i45SqXatUXHUwMDFkz1x1MDAwN71+z19cdTAwMDezIz2n267bJ+1Gu2tcdTAwMDbzXHUwMDBmUtY2Y7OhXHUwMDE08sV6pdvut0pcdTAwMWbnON18q9fJd+HaZ+eVa43GnTNuvN65fLHa77ou6PVbXHUwMDFl3kaNPcc/3lfK96p2afY2+N5KtWX3enNvanfyxZozvSdodiFmkJ14afo0/jNcdTAwMWJWN9+04+ZxtPqNhvuDW6W3XHUwMDBmfn9qs0dC3478PVx1MDAxYqdtl6bfR5FWmDP28cpcZj5YXCLv0at2a1xuJcGpZoy4XHUwMDFlRK1cdTAwMTdcdTAwMDX4ONNPLedcdTAwMWI9e3bDzdBOvdByw2tcdTAwMGU9jj2aPVx1MDAwNVx1MDAxN/iOa/XnXHUwMDAxqT9OeKf+eHPR7Vx1MDAxZVxyycvhx3l/v/1vdqf6nVL+dTxYaCFcdTAwMTlcdTAwMTFcZnHCP15v1Fp1721stIv12SX8ct0zXHUwMDBmXHUwMDE1lo9mgVxuc1x1MDAxNzNlgVx1MDAxNNJcdTAwMTKSIFwiuZJKu/A9ff5SLHJcdTAwMDJcdTAwMTNmXHTO4YYrwlxiVpIvcoLyfaFEr1xyZueLXHUwMDE5MffCXHUwMDFi9CVcdTAwMDE4YHhcdTAwMTTLkC9cdTAwMTaOviNcdTAwMWZjyiinSLBPQH9uXHUwMDFjXHUwMDBi+Fx1MDAwNFx1MDAxNmpFN8DnXGZuXHUwMDA2ZnBva62Dpt1sd11GudxuOXe1iVx1MDAxOTpRc0fP8s1aYzx3283nRFx1MDAxYbWKuVx1MDAwN4dFXHUwMDE4tN09dN9cYqdcdTAwMDai8XFCoe04b9LxXHUwMDA2o55ccoOeftVcZo5F+Ko8XHUwMDFj7caDaEi7W6vUWvlG2v+KzFfE3nGPLcJX0FTV8pFcdTAwMWM+aqdyufMzXHUwMDE0795GzqrHgVx1MDAxNVx1MDAwYiNJLcY4Zlx1MDAxY1xii8GCeFx1MDAwNFxma0tcdTAwMTGNOFwiXGYgg2ZcdTAwMTf9Tl0mkIVcdTAwMTVcdTAwMTaUYayInD2AT4pcdTAwMTnWXHUwMDEyXHUwMDE3yY+YuZ64i9GMIYHQckajXHUwMDA1hfvQMkXgtmpcdTAwMTc7dq5l/XHp+EZcdTAwMTVj0dhDvnx6UU9m2oXCt2nZ8tFcdTAwMDTQMky4sEDENFBcdTAwMDCcXGLN5ukh+Tp6aKCXxppRyjX9bVn7VnKERdYwXHUwMDE3XHUwMDFja/Ct1VJcdTAwMTZQP1x1MDAxNmCG4CFKoT5Dg13rWrt1UKr16uFVtTU641W1hetcdKZpK+TK7bto32dcZoxcdTAwMTSEXGIsXHUwMDAyPONX24BcdTAwMWRRe84+5GMpnKne45OrvnjB4aHOolEwdolcIk+k6T6wYDVs83el1fiHre2iXZ6d44pWXHUwMDE3bVx1MDAxNtHa0u4/M7P4xlGKKCZcdTAwMDLIsWVcdTAwMTOwJXW6QvVod/x0VHkuxbuVStbJPSZcdTAwMDYudfrn8o99fXNbIFx1MDAxNSPVWymaPJkvJ2tcIt+8nP+W9+/Pd7vtYdDPvb+oZUnxNuVUnF63cfWcTZ5rXHUwMDE07HPXq+nUQv22mi5cdTAwMTdKt/VdsMkz6yvB/EKgXHUwMDE3JKBe9ZSWM9PDsG/jpeaWXHUwMDA2l1x1MDAxOIOjxoh2XHUwMDE5qun7XHUwMDE5JVx1MDAxNt9cdE/hzlvgzIN/XHUwMDAw0lxiTlwiWe1qvNGUMVx02FAuRdxcdTAwMTFNt4nMz0ukuYMneSffaFdcdTAwMGXnXlxirp3NWqnkViWPSq5cdTAwMTFcdTAwMTOvSi5cZmZBJZeL9Oe1kyzGXHUwMDBlXHUwMDFmXGZcdTAwMDXviFF4XHUwMDE4QeL+V4Y2JO1U61x1MDAxM5Yv51x1MDAxOCO4dUNKzmXotZMyi2tcdTAwMGVcdTAwMDEvZ2COpDc/xYlcdTAwMDUuPdZIYCSo9oxrO3Qly2TVPfQ3gsLjkpiD2Vxip46e1FuVZvd+3EOxgnDqt6XyKNbcLMpcdTAwMTNYXHUwMDEy7cb/LnSJYH/UXHUwMDEzxFx1MDAxOFx1MDAwN3+FXHUwMDA0Rv3yq1x1MDAwZbcuSWVcdKlcdTAwMDFJSDCqkMuwvIJeMUvuXHUwMDFh9Fx1MDAxOGNLUVxmo9BcXFx1MDAwMPlcXOq4QqNcYpJcdTAwMTjBXHUwMDAwd+9Lhkek7opVu5nv7Uik1lhtr0gtXGZmXHUwMDFiXCI1PWuZXHUwMDA3qf1jO0okR5yKIPH7K1PH5bIoXHUwMDBmjtXx2ahK2F3jJnp5i0KvT3x/9Fx0K6Eppe45hn1cImfPyXed41qrVGtVvG+xWyWfV1x1MDAxYfmec9JuNmtcdTAwMGVcZiPVrrVcdTAwMWPvXHUwMDE508+NmCCtaudcdTAwMTcuXHUwMDFhPtn3tY75uHlFnv3vYIaU6S9cdTAwMWb//88/1599RNae73rqn3uHWvtcdTAwMDasfN/wy/3vpnaDIOw9OlN4XGI9ISbjwXNCZ5Obi37ytD0uTFx1MDAxMk9cdTAwMGb9y9Q5So5CbzfkartBQ2Q3tERSmXjjx2z8mI1vNFx1MDAxYv6z4GAwKEGB5lxuXm1G83iceJk0I+XswyR/kpE4q9Khj4XhXCItxiTBXHUwMDEwXHUwMDE1aPAsZrfjNavMXHUwMDExeOxcbqhCJVGC/lbuaunM1Cx/tcRwLLpcdTAwMWJAXa1cdHWVkOzGblx1MDAwNJju+bFcdTAwMWOLZ2Pkd34glq7OXFwtzvd9KDzHwtRcdTAwMWVsMOtzXCKKpYS8uurhQS/HM9nOxImUws5WXGaB8Fx1MDAxY13n2cqBzF/DVmomgOCbMITyjII7IVx1MDAxN8lLiG+d4zubiZZEM7lzNn8yuzU81clIrjLQ/dKYXSfFZDg4ToVw1oVQX9+XmlwiXG7JZXBiLL/osFx1MDAxM1x1MDAwM/xdi3NcdTAwMDXCIFxiU5orLzPUV+lcdTAwMTjBlsRcXFx1MDAxM2nGRKir7HRFjlx1MDAwYiNDJqZ2ToTwpLhSIFg1x1x1MDAwMHjupeBJLqfd8c1wrbHu3lxm15KxbCPH9TpLu4yw0r9IRSiGqVx1MDAxMoGKL4PMR4eUsa7C+FdP04X9rVx1MDAwNqQqiF/JsCSSkN1Ps3xvOOqqNHxbXGJcdTAwMTFk1nLK5WLfjFx1MDAxZllMzP2ZXHUwMDAx2dyzfMdcXM7bgVnx4pbdVzDANY+XuFUnlqjfcmL9VJq6XHUwMDFlrof0xORjwJVCwUlf6MbO0UOiWD3tdOzqWaNYyZ2KsJNeSsuU4CGJXHUwMDE0XHUwMDExmnhXXHUwMDA2ULJcdTAwMWJcdTAwMWKAqbCU1kpi+FpcZj+XXHUwMDE0KfPFWJNcbm782z3NUblFXHUwMDE5zVx1MDAxZF0hysUpS//datnDg867KH56XHUwMDFhaoVCz12BV47XjVwikDYz+jltpkx6j77TXHUwMDE03EqitFx1MDAxYqXrWLq6pCukLPVKM99cdTAwMTEtg0kzXHUwMDA0iUQpd3H7PrHQI81+XHUwMDAyXFxJ16+KpaG+yrxcXHZTznG9rppXy1x1MDAwNFx1MDAxOFvwNKTmXHUwMDE0gVhcdTAwMTDGsHKd9Ka/1EJYK1x1MDAwNVx1MDAwZY0wqX62KMjbdVxujn68gtm/m3pcdTAwMDXcVdbgMTdScdAshYKbm9UwXG6ruSEgztKsbOFKYMY8SS3GhaVcdTAwMTXCxkOnelfTVoxYmGq441x1MDAxMuCLMF+yJneZh8Axku6K1i9NX4Wxavj33I+K7Vx1MDAxY1x1MDAxNPNgmMwwXFzS/+9WpTawW1x1MDAwN/nWgT3qdOGW7SZvsNIr+eTgtuGsrMyLg1xi+FlcdTAwMTCOXGJcIoDq4GGFnblLkFx04p3u0DlSmXNcdTAwMTLJnHXDbkEkXHUwMDA2XHUwMDEzYlZcdTAwMDVxzqSgePYpr1x1MDAxNkQrSyCOKFx1MDAxOFPOKdld8s9tXG4+7IZ3rcSSNDhcdTAwMTg/hVx1MDAxNNp5XHUwMDE19nI7si5ccj5cdTAwMWW0q9TJNVx1MDAxMi86I6O5au3lMSGCLmo4OdOX52M+qFx1MDAxNIaEn1+g7FiNXHUwMDEy+7WogcpcdTAwMTWLXHUwMDFhlMZcZlx1MDAxM7RBSdrSu1x1MDAxOXaGSVxyXCLNhUJEXGIlvMsgzcTT1lx1MDAxOLZiiVx1MDAwM7dcdTAwMTTVmiMuIChcdJpaV1x1MDAxMPVj/Fx1MDAwNSq9qsqZXGKMN6lyXqqjgXPr8VbJXHUwMDFl2buI29dcdIRXNFx1MDAxN0ay81x1MDAwNVx1MDAwZVx1MDAxNPvn1qWQXGK8vFxy0mx18TCsn0Wat4VaY1TrXFzEm42jfujZSuQqPeRsi3roy9ZlwT1bdKGVklx1MDAxOCkpQ7pQ0HlMT9j1XalcdTAwMTbPnqYyjc6ExflFXHUwMDE4NYr4ol7Jac20XGa+vmH5RYdcdTAwMWT0lFuAZ3OhXHUwMDEwN2PX/XhcdTAwMDU9hJH4S5xAwSzEtabCSNTSJf9kUaTAU1x1MDAxN4qS/V+HXHUwMDE3ONa7q9tOsbqjXHUwMDE1XHUwMDBla8z2wlxuXHUwMDA3z1hcdTAwMDKJXHUwMDE0Vr8hUq775Fx1MDAxNSlcdTAwMDNgNLfcZVx1MDAxZF/zw1x1MDAxNsvFr+rdzG315mnMmtlssVx1MDAxMHa+XHUwMDAyXHUwMDBi90ekNKdauPPgoVx1MDAxMqlIKkmvzjpcdTAwMTdXXHUwMDBm/Vx1MDAxM9ksXuXrt3b8T1xu0LB/gKaoolxii1xyXHUwMDAytOV3M+xsXHUwMDEydH/VjyMh4Xyyn1M84VO/NXrwXHUwMDE16udLVeS7vI8pXHUwMDBlOHdcdTAwMTeDrk2lZLvp+EsmKzo3g6NcdTAwMDGKVsulciX0TCVcYqhcYvyQXFxgqbG3hpeJL9A9YuZcYoGmmGC0ti3VTFx1MDAwNVx0WFP3Mqp9pWngRIplWV89zTD3lbvPlvjHjdys0eJcdTAwMThcdTAwMDePXHUwMDFidSRXfVx1MDAxYaNq7uT8+CWNT6I39cdY2PmIMWJcdTAwMTadllx1MDAwZVx1MDAxMyRcdTAwMDQjntwmlkBILlx1MDAxOeCeaSZCX1PP4K9EaPdi+jlf9fbpXCKRXHUwMDE1pa7T75Vvb54jjeJxjIbRp/RfbUKZ0HP9hNfxYvk1h51cdTAwMTeEUVx1MDAwYq6UI0Y1lsrbXHUwMDE4VOGvocXnXG7qXHRwg37FQrFcdTAwMTCJ1U4r6tfY9i+qqF/dXHUwMDE2UGLf0j2CMfiXiG9Qu4fFZabXT/JSpCtTsVrysXFbjoaetVhcdTAwMTGLSFx1MDAwNjQxOUUsPFx1MDAwYmGAXHUwMDExXHUwMDE2XHUwMDFjllx1MDAxNIBcdFx1MDAwNFx1MDAxN56Bbcu75PAlXGacXFxcdTAwMDJKJtTMg5glWeBcZlxyY4VcdTAwMWZCM1x1MDAxOLCXwJoreNVvXuBDL1x1MDAwZa+jaJhL0+Hg/PSumbuwn1x1MDAxM+2KfteTb1e7Tj8lq6VOu9TI3lx1MDAwZdK1+lx1MDAxOSvcbDh9ICFG2P1cbjLk3z6BoNdcdTAwMDTKXHUwMDA27Vx1MDAxM5Zfduipo4klTclcdTAwMWRcdTAwMDXpXHUwMDAw+HlaJFx1MDAxMYjMOLBcdTAwMDZBXHUwMDEwXHUwMDA0oVx1MDAxMNlcdTAwMTF3sEmgmKJcdTAwMWSO+dIuflx1MDAxMLtpwVx1MDAxNIxcdTAwMDKEXHUwMDE59Fl6qaMoXHUwMDEwijBcdTAwMWZcdTAwMGZwXHUwMDE31FnsYE3ejvztz6iVoFx1MDAxN8SV0/ukcGJLXHRcIpHJe1x0qtyLK9ZcdTAwMGLpS992XHUwMDBl2t2DMzvvVN2iud1ugaslZomo+o7Lo65IXHUwMDBizFx1MDAwMSFvP6lcdTAwMGKLW5nAXHUwMDAwXHUwMDA18a1bxVximCTNZlx1MDAwZYFcclx1MDAwNjlzYsOLa5bLXHUwMDFkJzOM2MlHfVx1MDAxM/p+K6C11Fx1MDAxMqbRXG7RXHUwMDAy7Fx1MDAwNfZqLUgxk1pLMCbGi96NwcDawkQr039fm6pwuqR0VXNcdTAwMTinplx1MDAxMFx1MDAxN8JAXHUwMDE5d1WivKstXHUwMDEz4DDQsIjtl+nhOoz7+pNcZqJcdTAwMTFK2Vx1MDAwNpN06TKrNIvZ00HnvtOP1tKiMsmFvrJcdTAwMTJcdTAwMTNcdTAwMDSaKJEgYEFcdTAwMDE3aH8hXHUwMDBl6EbINI5fvsbzXHUwMDA35IsgN5Myim+yXHUwMDAwoa1cdTAwMWKx63yHXHUwMDFkPeSrlco1XHUwMDFknmTH2fCDXHUwMDFjXFxcdTAwMDWNXHUwMDEwU1ohXGLZ9Vx1MDAxZYOcwFx1MDAxM1x1MDAwM/3lPyD3gNw3za0lnndcdTAwMGXX9jxORmJcdTAwMTfp5C1+Ltw9srPBZeTqPvxZbsLAKYTAhlNCqEJ6fyGuXHUwMDE5MmlA8XXhzZ5A3Hd5OYbHTqjZ/iQwyI/u6rnY6WN3VGx2a+fRs7i+XHUwMDFl9cJcdTAwMGZys1x1MDAxN5UwaS/BKN5jf1x1MDAxY/wuuFx1MDAwZYihfuy4XHUwMDA35P59vFx1MDAxNZdgxjfp2HdVc0Qy05zcPrc60Vx1MDAwMm2WJ6lmMvwgl9r08UTgl1x0wojcX5CbfkyC6tDkeENcdTAwMDNy/1x1MDAxNVxmykxpSbnBNEZcIn1xf1x1MDAxOYlfRsrJo/5jo5B2RtlcdTAwMTDtXGbmXHUwMDA3cq0swJZmlKm5XFzTXHUwMDFiyKllslpagaZJpHZTJLNcdTAwMWSQXHUwMDBiyanC2GdcIvJcdTAwMGZcdTAwMDb5im44XHUwMDE4/Fx1MDAxNbPPYWCQXHUwMDEzdn1cXD+q4MJR/XhYjdmju1Qq/HEnwMYyXHJmkNBcYiPmnW/YXHUwMDFmkGuqpCZ+PTr+WIzrXHUwMDE1S9HgkTNcdTAwMTjLXHUwMDA2e1x1MDAxOVx1MDAxNFx1MDAxMjrab1XRsJDtpk/SXFw2mo8q/Fx1MDAxOKfSokhpjaWWXHUwMDBizVx1MDAxZIipXCJcdTAwMTHS1CdTzojrfoVcdTAwMGXjUjGuhf7BuFx1MDAwN+MuYfPWSVx1MDAxMTE3XHUwMDBiubbzaHlcdTAwMTTNXHUwMDFm9UuaRCZcdTAwMTckxVx1MDAxMkXSelxuP8C5tDBcIkhrYTLMasFcdTAwMWanXHUwMDE2XHUwMDAwh5qKXGZTXHUwMDEzIcOLcGKuQnGOf4LO+dpcYn9XRWKz7e8mnkr9tp3IyGuRuThcdTAwMWROsnf4sZ4pXHLDXHUwMDBmcmlqXHUwMDFmKPjjSitClmXIkSaaMGA8lzzEIFx1MDAwN0d8Krs+zTb+WJCTXHUwMDE1O3dqyk3N60bdKW/q6aerSVWMI+XG+cNLsn83XHUwMDBlP8q1sFx1MDAxMJWEU5NJwoJ6UY4gJlVcdTAwMTQ8XHUwMDAxXHUwMDAxMTpcdTAwMGIvyIlcdTAwMTk9N5us/Wkg991WXGb5uilcdTAwMTCGaZNloMHn8lP5fvU6Me6fnlRyXHUwMDExnFx1MDAwM25cXKZD32eNuVx1MDAxNraOXy3hb/V1XFxZtb10XHUwMDE3IG4hzLjiVIHTRFxcue2PtVx1MDAwYjBGhbjP7OVcdTAwMTdcdTAwMTZti1xy8Oi6h//Te3vMnb34MGdv/+X+93OrklxcXHUwMDFky1x1MDAxNlxub5RCXHUwMDFixc1HWXyu7m/G99FUhlfub8tnz2VcdTAwMTJ2skqMLFx1MDAwMZcpNedcYlxmpMfholxim1x1MDAwNXxcdTAwMThOkVx1MDAxMvwy4lx1MDAxOdh3tzSTSiOEv2DLzlx1MDAwZtRttm3tc+P8LDbWd91xo815jsTuY1dBXHUwMDE3zFfbV83T6+4wbbPnXFx7kk1WS7d6/ls+tf377lx1MDAxN+JvYtVWktd/Ib7v6l5OXHUwMDA11niDxb3Ln1HYaSulXHUwMDA14Y9EjEhk6ua9tFx1MDAxNduj7Zb7pDFCgevf22dcdTAwMTmiR/aFXHUwMDBipnbYJm2N6Hx/mzSwXGJ+VCVguSG+QVx1MDAxYuymJdJRefpSqiZGZ+fJ+Mt5lCZcdTAwMWGhX4lcdTAwMGaB3kqN5VvU2N/sQKOElpKw3S+9/5yePmZKg2YqgXr5u1Gzy1x1MDAxYbL2dJZcdKE+XHUwMDExsVx1MDAwMvSMmlx1MDAxNWtcdTAwMWKUjyy/6rCDnpo1XHUwMDBiUmJMwEeT1KtQXFxZ/EtcdTAwMWPLT7VJXHUwMDAzdeBcXMvdN2LaSYBcdTAwMTi+TjFr7Pa390kj/rNLpkGC2dJlXHUwMDAzl5L3XHUwMDFmXG7ZSdRcdTAwMTndXFxcdTAwMWVHxJkuJDvJethcdFx1MDAwYlx1MDAxMfa+qFx1MDAxNDbNgTlcdG2ftFpcdTAwMTNFY7mTp0o2gVx1MDAwYnftaD1Wv8NhlCnuXHUwMDFiRlHMJVx1MDAwM/tcdTAwMWS8Kcvyi1x1MDAwZTvoXHUwMDA13mOVUmb/XHUwMDE1U8P0o1JbUak1dvs7+5lcdTAwMTHuK1BcdTAwMTJcdI5cdTAwMTDaYNl8UY9b5/lnXHUwMDAwbD3CXHUwMDFljqNcdTAwMGYt2a6FnqpYWlpwYXp5Mu3dkpgy/Vx1MDAwNfL0qXZmgjKCXHTa/a5cdTAwMGI7Z+lcdTAwMWbRzixI8tVvdzeDU83FXHUwMDAyNFx1MDAxN4CEmbRcdTAwMTg3XHJ4KWJg8dGS1iWrXGKxLfn5bqp/mlx0QTpBfHiL1KzVcdtcdTAwMDTXfK0r+bSw2TtcdTAwMTeUalx1MDAxNig95SXj3MC3SMetzrT5o9Dz9lx1MDAwNYc14GTi+s3fVucvXHUwMDBm5jZ/Q8wsLKRcdTAwMTCZc2GqJF1nve79xi2z6JCYtbVcdTAwMDSBXqhcdTAwMDVI+E+Pbjz5ucJ4rJ5hWW08vDue8FlxyI/x+Fx1MDAwNuOBqdlIVrCFqqXpi77NjDCVXHUwMDE06WDtoDe0XHUwMDFkmiPXvjh/sO1YvUWMy3aA6VBSaU1cYjP7qjI969/2YTuwhZWpnWVcdTAwMTCAXHSlsVx1MDAxMl9uPNbVXHUwMDE2Sd9cdTAwMTBAS8FcdTAwMTBzXHUwMDE33qxcdTAwMGJcdTAwMDFUOvqsXHUwMDFm6zmcS1x1MDAwZotcdTAwMGbXrWtcdTAwMTm7fFx0XHUwMDBmtZeHXHUwMDAwXHUwMDAyeZauuCt4tt5cdTAwMGZcdTAwMTItyUUtpKIollJcYupTylx1MDAxY3bn/n+8ksj1XGI95/9y//vJhWXEd4kwQZxcYqzc3THW8fGCnVx1MDAxNmr1XHUwMDA3PCrEe+1KqZ2+1PHwN3vAar5NsLfHuPgtp2O3fVx1MDAxZs0ybk19Nl2fqcNZl1+ly9miU5RcdTAwMDXaZflUWzZcdTAwMTKh6fv4xDr9l/5cdTAwMDM5XHUwMDFl2PFIvHxln1x1MDAwZjNso0yzXHUwMDAwJ4Zu4k6spMyKvo++3X+wqYNWwr1L9zq2LL/s0LNFI8tMLFx1MDAxMqXAXHUwMDBikd5cdTAwMTlcdTAwMTYukVx1MDAwNVx1MDAxMSdcdTAwMTOKU/A3xW5cdTAwMTY3bKHvI0ZMXCKhXHUwMDA0Xbd+Z3vc2Xbjx41RP1x1MDAxYuxeNX5cXCMroW786L/d8OvSILTBkr/C883z2K4+606X6U5+XFxHelx1MDAxY6JI1ldesUWFYFiZpLdgniV/XHUwMDAyXHRcYsFcdTAwMTShWlJcIpBcZnNcdTAwMGJcdTAwMGXGMFPY3arze+X2y1x1MDAxNHFcdTAwMWTIfZ1IXHUwMDBlXG5A+Cbt/2MjcnFbxsVkqXVcdTAwMWJP8Ci9z6mj0INcdTAwMWNcXFx1MDAwM4tpkH9CIDJ3d1x03DeQXHUwMDFiJ4b4XHUwMDE2XHL9YHyJ61x1MDAwN46EYlpvUFuTUmNcdTAwMTlvXoyOR3ejSSFnt3tdVFxmP8hcdTAwMDFgZm9mxlx1MDAwMTpcdTAwMDD1/Vx1MDAwNblAJoFG17bw/dNATlfs3Vx1MDAwZVx1MDAwZt1MTFx1MDAwN5+gXHUwMDFmn7cmT6RCXjJHj82JamfLTzRcdTAwMTJ+kFNlSYj5kamk4ZqQvVx1MDAwNTlhXHUwMDFhXHUwMDBlM/VjyT2W3DdcdTAwMDNNXHUwMDEwxVx1MDAxNG6pXHUwMDBlnvJcdTAwMTL5lr4qOZWMvFx1MDAxNZ3xdTWXqz3ehlx1MDAxZuRcXFpKcSVcdTAwMDEjRCPvtnp7XHUwMDA0cspMwzD0XHUwMDAzcq8l981UccEo1WqDRFUy1r066Vx1MDAwZTvR68f6XHUwMDE430fqvVxcOfy9lIiUps7JXHUwMDE4cdOz2pvW3SOMmz1ltKnV+nFXXHUwMDAyuyvK9CjgfFx1MDAwM0t+Q5xEI/X8knmZXGbPn5l6lI1y6PdcdTAwMDVcdTAwMDdwXHRcdTAwMGJ8M1N1S/FcXL/+N5SDoSdMcMVcdTAwMTk47DvaIHVLXHJOKWPCd8fUP1x1MDAxN+X+/lxuNvqNXHUwMDE53SC9Mrqq3Xfq5ydsoFx1MDAxOH4pJFx1MDAwNrH6XfhRXHUwMDBl0LaI5EzAXHUwMDBmpIjaY5RcdTAwMDN0XGIz0yc/KJ/v/uhryyHmpJKKXHJWcVxmnHidtiM3z0JU77DsPqnic/gjT2omhE2rfmmWrFx1MDAxME69IDfY4lxmXFxcdTAwMWFcdTAwMDUw5CHu/lxin8BNXHLS2rZhf1x1MDAxYciFb288XHUwMDEwP1x1MDAxOIfcoGvYSbWYKDQ7OFa6P+6lnHijdnFcdTAwMTP6VeTgkzEw1VJysNRcXGosvCCXXHUwMDE2o1IgXG7BqXJ3+VxyXHUwMDFkyE23Tm7WrPxgfK5GYoW7wpTWUlx1MDAxMFx1MDAxYdySn1xcjnJcXFx1MDAxNJ1cXKafujjq2XcpcVx1MDAxMv4pTyqZZVxuZzmSTCG8YMiFhSSGXHUwMDEwRUqCQ9xcdTAwMThPYsWRlqGpLlxuXHTCiX+jam2asc9lo9ausk5Xm9FhpdzOlPOJ/l01XHUwMDEzaT/vQS92TS2zkSMghyGsNfdcIlx1MDAxY/CvhaBK4GlcdTAwMGbU8GJcXHCi4Vx1MDAwM9Y2qt5fjP96XHUwMDFi32G+07lz4CNcdTAwMGbfK5FcdTAwMGVcdTAwMDc1e3i85I6Xp3/M1U1cdTAwMTliUGhPXHUwMDBimP7+9ff/XHUwMDAz/ujZrSJ9in memory on disk Catalog Schemas Partition commit new partitions get candidate partitions given an expression Indexes Sketch Sketch ... Partition Parquet or Feather Indexes Sketch Sketch ... Parquet or Feather
Because of this transparent optimization, you can just exchange the source of a
pipeline and switch between historical and streaming execution without degrading
performance. A typical use case begins some exploratory data analysis involving
a few export
pipelines, but then would deploy the pipeline on streaming data
by exchanging the source with, say, from kafka
.
The difference between import
and from file <path> read parquet
(or export
and to file <path> write parquet
) is that the storage engine has the extra
catalog and indexes, managing the complexity of dealing with a large set of raw
Parquet files.
Delta, Iceberg, and Hudi?
We kept the catalog purposefully simple to iterate fast and gain experience in a
controlled system, rather than starting Lakehouse-grade with Delta
Lake , Iceberg , or
Hudi . We are looking forward to having the resources
to integrate with the existing lake management tooling.
P5: Built-in Networking to Create Data Fabrics Control Plane vs. Data Plane
The term data fabric is woven into many meanings. From a Tenzir perspective,
the set of interconnected pipelines through which data flows constitutes the
data plane , whereas the surrounding management platform at
app.tenzir.com to control the nodes constitute the
control plane . When we refer to "data fabric" we mean to the data plane
aspect.
Tenzir pipelines have built-in network communication, allowing you to create a
distributed fabric of dataflows to express intricate use cases. There are two
types of network connections: implicit and explicit ones:
eyJ2ZXJzaW9uIjoiMSIsImVuY29kaW5nIjoiYnN0cmluZyIsImNvbXByZXNzZWQiOnRydWUsImVuY29kZWQiOiJ4nO1bW1PbOlx1MDAxMH7nV2RyXour+6VvXHSXQFx1MDAwZoVcdTAwMDNcdTAwMTRcYj3T6TiOkpg4dmpcdTAwMWJy6fDfj2wgdpyEmNO0cWfsmUCyWkkraffT7kr+sVOpVMPJUFU/VKpqbJmO3fbNUfVdRH9QfmB7ri5C8e/Au/etmLNcdTAwMTeGw+DD+/fmcGgktVxmy1x1MDAxYjzVVI5cdTAwMWEoN1xmNO+/+nel8iP+m+rLsV1cdTAwMTXzxtSkJypAlnrquXGvXHUwMDEwXG5EOJFMzDjsYF93XHUwMDE1qrYu7phOoJKSiFTFXHUwMDEzWPdOXHUwMDFj+/ZcdTAwMTOr02u/ee9+P6sl3XZsx7lcZifO05hMq3fvp4RcbkLf66tcdTAwMWK7XHUwMDFk9qLeM/RZvcDTo09q+d59t+eqIJir41xyTctcdTAwMGUnXHUwMDExXHIkXHUwMDAzNN1u3EZCXHUwMDE5R1x1MDAxY5xcdTAwMTlcdTAwMWNKXHUwMDAyXHUwMDEx5lx1MDAxNFx1MDAxMUjRrDhuQEhcdTAwMDNIxlx1MDAxMSRcdTAwMWMhKFx1MDAxOM5Ituc5nlx1MDAxZkn2XHUwMDE3iJ9EtpZp9btaQLed8FiqTdpmwjN6XHUwMDFlb2pcdTAwMWR6yu72Qk0jXHQtUPGkQyyYXHUwMDE2XHUwMDAzs6Qk6mB43I7X/msy1b45UMdRXHUwMDE1995x0rPltp9na66gXHUwMDE1XHUwMDE1XHUwMDFjpNQoaep+2Dafllx1MDAxYzI9XHUwMDBmnFx1MDAxMom1XGKzcq1a/Wxzjmf1l2hJXHUwMDEwmn5Yt9227XazVZTbXlHimEG451xyXHUwMDA2dqjF+Mez3TDLXHUwMDExt1vzfW/UU+bCoHXLK8uGUXOJ3URP8q2SaEr8Y/b967v13GQtO3sjv5jjR8BcdTAwMDDpXHUwMDA3vq07bFCKOMSMXHUwMDBiXHUwMDAxXHUwMDAwXHUwMDA1UO1C+qZcdTAwMDGm5N1J/3989zZcYlx1MDAxMpivgiBcdTAwMDSBXHUwMDE0XHUwMDAwXHUwMDExynJD0GS//nfjbO/ztHOCmrsn17XDJm9cdTAwMTVcdTAwMWSCKM5A0HZcdTAwMTBoXqGSXmaAhKXBXHRmXHUwMDFhhKDkXHUwMDAyULKAT1RIPVx1MDAwZVx1MDAwMpI9o8SnwuBcdTAwMTNcdTAwMTRcdTAwMDaiXHUwMDE0XHUwMDEwrURAf5BM14bZtV3X2i7UXHUwMDE1iKScXHUwMDBiqT9cdTAwMWNIkm5vQVfWtcfnpcPotdbQ2ta4IVx1MDAwNIGMIVx1MDAwMphEiUnFYzVcdTAwMDSFXHUwMDAwcqHxhXAosNhcbvKxlKuRRT4gOVx1MDAwNkhPcG7kXHUwMDFiXGZcdTAwMWW+2W10NZqc1ih3T1x1MDAwMNpvoKIjXHUwMDFmpoVAvlxcvpfQWlx1MDAwZbS+J5tRiW2FwTaUcY5KX+1nXHUwMDEwy4zWbFx1MDAxOWSt9tWgIIhcdTAwMTKNqvl9tdMvLXDbrMvrh9rkjPTCXHUwMDAzXHUwMDBmN4ZFRyz0KmJp3M6LWFxuYIjh64ilpLJUZ1x1MDAxMbEgWlx1MDAwMllcdTAwMGKIxSSRXGJsJFj8MVOgXHUwMDE3XHUwMDFkedmBXHUwMDFmS1x1MDAxY9uoj4Z+jeFSmCW+XHUwMDE4LtM+O9P+Vn67bV1dwM7uXcPaZT1yd3lv9T829otut+TVXHUwMDE4q1B2XHUwMDBiOZWUYSY2XHUwMDEwRZWG+2dcdTAwMThuqMbhMruFWGapSXZcdTAwMDRigClC+WOEw8Nv/vH5dL/Xx03AxqqLXHUwMDFhlFx1MDAxNt1yXHUwMDExj9wnooM5gDmmIJmQuD75LZaLKDKwjj1cdTAwMTnW4Vwi1UaQ4MfMkFFCe7FkKTiDlIBccmzBW4hcdTAwMTk6nlx1MDAxYl7a06eAdI56aFx1MDAwZWxnMreksVx1MDAwNusptFx1MDAwN0PH1otbcVU48vx+xfJcXFdZYaTPc8w1x+5GKl619CCUP6f9oW2Zzowh9FJuoW4uNHVE7S9Ol+fbXds1nc9vXHUwMDExJYrOj16WXHUwMDEwXHUwMDFhqUVsmYGKY/fIu33VeldG+IBlqYm/zCFcIlxmpFx1MDAwMs111tu4/MRF1+/fmuOL6bhcdTAwMDFMfl13im69WXd5/nRcdTAwMDXnt95fXHUwMDFm4Vx1MDAwYsE1QqCtJi8pXHUwMDEyXHUwMDAw8bRylvvrXCJ3XHUwMDE5sD9cdTAwMTHXXHUwMDFmrjCapc5cdTAwMDCIXHRO9O4k8rtcdTAwMGbHdzWtoV+uvoxUu9VcdTAwMWS7kFxmJ7zoXHUwMDAwhGAxXHUwMDEwaFx1MDAwM6crulx1MDAxMFJcZlhSUlx1MDAwMlRhXHUwMDAwqjxdeVx1MDAxOWtBTlc4zlKT01x1MDAxNcSZhG+JnGRzdGpfXHKvXHUwMDBlLa9pT0emj/rndtGhXHUwMDBmZnNcdTAwMWVcdTAwMDV2vqDEXHUwMDA0XGIg8TaPV0pwK49Xtnm8kto1lmBcdTAwMTaRksg3uGvhXHK3XHUwMDFhk4+nvXP/JDzYb3b6XHUwMDBm3ydFxywkpaF3XHUwMDBmytB8hlx1MDAxNrPfk6GV2MB6kpcmeJacXHRjvcdFV/J+XHUwMDFltDadqaWY6lxyvcSyXHUwMDA17iVLnKmXy4hXZ2xX5nxcdTAwMTjV8MKJyJ/y2TuYXFzc1I8+3bpcdTAwMWb7u+d3XHUwMDE38O+Di8LfqEWMXHUwMDFiXHUwMDA0R7fANKpqV1x1MDAxMyaQXHUwMDE1W/LvOWtBVEtBtfPMXHUwMDA1RlFeJ1/GVlx1MDAwMC2w9kL+zFx1MDAxYmz/K2OrxoXJ2OZcdTAwMTLll2Zs0cqogVx1MDAxMcBltFxy57Ze+E1cdTAwMDT+0SknZ7tHwd1l/aZmtnpFt15cIl87KC1UzMCQXHUwMDA0evdNXHUwMDE1bCFkwFx1MDAwMFwikdbNcptd5C5DgCfi+oStWHknVFx1MDAxYlx1MDAxYkWYQpbffahdTWt73Vx1MDAxYvMw8LsuU8zqqcZ50Vx1MDAwMYi9esPqXHUwMDBmytdcIqi1iqJNXFzjKOFp41FAma59XHUwMDFla0HStXLlm4ja51x1MDAwMlxmXHUwMDEyXGLye17Txun0+Fx1MDAwMKLG2dFdYI+Dh4NcdTAwMGLnc9GBj2bfRCyu51x1MDAxNb2ZXHUwMDA1XGLebphUYluZrd2kq7bzXFy/alx1MDAwZYeXoda16ktWrvpgq1F9iVx1MDAxNXXip7rzjHdcdTAwMTGwqDiZ97jz+Fx1MDAxZlx1MDAxZVs7eiJ9implicit network connection explicit network connection
An implicit network connection exists, for example, when you use the tenzir
binary on the command line to run a pipeline that ends in
import
:
tenzir 'load gcs bkt/eve.json
| read suricata
| where #schema != "suricata.stats"
| import
'
This results in the following pipeline execution:
eyJ2ZXJzaW9uIjoiMSIsImVuY29kaW5nIjoiYnN0cmluZyIsImNvbXByZXNzZWQiOnRydWUsImVuY29kZWQiOiJ4nO2ba1PiSFx1MDAxN8ff+yks9u2Y7ftl38k4jrdHnXW8MFtbUyE0XHUwMDEwjUlMgqBT892fk6hcdTAwMDRcItHgXHUwMDAyK7PEXHUwMDAyobuT7nTO/9fnnIRcdTAwMWZr6+u15C40tT/Wa2bg2J7biux+7UNafmui2FxyfKhcItn3OOhFTtaymyRh/Mfvv9thaOV7WU5w/bCn8cy18ZNcdTAwMTja/lx1MDAwNd/X139k7yN9ea5vsrZZad6TlqpYelx1MDAxOPhZr5hzgqlklFxmW7jxXHUwMDE2dJWYXHUwMDE2VLdtLzZ5TVpU879cdTAwMWNcXF5dXHUwMDFlXHUwMDA2n7e58vZcdTAwMDJcdTAwMTPuJ9snebdt1/NOkjsvXHUwMDFikVx1MDAxM1x1MDAwNXG80bVcdTAwMTOnm7eIkyi4MuduK+mmIyiUXHUwMDBm941cdTAwMDOYgXyvKOh1ur6J47F9gtB23OQuLUNoWGr7nexcdTAwMTh5ySCdcIIsgSlnmlx1MDAxMkYxXHUwMDE5Oef0XHUwMDAwRHNcdTAwMGJcdTAwMTGMOdaUIcWQKIzsY+BcdTAwMDVROrIksv04tCO4XHUwMDFh+fiatnPVgUH6rWG731xiUU0j8jb9x3Nm+cC6xu10k/Gy2GSTT1x1MDAxMEFcdTAwMTQrKvOBpFx1MDAxZIS7rcxcdTAwMDb+zqc8sq/N7sPFiVx1MDAwZi7P7lx1MDAxYjvoVFx1MDAwZr7ei1x1MDAwYnKws6XHJtFvPU6i3/O8fPRpxadcdTAwMTFcdTAwMGLLj95cdTAwMGJb9oM1YKGFlFxcSEq4XHUwMDFl1oPVXVx1MDAxNVx1MDAwZudcdTAwMDXO1Vx1MDAwNFx1MDAwM4pcdTAwMTM7Suqu33L9TnFcdTAwMTfjt0pqPDtOPlx1MDAwNtfXblx1MDAwMsM4XHUwMDBlXFw/KbbIjrtcdTAwMTlFQb9r7NaEI5fWhenhckmlW/5pPTeg7Mvw899cdTAwMWZeb81ebVx1MDAwZeaIxjY23f5srD9Sob+3n81I67XR/z8/TIdcIlxmtCllXHUwMDExTIHkWoqcVq+yqKcvtq9ss3mwXHUwMDE5+qc38bE6vMHLwFwirFx1MDAxNs1cIiWU0ZNYhC3JmOZSKlxyL5mfz1x1MDAwYmiCkWnFsMxNdoWm5UHT66jYKFx1MDAxOFx1MDAwNdJjbKJcdTAwMWGqqaBKYPAtXHUwMDEwZ9Ohalq0/Tuo0oiXkopcdTAwMTApmFx1MDAxMCpcdTAwMTfGa6TaQ59cdTAwMWLf0c432m9ttPvyTN5cdTAwMWV/sktI1bWdbi8yv1x1MDAxMKV+wyb9e5FQXHUwMDEzSfZEKVXNY1x1MDAxMoAlXCJGhrmi0i9EpSkhXCKmbK9cbsNcdTAwMTn3zvB03VFcdTAwMGJcIiuJqZBKIcRcdTAwMTE2XHUwMDFimP87XHUwMDFjU6VcdTAwMWVcdTAwMTdcdTAwMTdcZsxT6Vxct69h7Cw4kE7ja7jLP13gxqD7vdn+XHUwMDEyLYPDRVFcdTAwMDFl8/a3XHUwMDE4clx1MDAxMJdvjf0wXHUwMDEymChN1crBWkKUrWK/kthPXHUwMDE0i59IJDVWjKIp0lD1Y2ZfNPY3tztccr/VbJ8lTsPxloFERCyYRKVZqLdEfpJLgdXKw1pcdTAwMTIsYWVcdTAwMTHOXHUwMDExI1x1MDAwNCN4XHUwMDExPbo3njaMW4WFXHUwMDEwiWhdLH2CXHUwMDE4QVx1MDAxNOJcdTAwMGapSfVcdTAwMDTWXHUwMDFkXHUwMDEz9c+k4Z/40TFqOvWr3cPzo/dcdTAwMWVcdTAwMTbOimBcdTAwMGKKXG6x0im0VrmqJWFcdTAwMTZZhYVcdTAwMGJJb+Fi6TC9pYVgSpEp0lsnW4Po9vzUJn33OGhGza9Hd1x1MDAxYmVcdTAwMWN7V95cdTAwMTggamEsK41cdKtxTFwipCVcdTAwMTjPyvdacWx9xbGnqFx1MDAxMvRZXG4yULRcdTAwMDbnXHUwMDE3V09woZ3OkXdQv0q2T0nv821oXHUwMDBld/w/l1x1MDAwMWR80WFl6VxyxWqpelx0XHUwMDE3RvCRe70rmL1nmP2jSG32+az3XHUwMDEwXHRiwsrJw5Ek07lQe6y5Te+p19jc27o8Nd557/pibynIU3yuat7kKU2tvyWhRZBgKH1bkWg5SLRKaU1o/Y9ANpqwKt4hZJhqeKvuQN3dNra9fVRP7lx1MDAwZs82j8OrZFx1MDAxN3V23ntGa1ZcYltURosrKUBcdTAwMDJyXHUwMDE1XG4uXHUwMDA3s+ZcdTAwMWNcbqop20ttaUHBlrFATGuMx0dnIVBcdTAwMDKVijHFgYdiuu7nyzA7vV6TIEZo+YOlXHUwMDFhKIYx1tXvLoZtNUhcdTAwMWM32t3fo4KdXHUwMDBmtjpfuv33TjH2XCLFKK5MMYMoTNjLTpjRxjHt51x1MDAwNMNkXHUwMDAywp5cdTAwMTGMXHTKKKF5UmGmXHUwMDAw+zE0qie7IY8lP1dcXJupL1b6XFxBJTEnZpBM0rLQpYFcdTAwMTVTXHUwMDA0bJuz/GbOq3FV0vdvuslFs4dcdTAwMGW2jv3+4OaGL0dcXEWZJTnjgGrNNNKFhy+Fslx1MDAxOFx1MDAxMyh1TqXQI2KfZWaaXHUwMDBicLaf61x1MDAxOdzsfDRP6WmmXHUwMDE5V4r/Mr9WaVx1MDAwN35y4t5nK4hcdTAwMTgr3bavXS9j6rA4M2U4Jfc6XGaiXHUwMDExo07LNz2342fmXHUwMDA14zXRmMUnrmN7w1x1MDAwNklcdTAwMTDmtVx1MDAwZfRkg8tcdTAwMWXtPlx1MDAxM3FcdTAwMTC5XHUwMDFk17e9ryW9pp7+zvBijVxcq6ZcdTAwMWSbLFxmSJ3IN2lTSlQsfdKmXHUwMDAyR1x1MDAxOSyRVc95XHUwMDFj9rpsn3v1XHUwMDAz8u3jxifc1Jr735dBm7CGWiBcdTAwMThMwX1cImBiuFx1MDAxMDFcYm5xXHUwMDA1alBcYlx0jPh8blx1MDAxYlFpVdQmXHUwMDA2ZUpcdTAwMGVcdTAwMDHsfNbbZVx1MDAxMadcdTAwMTfYrUVLc7zPOVxuU4nyX3lKhDHDWlZcdTAwMGbjlVx1MDAxNsb3u577cWvL9r9cdTAwMWZd/k/Ul+PxOsktKiRijDBcYpB5fpTMJlx1MDAxOLeI1khRrrkmcj6r5lx1MDAxNMLk4EIpQtkv83DKm4RcdTAwMTmZxVx1MDAwYnO8zzlcblPzXHUwMDE3fn5ccnZKhebVI1N5XHUwMDE2XHKEf9fo29/I/p/o7HJwdFlfXHUwMDA2YcJSaUmNwGOFXHJcdTAwMGI0LkxcIrCllU5cdTAwMTnFXHUwMDE5krCAzkWZTFiwXHUwMDEwVtMmh1xiXHUwMDE1g1x1MDAwZf7bayZcdTAwMDSRo7mNxWiz0OlcZsSZXaRJ6uREli+bXG4jXHUwMDAxXHUwMDFlbXWH9lx1MDAxNVx1MDAwM3ifeaP824NcdTAwMTJRoedZprcnJIcwRlx1MDAxNlx1MDAwMVx1MDAwNlJMwJtOt2erpFx1MDAxNlx1MDAwMsO1UNWlOGZeM9BcdTAwMWTC4C9gTkdtsqru/NT0XHUwMDFlmj7Y6NpjQqVmh+FJXHUwMDAy3dSecla1W9f061x1MDAxM4DWzrba2qOFp5ZkslTXz7Wf/1x1MDAwN1xmXfFcdTAwMDIifQ==import load read where
A historical query, like export | where <expr> | to <connector>
, has the
network connection at the other end:
eyJ2ZXJzaW9uIjoiMSIsImVuY29kaW5nIjoiYnN0cmluZyIsImNvbXByZXNzZWQiOnRydWUsImVuY29kZWQiOiJ4nO1a61faSlx1MDAxMP/uX+GhX2u670e/KWq1x1x1MDAwN7dYqb2npycmXHUwMDBiRENcdTAwMTKT+KLH//1Oolx1MDAxMIgg4EUrXHUwMDFlomgyO7szuzvz25khf1ZWVyvpbWQqn1cr5saxfc+N7evKx4x+ZeLEXHUwMDBiXHUwMDAzaFwi+XNcdTAwMTJexk7O2U7TKPn86ZNcdTAwMWRFVtHLcsLOfU/jm45cdNJcdTAwMDR4/4Xn1dU/+d9cdTAwMDFZvlx1MDAxN5icN6dcdTAwMTaSMOKyTD5cYoNcXCzWQkjMkVx1MDAxNn1cdTAwMGUv2Vx1MDAwNFmpcaG5afuJKVoyUuUribc4222ttTqhdNZ2jn+qo9NCbtPz/Xp66+cqOXGYJGttO3XaXHUwMDA1R5LG4blpeG7azjQo0ft9k1x1MDAxMJag6Fx1MDAxNYeXrXZgkmSoT1x1MDAxONmOl97ms0R9qlx1MDAxZLTyMVxuyk224lx1MDAwMltKccxcdENcZibOizlnXHUwMDAzXHUwMDEwTS2thSRcZlx1MDAwYiWxpiXFqqFcdTAwMWbGmWJpbFx1MDAwN0lkx7BcdTAwMWKFeqe2c95cdTAwMDJcdTAwMWRcdTAwMDO3z/eBIVx1MDAwN5a+4Ll+mDIr9GpcdTAwMWKv1U6HaYnJ115T0FVoxPpcctn40a6bm8CvYsFju2N2861cdJK9s+PuyVx1MDAwZfqub4664lx1MDAwN9nb2dRDS1x1MDAxOLhcdTAwMGZLXHUwMDE4XFz6fqF81rA1YGDF6JeRa9/bXHUwMDAy6FwipOSSII14v1x1MDAxZIzuvDycXHUwMDFmOucjzCdJ7Tjd8Fx1MDAwMtdcdTAwMGJa5S4mcMe0+HaSVsNOx0tBjVroXHUwMDA1aZkjXHUwMDFmdz2Ow+u2sd1cdTAwMTEjj22LsuFcbo/KruJutTCf/KF//+vjZG42kZ0gXHUwMDBiXHJdbLb+bEhcdTAwMWWZQt7zZzPAvTL4/+7jjEhENC6Te0ikKKLwS9TUQJT+sK9s451cdTAwMWbt3P7Y/3pyWK1cdTAwMWVH3kJcdTAwMDBcdTAwMTF5ZSBSQlx1MDAxOS1GXHUwMDAwXHUwMDExtiRjmkupNHxkMZ0ncYlcdTAwMTOMQPklLi1cdTAwMWUuTcaJtZJNID1cdTAwMDRMVEMzXHUwMDE1VFx0rKVCnM2GU7Pi2t/BKa1omdqDKYJkZm6YXHUwMDE1x/IknELB4W5yVr26XHS/0+szXHUwMDFkOYz/k4zBqbbttC9j834w6lx1MDAwMzbZz5P4NFx1MDAxMsd6XHUwMDE4paZcbpaYoFx1MDAwMnRZXHUwMDA2S+9cdTAwMTOUZsRcdTAwMTAxI78qqTNcdTAwMWOZ4dnEUYtzXCIxXHUwMDE1UimEOMJmXHLzv1x1MDAwNGO8TC3yPrggXHUwMDFjK6LCiTDW3GQobf8+oNtOUttz1/2L7e7JXCKEW1x1MDAxNL1cdTAwMWWUjc35poMxLFx1MDAxOSaUqVx1MDAwMVx1MDAxNZc49pZxjCyB7DXyRsg3xlwiXHUwMDE51VJwJmdcYshcdTAwMWGdajc8vjqodt1G57C5tXdIwFx1MDAwNFx1MDAxN1x1MDAwMMl4KSj7a3njdFx1MDAwNSwlhaBSLWOyxcCy/5Wozb9g9Vx1MDAxNlx1MDAxMkFMyVjg4VxiSTjqXHUwMDA36iCTcOew07g04bpcdTAwMWLXt2rJZtdcdTAwMTGn5MvZXCLgXHUwMDBlU2+lcv6cglx1MDAxNcGYgfZqYJpLIHrLQISVRThHjFx1MDAxMIzgQ/RgbzxrXHUwMDAxalnQyl1cXJXJPVx1MDAxY6NcYlx1MDAxMVxujj194d2urd3u81x1MDAxZHeTst9J3aFcdTAwMDebabP71lx1MDAwYlrzwrBXKmhRToRcdTAwMTCcLlx1MDAxM8HFwKxcdTAwMTdOXHUwMDA01Yz8UltaUMpcdTAwMTBcdTAwMTaIaY3xsHZcdTAwMTainGWhOVNcdTAwMWPwUMwm/mUxzM72a1x1MDAxNIhRPD5cdJSMM64wnf41XHUwMDA2+0sjQG6rvoG9XfPte3hwXaNcdTAwMWJvXHUwMDFkxOjTIEbxtCBmXHUwMDEw8OKngzCjjWOaj1x1MDAwMVxmk1x1MDAxMVxi9jjqolSChemXXHUwMDAxsD99o+rZXHJ5oNwtcW2usdjY91x1MDAwNqZy5tTcpCNcdTAwMDNcdTAwMTLCRJncc2bBKFVDtj3Jl8PaxubNb36x73ZcXHZtXHUwMDA0a12tfVuExFxuIM1cIopcdTAwMTClKaCwRv1I996dXHUwMDE5s5BASiDCmYZcYkWWXHUwMDE0m09pmlx0S8nC9vsuXHKRdpHb9lxu1DR7X0zB9V7ikmZcdTAwMTikda+bn1wiYoi6bXc8P9+HPjk3Z5hcdTAwMTL43eBxkJHXfa9cdTAwMTXkXHUwMDA2XHUwMDA26pp4yOhTz7H9PkNcdTAwMWFGRatcdTAwMDOCbIja491Hflx1MDAxY8Zey1x1MDAwYmz/aLTQLNbf6e/VwFad2onJXHUwMDEzXHUwMDAxIPPneSfkXHUwMDAzY4/aLJXWXHUwMDAyz1D3OL6ijebPdu3gtN7aTpDq2rU6WVx1MDAwNPckhFtcblx1MDAwZVNCXHUwMDEwkrAoXHUwMDAzXHUwMDA3ap4zXGJIVOFcdTAwMTRGXG7SSySRKCk2XHUwMDFm9+RcdTAwMDKy4Wm9UylwXHUwMDAzwd5NpeNZ3mluojBOX9s9y1Jf0j9cdTAwMTlcdTAwMWH/Ri9cdTAwMTOMQ+w1wze7rLFv7PpcdTAwMDU/XHRv10/R7c9LXHUwMDEz1vxF8E9cdTAwMGXxLlx1MDAxN5hRXHUwMDAycCThZtg9JbIoUkRnTlx1MDAwMdFyWa/5uCdW1tSHJ4KMnnEk3s03XCLPcs80fG3XXHUwMDFjlDhcdTAwMDe3zLdnlF+CXHUwMDExjnVLqbLtn+WFi1x0W/82M9Ti6f6ERCXJ86yjjUhDMUZcdTAwMTZcdTAwMTGaU0gwdH49ckItXHUwMDA0hr1Q05+RQ7Y1XHUwMDA3j0NYc405XHUwMDFktMlpPS7ITO+e9d5GV1x1MDAxZVK3ilx1MDAxZEX1XHUwMDE0xFR62XHlyjPXXHUwMDFiI6CsmV+VlVx1MDAwN1x1MDAwYs8syeRJ9d3K3X97k95cdTAwMDIifQ==where export to
Tenzir pipelines are eschewing networking to minimize latency and maximize
throughput. So we generally transfer ownership of operators between processes as
late as possible to prefer local, high-bandwidth communication. For maximum
control over placement of computation, you can override the automatic operator
location with the local
and remote
operator modifiers.
The above examples are implicit network connections because they're not visible
in the pipeline definition. An explicit network connection terminates a pipeline
as source or sink:
eyJ2ZXJzaW9uIjoiMSIsImVuY29kaW5nIjoiYnN0cmluZyIsImNvbXByZXNzZWQiOnRydWUsImVuY29kZWQiOiJ4nO1daVfizLb+3r/C5f36klO75jrfXHUwMDE4XHUwMDE00dZG0Xa45yxXhDBcYlx1MDAxMmRcdTAwMTJ4V//3u1x1MDAwYltcYkNcdTAwMThcdTAwMTTs+F5Y3XabhEol2c+zx9r5+9ve3n673/D2/7237/Xybq1SaLov+3/Z7V2v2ar4ddxFh7+3/E4zPzyy3G43Wv/+17/cRsNcdTAwMTl/y8n7T6/f9Grek1dvt/DY/8Xf9/b+XHUwMDFl/lxmnKtWqXvDY4dbx2eSWk5vPfPrw7NyLrhQkvLRXHUwMDAxlVZcbs/U9lxuuLfo1lreeI/dtJ8/V1Qmrm5cdTAwMGUvXHUwMDBmXHUwMDEzydpFg7Z6J4GzXHUwMDE2K7Vart2vvV6Smy93moG9rXbTr3rXlUK7jPthavvoey1cdTAwMWYvfvytpt8pleteqzXxXHUwMDFkv+HmK+2+3UbIaKtbL1xyx1x1MDAxOG/p4W/MOExcdTAwMTj8YyRTRlx1MDAxMTbaa79PKXGMXHUwMDEwuEdrJVx1MDAxNFx1MDAxN1PzSvo1v2nn9T9k+Fx1MDAxOc/swc1XSzi9emF8TN4r8II7Publ99Xq8ZTKXqVUbtvbP97W8oa3XFwozYyWjI522PFcdTAwMWKZwvC5/3d8n5vuk5ex36h3arXgrapcdTAwMTd+36qJXHUwMDFkXHUwMDBmdsdBQITGQ3VcdTAwMWFcdTAwMDX39XmDNFIpoVx1MDAwNadMj/ajWFWnh6v5+epcdTAwMWNcdTAwMTFptd1mO1GpXHUwMDE3KvXS9Fe8eiFkT81ttZP+01OljdPI+pV6e/qI4bjxZtN/KXvuzEXjyKH7XHUwMDFhdrgxZuxn/L+9sZhcZn9cdTAwMTn9/79/LT+aLz1cXK55vJ44XHUwMDFlhZJcdTAwMDQ/sN7pmCNcdTAwMDRVwKTSmlx1MDAxMEHAi4FY61x1MDAwMlx1MDAwM/P9XHUwMDE2/PfXX+vRj1x0XHUwMDAwaop+XHUwMDAwuKBUKTYmqGX8w7xcXLHRyNXcXHUwMDE3XHLN7M/Tq16vfVx1MDAxOXX+XHUwMDAxXHUwMDEzXHRcdTAwMDKaXHUwMDE0qPFcdTAwMWNGfIQ8qTiTTEswSlx1MDAxMzFWXHUwMDBiv+mJXHUwMDEypaXmjI7pYcdPkeEn0Fx1MDAwZVx1MDAxNYJwSoHgX2qC34bpZ7tstFx1MDAxOOBcdTAwMTe4XHUwMDExSmmDf1x1MDAxNTE8ON6MrCxcdTAwMWJPTc5urOLmjUaXjqZcdTAwMWOtOUi0XYg0XHUwMDE0xMS1OlpcdTAwMDBcdTAwMDGlXHUwMDAxJ61AM/1HmE9cdDa9dcR8TKHlJY1e3fLyXG45eVBcdTAwMWO0qvlsx/yg/nNa3D5HnvkgXHUwMDEyzLeK6aUkQzmXgVx1MDAxZDtqi1xmtdEp22hnqm2FsIie3vpGWMjOYEDA2DFZxlfpot+4dr1cXO6lRMup+3NcdTAwMTaH3EvU+Yovdlx1MDAxNWGar6Zn9pmEZZjV8ZzvbLFcYlx1MDAxMtaOgOzPtX1FqUItJiFcdTAwMTSAXCKrXHUwMDFiTMeXN1x1MDAxOf9cdTAwMTGOyVX1pH6byMlkuuFHnYDElKv4Z+jn456i1lxm8FwiYFx1MDAxN8iKIDntXHUwMDFjxbdrjYijqMJDZFx1MDAwNFx1MDAwNKVCw+ohstOn5lx061ZPb1x1MDAxYb2Ls9ZcdTAwMDNkst3HQeR5XHUwMDBmosB7q5hdKEpcdTAwMWGFPeC575gtMsy281x1MDAxM1x1MDAxN13gxvhcblx1MDAxNoT0tUBcdTAwMDSv4Sdmv2u/QfRzmcczilWu5c/Ll1TU6WqJn1x1MDAxOKW4XHUwMDE206jjkDTGXG5kx1eR4atcdTAwMWT/2J9ru4mKT29cdTAwMWTxj2JcdTAwMTJhydZcYqyft/tcdP8mc1x1MDAxYn9cdTAwMTCdh6J8hOejXHUwMDE0jzpcdTAwMDEt9Fx1MDAxM79OQlx1MDAxMdDoloLvXG5cdTAwMWVcIslOOz/x7Voj4idqOr11zHtKXHUwMDE5YCRcdTAwMTBccl7Ge/R5cJJMPZZOYo3W2Vx1MDAxZNRrXt6NfCnXQj8xSmZcdTAwMTdcYlx1MDAwMYxcdL1cdTAwMGLPR5HZdn7iolx1MDAwYtxcdTAwMThf0VC+olx1MDAwNKhmazmKz91y5vDy4aDmytaDien498PmddT5aomjyKLEWEqgOcbNLrJcdTAwMTVFxtoxkP25tqeoYXrrXHUwMDFiXHUwMDAzSVxynGi6RmD9Xrm1+kX8sJhMy+OXgXxMXHUwMDBiXHUwMDExfYNpkaP4WfSzgXxcIjJcdTAwMTOXfFedXHUwMDE1RW7a+Ylv11x1MDAxYVx1MDAxNT/RTG9cdTAwMWTZXUoyIYlYnfWusrlis9/MZVx1MDAxYSenxydMXHUwMDFltu+7ka+4X+gmRsroYlx1MDAwNllccpTcuYlcdTAwMTEktp2buOhcdTAwMDLXpSvXPrN5fEVcdTAwMDWZ3jriKyOk4kSt7iaW0nnvoFx1MDAxNqurwenZ+YCleCZ3XHUwMDFjizpfMWpcdTAwMWNKUf1QQpRCPpggLEqVI6UmiFWuOJVmal5jMvJcYlx1MDAwM1x1MDAwNotcdMszXt4rzlx1MDAxMlx1MDAxNlx1MDAwMFxulF1cZsqNQUNLjM8y4i8tXHUwMDFkXHUwMDA1VGqlhdGCzobzjaSUw0ZqUv9cdTAwMWVJ15tcdTAwMDC96eZfO5LbqPVcdTAwMTb23O0nNv3IN4Z5XHUwMDFkujhGMUo1Z2p1XHUwMDFihSd+dE+flOpccrpxMIxkSK5RjD7mtbU9kfykXHUwMDEyIFx1MDAwM2bIXHUwMDEw80I5hlx1MDAwZlx1MDAxN1x0gaB46+XUxDZcdTAwMDd6rlx1MDAwMXBcdTAwMWUgiFx1MDAxMmZMtGPUU5xcdHC0kCnhwZjeW4VcdTAwMDFBbuKGbCBu9Fx1MDAwNUFcdTAwMWaY8u81+pnXlarZVueplmlfP2XOXHUwMDA3sYfry3LxeoxcdTAwMDR7O/x8Zyg9XHUwMDBlXHUwMDAyXHUwMDBmXVx1MDAxMMY4XHUwMDA1XHJyXGZcZnsn3YZFXHUwMDA0PiPB0amgXHUwMDE0tSFcdTAwMTiYuSlfim3mXHUwMDBinP1Mi9qm2Fx1MDAwNsLjQENyY0SsUTHwdO+mS3k3UWp2e278KkZdKDQjTzdLSpb4qk7RR+jGoLutUYy5RGFHQ2Z8llx1MDAxMdvM9kRcdTAwMDCNUlx1MDAxZqyA/f9EL1/Tplxifc5T315cdNWhYVx1MDAwZVx1MDAxNrpcXM1cdTAwMDZf1IRcdTAwMWS6XGbTXHUwMDBm/dOfPdVwXHUwMDBigiaz6ibOKEmzqGN6SXaJ6+hcdTAwMDQ67Dy4lGRcdTAwMTfAjSBcXHdxXHUwMDBi+3Pt5JJcdF+txlx1MDAxOSFUcLZ63Fx1MDAwMu5TnUr2MZnn593vsZPYc6/3XHUwMDEw+fWyXHUwMDBis0ufRT9cdTAwMWIoQ+RGXHUwMDEwI1x1MDAxNN2xU1x1MDAwNNlpl156u9ZopJfwOsJ4z95cdTAwMDP03tZYpXuRvWqZyv1p6aj0WOjHr55ZpXBcdTAwMWJ52luUXoqS1YVcbohLJXe0XHUwMDE2QVrbJZdcdTAwMTZd4MaSSzyA5im2QtEktmZ6ZbLq93IuT5HUWeGulj0p3eSKpVQ+6mQlkY+Y5lx1MDAwMoQyoGQglTZMhnPUh4pcdTAwMDPeXG67zliGL639SNyH0Tl0XHUwMDA1coavwNiOJobtalx1MDAxMKPIWEI7RnFt61x1MDAxNSihZtxX1n5ixNGgrSgxxDs+W71cdTAwMTTwXHUwMDBix1PGXHUwMDAxXHJDmeSoSZlZathRXHRcdTAwMGU6XSCEpjZcdTAwMThcdTAwMDJ8m+OBmFx1MDAxY3C54UlcdTAwMTFqXHUwMDA2NTJcdTAwMDGJ91x1MDAwN6hYcbiV+K/t9drz6I+J8Fx1MDAxYWxg2jZcdTAwMTFaI/LNXHUwMDFmK/HsXHUwMDE15PtHg/tW8aJ8WG/Aplx0sOBbXHUwMDFjbJJcdTAwMDGpYY6WeGvRdqaMqTG2+6/OnyOpYOiya6q50lx1MDAxZlx1MDAwYn1zkidCzVKgXHUwMDEyKOzGMI5mPcNcdTAwMTONL2VEiDRw5rfyIC0o5Vp9zfVxRb/ezlVcdTAwMDavXHUwMDA1/1x1MDAxM1tcdTAwMGbdp0qtP/FEh1x1MDAxMox38M5r+qfn+1x1MDAxM9vjtUrJSvN+XHUwMDFl5+s1J1x1MDAwNL1dybu10Vx1MDAwMW2/Md6bxzO56MU0Z++M36yUKnW3dlx1MDAxOXJW6/xcdTAwMWONNJVcdTAwMTN4NFx1MDAwZm7LXHUwMDFiukY2rfQ+m4SGr5+XXHUwMDFj1bTgq0OyW74uXHUwMDBlKo/nd+JKnbDyrai0L7tRt0mQTz8vXHUwMDE5XHUwMDE1hkg+xyaZ0+5DSctcdTAwMGW70ND7LVx1MDAxMkvp49u/UZOEf8hpXGJTmtyEL7Rktq1cdTAwMTUzayD0olJ9rLNOOZMw19xcdTAwMDNz2SnLUvSVptZcdTAwMGVcdTAwMTgwgjFEj5CTblx1MDAwM6XoNth2bISif4fajE7NbDNcdTAwMTDFs1xiSlxmVVx1MDAwNFGAqpnOSVx1MDAxOFx1MDAwM3WQQbRRaHfisdxcdTAwMDQqZd5cdTAwMTZcdTAwMGYo9G/411eiQFx1MDAxY1x1MDAxY4SB9aqRmMQ4dLlMqWavXHUwMDEyn61RJ065kjo171x1MDAwMqtcXNBg/jXAS8nqeeDibVxyaOOkfXxcdTAwMDGlxtmZvros3t1EXHUwMDFlrFx1MDAxYyVDMIHus5CCmUBD/df+WcpBn1x1MDAxYVxyXHUwMDBibTTaXHUwMDE38LFcdTAwMDLSULCi0ka3hlOUTKVhJazOXHUwMDE0k1x1MDAwMZWMXHUwMDEwLfXX1LdcdTAwMWJcdTAwMDFr7vPBmvsksFx1MDAwNvumTZd9XHUwMDFhTShcdTAwMDQrXHUwMDEwl2FVJ7zY4V3zMXF5out+9rR/3+xtuiX6Z2OVUuZcdTAwMTDUd1Irg0Io6JZcdTAwMTTrRrCKip/zXHUwMDFkVv+hWNU6VLEqtFx1MDAwZVx1MDAxOV9j7eziativXHRVxqnDXGZoLqUwilx1MDAwN4QwekjVWlx1MDAxMsWo2HpcdTAwMTe43zv2XHUwMDAytZZ7q5XpT8jka+hktOfX7//teOBcdTAwMGbwXHUwMDAwXG5UKFx1MDAwZlx1MDAxMETHWl2HXHUwMDEyZy2vXv1cdTAwMTE/rqqDXHUwMDEz2i30L/VVI/JEgNrYodKWg6A/TIMwXHUwMDFhXHUwMDEyXHUwMDAxXHUwMDE4h1x1MDAxOMtcdTAwMDSCMqpYYGnLRuNVzFx1MDAxMdrYiFx1MDAxOUOwXHUwMDEz+T4qXHUwMDEw1lx1MDAxOdbsi3bm3owz3PRcdTAwMGKdfFx1MDAxMJOf5Fx1MDAxMc+cd4uotamkMNhSYZdyab06bFWanmfrVzfVa1KN36RcdTAwMGVY77IpXCJcdTAwMGZbprXDiO0wSFx1MDAxOedcIlD4Z78vXGJ3pNZKK4G6UWiyJdhyXHUwMDA3TWSUT7A1XHUwMDExLFx1MDAxMDhcXEeBXHUwMDAz2IUx8EVcdTAwMTPjXHUwMDFigW3Sr6NcdTAwMTH5+bCdPe9cdTAwMTZhSyG0XFxcdTAwMDUlQFM0m9YoKk5cdTAwMWTfPl3c69rAc5OP+ZuLTDp5UY88bFx1MDAwNVx1MDAwM4chdrnVqchjk/laTlx1MDAwNZrdXHUwMDEy0KA1glx1MDAxYWk+tjIyXGa2XHUwMDAyqWOJsp3N11JcdTAwMDS4IfBnk0U4Xc6CsrrVdO2JW6y6IZCsecX2XHUwMDE2XHUwMDAwOXXKraZqmVxmXHJYccZsZ+1AXHUwMDE10zI4dtzzpMn19H2CpZuskislepnzXHLDceO5Wr2w5eanLFx1MDAxYoTVUrWoPKWmgv3DW51cdTAwMDdWMb6tIaZcdTAwMGV6+IqgcrBLaiWMJrD3toRYO3h7cLetXHUwMDFiN2hNXHUwMDA0apkm1y3/ONZZX/bdgk7+PH2sVnPpwm31zVx1MDAxM/+CXHUwMDBijmPwsVx1MDAxY3HTy7dfgTFPW4d6xsC4UWDWeWNcdTAwMWX1bvz0XT719OPeXFxcdTAwMTWQJO+fUpF/XHUwMDEzwmJ2IJsshV+LXHUwMDFk9Cw9UFwitdhMR97ZhcRsXHUwMDA2ISuGxuZcdTAwMWGEXHUwMDAxqTh/fLlIxdJ9XHUwMDA2nfhJ8Ua7ZzV2vd3I2LtcZle2IFx1MDAwYkuBKVijn8f8a446XHUwMDEyuHFsXHUwMDBmbk2Jda9n8jqfXHUwMDAxXHUwMDA1W+SKUEQpXHUwMDA3XCK4XGY4+It6kCFLSXSBv+hbvYO+pZzYusBqjVx1MDAwZlBm/lM/6OLUjjpcdTAwMGat9/qUT5VCIahcdTAwMWEmrdhllD5t2IbPaiVcdTAwMWKX8Xchl1x1MDAwNjyomeZcdTAwMThMXHUwMDFiQ/RcdTAwMWFcdTAwMDVcdTAwMTTJg+/VxmkhJeDo8mfiIdvvXGY6XHUwMDE3kXc5kaJcdTAwMWP7XCJcbrB9R8CQSZeTXCK0mWZaSGG4IIRuJ1IkhKOGetRoQ22yZ1x1MDAxNr2zLqdcdTAwMDRjX/Hz9Vx1MDAwM0Oru5zx0/Ps53qck2fchMNcdTAwMTlcdTAwMWG2JVx1MDAxMIpGQVx1MDAwNVx1MDAxMYauXHUwMDExtp1vzEdcdTAwMWSMNttcIoiRknAmUImNR3nTpFx1MDAwMndcdTAwMWKqhotcdTAwMTeEmppZlLItaFx1MDAwYjBAnb+J7jXvT7wuXrc2IZfTide/XHUwMDE2jbs4nrFw3C2YrXMtgl2SaCHbMFx1MDAxNdrDwq5Tolx1MDAxY0331e32n5VB9Wc5oTt3/VpcIlx1MDAwM83mQ/+wXHUwMDEwebpR0vY4RFx1MDAxOZmbJVx1MDAxYdFcclx1MDAxYmaJgu/giVxclkgwrpVcbi75+lpkXHUwMDEzeVL4R6WgXHUwMDE2vDQh3CHQnFx1MDAxMlx1MDAwMmJccmf+4DZ//nSVPTrtJVx1MDAxZu/ybZPyjltHkXfmKbVlmFx1MDAxYdD7XHUwMDExiqhxnO/1+9LhQJRGZ8EmqHi4P/ChwJatK+HodXBtw7pcXM4hXHUwMDA1SVx1MDAxZM1sh1Yp8NlcdTAwMDCfkzlGzmDchHRcdTAwMThcdTAwMWaBb/+5cJVuXpRcdTAwMWLlRzZI+KnaXHUwMDE1gGtcdTAwMDK43WeV+JG5q6TjpPHQV730QbJ5dlx1MDAxNjzg8ORcIiu69WLn8Tye4lx1MDAwZvcx/ziffoP31lx1MDAxYvVNXGY2Q1x1MDAxY4ZCMC331ZZQbTE+TlCrMCGUIYwram9W8PvUmsFcdTAwMDLtX4JqxTCydNk0cWxcdTAwMDZU2Fx1MDAwMJhETSblRENcdTAwMWOuXHUwMDFjblx1MDAxN1x1MDAxNVx1MDAxOdtyXHUwMDAwXHUwMDA0W9pcdTAwMTCHOFx1MDAwNDRcdTAwMTVWglx1MDAwMcXc9iBcdTAwMGWOJ1D8jbbam0qCqnFpR1x1MDAxY+lcdTAwMTDDpMY5gMKvTF4sOuBoXHUwMDAyXHUwMDE4YtsgcyGXNr2gXG6JXHUwMDE3eYBcdTAwMTkhkVx1MDAxMic7XHUwMDEzXHTciVwip1CtS8NcdTAwMTRfeuckc4btKGy/c4VcdTAwMGZkcr05XHUwMDBlp6ldXk+RbzjuXFw2nFHDXHUwMDA15Vx1MDAxY9lcXFx1MDAxMiBsYjDpaFx1MDAxY4RcdTAwMGKNZE6ZWXqlXHUwMDAwwmFod1gqQtXJzORwXHUwMDFjnyqz2Scq0WVjy3t9XHUwMDAw4OVcdTAwMTjB7fumXGZwOf1QXHUwMDA10OHKS81cYp52+WivTZiIxGc3/OaEzNncl6HUXHUwMDE4245SXHUwMDFhtcrkjELZRbFnXHUwMDFh0Vx1MDAwMcHhmGM0Z3hDUVx1MDAxM6JvKpc+VztcdTAwMWNjyM9cdTAwMWOtbZh6XHUwMDEyXGI/0Fx1MDAwNuVNom1cdIiYXHUwMDE1rpZcdTAwMThcdTAwMDdFztrmXG5cdTAwMWRgTSY7duPNs12yqLGVmWgxMbZUUpiDckWIpszWU4jJXHQyRyu8XFwzbGJlXHJcXLlsPCv5aF5ZhSVccqBcdTAwMDM9MZ5wiFx1MDAxZFxmXHI5XHUwMDE0XHUwMDE5jlx1MDAwNy5FmXbQi6YorSDx0Woz2XeC481FikAhQlx1MDAwMOLDXyrLOFx1MDAwMcnty5842pJUSzF1+1DikFx1MDAxOEAhpFx1MDAwNWfLb1x1MDAxZj5ClFx1MDAxMzTLXHJcdTAwMTAuuF1uNv2IXHTVguHtQ3FcdTAwMTEo9ciMS3kvhMS/XHUwMDA1/1xys+y8Wq3SaM017sAu2Vxms+5s61x0tHjWMO76XHUwMDBmP3vl61i9LP0y3CdOio3DeuZrXHUwMDFid7Z3LXJcdTAwMGV6XGJEXGI28ZaDd9h2yP6ekfNsO+2gq4ZcdTAwMGWdTUqS4KrVoMPHbDpH2r6p0qrTaePOtvVcdTAwMDHGQlqvR9O2W+hZbtiIW4iS8JZRNDQoYqNcdTAwMDD4SNZY/f3j5dBr3Pjy+DLWPfVE2lxc52DTq78/N6tcdTAwMGZRqvlcdTAwMTlW439C7nLnXfz+fG71TWjg0oS/PsT6ykavUSWbr/j5n1xycvaUTF5cdTAwMWPHjm5vjlUn+mFLLVxiumZgO4sqY99cdTAwMGIxXHRSkFx1MDAwZcXNknNh1Yz5mFx1MDAxYVx1MDAwYkOpXHUwMDA0pFx1MDAwMjBSMEZcdTAwMTHs85Iks1x1MDAwNVx1MDAwN9ZcdTAwMTlCvUr+MGbRXHUwMDEwXHUwMDFhO1xu2684uM7t5dh/6rm233RL3mdHXHUwMDEwQ0+/zcpcdTAwMDJcdTAwMTZIVc5UXHUwMDE22Hy6gTXq487z2cdcdTAwMWJ99D1cdTAwMTVLNDPfhUek2zCRh6liwrFccoBcdTAwMTm1VZdcdTAwMDLmRVx1MDAxMu2bUDT6MISR7Vx1MDAxNLNTgcamJUVByfBcXHNe8zNbWoBcdTAwMDYwemiw9XrabenWd1x1MDAxNVx1MDAxN+RYXGI0t1RaXHUwMDEwPN8mXG5cdTAwMGLCo/omtJJcdTAwMWSEjUzItVJ9XHUwMDAzaMVTx4NO4oxcdTAwMTc71Vx1MDAxNoItryNv1lJUV69G61x1MDAxY8ePS0QqMfihNOpRfUrQXHUwMDFihIlmR/M9v8rpUfa007087ulbN1U96vx4ulx1MDAxZbujeEA8062cycHRdfmGt5NcdTAwMDeJXHUwMDFjvfbTwVx1MDAwM1x1MDAwZc6eTI99Pz9IpjuxRjL22ErddD8tqr+o7Fxin5P4wm3RdjH9XUx/XHUwMDE309/F9Ifj7WL6wfF2Mf01Y/qB5S7T4Vx1MDAxMIl45Os0eU66XHUwMDA3XFybhNu+62eT5uqsS9J+7oubdrbVuFx1MDAxNTdklMhcdTAwMDf1wa7csLBYVrFcdTAwMTEl2+7dteNrXHUwMDFicVx1MDAwYlFcdTAwMTJcdTAwMWHTXHUwMDE34S+tsWaDWKvxXFzipNZcdTAwMTKQucuR+9PqXHKnblxcp44jj1x1MDAxMFx1MDAxYtO3ffZcdTAwMTWfjemjnkWFyoXRuO9cdTAwMGbH9FFHMzSHtt+rauda2E80XHUwMDAy+lSHZqW5fSOwXudcdTAwMDW9d5Wid0jPqz+8ePe5nmf3z2mTjnykXHUwMDEwzSuHKNReXHUwMDE0/ShcdTAwMTN8XHUwMDE1y1CFKWHdLK1cdTAwMTHDW1xm6OM0rVx1MDAxMW/znNZHRDKYRexsRF+iS0JcdDN/sqmUkfzjfS9Wj+enfVx1MDAxZlx1MDAxZuJesuZ3XG5/LKq/ZFx1MDAxMtuM7XNcdTAwMTlcdTAwMWHbp+hcdTAwMWajn7VGe0i3lT9cdTAwMWHIx/JcdTAwMGJcXD4/lfqN854oxVwiXHUwMDBmWFx1MDAxYtpcdTAwMTfGXGKUvzmh/WE4XHUwMDExiKJSyG2G9m1vZ2PjJZpKwJ9z1vzOebGIwVx1MDAxM5I//FpcdTAwMDODnmmA1bdcdTAwMWTZT+dC4LmlyH7wfGtF9r/91r77bqORa+M923+Lne53K95LYo50XHUwMDE0h1x1MDAxZmu5XHUwMDBmcWxcdTAwMTHjXHJDrr++/fo/VaGJeiJ9ZeroMQ PUB SUB SUB SUB Producer Consumer Kafka Azure EventHubs AMQP Producer Consumer AWS S3 Storage S3 Google Cloud Storage GS
This fictive data fabric above consists of a heterogeneous set of technologies,
interconnected by pipelines. You can also turn any pipeline into an API using
the serve
sink, effectively creating a dataflow microservice that you can
access with a HTTP client from the other side:
eyJ2ZXJzaW9uIjoiMSIsImVuY29kaW5nIjoiYnN0cmluZyIsImNvbXByZXNzZWQiOnRydWUsImVuY29kZWQiOiJ4nO1Z2VLbSFx1MDAxNH3nKyjPKyi9L3mzg1x0TFx1MDAxMsJiXHUwMDA3yEyKXHUwMDEyUtvWIEtCkllC8e/TkrG1WF5cdTAwMDA7eGpcIqqwfbvVfVt9z7nntlx1MDAxZTY2N2vxfaBq7zdr6s4yXcdcdTAwMGXN29pWYr9RYeT4nm5C6e/IXHUwMDFmhFbas1x1MDAxN8dB9P7dOzNcYozsLsPy+8M7lav6yosj3fcv/Xtz8yH9n5vLdTyV9k2t2Uyc47L1wPfSWVx1MDAwNSOAU4nG7U60oyeKla1cdTAwMWI7plx1MDAxYqmsJTHVXHUwMDA2Le9cZvxcdTAwMTR++1x1MDAxONGdI/aPbym0nU3acVxc9yS+d4crMq3eIMy5XHUwMDE0xaF/pU5cdTAwMWQ77ul2WLKP77P9OHFg3Fx1MDAxY/qDbs9TUVS4yVx1MDAwZkzLie9cdTAwMTNcdTAwMWJcdTAwMDBjq+l100Eyy13Sg1x1MDAxMINcdTAwMTCKIIKUcyhotuBkXHUwMDAwLLkhucBcdTAwMDRIRCBcdTAwMTKs5NlcdTAwMDff9cPEsz9AemWuXZrWVVf759lZXHUwMDFmS9nENrM+t0/rXHUwMDE1mU895XR7sbaRzFx1MDAxNqn0oUNcdTAwMGWpnlx1MDAwMuV6J1x1MDAxM1x1MDAwNPt2uvM/skdcdTAwMWSafbWfbsqX+v3R52BcdTAwMGZ8jT5f9FutRvfs3DwtPD/Pfnp+3sB1M++ThmYurrLRXHUwMDA3gW1cdTAwMGWjXHUwMDAwMsk4Z5hcdTAwMTBcdTAwMDKyx6Zj7ao8nOtbV1x1MDAxNYFcdTAwMTPFZlx1MDAxODdcdTAwMWPPdrxu+Vx1MDAxNuXZU1pcXDOKP/j9vpPEwqHveHG5RzpuPVxm/dueMu2Kkae2XHUwMDA1yXBcdTAwMTmQkiv7tpnFTvpj/P3H1vzeZG539sz+otBcdTAwMWZcdTAwMDFcdTAwMDPkL/i86bBBKeJcdTAwMTAzLlx1MDAwNFx1MDAwMFx1MDAxNEC1XHLps1x1MDAxNpjzdyP/+bj1PE5cdTAwMTJcdTAwMDSWrSNOoowzJFx1MDAwMcxQOI+U0D78eL673zm4XHUwMDBlLtvnN1x1MDAwN0wpTNaelFx1MDAxMPrPkFx1MDAxMlx1MDAxMZqQmMSZXHUwMDBmvzlpnTlcdJVI4zeHvYbDzGTPqkhcZjNWto5IXGbp6GSMXHUwMDAysjCJtYN63Sd+s3ta/354ctz7elx1MDAxMXXgkkks8rWqXFwmh2EhXHIqXHUwMDAxkprDJEOIXHUwMDE2KIzARSlMXHUwMDAxXGYxnE1hSipLdSYpjFx1MDAxMkMgwjRcdTAwMTVcdTAwMDBBXHUwMDA1Y3KS0SZcdI0xrXuBXFxccqE9jFx1MDAwM2xcdTAwMTRD6Mny+LY8l3PsqZxcdTAwMTiurS+vd759+fo9wFx1MDAxNyfRWVx1MDAwZtw1wXazlmGm1vGtQVx1MDAxYSV6tzlcdTAwMTZcYlx1MDAwMoSRwFx1MDAwMPJcXKeuXHUwMDE5pFrbkJhojFIqkH7IZHLtv4xhk6ydbdFSKXZq1JXuXohhYnVcdTAwMTdXXHUwMDExXGbCtGxcdTAwMWRcdTAwMTFcZoZcdTAwMTJIjIBYmGBmb/K6XHUwMDEyjFx1MDAxNFx1MDAwNlx1MDAxNIBr+uBaKUlcXGRcdTAwMThMsVx1MDAwMVxi1qlcdTAwMDAzXcZCQEueLYliqIG4lEwgpuszwbNZxlx1MDAxNEMnKzmCkFx1MDAwNlxiXCJvUcmNXHUwMDAz8CFcdTAwMTeWXHUwMDBiZZpCYFx1MDAwZVPfuOVxXHUwMDE0zavgqo7vxSfOz5QuQcG6a/ZcdTAwMWT3vlx1MDAxMEMpYrSDx82T1t9e/XC/Vmiqu043XHUwMDAxUM3SXHUwMDBmRIVcdTAwMDVsxY5luuNcdTAwMGWxXHUwMDFmZK2WnszUXHUwMDE1S7g/wSx+6HRcdTAwMWTPdFvTJ05qnb1RPEAjl1xmL81IpZWQzjz4ZVqD5J5JiVxuIJSUQinh4sc4e4Houl43bFx1MDAxZLTOdi122LTuflx1MDAxZa07XHUwMDE3XHUwMDEwUSqYXig2oEr+XsZcdTAwMDR8XHUwMDExdVx1MDAwMaXOfFx1MDAwMkiRqb//tby43v10Jzq++Vx0nV5cdTAwMWbef1x1MDAxYjSvjm/2quTFNjI0wzLN9kBoamdaPEzqXHUwMDBianCu95hhSjQomJgtL6b51Du6aKCdz1x1MDAxMT6KrY9A4bO9xpeTKp/ApFx1MDAwN1x1MDAxMzO+QLbU4tBcdTAwMTmG+a8vXHUwMDBm+avESqisuOR5RlOQT1UskLNkW/Oie1x1MDAxZU3N3qQ1pSnKZtFcdTAwMTSmy6Spacc6kFWc60A0yVRcdTAwMDAwrqHEVqNRJplcbs9nqlnSZXbeKoRpWbpsVY9bKcFzM4JW0/TO/jyXjZvm8T+dxqe23b9YrVwimom+aaVcdTAwMDLMZaZcdH1cdTAwMDCgRCB/fDdcdTAwMGZ41atec+AxJFxmgChCXHUwMDFhWZwyhFx1MDAwYsAjgFx1MDAxYWTl+lx1MDAwMCNDYF0pJLUvhqiiUMjZxiDkiDKd9VYjXHUwMDE33uB49UVSvlx1MDAxZVx1MDAwNC9cdTAwMTXxfce28/moqOPnpZGytC84spCoh+JFmMWIl61jzEpcbijQNefimn62ylpTzFx1MDAxMslccoSYgJBcdTAwMDMkOMwgkGJcdTAwMTZjg1x1MDAxM631OOKC6i+85NhyQEuZoTEridBcdTAwMTlSO1x1MDAwMis0flx1MDAwNWpcdTAwMTFcIlxmQvomqF1RjlxcQTJ7XHUwMDFkJ+y1Woe/urIvzrlcZvxPe1x0XG5cdTAwMDGaqpZcdTAwMDWhXHUwMDFhXHUwMDExlC1+vvftOti5bodn8HLnY68tdm5C9qG97vjHgFx1MDAxYkBjmzFINf55ttzhO1BpXGIkiYYkQZhL/jr8v+4lqHZCXHUwMDEwXHUwMDA23uI07/c70ORaq3eg4lX9n+fNcyv0NFx1MDAwNKtcYochUraO+IYgXCKI0EBcXJhv5kT3evJcckpTPSOMXHUwMDEywVx1MDAxMNKiokg4hFx1MDAxOURqXHLAsNZcdTAwMWRcdTAwMWO+qkiIQ9OLXHUwMDAyM9QoruKcqlxunVx1MDAwMENottPETyjVXub47kl1QKiLXHUwMDFizHN5YVx1MDAxZVxyXHUwMDE1ILYszoG5XHUwMDE3Mc/gXHUwMDFjL1x0zGHXYVx1MDAwNG88IaBmXHUwMDA2wUmsp6mNTlxyajeOum1UsHgnvVx1MDAxMtWSxn9cdTAwMTJoKj1seNx4/Fx1MDAxN4m24lx0In0=REST API App HTTP
Because you have full control over the location where you run the pipeline, you
can push it all the way to the "last mile." This helps especially when there
are compliance and data residency concerns that must be properly addressed.
Summary We've presented for design principles that we found to be key enabler to extract
value out of data pipelines:
Separating the different data processing concerns, it is possible to
achieve high modularity and composability. Tenzir therefore has connectors,
formats, and operators as central processing building blocks. Typed operators make it possible to process multiple types of data in the
same engine, avoiding the need to switch tools just because the pipeline
engine has a narrow focus. Multi-schema dataflows give us the best of structured and document-oriented
engines. Coupled with schema inference, this creates a user experience where
schemas are optional, but still can be applied when strict typing is needed. Unifying live and historical data processing is the holy grail to covering a
wide variety of workloads. Our engine offers a new way to combine the two
with an intuitive language. Built-in networking makes it possible to create data fabrics at ease.
Spanning pipelines across multiple nodes, either implicitly or explicitly
(via ZeroMQ, Kafka, AMQP, etc.), provides a powerful mechanism to meet the
most intricate architectural requirements. Tenzir pipelines embody all of these principles. Try it yourself with our free
Community Edition at app.tenzir.com .