# Add postprocessing support for a custom model

This guide describes how to add model postprocessing support in a Qualcomm IM SDK pipeline.
This is necessary in cases where the Qualcomm IM SDK plugin doesn’t support postprocessing
for the model.

This section covers the following topics.

1. [An overview of the AI IM SDK pipeline](https://docs.qualcomm.com/doc/80-80022-15B/topic/add-postprocessing-support-custom-model.html#ai-im-sdk-pipeline).
2. [An introduction to the qtimlpostprocess plugin](https://docs.qualcomm.com/doc/80-80022-15B/topic/add-postprocessing-support-custom-model.html#postprocessing-plugin-introduction)
3. [How to write a postprocessing module](https://docs.qualcomm.com/doc/80-80022-15B/topic/add-postprocessing-support-custom-model.html#write-postprocessing-module).
4. [How to compile your postprocessing module](https://docs.qualcomm.com/doc/80-80022-15B/topic/add-postprocessing-support-custom-model.html#compile-postprocessing-module).
5. [How to deploy and test your postprocessing module](https://docs.qualcomm.com/doc/80-80022-15B/topic/add-postprocessing-support-custom-model.html#deploy-test-postprocessing-module).

This example explains the steps to add custom YoloV8 model postprocessing to
the `qtimlpostprocesss` plugin.

The following diagram shows the process to add your own postprocessing model, from
developing and integrating the model to running the reference app.

![../_images/add-postprocessing-custom-model.png](data:image/png;base64,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)

## Overview of AI IM SDK pipeline

Qualcomm Intelligent Multimedia SDK (IM SDK) contains necessary
building blocks to construct AI, multimedia, and computer vision pipelines
to build applications.

Building an AI workflow with IM SDK involves three key GStreamer plugins.

1. Preprocessing element: Converts the incoming data stream to a tensor
format suitable for AI inferencing.
2. Inferencing element: Executes inferencing using an AI model and applies
dequantization to the output tensor. This element performs no
preprocessing or postprocessing beyond dequantization.
3. Postprocessing element: Parses the output tensors and generates a buffer
containing machine learning metadata. This element outputs metadata in
one of the following ways.

    - By attaching it to the source stream using `qtimetamuxer`
    - By streaming it directly to endpoints like RTSP, RTMP, or Redis.
    - As an image mask to be overlaid on the source video frame using `qtivcomposer`.

![../_images/ai-im-sdk-pipelines.png](data:image/png;base64,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)

Example: Use ML metadata directly

In the following example the source stream isn’t propagated after the inference plugin.

![../_images/ai-im-sdk-example-direct-metadata.png](data:image/png;base64,UklGRloTAABXRUJQVlA4TE4TAAAvEQdGAL8Ft7ZtVdW6F7fsQf+1MIjpgdBdvpxzVxtuI9tWm/P0JRkzxv77cQdMkRzRe34XkiTbpq3a92m/b2P2f07uumWey1PzH0AlpZZSMoXJBKb2ByYTIAwmQPkXaqgJJhMiUwqgliKlwQxKSgpKSghKTVIypaSgZEqppZSMBUjFqgyEVxlSCK/CK4UMZShDShlQaFmZCBdItTJWwqsMCDKq8CpckGBtBSDBBzZrBwAfoNgDLoB9nAAtaIEwIKFQS6gl9JtQqlBLKKBWwEIx9JsAod+0OK1BgrUVabkDrLEBFB1rkFi3oDixBi9YA1qwj1UBrY4Ea3MfFd8VroiK3pt570y/aUADUq/+1+9Nfj6tMhtBgrUOQMF9DRI3nAC0uKY1N+b6VfvfHpN9sHa4Jviw6O78fFq37lN+0iBPXP3S/fVF6f6cs331vJzD1/plpV+Wxu22cW/buN3SLyvjdttmf8HqH+NHSrvDvd9v59Z92r5fwAeK2rZtGOf/s53e5ohQGABkwjq1H1BD2YiWo9WYlOCZeuRtbMEqAy3vdJ0ISC1cLVHrEUy8fSQUwoSFkaSAqppRuG7qfJDlL95yVWvAE5MiNKlnl4q0aDKUtF6SSxiIpVNC2+IFTmD17uJT1w4he3/xQiFHboUHEBau7XbVuJntcl1Iw7333tQVaSxHuEoad7gW2i4iUcI0MDNi3JGskSWEg4BcpsSMu9N7T/h9vneffQ6XAweYnKWI/kuCJElSo0gMarQDm5rurpqjQXv8IEeSJEkREyFu+KIGuqx+bHdk9cxU1V62GdF/SWwbSZLE2ft0TWZUd8+4awf7BLtRP7j5LmtPt151gRq33nn9ldaerrv9TqXbzdc7Vp+uVrlddq9j+emWa+XccbXtx3fvlz88dKnth3PfJTIuvt+x/rjzBzK+d7f9x+1X7fmP/Wf/2X/231Nfm4bRSfuD6P4VNI1WpqN2B6WDaCIdLFkdxBBxySQIWzFmdZCij8YJUlYHfmwgXkXc8x/7z/6z/+w/++/pmoxXS/i88IQtR/IMEFXX462SBWjYc1SLxaIHAIUWWazvJuw5GuQ3WIXqZy0uIKJFh2igYFOxsd0JYA6axMjxHYDKOcLREwDVtWd9xKcmn/ddVd917R/GMbbdGQgzfIo7AGs+i3WAigcAIsRVxXe1m7CAQD/QncU6WchD0w3KLjQCS7txf/U6Rw5q1EnTBoIEWnPgFFNvxQPVjFf9jH6ZIU+vcWah7FpACIHG74MEchyKOeHFMl7ZzUHZlRJYsWFWGXl6rnUdQmQCXd8HCcL51zyIqiWCA1EZ5IrmDe8ctl2ILmPIWtJ0Iet/TazLVDeogclVD4IpsHYL2xgyMdSU5Bn6EFRfUUoEOvLiaYCC7cLKZst6lFvWd5UsVD+jz2TIQVPOkQXBUdm1XEiHtkpsW98Xos8VXo6wgEpPW6xzTqwfxEhjaN0NbJB3OiaPwVpQnMuy90EKTpJ5G+guiPT/rBxaXhdPAVSK4L8s81k5FeZpvCvrh+DD43SHfj6O+Hmq1TWXmDoRWHilLj5NdLUeR+uFbvyn2djzH/vP/rP/LniRTZNoezBckEySBkqDWUbmTPOPADkTGfT+y1zOptEoSs+WBq9Mo3m0MNhdYWMFjaOVjUErI2iU7ixsw/mBbpxCXDJIHqDbcKU0WCWSNlNXHhngMmOm4jIzWGXURJ15sPsQXUYjaTnS2xMZj6WNMj0lNqo7+9FQQ19vtvbPo0GUenqqpDlbU3NGUWw0ovuvI75mHl5D3OjpKc2jcTQX1ZunDAVu68wkGkepYa2ZQuPooObTxUZNxWgvTyRNvhmDiMxPiWhNGpfMxKbupeVVkwh96Xzbb6I0kCppP+HcPLyOOK0x2PswiUbSZF9ByUwXmBY0/tVlI+XJ2Z4L1Jl5NJPmtSKyYiZW+gpm0EAs6Twn+Ek0k7b6CCbQOGeKlgLGteIkmmro9xPMG6qdZrVlxVBM9BE4E0aajTjhaMUE4utGYqSfIIWIPdS7ZKJoqF4900/glKbmTKOpkqMXs6a6ID7VR1Ay1RyCdHtp+E1FT/e6mF+aETNWR+4j2O6x2DQVc3v+Y//Zf/af/Wf/2X/2n/1n/9l/T7VENsenTaLxzYj1QXQ2haZRaiZqd7B9EE2kgyULgn5vZ2JWBylDkfr/eC6t/yONPf+x/+w/+++688IT1hIZD4iqN7zcYWQBGucjWKxD9TM+J9QSxEyjNWej7c4u9xGVYrG4AwBrncVifTdxngIoMOSAoQVnETlotphd7iHorm7yGECj4758voKyy5jgUHcW1Wp2uYsQR3DZPR9IdYcplVmoeCKtOItpObvcQ7AOstDMnCJDOXl8B6Byjo7eQuaUYELB2buuD+dTxcPzvofqu67Uw+v/KYRkjeQJgOqaS3juFMDuWf87MwDJVQ+qn7V7xtMl6IUnujC1t8VRlzwD7zO05owGnVgJRMwcOA0AN8RVsgtlYhMJlyHmU4c801y/jqwG3W493kuwWCdUPIAmHdLFHYA1QhH8JWJC5qyyA8K+7uIp6qKJvGfO3W6C90D+V6ffh3A1hnyH3RS6YRtqZqByQ6LtM54q1BETxXZfu+5L9VN/+AtNV3uJuWvNGQ968vjQKagMPeKSUVwtegANheyCmbhEwmYFOHXgmaYF4n6KWG9ywKrscrVIDk6Xsh5AdQcACr3HHeySrpeHpkv6Y4N02Q9c4doH76wcRzx6Sii+pC8frUNB7rkWJ36avAdCzD8P1c8Co8K3ZwKy/ld1mPFUqbZOIflY22VHWLsuzGd5KIgNkmFozRkPOm1IIY2cJS5qCXl24UxiIpFkBToSPNN0oVosFj1ab94skpFBrBTXXbYWyQ5UjzIekBOEz/ud17Csv2cjK8wQICOcDmshWdLhiRJnonHORdY3L/HsZw3RD2cAZZeMEFLAxW+vC6NtealKRIkwp5DkW6JuTDAsBQscLTrDQed4bug98VhUnl04E5NI+KzARzIF60ODXksR9pRpo6rUIjk4zeGuazMGDMTHH4aN0DmhQcchbY+CYKvsCtAhyTprIgojmHOx+NYjLu+Zb1jOAJqid66k5TqNj3ouYrHt0IDJbl8pZIKOLOzTcrTojAdd3pCBR2l2EZmofWkHEUcyBMskGtEfYdefQ6kWycHpUB6aXMaQTE5Rtw6xhgvnoS4f/fdXH4YJiCogR55xQ0Z6k7nCyTorMKmUcyH3TCam3/DO4aDXzxmiyJ5yZ/LNv79oP9KpSTkganA9lJ0XgWG40ST28waNp+QQY9vhEJ9s7I68/E17O2VrLJN0bDtUgnEndOcsiLTmTAw6y3OnPdr/ZdmFM4lIs4I4knQ2VyYj+kMah0OpFsnBafEL5gTEkQXkJ6co8N7scGOlLvv2+UGIVIqB3o+jgHiin+oGJfhOTYwwyD3T2Z40ZVKGauzb923QbqRTk54jsyqGPmN7KNeDMYxqNPHeXm08FSAIQmPYTmqysTsCBZSErbFkgn2XECHrkW3G0pozHnSWVYAbhoaGPGhIsovIxCDLCnwkCSH6QYehUovU4PRosc5cpJZNTon4D7jSWCkMCcKC6WccsmNNhowX2l0BJTry4mmAAu+hHEHQXiRTk7hNx/dQ2oNlGI4r9vZq46kEQW1pHUrAky26I/MSZWyNpRMEoUFHYQ4KyNKaMzHoAsRRXBgWkuwiMnFIsoI4koxIoDWkKQscSrWo3y/IiITqur/h5ZNTAs6RFhorhRGCttKUQxuBIG51sX1YF0cOyzwfWRCsl13OEEGGScdCgzbDHHUVWNgeSnuwDMNx1d4eiVywnj+7ODmtkUjnobWlZdQu45vl3/n1S+iVCtMu4i7MvjiOc4aN1i4dGoRGxiu/4hvgUXUGThptDDXmTBqfFc5HkpoQHNmBU34S4JDVotjgtPc8SObUBLnOIS0qwrwLVxorx/CHv//mG830629hgraRBcHOgixL8s5qCT411BJiW3CeRVfUF2fQQq80f/tKp1b61759YtA+2A0oge+hJJ/pMBhX7O3Veyp7+DFqJL4fP6OMrJCoyRbntlkxrbH0tG5KIYpBOARbZwjKLk9rzvAkoULGa4WMx8BnCHEkW/lRaC3wGGKqZWuPIzLBIQnajSOHQi3Sg9PntXIOnPCC6xxCxxQ6cRBGQ5RcQD+EP+/TWv/9x1/bRPIMOaGTPAZrAXDO53lgTu6wZ9LOyM+k8Z5Fd0n/lVzOEBHy2cjf69ZKXKAT8h5K2kuHwXsiYm/H35q9n5Su/EQZWSFRkw3dEVZRa0zXlloIB8yRuTY8rTnjQef2RXLEy3MeyOFMLHxW4CPZyBvhNkII4oKDYa7LksTGolKL1OD0evW45z1oMjus457bAH8B/Rj+ojf/+d3f2gEze6IIELjKgfDRGmsyZ+Jna1AXwgwLiecWPERwsy1C4Y+68s9PdELaQykyTCI/m9RyIT2+qYyskMjJpmYXOWJrrHC0PNQSLMxGbqg5EwNNa8gvPgu8BKp6KlAmDt68CNENZgeHR6UWqQ5UjxaEEUFOS7ThTru9lb/86etPNNPnTPTlx+1ZEGfVc+9iaD5HZuSzzlRn5O+elXjmPKzHJR5CuBn54WTJX+rUSr/lIr0W5D2U3Okwe0n/S8QohFXgRUw2t7xG5bTGXuv0BXGz8ohqqDnDQRdLSeAtueoFVvLQlMOZhAEhyxB8JBt5bKp7LjToKzV5lGoRr1SH2I5JOjYdlkL3DlporJT1S5io/T+7n0ufHaV8x63CRTrSVOMUI/Z2yPBIrQhiFCZiskV3ZJCzNZb0l3Tzn93fyS8Ray2LQi3qWPIMFLiMQY7emSagNxWReGOlLkzUbXnBFYdLhyFGOsL1UAEVRlB7O/bY/WcOkR6NwkVMtuiOjFK2xpL+Qd2cdv6gPDRZFGpRxzAL9LPzjtah7Eonp2Q8OEfmNoGVxkpZhKhcWTqlYBVqiQ6DRlrCO3R8o5gMw9TzICMqeR5kEIUNT7bqjky/PWNrLOWVAWrXx5UBlA5EoaFUi5olnuOHahGC+SgKk1Py9KPXOVYaK2UhURcmuco0Z4cRRHoiduhIhuG4Ym8vNp46ng3HCR012cECSsLWWMKrx1Wvn6vHBXuBzCpKtahb3BVruOGsi6jwaY/HPd/RZ/nJUmOlriuM+1H3ZbrKI/1ZmR3Gzx1HU9QOHakwIi7v7eXGU6fjhA9PtuqOUAElZWss2RXG69fMFcbp/l+DeR+kSi0aXZf/dn/buJY+vpt8V0KPvb10a3cL+agY7zzSNZ4MRbq1e3iVrvFkKNKt3cOrdI0nQ5Fu7R5ev5Ot8WQqsq3dw4Rb+seJav/Zf/af/Wf/2TJoHTKPZtK81cGooRi1OnDGlw3E8rhjd+BEJ+YMo6cnojbi/2nbnv/Yf/af/Wf/2X/2n/1n/9kAzKGhtDGwZdJIvI44OVBlxlREBrYMo6E0PFBlwlAcdAa2lExFaaBKadlMTA5ucRbMxIIziKLXWlyJDHA5aajZBL08M6a6ID6lNRET/U23lod1PpvWY3HSVDzt9Fp7xjNOL88o4mtoIo04et9ixiG9oXUrpXqr2hJFXDISM47emlw2zn7xpKM9myaRhmygibSEuOVorujItEk0qXsjzSP2VLVlBc2kCUdzRUamjaKRiKM3I0+bZ6d4RDMiK6a6IN5PaMpQZz9GtOVJQ7Hl9FjSmshTaCI9FWkDy8+sfd0wv+4/jvQVRFbMc1vSeldva9lIzDp9BPuDq+9LpplLgLhfLyJzZppA0F9oFA2k1IbOh/ImIl3qJ0ijmZTWCyfypHmIOf2Ghpd7qxlQkwa6dLLt9GT0vP9qKMuNp+k5o2h6w+k/VJp4cs4kmh2Pat5KW4ZJA7HxiDOY5MHnZc9/7D/7z/6z/+y/RzbJM0BUXY/75IBV2V2sQ/UzhowHtUTwSoLTG16216gWi8WguhYQ3yz62gFipbgeAAWGHIhUqDtYs9ZokN9glTkMXaxDQ3QQPB1FEyLUYPIYQMNaQzRQUKG6Aw2BLFQ8EfFgtexabWAOmirU3oYmY/B9CdSBrcN4bLtzqX5aF6ptxqu9xCDasnhAjG3rz2JdceGzPBTEQp1RuLN6CALNOXAKagk1slB2BQsZpS9bPNBA6/dBAuzGUQ2hVAcvJyO5GjzN4kEM9H0fJAQrKUKva5KnZiWfDEDeOWmxsLQ815IOIXKBpgukyKpC1wvW56gUA70fR3uFMQxBfKAh9JWaymCwcg4KSJDM47FY+GHIf0XUGU1XyUL1M2UyXvkV34BdQ+mnoUYlbV8oD01FiLUhKLt2DY6zsdmaHpVEmkLf8K8K5gCggV2JB/6XcSbS+7Ny8lB2laBGagnbCCbSFuEBGorQlW0jSNRdfna/BQSJ7EK2So5jG+I4e/5j/9l/9p/9Z//ZfxeaNJpJaauD6eBYzjBCRJy2OnBiRnqMOXYHzvCTpmH5yWGnLdhu2vMf+8/+s//sP3/gkvssQK6QccFD9h/3RGTAfd+3/bj0gQulXHuL7ceNN4GUC+77jt3H5fddJAcuvvu671p80TV3Xwagcrv1gYetPT1422VgMwoA)

Example: Attach ML metadata in the source video

In the following example the ML metadata is attached to the source video.
The overlay uses the attached ML metadata to draw bounding boxes, text,
and other visual elements. The result is either displayed on screen or
streamed over a network.

![../_images/ai-im-sdk-example-attached-metadata.png](data:image/png;base64,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)

Example: Convert ML metadata to an image mask

In the following example, the ML metadata is converted into an image mask and then
blitted on top of the source stream.

![../_images/ai-im-sdk-example-mask-metadata.png](data:image/png;base64,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)

## Introduction to AI Post Processing plugin in IM SDK

`qtimlpostprocess` is a customizable plugin that provides a library interface for
postprocessing the tensor output of inference plugins. The postprocessing library
is responsible for tensor parsing and outputs a list of predictions.

The postprocessing (PP) module handles one type of machine learning (ML) model.
Each PP module handles a specific type of model and its variants, such as
all YOLOv8 detection model variants. The plugin manages the execution of the module,
output generation (ML metadata or image masks), batching, ML staging, and other related tasks.

The following image shows the relationship between the inputs, outputs, postprocessing
module, and the postprocessing plugin.

![Image showing the inputs and outputs to the postprocessing module.](data:image/png;base64,UklGRtoBAQBXRUJQVlA4IM4BAQAw9wOdASoeBX8EPwF8tFWrJ6UjJDZ54WAgCWVu+8Fv2wP/vR2Msl8o8ZPrIs6o7Id2jbpDgv8/Pa8j/CpMeDd4Zlv28/RJ/7+n96Qf7f6APOj9Hn+Y6VX/xf///9fBJ/UP/L////p8DHno///2jP9/6wH/d9AD//+3H0q/hX8l/vf9o9eHxz9H/xX9u/Hv99vbP8f+gfyf96/eL/KfG78w/QfiS84/iv+j/jPUv+bff7+d/jPM7/bf3f/PeRv5x+0f8r/F+wL+d/zj9cv8p///+/6hP832oOj/6L/e/6T+ue4L7B/R/+3/kv856Y/rH+4/xn+Q9hPy/+8f8n/K/579xPsA/mP9v/7H+V9d/83/5v9r/hv//6H333/b/9z/oflv9gf8u/u//i/yP+H/fD6T/57/6f6f/lfu77XPz3/Uf/j/c/AR/Pv7p+x/50/H/7pv3U////p+FP92P///wP/wQVkDadkREREREOyPbUuQjCdZbSHKmUaV58xEbytl5yoZoVML32u2l0q5B7cocmWcY3RUyJk0/ARkvcIFJUyYTmj1hhh7vqvcdXurmwlr6l2CeE71Lr6mwnhLIiIiIiIiIiIh0r/ynCWLJoyGcH70dlEG8mXj1mAhjU3jBaZaWddCGTwwDOvA3FGhPKFEIB4IbFXQvCqlt9ICEgn+UnXkl9/j7NNf34EZ/c2p7516jfIOK/px85YO7u7vIzzMzMzdCDZmZmtOZmZmZmZmZmZmZmZSrw05NIP7/ekRw6tEf2u578Ydqmt5EUveGqhZ4HPsRR+bxEx8Dp0Mo9FJwH2s91aBnwn+Dpsmx5VVVVVVVVVVVVPBf7/nSD1ZnHSHc1ut45lew/W7hf5HUYkQpp3B4TSZX11mM3Hxad/2e4vgNcwPZvnI9am3463m06JvhCjfDaOOrHVIFoyazMzMzMzMzMzMzMzMzMzMzCIVSW0gJtgF3Xe/IhKQ0jNakjl+Zg3PGGRKhVMsJ01kG07IiIiIiad3d3dwOk3HsNmZmZmZmZmZmZmZmZmZmOsGDru7jPFYvUL6hcVPJ9V49IzMsjiqJy3+dBy4PerKZBKhCgpjmM8OTO66yK3V0pBr4+cRZYiH2mUh3QVgvFlancC9s7yiPp1z2GVjiw52XoLv6HyiiSBRhzX7mDck8vn4HLNH5YsPk4nllhMR1kNx6pLMzMzMzMzMzMzMzMzMzMzHVn94d1Au0QJZ0A+xKJN05OrAnhjK8ZRzdIsSWHRqOuo9+qPIV709IXzZYA0JFVxGya0WagMqrQTKmtg0CkHJfTpr4Qz2rujHEp/1E+s/hGdqMnUYAb1BxknbnRqyoveSDLPUZ4I9pBjZ4C0MFPIA54WU+Cd92JaqrHxK+29pf7uNNlL1SylvCsUWVmOXkKoF6uyIiIiIiIiIiIiIiIiIiHgGg7TmcIf5YvLYr6ELSii0MBKFDkz2FgcqslIsNvZnp4cT9uVjUYd38+xEa+eDj/RUxHfEpDtvBX5c2X6i4HW/M1Ey/m/atcnrQiYLpYvUezvFbwIzgtY0T0krIJjBs2WqooIVoKXRwqpe4YejvvcMl/BRWnoECGM6kGXpbaBjLcax91TvMor7Ol7AG5VVVVVVVVVVVVVVVVVVVJcJ2RESk8VioJ948rzxQ3JNVafQZUzHGG2tknYCIcILYlOGpVc9aI/D1Tmu/6m+AxTvbGEQ1bLAimcUhx2luTskTM9+pE63+z5WvTRO/n6Ldc9ozrPHYVwJ4nYSogkEwj2Cx9srmttq9OwZg9n5FoUUu+KfXZObsen0nms0oI3CbKX6pjjqrLbTsiIiIiIiIiIiIiIiIiHgGg2a02Ixg0p8gPLAMxdIwf4bsVjSM+KA75oWBSErGUdtMSr2kzCcPO0svgf6xd0bx/xtTcRyLzARkyDaHpDlvZ2KyUCtBL1T/vj3Fmjv9BZp+l4cC3Lsmr4ZtOz/uHHXAOLJ0cFigoclINSrH854OC9UlUM89Z29ZoSpwvcvdkl+ZmZmZmZmZmZmZmZmYcsOZmZZyp0sYGXanvFGt90j5th5UBR2fMo0b0Oqx0OAp2UfSyDaoYEbK5TFy0x1M0ubEJ0eUnJCpy1wSudYFXgFxux6Pd5jid+Rj4eam+X/jfZXTZGjoLMy+64+//e/uvxCb84fENxxm1c3nNaaK0Jddz/mPzu4iMYEV8gSOSknTm8LCqAhRyIiIiIiIiIiIiIiIiIiIep0kvzMOaP31N5mcAHYSJV5WXZIH8sqZjjDbWyMp8QUascFWZ9eFKpDZ9ZnwJ01xRQeEs+q1ygHZMojvSYcOqAHgnt/2E748IniPN4dwXg8LuGotGWl5Ly7vHYfU56lE9qu1V7M11YWJM84vHP3KhJ1uiFq9pnNl7u7u7u7u7u7u7u7u7u7u0dlVVVUC7RDY7C6ZOVuwLzCsPO3dow3aLNChc1nXUM70HWFwsQr0a2ndsjvprBZ5eJvGKa4PKAQredIKToAFew/2AkWCFoWpGVf9TUrzuFaPO/fPneFVXy6G2+Jk3FI2LBY63ExA1e/JzQg3qCPc+HNl7u7u7u7u7u7u7u7u7u7u0XHKA2H7u7R5oOSZKfJh34TY4F6kxVyunY/zZNBXYNqLJJ+FN9zhm0TCIyVi4wqKee6QA9a91/8vXAZ4o5cgz4islN9G7QnADsZEIFPxPljd/XgvR4URreWGWki14uv3IdtxSZKyrVKDRNxUQpAL3Cs+E1cZ3UDSMncOZmZmZmZmZmZmZmZmZmWZNi8yK1j6+XfrZsRMXWoqIswpN/6SpkrcJIisSmjwx6qdD1RDYjNJfaOjq3/K7V6l6mY4w21uzSdogUWd6KLoo7hP2SRwUARNgcSswXl9QCVmQ437c1eTL5unwDSWGbiDZQEK20Mmwsa7EOaHNVhbmIFtFFTzkPJ91OmB26i8jCxrv9fSNydJ8w5svd3d3d3d3d3d3d3d3d3d2i+7lysqP5BP57F2EF4ute2AhXenhHkgXt88J+gNdbF8N/ZSGsudjlTPqudrY+YnShJ23o+WVmprCxxTUymycN8L74T79BW7/3DcN/PZC67Ai7QfPizJvOVh51s1FREUdUK2621rFgomqPWeZjoWQwVcG5osZDXmLNaHp14AuCZqArRLEgIqOVVhovd30Ndwa7mPWlmE4Xi7L24LdsUMmaqqqqqqqqqqqqqqqqqqqgNZHNfAYJNa+836rfOch9Q1Qul5e0b6MERSvdzt/DWA2ZsKVVoG+GA/zZNc2sF/mNkx1i1n2kjBoONDokE0Ae8MlHAnX7hkLbPcxG7dg/AJYHHyQN+UPmBx+aQ1z8WjPd9kU0kDs8qmN1ztIrTnU7DFllog//6oG/Cv/aPlvJ1KFMdHxMxyQbubU53xeA9L3d3d3d3d3d3d3d3d3d3dxiVLunZEPVGoagEzjFdc1HWdRWyF1+gLS1Hy3dwlhkRYqedz07+gzPUGoBW8BXG9aK5KuUkHkMhvZdxlv/BfWnuLVn7sStpYLrcpZuUAE2ohZ6jsMEsQUh6WK+3gBzFlBLUgJiykkssRR7KQT3VtneE+yNHBRuFAzB6J+tV2ovJGdGivkh5yiUiI0OXuyS/MzMzMzMzMzMzMzMzMOWHMzMs5U6jNsHeIvBbgcVH/A+OanpVismLLfE5hswbBZSLDb2Z5DF86/iJUTzOC4zFa2X1CCvN6B/9t7r/VqEmMYU7PRPO+QCNUhZZH4wbXHE/ibIlPw3t84wQyr7Wsak+WQI1tYmzR15ExgDQXbZO4YI5Xj2DUBEJf7cgN3uGPUlmZmZmZmZmZmZmZmZmZmZjrLbTsh4DbyEaYiOV74t6S9Z6f7xoEMn9Ui3jh4p6Oq0BN1jlR31ZRmvdozce3b/Jms/BjFy+PvxKaUPT+q/RN9UTQCXrZ8mvqhuq4rCg0/PzeDkMNZ23NohmdoAQir7WsNVaeR7CIDj0sAo0aKU/UPVhgbNd4FIlo6RXMn9JtUmXcyX5mZmZmZmZmZmZmZmZmYc2Xu7u0eaDj3nZYpk3hnqsMxl7Spy8cEsnhdajeClf1WOMNs9h/NIFTw+gQKE61EJpbdRV0fqkbOJRfjk1uFsE/Wz5NfVDdVx0fIbapEidtRJH++5iyglsME3Iq4DEIyyZbxPXAwNY626qG/MBT6NcN8X9nCk+qMEZlWxqB7DmZmZmZmZmZmZmZmZmZmWcvdkl+HNH75LTIwvyp3wORCSYm9PNrP0YfUhYEo0d9VKGuZ5NyAbyioxWYQG9lgTEkZknCxtkfk/kRsUJ8mvCKLG8l+l1qsKFkkxzIN3qzpvXUExz54Zgjn/vW0B7fFcTjAUBSp7iMBsVNXV+zu5kvzMzMzMzMzMzMzMzMzMw5svd3do80HKT8UKHl0fOzyuTSunZGYddOeeF1+LUMRiGV4XiTKQNKw7o+JNwQEP+yhkHosim0z9RX2H/xWIxMgHQP8fq+ZsVearAmNdHD+A62tF1vKN6hWeOwGnmRCmVe7Q4s6KHG8i8WvdQnuRb6dpuB7DmZmZmZmZmZmZmZmZmZmWcvdkl+HNH7NlCSER8cuVtwauvjTFiEjg6Y61uaAKGWstwBZqpDO+bLgWroEIkjY7AJ/1IjUxhGysKaf2j14Bf8vE1/7zF2VfypyJK93TNKtp9DJEasSnUB93T5x+C9FtvKsEqHM0sFjX55f/TXDoFKdZejb+XIjvVVAvV2REREREREREREREREREQ8B7DmZlnKnTHrc8U1P44Faw8TxK5DKvdow33J3OF1dS4/to16OTpjTSEDjy/py/qLoe2j5LDakqvd2n1/LRxhZjvz8gGSJvnMueUkgv77s1XXsZTjvD0+NssRCSptGhIjzbGJ8tbiJxnTAvWllcKpGQ5Xb1SjXcUZbcaf1/00IIL1dkREREREREREREREREREOUnTPA7u7mxyfREKJZ5UZo22rVkODsINvk73BOagu505c7zA0ZwanU/tF5QMCd2phAgh4I8A5X8xG6c2blMeL+tkPrLeHW1clgBXwCHBqa3hTG4m3eiMjw/42ZhzZe7u7u7u7u7u7u7u7u7u7sy29WXhPwSa54WjaxgRSoIieaxvLdlsOR2nvPNwWuA8icH4gPg7B8aOv1E/NOuVFFvTbZ0D9hwUTpiJn6tfLZ+nadkREREREREREREREREREcIgmLGJ5Yqr0ER4lYO8DsKLEepmsByj9Nj8kpxdCo3w2kJZvnI7OViW2VvczaQlm+cj1qYKZ2FtbFSmZmZmZmZmZmZmZmZmZmZmZmZZxQNp2cNWwl/kz/GerEPnWcJjnf7O0l6YW/n///////mcAZES+f3OWJtOyIiIiIiIiIiIiIiIiIiIiIeAaDZmZjo5doS1Hgmw9makiv5xXXXDmZmZVz7yV57Tf1w50SyBtOyIiIiIiIiIiHPH4I5fgBspDDDvbWaM8sqFngyGOmAaV283kk0sOZmZlWPDmpJOMlSYVnbl3ocJe9q3AWZNuNEPeWmW4m0c/hCjfDaQlm+cMesZpeCoeHMz6K6ZmZmZmZmZmZmZmZlxx6Z+ogwTBtDZhZJ0SgsU+EBHxDSqOVpE4YWG3JEio2Rf8HkBTvd3d3dv+rt0VIqnRLLNioxRI666+Qte+s2ta1rWtaKEDmZmZmZmZmZmZmZmZmZmZmZmZngj8qpOaynOWl27u4zcRERERHTvPc977o6bayc4FIfD0hS64czMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMs4oCoDuGzigbTsiIh0pKyXN0LBUieFruaiyf3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3do7KdAUPFKRDwDQbMzMzMzmrMQkvzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzDlhszCCSQCVprNuZOiViFKNoXlrrx3KFPcBWtl2MFA23IHCVbGCjkqQbE1q0V3LieRdlMXTOYDGlJhjh06gGhVKUml+dyIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIh6nSJwB5776vMK4dISf3mSX5oGEVzvAdNh9SjAzvr2SX5mZmZmZmZmZmZmZmZmZmZmZmZmZgffkWr0CID9Yl3XperCm2+smLCx9472jgF6saURgR2mKT511PcNZ/uBMcdsUMQGkLp7qJ1N6B+W6a1L7YIHu7sbT3UTqb0LV6BHbFDEBpC6e6idTegPGpUNoO7u7u7u7u7u7u7u7oHZuUzuPeK6BJsREGOi4zNHl89MOLoBraIYaP+VlPVZT1WU9VlMrkFlQvSitUIjM+ExOfry3ysp6rJcwEaMCDVVVVVVVVVVVVVVVUDYuqO4QU9zLdCuXIFBLpdcn2weH0j0R4SgwJ8zsn8kGClLsT7s8OATpOJVrO5cj1KBW5t7TBQNbMaAdFu53IGWJY8znMmFwMosOZmZmZmVbsPmZmZmZmZmZmBG+gwhRvhtIR6fU+yS/MzMzMCTI9am3GLC/Hl4oDIN5i4mLHFuM7TV6IXPjl12tLOu0yofLEPgg1VVVVVVVVOrOXkowU/kjwWaTS6H58dKmv7Tn3G6OV3KcFt/meWHcigbTsiIiHRz09A/0zo476iE+xuWTPgndcFtCBJOVBTu9VvHPldkRERDpSUr0yhezx8A15Nn0jAR2LQ+dJE5j2uE1dGpIv5KL74gaQ4TKAEgGDSzpY1UzMzMzMzMzMui95HRAa5Rq4l3hUCDSvWvtC0xUXMPBZqaYd3ZB5mZmZmZmYboWfoPlbFAMofOrw2ZMGwRiYMe4hY9BfvNxqin6rpfljqt5ZqlnD4iUnLpmbtdLM6nKmGANgghfkZtTPHuzfk14mMJkJufzHnz3zp+sHhS9iqiqjC/TKWbivvP0m8UKLUCv0PRNev1KKsfG6xSR95zxttPs9ETUmrogvw68RfNvDILg2nZEREQ5eE4xwC5HGAtoeTzmGa0iCvzdCDlnTMzMzMzMzLtQsndKqOs1O5K7vLra7uP9MPiGWzIONjhhSxHVv5vfHcs999hXm1P5aZjRp8Q7b78zMzMzMz+garWh8GzNLOnQyS/MzMzMzMzMIwYiYHYzKgXuuHMzMzLRFuvXDQbMtXrne9DH/Nf4bYKO4fbY1a7IiIiIiIiIeDiIiImnd3d3d3d3d3d3dwDs/vTNSztP1f5rMzMzMzM1sV78NOGjcZS6m7NIC1waaBy6habjfFogucUk+NzybUerMAymTVJ72J4rQTOa6wFLyRVo3Z+4v3/wJ7RFa8SDC3kfMwdWVVVVPCdbwBe6idTegxnyVd1YYEdsUMQGkLp7qEbZZbMV0oc+OLeQXDVhgR2xQxAaQumQFMvydYL2I7Ynn1peyjUicT2xfFHkQp7qJ1N6Fq9AjtihiAooexXXJCZOMSBwHs9DQUQDyq8IP7cRS+2KqVfAGb3vIpVyJBbYEUH0HWrObVO8KojuO9LumrD7AI/+WY2sJLrHrf48dhvTZaNw6hmZmZo6zMvXfQaqqqqBJtyGIQhCEIQUu93f7fZom1rWta1rWta1poEgbZktwPjkc2MnkyN4emedhQX+HLY3J7EsZwRw/MwBbt9FVsIgWuwGcRg1d3/4yOPjzMzMzMzMyzl7skvzMw5svd3d3d2jsqqgZmMYxjGMYxjGL93d5Mf/xm8QdsZ827u7u7u7u7KJm3lAy7DZmZmZliNvoNVVVVAsd3aOyqqqqqqqqqp6la1NEcMWRRPNxopKD39HoBnGDcTQrpJYH1Kl2TdIYUKIr8RBZLXvl4r9G7S3l5nTMzMzMzMzMzMzLjjwhZ2nuI1VVVVVAvV2REREOU9O064BoNmZmZmZmZi5w6nWaK3ZNH0IIgfa+8gR2wCc2Tu4iNhzHSEXDPVj3flDrgjF/FTfjK6wZ4qcP+1/hv9hu0u1di+iLe9iUpBk7IiIiIiIiIh1AO5nB83QcXVVVVTnSTgRnsIG07Ih1WNhSlVKfBiZXwi5iUeyS/MzMzMwNY9DBoqFCHmV4pHw1ufLwV6BjYiDq2akysgaXs4iXBz1WRl35gEU5yUu62ZmZmZmZmZmZmMrsxlnNZBszMzMZxheV6CS/Ml+ZmZg1m20GSHbE2bmIxWUDjsJaX5mZmZmZmZfQ0pqXTeuNrbX4hR0Yas9KN/UuOzMxjG4+QEq4NgKFDGZf6KxTFHdydsI5zPClVrCa2bRwTE8Rp917IIE5ZERERERERDvtYTyrMumZmZcZgohPYuP7kDadjrAv2uh7jSdtpi+y4dp2RERERERDrJUF33gXY3XhcQsPRJezSAkmJIL9ADd6IdnbNL/EXUrxBCvXXz16Rnn3SYSfFQL+3u2rrzf8X3Dp3hJfmZmZmZmZgROSesBqqqqqetck3UoUDRaX5mZl+aHzp/cD3GlyDIq6xbTsiIiIiIiHWTraCMws+dC2GUZLgR2ml1JgiIBx8eo7gzd1cwZznOaPskvzMzMzMzMD0HuuXwvzMzMCOG253ZJfmZnvl9zCOXaI5wCMOnadkREREREQ6QYgpjTzt2AZ/1px4T+EFMGveZmZmZmZmZmZmZmZmB5B/Mu3Uyq6K12REREPAew5mZmZloEYNjqz+7u7u7u7u7u8kQ7wPtZ5mZmZmZmZmZmZg7sAswtjTcg5Z0zMy9gDcqqqqqkuE7HgGg2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnMKeLbx+i9LiNru7u7tHpe7u7u7mMs3FUfqTKZA0i3d3d3d3d3d3d3d3d3d3d3d3d3d3d2/tk7ys+TFe3xWxcKxQxAaQunuoMs1zerdeML8bT3UTqb0LV6BHanDkwzx3UqQXT3UDrZrSOKvN4G+H6X5mZmZmZmZmZmZmZmZmZmZmZmHSVTlYpmBAFBBLpP+Ah30jYMj2qL5I3ErmvllxVUH35sUvVqdHx0Oe14uoEG6PWvICCo23JXWaMo/KnM8mzwPQYnC6AeE2uFxCV65mZmZmZVgUBueNDJgZAGQlgGKxMZ4HMSC8z9xyeaWgQYjg2Mja1G8iMVmZs9QQoa1yHnR5wy8l1vQThwRzGc4Va/pmZmZmZmZmZmZmZmZmZZ71CCKuBK6LPWBBBSzZBl2bHiwdaYdMRSl2GthK15ZZjwhyAVSxvehYrOePkRuaoyKFN12Lmw1YfowaPsjyFxtIFJSQaP/uQD709fLuLMJpjRyViPAr+T974rYoYgNIXT3UA1VMEBB5ZA2nZERERERDwRdTKvA8bC9hpva4Teh/ffh75sfMEvYyGxnTrPAO2M+4iEp2B8e+s1JMCB/jAs9yITVbM+WTLu8RSeWpsim/QSbHH8w5iDFLo65mVeOYXclLJ3ot1B44iIcodtb/85wtjjw2dVhh15uylK8s0e9p95S2+/rlAozR4XJfSwwHw772ZDshr5DHX9itAIRgIb8nctla7u7u7u7u7u7u40tbbzqAwXBOI9yFL3+yA6y+RNUk1NHnhFX2Tw5zLl+IKpBSU1F+ub0i4EZNsvHhjo6M1Dd+ONd5MmAcyTev+Kc+5d0u5nhux17/wN5IhbC/OGTSUqZRduoBCYKRHUVv/c/u5VKrCWY3Wt3jfjtM/1c7tQkhdPYcYIntdLZhDzZQ6yhxpoYbdbwgiFtUl5vE7guSaTbcPglOdd5rjcBkGIjZmZmZmZmZmZjsDvq0TAmAlTWd/VbMhWRgd7ARy//nPwEuih/Q0OT+d6xfZmiI5UbLRwq+IzpxJuH+lnljtEpCRv1CTS4TJAetpWGqSf75sV333Jp1IYqMyTvscKjW5phi9EzPE5+asknNN+/1lp9jPsXLuTbORCwG8ZFkIE/mEPG+5oJXdYw6kcH1MROO2KEHpt+2PYdZKKqTFYQrx7u7u7u7u7u7u0gxDHiJ1m2J9K0kFBUA21BO7aHhn9faYloJXgOjIdZ7qPsX2bujCjHTMsg7gLRRxKdPNkDCsaMKFLS3HBJ8HD+/2h2rse+TwrhAK5Xk9mW7sPoBcZAMdXZJfmYdSOE3TERpHbgA3W5KNb1aZa+hKWeWenwhhJBUCQIza/CS1yBz3eo2IevDhthqTIs3JHEtu+AP7LVGTsRGzMzMzMzMzMzHYddADth3CHo7sI694CB0nnH6XUANi1ahs3mOS3saNF4C9FoD77cbE/lMUqanUcN+WnjwBOj0zM+ZHFlzZZDG6Q206IUCO+4HAi/Vqnp8ISebVsfLMhnX7mq7ELiTU2KGHqR/f3Kn5dMuO4LGnERERERERERERDwc070LYIpOA+beSIeWC7u7gqLWA9qaJvieGduiYLtQo5pTjGkMkmSVu2dX9+LOvfSXF5xKXOu4K6q5R4MayZm8bO/hc5IKPNftfptVYq23bHj6aY52JERUTasu7kIILVQgPKEWop9VTtMrxKp43Y32d2yDVVVVVVVVVVU6AS8JP2+F091E6m9C1egR2xQxAaQunurJuonU3oWr0CO1/8HqNQ5yS0eG9C1GOfEPPmydpzXHLzAK37glW6K7HSmzD51DbPbf9pMp8uvzZh8B0L/EYCiypV1f7CDUHQ7hgHVeuk9AGvSbPlymqDiIiIiIiIiIiIiJ/LusyxYlr42nuonU3oWr0CO2KGIDSF091E6m9C1egR2xQxAaQunuonU3oWrzefj+mdgFhBfp7TbSKjuijZMHGgopkJ8jrEzAqPMAwQS82VEdz0A3Y9qWqvIdnfwgTnn3nHyIiIiIiIiIiIh4Qd9jmmBrU2/HW82kJZvnI9am3463m0hLN85HrU2/HW82kJZtx9GlIzpCOYuUlQ9zVil08WGBHbFCD1JC6e6idTasiNqMhG/qazMzMzMzMzMzMzOpVSlKUpSlKUpSlKUpSlKUpSlKUpSlKUpPJ1huBCHXjKk0MNmZ9rIG07IiIhuAA/v8IIAw3gw1XgahO8xs+EtGMiro1AtbVBQKSfLwNNc3Q+H1IkYUL+zNPi8ghueIF3PgXQinNfoSliGwpNiuwqV8RlSDTHxzIkY8JQbFvmyxAIbhrDZDuxqPOflyS8A7ayk16zpW0fSKhgy0t7NNxb6LaEXCQ1paYdjwE8+AGox+9bhBmz7K7ZSiPP6xGDOhZA9OUl9fcU6ZqpK5/345J6+2ufb+PEbGKCPjdqxR1q30zUTIV7bEAadi2yq/7qKPEgmgaiZjG1lOSLiSxI2uNsalS4O7k5aDFlGxD1jc48ujLjq8pH8n+6XJrZWrRZx44rOKqN7piAydmwYPMZh6AEdjGWm+E4VV+yD8McCGMWz144jGOFMLXdRNorwv9QqT7ZS+0rks67+YlCRhF3APByfA8zqTC5zWfRv4PewmRZy8UNuvP8St76WEq6gQ59sYZh0ixgI6SjHMaT/YtTCKSNOhcSWdd/MaURPAenKSQBp/sWdd/bcuG3AepRjmNJ/sWpABZWCStTMcSOQpQ9XtwbBqimhp9bS+11u3CG9krn6x+g97uJyKLijcGFLviXG1fs6bDDfqLMwpgpnBuvE2FmaUX3bKVJH7wCVZx7lxI56moHTzcJdtwBim3wfhT6lQ8loRPM0xOOgCQo1P9EBa7bqMHAL5jNDf/va/NUWE3uTJ4O3FKunKQLUOuxlwYbIPe0H9VpxaF0O+FqJ9R+tDKWckVbR1K7gIPN3uZjk/azDK5JMYZ+Ke19bch3qOIPuGbsT2rGXss5MB8s+hpRy8HyEGj1pue6PVsGKUuyQ2KS/S5HoiQ/J6GWfyrI5Uwu2YUxSH1ApT567CFOQx+onra6qRUoL134HlJpYwjL4+p+fV0pSr4o5LY1fKtbCKY9i0LGrgzawOCYPU7Wf4PGPjU/5ymVpcqpdOioh9c55dxGF3dFlz9IB1JtMgEW4ojD16UuqL1FT+7MjQgq6DslnMD2iTEhpdOryV0l2URzQcN7mylOltoKikOj/44cqFufIfhWKAw9GZFndfJOpL6WuZmwxiQQfeAyDO1E7laffHUwqRklcDpWGDt3Vt3lSheKjin8w2eQvTrVaswfwpPJG9JBoFgB17fS/HGUw+jk+5jwxJoA3VgFzroiJxa72pU/V81Xu+iK150tT+7BUqpCFdmY0vEWo0sTpmvBhqloqAUtmiTRq15DsE4ImwPQ46833fGZ+Qnm/SieVqI5Uponu1u3zBx+CaqnATTquJf0TF2akHDWyXxobmPUkbf/xhw8wjBe82Fu+KdU4RaJglntdRIt20hUxLoL1zECmPmS4UNaGJU7LKaDAbtf6FWAZFMX9SuLDhnp/arpLDnRFFr4W7iW24Ruq0RoEETp3yXIOvUL1se48KAZUtJjTe9Jj0YFz5fm83uvqKSfWKa3IGVAB8QSXoS6vgC1EUuodpG7EOASvRq0ome0R02xAtEap1NeD86oLly3+egNcEldy2nxX7aiHjZj1negEgq1zsDmIybmX+rEC8T9XuV89FjClS8rC5w7b/JO35eoyQ4MxjDL+Ovh+cjelBOAC+F8yRLT+94z+SQvQAoJV9CHlKeJSbc60MFVAAenICegAPTkMIrlMofrow3iyzPIAAuhtJWH0/ldiGHkGHk523e9QCsyjOYNdPO1c45sTuEGw+ND0AxeFP0MYPEbqxzhdehyJydZR1bnNoBHpjmZamg5xeLGMM0cd7epimrwO2XGo+o+zfW49bLZ4H9Q5fiQmyvFj0MtQiP+32Wkq//xxeNMixPkeevWp7ShG8bIMbeVLxephk8VJv95IF34lt0b4ngMPU/SqiivsfjXh/ZA+4E2mBVlPXfqnTpf7WuNTBCojBzWFxHGn/JnS+AAA3+QAAA0Qo2zs/mzUmLNK4xZBEqNKT0w0kgl+5Fvq85jwUAD898CyH5IBGyi5EjIlQJfYXsE2HFVgLNikt7m/hmXGFS68jTPQG4Kn3hj4YHEo3RYTTwkCP0+8iup1bftJo63eXo1yciRcY3obxwz9tlqClTFqYrU0wzvkJkhM+bPYL68ZyuiN+B1x3i3mZps0w2zgevX5S4izqi3eJaBMM6Gyihjv9TQo5ByGMZzCAwbpYdYuPO4QOGJcfJXBqn6IRWDOdjUIonhWwgbT91n2jABavADMgeBGv2JrxAI/cD6+RMloNRmxn8qhS5XVOnhmf9eunUolbsoPVybvCACjPWhptDBjnIE5p1Oi7VxJeZBszEFAQYBUJlm8otXl8AMcs4mDYEOtEzRvbBT7eIDr2bpUpye0SIJgTNiLGylEPMcRcwAij02gBUcp5NDu88cpQh2pm95q1DEeib8hIADHAyq3WwwL9PckNvy7i/0H48r9GmAGhWORxybWxBZq58fclnNpBPtc21VIys8w0hAAC8MmeEFAM9c268h9M5K6XUl3NRzjSwPKsAzl1Eoxp3L3GueEBkX6ihzpBMrbKE4ocPpJ4Bnb4mvlcLl777dUFnvzGJN/so/zOhWwmALFDDih34Pb2C6fke7UFKE1yWK6xGR1u1SnfeCfNTegAgAUIpYxDQjk/yAELa/OaDoaEGggyci31WovKdkCG0yaT9LIQwnz0iUBXeUHt1um7DllVOgDW0MzLBapvJ/zSgbder3opwtMsxKSlfT8CGuzGbUFn/qV4lN3AxtRD/9YMLJTR9ih8hcxZdr37L67ROTuEFsuuskPQ4toiGNs1wJqSWn6Q799gj95owmvnvHj0dzXas0sU4Eu/f3pHPY0BaEvsLWrR0yN2XMNAkUKK1KRJNBmLv2KiZchSUkWA2WIUse8ne5cQLxCZU+vC5Bf2BTb94jf5/92j6IaAVtBeaM1ZgFQXNjv2hivBpESMfOIHOMPIhnq2ZhM+4xP0wb3Vu5D6FAoQJTNBJ1RuD2rATYFfSttdBCAWtDSaUVmc447z78zU8DQhuUTi+UFIe7/iE+gS2nrJssWblUu9zHQFjSO/jbmi6tETaF4GFS0dSWpfLYpk45n8VDQ84pUWCBwwmfnAa5+ehkYglSQTJe3Rq1aJWPL+Mxa/6upl8bTAt33OprBEVjuM7LI0ncTFzX3WlYoO+OQsqYXJ8wrhnz/tq71tzkn62wfxYb9LsEl/U4Z6IDkhMAAEUGOd52jVM7vnnsXeChnBXqvBqWRRradsLLa1VyMhKeLYZhEpJm1Sd2n8ADPF0hmXNs7Pjl3RbW2r2hOWELq2/iyGDdd+RDAaA+V/BSmGDWPX/GrXbpDDrNjF3YmDf7yusr7E7yg5wtGckFtUxFX+jATk2dTzFdVyEyqJfEs//R0uMQG914ZFVzDt1soG6Xu27ml223cym6hy2apCPWQCesTHsrqow/QsUSNrxUN2zzKUUHxxsBS+uldS+mcKFga6tUvHUNjbeRvYdJVd+3Ul1/ZZLHdWsQ6M9bpJL8Eumi2Yj+5xgY7ZVCwRBt83uysdAyYe4XI/gYTf/CsUqWtgfnnOBeiC0QoYm+uTib/WuMavtir3QSPO6tbimREPzZM3XjysQlo3Jz65Hp+15fOhuNJdWenzIw2WcTEuxVS7hDU5UHXg7+c8IOZnVSWDx/C1LEFG24HcLoyIOjpU0gEgsj5udcXDoyEGsMr2JIe1/6qj+7rD1IoqkbFt7qJkHSaWe7s0viP7Rq1H/L6gPSi11lS41mPnCsZaOnk2/RK6VCDVFnr/ZjKZ5yoe/G8oAtZXIHoL3BdSOYuB4b3W3GkiuIo2P3Jh+31KRhHV1OJ+7BuZWy6DBkokDMFRl/iPwiXMDR1CNO2FXdHE5D5s9CT58JDhYEuonSUb4dXKvXfBESN/YUjzeXkKPJzc1EnT0+2lrC1kjVX4ttK56zD4YxAlxidEgUBwIxfrkG2rvEsj370VLxTSlSTFyXe3G9NTQHTIKLcTYMRNtfhnJ6upWsOHfUtGYfMhLnOfWkxez/W4khtZvp6z9SNFUKDN9kaZaHCYGHmY48SuKBRY43Y6r9oqarjg1OmesmBDBQHkRfFXFtoU5FHygMr5WHoWIp98f/PGyXofHagFjerBYQtxCFjYILutd/U6F48mtkKOSBpL+n0yxXh+HWFQv3WRA4xVD+i6+4VqHoxFVqRbppmMe47BoZxa859kxJhUgU2Qp4F6W2ddv9CpFWQlSBCYsB/A98HcBnKYwShhu+m//Ghg2HTjmcTjPTFNFk5fqO+hfpxB24XyXTQzC4t0W8wpvE26xGcHn1dpSP6S3QJ17cr2rgpWCq6d1G5Z/mmV00w7zRk21jCNxFjCJTR5mImek203cLUb3GLD6XYeJuJIhB31wxTRSq/7P6I92rJm8RTJqCVCW7JAAAkhTxcuYhtMrhRsMuzrZV9kp5Tdp530fYzSs2J3s6XymfWfzcnnUKBHDaa5BxP2nKYsu175Ydi5pv+t7Kmh4zd7cxE1ZkS2YlrId++wSF9NWvEtCgdzUNsShXSbUPF5u+EzEmnzbnrnAd/fOzlNsNFBzvoNie/KVsHmJXT5E+4xddZUa44yCw9/qlkg60bADmiv2Fsnm0HEHw7XSThGFXoOqyVty9gT3YHsfxo6CRBGu4NaVfzF8ByRYJIbye/bEXiZS1B9f2yjAyIw7FFaTLyDyr8lVuzlbfiKcqfE8AfDW7DJ8ILBMOJlM5K4uTku/qWgEFCvxrepPowV85bhF47yRMM6wEW13EccrQPxooeLjp5Cmdr2lV3l2GsafxMeUjmgY9PT+swWECThiVYYuWOiFyDhXMGtuxmlaiQYt8c0a35gEo4jS8PdAD3kySxsHlE0qQ4VUQb9xwivOqQ4QcLLesuKlJD14EalF4BrcjK+Lo0tzB5mHJ6qheb+fvo4Zv+H4XYZRuvncX1e5Dr3y/X6hyC+993CRKXdpHqQiAJTS65NUcU8ia6qppEUsvJjtGOhA7NFUM3a6xtuB5xqm2GlU36fgWAswnCvyds7I6kiDQ/tWJlIJ1bmTLCdQ6g+dZmGGeRUxQSjeQKPE4fB+ApND5KzjKcbLl+Ks7LFfEUp9X0THfFapzpSDOH0md0dw1BzAUuUGhlffYIu3rBwnSdMYKGsit8mRwvIbs+qqoayDTXuASelYxci48HAENgpOv2qNVJmQOTJew7lPbVJmKlYFmxnECvf1og4rWhMjHUJh02Lp6v1dJ9KRAcgfX4Jpd/SzdBsBv6ppbrNJGRGp4utsU6ImVqriIewNyZs/iB29EiovbD3c19E7mfdF+yY2nNnN3c3ANV2l8xz0gPumZhi2U5XJXdvYhjiSL8nHklEyXa9l16W+ZO2gP5vYSMytcqt35ksXpczIAlX3K3SJ+xQ+pQ1YhEouDnwrKsA7FPdKN8Pgall1XNYv/n086HuC8qSemgkKUJ4hYOmZVWFG6cz/bRHSQ0katNDunk6xeVaxLU2e6PTxXo/eQD9FHTwyh+XtyTqpu4M2f5RaBZwSy0SJWSdY5wcw9IZB9sdyoN4u1MSTLxBrRWq3l87LW2yzj1PudmXl3ymJnZck15OSTRgAuMRDMzcNEI/WWky5ZsMc0CsB62EO0fSrIeoM4qtKj1+w7oro8sS96pVXcpS1Jh/kEZV8cE/oHP7m/Q9bZX9VlgJTPdygDAFBcEI0mdnEZ1uLGIxl4xU35SxmRL9e5lUlUneYhrmYS4ern0juW0w8C7mnRd3mvBKbbtHwwQ5akLTiSgbAcMwwsPuDHbSrba7Vi4p7/tN/b2X3txCVtFWijzg02QMsnP4BK0JDR2UWE0dYcnDh3kJq3CYIvKFgm9aQ+7ggJDJLR4orpBEQjrXcmqRG389R7PIZqaU+5/A6l9Cv1FvjvilI98/41XqOPC2/lyOPLY6rUiaVVG0DzTPrUd8SoupC876kv4cij3thX0NEvk3sEo1kmf9DrqNRkTMfJ+3J8ZZ2b4vFmLRTwowzwDHJVNESLrB9lJ8i2VOdgdjLAAAAMGNdjiE7TNieem/eZYC7lscMcDUjK6Sl+8gvFXKyU2sPhEsfs1qbR8Q+pygnHtzwEhc0dpk4uTUOaMtGIvnW+96hfdZ+hxUJxi2THvYx9mp+ln9C6Wv77ckOzVk9F+FgrTGXqKyByZCb8XfZ1urAxF2/aL7tG1hFfI+71n+2jC1qqMkT8LtkxS94nYCJ3uklqy5uTACae8LRnGEtEtY6/dh+vP3tHMo4zBidyUfpdRPXqXyv1cG1rj+Bg2qmKCT+LH6MwEn7bV8kbW5vsAiShcB39iqQ3urLhX3dQlirMTLf9qHk0Lv4fcEq3PKT5iaYnBaITjOiLOMT2dqRgQWCYcTKZyVxcnJd/UtG5TJ/V8rC44C+cVV7oCxrKAL9/uMUr8Q36QKpHQgeGKz1cqHK7k7g4Hm+2iSSyrEIyxi/3XOHzD6xp/Ew6yKLg+gGIW2NMLST1LyMqpEf2pTUMZjuIVvydo21ET4D0KccFzFKmVEdn80fYpkdSSN85ZSdWLBiHtf4rWnyoNHz1tQdbe5A6sE/LOSgSBjAa8IK6S4eWwYiA6fMtVjkW61MkhvhovFc9if/8TIGiI57PQYyGoDC46C4SJQ8aK8L9JrxXFarVcKeYkGdNvs4kTKjsof3Musn1u28KuDyU6R+8nAUW5uBOLCvLZHepSh93fCClUMob7LtMnVy/EyRmCxbLgzhp84pCR7xWtSf3Nfzqm3IyBS0LnDdyFJGKHWaEQ5RLgU7f7dTnI4Yd0uXjA977VEVGvorBDW7B6rSzKOGE9lb0d+b8TZJqEyO6SFd1UlvKRFLxJ5Ohtm49csLbs76IVpPJ+D213V7KZwYKvCI3o/CJpfCfUchi8OwPmKff2rqo0HKIByzvj8mTKK9K8XNW2NNjgAuVpkFYmWm12uAcbyxmiwvDiLkSS0aw5edon336A/EmuoWsM6qvMa168GCnDDMN0pwuaLtLm7BXts4YKp7EdjE1aGuDLKTsweaLZrmUncvJvVjsPTQJAKhSes5XchDmDDtuxSuo8zyqmmN0JmgYYHwkQ8lFE9G3Csor7hkWTaeNSIA9wxHDdzbX2pTkfkf73Z455l0TtQyQ2G7aVXdvYiGmHiVUklSP6HKv0P+cM+4c3QBggGj+UmXpwFlYlXpnfYQBHMjmQl4POXalozq08w5C2lx2d4V43Tk8zUvXt039mGtrCFLLquaxf/1/+RHCuNaSnwiSVtfsl/Kl7vagiLO3513JYaoiKZpvRJTL32MQsaMAnl3pe8DYZo0zmqjIRQCU32+/MQzdYVvZco4gluVgoZVe7fmMvxLavY/2H/lTulJmN4PhMhtzA1pmZAwQTYflxipIdhBNbGY0fLnLwxfOpfeG3CHVI+gyY7lz7ihA5HsueGMOQZuvO7cfddLQP9r6469eD5pbmxWS0uE6GwzNKHRmrnkvMfCYMJl3cO8RwwTRdKRwk3h7mBGuybcKHuYPf0DeRWhYfvTYrRA9U97NuRWucD3dkgER1U+wKB66kfo2HerfsSRnNsBKe1lgc/u04lVOFq93mauc8iXpNMs/MrTWjPhCT5gKkkCE6jter44xrxpdZN5O1ygFV3i9Tz7P+WabHOPk1ZFuJLvQgYEDixp/akUvFrAbwjcsVvXzzRDNM7CCsTqX23UEoYI05XlmpGyaZA+/Ox3ZkpHwBWQXqAAnMY4lUDdNwlxdrfbnRT8Ji0BdnyCpdUZCmBPgoAG1BYNTtkVXzbC8/EfwyXBY1h90irxE9zbfJy5/4H3yL+gOqNzicJI71HV/4gCrMwVRhJFxbBNhCgdaWYjF+YhgZXgUIEwaOSvths3gwuU5A10sbCVU4zE2Tm0XHVtALNv9noqw50b6FXHg4oOh/cgiFO7PXvdfqHnSH1m9FcmGp1lnVDWs48s+yY8gf2ygmu3VJznNZTvySVgAACfiNUUmOR6wgTf20G5GRkTw3B7bq3DTo7uJf6Ev2yGcwjo8LyPJT/ZFOUhWVBJhzfcd7tv/zlSDytb2q89jblw2WO0WepfUtfdQNcepZ0CfYkqgGBbh86VcRvsvTUmSwv7uBYJfvweHo1EIyZRO+GcnwFzgwEMyDcMX1j3WnQ8DkWfOPbvDa6QB+A31RVTMvMbyuz7cn2ROQJ3dll3HjU8Rm8KauOp8PeT6o+FBUXrIgd4NgSWdodJqf3wcLAv8wbjiLB5/9+EVm06V9LHrrjQEUQupDrqHnQN5UKL/Z8r5Q8439c28fWXJwWqANXk548oWnu9uUkYZA9vn0Q0v85R9+Vg/GQ510Ix8lTcal0UrW2f1mH7r0XagU0/mVjQwxa4HCD9wgZwdwdPmUKoglWNg3mjLcVUZQZ03X5Jbap6gIt7JVTJW2+s8X/V4Nwpb3ljr8Fyqmr4Ojau05H1ZLglPgXglYeo4jKAWTUGmfuibm0V1NONbuFYZsLsHulflUIJcG8KlQE6f3z7eJ0y/gJcoCBjW7fTI1okVGyTT7sP/Dm+fn+0679PwLAOklyWDbHt4N73ySCBn/RKn85foq2vFax61pngU36ztXzB91cQcSsY+jB8IJY6oXj4IHlRy7SqaFN7zEiKXiTydDbNx65YW3Z30QrSeT8Ht6ZwCLEyW9kr0/+78zWGpDiOQxeLE3pxsgokLUJ3AiOlCd0crJ9cq38ChnJJ66m6C3wpkQaZabXfd+fjzjNFheHEXIklo1hy87R1G6Uj+g11C1hnVVzxBLyI9UkWnyTcsoxBu6kShlf00Sr6hoTTg4X70SQlZl/xJub7o9Ze40mq2gbjkwiwAFf+MNgIX+hKIcjNBkbKN0vv/U0ahKRNizAKEk7M337ovWprcZFmjZj0jdBXk62PBqYHRmDXd4CwQLZt5MFZrHnk5UCFLFV3b2IXpRVbac7PCrciPiI/EV9w5ugDBANH8pMvTgLKxKvUgCVfcrdoA1VJ5A1qNCD5691gTC2TNlCV43EA5S1YB2Ke6UWYfBA0qSHm35zNPT6zttUx3nrcoZwTB6tuhqcijBDo32aWWCSYsmaaUyGT5XJwCxowCeXel1ANhmjTOaqMhFAJSL6C08XucpKqjvv5zgEfvEdYw+Yy/Etq9j/Yf+HipmtKM0oCCi0ejC/+T/PVLxl5ZpuOIP18MT49HR5M95cW1Xht57q8BY4Jl+XXXy1stkyhH9P9fwv3NStbu7crcxoG4fqsgeUGOWYc6m5GZZmXq09BZgmnTZSAWLVR5LuGP1IT9E8OPEpDIdsTg5NuFD3MHXAL3E9xRemu7O7wZ6HriM2/qTjtSUcwNvSb+eoVMjj1u/XAploW+SaZz5bEZpBzgmOknDDCTjYeXDjui5DE0As2wJj1GipURfqtksiyArX9VfkglPAZMsZTMVm3FtXK60/dCbPdGEYoyu9oGumigrqe+Fvq39WcsW8jLxPplabH90wugV/Nfn2KjZbPj7lTqa1YgS426Bck0ARGNRgtCALUz00Uy3UYjfn37T5qHvlgrj1/BdNDbl+jswZd9i4T4ur0Cws2MP1cv2vV6kbmoUX9J9jSaNy7NkEMT9dDARJLMis6R3HTeERjVdpJXa6CvB7TlD6zFAFUI9himixsn6nn3V8acn9pg3QQ/gXEx+1gjmpIQzaerB4creENAAAAEnxDqKUBnNv4dn7s6wSGqXukf6s9sW4QY/eboZTrtIyr725tF6kteHz26n4ztw7FwfqtNvzlTknGZdVo6YgN4dlW+mo9rhz21wUoexrxarJgDyuOB//lqXbP5/6xgusOhlcC13VSXA3RcHDCQ3DSQrQfWfPpMxPxyw1bOkZd15x6Am7TAv3c7m0r3GMuGIBeSbXo8JfpyCCU/HUh5RssFVxIKUZkC2pCBL2i/AJtu62G629FMVw7pasjK4VzBrf9zQqGW102PqihhwTrJI5h3edr+CHE+rzf0mf2T01aRa0YUM1GlLlOLmnRTmjzjRc0jdRX6rncDXbYPS8v+751PiFby0o9ob+0gvEt8q4ezLJ1ZzU+NDgLiXIh3VqkzsBIqo+Jgj7kmWOB8yicf3Bvxh+t4XZT4sPOvGqDTh/ns5jfbUxbXCZt6OyS3mqoEJPCAyYky+aOQBJTau5ma1lLN/7ZT7yxTzR9EMdQrrwRDaO7xje5NSK8FlwOnYno7IaxuPlTTEVq009r9hYpvraB1tyKUjcS+VpzRJ4AU32uo7NZim8whX7F6Nf9rv60y/ZXJqfmcHJ/W5+4driCRiUOO/N7zl36RNbfp+HMPbL7dTV0vWs3BWhbYADNGsAnwxwtzWusc6N5e4LO87EFYSh11CWrdlaPgqbR43gG83oF8iHBcN3E2lP3nTIYuyVHx1m1l34cb3l4wbiE6Ed1IPtsnwA+RpYxByI3CfaKEk83fAdwdfm8PL4Ojaus9wcZec8Ka43EahE/omtsBI94Lb1gfqvUeM1zcCcDtZJfSHS0v/AIVn90YEuO1YqJHHUaCppAmHLdvpkbM9aQ0E2KXiLfxdmv51TbnGBoeSaM7QZfk7bsmCMBZ4uOh5PrvPs1A1aoNDTbJWGyGD+ZeNyjLPl/uDdAgh5MSjhbQFVStLOTAI29kylDw/KjS6aNCGyyYE+EcX6G2g2ky8W32B+nd8Fl8GJ67HSgTwd5CMKXH2wxeHYHzTIvMSDQMHTxUcX1HMPe6L1fEUGtHUzYV9FuuODuniLV0DpEtRdJiOG5KJC5aBlK5Y5edr1HHYwp1XkjgGQJbA1MPa9WcB12OcIrNW2QPiWdneQA/MH8ebS47xb6Gyw4fqHTQqdM5J6NlIlxNhZaoy/0fTw/iLg6gVjQiT29VcRDz3ndGSHYNmecoZLmeF3QVR790X7Jjac2bQDXS4A+2bomitkVPEony9zUn4a0kZYKPVXp5nujCNwJClYYDIxs+5lufPYex1rR9MqUJYxQ5mUD/sJdGRiDlwRL29w/bNct+jJDV46tlTL4dQqX0CuccGh+IqQzcuNPETW/fOKlL3efpRSw9gXZ3X+ESfwVAd5bDbjiOzftUqSmOg7TCOm2OPdrYR1meq4LEpYhhLL41dy5F01sfsUJt/5z/iNA7CwFrBT7zOcCuZhh2v0r8EHGzfrudApBQao1ElWearYKFKowkCYxxJ7KThTmBHddMS154KL4bYx5pRjPOS4TWxmNHy5y8MagH+AWtfNHzzjABa3qJG+ICmAoykOS1weeW3Y4JAJBial/loFcVZq4TnAeSjtaWzYZmlDdAuyHPXnZoRYavTsCjnb7zQmggtOTaQWjnQHboz3gtvVusBhDgak/y/9OyYdpPD9Z0PDReWXdfiqMBeauusiwfg8VUI4DLpYeoKTO/2cARSFWZ7vq28ni+59+f3huDxqJhb5/fXwbkmnAPHeJ0u6sijF8bD5fLBXH+HcXWyH1nAT6TiL2DN8+A55kMSOuARwVFH7liQVIUeuhhnm6llOPU6P9jmuQQIfWaQM7rIYB+nvZwrJB/W823+1+91EkxHE5vqbOjURdtpS2OlFaOBB7ZlN7efFtx7jK91kGzpLbr+8vIM7oTeDToilx/ncOD3bKsqTRybpfGEfNfixQkljZXt2tFxURrNxNru6BEk1giI+3ajHO0wv8agtvOfFZMFC4ZXQBkuCxrD7pFXiGVtNS1rIMg/hhCgda34mItOkFPXI0HVCBjvoZoVSIa/SGXiYYWQJ6Z+wCHymlFvv3wZAjf5CSQOp/BNo18FLxlKNuMyte+HrKQX4h9jaTyDwpRUkNFC8GHa0bqiAt6zx0rhRW28RjjpQ8fXoiWUvXAPkPAMAAAG2/ZppWCpPVuraki+XDEbLl1fXCEgKOypPoJNltkilgyX0k5oLE+t2T7btNVmT1eCv8R6kv0JM0eyR3+J5iLiEAVef7Cb4+uD1ibsA07JkNYNjl30dUKfTrOYayUZBRGINwrcl4BPyUGxd+Hrtud8T3dMkY5nPJ9wStrYoyF/cxnG3BsdnOTLM4RQZ9Z1fuEoDbBqSgajnH7qF6KbW0qrg0pXoxVozEohnc3X38Cl89U5LEmIkUwVDJ7x4StVn+ezmN9tS+4qhEaGCmlzbFVf4wZxxKQf8TtdDbqIVkmzCWn1RVTMvMbyuz7cn2ROQJ3dll3QOXrRfdsLMMUPXG5VnT+V3OInMXu/3iVo07+g/BhCgdbZXDx/KcF9R7VhlVgBquDS6doJ9x9pbhXeWFO5WmX7q3fvSSsSsox45haF2ZxcdYz2xdN/RHlehtjP/XInI67s3eEiO6B0OWss6hnuBgfyoK97dxMdPKdGu+vRE51UxvJrQ2FuNfTnFMklRcQkFfLxQgvo4ZWvcOQIPhP9w8M7YwqVlGQ27Uh1LpKNyuNIinCaVIPtqG6oxtXx2rWpAeffeN0lhjUl+hVfoWdSH7CnmJBnTb8B33f41DFH+KJ7uvfL9focGPAByIzPkDbTXNwJzAoupQyILJVZd5ztDHJ9voKOrObyw6EaQEqpYLZDdEQ6pozrH7HEW/i7Nfzqm3OMDQ8kz3Y6SC3RSYsbpsnMUeWw4zsNWFOmDajgRAySkAXQNpqF1T5r8JR+8lHxCpu8YEREkauhpNEnuFNqd1Xd/La6gQiGyyYE+EcX6G2g2ky8W32B+nMW4DDQlnvrEboFjP2vhPqOQxeLE3pxsgokLdp+C9p9zZDl6YjfuOj54392ewV40FvqdCtf8KsFoBJaLmx9lYJN1Y4lwcj4gcmV+mQLxMla6hawzqq54gl5F+kSPbN2pNYSZMIXnZwnwhc4+Oc+FMOC1t21TNK5qaF/TzTDuTGwJQ7DF+c4zWI7+6BsKRFRsxC61y+02zEpqke19hXVuenCanE7zszffui/ZMbTmz1MNWa64MuMiNNxobbLBC+ncMFfH4xBKXlKL2d2IIw6cK5g1sAiXTQ96+TKXYaPplShLGW+8LgWAkZaT6UmYLBEvb3D9tS7DhCSffLpXQD8DAg6K2TMG6bvE2WvCqZu2VHYIGbsUzKGUNJGAkVDKMgdocaVPQ3LkJ02ZtsjPwpQQ6GR2ZVQ5Z3d8l3MkYk0atNBqfrm5XNlZPN7b/N/Jyj8BzLZhpCGi4J5/BLlo1vKTjOkTzlwNGimVHCAw9iKweKIbaK/DxUzWlGaUBBRfgvkHnBzDx+AUww87h+pWVUsUaCZmpuglscya4uwvOLXk0WXk62/3FCByPZc8MYchbi6IaA6ZFF2GC/FVLTGYaV/sQb4Y1nXGZZmXq09BZgmmCVHjPU495/ZaqX7c5kvISsGvv20B26M94Lb1brA7vf3YXYbhG2k8Pvyep+ndDsSzP5/NQLFrMWOS6WFsyL/ZKHfPe3wqGSW6KSy3jynBfORc4JLyg46TqQOv6nJeCes6WTacfAsR5qtbyJFCvsaVIgODrK7SptINInXu1SPKwS6QnTDKaszPB6v1sdw5/XwAKnfQDvJuJrNG2Jf9XAH+CL9uRFLauvnA7PjzAGkypyaavdcdXgY7wfeuZ+Ey3uSS+PAcpZ2Xeyg1HOO08GGXXRNK8FeZdQKaJYaLQAUdVEIFMG3COSm0cxFyL+Tf/nzqtqHASmHdL8H4x/YxZ0186IIngiXE+rrfmKWGd7I4IHIlFDciD6+M8sQCds/Cmp514rUBW2aLNohkWNB2uv1iUM7rPQW7kiku/1JPlVsqkRXRLdJVCEHwRS7DvgitL1pGr4rJTYiATtdHdwrZHoK8KQ48yjt/4ccMU8NzBcdumM7s6sIoeqohRGalEavknysZ21kNoWLivaHj3gNuGmBCf7jsm3MxfGIKbtEDNbYwCUePbveCDmCEkjqC02pAbFi0gAAASDDX4pR0yNDWtSKXVms4EngqnFLUydSpNwXdQMYJzaM7yyPnh4zwFrYCIAAJ96TsTgkVUqxexSdv1QJbs/8PvSeFdEVV1j+955FRiZCmdhy15tIONSni99S6T4ntPHPhsfTNj+GP1FAaVdeAFu+LNsJfewnPrP8FngqIftUBg8Nj5nC8WWP4aCYoIt073e926PBm9xPkFOmMtCPxaNpCxU+8ioai61fykVKLq0UqwteJWjTv5zhOqsw4cdYgfdBuAzRt78xIk3yt4GKO+2eAlIHWr2xGu8nvnFx1kXfzW953gKV86onf+t9ILXsVj1Hfl7vdYqrVodYcH83CwCUXsFILbgZaYiBqld6q1sHqUV7Anz8zYjLdFSKbfvQqSE7T9FtN0R273HkvtkIrhWrOmJpNtgP6mj6PO1+RsVoDqf2MFqS59icDixBjHD2zc63hFfSqLVAXI7Op0dLVhMojm++hXowejyB5RLwAttao168fHl4QK5eUhPdEXLnYh79pUZc5H5Foq0Zw+Mtxfbtrio+VKXge3IhvuBgojscqhwh2ThDwEkypj5F+S/bPOy7zggQYw/1U9E1peWVxVUvEl3Du4PCxrlOWWFI1phJ4qHCAeTD1uszkfktknXCnX4ueht5nc+n4PPnARtNuT0XqbKdBwMD0OlnCRSRTsPkvClb3r/hNw/blBYLFtKZleNSBr8nx0LXoGO7Qi+fMPwVZhmVQwfP9mSR4FHysS+86HNqu1fj8+jUGOgobq/CeVtQ7lCMARPQkpfhr/FAuStOTXHAuQGMdNsrXfvfqfsBC3K6OJeJJvRawExwNDMGu7aaiY8QAmKdNA3Kzq/T8s3vcQdiVz8qb/NVkF4qm/vGd0rzMFeeoFaRGxBeAgCOMXisDiEZ+uCEJUeoILnZxxdtgPEEmFHuirxc0XiUOTbXQqZgXCa1PFBsCPvDBaEAegLFdGybTV4qWf/V6VEAyG7hDaT/wlIVG1phPIfM/sb2MfIZOso2+msK/dzf81YjZnopwS+ZnR05ml00agF7GYuz80JHUbz4OJz5wlRdeUt9JX02DSpZ/5OiS/lR8rFOlXS2A4JCje+S/WVgZjREUqPqNHlBjqSnLAwm12KbaudjUjIF9zaMeXpGGZBrzkiYt1O0M6yskyFZ3hNDYKE/wciC8v89My50zfztrXlF9a2SJpmLh/4RAtTDU+wrji7ExVeJU6bJKQRyURxIJL55WDdOC/qvNc/l5DSlkJrTV2pkqZAzBIsHhe5Bw9fqym7FE9nwl/Y2iBEA2O3QSCFhvjTisTgmVVY2YrrtelmQoSyuSNNmt1X54ht/PrwC+TJBs2+HXXvw6AR9c457dhxWiVyY5fBGBHCvYLhKugGjeFunyn5Y4Nm1cH/BAh627AvoIT4mQ7Obd9YLiFFb+5E8QX8yhWbldufNXBBH5l0vCMnzmPojkLDrDd3wIPFqsRQSbfg9wbyu1jIOKdt/PA3KPelXD6cBAAAARlbFaO/gRdVWmcAMZ6AbHS8jkMT8kOqXF4TMRyoO2OBqWgOHx4GU8o/hGx9liLrj9bUS+knXQyJOTqG6H0VE40jJWvCNZe5pwt/7oWxwUJ0kF8WXGP2LpWKu3yr3Wu438YYH0cLYY+Acnub1QaH/JRiwStHezPAdrCjvPEPc3827JHmBOl5CuqFRmBKTVLaOn2qpNVhdGFwZ+vjO/Aw6q/R2eUAslWJo9SoMdFwTPiCiNvXfRlw08PxCVWiZoL1w21umdC0o84u6c4n38JcKGZWLVshT2xGu8nvvJ5hpolwNQioEso4S7aF7STOmKY0XDJqPp3DxqHD1l0WtsVR9WIYvimAPjqKv6eLjL5JnF69sttJdZwNAqtvOHGdYHbasr+anyVDhTX8qKXOV7HRGzmD03ZqYQRwSZ8AbrHabII6bmC0u219+azGfBANAbf43JUStiNlE42m2TJCXFygpVrA7CcSGYVWAnfPiIBRY1qEQLLXdTKPdNuFFl0oMzHrwrNZaLWDlc7o1TTJ7wvpALHikIjnWa8BbaBX+fZGn5eucfpoxD/GHZF+IxDV5HCprG7u448AS8BD4i2bcFPYTy8MU3C28h5e8742FrZ7fzUCdFogDScHHe9T9fWJ85OrKcMnfNnw/JDZ+hEl9IDFn42iAv80lfzTcD88/UIxppworQnqonS/h3siUxhK1J9/k6/G6mcX2N1osLtsGOSz7JUrvMNRx594QA11NOt6BuoR9pDorDCJG2iaIfO149uKKqMnvPajk/aRlokMKzC2z5NO4KihezacKyeyGosSqpVHiJUTWeVxfeNHTqLa2OIA0aJ2EaVNYTFrkSMPP2md+Sr+oQzcbxEXWc5D8cJw4p4Sb1h+N7Lbqk88FpPmJa55tPTvD/w2k4n/cV6NcUlnn9lTf5qrbtVDHdywBNhSpCTZFjUiQ2FoB/oB9GdqKK6MkdC5jMDMqgKba4CsJiUKJhJ8oUvnDSLztayWcirq1Q9amrdTcvIoRcD24ZbLY9lGeVcNlR8JbKxIk8imPTRvEarmnKvga5z9iSnJkDym/HK0ssl+pbFZL8QkSPl7U+6A3qJ5I7FYTKbk88l/XbdH313aW97E/cj+8AvF/Fy52vKW+kr6bBpUs/8nRJfyo+VinSrpbKSvQmhZGfBfHu0wErsNdue2FI8C2i3PmI+Xc8pS7CUO0gVR4FRxo1JNjyDKT6hzuNCFNpuwg0OAayYSIb35Tch+oWdlsaqm6Xfxgx5kV73HZNMJTxDhmeBbDJYdFb7tZHWq5EjJd02SUgjkojkLUjqVR66X3L42U11ulYLh8OncUfsRkzQcYs0yZ/OXh/uMeIXv0SuVnb5uYHiMNQSZLZ3YVLhDCR5RywMvDt86hwvXxPVUucRwiL4F9dy6MCZyw5aJvqQtmgic/5atKeDv749Vz35QA2ocIfsWJYRCs1OtgPIrj+XKFrVosl09NkE78O6VB+saD0fFg5Qk4pQ7gjtzTJAPizCCBbT6MSE0F07O8wOF7RQO8IODT35JlNFDkOB52DYACGrnqwdkobtwzTbCuwLFULXKm9Ltl+f3s552YLdvJlc1lTcEPIGSYwkYRNCxq49WfBPYBsjQuiKNaBgRCXwBJNXlAGGG7nmFd+zdigl0ysqo3/DWhq0Uh2ttH/KKY0w0329ym237cUcIq7PT0As1EZ/D5R61eWFq7kPKdWLF+nJZN2xfp0SxfNP6GF/BwQ6XVXpi3HniPmcf9SuZtw0UsqhmGzRju78SgS712Nv9/RpheK2Qz4eIe5v7Rt7GeBOl5CuqFRmBKTVKbHfv3h/lY9xwFc82W41LUavAcNFe4oj5+Sa2H6hSfhTlBkHqVuHYeN92hOCHYOOsLoEZNQnxbdQ/j5ECcCwOroFcpl4/aKWY743ec4kQF67Q6rIQAGDa5C6sUtripPVSs4HfQrADxdGQibNM1nxC2n46Ui4mBN3v3fdzttPFM4XwzprmsMO4ezhP6/Isl7u6htvulFPs7vos+DTzmavc9muIWl5l1uytf4U2MEDRX1iYnjCZ7m6qj5cjSVZltuylh6MMTT5/deB9xnB14ltKaPg/IYVQgJodLRhj5/vBVd00CsYVIvCs1rBcADAzIFdJLPXiWR026FylwXihzrNiPv9QzeszpDJlRdOt/E4kj0kj9R+uhzBCFj3B3Y8e/EUHZzx6xmbFPYTy8MU3C28h5eRMuUbojvrcpm6joewS455GrMtXJ6g58Q6P7xa11DRee0ClZK2J8DtcvJh7RIePbQe/yl9FkyFSIv70p0Iehc3KYdSvqq+BSUnSI3DitaGkqzP0PNhDbJ1N0/mu8w/iln3hADXU063oG6hH2kOisMIkbaJojF5w8qMNmYXGdMfvaozwyR4j+SbNKvG4WjulyMcuqEgdPHxZZ+nd/f8qjhTCwKmYJhzjAvKMQU5RSFbgQoao4TIq4Po89EKbSzUiX+bywNJCuEoABhvRFnW80h0FGr71IniXbuslW2ER9A3UI+1bvPwYc8VaeDAJ0iLGLgY9DXS78xuw4diw91YkqDqYCDRzi8Nwb3/loXZVTu1xjrS7vABjrAxNK5StMHQHDSLztO9YGFrq1Q9amrdTY5LuNlFYcKLG9CSpKo9O4BUm+/BLF3B1mxzTrTHCQeCIuWU0mpx0Ns/I/o1vWrXyZVKiv8asFK5BLSQG9RPJHYrCZTcnnkv7DxDcQALZ81GYDkSVpJi2Yz3GZ7sOFitkK64fn/g5jg18NHGuBeoI/TNmiO9dDWfihwUk+CTgmSLc9gBvUvGprxdlqBe5zV5hdXrgOTTXgEN3YkKnq808xzdEUqoF3YQaHANZMJEN78puQ/ULOy2NVTdLv4wY8yK9/6kpRuhLBPJBnz7JPuCSIV6W/OpsGI1ljGMkO6fCSUJcPudOFsDTR14OIpleBGB8BjSvPJkD3Yc2BJwA+2nUWfyRz7zZ7K0jHsTZAE1DG4di2Pamd25omDk97GuuQ3FIJ4nABEaSvxN2zINVaDNDfQ3hpEvka64Qr7Hg1jz5j8D9qUUz8NJkupXq4YvxqJSKrdDqFbnocMut0pKdkwvtknuj35VsTxNJoEadlEKtBKlMDUsgoaLjv8iZaVD1R3wTcMafu5+x1+Jr1X3gk4EAV2lAFegpTJIC10PtAABRRhQpvQRtTZP5TAO0t39D2Yj2DSc8Vt5s95bjrVd7DAByZqh2eNSt5snfVFPJjmoWzqzXTExGdXTF5EgRYldr2kZ853DSK4aMezn+C9MA1VjrTV/7i3pMq8STqHG2Z1se1o2pdh+eK17b5qJRE035Ks1osmpT6yD4HEIkb2bLeR7rZk9sXrQ7zfDEODyNJIEHF5j2MLF88Eh3BFzOpbup8nnMhH/N1pCSwrxmRHBb92PTaYT8PfV/Si6pDCmR3Slibyyt+flmDTocsDcaPehEEdcJwDj+cYZNfFg/hbDyv6biPE6fSihSMjO3Ng/kDpqq8QLHX7p3y7qnIhq3C0xHMInDK60y25/yQoYHYmCfLvjJ26d7iOrBAgjVBvajv16jmABHf9cehG7TqVn1J+fgqN3p8X0NQLFmDsPwXmfYuCnMER0W7hFivLfz2xPp60xZD8opMTj0bRZId6WCZi41jry44BibKWS8i/Ru0mCg6awiH74l1F385vtClKFCxOIPNTstRy+h425lSfQcAVH+N3AE2C/W2iNaQoDWW0L2R+D4Y1F04h9EI8bGyWdDRq1AOXHnly2opJtDm9hMpbjZge3O5PFxkn9qN9+7MCSOURfLjE3OlG4thnS2BH1Cu+rfudAUOcDcEhndj27DKR7zxvGc3pbZ2D1I26OdUXhPVPeuoY11gzUfiVxm9T3Qjn2RoJ8RtXu0PTENVg0iSpDFVzAYKiCCl3m/CuQ6w8W52rkZyY5fRAUgKLr3IjHd34lAl3rsbf7+jTC+I2Gbe/6OkRjiLzpaORXC5yRN1yvJfqVyQVRXG3zFJuEdr6xw/cB7Y7n9Jbn2DiuCKwa3BKm2IMwCD2D1K3DsPGzJC840Wrpd8JZ/LZzCjHrWGzgqZJOdSQ0RtanNGkDDUUmi6SC11JcjaFfFihENRXoBUlZU7FJHjYyMSE2eeQZQz00NjCModFK9juTUWGDTOb+LgYVWHFG8h1arl1gqh+h1hh3D2cJ/XgjEhKg7NNjaV0VpRRG7f4bzqfDcVqQHqgFI3R7yxPDzXK+aMTUgt/dzbllen+EJOlwqEcJzAvzS0NOt6XfkdPWzUHCdB/W0TkWyU/tAhM1rYT9uWMTiKslgMYvpzb20FHKAXdhAyE1gkXqX0wjIK5Oyig+QzAOGTPMB3EtI3nJNXsljnTgyyI95oSTrAbzBh+E7YH6gU5gVF9xhhNuPpNUVKFeESHrLZ97lrkECpHOM2+5Y199ybrbkBwC0SKzLPyaSkOQkaUmtF/pl+vkSIFfe3ltfyvOy3QP7N8VGFNx5No2YZylQo2TL9fr/Hau5lN3h/4bSb+sdNndG8t8QK1fseK7DXPeeWr+AjtfAjPDJHiP5Js0q8bhaO6XIxxBEw5hizQnCnzU9cycmtO3FEwk+d9qtyhWwpyRGgpEv+lsH8TSZskQcdUMaa++pwr5lR9C/WbUNnAvp20f1/jVyIqVr0N73R1LXFXVjHQUum8xWePdre6wzVkOilex3KwPFpSjP/X13Md5i7EyYynOEQw1ABjE1PacODptEEW5nv9GQEEAaHgDi9S/7oakuZjGlHadovAKYtl8P30SBMFXdf6a/3KN20WP26fRVqKoBKM23EFPL+LbXHKy8/IfskDUS73bNgMToF81W+bgSYDwa9OnqGopEaOIVQMFoC5A56/E6jPIzh2go5GpmNnCsx02Pq2J+oeWy3T8ubhegoALwG9lEsKTMRZQi9NGZ4z4PGLvJR9hB38y3vGl8vmhRdtala1WaqGqkbXtRVjXi7LUC9zmuM6rb+NDzM8K3WBqF7JskPIoBigAt5TmWq+7P46j/UqbXNm0suxmDPrRRaFAItovKSucmcORa8v7gARDy2ObrPFWYx9cvdwUb+PkxFwU3nsVNGVuA0gH0V+NbLTvbzLdmApeTBp7MP1hrHd4OoF/HPVFpnvDIVqrIP2XX7lFepxnpU7Jmi8BPl6gQ/8UCzhEuGCZNkY8ziAYeYGtpqR1xa8vWU/HHR7h/eT8Z5cZyy3VcvHRf3ZtIh+03xtE20pe2ZlLSfbLcapjB2z3kfoPw8vlHeo7FfdqbQLnhCGPovL9+DpD8TE4aTxBwgnu5syK3tf9h/mRi8DQt585erCgTLAd4j3OQl1QhuTBncuNG2kkRpB6PdBCXZv6CVXecjcZJVYfFqQU/VN8oWb3gAAUwxoipucaJWA5zjH+yRWdBt42Xv0QMmNvyBDZ6EoHUIza2O05tB1Hf2widcHcWvt5VmjRzy7cj3pfGd9TsnNyYyY64eAUgIEUkMJlZVBtyKdS9LB7vaGxOts8quPQmwvRUe7ahYLc0a1On0HQYgC886S5jCvrRd4LkmUvkkiPxq4zk8WPHsbYYQe0N9Oma2K2JOYoe8Of4i4o8z4cm12eK0SuGzfgaLy7SMYOaSmgk+QiYILG2fCsGEcc6hWRvOazY33SleC4APBSIYWuXsPW5uLyJo6W9/YykcPpvKUXaQeG5PzoZ/eYd9j1dNfgNaOlEtGa9wBvhsBLdPSW/le7pzcqVwjgdaayFvvun958LupJjtbajC+V0ujSvBFtEoOpN+BmtE8/PRmaoZ8qdYPxhaqMg0+mb5DwEyc8dYOYe2dbCjMzP+TgIg3GRhoGfHyrBHE8q+0Wl5XJfu/X0yq5Umg7bW8nZalpXfkI4JuFNK8E3U4WBC3VsUWW3p5ntUM96qJ4Yrvii9mGSCu+/VKn15fAua2HZA5v/uIwTDRayacZLbycm4cht5pJ8VI84HKgI9qGCQHIYW0BKOnHUdNElp9IWOMDV48O+TtvA3lOKj/G7gAnaFN2ioRFftAyCQ8Q1NZ3tuoUY8xSMk9lCShgrK15MCsEoKMWhVD5GeNs8lOfpvT7ohEGR5ExV0GMnCvHf8Of+vmNvfD5iSLde3CASkzrA1gd+Smt5+NjRZZ6qJDUO85uMl8UY+pWQ3n/v8PvHpGm2uYjMbtg6ef7dXg2yWbuvjw6Nt7Tjyls4YVGxVuO/RyDl94hUu5jBj0bK767barngo9EuhBvXLtqFZsJJh0imukLVTgtZQGTpXr0sa3kXQAdszDdOAn3jNKf5nW3CodtwFKdo48elQjt/jZGwbnKb064dZP7AB11wgfYRjEYeYDQ7eReZm1GHL/nPEumuAs38a4wy+SpaEICkbvG31h34PFuLcdPdRvz5cNJY3oXh7NdA5MEXWjKKuCI94l400+HYOihAZvYYYsxCkrUn9NfC6odTRGjoKpv4VOVqquorXuWib667GqEuxeLd2iSxmf1ovYs1W8BHhG3+yQXE8jXwsROLtIMhjhZbnim2tlzzIfkDvjd5ziQ2PrMfBUl25Dcw4Yy9IzaSmRiQmzzyDCsk1WPBbZhyWv2p8b0tPRozvEIQ1yiwfwvhvWkWTCo73EbmmCMipsVcH0qcWDt/sm8rwwfYUEtTUB+vSKctkbIxDI3aAZ+YxHuwcWTQaAK4U9KWvfZYEKrZmXQqKYOAtrdfF6BtbzUl+ClJEc7KIrXiys84dIwaun1l9kyVIL28eXkBbohWqfIE/OTdwBKcVN/F1klzkwuL/k3vJNBZzsrtfdcUQV3oyz7/BcVM7TQHh4odU0YfzjI6Vn2Fi8kG7iGYnreyDiZoTkTM73+bL9IfMiI/m1lNY5Bw/3KzP5gVGmB0VlyySZVVhElAhqbWEHuEWwl+nmsSNiz9SHcJ0ea7L6S6wF59t8hdtQczW+C8fbd8LTEiEmYIo2uRnDzdWQcEVcDJow+JNmtCevAN5l7QIno0ZgBFyBX88cuF0JJSep1GLI5JV3QDbaV2vBaiiujDHQuYzAv/eo35y/xhT5y4aZ+EdDe7s7Yp0j+I0i4RDLQygt936/qC/v7GlM4aDe8eGOtLu8AVB/4PcLKnG3deQa5mIs2c3DL4+9j+42IitVct6sMy3oLH7FTg5CIjb9zya14I0DjFtLXvoZH++CHIUAF5aRwJjvD5VvLr7kT9Tv2AIMql8KQzzrA5U0Ry+p9W5cVJ+YSqhzr8QYZ5nahZJdZgjcya8VcDjYSFtJol5FPVsF0YrCqjcjweJUJg8o+drQ0hJqneM3Rwo0gPQNRYGTjYcUekFLjPahr8w3IiT0sfI34z2RBnHgM0RODtsl2RJjP1SG04Qz35qbZyr83GonFP9tnDB3wiWiermHgGkfk/HuQ6bi3WQdCY3SslIEwQQiXMzwzJO+7eaJpDfgaoQM+5j7q9o4KktY7CgorcTR+TkTsJLMF4dL7UOflbzL2W0swNkl5zVpHZ87jJ9z/ewWdIk1LrB9JvOdObW0PWEWuM/NkvTpMTmZsL7CR4I/XW+kMVodkffoUAUidclFZ3SmCNWRFixzVSTgQ4NVwjap7Ge1T8LAYWc0wyyt9X00jh5annslIcq2N7XAFLrdC4yYyBBn1ZyIGa5p57ieXruqOIpFHDjwI4n4eA+Ihmr7W0ss6S2X886CEGrWgon1pvTHFaGHpNVEDy4BrR8JrKL/xIir/o1wnDhuM4VygIiw9HjeDiZrSRInZ2nO6B5Bl6UTFd/P20tMs7kodK0uocsX2NgN+SvEFb2LWz3lssMP0Eh/pP/7B9+nDOWtYdlJeSVOMm87Y9Oj4b3d7Nz9+zUOTGiLTO43brpQdTAxy4THF4/OGAxeL0f3XKu7tfcUtCqgNjNawy44QpOHY+8pa4+bTQFxsQlNGV4kRYPO9YpLpAAGvd+VG6PT9mxoSbd/W6iCBbCCN1d/YGA45ZaBRhBsmRkCV2Ei2AAFlBJPF4/dA7M/A8AqWGd5hDsEQ03uQAeSWzNCD8Owypa/O3oUhgzBusLTPJHNiXHTISmMhVWRRnkWDZ808hfA3rXDgm5NpeLrPQW7kiXkpIo75sOFuV2t5wE4Lca/eMjAs6Fw9xiyxAjaANmCouHFjzCOl+dVK6iCTm2U4L9iHVsghagI/Y1sOWjWww7PsuKg32XHof9dKqeF/IlY/sBJuTLgrH7CAodll0yIiQyR48dU7vWGZwuS0VIwzq+2HNEmawXFSMwgwzCOBwtOVyPUUonYJw/eg1+eHhvUex8un0fo19M66t6Tsd2YncUj5qW8Lquj9OrfgzhtDMrDOJyJpChkLVSKg1BvjFsQSy758BIvyKZ5XZbvoSxlNGh8kgNUkOWhi2A+TiLVT6+Rp3I7XfCftfsXwRba9DWFk4ByY7u/EoEu9djb/f0aYXxGwhBa7tQnG1ru+BfjfOXmOvtLGZH1XZvmD47eltzFIQwK7rboUdfuuQLxZO35ZYkfZ4Vzza4no939NlvaBhjQvTK/zgLOUnYn1wZwWHaEWbo0IE3oHxY3Zh/tVe/M1OmJTRHHaeUvez5fxeuPOQTHeFoeKTiRMV+SggjZ7/RlHQ9E7cpWsbB4m2QWavycmt4ecDddm1d8HkEHypfsp1biI3QzPexVj3AHvfL+wUrByL6+ihmDebh6nDOM5HdbL0Za+3M7GpUf/aRKmgQrlR01maD6D2HDA0J2J79tSiGfvkPS+k1oMafUw4Ixbb3MCDdlENmtURjev6T1lU7dfsxt4t4uBDMcdkNCXPm8QemBoAcR13qsd1GQdlRrirgSd4o8W73ux/LaZ6/PbxbOK/5HtLCwFLbkKdcGqO5Jo2sQ8OyIXzr8vjNFKELvqHQ4gvw95Gf6+dnwSmNmR6cVyMmTpyKb47rzyRdDyyNCoUxOg8l2TI/7wWTQIMc5Mswj3E+jtDEsoCfrr4SW0r4mW+/OhD/QDHDfc/q4AG0fxE67DDRyHhP7ss5pzXii5wIWy8IyrmOyG6Typ0l4Ids+D8mbfXjc0gJbKL8XMnL7UQu4/NJo6RHQYmI0yE2Igsw1ylrm1/ZJ3oQgsNz12OjE8PNcqbxyFpVKjDpREmWA0FutVHYZhYs7pbzKyGY0Krzwmr+CWZq6s7ydQDMvjE5ejhZ07/AlcO1gz6H+EyUfmPHrC+7PmmPQRxDzXGsbnF6yoyyuscJIDS6s8JZr7bP+ywdttD02pNn94YCuR2horZG/HmefVBrziMvoCzU1oBR9h8WIeb0yI4qOOj3Fd8pt9VR4BuFvC3TQQIyAHxuRALjnWj3Vy1ndzJ8F3d/DPy6jjGOjkqk5P/KmDfBPsauhdrip4YBZzMOT+CN8WEsshc8pmcuM9Sxv6f/qL7ewDHGkLz8zPb8ITgql4haNQic2E0wMOQuqyy2pUCuckZAelusVpI7rPE3KkLWNm+OZHeisIowob3DOzqcjZRsHtA+X79Dzv7ebPkFn0EfT6+JZEJNr/qij0eYjG2VrzpR/bP5oL6r6zvMQmbVRwc1TlW7P0OoGHRnj16tVt5ul4fD8zpFer1xC8X6Y1MjpCvyXpRwxRq8mjiUh9a2yjyhxxpcs3F2qgAU20X2TDyscQFbfOQloFtNSwjpWQuD5YkU278bDT0sxbC6BcNDfmxv1MInpK9eDKE8jZMZYTA7PAagfQqnx+5znl34a4wNOgACVCffAWdwO1cPEbnr2oIGSv3hhHdS4KLR7thlpgJKpqVWmn8Wqro9+uP5ctmuaZ4pcJCBju7a36+r6OcVC5M9aGoRlAOL4JoaR+PUSGAmeviy+hSk2P8zAonyQoHNAnas/ZS4jwuA0HaTMFK+DqCBhSVm8uuu+UPVcy93/4xFpJDXTPz7wswm2PJQm17wAodmE0YvwPqrEN/MwoEkOTHas0DOIzaC6qeu07E/FHmvgP5vPRosQgQgiQNFNiT/yXux/hGFOwe40/sy2YCR/0Iao6KmJxYduwQcnFsJaRTRAjSV7Y1L6Dh35h6+TyldPOp5LXOJM6F17buSwe4tKbTLVq5IMlTkbimvctqqRcouVeAiB1rY7PEURhiSdku6Jqy9FnA1uiTtRZLs52vt4NectdPO796STn9SLE74syxiVfoPDtw7TuNL99N7w0CM64N5/QFg4BezCQrZORJheS4hTbcT3b/pGo3pD99NtQOYO98FqMj3gABAXflRuj0WfT2Pu+DHAItQdH78rWIbgyqGbQr9sBzcWfP69pH1ZEPibkwMsDapf31zxklvLQL9u8EcdMCRkZS914xzMKJ4g1KgEL/dfGAeWgWO8WwgdtULC/hmTlNUkuO+OpV2aErKuVmDnOQmJaFVS4br7HQAfMpvwlIE3H2hXxdiYkFzYusMaeWFqKpqjcLAQrfPmqpilUL7aelmT/INbU8wugc4PbgRfA0lgTJbI0JV8VXhYob1IsoYwlFRlioua9Krg2gSrgTsEdbqnESi7siVcq1PwZXQMp/JgtOqqIL4OUALOuhw/3ByB6Cok+16VqQEjJeoChcM8RY5Rkz+/ci2MWgWqFwFPZnLSSLt/IOeypw9JbHAKGcMNagp42963RSGZ5JrXiHjB+E+U+S2om+2CGk9ZlAOUvPc0z4CCByyjnaKcqj0QjejAXWa9u/EbzJwbcNq1oJMFyMsRp8/wcCNwxKErvn3qszHuFHf7+aK9/6LR+5Pk34JbDIzqiqDpTGm1AtdYe13pDC1LZCKIt7GOBxMk+5GyOg4Gi4U4P1Aa+ieTu0vheqzjSW+d+A4fwyXBSLS6CFwc1Dek9AldotxCTtOW0Bcxscaje0WwrGihDTuSyY70dO19gbtJHPzp6Q/Krbp/noWGZVV7lv99/DNJEH1XlaTQ0w5esU2re9OmYGbbvSz4vuiyy/1mlloNejpGxaqCrRr0kTKO37zYC8lZu6AjEXxEnkeaBoqY1TRaDbhPnOme8zDab6NXTdPbJbvjdEgXVIzUp/yadFD/vuZIiPXTqwMiHfpF9GUondObAkIuuXLcM+V/sDKhigmDJT46j27cW26lX0crT4P69IOE7O93PXbI7bpEyvavx1RmKrwKBIlA6lNjsiF87ObQ98QobXCAcO/UbJk+1skyvlJnAo04iSj2Rgf+JWL/p6YYRaw1As9d6+t6ss3wkK2keshE5hP0kKFOCQRSHjVp8XvUHg/P+Nc2PtBrnU7IFMwvrIYds+gJMucDJl+pt07BaOX9IcPtr6iSAJHYWiTNA7w2jOfXHHjnasRAQ7Z8H5M2+vG5pAS2UX4uZOXxVFtec5NpAZKDba4zTVVMJuPEKWrYgdwkpC/+sadFUx+ObcXRukqPIIt/wntAGNEgQT1vbM4s4oigGFizphgZ+jqriyK8AnDNuxXm/qFB1rWQZ7ujY2Icbe5ZxeV4L3qGdJnX/R71QspPVlOi4OSeSBm1CCt9Wp4UxwEryUqexHkVCOsryeWdtzi3QJ/plYVxm091FH3U1r1fX+TZViryovoxRgZyiaBcdD4zqeZLDrSVU+TT/jIdYNC1oSLHUsOBbKAPjciAXHOtHxAL61QUPqE6seEr6V7x8yvoxGGD90PgfCWvDAuMHwy/7UWrJlhQ1NrDynrzgaZRygTP9kLCSDCFdrtZcsx6Od4q3DhbIcVUxWi6er8+uDmPdZXwRynodgBrUa2BVFahwifd3bTHm2Vv97kFhGVnUaJHxpA4XMP6K0X2Q90FcVjyiHqntD7FMf8Af5LH+RHD/3t+8t5Td78G1Jl1ctoEX/rQvgO21J/DTy71uCpdCL260+0yE32iUYzcvEnWTttsOkV6vXELxfsUmNpbefNp5qE/UGNe2cKWg2NLpIybSEh2asnpqgPdp0v+6DB9UjeGrhtZQ6TG8CJRoGFH7K17nnUyysqitSaIpLUPLO6r749B47Yl7OvxHfvk+Tfgc0W7bfKhptiOotEWM17zT+ZSlmFqPV0OnIQD6TM8sfNiNlqk/emSWn4BJXpU5lX7KLAiw5V+WrSiOCnPHi1SthjgvZGde/Q51BUA+eGqLZjby88snwxGfJ8vsa7P3tR/TOy59SnEmLdT5uMA15Vuk2u56tV7/Paa9BvTFMbUH27LWLVzrlil9z5xhn93Ds9pWF9Gdxkknk10Q9kbbOJ2NFQbD+oHD2V2NKb0KP56jUNQWukXW1ERDlXYIJXYXQgWDaPFFFyaNP7OQZnkhK4lkYeNX9sALhGOZGgvkKw61YlTtozHNP3zpR+8K5KSDFEo/mEcfr/TjizGUoS+yIxR0f4PPReDwtRDwQT4jKvNMyBzePpI58fEekL4HB76LUtTDFRoXaAMjT3SPJG0YxRjsCsG3iS9LbsafxPfFIVf+kmlNgvgj2yIg+WGnk42047ggXI/7SpYKpSRzUH7SRHN+Ivu5E492RNVXDIPA+wG/8krUzSa10i/lptwfwgu2OSWpAzGSigAAvu4D8v3m7ClrJIyIxzP59IBNe1qhMsFcYxx/gzgafXGetwOXEOicXFb01Bnml4vNNxQhjEoWUVbPLSXq5RP6vDD+nEAgzJ0jkUsrQ8GgLRLru3BPRXb5cMdafe1XHRnmMyUYYbJ3nlmFPT/thaZzpznKOo2Uwb0ultbdSYhvrOjJOlWsFYuhfnhVVOMKZFDDiBCzv90EjJ8ud2PN0ChY38OGu3K5nQkRkQMIQfkfdNCgU0N4FJXbeSGM47FeawGfHuGn1g2vbsowSzwxCfXlP6Cun9NRdDdeC7QuOqKKSYBw5mc7T61eFqyl6o5BSvKQMYzD08dCUyXSLePTd9YKLeBiXq0+otxjHwO805gqTeJ1IoM9x5ReLFgvElbEsVrd7K2W9NDB29NQHkgTjA3jtvFGe4/5MLWrQ1x25TddrdJbi68szErF/zh5eQm0Rm/7pZCx/JjtoobwU6JxcxIXuz0XLWdTpXYHKP6bT9VesN5q1FxgPzOPBrONJb534FqwhQOtVsygk5DzUN6T0CV2i3EJO1Gugt62nV3eJnpseXb+2BR80VTzNmCRSp81a7qOmLy24myqNk2v6fZUG5UwVDqiNeNqPZzvQojpjN+yhc7Pp38vSiaiyTeMRP2/n7CmLoX9UzCk1vDze0O5+ADwxc2AvJWbr0IQzaxzwVS5dOg7tI33Ed3KRCVFKZVI6jCLCvvIgjpLdhgDt+6LzdijE0kfs9s0Oi6lrPQYAk6d2FxCoeqHO8LUfC7vfRNVnky1biKWdfccG3y7dSaZA5TCdOEmZrM8qeJZymuZYSHpHv8eN6FxG40OWSAvAfFyKbQkrSWxGQZ75RXFPpcO5fF23YAXOxjjOtw1ofWKivD67AkjM7PdXArsA/8p2XwLcd+MjYxZ5+naVsD9zzD8H1RJgMEX5B2xxr2W2kwJ4YEWiApmF9ZbcrdYuS5wMmX6m3VcuB/8QftgDeGp6it98nTAiehxPJjhKrUI99CNrjPDTj22II6XAjwZbGB9N4orrpHsQaCNvQo2UUfiBBodwU07ilUP87v7/RG8Kvxi5suuSuUUdVNg0tthfiye/WarRsiM4xwuEvm0bK8nlnbc5KVuvblTVcfBPimbdivN/UKDrWsgz3ahBY4c/v1yZLhd7mjIKYpOdNaOlLiBgiqgqlGazt20puRLi5ieNyHuTCcb+4hCqFVX9llJy4Ui22x3dTLrb4VVg/GmfdDTwMQbGhl6XSG91e44tf5zr64tYEh6B8n/OlN3U5M62ZAYOTMGEexI4kCy66p28EoakIMNGj4sDsG8kj6PsrW+LK/EzF91xn2zHh5Zt3JiHis9skjgcecck4OJXl/AMdS6kBiKsOOsu5njpm6den/6i+3sAxxrYp8VPsGToAz4f8kYgNqYTrK+AAR9o26JMQF/MbQoa+/l6kJuj1yA5eZEY6O/wiXxzJopCKMKG9wzs6nI2UW0bAtDLglDxJBNa0od6hWZ5btDPlOeO0gp1+sSnOxiWmgUlNSKA6wpPBK8/0wynrRski3OYOUS8qSjLcHXZNWViOhxWCGh1CjW+ko/QJMw9b4sKuYLk7+A6Z9i53GzV6CNqA8xodPsbmpR0l/3QabUFrmI27GBR6nlkMQBO9cpKjMI9RTXnssS88Jp+D2Hzbit8IPoPHbEvZ1+I798nyb8C/BAe6Jtousls0dLOoyIjMNUxqq5XZgl+osBcGxUTOpvsQZ8tfD1ph1oUUKJA3ymHeN1SJ7D1tFU5s7itYc1Wx4oqq+T7oT31nMOEUTL/3UJCxqqmXRT6bD1Impgcyx5mpM6Vol9loGPzG+v5/cKisAcbxBSbx18CVvBbmMKDi9w3FX4NCh3rv1XL0j8OyL1B1tXaxYnNFXog9julk/8BTF56Inhmvob9hH7oMMrtZYFbLa5DhXWOEFSTfau/VuZNknWMJ1DZMqFGMm/E4pLBImiQALBt0Vyr9TmcrZrFrSBmdOlhfO3BcXshG54jz8k1JeGFVmpVs0r7QdApsSCSehV/sI2PP5a4iT6fIyVktClVvOoc9wFk0TKKJACKyb/GakYWkVTbK5xkDZpTTN8EQWWYVWL+Cjg6YgA7DU/gPRMygqhALPuWdsLnBfJ5Dn/mU47X5LyEdCpqrzjRiAMt5cKXwwY3znaAfg8RjBV48azuwcNB7IKHQdfj6dR2QZmdUzAAABKhuRCl6em7b2wJ1XiEYue8GybYIS/0Xza/xQ7EX7uL2+Zw+ixHRQ/QOCkFFP0jP2xGq2CH0sSyO0RrRVViTDUYQZxa5c2AGZZi1bUyWtMTCdZ/agi25eD2eoLhkaj5IiaKPBJQi4FBaWhc9vSV3EXpiVeT4DHNnqa2hGFEjzdfSV5T8S+3myRvucoPT+gTJtoqCkoEPnuU35wBt4r2Zk0MFQJpsp7Iu+6vxzb77cO9JHFJt/5iyxlHy/LRfOJAkIGmuDlbfl6D3uz0sAqtIii957w3C+vM2+Ko4DJ90+y9MPgKQlNHfqL0aGmQj/1lbnJzxCPoafwf/cF5048XeayvV+/E4x/ILAOS4UDpsxFiEcQKtS953RIIYvjKIjZpVJKRZ7Jng6XSl8zpsmU+zpwiU+fEZ3HnfhOCLt7IVDzXprZiwPxNKDRnPLQVH0rHlExJa/tsoSmF1zJlZtH0qKXdplNKhO/SMyhw7TVu/x6mW4iZKvi1VzUTFRfdHGSWu4Ud/v5or3/otH7k+TfglsMjOqKoOlMabUC11h7XekMLUtkIoi3sgAsUlTquLF1PvwYmdDSmYfCrNRK7tIjk+bfvOKXSNiO97JlnBLczyp68zGmkiIPlhp9eAJzNMIoO7eHRkUyU8pQ5QlLScPmsDEGXZSQUn1iiD1wVlVH5EU8t1REohFKO2HiTPfc1/FLRszrwrhOHYu/nA53Ek4PXi3EUB7DPsPQBRlUUr6JdEqxqbbVtvoQNGD/X6Z7YU5Oh2IjBEVS5dOgzxSz116Sa03Dc1IDQfY0vw6K8IDVdj4QYKY5sf9isKlNoRN8+I4huGB36QfDXWPFBiOzbIheGck/9txHXeqx3UXFQcoL4uJ2fACrjDSuOl2cGI0uVKXibGiWN2SlxJI8iB4yY2vf0FXHWqdRRsl1xI9GdRuysSLnFV0Ts9jDaflICuH4XdN41XzJ4lYv+eiW6/fyNnL7z8zhdGLqn5JLI5VpMc+ZUY0qcaw/M/Ll88hOoFgGX/UlBhowFBf2PfDArnlBHyR9OOilTgH1Dq1SR08r/PnVcxXVMEjsLRJmgd4bSMIy5tfh/dQ5nkqmTATJW28vVoWi3CdaC40nJ7rPPMPf/UTLFN2sizumPv1FtoslRKx3KTmr4cz32prUnbHKK6Cvg3HCfi9J4TCUtCJPMEd/Amvqi3D6TwYjoBOZoa5Y6czqodt2u8ob+bfYcnpJaB7x9tBMmfBi8Z3tZgtfxP0gChwOQ/CbSoDo0pqMGiBHTE+lOdp1JrbsbCca5ow3NU/AG6fb/EtTvdAn+mVlai3Qt39KdQ1ovsG6TrB5uU1Zswg2BKCluTJ9jiHVnAQETEdV2rlJ7U0CIdMEI/t9KXjtWCSDaZaN7lEzLNKGenlKSfFD8yqtMM5H27HT7Zjw8s27kxZc4fvO6yO6y6gd7STIdybRwOZQVjKOGATj5U8OcBX9wSxvMYnIS0cduj1MVXY/epGd7iWbMmZR82pjGg4bSBEkXHnrpxZMrdHCYbaW/Jqn4QmjT2EZWeXE/mIpV/cH+nAU09Ff/SKMOuWNAwMvoMwPu3hkkkawT4+jiTZ/rIlVv1iU52MS00CkpqRQHVuXJEuwyxgsHLAfNWzfSLrsKhC4aB1sxljOstZ9MA8YV6W/TGpkdIV9PLVGLYXViuJzKXYl7jZ0MZzmErftk9NUB7ubioysbEl0Yuqfge0losBnB0qS9ePnSUYYigHtKHZ2K1JoiktQ8s7qvvj0HjtiXs6/Ed++T5N+BhgJBtemJ+Qexx/2mv1JITXP641yhN9wUXV+Fkw6mGsTeqevA3NBnQgVX18GCJp4iY3w2qptPENb4pCJuEqgDfHmf0srEqtTMdPTu+rMAxaRNZ4Cq0k4rTe3rjZKDO27ZXU6GKVkAIAHE5g1kkwDX9OBGmn6Mq7dyq2hHxUOGQBskz4wo1y0i1n04ICnld7D5JbQQ+qH13rVa+GqT+kCZvOX7OV/1uqmrOBWzGZPoME6J/wxDtpFCqGwP7K0uqzDvBj1Z8JcMzHddCAz0NwtP9M11+p5yAACtjfSvnIpNuxcfUw990YEZu0AydnC13l8XoNm14NUqeWZTItXnns+fzYWDtAq5MLXanGhl7ucEseOS16IF3i2j7RFJ0aJjb7r5ZOFRYrOswqPE9KKtJckDrJCqiIzF6g4QKff5m1jNE9ZetX3zcRUfyeJ7trMaupqeGeWj6BJ7u+4SbVY5nV/NuabNaGBvSmDawPq62KTv8lz7OvfeVyebCjWHjXJ2m41vyaapWqFNdSp0S3eWDqcsZVjUyayNRB0PxojF0KwJsatGnl404amLUsF0BMoa6Wz2Im0/v01t9aOO6IFyz6qs6FOx+3WTP/c7bGqaAAAFo3DAEVO6EPCy3hQdEj9s2SbyrQH7fv4uE3fAeQAoO3Y7Eqs0ncwSGNZbWdoQbDXdEKyw2nYnzItEzpkUhJNtdpnKF4g8Pn+qJHOCZa5GKyX9pgCBeykIRWKpuglfgFgc6sobmISTtHYxvL+ML5R8EMk1f9L5WLzJxDT0iZcUvs/Sik7i5bcCqae/ZbxrKWNHoBscj7YpQXbBr28d06xuIsdRg7k/7Nionvbjrm8VEnWbaxXnzjV8FpiNuTSK+C9UYPiQ0Do2eN4w3QtbaNFaJhGHpDwAEcDP22UI3dqo9EI3owF1mvbvxLZrX3qlYRsbqnfUF7NrKdezS0txMVF8EKrMx7hR3+/mivf+i0pQOns+14oS9/ReK3L8ssSP06WlTROyh+7z1Mmukkv7OA7dqWBYHV0oJAuyT0AK4PL0+U/6nWcaS3zvwLVhCgdarZlBJyHmob0noFP/J1DLHO9dBb1tOru8TPTcB9Qdauc2/ari2BVDmcii/Yu9tqgdjCQyE+QBmEX+pXE4V3ECj5AZidTnCUu/bKLCJ30AdJMQgeYYwmzHRANQJAs+7cLILlruFRl6C2WvJdBKfb61ANJk0IALW86TNKdiaNh3sWeWsFLPV1vwiSv7kK6KQQhFNcFjgKA1N2QzsIm+xWFSm0Im+fEcQ3DA79IvoylE7p3cGC6dtU66ENADiOu9VjuoyDsqNcVcCTuSiXvf9tFOeG6+eJZykDI7XojF6vPHSf9zBrsJEtJrPwLUCvBYS2aQy6nVbThISLnFV0Ts9jDfrf+IXqmF3TeNV8yeJWL/nT48SmD/333BcYT8kSAmgI9y/3Cv7gQugwVbalLMLUerofhNpytJWdDrxRpklpFWtvduMxQoFFyXOBky/U26rlwP/iD93C310k9FrQiyemZ3YhNsrrjjxztWIgIds+D8mbfXjc0gJbKL8XMnL4qi2vOcm0gMlBtwybftj79RbaLJUev4zNsNwyOW5h1tZrN+m8mCCKOt0mEqoZWpGFQ5XB61W7aW2Z8yV/iWp40ethJLYmRYaRv6f/8cFxjokyEC8krBYLHDn9+uTH+ZGzWm8l+n98CVmyCr6neznCVdvtc8L12ehgvAv8rHser3ucY97bXjqOJiQ6e7F48sl3q2+FVYPxp7eVEOP9qyWq/1ZTIW3ikAD83gW2kdEk42IHCn6/j0XKpPpAYOTMGEexI4kCy66p28EoakIMNGj4sDsG8kj6PQh75nGEYohsMUPOuAKGPlsmKoM33h0FFqZ+d9dMSvL+AY6l0CKo2S3qHBGprb3uuCWN5jE5CWjjt0epiq7H71IzvcSzZkzKPm1MY0HDaQIki489dOLJlbo4ubzl1pbRmhvqCFg34lVs3hmpScGKLdKlC3a+H6HpD1rnDcg6+sv5d+hk2QAyrvwD32gwTJkDbEifbj9mFW4+jYLmsYt/tmTciiGXyh5ify6EOfXsYCii3E66UH7vgZAfx+eVOnYz/8XXD0TeV3CWJYV8Ncfh2Qr0mjNz1Wm41k7C5i7Fz0wjoEAUN6/7m8i4zSF3H0BTnIS0C5nWXApOJWB+TiUJXfxrUM5w/XHuAJmJ/Fyuk8lWy266hxaxWAjeuUh9za4DqYxuraF6h/Rv/e5+V/WJROTDNPkIKiTAYIvlZXe2yQCwsFitds7JljBRaKM44PojeIHOs/TJVusgliRkSMHOiJOFsJjPUWC6Jkmsqrz2FNLSvJUynfjq8f3ryycB8pGIb9lqyMaat4vOwjy6lwuTV1wxPuiNFkipDI/GG8e2Ep+ZreKJivxmy2bwZYVv7gtt+C5foT+xHTw5Erk9m6FRGha0HHAT5Wu/OdmJGW9WUDvqhcNB9Nz6C16nyUH014LAZl98ExF2HNA1yeZDL4WfjBK1EWbS9nDQh/fGwgLNzkL1vQU5MOxlsvGuYA17MNL+s4Dzg+5Qjf67fFfUa4SDDtcPI9HLtsXLGSgD1FbwfsdRqt+lNbPQmJdWhWsNCVSU0EVUnYZqnsQz2oJGDnnEkBO/+DVjHVX3Yqpi4gB3XHGbiwOpB41VYcTcOKzFN7d5KvIcu2IoVIQvDCwNsLkKvkQN4H/oc/gAAAVhnLR39rfEYsLLeFB0SP2zZJvKuiKW6Er8LKC/IRXBgQRmfC1pvxCIrCEcqKDd+ZT56V/6+PqCdWfXN0o0hcFVVggw486yjgSBQSJDluCTILw5EFtVnQRPBRNAynPmHdZKbJt30HX1l49yltdLjJB+fgjQOjKRlawAgKIP83WPcFBmIr5kJLX9tlCUwuuZMrNo+lRS7tMppUJ36RmULLP0vtSs0v0PN1umNkML4IU78fy2ACdpDtSfe5PoGQO9dwGFzh7kddlbOszmJM4qw+DckYwq5V+2TYq8w9Fy1nU6V2Byj+oSaRd4dy9loZg+cG8yAbHnIzIJpJ/A4h7cbR8a5VURzlTYHmoJ+ze1JwxvULNx7NAeY0aWDKcR9kVuvEoFl+I7ds3fYrwKc6iqtkpPshTewBejpKBxQxlpf0rQ0SVcUV1BMdi+vwrdUOCdyu/fEMtBr0cyKqY1n5g4FlIA0cnzRHejGLWC4Hkz7LJ1ph0eweZyqZAQNE7pcQ3DOiicSlND9qOkt2GAO37ovN/HuYWAo2pURC/B2eLhMfUiInvGq60M50Rg9owa1T+rS9DDXPRayzHccVEJXU99HMUywOoSkXih+JafIAWTLUtVCCFU8VTxQfJ/aAgt5axpuL+UrAcKzFhsPKcc7aSQi4pL/ToyI0dOUBSjagfMJ+SJATQEe5f7hX4CtseIZjr5JMVuZIiUyBKf0dpPabuah0f5iDN5RHeptKqmaEM+2Tg6KVOAfUOrVJHTyv8+dVzFdUwSOwtEmaB3htE3LOEB8CXbi/mCdhypD3PrWlMYeoEnl68rnQ1VorZr9uOqn+YQjcSTkxMlKqsDDr3u2IgWPHHUMBY75WSCG8vqmfCKCM5j++EoUpkMJ83UOOIySR+0GWFrNOqnYSq3yxYJ19M2Ke1Uhe26n+tZaSxaz9AduEQEjJ+lFGTUnKN/HNuLo3SKii9DfYes64Yh9vpXlwHfNqfV1+Ss7RSgUd1DF9BBaHTvPLDBJMYLxzvNtd/Wal9ZZZHdFNieStGyTbwAk2YOgVXbV3bAN4ByQuYtG5vIrQd6uTk2ep+X5NJEICp6LX7EbD8ZX1OEXqGrS0Ay/+8D0955amv6LM+VMJce8mF++lDp7p6D0MK1Rmwm/caIHblmRVF7QqrI/9fEd257Oo2qkS/2IqUUHwN8X776tYfJ25Dhp438JYaGyCAcIfPLBdaW0Zob1pWdUye2Jx3mIpV/bVVTTz/iUFqkK22XqlNCmbIrV+909N6twdTGPiJnnOyFAlF6ykdJ4MhU+INU4FTC+A7cWJsybkUQpnk4Jx1k5pwCwGpQQZn2+n4xOyDrjAONSgtcyhwhTmbY3d2ZDx7HnPbMfCK36gPMaHT7ku7l1TA2QAsCss3wkEPcVBIzHZVRzXNQyiomhfXJWvVBgFt9VsDku6EQ/u7VjHaPWn4dsBDScdoAKRr4NAUGccpDP9pbfgrsc4r9U1Mx18kmK3LvGsPSbFVWBO0IqoujxkEaLmiOktnc8FAjwNK3uX2guJsYE/CUif8vDjW3JLvw9NsTeQsDH7uxZ9pi7+Dl7Zwhe8jQ4C9hdoNJ57e+ha7W17XaHr6D98391lN9PVWFnFuSwN9rPiuGiDZxSw+/W7uFZYdoczRKUMCyG6sbT+fKSDxW8lzoHJpmlotXR2AbLLedxfKrscH/EX96rcklpiaw1Ge7dmYboYILIkiWU+xbqZOHJn2ew/gjE9veLf8BDMeSMyJa8QAAADYnE1yWOBqcXjUDPscCNQOS1exuYRzZTdbaD9Ku5nZtqpOiBHNlOzDCT52uFMEslfaYggjgmrhGHFm5g2ksYyhHJYG3eZI+tBH0pNsztaYY5GboqYwEZa8kMtgs/HMoomgvjBs6IAV5IFb8YpeoyrtDnp99FU2OTOE+xAQHtSHEB/ms+SzyvFuEhhfBClyJ6ghgNDW+LUQy1rD8DO5M2QX9TQnQYBEEdNLoCEc4x1WngiOBF0EIBa2zEZ8gQRPDOaCTpZGr0gju4xSc2aD1UyD1/1V5GZBNJP6W6QreED5HX/FMMNglvZgQ85O7CFq4mjhxAeBt2xcK0guzVUVdh6/nzyw/CPSNpY1fssCqQSb7aJl8WEBFsZ0WkdkLMVMF8mhD7MwLqRSiOWWj0HXrvNa1K6F9DTD9U2rMRiG8VldYjdq0638nK+c8CZQWYR6h/i+jV/G+RxHidTH12sjwZf62wIRTX9hogob3hyG4o2A1+Ds8XCY3R04/m24Bb1RCzehpGcjUvkdhSKeogZcv1Panu3zCB8C6LzHWhbSgEjNc/dr4PHbWJVQANiob4oPk/u846J5sT2OsTLsJ6pmFHgilSA8qzwNexYHzOu8dNJ+sRKbZ2tQGsF36Dtimb/Jq3eS39MVKQcETakilUzc7JSno6r9Muftik2OyFM+fSWFgxkrxitRwEO3egePDtecP/Lp4ML9ikewb9U8vW5zy3t6ZKhXv+Lw2Sqo+iYam7iG7r2RiTFIcmhCkP/cnGCsPuoCZUsEouJu9tARrucki0AfYhV9EbbGTDuHnP2FACY4xZJd8pFm5kP+T5Kz7C9IHlPzdpTfGqL0J64wcMBgEofp2wIZRhUukwWstRd5ZQl+gO2j+WoLxlQKU/qneDSRlIsbe3MF3/r4Ikf8T97CnplV28PYWW64ogfa5tDF9FLqS3lqEvkoWdiHTi8jkbU5ZtJ30fGjqWM4C5qV1YKTKjicI/kN0+zx5x+zRKSTEun30/wzehHd1Itip3iQiWmXzD4MGThQDENw62hKbthzfR2LIw34aEVG4+V64YiT/NzBt1JadWDDt/gUDj0i1+6EU3MjE7pdRuYJlo4ik2TcHnUIFl48dIhCZ4PSjPu4M5CA3OKP9X/byn8ZNJ2oI1SnsrXTwqZeDRcdU4B6AGisJySxB8om/6KR9HNb04aUkOh6PZvNAvS93ewFioirYQ6qvcyAQ4zjS6adXyefAiR3EOdtqqJ0L0KTbM7UdpgikARpnKgmhWo1PvEBSi43VCVdn4893OECAu8S6V/HmyO2QCSOJ86deBW/AqhM86HknAUSxQw3bM9ddRCku8aThnMZhevpdrkv4twBFB2ap1VxhJ9Yos2OF3Pf89s5RjARS5VJmLJ+aG/gs/iMYvTXlM9tgS5PY4rXgwc+eWHugwiqi6PLECIQER35ScLQ+BZLpCaR1GpHzy6qYi8riLh9zUsAJj3bFXPNGoaKk83cibcFvi1lpIlQvNIb1ikqmVYXal+B4maH5krbHyYcivyMOg5Qxg2Pi6PYMSyzHCKb4moWC8rDFHs9IVx2BYbI6rKoIOVrAztAOu2oul2sCpb8MmGp+zX0Ft20I2saAAASInv9aBtLZOmHX0DzEs4BTn5A70HOL3WanQ98FmvE0dY6CbyrZjBLsBgpGTqdUBJmgFqOJtNC6qVBWvM32k/CmTAJqkG0UDiBGovHeyfH51SmZr+nbTbBgv2fzyS2dznY48K/ED96pWy6KnFFxwsoElcJKvBR4kKB/Vkc8hL5zQYTbdwD3WFvURiHF2Zv6rI0gCVwHhSPadB31tfBnfxJ6WKcl5VGLj+M2HXSTaI55LSri08EjOC9zomyITt3A8nlG30m+WUOElFxVNY164oGwK2eKsyt+He6t3IfQybMnLCOEKK9mocm372iVGigfUL8uKf8gaZSuUfTx2M+0gyJyJUKTRpYfnrnSQRWt08keVDAB5XvRZtTPkp1HPFTzNWYIrNq7GRytMw9rHY/H3QTEhKDvHzlk9HK7ePMGXkOQ3bPUVDMP7YDxT8+YHvj0QCc45Ip6FH8qqz6MqvC5nrQZ5tPlQZh8FALIzt82IpMBdIHqZ0J0ErWihzSjE6jntZsGOz6OJ9KCqZVpgJDJeU52Ii9/UvIIP+ac7zByHVPTa/hmMBPbgqsoHHyqUTIKuzkbKDOwTB2E4AT1nbnycnh4ip1oVH0Pve8tgOFZiw2HlOOdtJIRcUl/p0ZEJgpBzyM/57oxu/sF36DtXyibKUCEuT2OK13jSTlp/rFhLBg1SXhhqXgbQOWUbpdKUsKdxDXYx4cy/4c8M3ipZBTaxlV40e0NrvIQr8v/m5ZwgPgS7cX8wTsRBX2ds9r3c96gSd5m591k6PFZOMFYfdQE3zATnkGHSJa705PT0/B9PdV1mtwnQt5a05pdEveUzZLRLtF90rnbR4HYz6pJPxMP+zufwXQ5KBtHWAIKwdsCGQzQGW1KXci/wkZ+CzvZ2ksLtHEhRhfHbTmcSufadjeVcwtSk6Jno854Gj3HLGw0flMqhsau08fy7Q6Xu+JcTnb+A/jbEvLR1eFyimFy7+EiD9kbKdPXglY6ym0epQVbIBgunJR6RF7DTbz3bGrhVfgR3bpSRLPZqdyfOb3v+g4VqOl7PUJR5dhhDs7R/dhCfhnvnjERnEWrEM+8XB1KFaozYTfuNEDtyzIqi9oVVkf+viO7c9nUbVSJgEP+KYRN7r0K59lXNb946+bneK0pP0EM9Ie3Kv0cZNJ2oIrGUw8WAhH/34BxFn21VWMQlRPD+uEgciicR9n8Kzyd6kPNdPzMdQFJbFRGtlO21tGnU24NQxDxEhUbMjlP9Lnqyr/tX/J1Fb2T+igUGB4Nw7tlSNZT2vROezMaSijFl9V8OCgeQbM/vEulgGIrKyfhSYQ9NiisSagO+uFp0PJOAolihhu2Z666iFJd40nDOYzC9fS7XJfxbf1n+gxqzc5tjEp+aKaLEtgs9H7o+56FJHq9Ewaug3zmyeUjbFIgkfCXJ7HFa8GDnzyw+7/LEbcZYLKmK7y2MZYIr+I771FWfPnBJsAoJQuDJb8+Pm96Q2Yaq7WB8unMg4nxTLuJXBzOUuGfP23NxGp04kc0DfScew0mErGuaCXoN4sMJgSD4i3KjGHdJXIc4Qk5jWTuauZQJGCV1zSE0gXfE2w8+C8o6Q52tFLyDrzbwCqN9UEAfdSgUQvcIHRn6yFNJkPgGRw0BAAAAGplxp/aYKWS3mIA2Rt9MWHQmoKyvLj5QAbFT6ibGoqkKFmly/yLzCburEW97CCWeQdRZwL4OkteOKZVNnThUF2dLsvucC++3sfJmxGGvcAhMx79Yve07Ns5ZW+bIdlW5qOE+BOA1xPPKZybBAs0RdU/sNWZMj17F8DjeakiJ4OaSlenePxDQ0KjnmrrsKvRXx1re2cZWlhkBgKDTmEZCGuvDPeCAxTze3HUKJiIueFCM6wrUgDg1V3rQBQR1n0CK7D/7E5dSAf2lStGEAG9Z7eD/pGFsa6M7KcfDwnL5O+MoEVAx66BnQo5+xYiBZKo1dI+gsjjvgm9HQeBWzxVmNve0/YKtQ/mKrig9mMvVwF4NFZk/XVBe98y1Tf8JLLx6qh93dt+/CoxyrTP+VZkNZhKS75SK17liBhN+8u+gAM79OBuUQvSstjrYRY9KmprGgskLafPJEDNMDeXh1H6TI+/8NSWyDti/EC2PcdpyR1ZkKq0/uNEga13P/F2357rTG61M3FWa/7bYAdytM3bPb/zJY6tKp5A+PQG4yu7dqi2PvS46q7rBvaGqh+gcPgtAjN0FBOQbQ4Yppwq6PJRM06lW8DvQofQnrrRiunmK5nKe9ifTkwtIYJg7CcAJ9LtXetAFOyB8Idz9ilqW5yGiAjMnFEQQopZkXbruHefcVhfed9aZSiX0Y2zTGl8ofshOa9l0SWxUHjJMPeUjpwk0yWzcWx727Qiqi6PChJ0sCCoSc2UZK8YrUcBDt3oHjw7d7KtwT8fkzpZlwRZyE7M4zJboTEHkeBZU9Z++SU/Hx4Tc571Ak7zNz7rJ0djTSajuN2pqBS0RMjfkE4TmagHpUqZYEXE1vnLh6gcYGzYQvIvhjXouxdaGSt2jMOxMeDu/Ew/7O5/BdDkoG0dYAgrB2wIZDNAZbUpdyL/CRn4LO9of9SRpsjlRHfUigd1zoNkg/0UjLxbmHYY/C6W+G7haongNspFfNe2mc/TlC5T4cEf6hLeWPXBcb5ikYkBDFEekyhH9ydFCOws18XicmrajwXN1KZ6SavrpOovYabee7Y1cKr8CO7pOTQ+tuMtyex9JFRTmJXgG5LBmrzz2ZalQ6mAoY+l8obiqrBf1tv9Ha618OkHC4Q431703mPa+fSZCvJJmIr4e911wRukcNeKr4GtwZygWXjYfZvYmd00PvsGxGrISrG4nnav+3lP4yaTtQRtU+8gJYtDhPUxs2UR49rjlJAiWQrCWhWL8h0DC1PKMzHTXRZ5QLF1u9w3yIhlgyD0Rz0Lk6Q/a66802i34QLNcKUCtJXjX9UU4Jx1k5bbmzQymiRK/0SqsKEd5W+WF1JW3WirU7iVNlJyFH2+5p+ezi/ONuhLw2IDKpcqDWdKH/WlwPn127OkL2t8X7XEz7eYW369V+8k/ibJuMRX74gd4AAGgHyxUEjynv7IkXrj92Tkh00jE9GdwXIfIdGv1HPXwayW/pipSDyhXHWYWBhVshlJLoGW9wcQyTcFIJyOBnaU25RYIb+5RMiQQIpslta6/Sl4yP1OQ/uUl6nI2FeHBz5PW4giS+Cjhg3B7QqCUHw78+dLhhKbd85JnlwYfCgG6qCTpNXaQdV2TFn9mIWMgrE2I5Ja8+EQX0WQ6zTFWRwFkTEuhLucERay0kR/+2h48xrsbOrqe2c/EcDjjgGxjw3WxjMLQ1y0nRPpi1uuj+0FVZk+jpENmu+85kBMElSGbOw+JLAzQ+UNcAAPTyZrvi54C6jTixfNTxAqAobbePLqVjMkOXGjilNzK6u4taaaEmtV4inn8HhnrKuUI7Rc7ozDBogtVIvwfn2ziqPeCfVajWIJIeZsjt6UvJIG0JIBcY5peHEaqDNrwrzeSwlOUu+bAFOYTBbdut/CcjC6PtDK0PiQ69WWbsCI0Ly3+F3BavPWyGY1UZ4HaSNR8LiHE/WC2WGXQVqd1yqesMAJH3TLULbXy38+/O4BSemLIlC01Ob92nFpjC5VXn46J2tF6zb3ZYsyvYaFzGYY7Cdgv3GCSl879namZI4unM/WRwuCte6J7uEuuSnMNEmmWjlTd8HYI1qa25eBgTJPlebDnP2AA/6gepm6DhgADv/OgM4OD6qHxuuRZdtbEORlSYXFJz+llsC3fYLJQ0vCOkUsMAzLKS4rVWMYDWy5y9/FMkar8gXWvuHgSguaZA1yEPIByH8l1lc0h/PEJWTKwHO/h0qC1KIRHGneKuCLQZwHgsK0+6tSp8A3ejSK/cogT5oPCF+gi0danHdUtTtFDIgywGXFT4oh3+xRrnhYgtUMT6JTzNo06kK/oL/8COR+x4M/ES87gONpPRF+X9cNFunBvP8BbkzePdxDZp4COTGq4PIuTY3KOxilYF0WEsZKDSEwAASVMo+ih9qfsUbVPuH47wTdifaCaUORgPB9WVGuBdvGJaGe+jfGzaxf2YlU0r2VcgX2YzWcTC5fuZ0nANB8RbLag2ZOmAYsrux0AVcosWDdm1AAQiV2UdRfsDqNz3gnoJpMo9JgDgxSFUQU9LUfkUS2cvEsYv1Zbp8N8PDZnMtEgXgU7btsC9rNvKc3k/somSQge1y0yYQleYAq072sk5gum3gThEa1AEgDB9ULI6ho/syu/3+PdpG7Os80zS8+4kGo6jgLVVV4o4FmquP90eg/OC53tgpKaKzHSoNRZUXYkPJVDZb0TI5kiTJPkNNuUrJfysSGm3KUC2a0nz3F3fl3e/Vu12DQDRh5ygdWh11w28aVB3fVYomAOTyhn1KPLCJ/Pcd5Ead2pqiUXyh82f0XFvZA96l1gg2FFJYKEYUJzX/bTqR8UoZpr7fNmv5Lp3wGbCUBeXNB2XL0bhudCUjZi0JVEgZBDnS9GU5Zzp4AAAr0lOQDhyWewE8Jva+GZgpBOBpe4g2E8IvKarvvIBODYCSbbXPZvync57GVCySbnuc6GD2IsspG04yl7FgPs3S68fgwyH9GUtYjEVVOtGSFkctX4pTdEIxjwgz8MeN5nxUakjAlrmtPZSGPfCD2X9pLM19+QAAAAAUEiHqQRff1K573YVB3C3a6ZSaxxM/TMp55BvJpX6xInCw/RfNGrWt6JxEJagPh74Ftz3hIIjvWeJuN+IQfOrLEN4XgUQW7S3AAcr3SydEGsOgfvUPQ9Za4tAMeRwJnZdfWP2FM+nfFgea/fOk7VvWIBVCB622rKrQ+O87OqqXb2MbY36QXMOvwAAA+bTNBZoQdMfmEpug+swCEispiLWuadgoDZTj/TxFCe+EwGTwfUAI4JJJQ16hN32UOXfXcMzMZdBAo4g/YzmNYaqFMP/oo/4hal2hRQyjQCS9fZFlm1P2MBb88E1WhNzxZ7UOCDJmVDy/CrMEB8H/Vj0ygqYKcR+2dgO2NWbIjiBZELkFznkh3yquvO9FpWKY5QwMTczKzpKf9VDu+FdI53k0IbdtJcxxU95vVUyv+6LETb6TrRPtv64atl13lnWKjyBMT24+A/QxprAar1azlyxoG2wtTxpXLxorxt47yPe3IXWeQYtiuwf329UbO61Da7qLytf8DbjCqYIA7gKeXoXB7he9MTJerSjCDhEDyJmOgvVmcMbqGOFYXG7Kp1JY8L2ZsR93gxdhiNhKqS+Y9mxdaZOnWN91HJMh+69F221y/ozeLIhA2IJNCxPGB2y4+Ufa10Vvm/X+BtTDZJSdlI9LDrv1y7lTyphn1nNal9xSpL443WZRc4ofYoJNvobEOQ1TwxnmUqrGcR8y6a5zgQB/e3HibSztEWQbcecnOKniGwE8kwp53eTKKfkGEGoLjersxky8aPKEZgZOFxLVJIhL7zDGdEBk4KbUVRwtgLTdnkmbwH2axlcFsZtEz7W1FOc4jC6XqNOK5LJkEwjIAitKD/X6xIZ0K8+641uYWyGelYKW57lN1ThKOBgXOCf18i7VD1fU+zbQY7Tc7TqLQ+KiPBTtbAz2XLh4U319kWci56eRVNbIUTyy38MIJrgAPIpqnNkSuBugu5VUR1DuXAEScCnvSIqk58Pjkr6oVBvrHP/RrWD7VlAdmeguuuMjlMVHhB6kTGbCFhXqVrPlw5zbZcsRzDj59B1Z7i6BmWNQziXqIxDczitqEmdIGtaI/Q7NT5SxxVWZVOv5QbV6v8QKoblCaUBVVjx/chuB+UrIgrX2yVaCQtlS95T/+CdEAAA1iOWBHqOxhmPh7jg50JXRTG7SxeMNZ+zlvVXeNx8AvinIcjleYv/EvJd+YuHuEPAYu/GIJ/fvc0TZecaWt+MAXSUzrB/6507DxyIYXCSq11jxwG9kDRHrJW/iOZ0EaJlJKDZsKR7kFv+FFvfL0KJiYU/gIPWBd/kEjHBbHu5CXCShputTcJNZnzKASScP0PUQcyhKQkpoh+16yFUT2SULjJMqsnHgd30hXpk+BW9fY334A01yc+E65O6oXr5JT7rDaqlUtkZIvn7ZiuclxXpACtT0hS9var6RPSr7J5kpSeJUmuS8q4hAxx6mIYQkXChFiAoqLhzqfxHyToSQFnJ2SWWD3+8nWsOdKp786PESIbCqBe2uU1eoq0jBst4o5Bvkizd3nm2sbTTJM1wl8+XxkhExdsCvDn6iOIFp4RR8o5ABjoh2YfuIknj80JIFgk3e+5FZ/+euj0j0bQSW2PbRhTPDa/CiUnxPtpIpopInTb/VHyZYExnN0ChY37wpu78oVzEm3i1M3jvqmmTYcmZtpCGuPjCsp7xKAl54gTh4euG4wZp8incNkoHxOE0jbqIvjNveE1zGeY4y8e/a90McdJBekPWaFjqbjCKIRzu4Gwo5J+2XWu9J0gPxZdhUqtuOyr5adF1m2wSUMx/13ZnnFD8tjknExoAyAVLXONo+AAAAAAEvinnSWOzBBm4BMOAJAANros2IiQTTEjgArLAnp1rwVuyRKghaO12BObKUZslgz1vWK5iUaNzPjq/dc8ghA8WOU+kttM9HR2OQT+koQlEGgKD2Pj1SmmijY3NraKC3WXcfPkZn5PPF+KfbResDBOAAAGkSvqXCASvrIku8Wo5DuPJbgydM3G5Z8gCmlm4f0uJKUCifqVJmM+osciRsFDv/NYztfdEkBhLOBAz1GqXjfsFa912zPG4NMW3eAx82aVJsknVSSxtNnKN1EUW2GGCHeCM9k1J5nU47vEHcZFkMqD0WIhkhzRKybCtlZpolXFP1jVANPVzgAAANIlww2ygACkSAqOO1gzwtjPQAAAACd2bjbVGUZK+pdhGPhorzPKTe2oE3/58nfiPFTJ59gc/WW9JRLVbyCWILlnoJcmc7s1Zv3Roj6hCZ962x3c6dNEDYZwauZkMvejzM1BQ0WC8AA3gXf9S3kYlrQteAOFjt9UQBv9QNRFAp+HQpQ8ebMTxtds9nlq8wLYwoYE7huvOKVW9sXPrW9wyUiURxSsMWGmCKSQyRbc0pSZrjAxtHmZMq5uJyiVem/j5br5Wrh6hQdHCXXZMmrMBjGRZKz5haicAckPMi9gQwXiCCwdaKlw7yMFmpA0VVgYfprQ+opH472jlMhs0mY7e1qjSviz9fY2cl/6HxmXLGn9NJ87SGjtFSHUogDssBSLWZiWyJUOgh4UIk+v0KjeXCOKgIVVeKj3MORAdKU6YpLcq3w4Vu7Vh+ZsTZQ2LVWzWWnLV2nnjhHwSQBx4aK6Yy63ooQ5t5a23N4arHO/qQAtEJWEpWFlh4XKxpJBd8jkGi1JbWJfZqSVQnpekp1Wym3nyx+w1FehXW56/W7dvqDYgE1MeipV8T7q+9cYDYzogS9h+kGtKsc3tXj8Xys4ZgtYAGOn6JtgyhzH5iGfXKgjmBdnvZu8mpQGiGBvNF5Hin6We5TZkcc43DDil05ZeZuB7CVaQmm39MOcdhsUodxgbTRjIYGumuSlppUO8j1NlvebNeTXHRyZG1n/f0BxZmL49Hgl3DLL8fnCOeR5m/sy5bBRE1KU8RIbJIQcQyoa6tzwk4YuBhtt7ClQU5N5QjtyQSqRlcNo2lIlTCvu5fPwgmveaI8DRFo5pcGKMbYyXT8CqZ6aBMuZkhOhSbZlhOLycOfar2RtWaernnfcFxH65q5FTsfbXIAFdDG2IoV4ngpjl40guyRl9cO9gTAUnaCMhhg28BMGAYWUrPygSFkYOeDJEFgc4p/sMQdkabeqkidXmnoxVgjjPZ2PNDhqiMzdLm0Uz3L+MTvraaDPhjhny4bk1JkRiPKQsihqPcfIvIIqnFo0ExbJMDcLLLQLb6hn6jxanWD0tYs2RbuPnz7eSDkNbF9WSpN0yhMeGmjDvMOFTDLPmjjhddu5ejdGDAixtUtepFcacKEeF7ch//BPWVjhw/0ZJISTC6XGZdtAkpja5teXMtEvBbzwpOTG/4+DRx8XHljWlws+gD5J+tIlb6xXNtoa9ECDI54dmkEbXZbC2HMQjci0U16OsC4GjIITYJ79L/lx/DznT+CMo/6eZKbHgIY0tMEv45FtGcOb/z/tnun4XUL1MXD/PBoLKOrMTn5/tpl1Ub37iB7zcbAAAAyiQ0aPf8AAAfNpEZmADIwvBMNIwFfvyPbdeHJyAFneKh5hynehCXFWOnK0Y7ABj4DoatYzkotXqe6GAAAHlDOeq8d82ryispqeVEeFkn3KtIyGxMAd78wpDmx+pqpXS03TADQHn/XnpP1gfQ1mjXa+Bfq/wZ59wA3XIdULHMJkIMoJqqaRYCsRsbeqyc6cix8mOEXMnHEK87lc+l+dVJtdjGBzvJaWRtjrianQ1LEnlnMtML3cVZKig4AcsH4qQcpOmu+qEGk81DViQy5fC2ylfbqVwXTU84zUbY8rsv0F1Wb+winQuGXp1I0DTGGZS8E3ATjoQHFSYUdXIUQZshylleyrWvHvfHyAC2cHqlGVxpjAADB+m7b2TFXiYCXMe4baswW5wUmXkBfyWxGsVI/jTvMqJAz/q4K8Yaz8x6CEi55hDyk5FAvzgLlJ57xh37xNuR6iKB1r5h1l559HOIzbhvCGji6bcgxoDBuW7A1e6wAC4EdiEDV63bLBoCLqE3dNKhisOR93IudIr29SJNjptm1eflc/08/K5/pnKwTfb5qltUaDrPQNmi3CpJwp165xEH61wqScKdeucP0LyHzv6AW3hIACEpWH7pj+zWYvoLcIxIGFa3bh0gofS+jZRCCzjoSrkkouy/4Awe/UpQQ3TVfxNDA0Cpu0FtCMp31OSdlzsmJNXmaR82lAEVtHdK5XJcbOVDfbCZIgpD1rIYG0f17QEZqcRZJNbT8KYuURJTep3PuiuuO2tIr3I6JG+cBTJgXr2FnyFNF9wLcLRe/tFaWceDQWC/Ekp0FSdpmDJ6pYQJO1etbHsXQmxM2/bihsc/rDww2CeWCHccbjzHeQeSIaNPp3sRFyoNc5cf6MQqY+5te/gOui1jFLme33WZ/EWWc0wdLuPeIvgDgaJzQGmccsXrhiswq5gX5pyF3e0JmTzYjV3qMDA16KJXfzQP38VkwGupaTVRMTNBUA8xGIJlRi+TgZ4TZv5AlMwxD8oYFfJJHTSjbmb+CwZUxbRGTaj9AhUhHTPu3bnF8hEV1lGCuQ886mVK7lfBah7SgKNFknQVztqY61SxFhbehS7Ke8+qWdHB7VkHecDkQwPfXXKGJ1GeOHCpDzjimp2cJJ4icZOiPa9DGAnlZjo4/J5y3vDWYAUtUaZyyyhKYfQO9SKKt/lGh0hoK+L4R8QAHcs9zx7+MXnTtSdYGWcVKdp4DyTKQOQmwa8J614g81474zIv/xUNEGYGFRCnvUNy0ExFyz2taiSkoqSNnXT+tIbw/uk86GgEC7rjBr22GnbyFWALVkFgHmogRLTMUNb5baojXeM7hr4UGhuKdo+WpDczW0zC+Dz/1L2zDzgNqMTuczcX7yDAfnh/nVEFst3TT30Qz0rOU4Tk9cvedu8e8kAZxfU4sIkyIgCxi3IGyjsd8wJfwks8CQ5TkGXki69rzZ0smbs85NqWNc8MmuD91OpnYSeCChhI9ngf+lCzEEJcsBHH/SmNYJaeTQ8OqACtpxfRsisTMktmNaNqrIZLL9xwLIWfAe5vgi1Zu2fX/ps+Ktt8HAXjInS/752qzs5ElsaZ2d27rBF0ygMAgDRdI2DodFYMYMhGRkAXkY0Y0Y8aJVd1vqR6CSyN/P7xO2tZ/cjwAAAAHcK03RjhCLEED+4OzahqYOrR8o9Z+YEXAAP9SIrkncAUOO1HzXuZRF2iPhhUZixhD9fKkD4yjQuRaEIUmylhWOLlhG339qVuikTbdq61sxaqLoDqUCGb+QEg0Zo3uH7QIXeLtPMBv60/booBNGym7e6VKvsiZjvA7EoEnMnuRGj0ZQuoUtNTgKsvDA10qpnpJWLdBI9Zgyp1O0uU8lg3n4z5xnaTmuv2hbN4m2aPzNsBFB8n+P1r8BSwQuehg7RyTTOOqCRa4xvQ7PiRy6dl10Zsa8Bc3468cHXqdsi6PX2ACizxR9dH188WInIVyUI65QbePbFUQCUonZ7D2LF55agAhV8Ws891oABy6an2/DwZQzAh5KWmmFC4VWOq0osMdOQpgrkZXbD6yIDvmMNNti3c83pR6NmrpbBBpL9EKkzQvX1SNgRzX5LbTemGvByxEKvkZXJnOY87GvIcvFk3KZlS7NDpzO0UbfO86AFNT+FYBBff1NrNNKKGr0GIyuGoW49wzP3kSTD5CePbSVwxmxbXWqzkMVanewK9MIlCD9HVu1KMZCjTipm8VgrT3dJVXE/PCiI2BmDqXCAjPxQYHqpt354bf/HFLlvnb0gTF9qmdlmP4ERoQspHXE3WXDosHifhw12ESZIr4Lwg3eIicDhraT3WO9WiSUwNxr6gSrEimuz9DwWX3vEo+2UqZS6Gc/vy38u+/Pp3RBYES9DfetbJdnK4zCD/3u2YZ4ts+S16UFCNtE8tcZnIUB91mUJP9qarkft4frAaMLEFa2W+WehTkxwkLOwpBKk3KW2IKDrVie8UepE2Z0tsgQbJ4Sgwu/Cv0/EADyQIe7wNcbTDjQAMVpJbtDhN+GYQ6VSyrWVqJK3VHuJQrZ7XTsCnMuDTMhReJxhKpGZ38Ibjig1ly2zVYmlPbWHQNdB9SAikzY8IOSiecGKIX/LYulBlkCQUaTyCDqQ/ydrXhZf1733mxxHg1cPq6Ji2EZASpJaDpf/h1jhnGqcwqsbmoB4rsOOIoC00aHUfst1WR6kZKwlksdKAB0kxITyTU0wj4Kdhv/L7leIleelIrRR8JHjNTbfClrLP6uNZ9FPQ1wF5nLxfguqdvPF8izlny7JpIntBZvnwmW9hI+yt8OJg+twqFFGE8WMdpj4KQw5LTFB57bMwY37s8vBkx6ZPaOGu218I56bx8btBzdEUTvJyN+fPNGH0rv+tsjLl9rIRL5MnaKiRcV34xP4bsBR7n+m8txY8vDyQynYQUhI7S2PKBmqeCY1Zl0wLjzFrLa4zkeMRybgRHurdQG0xCMdIBd0RZfGMtK6nR94LprNRFf5bjr5AZZMHsjxBeuiZ+JAEfHZZh47NTTkHm1hC913FFpHCMQmfig7VHq8e9frsDDtu+BzjorOBlzElsb/C/QnDLbiUSrNoZWm0tJCjRNEZDSRChUekC4LzZvLaYkeUU0gdh4U5+KmQsUDytle+DVfUEjIlvsZS8utAkyStvwpn8WfhxlUdB49sDGg9OV9tmqsEi2UXbuX1yV3+0mgF5zdkU/IADkwlfP8yL3VplQr5z2Egn1uumiKUIpzLgE4hoWe3nwNzVM7QivQjPvAvvT+3QRx0u/oDRdBaxavINR3k2jEtIsDG09dy1AT/btY8JRzmMHqAdkHbxE3IKkidn4WV84FpT6vDRPbbhH0K8IMox1Hgk8rKop9cJIJbTw0EJzq1L7t1NM772tbhHRxGrfYdOF1OW0S82K12EGqcHz1aweoloDqbN5ZocRN/LeKWONZift07e/9qpyruCT5wRkWskHa+bMB/zDpsO7JQZLOnRwjgEKGdkt0QjIMgrkzD5umyx4pdFxBdE26ivlaDCkWiNE4/TtJO92jF6qoXvhq2E7mlIkQ9YoPRKEJCCApiuX8okFxr+CCTV2C5VvZeWYlkg/eg/DRGYvE7Xkb2iGqiKm7PtT/xKn3cc51Ej8jyI4KUsTVzT5AzWWJq63tB/wwldj5zBtzvdForwEbBhBO6rN5NO162s9VE1kzQLytIlOSgfugqMq/gQTpnd/QGC24svrMplWKO8LMUNRnzPiwzvX9PKuZq4dZunBLW7/S4guP/WoD3/GHYiUTkZnR+Tn/gfOIVrZYIjjK4ItR8wPtyex8U22Wiamu7uiAVwdZQvtTXb+vdIODAtW/zpgCHKuK6q7XjvndoF68QrEClhPoF9pcOM2jFcWMfDnYAuq3mvZeVG++FxmWoG/uNu3RGny7OSB8nMSmN1+NOYvRIEw6Kk9qYCZSD73HmbrMktMYEi0Kn/Rvnwim0aoABoqUmVdEzDtvdZK9tY/mUzOOHtk1t2o4zhtFYeYwe5vnmyuUUGopFmX4JFw5GCHNrSdlgRM3igADhhw9BMlORZre61dcRFQ6Gsf3LgD71s6UunJtXnsC7UGWp+Q18UFGPe6PJ8S0exUr4yl2UL0XO7mRXm2ekkHiRO22U69No8BXqcd5T7rcumUcvrd/9ApEppU35ky1XFip58lPzcF6J7Hj8Rco8LWyrfpJkhPJgfsXC3pVFHjDLQgErRrD6vVhopS2c8ZxSU675BMpAef8c1z+UUizL8Ei4cjBDm1pOywnWzHCIYVvvP72gCVkqM5VuC9/1Lxl7/wWWVPfl4RE4OufrF16yGAEdlLtnNYuMHk+JaPZul2hxxXZVc0mTIrzbPSSDxInbbKdem0eDvo4FcPitDvmDxQqgPqxJnB0qb8yZarixVuAfV9Nwd9UVpGUth3zR56DspoMJ/wRZbuxsBhqH5iP5dNfpwnc8anOFd3MDRebm3uHtfSloTY5f6sZQmSx+/C3PunaP5M9V6flvYdQCXwxy/evVRmZCJcGRlBARxdn0kMClE8wAtG46824qx/kRGvL9GmYc7Doc97KGAuN7+n0EGZsmqu7/iQUnQaf/k05jMuC0n6UWoKDr89DQBtkku/j1qZuGNMEYL9+jy87JQUHwxo8+4+5PyuGK0wsgKN2T//VC3f1pCEIkwPr/Cnb8FnzVP1L8kq9xV2/+VeLLA5SIRlwg0k1BYm76IttazpNaCmOk8eYgnzB6igN+KkylUPnRKg2P4awo5e6bXP6AepcGM0Cjsxj9oRdJiIr+TbG7XQSG+UYFUuTBrxUAI0sB/X/7cop0a5lHsgfjsxeipeg48dzrRNm+CHiYPZK4wQrw0lCqWs4H4uDI8ASPKWD+gsVUfWpXrnSlNP6WiU+X+B9gjM8JSirGLNh2n7LqL3dQf+9TYLnteCVI/JJv9OUjpDADw/gkt1zzJdW2QgEzHubqi+e6ttof9ZV9QOsOx7n8qn6XtmXTfS9szGbW65+Oee0BHILsVSljo2iPDGMKuVaUOpT40XJy8h0kPAocZvr5xOGs+wFEPNxnAJkgjmWF+9Uxh7oIuyIBTlG5XFOWrvPrtvXhMMoA9iZ/T/n1r/z/ehLGW2E5mxupO4VZfllBgixOYTI5kokgntZibZK3o3kBZhD/MAhukxZrIcifMaydQaqWz2pHOM+hyU9p9dqf1dmaOj4cVR47uWeMSuNjy5yMG6Yr2Z24pvh3EGonyaxBhvjaIfUziVU9CjO0lr94goae3A3t8ItuwM2FtVuL5g0EKnHELwvPFY0p3zJNWPMtKKhU51lNqNn4oENYklUUQ+dLUnjC1cdNeNEuYP9Gi7dwrSIZJMtTMPjqmlStv1Fx+UH6FVzhuO72sZIweEyfCEq7Imb0G0gdQBpK28g3K50kBM359hfyA2zdwp/coc7v+hhBphpb6ARLoG++x8ZGAHXh1SIWqCGRS0EM0M+RtzVpWWacy36S23iBA3rXN+N3bjMXc7mwLSAbskiA4Tt2pWYDFJIJr9LXSRpL0cblGpWwEezk9RAajPFZEcw5VWI6ICbyBWu9w+EDa0g/QA0wqS6GCtaxNuSdkeeM0uu7M5IQY/RI31X2qgthu8rUzet3wBixQA0DZeABRtEv024ludqxcqB+4GLKs2GECvFLBoxv0OP7mjv6L6ph7TYzpTlmf383/JqS5/WIRpQz/c524LCyDtUsAB1Z41KQC/o71AFXkX6jUSuQ/SmiQQP2Y45U/x6EIxBJshjShAOy5JbZCqRUjH/OPYiSrcU+GDnUK/YL1QlonDceS5Z1WCYUDAziXNFzdlsw2lgivK1AN9wehWH7YGOmcud76bq8KFmzg0wcD2+//4z0d0PTTp+WL/6UcQrW99SC21BPXm5EllBDdm8aoJtIFEywsxK85sgyynSEp+dnkN/rCV79a1tqXMfyJtg7LeB8Y4d4tRqHW79ykqBtrRqfxV1i97HpB14csskhe/Md7xIGwbFQsGZRdY3Jb45q6x4LjSsIpW9e7GDjyraxLk7ANvobMS1bO5x75gN7KYhsXCQJYUpCJWHKnwQwLba+2x8Ij0A9rkE0jjCy8DxA0QYzkQtT+ZDwkPcMwcZnHD/s+uloIBLOqIWIrpkEYdoo27Td8TaUtIhqPPVSwMf/7PE3hDNl/Zn5WKv9ODVXuRFnS9Cg9Iieep6L/PFg8wrlu3E6ae7oo/h7OE1koaRHp33C2B76/SMdvEmILHJsBcgqxyqJwEsTX1xKCK+jNs/tuLScwuFE/SZaUYVU76GiOikFxyfN0L0cbdSpnZDXlCOyDP0oaCMgauLC7P5iWPb5CEyIROuUsCvoyb5oQwcrdgZTjjcfuJfYkIdLReMAaRfWU1uGoGE23CbrNTppdclRxCD2kp3rjCmUIw3oDMFx+zoPjcIiGEW66nqMIAf7ynwp3LluYHe9b8EKbOx44BbhFj4P6C0T6mXVrs2m7AzlOxvYUmVHVUL3lsEwny8yq/x+ZRFlkzTaMPsFkM9XYin/GivJ7L66grpFRB/QV9P2R7P3P0EQn5QHT/tRlYTe/+lc52me3tApVfAhbyRyz3uy/USWXixImbEaADK8kFEkS8VfOlxgsz5m1T1pjXQMltbM3mduTL3bAol35iM6ku9j8i6YkzgVf6hiPW58vXPpUvDWMFTSc5VFsAcypAh33iP3/RK1+O8d0ffzR1yMwbE2Je6MKYzwzrs43mOwhU2++E5elCi+SHee67exXZYoCwYK41OmmxgMpUjkWhPf4Bl7OBv+RCHU9Pypn5FRB0ZT+IhDrcopPUVOClMbw/bq9Tpg8qpwXrFGbZTyKx/xlUy1xEMmZ1DMhc9mbMq00l0CHrLQIuhgGBPxrnH1CfoQ/Krd/zZLsyZaws1a1yr3xkEk+d2yh/1uoFPCOGwmp6dH3Jp4cuHKvlAXOppcwyt90VFy6/O6d+ATstNsXXkTA1b8z3rATG9x3d6Ld3n/dsF+d078AoYYBQL3ei3d5/3c4q1+mT4ySU5r8vL9BuQVD5FCBm+iz02wQEmNS0hoYNrPAV23vUO4F8h+but1M6pD2/0VVtqK1a0FjUxTpZgqYiJxPl9RIwRYX4iJIhisiF/shAXIxmyIf0+meQ8ohRwXDY4/yWGXgLpcHObsjlBLaFozA7lkyi4PmbVvkFPXnoQr22+WLar/h1YwNRvR3seBuIdZFFFhFpsdS1o4xwbBPV+J0H7DFNIBtUGGTX/IuVul8cl5Ckux9jT8eozeOS8hSXY+xp+PUcMqhfSs9DHPzq9Tjn6EdezbT/8717TxpuHD4I6UM7lqu8QjH0TAIVsHoq7KjxEOUSPb3Dl6CZwshMOeFDdEuLS4iPrfp4n3g5v4uoe6xStLxcOZEagPCNZuSsz069SJj0LtTLljShmHt6Jh+u1et0y4FkI1wHGex8swcm29MY/z5IWa4JieJEhn78fpIXKnhF6j8vK75d0bKFLEeNpqaRk7OwHSQtXIMgXdke2VKTewRuyCUiaXELrTE9YpbK0CFUmE0OCkVEK6jo0M3lIPYjxsFWD2SZuylIPrqScmZjJGX82cWKq6QxFYqREd1O0JRj1HWJTUcSgXxqFquV80G32TKgdyUw8S31NlP43FIcfIS7m71ucemuF7MdrBSIFPgXpLpbZ1k44S5UdQfRFh+mKA60oWgPCxDsHG6csgAQNhx1RB41kT94c3NaWMol4RuAFU+GcIeFrwk07yF9uOzxSw2c4G6iWWrukR62LImDj2dggfGAO37ovOOPW7Ouw25aedpR4qXAwknwl2XWBWicwnb5NLnaVNUq9JCisYCZeg0GdFZkDo0icb9xjE0kApg3DdvhompsKiLmbttJD5u0SxPZc9U0+7bUlEQlJvwH/RzQLvgDUmGrJn46kcXZoUpA+5WzgMvV81H6dpFrVV0NBEtpUXQaPKmpxWh9m0gDTSJJQf10vxMX/Ck3CLmD6XYmCd5LaZLdg8grdzWYO6r9eDEIPz8u7V5UWstRzhq1VtkF3fYrUH/ttE4BVmY9Z1QJNKzmzdIhgMd6KciVV3C/+JIu6irK7hBnQpWcmkRzf64PNlvDmuFxkRog7OL984JR7fReSggZSmUY65N5q4yRdaAlX/ald+7uZY5IPkurYKJ0WbQibpoCUzo4FpLft46yraxjyjS9XUNMMDVUz2qlBOJdPRPO9fxpexp+LWLK7Iiq1jq/nJl0H3/Ik9j9/GUSydltLZ2l499MynS2FGcUM2GscxXVgQcWkv/v++yP5NWtT0Oo0vrnnDip/IWRAaVyFTC1iCl1ZQfxMscTlyqkOs8s3w9SIh0JI0uBHF4+LBLuExbNuDJm/lxGr5KNRnQh/5E1KUOxYbaTDPAjK411SezGBkexwHJTrPBh+V2sTalQLR2x9j7cmY9CxVUrWmeqf+NvDyYiFbuAGAKbo97rYAFxOAAMliyye5mnB8uVqU1c+ESgAAAA+mRckrNHvZp1mK7cHuUdzVCsWo0l9a03iIFaujl2uCGdDzl0bpqAEjQXS3JERpvzOkIwnKYht73dS9P64LBLxJe36qIX6XY5aynoOtdZ4k3N9bSKLHRRxBBnucFiJEPdwq6XquMDHt50SexoVYP9+Hu0OPVizaAeR3ilh9U78wriCJ2ApFsZ5r9l4/ti0CzlyHey/rX3x1UI7ctXCdiBtSRE/Bnq0sd5rovCS2jxSF9SbhX58E1sg7g56nE5wyzhtLb3pGu9x6GelRSxz4epwgF4pu48S3oYOCXD1CmjwOiWIwcmSC/xN7jSp5djeYBow2XBPacV78iU+CQLlCvUQKw5gOqGsrANTvbnX45C0UdFtNUPG6MxUUemm5w3k1SWEKN2Pls5uhCsgrbAj+f7PGI0oblUR/hEMy3jR1NM9P59HExx/Q4Xg3XGt8XEamtLfCbWTR+q/tRDFkNjxSyDcs4DhAbv/yYkJYFusSw336QHpQh1o18uOjB5aRJBcpn1rL4RZO9dOPSQiX+gPAYxaV0cddBpa5wpR/exUyPZNbX9Bbr2/LjIiMMNBhrgmQSPEfzsOIEThqognp0PymHJByVU0AA1x9dr7q9kSur0KauHEP+15ARreg666/PD4K74c7e2hB6zM2j84AAEbTNzsE40jfKBIoBQADe8AAixH97UztCCRWavK/pF3fbSCv2U2Df6UTBuNS+5bOpH114P0lHhIRwuoxBBASENLxKTaoCnVo5Rpxcwc8+qDXcIE8Ce/+2qYO5N2AT0Jz7yq36OknvX2UfmNEHt/zUddMVfpRpLU7gzi7qcoY2p/JU9R36xY01bxgDtm41vyaBBDQ9SiSdOQcodQwYgImbCK25itmvCwmqBp+5Qu/h0Cz1fJeMR1I1LtxoDPKJAY4TgOy9c4vhA7nHvq0qss9Ld4Iry+wO621ErGZO8TvybhBGXzroNXMZJY9ufKbpGdNk7iTXUFcnmwb9RBUIMirEAzx/sWVqbF57SyBDWSIdEeQRzcmwofHQMJzqhVvBSN9iIggLP4TmGvUhWrFbAKRBbsKJw4PkclX0+1ULxKj/SDA8T4RHwv1wUL7jpTvCkGZ0LQ/bLQDcmLKDc2zEHxyeHGpJsl5xLKq44uUVkERooobv8OOEkm7mv084xnk1xsxqwuTIbTLiZfi/YDgI+BoC8IXdYsvVco9qTOjH9GJlNthf93u6HfiYNOTQQjxo96cpAAxiPu0LEld8e6BM0TgHc23BzfdJTiQlVeDbvtAlGs18EEYGlcXBHYkrL/KykFJXdev9xmH3yXtGTstjD7k6ZxPPq2gmHuwg0joBVimJcgQxv3ezWbuhoi7ybXfIVVDej+dN4S4fx6d3wQi3qcl8+aqdI+5mwdJCSZgiASiUCgAdsI26HVJX3lkTsdCLgEXQZ2PwFRLXWZ+VDs3PRUEagDgTSE6pU0dyv1oXFCJZKJx8SqjaPm1E4GukUJjy/r66xpAIiu4gC7KPGMp9q7j3BJy3t3pk4Oa7R9Q3zYg2uuWNZHoTUVMOO/M+sFNRA3nSBZLseWLovc5S9bX51JabdzWlchUz1pqoDAdX99qNnjAYzBAM5D5wQ0mYqyXwH+OYrZabi0hhXwDbfPGQliKW0ng1pVRsrQ9gXY5VFC+RPpat4HyrUJbun6FKh506A+zbJnBE6RaE69sGIiA3QZoS3D7WZHE7zAJd+WtD6gzwVfLWNY8pPOk8dhdkhL8zmrd7bunQcMY2cGg7M5rg431IRLnzWRJ0/YdoKCGKgvzXo80Gqfz3eAvART33jMjiWP2oJOz58qqjdbMLyk4Rr7zyDPh+MuIcmRnbL5951iE5vRdGpSxiKfMRCGYOFZEP3qdXxr2NziASS1PT9h2goIZgYEHF5zgJp7oC96Z+trJwOfFnjoA2nXAD2ZiPfkzwi7ZxEkgNLLGyyTEkfIZZV+fyzD5WiPzNYNkb4koomM5QYpjpeyvgAluqiM8K4xGf4ia0bAgSLj1+ykV815hczXGesPMGMlqGXcOPEDmhp77uxz0640ch1nP5TPBPmacSV7Zqx7S96VSPjMmOO6kFwVn6yg7IxAC5cmICgJuGVvBZk81MgwryyWt5V6T1Xe+b6AojO9dgMKe3kzqDIetSnsvTCrNXGHaXM11gMauvw+gwzmqgWpNp2sd4faAcqQwqFzLumu+3YL7lX6CjhVMY6BdbVGMLp4UFi8ZJs9/Lcyg9468LjqPAY9GXgfuATuwrn3Sz0kgRaW03jcS8f3irmDcQ2dFCipAjpZ+ey4WiGpSlrRUcGTddAgHLkJdvjHZPhjYCnHb48Bg9aIJ7mjLe2cC2kQuqa7KKOAyJMaCPEW+vaacddHA0MjIEkGmx8PHDj+gq7eVX9CRhs6RPLVqRSAfYoMSiSYr1Z6x58xk9OvOOO1pzyeopU0XydEwYQTx28uEjhfdr11Izulf8eaNz7mevpkUvff3/T3t1MB9MAgTryqlc6rtS6xbDG2dIJvEDXXWUJN6s4OGBqgDalBfUGc1bvsCXCHpDS0Dc0stcgyZrLVzBc8yFNgF4JEGlEG9r5v6PvZioJAVpvOQPfGHznre8QJEjiWPGxywlrq83kuWQRKuv24P7n480ioIlS7oR63c+Gj+KfY8JWenD/trCxppGRjMb8ex87dx3ezBtgo3IZXN2mGpstt65JW0fF6weqcYOuq/f/dJGWNJRwD2OB5GV/mV++P+ur3E18OrQ9Z8jJqNVOkbo2LpL7zihTGtwCZ68ALPate4HYcHGnoztSm8IKBHVfh6nh6GNA8nPww7CMBgxCJVSI/w4rpcqtnEAEQx/wAdnxyGbPQ9+u4VWzhJqkQFF243lVDtS9fZh5Q5BsZRWCK+g6slSGuyuIogAYwF9bvXzm5gPYsiYe582jVZvsAFgguyvHxABPkaOGlKK1R0+0OzX6FbSDQ+FilbVdpANu6VE/Z5bEILjktj8MF3fA3wRotieFpz4ushp/S5y/7fTD0nw9QANiGLt3xD7tPIlwTMeLxFO9Cu57/5RuHbsBczla8wqNT1HY3Tl1NQtQj84d8PCbzkuACXOz4wVhSwWK7MTPy6ei74tEC2j39AqdUpnaAKmSsHwUAi515FYmd7Sxl+THnqvtQAEjzMIUVv7zzjIUd251/cqsdu1EZ9Hi2/Fc1/VAtL4Sek33gntannWykYflR2H/N7WePuxP3ToeSuKuulvZhCq3cZe3JdPqpePAk5nIkFT0W7Hxdugbnh9rkbLU/xSj4fZJGVmNh3yYi8pWoSGtPgACb0/em4kUDqbqJUGRz3qWgeM08WVDNtq4YgX7K0cQCRvtahOklIqoj/sWCKoq6dHPillz4QiFui6MIjA5qSM+Rg61uWgh3yDzzGa/GxE0ntbFkzzaJNmd99UxkFwf8AkWCGdtW7DTQjoTcO2OZMQ5ULRdkV4bj/XPX1M4BRjAdU0PtAZdKyYBe1dKR0EaAOc9hIkOS2+yL4XrZpimvmzdADIf5sZAuZcYIyO/yQXeuJuspBDN4387WntmiDl6Kkr0X/pm+53VVQlhluEcs5zHOdomYz0BA6lrDArQ8c5WUEDdHrCUSZAcqWzDKpCBLTtrTdeO88uwwNoHsAActKV6VNwSK4oaVl2nBTSiqLgtysC8xrvoy4i20yNRuiV0W8d55z/THHPm1LWzZ+d/+cojjuRueuuZwqcqU/4L3Up9SmX6dOE6shKccjMRLIG3SePMfk1Ox2eDQ6j+LNNtzZzUzg3KFMY58+ujtMarhUxpjpqKamHb/BLETMnUmKRL5DjRYO54DXZ674Z6mRqwK+VvFUPy6cBLzIeRYsoYAFxJ18uF+TmwUGXViPzdatdqxFLRyDsZIYsCY4P+TK8T5iRy4+V1UNHUcI7q09jdKoM/bgFWB5/XphuYeHbh5IizoPXDigkanMDxzIxvVxAKk+5F6lJvx8bUP2aD8avKW/xDMaHb3j9fZn+AYumrWYmlAZBU8pq3+JmVLepenap/yOt5t3GNo0bhrMAg4YBhihZYEpD5d5+Z1W+Empg7EGf2vJ65hl+joXandogKoJHss09T35+9mwbNIIOgytHszKhRx18LQYtB4JImbKgREIe8vH8Xem60Mr8CcEfyY5x2PMVxbJK26i7uQLYAJxx3n/hibuZcPO3XRJ0NO2oY/D+0lGbEfddK6kpeYMpOeIPkncM0ogYY8+Gz2r86mTgmhMA4MGivNF9HOLcxqTBgAKocojG5VIkGE1LpUlASP0iYWJFBAie9zBOAKG1kM0GhD3ZSfPXBJaEuVgG5DgxQ94IZPEpAkkCLwnkpiIfULEk5CiM+IB375+Ey7sSb4M1wDmy0mzKhbzc19P5d/dZy0hEJ7etVv1Ptm6PPgE59e9vwcY2ngZGnTeo6LA0c2YBjWptA4lBeZXnDlTUZdbc0sTlySsexThlfY3cej3oqDwKHHE7xUVZd+j4j9lpEkxqUYtMemapR1S7Nh0HING88p72QMpteoDw0I5XWkd+CxznO3FNIa4nub5sFc1wk7uuQF0pTbYFI91hBXxVw3ysKdMQShRhIPl5qX2oEwn4il02i0TUSypSgrZmgjcJFkC8Jy899b79lMz+bOuqqfHLMbde5Xhfb7XjhsdijakbtuwTHtvM7anEHkBOjxuwcRbKlNyBS07rihlOiXJshLECgcMK4NN3k50FTt3mg8bDaB4FjsCJ2lnbUKqA7En+vRnaimTyDTSnpSGMYZwSsR4AE0DpznPDGDQpYKKhCoXdwS+NR9T/l5M5lXgNF8k7ygeoY2F7WOC+3FQ05NwsjVmVrC3LxdKLbaiy6+jNXD9otZwH8Jt7sWrGh1z6hqakQ3hYteauqBYRLl5Q9BRyhawcd3rc8naNmn6aMdefXun9MXuMQ58EmRwbYPn5/0zBdMjwuww1BgXxcNjkoA49pPJIT0Bg8Nfd1VDB0Jym9pQTShqvflk2f69hOX60dhS67ZR+kR21FMK+i5IXetSnxhD3ZSjU2t0Qg3vEPzWbuhohrmjHhD6I5KNZnfekxme5J/d+/xp0rngYnRH8Dwm5rPrHcBs6qfBjmdWGMtjd4lzDOvAF+siw0SsYUwLT4QJCohoL42TI51BZ7aBXZ9O/dXVz0j0nF8UUd4wPVhks0xDd1I72bnNvYciDBA4tC1HWpmCk8HvhSKaJwpqwm1InvDxLjuF+azm114s81DhODrrD2Zo6boM6G/lzxj6ILjQJQAMp3iiXU2wws+3DzMr7qtgTkPdwJBOTJ91sezB52my3aynCq4W99V99Wc3Ml2ATDjuFdV89Zs9o3eqFa3jpB1Br0wzt5Lj1vWaDC654iXCUWnV9yhBwBSuj6Xjh+U5uJwrZrp7TMiwsBApualps5gFKVzHVQLUUd1TLn7NkIaFRWK44yYvsMzRCelev5qQab2W4VZElazggEhFIQJlzAE3GJyjadMXXOV/aSAoND+DedaPFH4paLSvT+lYzeCqWx/48nEs4i+APUXQl4JfGptg7IksmQi+3CQOKCAgHCmZ78ShRBXCd/SNxVKkcg84bZsOXh54/UU7aeCMN4bqxx2yCIkNVhK/eGiWhWoFju/dv1yAJNIHAQyMV/iZUMLCNwR6D36afW8ej2FbsrJDdDnhwJsEtYOvl5pk6pWaVko/ywo2KT7uNsTOOFdUKXBJu2w0tiX4AmVau/6ZiW8VzsVP4AroBWc+t30E0+ZGQfN04dExih6nWnIlx/ByBN3f+guL+XjAZmAKZThS8FgsgpCm0qdz9Z9uG4tfeDHAwQM6qJUun4DHj5fk1w0yVkSQAk9ghiBTrV0CA6I5vn5zxxGSkfopc/G/Q/pZBWLOeKYQkl4V3ulez/3YshNDrKgRYDaZtMsnvWVtmyjiMRTuxq22WukXKkjsbaeYRbCvtTP2CebqysSrNZmb/Vdg0ByJJD2KSGITsxe9ebZUeH4wo04wp8k4qVkWd9kyTFamHyAm7F3YHKwIlnW8C7rDvi8559uhGy8R/x/U4im9yScFPSVwhEiYQVyHowEhU2if2wQKhrnuFF2Hmp+Alt+pRIlt3FusYc/GVtyJq/FGXG1ukEHR0qiik2AN3r9CFKsKYh91dqm9pt/NtCbPFQtrPIDXcpCt4lmF8pfTiQ/ojTisREb2oL8R6b7jihAvP7ptx3kpq+hYwpuXUL7smu20C3zDBqXl5f2wZVopnGU3QxxuSJpkWDk+LME1NoJ/oK94FKn1lfHMasQRUyu+eoBTQBfT2nVAYZ2xFic5pZ3XsrvRbtGrL6N4C1PStXYhZ76jIVmrKjWgL/1TbSuwm/DV87tyqQ/pNnWOOlifgKxVIf5TacWHqvfgBxWQ1ev2/qAUTvZgQWgc6p8Kwj2Y+u8IpZ3KIbu06PGaDUUqLBG5tP9o633sHi/zCnJh5qc+ByhTwgPkhA/VDWmS2ykTFL2Bm/emw/aD9AEb7Yg4Snt1nuREa1rDCxuyOti2INNiEBhszsrK9rUZ92NbwebdRiF8s3i3oyjkQfuaRB6BgpLoPOw3XL6t0A/jehwmdQvLVHOibJizmAymtoldqepjfcJjnyyneqk4ErV7bkh9AjbNtyMVZUKkG7gjbtLsym2wzSqvz5ho2jNk48wY7t1KF4QZ19trFwpqMnvWgzW16oNfWpJfYPzl8j+gWrTNyeJWjjtLHj3DMdyXG3LVLLOmzyf8g1Cu2zJA3N2XwN32NkwsAKkONNjqMvfaZLurD+t6f38KzXVAvUY5doMyPfP+SdY9wkPA3DhJSwbe6KegD940d4pvHWSVpGgbOH9F6TmY5rpDA7EH08IwhONGUzS9hqkHFT0OlRM4P1JMK0V19JMvZAoDicferyJ/+UTXwicNRe54kV+l5rlbo7AZgJau7qgIv4PQKOIMBda/hIR9wGUSBu+t3CkH8dJz1CwPFHkk7gy7uRCkyzsxbPjwxt9QpQRwxFpKbmmNJfqQSq/rFbZ/KNLd1/ym1Iwtkog3Zgdzmcb/MDC0snu7oyorxaPMelLHRWuNgILT6tSInFYzafHXxMDwr9l/DpoAyoUtTMfy4JKZZNGWkKxNe5ztwW47GKpgrNXlf0jBeGBz0/n1S0XmpX2qUw/pM7LAEhBGCcipudqrtinkeeZrNmaMhXalk9p2qAzL+8hwkRKCkG77Y08YWvXxiX/Y72lGI3yz48Ww7MCAAN0CClgOlTpgIOz86lew57DIFbrGo7huREh1nVDvhuJVm06wGqzvPe34c6FiPEW8fnlQDrxRGBnel25G5CAnpEuSvwJI7la915l1BprNImTEQfJrwu+/jvTwdKlVBEYN48UbmquCK9Q143uuZ6woaeLSuGeepMIdZBypD5Kaecx4Ar5Ipx8LnLmYd5wHdjFectoe31U0aDfgodzJyJiVDcxAeyD1vnhdt1HU2UTKWt4sPNAlXBO00yILqX4ngs/06JNNAoIvp1Tap0L49Qtd1bWrBS3qX3KqvjXaFLuYGLRDKaAiD4RtMXRjq6RrvcejAVjbEQYJTdAgOotAAAEAfC7SsEqlyWeHCOqap46XsYdVCABQ7yOeB0iJY49b6CjjOU2Qjg5SzBcfM9q7zYBFsH6Imup936PKdaXfRyYN4oYztkyl1kZNx0KcoAaH0Z75jH1++AAAAlTiVKVQuwIpYyH7mHJ9pnh1eYKufoIGgIUf+1YpUF1e5O2oN4rksOpz6l5Hd9jSu0kwYdOqrVHza/C30GY2A5czd5scrXwY8AG7GKhfK5RJlZLGAAAAO6nx74mH1Vaifp7JJ1qZs9UriKtLqOdwl56oO+L9XNbQD5pBKFMVbEmwklABAVIj0NVjlhxOw6eBW8icGkL7cq9Kdt8XWPHlnq60q3JPgILVNEAAAAMqhGzNYqdEHwgMQJFMAXeZSX7zy9hdcP1cTWmyqFMky4mYoA8YPEKr58Avo9Tp5zcTMUAeL0x5nfOlRaf6OczLLdcN+4GJpi6AXmgSZlrz/fz8uwpp7zRnG6UbLPkkjJYF1hIDJGunopyOP3ypSf5pyOSqQHbA3BscawbwAACDCtj+av5kjvopw32CBNQH69aaNRMc7FuRwdl5nDM28OreN3Ens9NO5jFxVlkIqdj4zuJRLdnz3CpAe8ARap4QezCaNOw9wqHAC5w/+3MNzNo5l8DDzswbZdAAGVErgJUyZ1CLQKfs6wnUQOeVFj2EKiSsnVB2eqVfknKyt4u4hzwApfHHzkjTFzLAeVYCf5LiNQ0b4r/H/JHw+iiJev3mid3xBl35zimYWajSuOoWp7IY2E6Mck+SJTLE6lv1hHbx3b5JjdE2T4markHML9vIufBFcRGMkrJVBlnwBSvmy7BYoXZC/NtBOUlWGyXSsMGPhBM7/Bn4J7EK6Y0Qiyp65IBhH3aqH6zTU9YELYyhg48BDbO+I5TkyxcOO4TgN1nI81BslZAdutB5VNEYa0c76hx+Ys1P/ETg2xyqgAhNbDoOA3quBizqsMlADy4SlZLImazEPR/JP8iGqwGWKmLJ2mprZOZcvY7eIFXm8JRkMIoRpEZyjyyRWXi+SMV+cr/W76Ea38agmKQXbQTB0wD85CIfaJnsNCe3TcuHgb2SyRnM3+93W+FHEriR5oSxfcHq2AjXrXWopuhpsRoGzVYKKJgCo476gtFtiin5/seZjQainhExOWBTPmDZDG8ZoekQybWfHrDQsFOr8WJpyl0OqcLtRoURWy1Qeb9q8ybymHUxHhFAYKnURDGC6qJx6M7I/M2SpVZ8yBVSC7FDHwiA3umYZ2u4eS++xy6KZLt7tAiEAKbWWQjy4863NOl8SBrbmfAtTQyg2ilTDVZfG00znLoGLXbsuZYbQqrS5mzxrWyPPaBAfLTSOWgqnVN4UFQLBursN72h9FMWk02ru1fz+DUJthnIIqbhp1tjd5VaUQ6tqmDjfZE/ZpCI+jiCFjPMEKm780VxHCsX/F+0SY6W2IWUqhLRYfx7u2bSPBQ7qFi4veEMxnd/MVi3TAiajJXarpsqE5tg47z4xsfr/tYsEYXVKBadhoOy2yrXOP1t8kTjIEclNPF3uuk0tw2p6qh2VR6jxxO+3xKxsOTM279N40oX29dF6HKK6BRfAvHiPx29q4dzS2ICwjQsLBVC3dnx2ngwZ5uCW/bwdFYo6PNpnx0ZJabGE1X8icctzWkYfiEOPqrG7YH3pnEwqRujWGZ9ckh3CPosktImcbb2TL7m3FNNfuqdtxa03VOgvoYGhqo0NLkMQddKOHH6AahQVxCnB1hfmsoEcTAK0ESRCwNwJ79rtnWdzEQpxUYSSJwAyBZN93Vx6dMbvpO8ZjsYiaKdl6v6qYX1eFh9nqVIW4DFKDgBlGi+hOXkY5Y5UcBxzibMgs1fV8JJiBJlxKYF8UIv7ODfrg9v4LFLyKvR8EPbCNO148Iz1zNkgpILRnPPzDipUtziIc0l6vzeRmgSVnUi4F6HQNSEozzw+xH43dx5mR4re3nqnvnAfDOL6L3AIVaueW88ngzh39XI+VHEPmPAHUF3k2BXAuk+qvr1SpMeHBFqeVSB5eIl9QNkqQZ7E1IbvjrX9HD+YI7u8/xRrhUZ9xwUDUSrH2tEGRUe80Y1Idu2D1TQQAwC4SO/A1gATl3RgYIqK4+ziIagcsiUVLhJh7egoXs7nw3mItG9EYVBQnxVEWaopVIyQxdsLn93VsJJrKuPqytzeWMCe9A1V4GspwWZs+D+Ya91BqAJod2Dhj/XcSpHS9rerkMsgaE3SzFPoF5v1MD4vI2/1JsUvbiv+nlxcPfkLukKtVe2RQKWgIkiQ3mBlKAx0ognT0dIW3IBemp0X60txMZssYVDixqyI+pSKDZP2gEC9tYPlMrOkIGIQLOUN9Q5Kgy9IJDFur+YwQas5oigE+wVtpI+z2HUJVeK4MVZmz9xebUXKh/Wgf23xKyMareDdJ891s3nK05VXfO4c1gd9NbGY9ygWAVc5Om2rmltCM25IUFVbvBtXqaV1VD5gAQRcwcIP8KyTdmnr/ZEDqN7TovdWEN/i3mr6J07gfXR76N7dkXVeYvQDCOE9SczGtvWwQYTT3CcltdqyryU+4AyVEpSg6f00y5WxV+zhKlTV1cGInuoYGhu1kQcPQJtAW9bcd9gqQEQoHWHleRAGAqiyOij2l/unaa43p+asLajxzm+B64jzgEfAoFncOMim6DX4bXHtbuwMs2aHWpg7C476XPLXe3YHKmQO/YI4w1ZEBh5yD+QHBoIHC7OPG2lwyDSQk4N8jAOi7XuBcveA1oHNLrxgmSStHGADk8VdBxbhpOlORpIc3m12/2nIRbIxvK5LG+GC6+DpdoyTia4BCtp7oN3+38Xt8i2IAYe8khDMHuGuuuE+ZtfDZpu7ZY4Yc4lqMxgbVvLXVNifmIZe93WzQKRnAq4a8Rrwe0+4vjLlo685iLdhPpD7ojG/AEP+tHCj3teq4xGqHgkDhiJiIJZXJR2dZOy1YnFoOV+Fqub06pszQLojDJC220DXJkGS8kVGTSwETEKKTLlll1ct+2tC8vUSinTKfhbXfnPqsxyR41EvwI+Az9UcUxLxFkrsMQh7iYqa5HfP+MKq+k2nWRu56D4VAPfmySESzRsmJk2fvT4hYjq3ak6vuFSqUT8l5ocpz2IueHSEQAMICLC2irztUwvB2fMHG8BbsCCUAit8tybcecSw9l0xsUuvBHraSPCA4jERjkg3dC2OnnVihSq7lXcgUyDgKyeCegCNQlZlcui3fWMJojkf4hsfL+Sopsvf96MAATuJmacbOpx8nvGjha3rlywb86mQYmWsUUocgpe6o7s6lvKzhVcQqa3Sz0fpVS/fnH8DHH4DP+w2go0rcQk70acaBCymk8pNmlt9Vf8pPDDw/NXV/xRRf6G+PzztSyZf21gCmMbaxMZqB+CeE+lH/u5tR8tsUdycAEfKEFovxapHQU/LnYiuGDkMvnKNerj+iN84v7km1ff3R/QJTGZFO7T9tRv5vmLfbhMuOlpUnOt/QR7Ixu9Xxro5HjSvDfwie2SSaZHIC+4CDO7PbzlwBugGxPUL/odpMZjICU6k7egmvaNKPsISMwBNVEsPdL9Yak02eQpIFmXh00HOa6RMM+yoxKXmZ/jySZdbGJlUo8ID8ONkO/vIYpXbdCcJFO9yCZ6/NBZKYRcYGFscZT3yaw6UFc3dJXpVs77KSDNCS1wWgdcAIme9tsG/P9HModrHqLG2jNoW3rTFuVyzXDl6SD2KAOzdvB80DQVNzdJfl2y8xcV+6hGMAQlCwJn1WUm62P4FOOlabwo2fXHnf9EU4uWc7ctqIinewKIWiWPmSev8i/b6PpTnh/S69Jqp4m0lDOgfCxzlfqQIuddg1FY8PfwEHtE/TWfqi+4FY5aZs5Z9ePfSJvYT0wwqsgPCeWOTB9x0HJ2WfMh1u3oqDm4Zsz5CdL70Z9Pi2765BW2rdnH3lFhEpAhvdbRLq/l5loiKs8zOWwuwEo8CNLeEQ+vGgQ3ULon0g+WR3eeXchnPiKM51xIL6dL12eaye2cHYJkdo0ydde6bblkL0UkFFELcT2xsF48o2+1U8GTIRo3Ckd8grpYyD2JtnVRjBAP+gsa5OMI58MVAp2NCuOnCtQJDN7oZrihn/vth15uqtFe4TLPaFHxs3CibsPeGgbFlkOPyOP01litxlR2SQvAMxSNvePlwX24a5WrU3unQYBCO3VVqHqiMcLX2gLmTPZepDIkQLVSzShUFRHLK9Pap3oAAP3OdzFt5GxCtQUrJ5cD1FIzljz1h+p9p5wFhkiIM6yQQ0efv8oHsy/uqEOOrJNSAM3qb8m0Kr3QlcUJ3agPqGqkHXoZcazUqbmkDho2blllVPHSzp87Hc3ZN48i9nuyMp6C11kErj36dheMLuqWD+53na2alP1q07pBePaIlCcavAD+DJ4R8pk6azzrD2kUs5nNQvFuOvaeNIkJo9LBG7/xbD/peyDTVKC+iFFvFefulZEeZdTgbEb+SBr0amp8inQjiEQGgGVNhOLHY5xxBia4fbgr+4Q21k+s4t11Is13ZrgAHT2iVnOqlNQkrwgyQ0t/JBCWEOjAeJ0irOUN5X7vAtScN8BA/PEAwmWodYhZNAC2wbuQQ0vTAu9sqjBFpa7Q/ECf1xz5x2p3QxhaoT3dikGq1gSFHK3ez3D1jBVjyVt8WC73COH5OkEsijIvqZ9TXfrw0atNRHqr8zmBhokEG9rINxPlg/iSRmR3+IDPjE9C1I0Ch9pO3dXWrvOxCAZQ6lbzvAaXWYe8t6O0JA5XHmms9sT7NMWpFnYlnzrFMik6tb1qRtxENIvfX56YhnRvntZdkEl7wqB9NW8URvQvCIcvZnmW0U+qAnDcYj/kCre+72Iaz0a/GJ6qZYen44sWhm6unUeNi30qi5h0vIfzeed4gYE+/yHzGwfoiA0PyRdvpTscXV5zHVEr2qMlvFL4cUXZ+QYIS/DQgF9JKDTkZiewnvruUkuDTX+VZ5LvyYnGzcxRyQNhRPvi+5lm1bXlWbnqIX8K/GTvWZtdsvmgbMAer5e7c7Q0rN6Q8vBbY9wW//jc7kXsXruTsit6wGOJam+QMRe/RXSpXhUY2O89sFWsmLFLf+CBpmXiGJDHHo9BdtoxBPrXTQXLF78AGnIC8l0ygAIJGX9b7LstZkZhkXBKDi2jOYKRqo8PGsR3VhLf87WrCPxunulHDAaBT/eNADrAfT+vA/ORRA/n24lEmrvy7a9wxcVszaoT4R6fNb+lJQwopAT+ao5dGLtOuOFbKznJHu/oOobyBiXWe5HRCsC2g0xI8WZeJ8+N+DGBWp2lNUIPtF/t1jEC6zI5wtOU5x5upn6BPea9B/KoGfZgpuelKyqFhTUZQU/ORlc2NjnqHTsn4vA3zwKhT3hmC4jV9vIdCGSjUG0kMEnDFgSwAoG2f7dLuso7DQA7pHdbnRqQ7HrHJWdzQe2GnRRho2oeeovOuKmeG3pViuW4zEt4rKTMfkivO5jcQi2eckA3ktutrGbsuvy49WGj2DysLLr+5AQDwIW7mex/pMt4CUx7fn6XiWie+JS6U35gz2DafxmkGxJwQPu5v2IRSecuT8jnWALmViJwdH09J6HfdIq493Gv/txQLSBL64sTS+jVObc9pXAB0RsL4D1ZPRA5I2X6lpng9vjX1CIRYMZi/tq0yhjzjKrQqVCrJdNiQgapx5b8ym/5jWj1CwuUroGeM8UgyWPT4WYJARMiQFpkQYSfVkVBfrD6+5sBrMQ/HL0CrITMkkvMkf6rTf2HeFFQEY9TyY2fgrlW5YU4DhvNoNWEvNb5JR8JLUSNrDTAnz0qSOFwGE3HmJUP6buNsoitk1K0qwTOFz5tC8mFBmdy1hrIhSyPZjc7a2OaAVy0tkLXjP8NkxMwytxqcstursdXTSQ0bpu+F5hU/8oDizTzXimGgIH8RdAKw5qMwykkFVNmVF7Rg+r2+abCKP0aHTfC/ZuyQwdtuSQcXeVIsE9Grb0wYG+LgDAddaZ81pV06ife0FZR0ARVmiDWes6rkCdGI2AKRuOSgiZiQllPHuyukTLFmLvk48FKL7AEX6sdcR/KolqrXnbYi52uoG7ZRBT4j9wM0tTXMgkf/rQxe1avaW4cd6jM9UBiLNuveXbPFSfcRLvr7sBaQMq9GWSuHiZ3MffFh6/KMu4w0Z0ubfRWU8otLW52A3nfLOm0Nw3ap0jBEvajByaCJGpxJaeHMJ4AuODjW8qU0O535FYn0EsD4M9ag0N8ILb3Zgmn1JHf6Uj9J0mLytGxpeCLz/Vqt4cDAYVjjVLDr+u94xOZkkjqGTUZiJ6u5fLhRks1KWUbkOiuvQTmNLe5oxwn/EkHUmorRO3W01QyC/GTJ3VF7MF2Mfjhc87YtDP+IxpwIZ6X65c1OTN7ZzLzXj6jI1vG26tEKIvgL4iNBBsqn7I5Gh5t1W1XW5BRc1iXE8gcmEx4vYOAzGooR7ISWO2sRFrX1lDdOEuq7wewSlfy3zIereoKgqqADPRdZHS/ZMB/zl0OgNQdhBv5EJ7dB5FiABGtxXrCwgZ9q89yfQLQwrch71But3/Fx8NZTPBiJPuP9LFIm+mt9k3Qx0MESg0zD/u8aYyLGWOV7u+9twXizcJUVJCey1cwt3qjV5wAkxS8nxQB/CCSFChgH2IzgJ4n3+MWq+EiI2aFAxt9HzeoubfyYhXmyG53rH/H0w1sy0KrEt92dNezJC6vjY2p+h9a8FJ5um+74vRfSvpqWWDM6+qEyQghVnhAwP0JbNBXpIFJcG180PN6Q/HdpSYIW89DzriVMe3AfmKNTNENddmzKxZenHhp97NXCUwYBEq4sXDR16Nud0CYqkMpy80TUfWV56SEcu+EANMDyIp1bxkPo8i8ivDXExhGglwHrNQasQVxMDM8tDNKqc0pqLgPYHx0LsiSpa0caCjOnsaIpsjs3jcnYGHguu5HoyJge5cIpzyCczJj1HE6kZ4wfkCdcbUGDqIUx7RfaD/jG22DAbNrKwTdrxrIhZjupOH/GDoXgF0zMPTCgjKYXRBNWCSoPZ5EqiYeQPTmxIhxvGAaWpBgfAVP+BCZL0v/i4TA754hTV3ApHgM6mFLRXRUhdsIK6NMcBDYeYZOMclB7/WZ0go5uF9HzGLRXqBn9+MjSFE5WcavsQzZaH8qNSTvSXxPqfKr7fjATXLHWVfIWV+sQTiZpzgWXAWjuEl3/sVjSMA7v2rD9qEk2UUCkyJittDsnA0oHgc35FRgmfw/yGLpGz+LrxX43Fkqm3OuiHj+Dh0eQcXWaVISZT6LCGC57nWRPaRjvlpnFCD9jlZNP1zXU+2OvQZpIWuCunfP4oVXeknRGem5y4J+eyLLGbtBluKjXt8eDkbeio2WDPs0pq+1v580q66WpahZG0rBC7BQITV9HpzgVBCmAy8/ck6V4CHTXVUTwByV2D56+Z0oUr+Z2a1baenFE3uX96npJVl7Yhn4HNYJpjGgN1yfigh4V8YXbvHs5QclgVrA0mp3tf9hwwcjzTp445a4vMyWRgP2ENRLf3wZnmuVpO0ff/DV0p0kWG2dhAE8SwdLomwZzNJbmRj4BImvq/FtIltsWfd+ZqdJVd+mdenKEyGUolPLFgMMzTH7ks8UJbcJglvf+bk8vdFG8b6BAxHP2rH4AJ2NSzW+snjiQBP1gldhJlfeLH4p+iWBxINxu8HwlqkkWvxpa5fQp8tMueBRM/ePDnMqZRUAuy+WALhdSHX0BC6m9RipgAqFuUk7jqcSvBtRYDCAE9M42QD70iYlE+8rhRAVlpyawB/EHycn8pPc0siycAQ9Fl13tkvLWW5zOZ5gslWiGv6D2UF0BL8oza1n9X1YtK4Lx4CZQakWKZEn3yJgK67AfMwuquCiF+UKD+AdmxfS3h41HzVeunI1hs+lLYzFlS+1vAVGVd9xNZdC589dUMTCLCKJxsDNqW8r2EiGiuoOzczEoulPA2mr98LS5cRrubzFAl8lSLuI9NnsTlmfRZAxwBbRAZftDjPZ4UtOV70CxW5MBCK5lLRTtr0zk2wWfptwg1dgcv4x7AFjrtKhx8BtYDKPAsKj3Is81Nl+cVItZSZuQMzayBMCh6yafs5vbswyoqgzrP/fNMk4MOtJHDCsHHfzs/UohRfQeNUStnaVr0rg3MLIcr1yhuWpdKIWpo+yrR1mgoW3QqlLVcvAv9Kac9XUtK5HFJ9N6LzooIlThpRMso9XNNubcGPnbXDJlZL7OSBm5lGdLovEvTJUZ68MrMXbv0qOqWuvbIcs5HnnklyXHG+ioqgNSlsY7t48r6kNyAcIR9xb18qnbIowS3XtoCKTbgdOCB9LSf8PSv4AknoRPsPOu9WUdTUFlc2CNNo2hlV2iZPh3yvMyrlsPNWFxfT8JZ6bREq3+eEx2Qv3zYq4koflaIwIwjvIea7Db1aF6ptGZl1eIrDmel29IArhEb6peTF38Xq8WqxZsO/T2pz6Ihob4VyyFvZrzARpFTOVTDrgzJtsy+pRUDxUP+pR7ti6C0mRuga163aCFhJ4uDqYnYm3l2JT4+pV0iMzXlEvJP7mmAawpf4DQ946BvD9dag5E/xGLtqTh18KJMEsM4sEWgJ0IhXBbOoOsEn2Dg8t1GDI0jC6QUJzbuoXXmxYwIzyjbF+5mS+XSfOHy18Pc+Jclgg/8kcB2h2n+X8l42sKaSarUUZb0x3uuFbgvs8lf8hyhXDyHZReHq5FoZBwdnwEPKdstZ7GDAFDxQUud939sHBy7oCakIGVyLxHlzemBJXNKVmFOGkuaCE/mAlqElR6w4xCSOmmz6MBX70ENlkSHkuSiLGJpHMKrNSuqze4lPbSowboT2dwyuc/ZhPR4VpAtFNl6AA6lh15W4SryYwodagaZ9zuNsbrypv85D8dNh6xXVdGwugApcn8aYbG2NxeRoNIoF8fZWt1DBIpfwneikfAvVGWC+tNnXDnp+cPC9o/afG38Lwtbnna75gDkUAs3MItBivw0Mj49qLkg/QVEZMYEY+vxi6roq5g5t0tPqPbHwbVbEacXjGJt2CrEyOQQcJFZIdP0AjX39MfOtAS19wuBtSzMlb3RKIbhhfeZoJcz5n4TKRxE8wUALqlBoCogStaeLMOnZDWo8giIOlJ/MpHcIq7HjbRI0bMG4ISEALIhECZGyDG16/mkK8+54W7fM9LVMaqrlmvVq2rblL8gwuqDj4f7UIR/gJmVDMoUXfHsvD5kd3UPzs1XXUXVqTSgUap6QC0z4NQJwdGLIpW0EBlFK1/iCa6WnQ4wJ9OCMj6MtWpI6AS66b12GZBvpmYB3+BvY7cLc46Xa7URFPDGG53kaeBoScevy++9USHpAYLFWFMk0ujdit5rEF6V9337agaY7iFv97RenUP3UdfQIPhyFbJYI+aXsLD7iVEK+hbwlPWl0NOoYAviIrNG6BjU5yZl4VpsNFYwdF10Cwav5f8pQttTk/s13DCVsUwAH0taHanFv5QIImGI83UXvab66XbalgKEx5qlWCWGxtC+1o1g2JPPO6L4QZbc/b+dv6283EWz+9cY017mEzcyunm/kJcxZertG51QU9jKGCthT+Xj9ha9F7Ml4Cff+WyjKJR+UETfn27U7Zlc4ST1XhbKqJRJskgWQMUca2+h3XBimHDPVaM1tMD/yse4ejSiw3xCk3GTL0/K9V82O7TCc6A5b2Dg+ZTdwZypQOLFB2rbhHphOIk8ePWCjUS7Oh2pPrP403Tc1oAmwK8vmMsaiUMY9s0hkYwNN6wFRCB1ZJ2pKPIQo6tEX4Tx1ZKh5547t7aH7O3jdT5WtsHwQIgy9TCgaHEYBOtZpUfINF7EGpZveWytgTUm106W383lrdaOGOF6l4LCDojSkriV5hvBrifqQbufuE2QA+dn8dIn2SCw8K3cQf6Ao3ZRy1cBsoRbbQ2LRlgwlmAZaaSjHqsm/Zhu6lGVIhrIYYWXcaD3Ai/+rA01Y9rUuldPBi+WnPoyciSppgc/rzuxdZ/fkmQuF1qsu+8R6IkoBf/tU90Vc3cReTpMf03g3jjws4e+oDBtdW90bWND3KBzMIk9yoZACE9TlL9MeRmUEHuUV/DNZgdb7c6bwRSTkuvTQiRPSZW+4XTZ2Na0AMGK9DeA2QfQ+zmM30GVyNpTDXBRdJuJ//EfoWKcu+Po2ytpCD2Y8oBX7McSWV1JCNGhBfy2ZnRWOxPErUcopWYqtz6WRU8AHGtFKXuWROtJOXofPU7OnHX7JmYXAz0RwlvJ8Q0wN3mpGz4Stz9nZykpVQVlY6t4qpLf0bKVwkXjSiapX4n43TeAXJlSsm/hHRVVmSV23xycumeqCPKDaHS2TRbFh8qHjwOleacGac2+fLOC+uWHj2Y/rCW7Ykc6InPm8F1o2BwSfZ6hLaxAMBrAGw142Ctgw5vNPLIcpAS70t5ua9+ksDLfwkwrowZmvEPhAkHq9Z86TdZWY+hLu+MG1UREKFuI9tFenSXCUuIIQhKToYoPBb/mDEZm6Ycr08jJphmzde5k+6DDMBuSoeGyM7HGBY7N6bw1t4LhjvBpbgDK+LqPPDT7krn6J/9pZO+FmjQlU9jHd9Azl9OkKsj2K2JXGUgQ8Zzt/pl4Nd+iZeU62xrOBcRM9GmBPj+Wg8F4wpzSc4An/3+yFm6GvlbFQSzf3VahAgq8Lk+eLr2HHHclQ16q3mC25+JrwoGQmPQl2Ip9f8e3fP9qmkqUnpUU0qCoRkihsnLuIAh4S5qYy/ADEF3dg4rw574OvPquG6gd1iN+i37ps4BVf9b4K169xAV2MjSgnO0ZjMsR/mmWJZvoYSoqKIWMDtYhcrGty+j339j1yK7tEnsRrdH30b27Iuq8xftOlrArYfUomvneHFyrC5wZdBXVTucTgJwAAjtHPCE8J5CA58kmDqQr3GlY1+DFHKnmNUmGnyvsNyXqQCJp3uNfjZ2CNL1Yq0dn/kIzzvX3PF/41zMIjjnLzOre/bHFu876M1MiuNIR+cwMRTcJkYYTE+rE66jyhbbgHUdFlQtckcJqxiVgoDHT1NNVl8+7wNzHtT9WgjpmuJWNJGcBPaG1nztEfCBwfASyTc0IpC+n9OEcB1B38CNIe9ht0gBgEvCQDthKg6bKxHZ9cXMHxksowfrWseI9ypnBU7UPx38ozOtha+3tpiC7L+konNQ8tpEr5Kb+ZBQhcjd91uNArzYaXmEjU2aAcdW0sBYVRio40ef7Y4IsPjLAPOFZ47utKsppvo3CwyiVa2hupJYwbUe+wRhIZaQEi91GZbxMBX9v5D4EjrYHmYnPHtqnB6cxwOwfIm456257Dg/OKWyJO+f8ZCO0LNLx4L4t4/nWE0udz2WVYgnJbw7iVqHRYsI6Un44PJxTElMQ61VrAz3w9JFVmn43WlfmUsQo8iGKJoD0ZHf05+23p9Jljh+MPbqh0CcGKoQhtuTxghyCEH0IqnseqFGgbc98Z2/ie8wPdrP2ttfi3ACsqRiA92fx5qA1yyVpwsq8NMNcU8zX5r/eucIRYZeFc5MRn+yJfii3LvsAO0jAjEqlN12FuQHWIFbSpl04amN0z7H0S1cipdBhSpCgNlHb+43sbjp/vLMYB67cQTlo6uEYkQdZNIy2PYTd9wGiOdk4Gw6ZtG2tyVrcaw6+o+z693WBA3lCVYqkm38sD51hsITg3NCS4Gh9q5Rfd7L8lemeDhsnSdCyZmHyMdwOizpfRFAKJ6sA0Cs1OkF8A1j3gv8Eb5E7yGJFf7pkGiHQEhdAywI5P/reJycbqcDZtb54e7tVAfdEBW9WF/aeTNb6wIb4TCEHUg9K33NjtMtENSjr40sFDw9iYYGQX4Z6fuazJH2uWgEwfwV6qBIjvR04+tjS4ix3iq342DgmJ/cCulDQrJ30JIQ7rZ4ZwbQZrkgnseF+yDcxpJgTvoKkQAAtsG7l63hUE3BebrE1JNL6Yo/Iqka/rJvs6+D6pQoeMCWxapB34mhCZSb8aCmbCuJ4lLyTupOJ2tO84rKBl3ExEICl8RVtygTM50XWntZymTDgLAtX69pK1WK+s2N1EtFDkIPRnG5jMUPvU4nYeUproOI4/6jAv0nrsKt5c6WEnNdcsfe9hMMlVWY3nGS9KiF45JkTblMRG6cn0yiao0+fvxFM8eYm+M9nGdby97ogJ+veLEHmOlNGC2/fLIO5mJ4FlmRgFCYDeABUymaxVWzKdxvfYei+58bklvyIXr2vGN8+ftfvTmveeYH8Mvhhx7oj94OdMrkE6Z3U3uWL2Q631RtYkQ3m1gCuUAL3by0W3Wj3XlzaQVNVh0b/INx1J7GaWit3CssAfpZqq9+mZWVBW+MUPKJWxnCcUufdnFqPN4NyQ7cMdSM8DH67D8ckGnKxzL1Re9ewEmhuIR4kR+4nZi5GWg/l8aMjIu2VmNYHld2uaWHUNVS6kUZKRej8Wejq+zXqMrthyf8UNkkZ03AZwBRrXofp8dOxyi0X+E0BPgQ1lpG5GEgc0fMoq3RUT+tvt5uGdnodhc36UTBq61CBnq4ufZ5uceEMxMxM0MFmgTzRoE+tWNeKsCIfz4mNeEwPvtZK/RTpBOVa9OjRXk0hHX24xQR+jv1+fABTqsB3BJ0t/2QYB/S6+V0mqz5O023ZlsoIPt2wpyVMP2Q+6/ROoQci4LYsOyhM9bdD07WclQg8U/r++VvIjAVecxJTx6nBW2pAK0J6RLBAqnYRPyZL+wbkYXmQm/nDgE+763enEd5U05V9or7AkSJN6SNeKFqvp+ZRiy3+7K2ay5moe7LabNUOPdWcrbFufunY/8gLeUsG9l0M7d5AIDOxEvRezFZ596W1X+95dFw93o8ILTWSOji+V0+rIci0AgEsk4bfE1zw/ui8V1/K4EkLJRCMRrSt90Jah5LfYfCLxe+8PrCOWPXjwdWEvnomK7AS3DuxTjLfPjULZk6GZEBLeLoxffy5StgJHnG95qvlTR0KVtbDTqnCEykfnCnnVy2ehgkGvs+cYhtL6FnZrAe4RZAWzhZfo+c7vyC+OEWh244PbLnQdVfPci8Xq0PKrH9c6tp549sFiAV59W7C2HQX0oMwdQqIIzZ9W67KbPMltZeyHkyeqzwJB/6UBMlMrCSkJ5jTyWxKLI2rcz/hnT9m9pc1Iv8ebNt53AUXeZY9LgdXv97OIkwK5WmAr05jyEzA8lPEreu/oNdZ8BNLn0zKUKSQ+FyokAYDIyYXdn+Q2nth7EtY49mbdG8PyFQEUJEuZKO+tdLqxjrOmklWtJ9dviUv1PE5uaAfNv3DH2tIWxVywpCUWlsb2c48wDxOrJ0uIg+4sMwvTuD8K3EhhogD7dZOsGXp17gOYPz8jSBFMbQKpS3xuvgbdlrK/5/Vo/64MzzrqQ4Wub2oq5DTRSmN1/IYYnw+OVrR3uakhpEPvA/01d4ZgHKSs9xDqVx5pbbxBC6iFQ4xifYakwazF0UE1hHmuahax1hPTmxr5Iw8VtkItkSF3HG+FJhdcX9HinlxM2AdQkp5x2CfXh1mm1tJBF/s+cAHLW6ju9GI0CIzYAzVwIyQUELQJHznYcELRQ34TMmzpD8vQkFz6cZ833TX4qvfhMXzxrzt7hXoKfAv0FVhZj7LNhYqlRdVnyAAHK+Am14mhRNcXaOZNIx5tu8C/V1nLd2/2+KN6T8LZmoEv3JvDu2/vh69a+LlDG4+N150Yue5QgwTfDyeuNWpewRcO6iaXJlGk0gkBO24hxUnFltVu43l4tesaDpag7dxvhbYFauWsm7HVPztvXJ3HfVZNvrFm+w4SlWriD5Ib0kXLaw5/LO3ROYrJKRD2WwUQ8xo3VkeGi/3SwS5pgvOaxBzO5ip7XNz3gUbVBgTjcDPz6+v+EaMRcFoAIEfZle4DIGGt59mcgRai34rknQurh7UCFGQMSALY+Ahxd9AvWUOVstcMtcMtLbrfPRqzimn5XhbRBERB+tcKknCsMwSfkq7qwuOWpKVm7QIPjltBuV+jwdKjCC2KqYXB5vacaGdCmF3B2JpsUfr8L8LpjrcjjFX/PKWNIZDYYZDd1KGVYEEcmFzgdPPH8O8IJkTHr3WTEc1bJST4/+It1Rp9Tvgw7ZlCtq1yq76UQgsD6Y87qQJ7Wj9lROsX4C2UYRtrUoAhgtFI4g7V1AKYQbFSWGiKVgIy2D2NB4pm2Kljg2iou6E5CHxJXTjE7egtl1lrTE3jFSD7HHVGyeJm2Vvd9lINuH4hXDst12tnQvPkv/XYmpxwAWxLe1CxzqdZG4u22FVcRRNC9hhuD4DetzhE8LJy4UUMthdqJl6gRlWkYj6oGlp75VAYHGCXK7bwTmT6sPa1wOlvlke43So+geSW2WO7InA8b7sNOjBx+hzHTyQn1D8agGhcqbAnwaA9+kFBeWNID8f1iN9Ka2ynnYZe532bAN6AbE9s9B8sqVwjgdNfZX1aPu803onnsV7suJbr2ezc/aEgn12Xfk0x7LdM2l1byZh+NUcU6G/xAlKCucOL9S+8MdQBSLTS8aMCyslvx+/7rDhAH08NC+tz7TadegiZVEkj9tKqH/duS0/7xsSMsOEtxUqjq9Joaiau0vV/PKZYumRvFh6LHsWMo2cJnpuPsfz4HFX9XuGSt9Te6VwMr7rd9jnIwbGAA5x6jl/7KbA7WGEUNOXBRmABcsxIZv/RGCcY79hOpsoGdSPKM6WJPT9osZBJEINwvmC4L6iqT3Gn0e13ZmOSCdEyKb48jjVjIFrZ7m2A42kMQAQSt6PGADAZnlKt3ZavldzVJtc7Hib/1PG6UG0QAIofwAAAAAAAAwaLPBrfuCrzTRlIiCQ+tX6osxC6KYJN+IU3WRPgjE1VAgUg5fjpRneV9eWFJNakaQD/er/S7Sln3TQSvwEj8f+q72qJ7yWwBBrVg/2+Beqj0jNH99Fxy4XTWPQBdV4WIIH9pxj2sPgVZIykTlQJvPUoteYAESFWVuvz/qxzFe+UG6fxPiodb4NvtIJj8q0lSNNsNevZKJW9pI2gtTFHlV5yjCIQ5+5Ce0SJPZUPfdCGw0abAghTL/df7aMRnbEzJtMsv5YKNaYVXYEmuubsk1227XBFF/oltcCOgfleXVhsAdXXA9F31rYt4TZQtGKxYOE5R6SzoAk17kWiT33m6iSl3L3CEwuAABfsZJ4rlRmF+C814RzGA64Q73tjUTCqC1q4DEheJqjbGGHunwUf7h8H5Kl0o/kSI9M/m5oq+DyybDs8AAAAA+fai2cfQSj/cWGt+rEAml2Tw941vEAAAAA)

The postprocessing plugin supports the following model types:

- Object detection
- Image classification
- Image segmentation
- Super resolution
- Pose estimation
- Audio classification

The postprocessing plugin receives a list of tensors as input.
These tensors are encapsulated in GST Buffers. Machine learning metadata is attached to
each buffer, specifying details like the number of tensors, tensor shapes, model input
tensor shapes, how much of each input tensor is filled with data from the stream,
timestamps, and batching indexes.

The postprocessing plugin can generate one of the following formats:

- Text: The postprocessing plugin serializes machine learning metadata to text. This
metadata can be used as-is by other plugins or attached to the source stream using
`qtimetamuxer`.
- Image mask: The postprocessing plugin can generate an image mask with overlaid text,
bounding boxes, dots, lines, and other visual elements. This is a transparent frame
that contains only machine learning results.

    For example, if the postprocessing type is object detection, the plugin draws bounding
boxes with labels. The `qtivcomposer` plugin can then blit the image mask onto the
source video stream.
- Tensor: The postprocessing plugin can generate tensors. Use this when the next inference
stage requires the output tensor from the current inference stage, but the tensor shapes
don’t match exactly.

    For example, the first stage produces four output tensors and the next stage
requires three of them.

While the GStreamer pipeline caps negotiation determines the output format. The most
set table format is negotiated automatically, but you can specify it manually
with a GStreamer caps filter.

The plugin supports only one source pad. If the pipeline requires two or more of the
supported formats simultaneously, add and run the postprocessing plugin twice within
the pipeline.

The postprocessing plugin configuration consists of the following (GStreamer properties):

- Module: (mandatory) Postprocessing module name. This GStreamer property specifies how to
parse the tensor. It doesn’t define the plugin output type. The output type is determined
during pipeline caps negotiation.
- Settings: (optional) JSON string or path to the JSON file. This configuration only applies
to the module and not to the plugin. It passes arbitrary configuration to the postprocessing
module because each module has specific needs.

    For example, use it to pass confidence-threshold, key points, NMS thresholds, and tokens.
- Labels: (optional) Path to file with the labels. You can directly pass the path to the label
file to the module, using a newline-separated list of labels, JSON-formatted labels,
or a custom format. Parsers for the first two formats are available in the header files and
you can implement your own parser within the postprocessing module for custom formats.
- Results: (optional) For example, if the model detects 7 results but allows a maximum of 4, it
drops the 3 results with the lowest confidence scores. The plugin implements this feature, so
module developers don’t need to handle it themselves.

## Write a postprocessing module for a custom model

The postprocessing module is a shared library that parses tensor output from inference plugins.
The post-postprocessing GST plugin (`qtimlpostprocess`) loads and runs the module. IM SDK
provides a wide variety of out-of-the-box postprocessing modules:

- image-detection (yolov5, yolov8, yolonas, ssd-mobilnet, qfd, qpd, east-textdt)
- classification (mobilnet, resnet, ocr, qfr)
- pose-estimation (hrnet, lite-3dmm, posenet)
- segmentation (deeplab, midas-v2, yolov8)
- super-resolution (snet)

Use the `gst-inspect-1.0 qtimlpostprocess` to see the full list of supported modules on your device.

The following log shows an example output.

module           : Module name that is going to be used for processing the tensors
                       flags: readable, writable
                       Enum "GstMLPostProcessModules" Default: 0, "none"
                          (0): none             - No module, default invalid mode
                          (1): ssd-mobilenet    -
                               Supported tensors:
                                 Type: FLOAT32
                                 Tensor 0: 1, 10, 4
                                 Tensor 1: 1, 10
                                 Tensor 2: 1, 10
                                 Tensor 3: 1
    
                          (2): hrnet            -
                               Supported tensors:
                                 Type: FLOAT32
                                 Tensor 0: 1, 1-256, 1-256, 1-17
    
                          (3): srnet            -
                               Supported tensors:
                                 Type: FLOAT32
                                 Tensor 0: 1, 32-4096, 32-4096
                                 Type: FLOAT32
                                 Tensor 0: 1, 32-4096, 32-4096, 1-3
    
                          (4): yolov8-seg       -
                               Supported tensors:
                                 Type: FLOAT32
                                 Tensor 0: 1, 21-42840, 4
                                 Tensor 1: 1, 21-42840
                                 Tensor 2: 1, 21-42840, 1-32
                                 Tensor 3: 1, 21-42840
                                 Tensor 4: 1, 1-32, 32-2048, 32-2048
    
                          (5): posenet          -
                               Supported tensors:
                                 Type: FLOAT32
                                 Tensor 0: 1, 5-251, 5-251, 1-17
                                 Tensor 1: 1, 5-251, 5-251, 2-34
                                 Tensor 2: 1, 5-251, 5-251, 4-64
    
                          (6): east-textdt      -
                               Supported tensors:
                                 Type: FLOAT32
                                 Tensor 0: 1, 8-480, 8-480, 1-5
                                 Tensor 1: 1, 8-480, 8-480, 1-5
    
                          (7): qfr              -
                               Supported tensors:
                                 Type: FLOAT32
                                 Tensor 0: 1, 512
                                 Tensor 1: 1, 32
                                 Tensor 2: 1, 2
                                 Tensor 3: 1, 2
                                 Tensor 4: 1, 2
                                 Tensor 5: 1, 2
    
                          (8): deeplab-argmax   -
                               Supported tensors:
                                 Type: FLOAT32
                                 Tensor 0: 1, 32-2048, 32-2048
                                 Type: FLOAT32
                                 Tensor 0: 1, 32-2048, 32-2048, 1-21
    
                          (9): yolov8           -
                               Supported tensors:
                                 Type: FLOAT32
                                 Tensor 0: 1, 21-42840, 4
                                 Tensor 1: 1, 21-42840
                                 Tensor 2: 1, 21-42840
                                 Type: FLOAT32
                                 Tensor 0: 1, 4, 21-42840
                                 Tensor 1: 1, 1-1001, 21-42840
                                 Type: FLOAT32
                                 Tensor 0: 1, 5-1005, 21-42840
    
                          (10): mobilenet        -
                               Supported tensors:
                                 Type: FLOAT32
                                 Tensor 0: 1, 1000-1001
    
                          (11): lite-3dmm        -
                               Supported tensors:
                                 Type: FLOAT32
                                 Tensor 0: 1, 512
                                 Tensor 1: 1, 265
                                 Type: FLOAT32
                                 Tensor 0: 1, 265
    
                          (12): ocr              -
                               Supported tensors:
                                 Type: FLOAT32
                                 Tensor 0: 26, 1, 37
                                 Type: FLOAT32
                                 Tensor 0: 1, 26-48, 37
    
                          (13): yolov5           -
                               Supported tensors:
                                 Type: FLOAT32
                                 Tensor 0: 1, 1-136, 1-136, 18-3018
                                 Tensor 1: 1, 1-136, 1-136, 18-3018
                                 Tensor 2: 1, 1-136, 1-136, 18-3018
                                 Type: FLOAT32
                                 Tensor 0: 1, 3, 1-136, 1-136, 6-85
                                 Tensor 1: 1, 3, 1-136, 1-136, 6-85
                                 Tensor 2: 1, 3, 1-136, 1-136, 6-85
                                 Type: FLOAT32
                                 Tensor 0: 1, 21-72828, 6-85
    
                          (14): mobilenet-softmax -
                               Supported tensors:
                                 Type: FLOAT32
                                 Tensor 0: 1, 1000-1001
    
                          (15): yolo-nas         -
                               Supported tensors:
                                 Type: FLOAT32
                                 Tensor 0: 1, 21-42840, 4
                                 Tensor 1: 1, 21-42840
                                 Tensor 2: 1, 21-42840
                                 Type: FLOAT32
                                 Tensor 0: 1, 21-42840, 2
                                 Tensor 1: 1, 21-42840, 2
                                 Tensor 2: 1, 21-42840, 81
                                 Type: FLOAT32
                                 Tensor 0: 1, 5-1005, 21-42840
                                 Type: FLOAT32
                                 Tensor 0: 1, 21-42840, 1-1001
                                 Tensor 1: 1, 21-42840, 4
                                 Type: FLOAT32
                                 Tensor 0: 1, 21-42840, 4
                                 Tensor 1: 1, 21-42840, 1-1001
    
                          (16): qfd              -
                               Supported tensors:
                                 Type: UINT8, FLOAT32
                                 Tensor 0: 1, 60, 80, 1
                                 Tensor 1: 1, 60, 80, 1
                                 Tensor 2: 1, 60, 80, 10
                                 Tensor 3: 1, 60, 80, 4
                                 Type: UINT8, FLOAT32
                                 Tensor 0: 1, 120, 160, 1
                                 Tensor 1: 1, 120, 160, 10
                                 Tensor 2: 1, 120, 160, 4
                                 Type: UINT8, FLOAT32
                                 Tensor 0: 1, 60, 80, 4
                                 Tensor 1: 1, 60, 80, 10
                                 Tensor 2: 1, 60, 80, 1
                                 Type: UINT8, FLOAT32
                                 Tensor 0: 1, 60, 80, 1
                                 Tensor 1: 1, 60, 80, 4
                                 Tensor 2: 1, 60, 80, 10
    
                          (17): yamnet           -
                               Supported tensors:
                                 Type: FLOAT32
                                 Tensor 0: 1, 521
    
                          (18): midas-v2         -
                               Supported tensors:
                                 Type: FLOAT32
                                 Tensor 0: 1, 256, 256, 1
                                 Type: FLOAT32
                                 Tensor 0: 1, 256, 256
    
                          (19): qfr-softmax      -
                               Supported tensors:
                                 Type: FLOAT32
                                 Tensor 0: 1, 512
                                 Tensor 1: 1, 32
                                 Tensor 2: 1, 2
                                 Tensor 3: 1, 2
                                 Tensor 4: 1, 2
                                 Tensor 5: 1, 2
    
                          (20): qpd              -
                               Supported tensors:
                                 Type: FLOAT32
                                 Tensor 0: 1, 120, 160, 3
                                 Tensor 1: 1, 120, 160, 12
                                 Tensor 2: 1, 120, 160, 34
                                 Tensor 3: 1, 120, 160, 17
    Copy to clipboard

If you can’t find a suitable postprocessing module for your model, you can implement your own.
You can build a postprocessing module independent of the IM SDK.
To build a postprocessing module without IM SDK, you need the interface
header files and a toolchain. Once you build the module, deploy it to
`/usr/lib/imsdk/qtimlpostprocess/modules/` on the device.

The postprocessing plugin automatically detects it and users can select it in the GStreamer
pipeline.

### Module and library naming

To avoid duplication of postprocessing module names, postprocessing module shared libraries
must follow the `libml-postprocess-<module-name>.so` naming convention.

For example, the shared library for the YoloV8 module must be named `libml-postprocess-yolov8.so`.
Use the same `<module-name>` when configuring the postprocessing plugin. For example, `module=yolov8`.

gst-launch-1.0 -e \
    filesrc location=/etc/media/video1.mp4 ! qtdemux ! queue ! h264parse ! v4l2h264dec capture-io-mode=4 output-io-mode=4 ! queue ! tee name=split split. ! \
    queue ! qtivcomposer name=mixer sink_1::dimensions="<1920,1080>" ! queue ! waylandsink fullscreen=true split. ! queue ! qtimlvconverter ! queue ! \
    qtimltflite delegate=external external-delegate-path=libQnnTFLiteDelegate.so external-delegate-options="QNNExternalDelegate,backend_type=htp;" \
    model=/etc/models/yolox_quantized.tflite ! queue ! qtimlpostprocess settings="{\"confidence\": 75.0}" results=10 module=yolov8 labels=/etc/labels/yolox.json \
    ! video/x-raw,format=BGRA,width=640,height=360 ! queue ! mixer.
    Copy to clipboard

### AI postprocessing module inference

AI postprocessing modules expose a C++ API. Since C++ APIs can’t be directly loaded from shared libraries,
class instantiation is encapsulated in a C function. This mechanism is already implemented in the header file,
so you don’t need to manually handle the instantiation of the C++ class. You only need to implement the
following APIs in the module class, which derives from the IModule interface.

- Constructor/Destructor: The constructor doesn’t take any parameters and serves as a general entry point
for developers.
- `Caps()`: Returns the module type and the supported tensor dimensions in JSON format.
- `Configure()`: Accepts a path to a label file and a JSON string containing module-specific settings.
Users provide these settings through the settings property of the postprocessing GStreamer plugin.
- `Process()`: Parses input tensors and generates predictions based on the model output.

#### std::string Caps()

Returns the module type and the supported tensor shapes as a JSON string. The tensor shape isn’t fixed,
but defined within a range, represented using square brackets.

For example, `[1, [21, 42840], 4]` indicates that the second dimension can vary between `21` and `42840`.

The following snippet is an example definition of postprocessing module capabilities. The example implements
object detection postprocessing, FLOAT32 as the tensor format, and supports one, two, or three tensor outputs.

static const char* kModuleCaps = R"(
    {
    "type": "object-detection",
    "tensors": [
       {
          "format": ["FLOAT32"],
          "dimensions": [
          [1, [21, 42840], 4],
          [1, [21, 42840]],
          [1, [21, 42840]]
          ]
       },
       {
          "format": ["FLOAT32"],
          "dimensions": [
          [1, 4, [21, 42840]],
          [1, [1, 1001], [21, 42840]]
          ]
       },
       {
          "format": ["FLOAT32"],
          "dimensions": [
          [1, [5, 1005], [21, 42840]]
          ]
       }
    ]
    }
    )";
    Copy to clipboard

Supported postprocessed module types

- object-detection
- image-classification
- image-segmentation
- super-resolution
- pose-estimation
- audio-classification
- tensor

Supported tensor types

- FLOAT32
- FLOAT16
- INT8
- UINT8
- INT16
- UINT16
- INT32
- UINT32
- INT64
- UINT64

You can specify more than one format at the same time. For example:

...
       {
          "format": ["FLOAT32", "INT8"],
          "dimensions": [
          [1, 4, [21, 42840]],
          [1, [1, 1001], [21, 42840]]
          ]
       },
    ...
    Copy to clipboard

#### bool Configure(const std::string& labels\_file, const std::string& json\_settings)

Parameters

| labels\_file | (optional) String path to a file containing labels. If not provided, the string remains empty. |
| --- | --- |
| json\_settings | (optional) JSON string containing module-specific settings. Users provide these settings<br>through the settings property of the postprocessing GStreamer plugin.<br><br><br>Remains empty if not provided. |

#### bool Process(const Tensors& tensors, Dictionary& mlparams, std::any& output)

Parameters

| tensors | Tensor shape and how the input tensor is filled. |
| --- | --- |
| mlparams | Additional parameters for tensor processing that may not be applicable to all submodules. |
| output | List of predictions in one of the supported formats.<br><ul class="simple"><br><li><p>object-detection</p></li><br><li><p>image-classification</p></li><br><li><p>image-segmentation</p></li><br><li><p>super-resolution</p></li><br><li><p>pose-estimation</p></li><br><li><p>audio-classification</p></li><br><li><p>tensors</p></li><br></ul> |

Note

Tensor output is a special case where the postprocessing plugin and module generate
tensors instead of predictions. Use this when two machine learning models are chained
together and the output tensor from the first model needs to be modified before it’s
passed to the next model.

If the output tensor doesn’t require modification, both inference plugins can be linked
directly, one after the other, and the postprocessing plugin isn’t needed.

##### Understanding postprocessing module input

Postprocessing module input is split into two fields:

- tensor: This field holds the inference output tensors and describes their structure. Vectors
represent each output tensor as an entry. For example, in the case of YOLOv8, which produces
three output tensors (boxes, scores, class indices), the vector contains four entries.

    - Type: float, uint8, etc.
    - Name: Tensor name, used for identification when two or more output tensors have the same shape.
Tensor names are unique and guarantee that exact tensor is selected.
    - Dimensions: Describes the tensor shape.

        For example, YoloV8 with three output tensors:

        `[1,8400,4], [1,8400], [1,8400]`
    - Data: Pointer to the tensor.
- mlparams: Additional parameters for tensor processing that may not be applicable to all submodules.
This field provides information about how the pipeline processes the input stream, to help in cases where
the resolution and aspect ratio of the stream don’t match the shape of the input tensor.

    This field is a dictionary implemented using `std::any`. You must know the expected key and its
corresponding return type. Using `std::any` ensures that the returned value matches the type
associated with the given key. Example usage:

video::Region& region =
          std::any_cast<video::Region&>(mlparams["input-tensor-region"]);
        Copy to clipboard

Supported keys

- Key: “input-tensor-region”

    Type: video::Region

    Description: This parameter indicates which portion of the input tensor is filled with actual data
from the stream. The remaining area is considered padding.
- Key: “input-tensor-dimensions”

    Type: video::Resolution

    Description: Specifies the size of the input tensor. Required to convert absolute coordinates to
relative coordinates when the postprocessing algorithm produces output in absolute coordinates,
since postprocessing modules must output relative coordinates.

#### Generating postprocessing module output

The output is an array of arrays of results.
Arrays are nested to support the batching use case.
Only the inner array is filled if there is no batching. The inner array size matches the number of found results.
Results are always in relative dimensions and the result type depends on the module type.

- Image/audio classification

    - Name: Class label; predicated category or class the image/audio belongs to.
    - Confidence: Class probability or confidence score.
    - Color: RGBA8888 color for visualization in overlay plugin.
    - Xtraparams: (optional) Extra parameters in dictionary (key/value pairs) used to export arbitrary extra results from the module to pass downstream.
- Object detection

    - Left, top, right, bottom: Bounding box coordinates.
    - Name: Class label; predicated category or class the image/audio belongs to.
    - Landmarks: (optional) List of key points; for example, face detection models can output face points with bounding boxes.
    - Confidence: Class probability or confidence score.
    - Color: RGBA8888 color for visualization in overlay plugin.
    - Xtraparams: (optional) Extra parameters in dictionary (key/value pairs) used to export arbitrary extra results from the module to pass downstream.
- Pose estimation

    - Name: Class label; predicated category or class the image/audio belongs to.
    - Confidence: Class probability or confidence score.
    - Keypoints: Vector of key points.
    - Links: (optional) Vector of links between key points.
    - Color: RGBA8888 color for visualization in overlay plugin.
    - Xtraparams: (optional) Extra parameters in dictionary (key/value pairs) used to export arbitrary extra results from the module to pass downstream.
- Image segmentation and super resolution

    - Output is image frame/mask.
- Tensor

    - List of tensors.

#### Batching

The postprocessing plugin automatically splits tensor batches into single tensors.
The plugin layer handles batching and you don’t need to handle batching use cases.

For example, a module is automatically called 4 times for every batch if the batch size is four.

#### Module helper tools

Label and JSON parsers are included in the interface header files.
You don’t have to use them, but they’re provided for convenience.
You can use any label or JSON parser, but the module must be statically linked with them.

- Label parser: This parser supports two formats, takes the path to a file with labels, and automatically detects formatting.

    - New line separated format: The line number is the class ID.
    - JSON format: You should set the class index, label, and visualization color in this format.

        This format is more flexible, because you can pass some classes and the rest of the classes are automatically filtered out.
- JSON parser: Settings are passed in a JSON string. This utility is used to parse settings and, in cases of JSON format, this implementation
is used in the Qualcomm-provided label parser.

#### Logging

The postprocessing module can output logs to the GStreamer log system without having a direct dependency on GStreamer.
The constructor passes a logging object to the module.
This object, along with a LOG macros, can be used to output logs directly to the GStreamer log.

Supported log levels include: Error, Warning, Info, Debug, Trace, and Log.

LOG macro:

#define LOG(logger, level, fmt, ...)
    Copy to clipboard

Example logging usage:

LOG(logger_, kError, "ML frame with unsupported postprocessing procedure!");
    LOG(logger_, kLog, "Threshold: %f", threshold_);
    Copy to clipboard

## Compile the postprocessing module on a host computer

Prerequisites

- Ubuntu 22.04 or Ubuntu 24.04 host computer.

1. Install the required tools.

sudo apt-get install g++-aarch64-linux-gnu
        Copy to clipboard

sudo apt-get install cmake
        Copy to clipboard
2. Download the necessary `.h` and `.cc` files from CodeLinaro.

    - [qti-json-parser.h](https://git.codelinaro.org/clo/le/platform/vendor/qcom-opensource/gst-plugins-qti-oss/-/blob/imsdk.lnx.2.0.0.r2-rel/gst-plugin-mlpostprocess/modules/qti-json-parser.h)
    - [qti-labels-parser.h](https://git.codelinaro.org/clo/le/platform/vendor/qcom-opensource/gst-plugins-qti-oss/-/blob/imsdk.lnx.2.0.0.r2-rel/gst-plugin-mlpostprocess/modules/qti-labels-parser.h)
    - [qti-ml-post-process.h](https://git.codelinaro.org/clo/le/platform/vendor/qcom-opensource/gst-plugins-qti-oss/-/blob/imsdk.lnx.2.0.0.r2-rel/gst-plugin-mlpostprocess/modules/qti-ml-post-process.h)
    - [ml-postprocess-yolov8.h](https://git.codelinaro.org/clo/le/platform/vendor/qcom-opensource/gst-plugins-qti-oss/-/blob/imsdk.lnx.2.0.0.r2-rel/gst-plugin-mlpostprocess/modules/object-detection/ml-postprocess-yolov8.h)
    - [ml-postprocess-yolov8.cc](https://git.codelinaro.org/clo/le/platform/vendor/qcom-opensource/gst-plugins-qti-oss/-/blob/imsdk.lnx.2.0.0.r2-rel/gst-plugin-mlpostprocess/modules/object-detection/ml-postprocess-yolov8.cc)
3. Put the IM SDK headers and module source files in one folder.

<root>/
           ml-postprocess-yolov8.cc
           ml-postprocess-yolov8.h
           qti-json-parser.h
           qti-labels-parser.h
           qti-ml-post-process.h
        Copy to clipboard
4. Create a `CMakeLists.txt` file. For example:

cmake_minimum_required(VERSION 3.8.2)
        project(QTI_OSS_ML_MODULES LANGUAGES C CXX)
        
        set(CMAKE_INCLUDE_CURRENT_DIR ON)
        
        # Common compiler flags.
        set(CMAKE_CXX_STANDARD 17)
        set(CMAKE_CXX_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -Werror")
        set(CMAKE_CXX_FLAGS "${CMAKE_C_FLAGS} -Wno-unused-parameter")
        
        include_directories(
        $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
        )
        
        set(CMAKE_INCLUDE_CURRENT_DIR ON)
        
        set(TARGET_NAME ml-postprocess-yolov8)
        
        add_library(${TARGET_NAME} SHARED
        ml-postprocess-yolov8.cc
        )
        Copy to clipboard

Warning

Postprocessing module shared libraries must follow the `libml-postprocess-<module-name>.so` naming convention.

For example, the shared library for the YoloV8 module should be named `libml-postprocess-yolov8.so`.
5. Create a toolchain file, such as `aarch64-toolchain.cmake`. For example:

set(CMAKE_SYSTEM_NAME Linux)
        set(CMAKE_SYSTEM_PROCESSOR aarch64)
        set(CMAKE_CXX_COMPILER aarch64-linux-gnu-g++)
        set(CMAKE_CXX_FLAGS "-march=armv8-a")
        Copy to clipboard
6. Configure and build the module.

mkdir build
        Copy to clipboard

cd build
        Copy to clipboard

cmake -DCMAKE_TOOLCHAIN_FILE=../aarch64-toolchain.cmake ..
        Copy to clipboard

cmake --build .
        Copy to clipboard

## Deploy and test the postprocessing module

1. On the host device, run the following command:

export USER=root
        Copy to clipboard
2. [Download the necessary scripts and artifacts](https://docs.qualcomm.com/doc/80-80022-15B/topic/classify-objects-with-default-model.html#download-model-files).
3. Deploy the module to the target device.

    1. Transfer the module to the target device by running the following command
from a terminal on the host computer.

scp libml-postprocess-yolov8.so $USER@<IP address of the target device>:/tmp
            Copy to clipboard
    2. SSH into the target device by running the following command
from a terminal on the host computer.

ssh $USER@<IP address of the target device>
            Copy to clipboard
    3. When prompted, enter the password:

        `oelinux123`.
    4. Remount `/` with write permissions by running the following command on the
QLI target device (after SSH login):

mount -o remount,rw /
            Copy to clipboard
    5. Copy the module to the GStreamer plugins directory by running the following command on the
target device (after SSH login):

cp /tmp/libml-postprocess-yolov8.so /usr/lib/imsdk/qtimlpostprocess/modules/.
            Copy to clipboard
4. Run GST inspect on the target device and confirm that your module appears in the
supported modules list.

    You have to see your postprocessing module in the supported modules list with the supported tensors shape.

gst-inspect-1.0 qtimlpostprocess
        Copy to clipboard
5. Download the models, labels, and media to run the GStreamer pipeline.

    1. Download [yolox.json](https://github.com/quic/sample-apps-for-qualcomm-linux/blob/main/qualcomm-linux/artifacts/json_labels/yolox.json).
    2. Copy the `yolox.json` file to the target device.

scp yolox.json $USER@<IP address of the target device>:/etc/labels/
            Copy to clipboard
    3. Download [video1.mp4](https://github.com/quic/sample-apps-for-qualcomm-linux/tree/main/qualcomm-linux/artifacts/videos).
    4. Copy the `video1.mp4` file to the target device.

scp video1.mp4 $USER@<IP address of the target device>:/etc/media/
            Copy to clipboard
    5. Download [yolox_quantized.tflite](https://huggingface.co/qualcomm/Yolo-X/resolve/v0.30.5/Yolo-X_w8a8.tflite).
    6. Copy the `yolox_quantized.tflite` file to the target device.

scp yolox_quantized.tflite $USER@<IP address of the target device>:/etc/models/
            Copy to clipboard
6. Once you have the postprocessing module, build a GStreamer pipeline.

    1. Select your postprocessing module using the module property of the `qtimlpostprocess` plugin.

        If your module requires a label file or configuration, pass them using the label and settings properties.

    In the following example pipeline to run a YOLO-X model:

    - The pipeline uses an offline video as the source.
    - The pipeline decodes the video to YUV format using the v4l2h264dec decoder.
    - The `qtimlvconverter` plugin preprocesses the YUV frames.
    - The `qtimltflite` plugin runs inference with the LiteRT YOLO-X model.
    - The postprocessing plugin loads the YOLO-X module and passes a label file in JSON format.
    - The pipeline displays the results on Wayland.

gst-launch-1.0 -e \
           filesrc location=/etc/media/video1.mp4 ! qtdemux ! queue ! h264parse ! v4l2h264dec capture-io-mode=4 output-io-mode=4 ! queue ! tee name=split split. ! \
           queue ! qtivcomposer name=mixer sink_1::dimensions="<1920,1080>" ! queue ! waylandsink fullscreen=true split. ! queue ! qtimlvconverter ! queue ! \
           qtimltflite delegate=external external-delegate-path=libQnnTFLiteDelegate.so external-delegate-options="QNNExternalDelegate,backend_type=htp;" \
           model=/etc/models/yolox_quantized.tflite ! queue ! qtimlpostprocess settings="{\"confidence\": 75.0}" results=10 module=yolov8 labels=/etc/labels/yolox.json \
           ! video/x-raw,format=BGRA,width=640,height=360 ! queue ! mixer.
        Copy to clipboard

Last Published: May 14, 2026

[Previous Topic
Integrate an AI Hub model in an application](https://docs.qualcomm.com/bundle/publicresource/80-80022-15B/topics/integrate-ai-hub-models.md) [Next Topic
Develop an AI application using QAIRT C++ APIs](https://docs.qualcomm.com/bundle/publicresource/80-80022-15B/topics/develop-your-own-application-qairt-cpp.md)