403Webshell
Server IP : 85.158.181.41  /  Your IP : 216.73.217.12
Web Server : Apache
System : Linux cloud9-vm129 6.1.178+1-ph #ph SMP PREEMPT_DYNAMIC Wed Jul 29 09:00:54 UTC 2026 x86_64
User : moncbefd ( 1024)
PHP Version : 7.3.33
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /home/moncbefd/www.moneta.at/JSEngine/build/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /home/moncbefd/www.moneta.at/JSEngine/build/jse.js
(function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i<t.length;i++)o(t[i]);return o}return r})()({1:[function(require,module,exports){
'use strict';

var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();

function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }

/* --------------------------------------------------------------
 collection.js 2016-06-22
 Gambio GmbH
 http://www.gambio.de
 Copyright (c) 2016 Gambio GmbH
 Released under the GNU General Public License (Version 2)
 [http://www.gnu.org/licenses/gpl-2.0.html]
 --------------------------------------------------------------
 */

(function () {

    'use strict';

    /**
     * Class Collection
     *
     * This class is used to handle multiple modules of the same type (controllers, extensions ...).
     *
     * @class JSE/Constructors/Collection
     */

    var Collection = function () {
        /**
         * Class Constructor
         *
         * @param {String} name The collection name - must be unique.
         * @param {String} attribute The attribute that will trigger collection's modules.
         * @param {Object} namespace Optional, the namespace instance where the collection belongs.
         */
        function Collection(name, attribute, namespace) {
            _classCallCheck(this, Collection);

            this.name = name;
            this.attribute = attribute;
            this.namespace = namespace;
            this.cache = {
                modules: {},
                data: {}
            };
        }

        /**
         * Define a new engine module.
         *
         * This function will define a new module into the engine. Each module will be stored in the
         * collection's cache to prevent unnecessary file transfers. The same happens with the default
         * configuration that append to the module definition.
         *
         * @param {String} name Name of the module (same as the filename).
         * @param {Array} dependencies Array of libraries that this module depends on (will be loaded asynchronously).
         * Apply only filenames without extension e.g. ["emails"].
         * @param {Object} code Contains the module code (function).
         */


        _createClass(Collection, [{
            key: 'module',
            value: function module(name, dependencies, code) {
                // Check if required values are available and of correct type.
                if (!name || typeof name !== 'string' || typeof code !== 'function') {
                    jse.core.debug.warn('Registration of the module failed, due to bad function call', arguments);
                    return false;
                }

                // Check if the module is already defined.
                if (this.cache.modules[name]) {
                    jse.core.debug.warn('Registration of module "' + name + '" skipped, because it already exists.');
                    return false;
                }

                // Store the module to cache so that it can be used later.
                this.cache.modules[name] = {
                    code: code,
                    dependencies: dependencies
                };
            }

            /**
             * Initialize Module Collection
             *
             * This method will trigger the page modules initialization. It will search all
             * the DOM for the "data-gx-extension", "data-gx-controller" or
             * "data-gx-widget" attributes and load the relevant scripts through RequireJS.
             *
             * @param {jQuery} $parent Optional (null), parent element will be used to search for the required modules.
             *
             * @return {jQuery.Deferred} namespaceDeferred Deferred object that gets processed after the
             * module initialization is finished.
             */

        }, {
            key: 'init',
            value: function init() {
                var _this = this;

                var $parent = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;

                // Store the namespaces reference of the collection.
                if (!this.namespace) {
                    throw new Error('Collection cannot be initialized without its parent namespace instance.');
                }

                // Set the default parent-object if none was given.
                if ($parent === undefined || $parent === null) {
                    $parent = $('html');
                }

                var attribute = 'data-' + this.namespace.name + '-' + this.attribute;
                var namespaceDeferred = $.Deferred();
                var deferredCollection = [];

                $parent.filter('[' + attribute + ']').add($parent.find('[' + attribute + ']')).each(function (index, element) {
                    var $element = $(element);
                    var modules = $element.attr(attribute);

                    $element.removeAttr(attribute);

                    $.each(modules.replace(/(\r\n|\n|\r|\s\s+)/gm, ' ').trim().split(' '), function (index, name) {
                        if (name === '') {
                            return true;
                        }

                        var deferred = $.Deferred();
                        deferredCollection.push(deferred);

                        jse.core.module_loader.load($element, name, _this).done(function (module) {
                            return module.init(deferred);
                        }).fail(function (error) {
                            deferred.reject();
                            // Log the error in the console but do not stop the engine execution.
                            jse.core.debug.error('Could not load module: ' + name, error);
                        });
                    });
                });

                // Always resolve the namespace, even if there are module errors.
                $.when.apply(undefined, deferredCollection).always(function () {
                    return namespaceDeferred.resolve();
                });

                return deferredCollection.length ? namespaceDeferred.promise() : namespaceDeferred.resolve();
            }
        }]);

        return Collection;
    }();

    jse.constructors.Collection = Collection;
})();

},{}],2:[function(require,module,exports){
'use strict';

var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();

function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }

/* --------------------------------------------------------------
 data_binding.js 2016-05-17
 Gambio GmbH
 http://www.gambio.de
 Copyright (c) 2016 Gambio GmbH
 Released under the GNU General Public License (Version 2)
 [http://www.gnu.org/licenses/gpl-2.0.html]
 --------------------------------------------------------------
 */

(function () {

    'use strict';

    /**
     * Data Binding Class
     *
     * Handles two-way data binding with UI elements.
     *
     * @class JSE/Constructors/DataBinding
     */

    var DataBinding = function () {
        /**
         * Class Constructor
         *
         * @param {String} name The name of the binding.
         * @param {Object} $element Target element to be bond.
         */
        function DataBinding(name, $element) {
            _classCallCheck(this, DataBinding);

            this.name = name;
            this.$element = $element;
            this.value = null;
            this.isMutable = $element.is('input, textarea, select');
            this.init();
        }

        /**
         * Initialize the binding.
         */


        _createClass(DataBinding, [{
            key: 'init',
            value: function init() {
                var _this = this;

                this.$element.on('change', function () {
                    _this.get();
                });
            }

            /**
             * Get binding value.
             *
             * @returns {*}
             */

        }, {
            key: 'get',
            value: function get() {
                this.value = this.isMutable ? this.$element.val() : this.$element.html();

                if (this.$element.is(':checkbox') || this.$element.is(':radio')) {
                    this.value = this.$element.prop('checked');
                }

                return this.value;
            }

            /**
             * Set binding value.
             *
             * @param {String} value
             */

        }, {
            key: 'set',
            value: function set(value) {
                this.value = value;

                if (this.isMutable) {
                    this.$element.val(value);
                } else {
                    this.$element.html(value);
                }
            }
        }]);

        return DataBinding;
    }();

    jse.constructors.DataBinding = DataBinding;
})();

},{}],3:[function(require,module,exports){
'use strict';

var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();

function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }

/* --------------------------------------------------------------
 module.js 2016-05-17
 Gambio GmbH
 http://www.gambio.de
 Copyright (c) 2016 Gambio GmbH
 Released under the GNU General Public License (Version 2)
 [http://www.gnu.org/licenses/gpl-2.0.html]
 ----------------------------------------------------------------
 */

(function () {

    'use strict';

    /**
     * Class Module
     *
     * This class is used for representing a module instance within the JSE ecosystem.
     *
     * @class JSE/Constructors/Module
     */

    var Module = function () {
        /**
         * Class Constructor
         *
         * @param {Object} $element Module element selector object.
         * @param {String} name The module name (might contain the path)
         * @param {Object} collection The collection instance of the module.
         */
        function Module($element, name, collection) {
            _classCallCheck(this, Module);

            this.$element = $element;
            this.name = name;
            this.collection = collection;
        }

        /**
         * Initialize the module execution.
         *
         * This function will execute the "init" method of each module.
         *
         * @param {Object} collectionDeferred Deferred object that gets processed after the module
         * initialization is finished.
         */


        _createClass(Module, [{
            key: 'init',
            value: function init(collectionDeferred) {
                var _this = this;

                // Store module instance alias.
                var cached = this.collection.cache.modules[this.name];
                var timeout = null;

                try {
                    if (!cached) {
                        throw new Error('Module "' + this.name + '" could not be found in the collection cache.');
                    }

                    var data = this._getModuleData();
                    var instance = cached.code.call(this.$element, data);

                    // Provide a done function that needs to be called from the module, in order to inform 
                    // that the module "init" function was completed successfully.
                    var done = function done() {
                        _this.$element.trigger('jse:module:initialized', [{ module: _this.name }]);
                        jse.core.debug.info('Module "' + _this.name + '" initialized successfully.');
                        collectionDeferred.resolve();
                        clearTimeout(timeout);
                    };

                    // Load the module data before the module is loaded.
                    this._loadModuleData(instance).done(function () {
                        // Reject the collectionDeferred if the module isn't initialized after 10 seconds.
                        timeout = setTimeout(function () {
                            jse.core.debug.warn('Module was not initialized after 10 seconds! -- ' + _this.name);
                            collectionDeferred.reject();
                        }, 10000);

                        jse.core.vue.registerModule(instance);
                        instance.init(done);
                    }).fail(function (error) {
                        collectionDeferred.reject();
                        jse.core.debug.error('Could not load module\'s meta data.', error);
                    });
                } catch (exception) {
                    collectionDeferred.reject();
                    jse.core.debug.error('Cannot initialize module "' + this.name + '".', exception);
                    $(window).trigger('error', [exception]); // Inform the engine about the exception.
                }

                return collectionDeferred.promise();
            }

            /**
             * Parse the module data attributes.
             *
             * @return {Object} Returns an object that contains the data of the module.
             *
             * @private
             */

        }, {
            key: '_getModuleData',
            value: function _getModuleData() {
                var _this2 = this;

                var data = {};

                $.each(this.$element.data(), function (name, value) {
                    if (name.indexOf(_this2.name) === 0 || name.indexOf(_this2.name.toLowerCase()) === 0) {
                        var key = name.substr(_this2.name.length);
                        key = key.substr(0, 1).toLowerCase() + key.substr(1);
                        data[key] = value;
                        // Remove data attribute from element (sanitise camel case first).
                        var sanitisedKey = key.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase();
                        _this2.$element.removeAttr('data-' + _this2.name + '-' + sanitisedKey);
                    }
                });

                return data;
            }

            /**
             * Modules return objects which might contain requirements.
             *
             * @param {Object} instance Module instance object.
             *
             * @return {Object} Returns a promise object that will be resolved when the data are fetched.
             *
             * @private
             */

        }, {
            key: '_loadModuleData',
            value: function _loadModuleData(instance) {
                var deferred = $.Deferred();
                var deferredCollection = [];

                try {
                    if (instance.model) {
                        $.each(instance.model, function (index, url) {
                            var modelDeferred = $.Deferred();
                            deferredCollection.push(modelDeferred);
                            $.getJSON(url).done(function (response) {
                                instance.model[index] = response;
                                modelDeferred.resolve(response);
                            }).fail(function (error) {
                                modelDeferred.reject(error);
                            });
                        });
                    }

                    if (instance.view) {
                        $.each(instance.view, function (index, url) {
                            var viewDeferred = $.Deferred();
                            deferredCollection.push(viewDeferred);
                            $.get(url).done(function (response) {
                                instance.view[index] = response;
                                viewDeferred.resolve(response);
                            }).fail(function (error) {
                                viewDeferred.reject(error);
                            });
                        });
                    }

                    if (instance.bindings) {
                        for (var name in instance.bindings) {
                            var $element = instance.bindings[name];
                            instance.bindings[name] = new jse.constructors.DataBinding(name, $element);
                        }
                    }

                    $.when.apply(undefined, deferredCollection).done(deferred.resolve).fail(function (error) {
                        deferred.reject(new Error('Cannot load data for module "' + instance.name + '".', error));
                    });
                } catch (exception) {
                    deferred.reject(exception);
                    jse.core.debug.error('Cannot preload module data for "' + this.name + '".', exception);
                    $(window).trigger('error', [exception]); // Inform the engine about the exception.
                }

                return deferred.promise();
            }
        }]);

        return Module;
    }();

    jse.constructors.Module = Module;
})();

},{}],4:[function(require,module,exports){
'use strict';

var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();

function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }

/* --------------------------------------------------------------
 namespace.js 2016-05-17
 Gambio GmbH
 http://www.gambio.de
 Copyright (c) 2016 Gambio GmbH
 Released under the GNU General Public License (Version 2)
 [http://www.gnu.org/licenses/gpl-2.0.html]
 --------------------------------------------------------------
 */

(function () {

    'use strict';

    /**
     * Class Namespace
     *
     * This class is used to handle multiple collections of modules. Every namespace has its own source URL
     * for loading the data. That means that JSE can load modules from multiple places at the same time.
     *
     * @class JSE/Constructors/Namespace
     */

    var Namespace = function () {
        /**
         * Class Constructor
         *
         * @param {String} name The namespace name must be unique within the app.
         * @param {String} source Complete URL to the namespace modules directory (without trailing slash).
         * @param {Array} collections Contains collection instances to be included in the namespace.
         */
        function Namespace(name, source, collections) {
            _classCallCheck(this, Namespace);

            this.name = name;
            this.source = source;
            this.collections = collections; // contains the default instances   		
        }

        /**
         * Initialize the namespace collections.
         *
         * This method will create new collection instances based in the original ones.
         *
         * @return {jQuery.Promise} Returns a promise that will be resolved once every namespace collection
         * is resolved.
         */


        _createClass(Namespace, [{
            key: 'init',
            value: function init() {
                var deferredCollection = [];

                var _iteratorNormalCompletion = true;
                var _didIteratorError = false;
                var _iteratorError = undefined;

                try {
                    for (var _iterator = this.collections[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
                        var collection = _step.value;

                        this[collection.name] = new jse.constructors.Collection(collection.name, collection.attribute, this);
                        var deferred = this[collection.name].init();
                        deferredCollection.push(deferred);
                    }
                } catch (err) {
                    _didIteratorError = true;
                    _iteratorError = err;
                } finally {
                    try {
                        if (!_iteratorNormalCompletion && _iterator.return) {
                            _iterator.return();
                        }
                    } finally {
                        if (_didIteratorError) {
                            throw _iteratorError;
                        }
                    }
                }

                return deferredCollection.length ? $.when.apply(undefined, deferredCollection).promise() : $.Deferred().resolve();
            }
        }]);

        return Namespace;
    }();

    jse.constructors.Namespace = Namespace;
})();

},{}],5:[function(require,module,exports){
'use strict';

/* --------------------------------------------------------------
 about.js 2016-09-08
 Gambio GmbH
 http://www.gambio.de
 Copyright (c) 2016 Gambio GmbH
 Released under the GNU General Public License (Version 2)
 [http://www.gnu.org/licenses/gpl-2.0.html]
 --------------------------------------------------------------
 */

/**
 * JSE Information Module
 *
 * Execute the `jse.about()` command and you will get a new log entry in the
 * console with info about the engine. The "about" method is only available in
 * the "development" environment of the engine.
 *
 * @module JSE/Core/about
 */
document.addEventListener('DOMContentLoaded', function () {

    'use strict';

    if (jse.core.config.get('environment') === 'production') {
        return;
    }

    jse.about = function () {
        var info = '\n\t\t\tJS ENGINE v' + jse.core.config.get('version') + ' \xA9 GAMBIO GMBH\n\t\t\t----------------------------------------------------------------\n\t\t\tThe JS Engine enables developers to load automatically small pieces of javascript code by\n\t\t\tplacing specific data attributes to the HTML markup of a page. It was built with modularity\n\t\t\tin mind so that modules can be reused into multiple places without extra effort. The engine\n\t\t\tcontains namespaces which contain collections of modules, each one of whom serve a different\n\t\t\tgeneric purpose.\n\t\t\tVisit http://developers.gambio.de for complete reference of the JS Engine.\n\t\t\t\n\t\t\tFALLBACK INFORMATION\n\t\t\t----------------------------------------------------------------\n\t\t\tSince the engine code becomes bigger there are sections that need to be refactored in order\n\t\t\tto become more flexible. In most cases a warning log will be displayed at the browser\'s console\n\t\t\twhenever there is a use of a deprecated function. Below there is a quick list of fallback support\n\t\t\tthat will be removed in the future versions of the engine.\n\t\t\t\n\t\t\t1. The main engine object was renamed from "gx" to "jse" which stands for the JavaScript Engine.\n\t\t\t2. The "gx.lib" object is removed after a long deprecation period. You should update the modules \n\t\t\t   that contained calls to the functions of this object.\n\t\t\t3. The gx.<collection-name>.register function is deprecated by v1.2, use the \n\t\t\t   <namespace>.<collection>.module() instead.\n\t\t';

        jse.core.debug.info(info);
    };
});

},{}],6:[function(require,module,exports){
'use strict';

/* --------------------------------------------------------------
 config.js 2018-09-12
 Gambio GmbH
 http://www.gambio.de
 Copyright (c) 2017 Gambio GmbH
 Released under the GNU General Public License (Version 2)
 [http://www.gnu.org/licenses/gpl-2.0.html]
 --------------------------------------------------------------
 */

jse.core.config = jse.core.config || {};

/**
 * JSE Configuration Module
 *
 * Once the config object is initialized you cannot change its values. This is done in order to
 * prevent unpleasant situations where one code section changes a core config setting that affects
 * another code section in a way that is hard to discover.
 *
 * ```javascript
 * const appUrl = jse.core.config.get('appUrl');
 * ```
 *
 * @module JSE/Core/config
 */
(function (exports) {

    'use strict';

    // ------------------------------------------------------------------------
    // CONFIGURATION VALUES
    // ------------------------------------------------------------------------

    var config = {
        /**
         * Engine Version
         *
         * @type {String}
         */
        version: '1.6',

        /**
         * App URL
         *
         * e.g. 'http://app.com'
         *
         * @type {String}
         */
        appUrl: null,

        /**
         * Shop URL
         *
         * e.g. 'http://shop.de'
         *
         * @deprecated Since v1.4, use appUrl instead.
         *
         * @type {String}
         */
        shopUrl: null,

        /**
         * App Version
         *
         * e.g. '2.7.3.0'
         *
         * @type {String}
         */
        appVersion: null,

        /**
         * Shop Version
         *
         * e.g. '2.7.3.0'
         *
         * @deprecated Since 1.4, use appVersion instead.
         *
         * @type {String}
         */
        shopVersion: null,

        /**
         * URL to JSEngine Directory.
         *
         * e.g. 'http://app.com/JSEngine
         *
         * @type {String}
         */
        engineUrl: null,

        /**
         * Engine Environment
         *
         * Defines the functionality of the engine in many sections.
         *
         * Values: 'development', 'production'
         *
         * @type {String}
         */
        environment: 'production',

        /**
         * Translations Object
         *
         * Contains the loaded translations to be used within JSEngine.
         *
         * @see jse.core.lang object
         *
         * @type {Object}
         */
        translations: {},

        /**
         * Module Collections
         *
         * Provide array with { name: '', attribute: ''} objects that define the collections to be used within
         * the application.
         *
         * @type {Array}
         */
        collections: [],

        /**
         * Current Language Code
         *
         * @type {String}
         */
        languageCode: 'de',

        /**
         * Set the debug level to one of the following: 'DEBUG', 'INFO', 'LOG', 'WARN', 'ERROR',
         * 'ALERT', 'SILENT'.
         *
         * @type {String}
         */
        debug: 'SILENT',

        /**
         * Use cache busting technique when loading modules.
         *
         * @deprecated Since v1.4
         *
         * @see jse.core.module_loader object
         *
         * @type {Boolean}
         */
        cacheBust: true,

        /**
         * Use cache busting token as part of file name.
         *
         * @type {Boolean}
         */
        bustFiles: false,

        /**
         * Whether the client has a mobile interface.
         *
         * @type {Boolean}
         */
        mobile: /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),

        /**
         * Whether the client supports touch events.
         *
         * @type {Boolean}
         */
        touch: 'ontouchstart' in window || window.ontouchstart || window.onmsgesturechange ? true : false,

        /**
         * Specify the path for the file manager.
         *
         * @deprecated Since v1.4
         *
         * @type {String}
         */
        filemanager: 'includes/ckeditor/filemanager/index.html',

        /**
         * Page token to include in every AJAX request.
         *
         * The page token is used to avoid CSRF attacks. It must be provided by the backend and it will
         * be validated there.
         *
         * @type {String}
         */
        pageToken: '',

        /**
         * Cache Token String
         *
         * This configuration value will be used in production environment for cache busting. It must
         * be provided with the window.JSEngineConfiguration object.
         *
         * @type {String}
         */
        cacheToken: '',

        /**
         * Defines whether the history object is available.
         *
         * @type {Boolean}
         */
        history: history && history.replaceState && history.pushState,

        /**
         * Vue Configuration
         *
         * This configuration wwill be used for adding Vue support in the current page.
         *
         * @type {Object}
         */
        vue: null
    };

    /**
     * Blacklist config values in production environment.
     *
     * @type {String[]}
     */
    var blacklist = ['version', 'appVersion', 'shopVersion'];

    // ------------------------------------------------------------------------
    // PUBLIC METHODS
    // ------------------------------------------------------------------------

    /**
     * Get a configuration value.
     *
     * @param {String} name The configuration value name to be retrieved.
     *
     * @return {*} Returns the config value.
     */
    exports.get = function (name) {
        if (config.environment === 'production' && blacklist.includes(name)) {
            return null;
        }

        return config[name];
    };

    /**
     * Initialize the JS Engine config object.
     *
     * This method will parse the global "JSEngineConfiguration" object and then remove
     * it from the global scope so that it becomes the only config source for javascript.
     *
     * Notice: The only required JSEngineConfiguration values are the "environment" and the "appUrl".
     *
     * @param {Object} jsEngineConfiguration Must contain information that define core operations
     * of the engine. Check the "libs/initialize" entry of the engine documentation.
     */
    exports.init = function (jsEngineConfiguration) {
        config.environment = jsEngineConfiguration.environment;
        config.appUrl = jsEngineConfiguration.appUrl.replace(/\/+$/, ''); // Remove trailing slash from appUrl.

        if (config.environment === 'development') {
            config.cacheBust = false;
            config.minified = false;
            config.debug = 'DEBUG';
        }

        if (jsEngineConfiguration.engineUrl !== undefined) {
            config.engineUrl = jsEngineConfiguration.engineUrl.replace(/\/+$/, '');
        } else {
            config.engineUrl = config.appUrl + '/JSEngine/build';
        }

        if (jsEngineConfiguration.translations !== undefined) {
            config.translations = jsEngineConfiguration.translations;

            for (var sectionName in config.translations) {
                jse.core.lang.addSection(sectionName, config.translations[sectionName]);
            }
        }

        if (jsEngineConfiguration.collections !== undefined) {
            config.collections = jsEngineConfiguration.collections;
        } else {
            config.collections = [{ name: 'controllers', attribute: 'controller' }, { name: 'extensions', attribute: 'extension' }, { name: 'widgets', attribute: 'widget' }];
        }

        if (jsEngineConfiguration.appVersion !== undefined) {
            config.appVersion = jsEngineConfiguration.appVersion;
        }

        if (jsEngineConfiguration.shopUrl !== undefined) {
            jse.core.debug.warn('JS Engine: "shopUrl" is deprecated and will be removed in JS Engine v1.5, please ' + 'use the "appUrl" instead.');
            config.shopUrl = jsEngineConfiguration.shopUrl.replace(/\/+$/, '');
            config.appUrl = config.appUrl || config.shopUrl; // Make sure the "appUrl" value is not empty.
        }

        if (jsEngineConfiguration.shopVersion !== undefined) {
            jse.core.debug.warn('JS Engine: "shopVersion" is deprecated and will be removed in JS Engine v1.5, please ' + 'use the "appVersion" instead.');
            config.shopVersion = jsEngineConfiguration.shopVersion;
        }

        if (jsEngineConfiguration.prefix !== undefined) {
            config.prefix = jsEngineConfiguration.prefix;
        }

        if (jsEngineConfiguration.languageCode !== undefined) {
            config.languageCode = jsEngineConfiguration.languageCode;
        }

        if (document.getElementById('init-js') !== null && document.getElementById('init-js').hasAttribute('data-page-token')) {
            jsEngineConfiguration.pageToken = document.getElementById('init-js').getAttribute('data-page-token');
        }

        if (jsEngineConfiguration.pageToken !== undefined) {
            config.pageToken = jsEngineConfiguration.pageToken;
        }

        if (jsEngineConfiguration.cacheToken !== undefined) {
            config.cacheToken = jsEngineConfiguration.cacheToken;
        }

        if (jsEngineConfiguration.bustFiles !== undefined) {
            config.bustFiles = jsEngineConfiguration.bustFiles;
        }

        if (jsEngineConfiguration.vue !== undefined) {
            config.vue = jsEngineConfiguration.vue;
        }

        // Add the "touchEvents" entry so that modules can bind various touch events depending the browser.
        var generalTouchEvents = {
            start: 'touchstart',
            end: 'trouchend',
            move: 'touchmove'
        };

        var microsoftTouchEvents = {
            start: 'pointerdown',
            end: 'pointerup',
            move: 'pointermove'
        };

        config.touchEvents = window.onmsgesturechange ? microsoftTouchEvents : generalTouchEvents;

        // Set initial registry values. 
        for (var entry in jsEngineConfiguration.registry) {
            jse.core.registry.set(entry, jsEngineConfiguration.registry[entry]);
        }

        // Initialize the module loader object.
        jse.core.module_loader.init();

        // Destroy global EngineConfiguration object.
        delete window.JSEngineConfiguration;
    };
})(jse.core.config);

},{}],7:[function(require,module,exports){
'use strict';

/* --------------------------------------------------------------
 debug.js 2016-09-08
 Gambio GmbH
 http://www.gambio.de
 Copyright (c) 2016 Gambio GmbH
 Released under the GNU General Public License (Version 2)
 [http://www.gnu.org/licenses/gpl-2.0.html]
 --------------------------------------------------------------
 */

jse.core.debug = jse.core.debug || {};

/**
 * JSE Debug Module
 *
 * This object provides an wrapper to the console.log function and enables easy use
 * of the different log types like "info", "warning", "error" etc.
 *
 * @module JSE/Core/debug
 */
(function (exports) {
    'use strict';

    // ------------------------------------------------------------------------
    // VARIABLES
    // ------------------------------------------------------------------------

    /**
     * @type {String}
     */

    var TYPE_DEBUG = 'DEBUG';

    /**
     * @type {String}
     */
    var TYPE_INFO = 'INFO';

    /**
     * @type {String}
     */
    var TYPE_LOG = 'LOG';

    /**
     * @type {String}
     */
    var TYPE_WARN = 'WARN';

    /**
     * @type {String}
     */
    var TYPE_ERROR = 'ERROR';

    /**
     * @type {String}
     */
    var TYPE_ALERT = 'ALERT';

    /**
     * @type {String}
     */
    var TYPE_MOBILE = 'MOBILE';

    /**
     * @type {String}
     */
    var TYPE_SILENT = 'SILENT';

    /**
     * All possible debug levels in the order of importance.
     *
     * @type {String[]}
     */
    var levels = [TYPE_DEBUG, TYPE_INFO, TYPE_LOG, TYPE_WARN, TYPE_ERROR, TYPE_ALERT, TYPE_MOBILE, TYPE_SILENT];

    // ------------------------------------------------------------------------
    // FUNCTIONS
    // ------------------------------------------------------------------------

    /**
     * Set Favicon to Error State.
     *
     * This method will only work if <canvas> is supported from the browser.
     *
     * @private
     */
    function _setFaviconToErrorState() {
        var canvas = document.createElement('canvas');
        var favicon = document.querySelector('[rel="shortcut icon"]');

        if (canvas.getContext && !favicon.className.includes('error-state')) {
            var img = document.createElement('img');
            canvas.height = canvas.width = 16;
            var ctx = canvas.getContext('2d');
            img.onload = function () {
                // Continue once the image has been loaded. 
                ctx.drawImage(this, 0, 0);
                ctx.globalAlpha = 0.65;
                ctx.fillStyle = '#FF0000';
                ctx.rect(0, 0, 16, 16);
                ctx.fill();
                favicon.href = canvas.toDataURL('image/png');
                favicon.className += 'error-state';
            };
            img.src = favicon.href;
        }
    }

    /**
     * Error handler that fetches all exceptions thrown by the javascript.
     *
     * @private
     */
    function _globalErrorHandler() {
        if (jse.core.config.get('environment') !== 'production') {
            // Log the error in the browser's console. 
            if (jse.core.debug !== undefined) {
                jse.core.debug.error('JS Engine Error Handler', arguments);
            } else {
                console.log('JS Engine Error Handler', arguments);
            }

            // Update the page title with an error count.
            var regex = /.\ \[(.+)\]\ /;
            var title = window.document.title;
            var errorCount = 1;

            // Gets the current error count and recreates the default title of the page.
            if (title.match(regex) !== null) {
                errorCount = parseInt(title.match(/\d+/)[0], 10) + 1;
                title = title.replace(regex, '');
            }

            // Re-creates the error flag at the title with the new error count.
            title = '✖ [' + errorCount + '] ' + title;
            window.document.title = title;

            // Set Favicon to Error State.
            _setFaviconToErrorState();
        }

        return true;
    }

    /**
     * Executes the correct console/alert statement.
     *
     * @param {Object} caller (optional) Contains the caller information to be displayed.
     * @param {Object} data (optional) Contains any additional data to be included in the debug output.
     *
     * @private
     */
    function _execute(caller, data) {
        var currentLogIndex = levels.indexOf(caller);
        var allowedLogIndex = levels.indexOf(jse.core.config.get('debug'));
        var consoleMethod = null;

        if (currentLogIndex >= allowedLogIndex) {
            consoleMethod = caller.toLowerCase();

            switch (consoleMethod) {
                case 'alert':
                    alert(JSON.stringify(data));
                    break;

                case 'mobile':
                    var $mobileDebugModal = $('.mobile-debug-modal');

                    if (!$mobileDebugModal.length) {
                        $('<div />').addClass('mobile-debug-modal').css({
                            position: 'fixed',
                            top: 0,
                            left: 0,
                            maxHeight: '50%',
                            minWidth: '200px',
                            maxWidth: '300px',
                            backgroundColor: 'crimson',
                            zIndex: 100000,
                            overflow: 'scroll'
                        }).appendTo($('body'));
                    }

                    $mobileDebugModal.append('<p>' + JSON.stringify(data) + '</p>');
                    break;

                default:
                    if (console === undefined) {
                        return; // There is no console support so do not proceed.
                    }

                    if (typeof console[consoleMethod].apply === 'function' || typeof console.log.apply === 'function') {
                        if (console[consoleMethod] !== undefined) {
                            console[consoleMethod].apply(console, data);
                        } else {
                            console.log.apply(console, data);
                        }
                    } else {
                        console.log(data);
                    }
            }
        }
    }

    /**
     * Bind Global Error Handler
     */
    exports.bindGlobalErrorHandler = function () {
        window.onerror = _globalErrorHandler;
    };

    /**
     * Replaces console.debug
     *
     * @params {*} arguments Any data that should be shown in the console statement.
     */
    exports.debug = function () {
        _execute(TYPE_DEBUG, arguments);
    };

    /**
     * Replaces console.info
     *
     * @params {*} arguments Any data that should be shown in the console statement.
     */
    exports.info = function () {
        _execute(TYPE_INFO, arguments);
    };

    /**
     * Replaces console.log
     *
     * @params {*} arguments Any data that should be shown in the console statement.
     */
    exports.log = function () {
        _execute(TYPE_LOG, arguments);
    };

    /**
     * Replaces console.warn
     *
     * @params {*} arguments Any data that should be shown in the console statement.
     */
    exports.warn = function () {
        _execute(TYPE_WARN, arguments);
    };

    /**
     * Replaces console.error
     *
     * @param {*} arguments Any data that should be shown in the console statement.
     */
    exports.error = function () {
        _execute(TYPE_ERROR, arguments);
    };

    /**
     * Replaces alert
     *
     * @param {*} arguments Any data that should be shown in the console statement.
     */
    exports.alert = function () {
        _execute(TYPE_ALERT, arguments);
    };

    /**
     * Debug info for mobile devices.
     *
     * @param {*} arguments Any data that should be shown in the console statement.
     */
    exports.mobile = function () {
        _execute(TYPE_MOBILE, arguments);
    };
})(jse.core.debug);

},{}],8:[function(require,module,exports){
'use strict';

/* --------------------------------------------------------------
 engine.js 2016-09-08
 Gambio GmbH
 http://www.gambio.de
 Copyright (c) 2016 Gambio GmbH
 Released under the GNU General Public License (Version 2)
 [http://www.gnu.org/licenses/gpl-2.0.html]
 --------------------------------------------------------------
 */

jse.core.engine = jse.core.engine || {};

/**
 * JSE Core Module
 *
 * This object will initialize the page namespaces and collections.
 *
 * @module JSE/Core/engine
 */
(function (exports) {

    'use strict';

    // ------------------------------------------------------------------------
    // PRIVATE FUNCTIONS
    // ------------------------------------------------------------------------

    /**
     * Initialize the page namespaces.
     *
     * This method will search the page HTML for available namespaces.
     *
     * @param {Array} collections Contains the module collection instances to be included in the namespaces.
     *
     * @return {Array} Returns an array with the page namespace names.
     *
     * @private
     */

    function _initNamespaces(collections) {
        var pageNamespaceNames = [];

        // Use the custom pseudo selector defined at extend.js in order to fetch the available namespaces.
        var nodes = Array.from(document.getElementsByTagName('*')),
            regex = /data-(.*)-namespace/;

        var _iteratorNormalCompletion = true;
        var _didIteratorError = false;
        var _iteratorError = undefined;

        try {
            for (var _iterator = nodes[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
                var node = _step.value;
                var _iteratorNormalCompletion3 = true;
                var _didIteratorError3 = false;
                var _iteratorError3 = undefined;

                try {
                    for (var _iterator3 = Array.from(node.attributes)[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {
                        var attribute = _step3.value;

                        if (attribute.name.search(regex) !== -1) {
                            // Parse the namespace name and source URL.
                            var name = attribute.name.replace(regex, '$1'),
                                source = attribute.value;

                            // Check if the namespace is already defined.
                            if (pageNamespaceNames.indexOf(name) > -1) {
                                if (window[name].source !== source) {
                                    jse.core.debug.error('Element with the duplicate namespace name: ' + node);
                                    throw new Error('The namespace "' + name + '" is already defined. Please select another ' + 'name for your namespace.');
                                }
                                continue; // The namespace is already defined, continue loop.
                            }

                            if (source === '') {
                                throw new SyntaxError('Namespace source is empty: ' + name);
                            }

                            // Create a new namespaces instance in the global scope (the global scope is used for 
                            // fallback support of old module definitions).
                            if (name === 'jse') {
                                // Modify the engine object with Namespace attributes.
                                _convertEngineToNamespace(source, collections);
                            } else {
                                window[name] = new jse.constructors.Namespace(name, source, collections);
                            }

                            pageNamespaceNames.push(name);
                            node.removeAttribute(attribute.name);
                        }
                    }
                } catch (err) {
                    _didIteratorError3 = true;
                    _iteratorError3 = err;
                } finally {
                    try {
                        if (!_iteratorNormalCompletion3 && _iterator3.return) {
                            _iterator3.return();
                        }
                    } finally {
                        if (_didIteratorError3) {
                            throw _iteratorError3;
                        }
                    }
                }
            }

            // Throw an error if no namespaces were found.
        } catch (err) {
            _didIteratorError = true;
            _iteratorError = err;
        } finally {
            try {
                if (!_iteratorNormalCompletion && _iterator.return) {
                    _iterator.return();
                }
            } finally {
                if (_didIteratorError) {
                    throw _iteratorError;
                }
            }
        }

        if (pageNamespaceNames.length === 0) {
            throw new Error('No module namespaces were found, without namespaces it is not possible to ' + 'load any modules.');
        }

        // Initialize the namespace instances.
        var deferredCollection = [];

        var _iteratorNormalCompletion2 = true;
        var _didIteratorError2 = false;
        var _iteratorError2 = undefined;

        try {
            var _loop = function _loop() {
                var name = _step2.value;

                var deferred = $.Deferred();

                deferredCollection.push(deferred);

                window[name].init().done(deferred.resolve).fail(deferred.reject).always(function () {
                    return jse.core.debug.info('Namespace promises were resolved: ', name);
                });
            };

            for (var _iterator2 = pageNamespaceNames[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
                _loop();
            }

            // Trigger an event after the engine has initialized all new modules.
        } catch (err) {
            _didIteratorError2 = true;
            _iteratorError2 = err;
        } finally {
            try {
                if (!_iteratorNormalCompletion2 && _iterator2.return) {
                    _iterator2.return();
                }
            } finally {
                if (_didIteratorError2) {
                    throw _iteratorError2;
                }
            }
        }

        $.when.apply(undefined, deferredCollection).always(function () {
            var event = document.createEvent('Event');
            event.initEvent('JSENGINE_INIT_FINISHED', true, true);
            document.querySelector('body').dispatchEvent(event);
            jse.core.registry.set('jseEndTime', new Date().getTime());
            jse.core.debug.info('JS Engine Loading Time: ', jse.core.registry.get('jseEndTime') - jse.core.registry.get('jseStartTime'), 'ms');
            if (window.Cypress) {
                window.jseReady = true;
            }
        });

        return pageNamespaceNames;
    }

    /**
     * Convert the "jse" object to a Namespace compatible object.
     *
     * In order to support the "jse" namespace name for the core modules placed in the "JSEngine"
     * directory, we will need to modify the already existing "jse" object so that it can operate
     * as a namespace without losing its initial attributes.
     *
     * @param {String} source Namespace source path for the module files.
     * @param {Array} collections Contain instances to the prototype collection instances.
     *
     * @private
     */
    function _convertEngineToNamespace(source, collections) {
        var tmpNamespace = new jse.constructors.Namespace('jse', source, collections);
        jse.name = tmpNamespace.name;
        jse.source = tmpNamespace.source;
        jse.collections = tmpNamespace.collections;
        jse.init = jse.constructors.Namespace.prototype.init;
    }

    // ------------------------------------------------------------------------
    // PUBLIC FUNCTIONS
    // ------------------------------------------------------------------------

    /**
     * Initialize the engine.
     *
     * @param {Array} collections Contains the supported module collection data.
     */
    exports.init = function (collections) {
        // Global error handler that executes if an uncaught JS error occurs on page.
        jse.core.debug.bindGlobalErrorHandler();

        // Initialize the page namespaces.
        var pageNamespaceNames = _initNamespaces(collections);

        // Log the page namespaces (for debugging only).
        jse.core.debug.info('Page Namespaces: ' + pageNamespaceNames.join());

        // Update the engine registry.
        jse.core.registry.set('namespaces', pageNamespaceNames);
    };
})(jse.core.engine);

},{}],9:[function(require,module,exports){
'use strict';

/* --------------------------------------------------------------
 extensions.js 2017-03-03
 Gambio GmbH
 http://www.gambio.de
 Copyright (c) 2017 Gambio GmbH
 Released under the GNU General Public License (Version 2)
 [http://www.gnu.org/licenses/gpl-2.0.html]
 --------------------------------------------------------------
 */

/**
 * JSE Extensions
 *
 * Extend the default behaviour of engine components or external plugins before they are loaded.
 *
 * @module JSE/Core/extend
 */
(function () {

    'use strict';

    // ------------------------------------------------------------------------
    // PARSE MODULE DATA JQUERY EXTENSION
    // ------------------------------------------------------------------------

    $.fn.extend({
        parseModuleData: function parseModuleData(moduleName) {
            if (!moduleName || moduleName === '') {
                throw new Error('Module name was not provided as an argument.');
            }

            var initialData = $(this).data();
            var filteredData = {};

            // Searches for module relevant data inside the main-data-object. Data for other widgets will not get 
            // passed to this widget.
            $.each(initialData, function (key, value) {
                if (key.indexOf(moduleName) === 0 || key.indexOf(moduleName.toLowerCase()) === 0) {
                    var newKey = key.substr(moduleName.length);
                    newKey = newKey.substr(0, 1).toLowerCase() + newKey.substr(1);
                    filteredData[newKey] = value;
                }
            });

            return filteredData;
        }
    });

    // ------------------------------------------------------------------------
    // DATEPICKER REGIONAL INFO
    // ------------------------------------------------------------------------

    if ($.datepicker !== undefined) {
        $.datepicker.regional.de = {
            dateFormat: 'dd.mm.yy',
            firstDay: 1,
            isRTL: false
        };
        $.datepicker.setDefaults($.datepicker.regional.de);
    }
})();

},{}],10:[function(require,module,exports){
/* --------------------------------------------------------------
 initialize.js 2016-09-08
 Gambio GmbH
 http://www.gambio.de
 Copyright (c) 2016 Gambio GmbH
 Released under the GNU General Public License (Version 2)
 [http://www.gnu.org/licenses/gpl-2.0.html]
 --------------------------------------------------------------
 */

'use strict';

/**
 * JSE Initialization Module
 *
 * The document-ready event of the page will trigger the JavaScript Engine initialization. The
 * engine requires a global configuration object "window.JSEngineConfiguration" to be pre-defined
 * in order to retrieve the basic configuration info. After a successful initialization this object
 * is removed from the window object.
 *
 * ### Configuration Sample
 *
 * ```js
 * window.JSEngineConfiguration = {
 *   environment: 'production',
 *   appUrl: 'http://app.com',
 *   collections: [
 *     {name: 'controllers', attribute: 'controller'}
 *   ],  
 *   translations: {
 *     'sectionName': { 'translationKey': 'translationValue' },
 *     'anotherSection': { ... }
 *   },
 *   languageCode: 'en',
 *   pageToken: '9asd7f9879sd8f79s98s7d98f'
 * };
 * ```
 *
 * @module JSE/Core/initialize
 */

// Initialize base engine object. Every other part of the engine will refer to this
// central object for the core operations.

window.jse = {
    core: {},
    libs: {},
    constructors: {}
};

// Initialize the engine on window load. 
document.addEventListener('DOMContentLoaded', function () {
    try {
        // Check if global JSEngineConfiguration object is defined.
        if (window.JSEngineConfiguration === undefined) {
            throw new Error('The "window.JSEngineConfiguration" object is not defined in the global scope. ' + 'This object is required by the engine upon its initialization.');
        }

        // Parse JSEngineConfiguration object.
        jse.core.config.init(window.JSEngineConfiguration);

        // Store the JSE start time in registry (profiling). 
        jse.core.registry.set('jseStartTime', Date.now());

        // Initialize the module collections.
        jse.core.engine.init(jse.core.config.get('collections'));
    } catch (exception) {
        jse.core.debug.error('Unexpected error during JS Engine initialization!', exception);
        // Inform the engine about the exception.
        var event = document.createEvent('CustomEvent');
        event.initCustomEvent('error', true, true, exception);
        window.dispatchEvent(event);
    }

    SVGInject.setOptions({
        onFail: function onFail(img, svg) {
            img.classList.remove('svg--inject'); // if injection fails show the img element
        }
    });
    // inject images with an .svg file ending
    SVGInject(document.querySelectorAll('img.svg--inject'), {
        onAllFinish: function onAllFinish() {
            // the SVG injection has finished for all three images

        }
    });
});

},{}],11:[function(require,module,exports){
'use strict';

var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };

/* --------------------------------------------------------------
 lang.js 2016-08-23
 Gambio GmbH
 http://www.gambio.de
 Copyright (c) 2016 Gambio GmbH
 Released under the GNU General Public License (Version 2)
 [http://www.gnu.org/licenses/gpl-2.0.html]
 --------------------------------------------------------------
 */

jse.core.lang = jse.core.lang || {};

/**
 * JSE Localization Library
 *
 * The global Lang object contains language information that can be easily used in your
 * JavaScript code. The object contains constance translations and dynamic sections that
 * can be loaded and used in different page.
 *
 * #### Important
 * The engine will automatically load translation sections that are present in the
 * `window.JSEngineConfiguration.translations` property upon initialization. For more
 * information look at the "core/initialize" page of documentation reference.
 *
 * ```javascript
 * jse.core.lang.addSection('sectionName', { translationKey: 'translationValue' }); // Add translation section.
 * jse.core.translate('translationKey', 'sectionName'); // Get the translated string.
 * jse.core.getSections(); // returns array with sections e.g. ['admin_buttons', 'general']
 * ```
 *
 * @module JSE/Core/lang
 */
(function (exports) {

    'use strict';

    // ------------------------------------------------------------------------
    // VARIABLES
    // ------------------------------------------------------------------------

    /**
     * Contains various translation sections.
     *
     * @type {Object}
     */

    var sections = {};

    // ------------------------------------------------------------------------
    // PUBLIC METHODS
    // ------------------------------------------------------------------------

    /**
     * Add a translation section.
     *
     * @param {String} name Name of the section, used later for accessing translation strings.
     * @param {Object} translations Key - value object containing the translations.
     *
     * @throws {Error} If "name" or "translations" arguments are invalid.
     */
    exports.addSection = function (name, translations) {
        if (typeof name !== 'string' || (typeof translations === 'undefined' ? 'undefined' : _typeof(translations)) !== 'object' || translations === null) {
            throw new Error('window.gx.core.lang.addSection: Invalid arguments provided (name: ' + (typeof name === 'undefined' ? 'undefined' : _typeof(name)) + ', ' + ('translations: ' + (typeof translations === 'undefined' ? 'undefined' : _typeof(translations)) + ').'));
        }
        sections[name] = translations;
    };

    /**
     * Get loaded translation sections.
     *
     * Useful for asserting present translation sections.
     *
     * @return {Array} Returns array with the existing sections.
     */
    exports.getSections = function () {
        var result = [];

        for (var section in sections) {
            result.push(section);
        }

        return result;
    };

    /**
     * Translate string in Javascript code.
     *
     * @param {String} phrase Name of the phrase containing the translation.
     * @param {String} section Section name containing the translation string.
     *
     * @return {String} Returns the translated string.
     *
     * @throws {Error} If provided arguments are invalid.
     * @throws {Error} If required section does not exist or translation could not be found.
     */
    exports.translate = function (phrase, section) {
        // Validate provided arguments.
        if (typeof phrase !== 'string' || typeof section !== 'string') {
            throw new Error('Invalid arguments provided in translate method (phrase: ' + (typeof phrase === 'undefined' ? 'undefined' : _typeof(phrase)) + ', ' + ('section: ' + (typeof section === 'undefined' ? 'undefined' : _typeof(section)) + ').'));
        }

        // Check if translation exists.
        if (sections[section] === undefined || sections[section][phrase] === undefined) {
            jse.core.debug.warn('Could not found requested translation (phrase: ' + phrase + ', section: ' + section + ').');
            return '{' + section + '.' + phrase + '}';
        }

        return sections[section][phrase];
    };
})(jse.core.lang);

},{}],12:[function(require,module,exports){
'use strict';

require('./initialize');

require('../constructors/collection');

require('../constructors/data_binding');

require('../constructors/module');

require('../constructors/namespace');

require('./about');

require('./config');

require('./debug');

require('./engine');

require('./extend');

require('./lang');

require('./require');

require('./module_loader');

require('./polyfills');

require('./registry');

require('./vue');

},{"../constructors/collection":1,"../constructors/data_binding":2,"../constructors/module":3,"../constructors/namespace":4,"./about":5,"./config":6,"./debug":7,"./engine":8,"./extend":9,"./initialize":10,"./lang":11,"./module_loader":13,"./polyfills":14,"./registry":15,"./require":16,"./vue":17}],13:[function(require,module,exports){
'use strict';

/* --------------------------------------------------------------
 module_loader.js 2018-09-12
 Gambio GmbH
 http://www.gambio.de
 Copyright (c) 2016 Gambio GmbH
 Released under the GNU General Public License (Version 2)
 [http://www.gnu.org/licenses/gpl-2.0.html]
 --------------------------------------------------------------
 */

jse.core.module_loader = jse.core.module_loader || {};

/**
 * JSE Module Loader
 *
 * This object is an adapter between the engine and RequireJS which is used to load the required files
 * into the client.
 *
 * @module JSE/Core/module_loader
 */
(function (exports) {

    'use strict';

    // ------------------------------------------------------------------------
    // PRIVATE METHODS
    // ------------------------------------------------------------------------

    /**
     * Load CSS file.
     *
     * @param {String} url Absolute URL of the CSS file to be loaded.
     *
     * @private
     */

    function _loadCss(url) {
        var link = document.createElement('link');
        link.type = 'text/css';
        link.rel = 'stylesheet';
        link.href = url;
        document.getElementsByTagName('head')[0].appendChild(link);
    }

    // ------------------------------------------------------------------------
    // PUBLIC METHODS
    // ------------------------------------------------------------------------

    /**
     * Initialize the module loader.
     *
     * Execute this method after the engine config is initialized. It will configure require.js
     * so that it will be able to find the project files.
     *
     * The cache busting method will try to create a number based on the current shop version.
     */
    exports.init = function () {
        var cacheBust = '';

        if (jse.core.config.get('environment') === 'production' && jse.core.config.get('bustFiles') === false && jse.core.config.get('cacheToken')) {
            cacheBust = 'bust=' + jse.core.config.get('cacheToken');
        }

        var config = {
            baseUrl: jse.core.config.get('appUrl'),
            urlArgs: cacheBust,
            onError: function onError(error) {
                jse.core.debug.error('RequireJS Error:', error);
            }
        };

        window.require.config(config);
    };

    /**
     * Require JS and CSS files .
     *
     * Notice: There's no concrete way to determine when CSS dependencies are loaded.
     *
     * @param {String[]} dependencies Dependency URLs.
     * @param {Function} callback Callback method to be called once the dependencies are loaded.
     */
    exports.require = function (dependencies, callback) {
        var _iteratorNormalCompletion = true;
        var _didIteratorError = false;
        var _iteratorError = undefined;

        try {
            for (var _iterator = dependencies[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
                var dependency = _step.value;

                if (dependency.includes('.css')) {
                    _loadCss(dependency);
                    var index = dependencies.indexOf(dependency);
                    dependencies.splice(index, 1);
                }
            }
        } catch (err) {
            _didIteratorError = true;
            _iteratorError = err;
        } finally {
            try {
                if (!_iteratorNormalCompletion && _iterator.return) {
                    _iterator.return();
                }
            } finally {
                if (_didIteratorError) {
                    throw _iteratorError;
                }
            }
        }

        if (dependencies.length === 0) {
            callback();
        } else {
            window.require(dependencies, callback);
        }
    };

    /**
     * Load a module file with the use of requirejs.
     *
     * @param {Object} $element Selector of the element which has the module definition.
     * @param {String} name Module name to be loaded. Modules have the same names as their files.
     * @param {Object} collection Current collection instance.
     *
     * @return {Object} Returns a promise object to be resolved with the module instance as a parameter.
     */
    exports.load = function ($element, name, collection) {
        var deferred = $.Deferred();

        try {
            if (name === '') {
                deferred.reject(new Error('Module name cannot be empty.'));
            }

            var baseModuleName = name.replace(/.*\/(.*)$/, '$1'); // Name without the parent directories.

            // Try to load the cached instance of the module.
            var cached = collection.cache.modules[baseModuleName];
            if (cached && cached.code === 'function') {
                deferred.resolve(new jse.constructors.Module($element, baseModuleName, collection));
                return true; // continue loop
            }

            var bustSuffix = '';
            if (jse.core.config.get('environment') === 'production' && jse.core.config.get('bustFiles') && jse.core.config.get('cacheToken')) {
                bustSuffix = '-bust_' + jse.core.config.get('cacheToken');
            }

            // Try to load the module file from the server.
            var fileExtension = jse.core.config.get('debug') !== 'DEBUG' ? '.min.js' : '.js';
            var url = collection.namespace.source + '/' + collection.name + '/' + name + bustSuffix + fileExtension;

            window.require([url], function () {
                if (collection.cache.modules[baseModuleName] === undefined) {
                    throw new Error('Module "' + name + '" wasn\'t defined correctly. Check the module code for ' + 'further troubleshooting.');
                }

                // Use the slice method for copying the array. 
                var dependencies = collection.cache.modules[baseModuleName].dependencies.slice();

                if (dependencies.length === 0) {
                    // no dependencies
                    deferred.resolve(new jse.constructors.Module($element, baseModuleName, collection));
                    return true; // continue loop
                }

                // Load the dependencies first.
                for (var index in dependencies) {
                    var dependency = dependencies[index];

                    if (dependency.indexOf('.css') !== -1) {
                        _loadCss(dependency);
                        dependencies.splice(index, 1);
                        continue;
                    }

                    // Then convert the relative path to JSEngine/libs directory.
                    if (dependency.indexOf('http') === -1) {
                        dependencies[index] = jse.core.config.get('engineUrl') + '/libs/' + dependency + bustSuffix + fileExtension;
                    } else if (dependency.substr(-3) !== '.js') {
                        // Then add the dynamic file extension to the URL.
                        dependencies[index] += bustSuffix + fileExtension;
                    }
                }

                window.require(dependencies, function () {
                    deferred.resolve(new jse.constructors.Module($element, baseModuleName, collection));
                });
            });
        } catch (exception) {
            deferred.reject(exception);
        }

        return deferred.promise();
    };
})(jse.core.module_loader);

},{}],14:[function(require,module,exports){
'use strict';

/* --------------------------------------------------------------
 polyfills.js 2016-05-17
 Gambio GmbH
 http://www.gambio.de
 Copyright (c) 2016 Gambio GmbH
 Released under the GNU General Public License (Version 2)
 [http://www.gnu.org/licenses/gpl-2.0.html]
 --------------------------------------------------------------
 */

/**
 * JSE Polyfills
 *
 * Required polyfills for compatibility among old browsers.
 *
 * @module JSE/Core/polyfills
 */
(function () {

    'use strict';

    // Internet Explorer does not support the origin property of the window.location object.
    // {@link http://tosbourn.com/a-fix-for-window-location-origin-in-internet-explorer}

    if (!window.location.origin) {
        window.location.origin = window.location.protocol + '//' + window.location.hostname + (window.location.port ? ':' + window.location.port : '');
    }

    // Date.now method polyfill
    // {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/now}
    if (!Date.now) {
        Date.now = function now() {
            return new Date().getTime();
        };
    }
})();

},{}],15:[function(require,module,exports){
'use strict';

/* --------------------------------------------------------------
 registry.js 2016-09-08
 Gambio GmbH
 http://www.gambio.de
 Copyright (c) 2016 Gambio GmbH
 Released under the GNU General Public License (Version 2)
 [http://www.gnu.org/licenses/gpl-2.0.html]
 --------------------------------------------------------------
 */

jse.core.registry = jse.core.registry || {};

/**
 * JS Engine Registry
 *
 * This object contains string data that other sections of the engine need in order to operate correctly.
 *
 * @module JSE/Core/registry
 */
(function (exports) {

    'use strict';

    /**
     * Contains the registry values.
     *
     * @type {Object[]}
     */

    var registry = [];

    /**
     * Set a value in the registry.
     *
     * @param {String} name Contains the name of the entry to be added.
     * @param {*} value The value to be written in the registry.
     */
    exports.set = function (name, value) {
        // If a registry entry with the same name exists already the following console warning will
        // inform developers that they are overwriting an existing value, something useful when debugging.
        if (registry[name] !== undefined) {
            jse.core.debug.warn('The registry value with the name "' + name + '" will be overwritten.');
        }

        registry[name] = value;
    };

    /**
     * Get a value from the registry.
     *
     * @param {String} name The name of the entry value to be returned.
     *
     * @returns {*} Returns the value that matches the name.
     */
    exports.get = function (name) {
        return registry[name];
    };

    /**
     * Check the current content of the registry object.
     *
     * This method is only available when the engine environment is turned into development.
     */
    exports.debug = function () {
        if (jse.core.config.get('environment') === 'development') {
            jse.core.debug.log('Registry Object:', registry);
        } else {
            throw new Error('This function is not allowed in a production environment.');
        }
    };
})(jse.core.registry);

},{}],16:[function(require,module,exports){
(function (global){
'use strict';

var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };

/* --------------------------------------------------------------
 require.js 2017-03-28
 Gambio GmbH
 http://www.gambio.de
 Copyright (c) 2017 Gambio GmbH
 Released under the GNU General Public License (Version 2)
 [http://www.gnu.org/licenses/gpl-2.0.html]
 --------------------------------------------------------------
 */

/**
 * Asynchronous Module Loading
 *
 * This module is a fork of RequireJS without the AMD functionality. The global "define" method is removed as
 * it's not necessary by JS Engine.
 *
 * {@link https://github.com/requirejs/requirejs}
 *
 * Not using strict: uneven strict support in browsers, #392, and causes problems with requirejs.exec()/transpiler
 * plugins that may not be strict.
 */
(function () {

    // ------------------------------------------------------------------------
    // VARIABLES
    // ------------------------------------------------------------------------ 

    window.requirejs = undefined;
    window.require = undefined;

    var req = void 0;
    var s = void 0;
    var head = void 0;
    var baseElement = void 0;
    var dataMain = void 0;
    var src = void 0;
    var interactiveScript = void 0;
    var mainScript = void 0;
    var subPath = void 0;
    var version = '2.1.22';
    var jsSuffixRegExp = /\.js$/;
    var currDirRegExp = /^\.\//;
    var op = Object.prototype;
    var ostring = op.toString;
    var hasOwn = op.hasOwnProperty;
    var isBrowser = !!(typeof window !== 'undefined' && typeof navigator !== 'undefined' && window.document);
    var isWebWorker = !isBrowser && typeof importScripts !== 'undefined';
    // PS3 indicates loaded and complete, but need to wait for complet specifically. Sequence is 'loading', 'loaded', 
    // execution then 'complete'. The UA check is unfortunate, but not sure how to feature test w/o causing perf issues.
    var readyRegExp = isBrowser && navigator.platform === 'PLAYSTATION 3' ? /^complete$/ : /^(complete|loaded)$/;
    var defContextName = '_';
    // Oh the tragedy, detecting opera. See the usage of isOpera for reason.
    var isOpera = typeof opera !== 'undefined' && opera.toString() === '[object Opera]';
    var contexts = {};
    var cfg = {};
    var globalDefQueue = [];
    var useInteractive = false;

    // ------------------------------------------------------------------------
    // FUNCTIONS
    // ------------------------------------------------------------------------ 

    /**
     * Check whether value is a function.
     *
     * @param {*} it Value to be checked.
     *
     * @return {boolean} Returns the validation result.
     */
    function isFunction(it) {
        return ostring.call(it) === '[object Function]';
    }

    /**
     * Check whether value is an array.
     *
     * @param {*} it Value to be checked.
     *
     * @return {boolean} Returns the validation result.
     */
    function isArray(it) {
        return ostring.call(it) === '[object Array]';
    }

    /**
     * Helper function for iterating over an array.
     *
     * If the func returns a true value, it will break out of the loop.
     */
    function each(ary, func) {
        if (ary) {
            for (var i = 0; i < ary.length; i += 1) {
                if (ary[i] && func(ary[i], i, ary)) {
                    break;
                }
            }
        }
    }

    /**
     * Helper function for iterating over an array backwards.
     *
     * If the func returns a true value, it will break out of the loop.
     */
    function eachReverse(ary, func) {
        if (ary) {
            var i = void 0;
            for (i = ary.length - 1; i > -1; i -= 1) {
                if (ary[i] && func(ary[i], i, ary)) {
                    break;
                }
            }
        }
    }

    /**
     * Check whether an object has a specific property.
     *
     * @param {Object} obj Object to be checked.
     * @param {String} prop Property name to be checked.
     *
     * @return {Boolean} Returns the validation result.
     */
    function hasProp(obj, prop) {
        return hasOwn.call(obj, prop);
    }

    /**
     * Check if an object has a property and if that property contains a truthy value.
     *
     * @param {Object} obj Object to be checked.
     * @param {String} prop Property name to be checked.
     *
     * @return {Boolean} Returns the validation result.
     */
    function getOwn(obj, prop) {
        return hasProp(obj, prop) && obj[prop];
    }

    /**
     * Cycles over properties in an object and calls a function for each property value.
     *
     * If the function returns a truthy value, then the iteration is stopped.
     */
    function eachProp(obj, func) {
        var prop = void 0;
        for (prop in obj) {
            if (hasProp(obj, prop)) {
                if (func(obj[prop], prop)) {
                    break;
                }
            }
        }
    }

    /**
     * Simple function to mix in properties from source into target, but only if target does not already have a
     * property of the same name.
     */
    function mixin(target, source, force, deepStringMixin) {
        if (source) {
            eachProp(source, function (value, prop) {
                if (force || !hasProp(target, prop)) {
                    if (deepStringMixin && (typeof value === 'undefined' ? 'undefined' : _typeof(value)) === 'object' && value && !isArray(value) && !isFunction(value) && !(value instanceof RegExp)) {

                        if (!target[prop]) {
                            target[prop] = {};
                        }
                        mixin(target[prop], value, force, deepStringMixin);
                    } else {
                        target[prop] = value;
                    }
                }
            });
        }
        return target;
    }

    // Similar to Function.prototype.bind, but the 'this' object is specified first, since it is easier to read/figure 
    // out what 'this' will be.
    function bind(obj, fn) {
        return function () {
            return fn.apply(obj, arguments);
        };
    }

    function scripts() {
        return document.getElementsByTagName('script');
    }

    function defaultOnError(err) {
        throw err;
    }

    // Allow getting a global that is expressed in dot notation, like 'a.b.c'.
    function getGlobal(value) {
        if (!value) {
            return value;
        }
        var g = global;
        each(value.split('.'), function (part) {
            g = g[part];
        });
        return g;
    }

    /**
     * Constructs an error with a pointer to an URL with more information.
     *
     * @param {String} id The error ID that maps to an ID on a web page.
     * @param {String} msg Human readable error.
     * @param {Error} [err] The original error, if there is one.
     *
     * @return {Error}
     */
    function makeError(id, msg, err, requireModules) {
        var error = new Error(msg + '\nhttp://requirejs.org/docs/errors.html#' + id);

        error.requireType = id;
        error.requireModules = requireModules;

        if (err) {
            error.originalError = err;
        }

        return error;
    }

    if (typeof window.requirejs !== 'undefined') {
        if (isFunction(window.requirejs)) {
            // Do not overwrite an existing requirejs instance.
            return;
        }
        cfg = window.requirejs;
        window.requirejs = undefined;
    }

    // Allow for a require config object
    if (typeof window.require !== 'undefined' && !isFunction(window.require)) {
        // assume it is a config object.
        cfg = window.require;
        window.require = undefined;
    }

    function newContext(contextName) {
        var inCheckLoaded = void 0,
            Module = void 0,
            context = void 0,
            handlers = void 0,
            checkLoadedTimeoutId = void 0,
            _config = {
            // Defaults. Do not set a default for map
            // config to speed up normalize(), which
            // will run faster if there is no default.
            waitSeconds: 7,
            baseUrl: './',
            paths: {},
            bundles: {},
            pkgs: {},
            shim: {},
            config: {}
        },
            registry = {},

        // registry of just enabled modules, to speed
        // cycle breaking code when lots of modules
        // are registered, but not activated.
        enabledRegistry = {},
            undefEvents = {},
            defQueue = [],
            _defined = {},
            urlFetched = {},
            bundlesMap = {},
            requireCounter = 1,
            unnormalizedCounter = 1;

        /**
         * Trims the . and .. from an array of path segments.
         *
         * It will keep a leading path segment if a .. will become the first path segment, to help with module name
         * lookups, which act like paths, but can be remapped. But the end result, all paths that use this function
         * should look normalized.
         *
         * NOTE: this method MODIFIES the input array.
         *
         * @param {Array} ary the array of path segments.
         */
        function trimDots(ary) {
            var i = void 0,
                part = void 0;
            for (i = 0; i < ary.length; i++) {
                part = ary[i];
                if (part === '.') {
                    ary.splice(i, 1);
                    i -= 1;
                } else if (part === '..') {
                    // If at the start, or previous value is still ..,  keep them so that when converted to a path it 
                    // may still work when converted to a path, even though as an ID it is less than ideal. In larger 
                    // point releases, may be better to just kick out an error.
                    if (i === 0 || i === 1 && ary[2] === '..' || ary[i - 1] === '..') {
                        continue;
                    } else if (i > 0) {
                        ary.splice(i - 1, 2);
                        i -= 2;
                    }
                }
            }
        }

        /**
         * Given a relative module name, like ./something, normalize it to a real name that can be mapped to a path.
         *
         * @param {String} name the relative name
         * @param {String} baseName a real name that the name arg is relative to.
         * @param {Boolean} applyMap apply the map config to the value. Should only be done if this normalization is
         * for a dependency ID.
         *
         * @return {String} normalized name
         */
        function normalize(name, baseName, applyMap) {
            var pkgMain = void 0,
                mapValue = void 0,
                nameParts = void 0,
                i = void 0,
                j = void 0,
                nameSegment = void 0,
                lastIndex = void 0,
                foundMap = void 0,
                foundI = void 0,
                foundStarMap = void 0,
                starI = void 0,
                normalizedBaseParts = void 0,
                baseParts = baseName && baseName.split('/'),
                map = _config.map,
                starMap = map && map['*'];

            // Adjust any relative paths.
            if (name) {
                name = name.split('/');
                lastIndex = name.length - 1;

                // If wanting node ID compatibility, strip .js from end of IDs. Have to do this here, and not in 
                // nameToUrl because node allows either .js or non .js to map to same file.
                if (_config.nodeIdCompat && jsSuffixRegExp.test(name[lastIndex])) {
                    name[lastIndex] = name[lastIndex].replace(jsSuffixRegExp, '');
                }

                // Starts with a '.' so need the baseName
                if (name[0].charAt(0) === '.' && baseParts) {
                    // Convert baseName to array, and lop off the last part, so that . matches that 'directory' and not 
                    // name of the baseName's module. For instance, baseName of 'one/two/three', maps to 
                    // 'one/two/three.js', but we want the directory, 'one/two' for this normalization.
                    normalizedBaseParts = baseParts.slice(0, baseParts.length - 1);
                    name = normalizedBaseParts.concat(name);
                }

                trimDots(name);
                name = name.join('/');
            }

            // Apply map config if available.
            if (applyMap && map && (baseParts || starMap)) {
                nameParts = name.split('/');

                outerLoop: for (i = nameParts.length; i > 0; i -= 1) {
                    nameSegment = nameParts.slice(0, i).join('/');

                    if (baseParts) {
                        // Find the longest baseName segment match in the config. So, do joins on the biggest to 
                        // smallest lengths of baseParts.
                        for (j = baseParts.length; j > 0; j -= 1) {
                            mapValue = getOwn(map, baseParts.slice(0, j).join('/'));

                            // baseName segment has config, find if it has one for this name.
                            if (mapValue) {
                                mapValue = getOwn(mapValue, nameSegment);
                                if (mapValue) {
                                    // Match, update name to the new value.
                                    foundMap = mapValue;
                                    foundI = i;
                                    break outerLoop;
                                }
                            }
                        }
                    }

                    // Check for a star map match, but just hold on to it, if there is a shorter segment match later in 
                    // a matching config, then favor over this star map.
                    if (!foundStarMap && starMap && getOwn(starMap, nameSegment)) {
                        foundStarMap = getOwn(starMap, nameSegment);
                        starI = i;
                    }
                }

                if (!foundMap && foundStarMap) {
                    foundMap = foundStarMap;
                    foundI = starI;
                }

                if (foundMap) {
                    nameParts.splice(0, foundI, foundMap);
                    name = nameParts.join('/');
                }
            }

            // If the name points to a package's name, use the package main instead.
            pkgMain = getOwn(_config.pkgs, name);

            return pkgMain ? pkgMain : name;
        }

        function removeScript(name) {
            if (isBrowser) {
                each(scripts(), function (scriptNode) {
                    if (scriptNode.getAttribute('data-requiremodule') === name && scriptNode.getAttribute('data-requirecontext') === context.contextName) {
                        scriptNode.parentNode.removeChild(scriptNode);
                        return true;
                    }
                });
            }
        }

        function hasPathFallback(id) {
            var pathConfig = getOwn(_config.paths, id);
            if (pathConfig && isArray(pathConfig) && pathConfig.length > 1) {
                // Pop off the first array value, since it failed, and retry.
                pathConfig.shift();
                context.require.undef(id);

                // Custom require that does not do map translation, since ID is "absolute", already mapped/resolved.
                context.makeRequire(null, {
                    skipMap: true
                })([id]);

                return true;
            }
        }

        // Turns a plugin!resource to [plugin, resource] with the plugin being undefined if the name did not have a 
        // plugin prefix.
        function splitPrefix(name) {
            var prefix = void 0,
                index = name ? name.indexOf('!') : -1;
            if (index > -1) {
                prefix = name.substring(0, index);
                name = name.substring(index + 1, name.length);
            }
            return [prefix, name];
        }

        /**
         * Creates a module mapping that includes plugin prefix, module name, and path. If parentModuleMap is provided
         * it will also normalize the name via require.normalize()
         *
         * @param {String} name The module name.
         * @param {String} [parentModuleMap] Parent module map for the module name, used to resolve relative names.
         * @param {Boolean} isNormalized Is the ID already normalized? This is true if this call is done for a define()
         * module ID.
         * @param {Boolean} applyMap: apply the map config to the ID. Should only be true if this map is for a dependency.
         *
         * @return {Object}
         */
        function makeModuleMap(name, parentModuleMap, isNormalized, applyMap) {
            var url = void 0,
                pluginModule = void 0,
                suffix = void 0,
                nameParts = void 0,
                prefix = null,
                parentName = parentModuleMap ? parentModuleMap.name : null,
                originalName = name,
                isDefine = true,
                normalizedName = '';

            // If no name, then it means it is a require call, generate an
            // internal name.
            if (!name) {
                isDefine = false;
                name = '_@r' + (requireCounter += 1);
            }

            nameParts = splitPrefix(name);
            prefix = nameParts[0];
            name = nameParts[1];

            if (prefix) {
                prefix = normalize(prefix, parentName, applyMap);
                pluginModule = getOwn(_defined, prefix);
            }

            // Account for relative paths if there is a base name.
            if (name) {
                if (prefix) {
                    if (pluginModule && pluginModule.normalize) {
                        // Plugin is loaded, use its normalize method.
                        normalizedName = pluginModule.normalize(name, function (name) {
                            return normalize(name, parentName, applyMap);
                        });
                    } else {
                        // If nested plugin references, then do not try to
                        // normalize, as it will not normalize correctly. This
                        // places a restriction on resourceIds, and the longer
                        // term solution is not to normalize until plugins are
                        // loaded and all normalizations to allow for async
                        // loading of a loader plugin. But for now, fixes the
                        // common uses. Details in #1131
                        normalizedName = name.indexOf('!') === -1 ? normalize(name, parentName, applyMap) : name;
                    }
                } else {
                    // A regular module.
                    normalizedName = normalize(name, parentName, applyMap);

                    // Normalized name may be a plugin ID due to map config
                    // application in normalize. The map config values must
                    // already be normalized, so do not need to redo that part.
                    nameParts = splitPrefix(normalizedName);
                    prefix = nameParts[0];
                    normalizedName = nameParts[1];
                    isNormalized = true;

                    url = context.nameToUrl(normalizedName);
                }
            }

            // If the id is a plugin id that cannot be determined if it needs
            // normalization, stamp it with a unique ID so two matching relative
            // ids that may conflict can be separate.
            suffix = prefix && !pluginModule && !isNormalized ? '_unnormalized' + (unnormalizedCounter += 1) : '';

            return {
                prefix: prefix,
                name: normalizedName,
                parentMap: parentModuleMap,
                unnormalized: !!suffix,
                url: url,
                originalName: originalName,
                isDefine: isDefine,
                id: (prefix ? prefix + '!' + normalizedName : normalizedName) + suffix
            };
        }

        function getModule(depMap) {
            var id = depMap.id,
                mod = getOwn(registry, id);

            if (!mod) {
                mod = registry[id] = new context.Module(depMap);
            }

            return mod;
        }

        function on(depMap, name, fn) {
            var id = depMap.id,
                mod = getOwn(registry, id);

            if (hasProp(_defined, id) && (!mod || mod.defineEmitComplete)) {
                if (name === 'defined') {
                    fn(_defined[id]);
                }
            } else {
                mod = getModule(depMap);
                if (mod.error && name === 'error') {
                    fn(mod.error);
                } else {
                    mod.on(name, fn);
                }
            }
        }

        function onError(err, errback) {
            var ids = err.requireModules,
                notified = false;

            if (errback) {
                errback(err);
            } else {
                each(ids, function (id) {
                    var mod = getOwn(registry, id);
                    if (mod) {
                        // Set error on module, so it skips timeout checks.
                        mod.error = err;
                        if (mod.events.error) {
                            notified = true;
                            mod.emit('error', err);
                        }
                    }
                });

                if (!notified) {
                    req.onError(err);
                }
            }
        }

        /**
         * Internal method to transfer globalQueue items to this context's
         * defQueue.
         */
        function takeGlobalQueue() {
            // Push all the globalDefQueue items into the context's defQueue
            if (globalDefQueue.length) {
                each(globalDefQueue, function (queueItem) {
                    var id = queueItem[0];
                    if (typeof id === 'string') {
                        context.defQueueMap[id] = true;
                    }
                    defQueue.push(queueItem);
                });
                globalDefQueue = [];
            }
        }

        handlers = {
            'require': function require(mod) {
                if (mod.require) {
                    return mod.require;
                } else {
                    return mod.require = context.makeRequire(mod.map);
                }
            },
            'exports': function exports(mod) {
                mod.usingExports = true;
                if (mod.map.isDefine) {
                    if (mod.exports) {
                        return _defined[mod.map.id] = mod.exports;
                    } else {
                        return mod.exports = _defined[mod.map.id] = {};
                    }
                }
            },
            'module': function module(mod) {
                if (mod.module) {
                    return mod.module;
                } else {
                    return mod.module = {
                        id: mod.map.id,
                        uri: mod.map.url,
                        config: function config() {
                            return getOwn(_config.config, mod.map.id) || {};
                        },
                        exports: mod.exports || (mod.exports = {})
                    };
                }
            }
        };

        function cleanRegistry(id) {
            // Clean up machinery used for waiting modules.
            delete registry[id];
            delete enabledRegistry[id];
        }

        function breakCycle(mod, traced, processed) {
            var id = mod.map.id;

            if (mod.error) {
                mod.emit('error', mod.error);
            } else {
                traced[id] = true;
                each(mod.depMaps, function (depMap, i) {
                    var depId = depMap.id,
                        dep = getOwn(registry, depId);

                    // Only force things that have not completed
                    // being defined, so still in the registry,
                    // and only if it has not been matched up
                    // in the module already.
                    if (dep && !mod.depMatched[i] && !processed[depId]) {
                        if (getOwn(traced, depId)) {
                            mod.defineDep(i, _defined[depId]);
                            mod.check(); // pass false?
                        } else {
                            breakCycle(dep, traced, processed);
                        }
                    }
                });
                processed[id] = true;
            }
        }

        function checkLoaded() {
            var err = void 0,
                usingPathFallback = void 0,
                waitInterval = _config.waitSeconds * 1000,

            // It is possible to disable the wait interval by using waitSeconds of 0.
            expired = waitInterval && context.startTime + waitInterval < new Date().getTime(),
                noLoads = [],
                reqCalls = [],
                stillLoading = false,
                needCycleCheck = true;

            // Do not bother if this call was a result of a cycle break.
            if (inCheckLoaded) {
                return;
            }

            inCheckLoaded = true;

            // Figure out the state of all the modules.
            eachProp(enabledRegistry, function (mod) {
                var map = mod.map,
                    modId = map.id;

                // Skip things that are not enabled or in error state.
                if (!mod.enabled) {
                    return;
                }

                if (!map.isDefine) {
                    reqCalls.push(mod);
                }

                if (!mod.error) {
                    // If the module should be executed, and it has not
                    // been inited and time is up, remember it.
                    if (!mod.inited && expired) {
                        if (hasPathFallback(modId)) {
                            usingPathFallback = true;
                            stillLoading = true;
                        } else {
                            noLoads.push(modId);
                            removeScript(modId);
                        }
                    } else if (!mod.inited && mod.fetched && map.isDefine) {
                        stillLoading = true;
                        if (!map.prefix) {
                            // No reason to keep looking for unfinished
                            // loading. If the only stillLoading is a
                            // plugin resource though, keep going,
                            // because it may be that a plugin resource
                            // is waiting on a non-plugin cycle.
                            return needCycleCheck = false;
                        }
                    }
                }
            });

            if (expired && noLoads.length) {
                // If wait time expired, throw error of unloaded modules.
                err = makeError('timeout', 'Load timeout for modules: ' + noLoads, null, noLoads);
                err.contextName = context.contextName;
                return onError(err);
            }

            // Not expired, check for a cycle.
            if (needCycleCheck) {
                each(reqCalls, function (mod) {
                    breakCycle(mod, {}, {});
                });
            }

            // If still waiting on loads, and the waiting load is something
            // other than a plugin resource, or there are still outstanding
            // scripts, then just try back later.
            if ((!expired || usingPathFallback) && stillLoading) {
                // Something is still waiting to load. Wait for it, but only
                // if a timeout is not already in effect.
                if ((isBrowser || isWebWorker) && !checkLoadedTimeoutId) {
                    checkLoadedTimeoutId = setTimeout(function () {
                        checkLoadedTimeoutId = 0;
                        checkLoaded();
                    }, 50);
                }
            }

            inCheckLoaded = false;
        }

        Module = function Module(map) {
            this.events = getOwn(undefEvents, map.id) || {};
            this.map = map;
            this.shim = getOwn(_config.shim, map.id);
            this.depExports = [];
            this.depMaps = [];
            this.depMatched = [];
            this.pluginMaps = {};
            this.depCount = 0;

            /* this.exports this.factory
             this.depMaps = [],
             this.enabled, this.fetched
             */
        };

        Module.prototype = {
            init: function init(depMaps, factory, errback, options) {
                options = options || {};

                // Do not do more inits if already done. Can happen if there
                // are multiple define calls for the same module. That is not
                // a normal, common case, but it is also not unexpected.
                if (this.inited) {
                    return;
                }

                this.factory = factory;

                if (errback) {
                    // Register for errors on this module.
                    this.on('error', errback);
                } else if (this.events.error) {
                    // If no errback already, but there are error listeners
                    // on this module, set up an errback to pass to the deps.
                    errback = bind(this, function (err) {
                        this.emit('error', err);
                    });
                }

                // Do a copy of the dependency array, so that
                // source inputs are not modified. For example
                // "shim" deps are passed in here directly, and
                // doing a direct modification of the depMaps array
                // would affect that config.
                this.depMaps = depMaps && depMaps.slice(0);

                this.errback = errback;

                // Indicate this module has be initialized
                this.inited = true;

                this.ignore = options.ignore;

                // Could have option to init this module in enabled mode,
                // or could have been previously marked as enabled. However,
                // the dependencies are not known until init is called. So
                // if enabled previously, now trigger dependencies as enabled.
                if (options.enabled || this.enabled) {
                    // Enable this module and dependencies.
                    // Will call this.check()
                    this.enable();
                } else {
                    this.check();
                }
            },

            defineDep: function defineDep(i, depExports) {
                // Because of cycles, defined callback for a given
                // export can be called more than once.
                if (!this.depMatched[i]) {
                    this.depMatched[i] = true;
                    this.depCount -= 1;
                    this.depExports[i] = depExports;
                }
            },

            fetch: function fetch() {
                if (this.fetched) {
                    return;
                }
                this.fetched = true;

                context.startTime = new Date().getTime();

                var map = this.map;

                // If the manager is for a plugin managed resource,
                // ask the plugin to load it now.
                if (this.shim) {
                    context.makeRequire(this.map, {
                        enableBuildCallback: true
                    })(this.shim.deps || [], bind(this, function () {
                        return map.prefix ? this.callPlugin() : this.load();
                    }));
                } else {
                    // Regular dependency.
                    return map.prefix ? this.callPlugin() : this.load();
                }
            },

            load: function load() {
                var url = this.map.url;

                // Regular dependency.
                if (!urlFetched[url]) {
                    urlFetched[url] = true;
                    context.load(this.map.id, url);
                }
            },

            /**
             * Checks if the module is ready to define itself, and if so,
             * define it.
             */
            check: function check() {
                if (!this.enabled || this.enabling) {
                    return;
                }

                var err = void 0,
                    cjsModule = void 0,
                    id = this.map.id,
                    depExports = this.depExports,
                    exports = this.exports,
                    factory = this.factory;

                if (!this.inited) {
                    // Only fetch if not already in the defQueue.
                    if (!hasProp(context.defQueueMap, id)) {
                        this.fetch();
                    }
                } else if (this.error) {
                    this.emit('error', this.error);
                } else if (!this.defining) {
                    // The factory could trigger another require call
                    // that would result in checking this module to
                    // define itself again. If already in the process
                    // of doing that, skip this work.
                    this.defining = true;

                    if (this.depCount < 1 && !this.defined) {
                        if (isFunction(factory)) {
                            try {
                                exports = context.execCb(id, factory, depExports, exports);
                            } catch (e) {
                                err = e;
                            }

                            // Favor return value over exports. If node/cjs in play,
                            // then will not have a return value anyway. Favor
                            // module.exports assignment over exports object.
                            if (this.map.isDefine && exports === undefined) {
                                cjsModule = this.module;
                                if (cjsModule) {
                                    exports = cjsModule.exports;
                                } else if (this.usingExports) {
                                    // exports already set the defined value.
                                    exports = this.exports;
                                }
                            }

                            if (err) {
                                // If there is an error listener, favor passing
                                // to that instead of throwing an error. However,
                                // only do it for define()'d  modules. require
                                // errbacks should not be called for failures in
                                // their callbacks (#699). However if a global
                                // onError is set, use that.
                                if (this.events.error && this.map.isDefine || req.onError !== defaultOnError) {
                                    err.requireMap = this.map;
                                    err.requireModules = this.map.isDefine ? [this.map.id] : null;
                                    err.requireType = this.map.isDefine ? 'define' : 'require';
                                    return onError(this.error = err);
                                } else if (typeof console !== 'undefined' && console.error) {
                                    // Log the error for debugging. If promises could be
                                    // used, this would be different, but making do.
                                    console.error(err);
                                } else {
                                    // Do not want to completely lose the error. While this
                                    // will mess up processing and lead to similar results
                                    // as bug 1440, it at least surfaces the error.
                                    req.onError(err);
                                }
                            }
                        } else {
                            // Just a literal value
                            exports = factory;
                        }

                        this.exports = exports;

                        if (this.map.isDefine && !this.ignore) {
                            _defined[id] = exports;

                            if (req.onResourceLoad) {
                                var resLoadMaps = [];
                                each(this.depMaps, function (depMap) {
                                    resLoadMaps.push(depMap.normalizedMap || depMap);
                                });
                                req.onResourceLoad(context, this.map, resLoadMaps);
                            }
                        }

                        // Clean up
                        cleanRegistry(id);

                        this.defined = true;
                    }

                    // Finished the define stage. Allow calling check again
                    // to allow define notifications below in the case of a
                    // cycle.
                    this.defining = false;

                    if (this.defined && !this.defineEmitted) {
                        this.defineEmitted = true;
                        this.emit('defined', this.exports);
                        this.defineEmitComplete = true;
                    }
                }
            },

            callPlugin: function callPlugin() {
                var map = this.map;
                var id = map.id;
                // Map already normalized the prefix.
                var pluginMap = makeModuleMap(map.prefix);

                // Mark this as a dependency for this plugin, so it
                // can be traced for cycles.
                this.depMaps.push(pluginMap);

                on(pluginMap, 'defined', bind(this, function (plugin) {
                    var load = void 0,
                        normalizedMap = void 0,
                        normalizedMod = void 0,
                        bundleId = getOwn(bundlesMap, this.map.id),
                        name = this.map.name,
                        parentName = this.map.parentMap ? this.map.parentMap.name : null,
                        localRequire = context.makeRequire(map.parentMap, {
                        enableBuildCallback: true
                    });

                    // If current map is not normalized, wait for that
                    // normalized name to load instead of continuing.
                    if (this.map.unnormalized) {
                        // Normalize the ID if the plugin allows it.
                        if (plugin.normalize) {
                            name = plugin.normalize(name, function (name) {
                                return normalize(name, parentName, true);
                            }) || '';
                        }

                        // prefix and name should already be normalized, no need
                        // for applying map config again either.
                        normalizedMap = makeModuleMap(map.prefix + '!' + name, this.map.parentMap);
                        on(normalizedMap, 'defined', bind(this, function (value) {
                            this.map.normalizedMap = normalizedMap;
                            this.init([], function () {
                                return value;
                            }, null, {
                                enabled: true,
                                ignore: true
                            });
                        }));

                        normalizedMod = getOwn(registry, normalizedMap.id);
                        if (normalizedMod) {
                            // Mark this as a dependency for this plugin, so it
                            // can be traced for cycles.
                            this.depMaps.push(normalizedMap);

                            if (this.events.error) {
                                normalizedMod.on('error', bind(this, function (err) {
                                    this.emit('error', err);
                                }));
                            }
                            normalizedMod.enable();
                        }

                        return;
                    }

                    // If a paths config, then just load that file instead to
                    // resolve the plugin, as it is built into that paths layer.
                    if (bundleId) {
                        this.map.url = context.nameToUrl(bundleId);
                        this.load();
                        return;
                    }

                    load = bind(this, function (value) {
                        this.init([], function () {
                            return value;
                        }, null, {
                            enabled: true
                        });
                    });

                    load.error = bind(this, function (err) {
                        this.inited = true;
                        this.error = err;
                        err.requireModules = [id];

                        // Remove temp unnormalized modules for this module, since they will never be resolved otherwise 
                        // now.
                        eachProp(registry, function (mod) {
                            if (mod.map.id.indexOf(id + '_unnormalized') === 0) {
                                cleanRegistry(mod.map.id);
                            }
                        });

                        onError(err);
                    });

                    // Allow plugins to load other code without having to know the context or how to 'complete' the 
                    // load.
                    load.fromText = bind(this, function (text, textAlt) {
                        /*jslint evil: true */
                        var moduleName = map.name,
                            moduleMap = makeModuleMap(moduleName),
                            hasInteractive = useInteractive;

                        // As of 2.1.0, support just passing the text, to reinforce fromText only being called once per 
                        // resource. Still support old style of passing moduleName but discard that moduleName in favor 
                        // of the internal ref.
                        if (textAlt) {
                            text = textAlt;
                        }

                        // Turn off interactive script matching for IE for any define calls in the text, then turn it 
                        // back on at the end.
                        if (hasInteractive) {
                            useInteractive = false;
                        }

                        // Prime the system by creating a module instance for it.
                        getModule(moduleMap);

                        // Transfer any config to this other module.
                        if (hasProp(_config.config, id)) {
                            _config.config[moduleName] = _config.config[id];
                        }

                        try {
                            req.exec(text);
                        } catch (e) {
                            return onError(makeError('fromtexteval', 'fromText eval for ' + id + ' failed: ' + e, e, [id]));
                        }

                        if (hasInteractive) {
                            useInteractive = true;
                        }

                        // Mark this as a dependency for the plugin resource.
                        this.depMaps.push(moduleMap);

                        // Support anonymous modules.
                        context.completeLoad(moduleName);

                        // Bind the value of that module to the value for this resource ID.
                        localRequire([moduleName], load);
                    });

                    // Use parentName here since the plugin's name is not reliable, could be some weird string with no 
                    // path that actually wants to reference the parentName's path.
                    plugin.load(map.name, localRequire, load, _config);
                }));

                context.enable(pluginMap, this);
                this.pluginMaps[pluginMap.id] = pluginMap;
            },

            enable: function enable() {
                enabledRegistry[this.map.id] = this;
                this.enabled = true;

                // Set flag mentioning that the module is enabling, so that immediate calls to the defined callbacks for 
                // dependencies do not trigger inadvertent load with the depCount still being zero.
                this.enabling = true;

                // Enable each dependency.
                each(this.depMaps, bind(this, function (depMap, i) {
                    var id = void 0;
                    var mod = void 0;
                    var handler = void 0;

                    if (typeof depMap === 'string') {
                        // Dependency needs to be converted to a depMap and wired up to this module.
                        depMap = makeModuleMap(depMap, this.map.isDefine ? this.map : this.map.parentMap, false, !this.skipMap);
                        this.depMaps[i] = depMap;

                        handler = getOwn(handlers, depMap.id);

                        if (handler) {
                            this.depExports[i] = handler(this);
                            return;
                        }

                        this.depCount += 1;

                        on(depMap, 'defined', bind(this, function (depExports) {
                            if (this.undefed) {
                                return;
                            }
                            this.defineDep(i, depExports);
                            this.check();
                        }));

                        if (this.errback) {
                            on(depMap, 'error', bind(this, this.errback));
                        } else if (this.events.error) {
                            // No direct errback on this module, but something else is listening for errors, so be sure 
                            // to propagate the error correctly.
                            on(depMap, 'error', bind(this, function (err) {
                                this.emit('error', err);
                            }));
                        }
                    }

                    id = depMap.id;
                    mod = registry[id];

                    // Skip special modules like 'require', 'exports', 'module'. Also, don't call enable if it is 
                    // already enabled, important in circular dependency cases.
                    if (!hasProp(handlers, id) && mod && !mod.enabled) {
                        context.enable(depMap, this);
                    }
                }));

                // Enable each plugin that is used in  a dependency.
                eachProp(this.pluginMaps, bind(this, function (pluginMap) {
                    var mod = getOwn(registry, pluginMap.id);
                    if (mod && !mod.enabled) {
                        context.enable(pluginMap, this);
                    }
                }));

                this.enabling = false;

                this.check();
            },

            on: function on(name, cb) {
                var cbs = this.events[name];
                if (!cbs) {
                    cbs = this.events[name] = [];
                }
                cbs.push(cb);
            },

            emit: function emit(name, evt) {
                each(this.events[name], function (cb) {
                    cb(evt);
                });
                if (name === 'error') {
                    // Now that the error handler was triggered, remove the listeners, since this broken Module instance
                    // can stay around for a while in the registry.
                    delete this.events[name];
                }
            }
        };

        function callGetModule(args) {
            // Skip modules already defined.
            if (!hasProp(_defined, args[0])) {
                getModule(makeModuleMap(args[0], null, true)).init(args[1], args[2]);
            }
        }

        function removeListener(node, func, name, ieName) {
            // Favor detachEvent because of IE9 issue, see attachEvent/addEventListener comment elsewhere in this file.
            if (node.detachEvent && !isOpera) {
                // Probably IE. If not it will throw an error, which will be useful to know.
                if (ieName) {
                    node.detachEvent(ieName, func);
                }
            } else {
                node.removeEventListener(name, func, false);
            }
        }

        /**
         * Given an event from a script node, get the requirejs info from it, and then removes the event listeners on
         * the node.
         *
         * @param {Event} evt
         *
         * @return {Object}
         */
        function getScriptData(evt) {
            // Using currentTarget instead of target for Firefox 2.0's sake. Not all old browsers will be supported, but 
            // this one was easy enough to support and still makes sense.
            var node = evt.currentTarget || evt.srcElement;

            // Remove the listeners once here.
            removeListener(node, context.onScriptLoad, 'load', 'onreadystatechange');
            removeListener(node, context.onScriptError, 'error');

            return {
                node: node,
                id: node && node.getAttribute('data-requiremodule')
            };
        }

        function intakeDefines() {
            var args = void 0;

            // Any defined modules in the global queue, intake them now.
            takeGlobalQueue();

            // Make sure any remaining defQueue items get properly processed.
            while (defQueue.length) {
                args = defQueue.shift();
                if (args[0] === null) {
                    return onError(makeError('mismatch', 'Mismatched anonymous define() module: ' + args[args.length - 1]));
                } else {
                    // args are id, deps, factory. Should be normalized by the
                    // define() function.
                    callGetModule(args);
                }
            }
            context.defQueueMap = {};
        }

        context = {
            config: _config,
            contextName: contextName,
            registry: registry,
            defined: _defined,
            urlFetched: urlFetched,
            defQueue: defQueue,
            defQueueMap: {},
            Module: Module,
            makeModuleMap: makeModuleMap,
            nextTick: req.nextTick,
            onError: onError,

            /**
             * Set a configuration for the context.
             *
             * @param {Object} cfg config object to integrate.
             */
            configure: function configure(cfg) {
                // Make sure the baseUrl ends in a slash.
                if (cfg.baseUrl) {
                    if (cfg.baseUrl.charAt(cfg.baseUrl.length - 1) !== '/') {
                        cfg.baseUrl += '/';
                    }
                }

                // Save off the paths since they require special processing, they are additive.
                var shim = _config.shim,
                    objs = {
                    paths: true,
                    bundles: true,
                    config: true,
                    map: true
                };

                eachProp(cfg, function (value, prop) {
                    if (objs[prop]) {
                        if (!_config[prop]) {
                            _config[prop] = {};
                        }
                        mixin(_config[prop], value, true, true);
                    } else {
                        _config[prop] = value;
                    }
                });

                // Reverse map the bundles
                if (cfg.bundles) {
                    eachProp(cfg.bundles, function (value, prop) {
                        each(value, function (v) {
                            if (v !== prop) {
                                bundlesMap[v] = prop;
                            }
                        });
                    });
                }

                // Merge shim
                if (cfg.shim) {
                    eachProp(cfg.shim, function (value, id) {
                        // Normalize the structure
                        if (isArray(value)) {
                            value = {
                                deps: value
                            };
                        }
                        if ((value.exports || value.init) && !value.exportsFn) {
                            value.exportsFn = context.makeShimExports(value);
                        }
                        shim[id] = value;
                    });
                    _config.shim = shim;
                }

                // Adjust packages if necessary.
                if (cfg.packages) {
                    each(cfg.packages, function (pkgObj) {
                        var location = void 0,
                            name = void 0;

                        pkgObj = typeof pkgObj === 'string' ? { name: pkgObj } : pkgObj;

                        name = pkgObj.name;
                        location = pkgObj.location;
                        if (location) {
                            _config.paths[name] = pkgObj.location;
                        }

                        // Save pointer to main module ID for pkg name. Remove leading dot in main, so main paths are 
                        // normalized, and remove any trailing .js, since different package envs have different 
                        // conventions: some use a module name, some use a file name.
                        _config.pkgs[name] = pkgObj.name + '/' + (pkgObj.main || 'main').replace(currDirRegExp, '').replace(jsSuffixRegExp, '');
                    });
                }

                // If there are any "waiting to execute" modules in the registry, update the maps for them, since their 
                // info, like URLs to load, may have changed.
                eachProp(registry, function (mod, id) {
                    // If module already has init called, since it is too late to modify them, and ignore unnormalized 
                    // ones since they are transient.
                    if (!mod.inited && !mod.map.unnormalized) {
                        mod.map = makeModuleMap(id, null, true);
                    }
                });

                // If a deps array or a config callback is specified, then call require with those args. This is useful 
                // when require is defined as a config object before require.js is loaded.
                if (cfg.deps || cfg.callback) {
                    context.require(cfg.deps || [], cfg.callback);
                }
            },

            makeShimExports: function makeShimExports(value) {
                function fn() {
                    var ret = void 0;
                    if (value.init) {
                        ret = value.init.apply(global, arguments);
                    }
                    return ret || value.exports && getGlobal(value.exports);
                }

                return fn;
            },

            makeRequire: function makeRequire(relMap, options) {
                options = options || {};

                function localRequire(deps, callback, errback) {
                    var id = void 0,
                        map = void 0,
                        requireMod = void 0;

                    if (options.enableBuildCallback && callback && isFunction(callback)) {
                        callback.__requireJsBuild = true;
                    }

                    if (typeof deps === 'string') {
                        if (isFunction(callback)) {
                            // Invalid call
                            return onError(makeError('requireargs', 'Invalid require call'), errback);
                        }

                        // If require|exports|module are requested, get the value for them from the special handlers. 
                        // Caveat: this only works while module is being defined.
                        if (relMap && hasProp(handlers, deps)) {
                            return handlers[deps](registry[relMap.id]);
                        }

                        // Synchronous access to one module. If require.get is available (as in the Node adapter), 
                        // prefer that.
                        if (req.get) {
                            return req.get(context, deps, relMap, localRequire);
                        }

                        // Normalize module name, if it contains . or ..
                        map = makeModuleMap(deps, relMap, false, true);
                        id = map.id;

                        if (!hasProp(_defined, id)) {
                            return onError(makeError('notloaded', 'Module name "' + id + '" has not been loaded yet for context: ' + contextName + (relMap ? '' : '. Use require([])')));
                        }
                        return _defined[id];
                    }

                    // Grab defines waiting in the global queue.
                    intakeDefines();

                    // Mark all the dependencies as needing to be loaded.
                    context.nextTick(function () {
                        // Some defines could have been added since the
                        // require call, collect them.
                        intakeDefines();

                        requireMod = getModule(makeModuleMap(null, relMap));

                        // Store if map config should be applied to this require
                        // call for dependencies.
                        requireMod.skipMap = options.skipMap;

                        requireMod.init(deps, callback, errback, {
                            enabled: true
                        });

                        checkLoaded();
                    });

                    return localRequire;
                }

                mixin(localRequire, {
                    isBrowser: isBrowser,

                    /**
                     * Converts a module name + .extension into an URL path.
                     *
                     * *Requires* the use of a module name. It does not support using plain URLs like nameToUrl.
                     */
                    toUrl: function toUrl(moduleNamePlusExt) {
                        var ext = void 0,
                            index = moduleNamePlusExt.lastIndexOf('.'),
                            segment = moduleNamePlusExt.split('/')[0],
                            isRelative = segment === '.' || segment === '..';

                        // Have a file extension alias, and it is not the
                        // dots from a relative path.
                        if (index !== -1 && (!isRelative || index > 1)) {
                            ext = moduleNamePlusExt.substring(index, moduleNamePlusExt.length);
                            moduleNamePlusExt = moduleNamePlusExt.substring(0, index);
                        }

                        return context.nameToUrl(normalize(moduleNamePlusExt, relMap && relMap.id, true), ext, true);
                    },

                    defined: function defined(id) {
                        return hasProp(_defined, makeModuleMap(id, relMap, false, true).id);
                    },

                    specified: function specified(id) {
                        id = makeModuleMap(id, relMap, false, true).id;
                        return hasProp(_defined, id) || hasProp(registry, id);
                    }
                });

                // Only allow undef on top level require calls.
                if (!relMap) {
                    localRequire.undef = function (id) {
                        // Bind any waiting define() calls to this context, fix for #408.
                        takeGlobalQueue();

                        var map = makeModuleMap(id, relMap, true);
                        var mod = getOwn(registry, id);

                        mod.undefed = true;
                        removeScript(id);

                        delete _defined[id];
                        delete urlFetched[map.url];
                        delete undefEvents[id];

                        // Clean queued defines too. Go backwards in array so that the splices do not mess up the 
                        // iteration.
                        eachReverse(defQueue, function (args, i) {
                            if (args[0] === id) {
                                defQueue.splice(i, 1);
                            }
                        });
                        delete context.defQueueMap[id];

                        if (mod) {
                            // Hold on to listeners in case the module will be attempted to be reloaded using a 
                            // different config.
                            if (mod.events.defined) {
                                undefEvents[id] = mod.events;
                            }

                            cleanRegistry(id);
                        }
                    };
                }

                return localRequire;
            },

            /**
             * Called to enable a module if it is still in the registry awaiting enablement. A second arg, parent, the
             * parent module, is passed in for context, when this method is overridden by the optimizer. Not shown here
             * to keep code compact.
             */
            enable: function enable(depMap) {
                var mod = getOwn(registry, depMap.id);
                if (mod) {
                    getModule(depMap).enable();
                }
            },

            /**
             * Internal method used by environment adapters to complete a load event.
             *
             * A load event could be a script load or just a load pass from a synchronous load call.
             *
             * @param {String} moduleName The name of the module to potentially complete.
             */
            completeLoad: function completeLoad(moduleName) {
                var found = void 0;
                var args = void 0;
                var mod = void 0;
                var shim = getOwn(_config.shim, moduleName) || {};
                var shExports = shim.exports;

                takeGlobalQueue();

                while (defQueue.length) {
                    args = defQueue.shift();
                    if (args[0] === null) {
                        args[0] = moduleName;
                        // If already found an anonymous module and bound it to this name, then this is some other anon 
                        // module waiting for its completeLoad to fire.
                        if (found) {
                            break;
                        }
                        found = true;
                    } else if (args[0] === moduleName) {
                        // Found matching define call for this script!
                        found = true;
                    }

                    callGetModule(args);
                }
                context.defQueueMap = {};

                // Do this after the cycle of callGetModule in case the result
                // of those calls/init calls changes the registry.
                mod = getOwn(registry, moduleName);

                if (!found && !hasProp(_defined, moduleName) && mod && !mod.inited) {
                    if (_config.enforceDefine && (!shExports || !getGlobal(shExports))) {
                        if (hasPathFallback(moduleName)) {
                            return;
                        } else {
                            return onError(makeError('nodefine', 'No define call for ' + moduleName, null, [moduleName]));
                        }
                    } else {
                        // A script that does not call define(), so just simulate the call for it.
                        callGetModule([moduleName, shim.deps || [], shim.exportsFn]);
                    }
                }

                checkLoaded();
            },

            /**
             * Converts a module name to a file path.
             *
             * Supports cases where moduleName may actually be just an URL.
             *
             * Note that it **does not** call normalize on the moduleName, it is assumed to have already been
             * normalized. This is an internal API, not a public one. Use toUrl for the public API.
             */
            nameToUrl: function nameToUrl(moduleName, ext, skipExt) {
                var paths = void 0;
                var syms = void 0;
                var i = void 0;
                var parentModule = void 0;
                var url = void 0;
                var parentPath = void 0,
                    bundleId = void 0;
                var pkgMain = getOwn(_config.pkgs, moduleName);

                if (pkgMain) {
                    moduleName = pkgMain;
                }

                bundleId = getOwn(bundlesMap, moduleName);

                if (bundleId) {
                    return context.nameToUrl(bundleId, ext, skipExt);
                }

                // If a colon is in the URL, it indicates a protocol is used and it is just an URL to a file, or if it 
                // starts with a slash, contains a query arg (i.e. ?) or ends with .js, then assume the user meant to 
                // use an url and not a module id. The slash is important for protocol-less URLs as well as full paths.
                if (req.jsExtRegExp.test(moduleName)) {
                    // Just a plain path, not module name lookup, so just return it. Add extension if it is included. 
                    // This is a bit wonky, only non-.js things pass an extension, this method probably needs to be 
                    // reworked.
                    url = moduleName + (ext || '');
                } else {
                    // A module that needs to be converted to a path.
                    paths = _config.paths;

                    syms = moduleName.split('/');
                    // For each module name segment, see if there is a path registered for it. Start with most specific 
                    // name and work up from it.
                    for (i = syms.length; i > 0; i -= 1) {
                        parentModule = syms.slice(0, i).join('/');

                        parentPath = getOwn(paths, parentModule);
                        if (parentPath) {
                            // If an array, it means there are a few choices, Choose the one that is desired.
                            if (isArray(parentPath)) {
                                parentPath = parentPath[0];
                            }
                            syms.splice(0, i, parentPath);
                            break;
                        }
                    }

                    // Join the path parts together, then figure out if baseUrl is needed.
                    url = syms.join('/');
                    url += ext || (/^data\:|\?/.test(url) || skipExt ? '' : '.js');
                    url = (url.charAt(0) === '/' || url.match(/^[\w\+\.\-]+:/) ? '' : _config.baseUrl) + url;
                }

                return _config.urlArgs ? url + ((url.indexOf('?') === -1 ? '?' : '&') + _config.urlArgs) : url;
            },

            // Delegates to req.load. Broken out as a separate function to allow overriding in the optimizer.
            load: function load(id, url) {
                req.load(context, id, url);
            },

            /**
             * Executes a module callback function.
             *
             * Broken out as a separate function solely to allow the build system to sequence the files in the built
             * layer in the right sequence.
             *
             * @private
             */
            execCb: function execCb(name, callback, args, exports) {
                return callback.apply(exports, args);
            },

            /**
             * Callback for script loads, used to check status of loading.
             *
             * @param {Event} evt the event from the browser for the script that was loaded.
             */
            onScriptLoad: function onScriptLoad(evt) {
                // Using currentTarget instead of target for Firefox 2.0's sake. Not
                // all old browsers will be supported, but this one was easy enough
                // to support and still makes sense.
                if (evt.type === 'load' || readyRegExp.test((evt.currentTarget || evt.srcElement).readyState)) {
                    // Reset interactive script so a script node is not held onto for
                    // to long.
                    interactiveScript = null;

                    // Pull out the name of the module and the context.
                    var data = getScriptData(evt);
                    context.completeLoad(data.id);
                }
            },

            /**
             * Callback for script errors.
             */
            onScriptError: function onScriptError(evt) {
                var data = getScriptData(evt);
                if (!hasPathFallback(data.id)) {
                    var parents = [];
                    eachProp(registry, function (value, key) {
                        if (key.indexOf('_@r') !== 0) {
                            each(value.depMaps, function (depMap) {
                                if (depMap.id === data.id) {
                                    parents.push(key);
                                }
                                return true;
                            });
                        }
                    });
                    return onError(makeError('scripterror', 'Script error for "' + data.id + (parents.length ? '", needed by: ' + parents.join(', ') : '"'), evt, [data.id]));
                }
            }
        };

        context.require = context.makeRequire();
        return context;
    }

    /**
     * Main entry point.
     *
     * If the only argument to require is a string, then the module that is represented by that string is fetched for
     * the appropriate context.
     *
     * If the first argument is an array, then it will be treated as an array of dependency string names to fetch. An
     * optional function callback can be specified to execute when all of those dependencies are available.
     *
     * Make a local req variable to help Caja compliance (it assumes things on a require that are not standardized),
     * and to give a short name for minification/local scope use.
     */
    req = window.requirejs = function (deps, callback, errback, optional) {
        // Find the right context, use default
        var context = void 0;
        var config = void 0;
        var contextName = defContextName;

        // Determine if have config object in the call.
        if (!isArray(deps) && typeof deps !== 'string') {
            // deps is a config object
            config = deps;
            if (isArray(callback)) {
                // Adjust args if there are dependencies
                deps = callback;
                callback = errback;
                errback = optional;
            } else {
                deps = [];
            }
        }

        if (config && config.context) {
            contextName = config.context;
        }

        context = getOwn(contexts, contextName);
        if (!context) {
            context = contexts[contextName] = req.s.newContext(contextName);
        }

        if (config) {
            context.configure(config);
        }

        return context.require(deps, callback, errback);
    };

    /**
     * Support require.config() to make it easier to cooperate with other AMD loaders on globally agreed names.
     */
    req.config = function (config) {
        return req(config);
    };

    /**
     * Execute something after the current tick of the event loop.
     *
     * Override for other envs that have a better solution than setTimeout.
     *
     * @param  {Function} fn function to execute later.
     */
    req.nextTick = typeof setTimeout !== 'undefined' ? function (fn) {
        setTimeout(fn, 4);
    } : function (fn) {
        fn();
    };

    /**
     * Export require as a global, but only if it does not already exist.
     */
    if (!window.require) {
        window.require = req;
    }

    req.version = version;

    // Used to filter out dependencies that are already paths.
    req.jsExtRegExp = /^\/|:|\?|\.js$/;
    req.isBrowser = isBrowser;
    s = req.s = {
        contexts: contexts,
        newContext: newContext
    };

    // Create default context.
    req({});

    // Exports some context-sensitive methods on global require.
    each(['toUrl', 'undef', 'defined', 'specified'], function (prop) {
        //  Reference from contexts instead of early binding to default context,
        // so that during builds, the latest instance of the default context
        // with its config gets used.
        req[prop] = function () {
            var ctx = contexts[defContextName];
            return ctx.require[prop].apply(ctx, arguments);
        };
    });

    if (isBrowser) {
        head = s.head = document.getElementsByTagName('head')[0];
        // If BASE tag is in play, using appendChild is a problem for IE6.
        // When that browser dies, this can be removed. Details in this jQuery bug:
        // http://dev.jquery.com/ticket/2709
        baseElement = document.getElementsByTagName('base')[0];
        if (baseElement) {
            head = s.head = baseElement.parentNode;
        }
    }

    /**
     * Any errors that require explicitly generates will be passed to this function.
     *
     * Intercept/override it if you want custom error handling.
     *
     * @param {Error} err the error object.
     */
    req.onError = defaultOnError;

    /**
     * Creates the node for the load command. Only used in browser envs.
     */
    req.createNode = function (config, moduleName, url) {
        var node = config.xhtml ? document.createElementNS('http://www.w3.org/1999/xhtml', 'html:script') : document.createElement('script');
        node.type = config.scriptType || 'text/javascript';
        node.charset = 'utf-8';
        node.async = true;
        return node;
    };

    /**
     * Does the request to load a module for the browser case.
     *
     * Make this a separate function to allow other environments to override it.
     *
     * @param {Object} context the require context to find state.
     * @param {String} moduleName the name of the module.
     * @param {Object} url the URL to the module.
     */
    req.load = function (context, moduleName, url) {
        var config = context && context.config || {};
        var node = void 0;

        if (isBrowser) {
            // In the browser so use a script tag
            node = req.createNode(config, moduleName, url);
            if (config.onNodeCreated) {
                config.onNodeCreated(node, config, moduleName, url);
            }

            node.setAttribute('data-requirecontext', context.contextName);
            node.setAttribute('data-requiremodule', moduleName);

            // Set up load listener. Test attachEvent first because IE9 has a subtle issue in its addEventListener and 
            // script onload firings that do not match the behavior of all other browsers with addEventListener support, 
            // which fire the onload event for a script right after the script execution. See:
            // https://connect.microsoft.com/IE/feedback/details/648057/script-onload-event-is-not-fired-immediately-after-script-execution
            // UNFORTUNATELY Opera implements attachEvent but does not follow the script script execution mode.
            if (node.attachEvent &&
            // Check if node.attachEvent is artificially added by custom script or natively supported by browser
            // read https://github.com/jrburke/requirejs/issues/187
            // if we can NOT find [native code] then it must NOT natively supported. in IE8, node.attachEvent does 
            // not have toString(). Note the test for "[native code" with no closing brace, see:
            // https://github.com/jrburke/requirejs/issues/273
            !(node.attachEvent.toString && node.attachEvent.toString().indexOf('[native code') < 0) && !isOpera) {
                // Probably IE. IE (at least 6-8) do not fire script onload right after executing the script, so
                // we cannot tie the anonymous define call to a name. However, IE reports the script as being in 
                // 'interactive' readyState at the time of the define call.
                useInteractive = true;

                node.attachEvent('onreadystatechange', context.onScriptLoad);
                // It would be great to add an error handler here to catch 404s in IE9+. However, onreadystatechange 
                // will fire before the error handler, so that does not help. If addEventListener is used, then IE will 
                // fire error before load, but we cannot use that pathway given the connect.microsoft.com issue 
                // mentioned above about not doing the 'script execute, then fire the script load event listener before 
                // execute next script' that other browsers do. Best hope: IE10 fixes the issues, and then destroys all 
                // installs of IE 6-9.
                // node.attachEvent('onerror', context.onScriptError);
            } else {
                node.addEventListener('load', context.onScriptLoad, false);
                node.addEventListener('error', context.onScriptError, false);
            }
            node.src = url;

            // For some cache cases in IE 6-8, the script executes before the end of the appendChild execution, so to 
            // tie an anonymous define call to the module name (which is stored on the node), hold on to a reference to 
            // this node, but clear after the DOM insertion.
            if (baseElement) {
                head.insertBefore(node, baseElement);
            } else {
                head.appendChild(node);
            }

            return node;
        } else if (isWebWorker) {
            try {
                // In a web worker, use importScripts. This is not a very
                // efficient use of importScripts, importScripts will block until
                // its script is downloaded and evaluated. However, if web workers
                // are in play, the expectation is that a build has been done so
                // that only one script needs to be loaded anyway. This may need
                // to be reevaluated if other use cases become common.
                importScripts(url);

                // Account for anonymous modules
                context.completeLoad(moduleName);
            } catch (e) {
                context.onError(makeError('importscripts', 'importScripts failed for ' + moduleName + ' at ' + url, e, [moduleName]));
            }
        }
    };

    // Look for a data-main script attribute, which could also adjust the baseUrl.
    if (isBrowser && !cfg.skipDataMain) {
        // Figure out baseUrl. Get it from the script tag with require.js in it.
        eachReverse(scripts(), function (script) {
            // Set the 'head' where we can append children by
            // using the script's parent.
            if (!head) {
                head = script.parentNode;
            }

            // Look for a data-main attribute to set main script for the page
            // to load. If it is there, the path to data main becomes the
            // baseUrl, if it is not already set.
            dataMain = script.getAttribute('data-main');
            if (dataMain) {
                // Preserve dataMain in case it is a path (i.e. contains '?')
                mainScript = dataMain;

                // Set final baseUrl if there is not already an explicit one.
                if (!cfg.baseUrl) {
                    // Pull off the directory of data-main for use as the
                    // baseUrl.
                    src = mainScript.split('/');
                    mainScript = src.pop();
                    subPath = src.length ? src.join('/') + '/' : './';

                    cfg.baseUrl = subPath;
                }

                // Strip off any trailing .js since mainScript is now
                // like a module name.
                mainScript = mainScript.replace(jsSuffixRegExp, '');

                // If mainScript is still a path, fall back to dataMain
                if (req.jsExtRegExp.test(mainScript)) {
                    mainScript = dataMain;
                }

                // Put the data-main script in the files to load.
                cfg.deps = cfg.deps ? cfg.deps.concat(mainScript) : [mainScript];

                return true;
            }
        });
    }

    /**
     * Executes the text. Normally just uses eval, but can be modified to use a better, environment-specific call.
     * Only used for transpiling loader plugins, not for plain JS modules.
     *
     * @param {String} text The text to execute/evaluate.
     */
    req.exec = function (text) {
        /*jslint evil: true */
        return eval(text);
    };

    // Set up with config info.
    req(cfg);
})();

}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})

},{}],17:[function(require,module,exports){
'use strict';

/* --------------------------------------------------------------
 vue.js 2018-06-07
 Gambio GmbH
 http://www.gambio.de
 Copyright (c) 2018 Gambio GmbH
 Released under the GNU General Public License (Version 2)
 [http://www.gnu.org/licenses/gpl-2.0.html]
 --------------------------------------------------------------
 */

jse.core.vue = jse.core.vue || {};

/**
 * JSE Vue Integration
 *
 * Initializes the Vue application for the current page.
 *
 * Vue support is activated if the global JSEngineConfiguration object contains sets the requested values for
 * the integration.
 *
 * ```
 * window.JSEngineConfiguration = {
 *	 environment: 'development',
 *	 appUrl: 'http://example.org',
 *	 appVersion: 'v1.0.0',
 *	 translations: {},
 *	 languageCode: 'en',
 *	 pageToken: 'csrf-protection-token',
 *	 cacheToken: 'cache-busting-token' ,
 *	 vue: {
 *	 	el: '.vue-instance'
 *	 }, 
 *	 collections: [
 *	 	{name: 'controllers', attribute: 'controller'},
 *	 	{name: 'extensions', attribute: 'extension'},
 *	 	{name: 'widgets', attribute: 'widget'},
 *	 	{name: 'compatibility', attribute: 'compatibility'}
 *	 ],
 *	 registry: {} 
 * };
 * ```
 *
 * @module JSE/Core/polyfills
 */
(function (exports) {

    'use strict';

    /**
     * Holds vue instances
     *
     * @type {Object}
     */

    var instances = {};

    /**
     * Holds grouped components.
     *
     * Grouped components are being used for assignments between a parent and child Vue components.
     *
     * @type {Object}
     */
    var components = {};

    /**
     * Holds grouped child components.
     *
     * Grouped components are being used for assignments between a parent and child Vue components.
     *
     * @type {Object}
     */
    var childComponents = {};

    /**
     * Initialize the Vue application once the JS Engine has finished loading all the modules.
     */
    document.addEventListener('JSENGINE_INIT_FINISHED', function () {
        var globalConfig = jse.core.config.get('vue');

        // Check for Vue JSE configuration. 
        if (!globalConfig) {
            return;
        }

        var roots = document.querySelectorAll(globalConfig.el);

        Array.from(roots).forEach(function (root, index) {
            var name = root.getAttribute('data-vue-instance-name') || 'vue-instance-' + index;
            var config = Object.assign({}, globalConfig, { el: root });
            jse.core.vue.create(name, config);
        });
    });

    /**
     * Register a JS Engine vue module.
     *
     * @param {Object} module
     */
    exports.registerModule = function (module) {
        if (!module || !module.vue) {
            return;
        }

        if (!module.parent) {
            jse.core.vue.registerComponent(module.name, module);
        } else {
            jse.core.vue.registerChildComponent(module.parent, module.name, module);
        }
    };

    /**
     * Register a child component.
     *
     * @param {String} parent Parent component reference.
     * @param {String} name Name component reference.
     * @param {Object} childComponent Child component definition.
     */
    exports.registerChildComponent = function (parent, name, childComponent) {
        childComponents[parent] = childComponents[parent] || {};

        if (childComponents[parent][name]) {
            return;
        }

        childComponents[parent][name] = childComponent;
    };

    /**
     * Register a component.
     *
     * @param {String} name Name component reference.
     * @param {Object} component Component definition.
     */
    exports.registerComponent = function (name, component) {
        if (components[name]) {
            return;
        }

        components[name] = component;
    };

    /**
     * Create a new Vue instance.
     *
     * @param {String} name Unique name for instance.
     * @param {Object} config Vue configuration for the new instance.
     */
    exports.create = function (name, config) {
        if (instances[name]) {
            throw new Error('Instance with name ' + name + ' already exists, please use a different name.');
        }

        for (var _name in components) {
            components[_name].components = childComponents[_name] || {};

            Vue.component(_name, components[_name]);
        }

        instances[name] = new Vue(config);
    };

    /**
     * Destroy a vue instance.
     *
     * @param {String} name Instance name to be destroyed.
     */
    exports.destroy = function (name) {
        if (!instances[name]) {
            throw new Error('Instance with name ' + name + ' does not exist, make sure the instance was initialized correctly.');
        }

        instances[name].$destroy();

        delete instances[name];
    };

    /**
     * Get all active instances.
     *
     * @return {Object} Name - instance pairs.
     */
    exports.instances = function () {
        return instances;
    };
})(jse.core.vue);

},{}]},{},[12])

//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm5vZGVfbW9kdWxlcy9icm93c2VyLXBhY2svX3ByZWx1ZGUuanMiLCJzcmMvSlNFbmdpbmUvY29uc3RydWN0b3JzL2NvbGxlY3Rpb24uanMiLCJzcmMvSlNFbmdpbmUvY29uc3RydWN0b3JzL2RhdGFfYmluZGluZy5qcyIsInNyYy9KU0VuZ2luZS9jb25zdHJ1Y3RvcnMvbW9kdWxlLmpzIiwic3JjL0pTRW5naW5lL2NvbnN0cnVjdG9ycy9uYW1lc3BhY2UuanMiLCJzcmMvSlNFbmdpbmUvY29yZS9hYm91dC5qcyIsInNyYy9KU0VuZ2luZS9jb3JlL2NvbmZpZy5qcyIsInNyYy9KU0VuZ2luZS9jb3JlL2RlYnVnLmpzIiwic3JjL0pTRW5naW5lL2NvcmUvZW5naW5lLmpzIiwic3JjL0pTRW5naW5lL2NvcmUvZXh0ZW5kLmpzIiwic3JjL0pTRW5naW5lL2NvcmUvaW5pdGlhbGl6ZS5qcyIsInNyYy9KU0VuZ2luZS9jb3JlL2xhbmcuanMiLCJzcmMvSlNFbmdpbmUvY29yZS9tYWluLmpzIiwic3JjL0pTRW5naW5lL2NvcmUvbW9kdWxlX2xvYWRlci5qcyIsInNyYy9KU0VuZ2luZS9jb3JlL3BvbHlmaWxscy5qcyIsInNyYy9KU0VuZ2luZS9jb3JlL3JlZ2lzdHJ5LmpzIiwic3JjL0pTRW5naW5lL2NvcmUvcmVxdWlyZS5qcyIsInNyYy9KU0VuZ2luZS9jb3JlL3Z1ZS5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztBQ0FBOzs7Ozs7Ozs7O0FBVUEsQ0FBQyxZQUFZOztBQUVUOztBQUVBOzs7Ozs7OztBQUpTLFFBV0gsVUFYRztBQVlMOzs7Ozs7O0FBT0EsNEJBQVksSUFBWixFQUFrQixTQUFsQixFQUE2QixTQUE3QixFQUF3QztBQUFBOztBQUNwQyxpQkFBSyxJQUFMLEdBQVksSUFBWjtBQUNBLGlCQUFLLFNBQUwsR0FBaUIsU0FBakI7QUFDQSxpQkFBSyxTQUFMLEdBQWlCLFNBQWpCO0FBQ0EsaUJBQUssS0FBTCxHQUFhO0FBQ1QseUJB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NUlaIiwiZmlsZSI6ImpzZS5qcyIsInNvdXJjZXNDb250ZW50IjpbIihmdW5jdGlvbigpe2Z1bmN0aW9uIHIoZSxuLHQpe2Z1bmN0aW9uIG8oaSxmKXtpZighbltpXSl7aWYoIWVbaV0pe3ZhciBjPVwiZnVuY3Rpb25cIj09dHlwZW9mIHJlcXVpcmUmJnJlcXVpcmU7aWYoIWYmJmMpcmV0dXJuIGMoaSwhMCk7aWYodSlyZXR1cm4gdShpLCEwKTt2YXIgYT1uZXcgRXJyb3IoXCJDYW5ub3QgZmluZCBtb2R1bGUgJ1wiK2krXCInXCIpO3Rocm93IGEuY29kZT1cIk1PRFVMRV9OT1RfRk9VTkRcIixhfXZhciBwPW5baV09e2V4cG9ydHM6e319O2VbaV1bMF0uY2FsbChwLmV4cG9ydHMsZnVuY3Rpb24ocil7dmFyIG49ZVtpXVsxXVtyXTtyZXR1cm4gbyhufHxyKX0scCxwLmV4cG9ydHMscixlLG4sdCl9cmV0dXJuIG5baV0uZXhwb3J0c31mb3IodmFyIHU9XCJmdW5jdGlvblwiPT10eXBlb2YgcmVxdWlyZSYmcmVxdWlyZSxpPTA7aTx0Lmxlbmd0aDtpKyspbyh0W2ldKTtyZXR1cm4gb31yZXR1cm4gcn0pKCkiLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIGNvbGxlY3Rpb24uanMgMjAxNi0wNi0yMlxuIEdhbWJpbyBHbWJIXG4gaHR0cDovL3d3dy5nYW1iaW8uZGVcbiBDb3B5cmlnaHQgKGMpIDIwMTYgR2FtYmlvIEdtYkhcbiBSZWxlYXNlZCB1bmRlciB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgKFZlcnNpb24gMilcbiBbaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2dwbC0yLjAuaHRtbF1cbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbihmdW5jdGlvbiAoKSB7XG5cbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICAvKipcbiAgICAgKiBDbGFzcyBDb2xsZWN0aW9uXG4gICAgICpcbiAgICAgKiBUaGlzIGNsYXNzIGlzIHVzZWQgdG8gaGFuZGxlIG11bHRpcGxlIG1vZHVsZXMgb2YgdGhlIHNhbWUgdHlwZSAoY29udHJvbGxlcnMsIGV4dGVuc2lvbnMgLi4uKS5cbiAgICAgKlxuICAgICAqIEBjbGFzcyBKU0UvQ29uc3RydWN0b3JzL0NvbGxlY3Rpb25cbiAgICAgKi9cbiAgICBjbGFzcyBDb2xsZWN0aW9uIHtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIENsYXNzIENvbnN0cnVjdG9yXG4gICAgICAgICAqXG4gICAgICAgICAqIEBwYXJhbSB7U3RyaW5nfSBuYW1lIFRoZSBjb2xsZWN0aW9uIG5hbWUgLSBtdXN0IGJlIHVuaXF1ZS5cbiAgICAgICAgICogQHBhcmFtIHtTdHJpbmd9IGF0dHJpYnV0ZSBUaGUgYXR0cmlidXRlIHRoYXQgd2lsbCB0cmlnZ2VyIGNvbGxlY3Rpb24ncyBtb2R1bGVzLlxuICAgICAgICAgKiBAcGFyYW0ge09iamVjdH0gbmFtZXNwYWNlIE9wdGlvbmFsLCB0aGUgbmFtZXNwYWNlIGluc3RhbmNlIHdoZXJlIHRoZSBjb2xsZWN0aW9uIGJlbG9uZ3MuXG4gICAgICAgICAqL1xuICAgICAgICBjb25zdHJ1Y3RvcihuYW1lLCBhdHRyaWJ1dGUsIG5hbWVzcGFjZSkge1xuICAgICAgICAgICAgdGhpcy5uYW1lID0gbmFtZTtcbiAgICAgICAgICAgIHRoaXMuYXR0cmlidXRlID0gYXR0cmlidXRlO1xuICAgICAgICAgICAgdGhpcy5uYW1lc3BhY2UgPSBuYW1lc3BhY2U7XG4gICAgICAgICAgICB0aGlzLmNhY2hlID0ge1xuICAgICAgICAgICAgICAgIG1vZHVsZXM6IHt9LFxuICAgICAgICAgICAgICAgIGRhdGE6IHt9XG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIERlZmluZSBhIG5ldyBlbmdpbmUgbW9kdWxlLlxuICAgICAgICAgKlxuICAgICAgICAgKiBUaGlzIGZ1bmN0aW9uIHdpbGwgZGVmaW5lIGEgbmV3IG1vZHVsZSBpbnRvIHRoZSBlbmdpbmUuIEVhY2ggbW9kdWxlIHdpbGwgYmUgc3RvcmVkIGluIHRoZVxuICAgICAgICAgKiBjb2xsZWN0aW9uJ3MgY2FjaGUgdG8gcHJldmVudCB1bm5lY2Vzc2FyeSBmaWxlIHRyYW5zZmVycy4gVGhlIHNhbWUgaGFwcGVucyB3aXRoIHRoZSBkZWZhdWx0XG4gICAgICAgICAqIGNvbmZpZ3VyYXRpb24gdGhhdCBhcHBlbmQgdG8gdGhlIG1vZHVsZSBkZWZpbml0aW9uLlxuICAgICAgICAgKlxuICAgICAgICAgKiBAcGFyYW0ge1N0cmluZ30gbmFtZSBOYW1lIG9mIHRoZSBtb2R1bGUgKHNhbWUgYXMgdGhlIGZpbGVuYW1lKS5cbiAgICAgICAgICogQHBhcmFtIHtBcnJheX0gZGVwZW5kZW5jaWVzIEFycmF5IG9mIGxpYnJhcmllcyB0aGF0IHRoaXMgbW9kdWxlIGRlcGVuZHMgb24gKHdpbGwgYmUgbG9hZGVkIGFzeW5jaHJvbm91c2x5KS5cbiAgICAgICAgICogQXBwbHkgb25seSBmaWxlbmFtZXMgd2l0aG91dCBleHRlbnNpb24gZS5nLiBbXCJlbWFpbHNcIl0uXG4gICAgICAgICAqIEBwYXJhbSB7T2JqZWN0fSBjb2RlIENvbnRhaW5zIHRoZSBtb2R1bGUgY29kZSAoZnVuY3Rpb24pLlxuICAgICAgICAgKi9cbiAgICAgICAgbW9kdWxlKG5hbWUsIGRlcGVuZGVuY2llcywgY29kZSkge1xuICAgICAgICAgICAgLy8gQ2hlY2sgaWYgcmVxdWlyZWQgdmFsdWVzIGFyZSBhdmFpbGFibGUgYW5kIG9mIGNvcnJlY3QgdHlwZS5cbiAgICAgICAgICAgIGlmICghbmFtZSB8fCB0eXBlb2YgbmFtZSAhPT0gJ3N0cmluZycgfHwgdHlwZW9mIGNvZGUgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgICAgICBqc2UuY29yZS5kZWJ1Zy53YXJuKCdSZWdpc3RyYXRpb24gb2YgdGhlIG1vZHVsZSBmYWlsZWQsIGR1ZSB0byBiYWQgZnVuY3Rpb24gY2FsbCcsIGFyZ3VtZW50cyk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBDaGVjayBpZiB0aGUgbW9kdWxlIGlzIGFscmVhZHkgZGVmaW5lZC5cbiAgICAgICAgICAgIGlmICh0aGlzLmNhY2hlLm1vZHVsZXNbbmFtZV0pIHtcbiAgICAgICAgICAgICAgICBqc2UuY29yZS5kZWJ1Zy53YXJuKCdSZWdpc3RyYXRpb24gb2YgbW9kdWxlIFwiJyArIG5hbWUgKyAnXCIgc2tpcHBlZCwgYmVjYXVzZSBpdCBhbHJlYWR5IGV4aXN0cy4nKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIFN0b3JlIHRoZSBtb2R1bGUgdG8gY2FjaGUgc28gdGhhdCBpdCBjYW4gYmUgdXNlZCBsYXRlci5cbiAgICAgICAgICAgIHRoaXMuY2FjaGUubW9kdWxlc1tuYW1lXSA9IHtcbiAgICAgICAgICAgICAgICBjb2RlOiBjb2RlLFxuICAgICAgICAgICAgICAgIGRlcGVuZGVuY2llczogZGVwZW5kZW5jaWVzXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIEluaXRpYWxpemUgTW9kdWxlIENvbGxlY3Rpb25cbiAgICAgICAgICpcbiAgICAgICAgICogVGhpcyBtZXRob2Qgd2lsbCB0cmlnZ2VyIHRoZSBwYWdlIG1vZHVsZXMgaW5pdGlhbGl6YXRpb24uIEl0IHdpbGwgc2VhcmNoIGFsbFxuICAgICAgICAgKiB0aGUgRE9NIGZvciB0aGUgXCJkYXRhLWd4LWV4dGVuc2lvblwiLCBcImRhdGEtZ3gtY29udHJvbGxlclwiIG9yXG4gICAgICAgICAqIFwiZGF0YS1neC13aWRnZXRcIiBhdHRyaWJ1dGVzIGFuZCBsb2FkIHRoZSByZWxldmFudCBzY3JpcHRzIHRocm91Z2ggUmVxdWlyZUpTLlxuICAgICAgICAgKlxuICAgICAgICAgKiBAcGFyYW0ge2pRdWVyeX0gJHBhcmVudCBPcHRpb25hbCAobnVsbCksIHBhcmVudCBlbGVtZW50IHdpbGwgYmUgdXNlZCB0byBzZWFyY2ggZm9yIHRoZSByZXF1aXJlZCBtb2R1bGVzLlxuICAgICAgICAgKlxuICAgICAgICAgKiBAcmV0dXJuIHtqUXVlcnkuRGVmZXJyZWR9IG5hbWVzcGFjZURlZmVycmVkIERlZmVycmVkIG9iamVjdCB0aGF0IGdldHMgcHJvY2Vzc2VkIGFmdGVyIHRoZVxuICAgICAgICAgKiBtb2R1bGUgaW5pdGlhbGl6YXRpb24gaXMgZmluaXNoZWQuXG4gICAgICAgICAqL1xuICAgICAgICBpbml0KCRwYXJlbnQgPSBudWxsKSB7XG4gICAgICAgICAgICAvLyBTdG9yZSB0aGUgbmFtZXNwYWNlcyByZWZlcmVuY2Ugb2YgdGhlIGNvbGxlY3Rpb24uXG4gICAgICAgICAgICBpZiAoIXRoaXMubmFtZXNwYWNlKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdDb2xsZWN0aW9uIGNhbm5vdCBiZSBpbml0aWFsaXplZCB3aXRob3V0IGl0cyBwYXJlbnQgbmFtZXNwYWNlIGluc3RhbmNlLicpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBTZXQgdGhlIGRlZmF1bHQgcGFyZW50LW9iamVjdCBpZiBub25lIHdhcyBnaXZlbi5cbiAgICAgICAgICAgIGlmICgkcGFyZW50ID09PSB1bmRlZmluZWQgfHwgJHBhcmVudCA9PT0gbnVsbCkge1xuICAgICAgICAgICAgICAgICRwYXJlbnQgPSAkKCdodG1sJyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IGF0dHJpYnV0ZSA9ICdkYXRhLScgKyB0aGlzLm5hbWVzcGFjZS5uYW1lICsgJy0nICsgdGhpcy5hdHRyaWJ1dGU7XG4gICAgICAgICAgICBjb25zdCBuYW1lc3BhY2VEZWZlcnJlZCA9ICQuRGVmZXJyZWQoKTtcbiAgICAgICAgICAgIGNvbnN0IGRlZmVycmVkQ29sbGVjdGlvbiA9IFtdO1xuXG4gICAgICAgICAgICAkcGFyZW50XG4gICAgICAgICAgICAgICAgLmZpbHRlcignWycgKyBhdHRyaWJ1dGUgKyAnXScpXG4gICAgICAgICAgICAgICAgLmFkZCgkcGFyZW50LmZpbmQoJ1snICsgYXR0cmlidXRlICsgJ10nKSlcbiAgICAgICAgICAgICAgICAuZWFjaCgoaW5kZXgsIGVsZW1lbnQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgJGVsZW1lbnQgPSAkKGVsZW1lbnQpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBtb2R1bGVzID0gJGVsZW1lbnQuYXR0cihhdHRyaWJ1dGUpO1xuXG4gICAgICAgICAgICAgICAgICAgICRlbGVtZW50LnJlbW92ZUF0dHIoYXR0cmlidXRlKTtcblxuICAgICAgICAgICAgICAgICAgICAkLmVhY2gobW9kdWxlcy5yZXBsYWNlKC8oXFxyXFxufFxcbnxcXHJ8XFxzXFxzKykvZ20sICcgJykudHJpbSgpLnNwbGl0KCcgJyksIChpbmRleCwgbmFtZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG5hbWUgPT09ICcnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGRlZmVycmVkID0gJC5EZWZlcnJlZCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGVmZXJyZWRDb2xsZWN0aW9uLnB1c2goZGVmZXJyZWQpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBqc2UuY29yZS5tb2R1bGVfbG9hZGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmxvYWQoJGVsZW1lbnQsIG5hbWUsIHRoaXMpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmRvbmUoKG1vZHVsZSkgPT4gbW9kdWxlLmluaXQoZGVmZXJyZWQpKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5mYWlsKChlcnJvcikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZlcnJlZC5yZWplY3QoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gTG9nIHRoZSBlcnJvciBpbiB0aGUgY29uc29sZSBidXQgZG8gbm90IHN0b3AgdGhlIGVuZ2luZSBleGVjdXRpb24uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGpzZS5jb3JlLmRlYnVnLmVycm9yKCdDb3VsZCBub3QgbG9hZCBtb2R1bGU6ICcgKyBuYW1lLCBlcnJvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAvLyBBbHdheXMgcmVzb2x2ZSB0aGUgbmFtZXNwYWNlLCBldmVuIGlmIHRoZXJlIGFyZSBtb2R1bGUgZXJyb3JzLlxuICAgICAgICAgICAgJC53aGVuLmFwcGx5KHVuZGVmaW5lZCwgZGVmZXJyZWRDb2xsZWN0aW9uKS5hbHdheXMoKCkgPT4gbmFtZXNwYWNlRGVmZXJyZWQucmVzb2x2ZSgpKTtcblxuICAgICAgICAgICAgcmV0dXJuIGRlZmVycmVkQ29sbGVjdGlvbi5sZW5ndGggPyBuYW1lc3BhY2VEZWZlcnJlZC5wcm9taXNlKCkgOiBuYW1lc3BhY2VEZWZlcnJlZC5yZXNvbHZlKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBqc2UuY29uc3RydWN0b3JzLkNvbGxlY3Rpb24gPSBDb2xsZWN0aW9uO1xufSkoKTtcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiBkYXRhX2JpbmRpbmcuanMgMjAxNi0wNS0xN1xyXG4gR2FtYmlvIEdtYkhcclxuIGh0dHA6Ly93d3cuZ2FtYmlvLmRlXHJcbiBDb3B5cmlnaHQgKGMpIDIwMTYgR2FtYmlvIEdtYkhcclxuIFJlbGVhc2VkIHVuZGVyIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSAoVmVyc2lvbiAyKVxyXG4gW2h0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMi4wLmh0bWxdXHJcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gKi9cclxuXHJcbihmdW5jdGlvbiAoKSB7XHJcblxyXG4gICAgJ3VzZSBzdHJpY3QnO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogRGF0YSBCaW5kaW5nIENsYXNzXHJcbiAgICAgKlxyXG4gICAgICogSGFuZGxlcyB0d28td2F5IGRhdGEgYmluZGluZyB3aXRoIFVJIGVsZW1lbnRzLlxyXG4gICAgICpcclxuICAgICAqIEBjbGFzcyBKU0UvQ29uc3RydWN0b3JzL0RhdGFCaW5kaW5nXHJcbiAgICAgKi9cclxuICAgIGNsYXNzIERhdGFCaW5kaW5nIHtcclxuICAgICAgICAvKipcclxuICAgICAgICAgKiBDbGFzcyBDb25zdHJ1Y3RvclxyXG4gICAgICAgICAqXHJcbiAgICAgICAgICogQHBhcmFtIHtTdHJpbmd9IG5hbWUgVGhlIG5hbWUgb2YgdGhlIGJpbmRpbmcuXHJcbiAgICAgICAgICogQHBhcmFtIHtPYmplY3R9ICRlbGVtZW50IFRhcmdldCBlbGVtZW50IHRvIGJlIGJvbmQuXHJcbiAgICAgICAgICovXHJcbiAgICAgICAgY29uc3RydWN0b3IobmFtZSwgJGVsZW1lbnQpIHtcclxuICAgICAgICAgICAgdGhpcy5uYW1lID0gbmFtZTtcclxuICAgICAgICAgICAgdGhpcy4kZWxlbWVudCA9ICRlbGVtZW50O1xyXG4gICAgICAgICAgICB0aGlzLnZhbHVlID0gbnVsbDtcclxuICAgICAgICAgICAgdGhpcy5pc011dGFibGUgPSAkZWxlbWVudC5pcygnaW5wdXQsIHRleHRhcmVhLCBzZWxlY3QnKTtcclxuICAgICAgICAgICAgdGhpcy5pbml0KCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvKipcclxuICAgICAgICAgKiBJbml0aWFsaXplIHRoZSBiaW5kaW5nLlxyXG4gICAgICAgICAqL1xyXG4gICAgICAgIGluaXQoKSB7XHJcbiAgICAgICAgICAgIHRoaXMuJGVsZW1lbnQub24oJ2NoYW5nZScsICgpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuZ2V0KCk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLyoqXHJcbiAgICAgICAgICogR2V0IGJpbmRpbmcgdmFsdWUuXHJcbiAgICAgICAgICpcclxuICAgICAgICAgKiBAcmV0dXJucyB7Kn1cclxuICAgICAgICAgKi9cclxuICAgICAgICBnZXQoKSB7XHJcbiAgICAgICAgICAgIHRoaXMudmFsdWUgPSB0aGlzLmlzTXV0YWJsZSA/IHRoaXMuJGVsZW1lbnQudmFsKCkgOiB0aGlzLiRlbGVtZW50Lmh0bWwoKTtcclxuXHJcbiAgICAgICAgICAgIGlmICh0aGlzLiRlbGVtZW50LmlzKCc6Y2hlY2tib3gnKSB8fCB0aGlzLiRlbGVtZW50LmlzKCc6cmFkaW8nKSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy52YWx1ZSA9IHRoaXMuJGVsZW1lbnQucHJvcCgnY2hlY2tlZCcpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy52YWx1ZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8qKlxyXG4gICAgICAgICAqIFNldCBiaW5kaW5nIHZhbHVlLlxyXG4gICAgICAgICAqXHJcbiAgICAgICAgICogQHBhcmFtIHtTdHJpbmd9IHZhbHVlXHJcbiAgICAgICAgICovXHJcbiAgICAgICAgc2V0KHZhbHVlKSB7XHJcbiAgICAgICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcclxuXHJcbiAgICAgICAgICAgIGlmICh0aGlzLmlzTXV0YWJsZSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy4kZWxlbWVudC52YWwodmFsdWUpO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgdGhpcy4kZWxlbWVudC5odG1sKHZhbHVlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBqc2UuY29uc3RydWN0b3JzLkRhdGFCaW5kaW5nID0gRGF0YUJpbmRpbmc7XHJcbn0pKCk7XHJcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gbW9kdWxlLmpzIDIwMTYtMDUtMTdcbiBHYW1iaW8gR21iSFxuIGh0dHA6Ly93d3cuZ2FtYmlvLmRlXG4gQ29weXJpZ2h0IChjKSAyMDE2IEdhbWJpbyBHbWJIXG4gUmVsZWFzZWQgdW5kZXIgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIChWZXJzaW9uIDIpXG4gW2h0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMi4wLmh0bWxdXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbihmdW5jdGlvbiAoKSB7XG5cbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICAvKipcbiAgICAgKiBDbGFzcyBNb2R1bGVcbiAgICAgKlxuICAgICAqIFRoaXMgY2xhc3MgaXMgdXNlZCBmb3IgcmVwcmVzZW50aW5nIGEgbW9kdWxlIGluc3RhbmNlIHdpdGhpbiB0aGUgSlNFIGVjb3N5c3RlbS5cbiAgICAgKlxuICAgICAqIEBjbGFzcyBKU0UvQ29uc3RydWN0b3JzL01vZHVsZVxuICAgICAqL1xuICAgIGNsYXNzIE1vZHVsZSB7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBDbGFzcyBDb25zdHJ1Y3RvclxuICAgICAgICAgKlxuICAgICAgICAgKiBAcGFyYW0ge09iamVjdH0gJGVsZW1lbnQgTW9kdWxlIGVsZW1lbnQgc2VsZWN0b3Igb2JqZWN0LlxuICAgICAgICAgKiBAcGFyYW0ge1N0cmluZ30gbmFtZSBUaGUgbW9kdWxlIG5hbWUgKG1pZ2h0IGNvbnRhaW4gdGhlIHBhdGgpXG4gICAgICAgICAqIEBwYXJhbSB7T2JqZWN0fSBjb2xsZWN0aW9uIFRoZSBjb2xsZWN0aW9uIGluc3RhbmNlIG9mIHRoZSBtb2R1bGUuXG4gICAgICAgICAqL1xuICAgICAgICBjb25zdHJ1Y3RvcigkZWxlbWVudCwgbmFtZSwgY29sbGVjdGlvbikge1xuICAgICAgICAgICAgdGhpcy4kZWxlbWVudCA9ICRlbGVtZW50O1xuICAgICAgICAgICAgdGhpcy5uYW1lID0gbmFtZTtcbiAgICAgICAgICAgIHRoaXMuY29sbGVjdGlvbiA9IGNvbGxlY3Rpb247XG4gICAgICAgIH1cblxuICAgICAgICAvKipcbiAgICAgICAgICogSW5pdGlhbGl6ZSB0aGUgbW9kdWxlIGV4ZWN1dGlvbi5cbiAgICAgICAgICpcbiAgICAgICAgICogVGhpcyBmdW5jdGlvbiB3aWxsIGV4ZWN1dGUgdGhlIFwiaW5pdFwiIG1ldGhvZCBvZiBlYWNoIG1vZHVsZS5cbiAgICAgICAgICpcbiAgICAgICAgICogQHBhcmFtIHtPYmplY3R9IGNvbGxlY3Rpb25EZWZlcnJlZCBEZWZlcnJlZCBvYmplY3QgdGhhdCBnZXRzIHByb2Nlc3NlZCBhZnRlciB0aGUgbW9kdWxlXG4gICAgICAgICAqIGluaXRpYWxpemF0aW9uIGlzIGZpbmlzaGVkLlxuICAgICAgICAgKi9cbiAgICAgICAgaW5pdChjb2xsZWN0aW9uRGVmZXJyZWQpIHtcbiAgICAgICAgICAgIC8vIFN0b3JlIG1vZHVsZSBpbnN0YW5jZSBhbGlhcy5cbiAgICAgICAgICAgIGNvbnN0IGNhY2hlZCA9IHRoaXMuY29sbGVjdGlvbi5jYWNoZS5tb2R1bGVzW3RoaXMubmFtZV07XG4gICAgICAgICAgICBsZXQgdGltZW91dCA9IG51bGw7XG5cbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgaWYgKCFjYWNoZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBNb2R1bGUgXCIke3RoaXMubmFtZX1cIiBjb3VsZCBub3QgYmUgZm91bmQgaW4gdGhlIGNvbGxlY3Rpb24gY2FjaGUuYCk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgY29uc3QgZGF0YSA9IHRoaXMuX2dldE1vZHVsZURhdGEoKTtcbiAgICAgICAgICAgICAgICBjb25zdCBpbnN0YW5jZSA9IGNhY2hlZC5jb2RlLmNhbGwodGhpcy4kZWxlbWVudCwgZGF0YSk7XG5cbiAgICAgICAgICAgICAgICAvLyBQcm92aWRlIGEgZG9uZSBmdW5jdGlvbiB0aGF0IG5lZWRzIHRvIGJlIGNhbGxlZCBmcm9tIHRoZSBtb2R1bGUsIGluIG9yZGVyIHRvIGluZm9ybSBcbiAgICAgICAgICAgICAgICAvLyB0aGF0IHRoZSBtb2R1bGUgXCJpbml0XCIgZnVuY3Rpb24gd2FzIGNvbXBsZXRlZCBzdWNjZXNzZnVsbHkuXG4gICAgICAgICAgICAgICAgY29uc3QgZG9uZSA9ICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy4kZWxlbWVudC50cmlnZ2VyKCdqc2U6bW9kdWxlOmluaXRpYWxpemVkJywgW3ttb2R1bGU6IHRoaXMubmFtZX1dKTtcbiAgICAgICAgICAgICAgICAgICAganNlLmNvcmUuZGVidWcuaW5mbyhgTW9kdWxlIFwiJHt0aGlzLm5hbWV9XCIgaW5pdGlhbGl6ZWQgc3VjY2Vzc2Z1bGx5LmApO1xuICAgICAgICAgICAgICAgICAgICBjb2xsZWN0aW9uRGVmZXJyZWQucmVzb2x2ZSgpO1xuICAgICAgICAgICAgICAgICAgICBjbGVhclRpbWVvdXQodGltZW91dCk7XG4gICAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICAgIC8vIExvYWQgdGhlIG1vZHVsZSBkYXRhIGJlZm9yZSB0aGUgbW9kdWxlIGlzIGxvYWRlZC5cbiAgICAgICAgICAgICAgICB0aGlzLl9sb2FkTW9kdWxlRGF0YShpbnN0YW5jZSlcbiAgICAgICAgICAgICAgICAgICAgLmRvbmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gUmVqZWN0IHRoZSBjb2xsZWN0aW9uRGVmZXJyZWQgaWYgdGhlIG1vZHVsZSBpc24ndCBpbml0aWFsaXplZCBhZnRlciAxMCBzZWNvbmRzLlxuICAgICAgICAgICAgICAgICAgICAgICAgdGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGpzZS5jb3JlLmRlYnVnLndhcm4oJ01vZHVsZSB3YXMgbm90IGluaXRpYWxpemVkIGFmdGVyIDEwIHNlY29uZHMhIC0tICcgKyB0aGlzLm5hbWUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25EZWZlcnJlZC5yZWplY3QoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sIDEwMDAwKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAganNlLmNvcmUudnVlLnJlZ2lzdGVyTW9kdWxlKGluc3RhbmNlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGluc3RhbmNlLmluaXQoZG9uZSk7XG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIC5mYWlsKChlcnJvcikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sbGVjdGlvbkRlZmVycmVkLnJlamVjdCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAganNlLmNvcmUuZGVidWcuZXJyb3IoJ0NvdWxkIG5vdCBsb2FkIG1vZHVsZVxcJ3MgbWV0YSBkYXRhLicsIGVycm9yKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9IGNhdGNoIChleGNlcHRpb24pIHtcbiAgICAgICAgICAgICAgICBjb2xsZWN0aW9uRGVmZXJyZWQucmVqZWN0KCk7XG4gICAgICAgICAgICAgICAganNlLmNvcmUuZGVidWcuZXJyb3IoYENhbm5vdCBpbml0aWFsaXplIG1vZHVsZSBcIiR7dGhpcy5uYW1lfVwiLmAsIGV4Y2VwdGlvbik7XG4gICAgICAgICAgICAgICAgJCh3aW5kb3cpLnRyaWdnZXIoJ2Vycm9yJywgW2V4Y2VwdGlvbl0pOyAvLyBJbmZvcm0gdGhlIGVuZ2luZSBhYm91dCB0aGUgZXhjZXB0aW9uLlxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gY29sbGVjdGlvbkRlZmVycmVkLnByb21pc2UoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBQYXJzZSB0aGUgbW9kdWxlIGRhdGEgYXR0cmlidXRlcy5cbiAgICAgICAgICpcbiAgICAgICAgICogQHJldHVybiB7T2JqZWN0fSBSZXR1cm5zIGFuIG9iamVjdCB0aGF0IGNvbnRhaW5zIHRoZSBkYXRhIG9mIHRoZSBtb2R1bGUuXG4gICAgICAgICAqXG4gICAgICAgICAqIEBwcml2YXRlXG4gICAgICAgICAqL1xuICAgICAgICBfZ2V0TW9kdWxlRGF0YSgpIHtcbiAgICAgICAgICAgIGNvbnN0IGRhdGEgPSB7fTtcblxuICAgICAgICAgICAgJC5lYWNoKHRoaXMuJGVsZW1lbnQuZGF0YSgpLCAobmFtZSwgdmFsdWUpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAobmFtZS5pbmRleE9mKHRoaXMubmFtZSkgPT09IDAgfHwgbmFtZS5pbmRleE9mKHRoaXMubmFtZS50b0xvd2VyQ2FzZSgpKSA9PT0gMCkge1xuICAgICAgICAgICAgICAgICAgICBsZXQga2V5ID0gbmFtZS5zdWJzdHIodGhpcy5uYW1lLmxlbmd0aCk7XG4gICAgICAgICAgICAgICAgICAgIGtleSA9IGtleS5zdWJzdHIoMCwgMSkudG9Mb3dlckNhc2UoKSArIGtleS5zdWJzdHIoMSk7XG4gICAgICAgICAgICAgICAgICAgIGRhdGFba2V5XSA9IHZhbHVlO1xuICAgICAgICAgICAgICAgICAgICAvLyBSZW1vdmUgZGF0YSBhdHRyaWJ1dGUgZnJvbSBlbGVtZW50IChzYW5pdGlzZSBjYW1lbCBjYXNlIGZpcnN0KS5cbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgc2FuaXRpc2VkS2V5ID0ga2V5LnJlcGxhY2UoLyhbYS16XSkoW0EtWl0pL2csICckMS0kMicpLnRvTG93ZXJDYXNlKCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuJGVsZW1lbnQucmVtb3ZlQXR0cihgZGF0YS0ke3RoaXMubmFtZX0tJHtzYW5pdGlzZWRLZXl9YCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIHJldHVybiBkYXRhO1xuICAgICAgICB9XG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIE1vZHVsZXMgcmV0dXJuIG9iamVjdHMgd2hpY2ggbWlnaHQgY29udGFpbiByZXF1aXJlbWVudHMuXG4gICAgICAgICAqXG4gICAgICAgICAqIEBwYXJhbSB7T2JqZWN0fSBpbnN0YW5jZSBNb2R1bGUgaW5zdGFuY2Ugb2JqZWN0LlxuICAgICAgICAgKlxuICAgICAgICAgKiBAcmV0dXJuIHtPYmplY3R9IFJldHVybnMgYSBwcm9taXNlIG9iamVjdCB0aGF0IHdpbGwgYmUgcmVzb2x2ZWQgd2hlbiB0aGUgZGF0YSBhcmUgZmV0Y2hlZC5cbiAgICAgICAgICpcbiAgICAgICAgICogQHByaXZhdGVcbiAgICAgICAgICovXG4gICAgICAgIF9sb2FkTW9kdWxlRGF0YShpbnN0YW5jZSkge1xuICAgICAgICAgICAgY29uc3QgZGVmZXJyZWQgPSAkLkRlZmVycmVkKCk7XG4gICAgICAgICAgICBjb25zdCBkZWZlcnJlZENvbGxlY3Rpb24gPSBbXTtcblxuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBpZiAoaW5zdGFuY2UubW9kZWwpIHtcbiAgICAgICAgICAgICAgICAgICAgJC5lYWNoKGluc3RhbmNlLm1vZGVsLCBmdW5jdGlvbiAoaW5kZXgsIHVybCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbW9kZWxEZWZlcnJlZCA9ICQuRGVmZXJyZWQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlZmVycmVkQ29sbGVjdGlvbi5wdXNoKG1vZGVsRGVmZXJyZWQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgJC5nZXRKU09OKHVybClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZG9uZSgocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5zdGFuY2UubW9kZWxbaW5kZXhdID0gcmVzcG9uc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vZGVsRGVmZXJyZWQucmVzb2x2ZShyZXNwb25zZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZmFpbCgoZXJyb3IpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kZWxEZWZlcnJlZC5yZWplY3QoZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAoaW5zdGFuY2Uudmlldykge1xuICAgICAgICAgICAgICAgICAgICAkLmVhY2goaW5zdGFuY2UudmlldywgZnVuY3Rpb24gKGluZGV4LCB1cmwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHZpZXdEZWZlcnJlZCA9ICQuRGVmZXJyZWQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlZmVycmVkQ29sbGVjdGlvbi5wdXNoKHZpZXdEZWZlcnJlZCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAkLmdldCh1cmwpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmRvbmUoKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluc3RhbmNlLnZpZXdbaW5kZXhdID0gcmVzcG9uc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdEZWZlcnJlZC5yZXNvbHZlKHJlc3BvbnNlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5mYWlsKChlcnJvcikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3RGVmZXJyZWQucmVqZWN0KGVycm9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaWYgKGluc3RhbmNlLmJpbmRpbmdzKSB7XG4gICAgICAgICAgICAgICAgICAgIGZvciAobGV0IG5hbWUgaW4gaW5zdGFuY2UuYmluZGluZ3MpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0ICRlbGVtZW50ID0gaW5zdGFuY2UuYmluZGluZ3NbbmFtZV07XG4gICAgICAgICAgICAgICAgICAgICAgICBpbnN0YW5jZS5iaW5kaW5nc1tuYW1lXSA9IG5ldyBqc2UuY29uc3RydWN0b3JzLkRhdGFCaW5kaW5nKG5hbWUsICRlbGVtZW50KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICQud2hlbi5hcHBseSh1bmRlZmluZWQsIGRlZmVycmVkQ29sbGVjdGlvbilcbiAgICAgICAgICAgICAgICAgICAgLmRvbmUoZGVmZXJyZWQucmVzb2x2ZSlcbiAgICAgICAgICAgICAgICAgICAgLmZhaWwoKGVycm9yKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkZWZlcnJlZC5yZWplY3QobmV3IEVycm9yKGBDYW5ub3QgbG9hZCBkYXRhIGZvciBtb2R1bGUgXCIke2luc3RhbmNlLm5hbWV9XCIuYCwgZXJyb3IpKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9IGNhdGNoIChleGNlcHRpb24pIHtcbiAgICAgICAgICAgICAgICBkZWZlcnJlZC5yZWplY3QoZXhjZXB0aW9uKTtcbiAgICAgICAgICAgICAgICBqc2UuY29yZS5kZWJ1Zy5lcnJvcihgQ2Fubm90IHByZWxvYWQgbW9kdWxlIGRhdGEgZm9yIFwiJHt0aGlzLm5hbWV9XCIuYCwgZXhjZXB0aW9uKTtcbiAgICAgICAgICAgICAgICAkKHdpbmRvdykudHJpZ2dlcignZXJyb3InLCBbZXhjZXB0aW9uXSk7IC8vIEluZm9ybSB0aGUgZW5naW5lIGFib3V0IHRoZSBleGNlcHRpb24uXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBkZWZlcnJlZC5wcm9taXNlKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBqc2UuY29uc3RydWN0b3JzLk1vZHVsZSA9IE1vZHVsZTtcbn0pKCk7XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIG5hbWVzcGFjZS5qcyAyMDE2LTA1LTE3XG4gR2FtYmlvIEdtYkhcbiBodHRwOi8vd3d3LmdhbWJpby5kZVxuIENvcHlyaWdodCAoYykgMjAxNiBHYW1iaW8gR21iSFxuIFJlbGVhc2VkIHVuZGVyIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSAoVmVyc2lvbiAyKVxuIFtodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvZ3BsLTIuMC5odG1sXVxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cblxuKGZ1bmN0aW9uICgpIHtcblxuICAgICd1c2Ugc3RyaWN0JztcblxuICAgIC8qKlxuICAgICAqIENsYXNzIE5hbWVzcGFjZVxuICAgICAqXG4gICAgICogVGhpcyBjbGFzcyBpcyB1c2VkIHRvIGhhbmRsZSBtdWx0aXBsZSBjb2xsZWN0aW9ucyBvZiBtb2R1bGVzLiBFdmVyeSBuYW1lc3BhY2UgaGFzIGl0cyBvd24gc291cmNlIFVSTFxuICAgICAqIGZvciBsb2FkaW5nIHRoZSBkYXRhLiBUaGF0IG1lYW5zIHRoYXQgSlNFIGNhbiBsb2FkIG1vZHVsZXMgZnJvbSBtdWx0aXBsZSBwbGFjZXMgYXQgdGhlIHNhbWUgdGltZS5cbiAgICAgKlxuICAgICAqIEBjbGFzcyBKU0UvQ29uc3RydWN0b3JzL05hbWVzcGFjZVxuICAgICAqL1xuICAgIGNsYXNzIE5hbWVzcGFjZSB7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBDbGFzcyBDb25zdHJ1Y3RvclxuICAgICAgICAgKlxuICAgICAgICAgKiBAcGFyYW0ge1N0cmluZ30gbmFtZSBUaGUgbmFtZXNwYWNlIG5hbWUgbXVzdCBiZSB1bmlxdWUgd2l0aGluIHRoZSBhcHAuXG4gICAgICAgICAqIEBwYXJhbSB7U3RyaW5nfSBzb3VyY2UgQ29tcGxldGUgVVJMIHRvIHRoZSBuYW1lc3BhY2UgbW9kdWxlcyBkaXJlY3RvcnkgKHdpdGhvdXQgdHJhaWxpbmcgc2xhc2gpLlxuICAgICAgICAgKiBAcGFyYW0ge0FycmF5fSBjb2xsZWN0aW9ucyBDb250YWlucyBjb2xsZWN0aW9uIGluc3RhbmNlcyB0byBiZSBpbmNsdWRlZCBpbiB0aGUgbmFtZXNwYWNlLlxuICAgICAgICAgKi9cbiAgICAgICAgY29uc3RydWN0b3IobmFtZSwgc291cmNlLCBjb2xsZWN0aW9ucykge1xuICAgICAgICAgICAgdGhpcy5uYW1lID0gbmFtZTtcbiAgICAgICAgICAgIHRoaXMuc291cmNlID0gc291cmNlO1xuICAgICAgICAgICAgdGhpcy5jb2xsZWN0aW9ucyA9IGNvbGxlY3Rpb25zOyAvLyBjb250YWlucyB0aGUgZGVmYXVsdCBpbnN0YW5jZXMgICBcdFx0XG4gICAgICAgIH1cblxuICAgICAgICAvKipcbiAgICAgICAgICogSW5pdGlhbGl6ZSB0aGUgbmFtZXNwYWNlIGNvbGxlY3Rpb25zLlxuICAgICAgICAgKlxuICAgICAgICAgKiBUaGlzIG1ldGhvZCB3aWxsIGNyZWF0ZSBuZXcgY29sbGVjdGlvbiBpbnN0YW5jZXMgYmFzZWQgaW4gdGhlIG9yaWdpbmFsIG9uZXMuXG4gICAgICAgICAqXG4gICAgICAgICAqIEByZXR1cm4ge2pRdWVyeS5Qcm9taXNlfSBSZXR1cm5zIGEgcHJvbWlzZSB0aGF0IHdpbGwgYmUgcmVzb2x2ZWQgb25jZSBldmVyeSBuYW1lc3BhY2UgY29sbGVjdGlvblxuICAgICAgICAgKiBpcyByZXNvbHZlZC5cbiAgICAgICAgICovXG4gICAgICAgIGluaXQoKSB7XG4gICAgICAgICAgICBjb25zdCBkZWZlcnJlZENvbGxlY3Rpb24gPSBbXTtcblxuICAgICAgICAgICAgZm9yIChsZXQgY29sbGVjdGlvbiBvZiB0aGlzLmNvbGxlY3Rpb25zKSB7XG4gICAgICAgICAgICAgICAgdGhpc1tjb2xsZWN0aW9uLm5hbWVdID0gbmV3IGpzZS5jb25zdHJ1Y3RvcnMuQ29sbGVjdGlvbihjb2xsZWN0aW9uLm5hbWUsIGNvbGxlY3Rpb24uYXR0cmlidXRlLCB0aGlzKTtcbiAgICAgICAgICAgICAgICBjb25zdCBkZWZlcnJlZCA9IHRoaXNbY29sbGVjdGlvbi5uYW1lXS5pbml0KCk7XG4gICAgICAgICAgICAgICAgZGVmZXJyZWRDb2xsZWN0aW9uLnB1c2goZGVmZXJyZWQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gZGVmZXJyZWRDb2xsZWN0aW9uLmxlbmd0aCA/ICQud2hlbi5hcHBseSh1bmRlZmluZWQsIGRlZmVycmVkQ29sbGVjdGlvbikucHJvbWlzZSgpIDogJC5EZWZlcnJlZCgpLnJlc29sdmUoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGpzZS5jb25zdHJ1Y3RvcnMuTmFtZXNwYWNlID0gTmFtZXNwYWNlO1xufSkoKTtcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gYWJvdXQuanMgMjAxNi0wOS0wOFxuIEdhbWJpbyBHbWJIXG4gaHR0cDovL3d3dy5nYW1iaW8uZGVcbiBDb3B5cmlnaHQgKGMpIDIwMTYgR2FtYmlvIEdtYkhcbiBSZWxlYXNlZCB1bmRlciB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgKFZlcnNpb24gMilcbiBbaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2dwbC0yLjAuaHRtbF1cbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbi8qKlxuICogSlNFIEluZm9ybWF0aW9uIE1vZHVsZVxuICpcbiAqIEV4ZWN1dGUgdGhlIGBqc2UuYWJvdXQoKWAgY29tbWFuZCBhbmQgeW91IHdpbGwgZ2V0IGEgbmV3IGxvZyBlbnRyeSBpbiB0aGVcbiAqIGNvbnNvbGUgd2l0aCBpbmZvIGFib3V0IHRoZSBlbmdpbmUuIFRoZSBcImFib3V0XCIgbWV0aG9kIGlzIG9ubHkgYXZhaWxhYmxlIGluXG4gKiB0aGUgXCJkZXZlbG9wbWVudFwiIGVudmlyb25tZW50IG9mIHRoZSBlbmdpbmUuXG4gKlxuICogQG1vZHVsZSBKU0UvQ29yZS9hYm91dFxuICovXG5kb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdET01Db250ZW50TG9hZGVkJywgZnVuY3Rpb24gKCkge1xuXG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgaWYgKGpzZS5jb3JlLmNvbmZpZy5nZXQoJ2Vudmlyb25tZW50JykgPT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuXG4gICAganNlLmFib3V0ID0gZnVuY3Rpb24gKCkge1xuICAgICAgICBjb25zdCBpbmZvID0gYFxuXHRcdFx0SlMgRU5HSU5FIHYke2pzZS5jb3JlLmNvbmZpZy5nZXQoJ3ZlcnNpb24nKX0gwqkgR0FNQklPIEdNQkhcblx0XHRcdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblx0XHRcdFRoZSBKUyBFbmdpbmUgZW5hYmxlcyBkZXZlbG9wZXJzIHRvIGxvYWQgYXV0b21hdGljYWxseSBzbWFsbCBwaWVjZXMgb2YgamF2YXNjcmlwdCBjb2RlIGJ5XG5cdFx0XHRwbGFjaW5nIHNwZWNpZmljIGRhdGEgYXR0cmlidXRlcyB0byB0aGUgSFRNTCBtYXJrdXAgb2YgYSBwYWdlLiBJdCB3YXMgYnVpbHQgd2l0aCBtb2R1bGFyaXR5XG5cdFx0XHRpbiBtaW5kIHNvIHRoYXQgbW9kdWxlcyBjYW4gYmUgcmV1c2VkIGludG8gbXVsdGlwbGUgcGxhY2VzIHdpdGhvdXQgZXh0cmEgZWZmb3J0LiBUaGUgZW5naW5lXG5cdFx0XHRjb250YWlucyBuYW1lc3BhY2VzIHdoaWNoIGNvbnRhaW4gY29sbGVjdGlvbnMgb2YgbW9kdWxlcywgZWFjaCBvbmUgb2Ygd2hvbSBzZXJ2ZSBhIGRpZmZlcmVudFxuXHRcdFx0Z2VuZXJpYyBwdXJwb3NlLlxuXHRcdFx0VmlzaXQgaHR0cDovL2RldmVsb3BlcnMuZ2FtYmlvLmRlIGZvciBjb21wbGV0ZSByZWZlcmVuY2Ugb2YgdGhlIEpTIEVuZ2luZS5cblx0XHRcdFxuXHRcdFx0RkFMTEJBQ0sgSU5GT1JNQVRJT05cblx0XHRcdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblx0XHRcdFNpbmNlIHRoZSBlbmdpbmUgY29kZSBiZWNvbWVzIGJpZ2dlciB0aGVyZSBhcmUgc2VjdGlvbnMgdGhhdCBuZWVkIHRvIGJlIHJlZmFjdG9yZWQgaW4gb3JkZXJcblx0XHRcdHRvIGJlY29tZSBtb3JlIGZsZXhpYmxlLiBJbiBtb3N0IGNhc2VzIGEgd2FybmluZyBsb2cgd2lsbCBiZSBkaXNwbGF5ZWQgYXQgdGhlIGJyb3dzZXJcXCdzIGNvbnNvbGVcblx0XHRcdHdoZW5ldmVyIHRoZXJlIGlzIGEgdXNlIG9mIGEgZGVwcmVjYXRlZCBmdW5jdGlvbi4gQmVsb3cgdGhlcmUgaXMgYSBxdWljayBsaXN0IG9mIGZhbGxiYWNrIHN1cHBvcnRcblx0XHRcdHRoYXQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBmdXR1cmUgdmVyc2lvbnMgb2YgdGhlIGVuZ2luZS5cblx0XHRcdFxuXHRcdFx0MS4gVGhlIG1haW4gZW5naW5lIG9iamVjdCB3YXMgcmVuYW1lZCBmcm9tIFwiZ3hcIiB0byBcImpzZVwiIHdoaWNoIHN0YW5kcyBmb3IgdGhlIEphdmFTY3JpcHQgRW5naW5lLlxuXHRcdFx0Mi4gVGhlIFwiZ3gubGliXCIgb2JqZWN0IGlzIHJlbW92ZWQgYWZ0ZXIgYSBsb25nIGRlcHJlY2F0aW9uIHBlcmlvZC4gWW91IHNob3VsZCB1cGRhdGUgdGhlIG1vZHVsZXMgXG5cdFx0XHQgICB0aGF0IGNvbnRhaW5lZCBjYWxscyB0byB0aGUgZnVuY3Rpb25zIG9mIHRoaXMgb2JqZWN0LlxuXHRcdFx0My4gVGhlIGd4Ljxjb2xsZWN0aW9uLW5hbWU+LnJlZ2lzdGVyIGZ1bmN0aW9uIGlzIGRlcHJlY2F0ZWQgYnkgdjEuMiwgdXNlIHRoZSBcblx0XHRcdCAgIDxuYW1lc3BhY2U+Ljxjb2xsZWN0aW9uPi5tb2R1bGUoKSBpbnN0ZWFkLlxuXHRcdGA7XG5cbiAgICAgICAganNlLmNvcmUuZGVidWcuaW5mbyhpbmZvKTtcbiAgICB9O1xufSk7XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIGNvbmZpZy5qcyAyMDE4LTA5LTEyXG4gR2FtYmlvIEdtYkhcbiBodHRwOi8vd3d3LmdhbWJpby5kZVxuIENvcHlyaWdodCAoYykgMjAxNyBHYW1iaW8gR21iSFxuIFJlbGVhc2VkIHVuZGVyIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSAoVmVyc2lvbiAyKVxuIFtodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvZ3BsLTIuMC5odG1sXVxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cblxuanNlLmNvcmUuY29uZmlnID0ganNlLmNvcmUuY29uZmlnIHx8IHt9O1xuXG4vKipcbiAqIEpTRSBDb25maWd1cmF0aW9uIE1vZHVsZVxuICpcbiAqIE9uY2UgdGhlIGNvbmZpZyBvYmplY3QgaXMgaW5pdGlhbGl6ZWQgeW91IGNhbm5vdCBjaGFuZ2UgaXRzIHZhbHVlcy4gVGhpcyBpcyBkb25lIGluIG9yZGVyIHRvXG4gKiBwcmV2ZW50IHVucGxlYXNhbnQgc2l0dWF0aW9ucyB3aGVyZSBvbmUgY29kZSBzZWN0aW9uIGNoYW5nZXMgYSBjb3JlIGNvbmZpZyBzZXR0aW5nIHRoYXQgYWZmZWN0c1xuICogYW5vdGhlciBjb2RlIHNlY3Rpb24gaW4gYSB3YXkgdGhhdCBpcyBoYXJkIHRvIGRpc2NvdmVyLlxuICpcbiAqIGBgYGphdmFzY3JpcHRcbiAqIGNvbnN0IGFwcFVybCA9IGpzZS5jb3JlLmNvbmZpZy5nZXQoJ2FwcFVybCcpO1xuICogYGBgXG4gKlxuICogQG1vZHVsZSBKU0UvQ29yZS9jb25maWdcbiAqL1xuKGZ1bmN0aW9uIChleHBvcnRzKSB7XG5cbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvLyBDT05GSUdVUkFUSU9OIFZBTFVFU1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgY29uc3QgY29uZmlnID0ge1xuICAgICAgICAvKipcbiAgICAgICAgICogRW5naW5lIFZlcnNpb25cbiAgICAgICAgICpcbiAgICAgICAgICogQHR5cGUge1N0cmluZ31cbiAgICAgICAgICovXG4gICAgICAgIHZlcnNpb246ICcxLjYnLFxuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBBcHAgVVJMXG4gICAgICAgICAqXG4gICAgICAgICAqIGUuZy4gJ2h0dHA6Ly9hcHAuY29tJ1xuICAgICAgICAgKlxuICAgICAgICAgKiBAdHlwZSB7U3RyaW5nfVxuICAgICAgICAgKi9cbiAgICAgICAgYXBwVXJsOiBudWxsLFxuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBTaG9wIFVSTFxuICAgICAgICAgKlxuICAgICAgICAgKiBlLmcuICdodHRwOi8vc2hvcC5kZSdcbiAgICAgICAgICpcbiAgICAgICAgICogQGRlcHJlY2F0ZWQgU2luY2UgdjEuNCwgdXNlIGFwcFVybCBpbnN0ZWFkLlxuICAgICAgICAgKlxuICAgICAgICAgKiBAdHlwZSB7U3RyaW5nfVxuICAgICAgICAgKi9cbiAgICAgICAgc2hvcFVybDogbnVsbCxcblxuICAgICAgICAvKipcbiAgICAgICAgICogQXBwIFZlcnNpb25cbiAgICAgICAgICpcbiAgICAgICAgICogZS5nLiAnMi43LjMuMCdcbiAgICAgICAgICpcbiAgICAgICAgICogQHR5cGUge1N0cmluZ31cbiAgICAgICAgICovXG4gICAgICAgIGFwcFZlcnNpb246IG51bGwsXG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIFNob3AgVmVyc2lvblxuICAgICAgICAgKlxuICAgICAgICAgKiBlLmcuICcyLjcuMy4wJ1xuICAgICAgICAgKlxuICAgICAgICAgKiBAZGVwcmVjYXRlZCBTaW5jZSAxLjQsIHVzZSBhcHBWZXJzaW9uIGluc3RlYWQuXG4gICAgICAgICAqXG4gICAgICAgICAqIEB0eXBlIHtTdHJpbmd9XG4gICAgICAgICAqL1xuICAgICAgICBzaG9wVmVyc2lvbjogbnVsbCxcblxuICAgICAgICAvKipcbiAgICAgICAgICogVVJMIHRvIEpTRW5naW5lIERpcmVjdG9yeS5cbiAgICAgICAgICpcbiAgICAgICAgICogZS5nLiAnaHR0cDovL2FwcC5jb20vSlNFbmdpbmVcbiAgICAgICAgICpcbiAgICAgICAgICogQHR5cGUge1N0cmluZ31cbiAgICAgICAgICovXG4gICAgICAgIGVuZ2luZVVybDogbnVsbCxcblxuICAgICAgICAvKipcbiAgICAgICAgICogRW5naW5lIEVudmlyb25tZW50XG4gICAgICAgICAqXG4gICAgICAgICAqIERlZmluZXMgdGhlIGZ1bmN0aW9uYWxpdHkgb2YgdGhlIGVuZ2luZSBpbiBtYW55IHNlY3Rpb25zLlxuICAgICAgICAgKlxuICAgICAgICAgKiBWYWx1ZXM6ICdkZXZlbG9wbWVudCcsICdwcm9kdWN0aW9uJ1xuICAgICAgICAgKlxuICAgICAgICAgKiBAdHlwZSB7U3RyaW5nfVxuICAgICAgICAgKi9cbiAgICAgICAgZW52aXJvbm1lbnQ6ICdwcm9kdWN0aW9uJyxcblxuICAgICAgICAvKipcbiAgICAgICAgICogVHJhbnNsYXRpb25zIE9iamVjdFxuICAgICAgICAgKlxuICAgICAgICAgKiBDb250YWlucyB0aGUgbG9hZGVkIHRyYW5zbGF0aW9ucyB0byBiZSB1c2VkIHdpdGhpbiBKU0VuZ2luZS5cbiAgICAgICAgICpcbiAgICAgICAgICogQHNlZSBqc2UuY29yZS5sYW5nIG9iamVjdFxuICAgICAgICAgKlxuICAgICAgICAgKiBAdHlwZSB7T2JqZWN0fVxuICAgICAgICAgKi9cbiAgICAgICAgdHJhbnNsYXRpb25zOiB7fSxcblxuICAgICAgICAvKipcbiAgICAgICAgICogTW9kdWxlIENvbGxlY3Rpb25zXG4gICAgICAgICAqXG4gICAgICAgICAqIFByb3ZpZGUgYXJyYXkgd2l0aCB7IG5hbWU6ICcnLCBhdHRyaWJ1dGU6ICcnfSBvYmplY3RzIHRoYXQgZGVmaW5lIHRoZSBjb2xsZWN0aW9ucyB0byBiZSB1c2VkIHdpdGhpblxuICAgICAgICAgKiB0aGUgYXBwbGljYXRpb24uXG4gICAgICAgICAqXG4gICAgICAgICAqIEB0eXBlIHtBcnJheX1cbiAgICAgICAgICovXG4gICAgICAgIGNvbGxlY3Rpb25zOiBbXSxcblxuICAgICAgICAvKipcbiAgICAgICAgICogQ3VycmVudCBMYW5ndWFnZSBDb2RlXG4gICAgICAgICAqXG4gICAgICAgICAqIEB0eXBlIHtTdHJpbmd9XG4gICAgICAgICAqL1xuICAgICAgICBsYW5ndWFnZUNvZGU6ICdkZScsXG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIFNldCB0aGUgZGVidWcgbGV2ZWwgdG8gb25lIG9mIHRoZSBmb2xsb3dpbmc6ICdERUJVRycsICdJTkZPJywgJ0xPRycsICdXQVJOJywgJ0VSUk9SJyxcbiAgICAgICAgICogJ0FMRVJUJywgJ1NJTEVOVCcuXG4gICAgICAgICAqXG4gICAgICAgICAqIEB0eXBlIHtTdHJpbmd9XG4gICAgICAgICAqL1xuICAgICAgICBkZWJ1ZzogJ1NJTEVOVCcsXG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIFVzZSBjYWNoZSBidXN0aW5nIHRlY2huaXF1ZSB3aGVuIGxvYWRpbmcgbW9kdWxlcy5cbiAgICAgICAgICpcbiAgICAgICAgICogQGRlcHJlY2F0ZWQgU2luY2UgdjEuNFxuICAgICAgICAgKlxuICAgICAgICAgKiBAc2VlIGpzZS5jb3JlLm1vZHVsZV9sb2FkZXIgb2JqZWN0XG4gICAgICAgICAqXG4gICAgICAgICAqIEB0eXBlIHtCb29sZWFufVxuICAgICAgICAgKi9cbiAgICAgICAgY2FjaGVCdXN0OiB0cnVlLFxuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBVc2UgY2FjaGUgYnVzdGluZyB0b2tlbiBhcyBwYXJ0IG9mIGZpbGUgbmFtZS5cbiAgICAgICAgICpcbiAgICAgICAgICogQHR5cGUge0Jvb2xlYW59XG4gICAgICAgICAqL1xuICAgICAgICBidXN0RmlsZXM6IGZhbHNlLFxuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBXaGV0aGVyIHRoZSBjbGllbnQgaGFzIGEgbW9iaWxlIGludGVyZmFjZS5cbiAgICAgICAgICpcbiAgICAgICAgICogQHR5cGUge0Jvb2xlYW59XG4gICAgICAgICAqL1xuICAgICAgICBtb2JpbGU6ICgvQW5kcm9pZHx3ZWJPU3xpUGhvbmV8aVBhZHxpUG9kfEJsYWNrQmVycnl8SUVNb2JpbGV8T3BlcmEgTWluaS9pLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCkpLFxuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBXaGV0aGVyIHRoZSBjbGllbnQgc3VwcG9ydHMgdG91Y2ggZXZlbnRzLlxuICAgICAgICAgKlxuICAgICAgICAgKiBAdHlwZSB7Qm9vbGVhbn1cbiAgICAgICAgICovXG4gICAgICAgIHRvdWNoOiAoKCdvbnRvdWNoc3RhcnQnIGluIHdpbmRvdykgfHwgd2luZG93Lm9udG91Y2hzdGFydCB8fCB3aW5kb3cub25tc2dlc3R1cmVjaGFuZ2UpID8gdHJ1ZSA6IGZhbHNlLFxuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBTcGVjaWZ5IHRoZSBwYXRoIGZvciB0aGUgZmlsZSBtYW5hZ2VyLlxuICAgICAgICAgKlxuICAgICAgICAgKiBAZGVwcmVjYXRlZCBTaW5jZSB2MS40XG4gICAgICAgICAqXG4gICAgICAgICAqIEB0eXBlIHtTdHJpbmd9XG4gICAgICAgICAqL1xuICAgICAgICBmaWxlbWFuYWdlcjogJ2luY2x1ZGVzL2NrZWRpdG9yL2ZpbGVtYW5hZ2VyL2luZGV4Lmh0bWwnLFxuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBQYWdlIHRva2VuIHRvIGluY2x1ZGUgaW4gZXZlcnkgQUpBWCByZXF1ZXN0LlxuICAgICAgICAgKlxuICAgICAgICAgKiBUaGUgcGFnZSB0b2tlbiBpcyB1c2VkIHRvIGF2b2lkIENTUkYgYXR0YWNrcy4gSXQgbXVzdCBiZSBwcm92aWRlZCBieSB0aGUgYmFja2VuZCBhbmQgaXQgd2lsbFxuICAgICAgICAgKiBiZSB2YWxpZGF0ZWQgdGhlcmUuXG4gICAgICAgICAqXG4gICAgICAgICAqIEB0eXBlIHtTdHJpbmd9XG4gICAgICAgICAqL1xuICAgICAgICBwYWdlVG9rZW46ICcnLFxuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBDYWNoZSBUb2tlbiBTdHJpbmdcbiAgICAgICAgICpcbiAgICAgICAgICogVGhpcyBjb25maWd1cmF0aW9uIHZhbHVlIHdpbGwgYmUgdXNlZCBpbiBwcm9kdWN0aW9uIGVudmlyb25tZW50IGZvciBjYWNoZSBidXN0aW5nLiBJdCBtdXN0XG4gICAgICAgICAqIGJlIHByb3ZpZGVkIHdpdGggdGhlIHdpbmRvdy5KU0VuZ2luZUNvbmZpZ3VyYXRpb24gb2JqZWN0LlxuICAgICAgICAgKlxuICAgICAgICAgKiBAdHlwZSB7U3RyaW5nfVxuICAgICAgICAgKi9cbiAgICAgICAgY2FjaGVUb2tlbjogJycsXG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIERlZmluZXMgd2hldGhlciB0aGUgaGlzdG9yeSBvYmplY3QgaXMgYXZhaWxhYmxlLlxuICAgICAgICAgKlxuICAgICAgICAgKiBAdHlwZSB7Qm9vbGVhbn1cbiAgICAgICAgICovXG4gICAgICAgIGhpc3Rvcnk6IGhpc3RvcnkgJiYgaGlzdG9yeS5yZXBsYWNlU3RhdGUgJiYgaGlzdG9yeS5wdXNoU3RhdGUsXG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIFZ1ZSBDb25maWd1cmF0aW9uXG4gICAgICAgICAqXG4gICAgICAgICAqIFRoaXMgY29uZmlndXJhdGlvbiB3d2lsbCBiZSB1c2VkIGZvciBhZGRpbmcgVnVlIHN1cHBvcnQgaW4gdGhlIGN1cnJlbnQgcGFnZS5cbiAgICAgICAgICpcbiAgICAgICAgICogQHR5cGUge09iamVjdH1cbiAgICAgICAgICovXG4gICAgICAgIHZ1ZTogbnVsbCxcbiAgICB9O1xuXG4gICAgLyoqXG4gICAgICogQmxhY2tsaXN0IGNvbmZpZyB2YWx1ZXMgaW4gcHJvZHVjdGlvbiBlbnZpcm9ubWVudC5cbiAgICAgKlxuICAgICAqIEB0eXBlIHtTdHJpbmdbXX1cbiAgICAgKi9cbiAgICBjb25zdCBibGFja2xpc3QgPSBbXG4gICAgICAgICd2ZXJzaW9uJyxcbiAgICAgICAgJ2FwcFZlcnNpb24nLFxuICAgICAgICAnc2hvcFZlcnNpb24nXG4gICAgXTtcblxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vIFBVQkxJQyBNRVRIT0RTXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICAvKipcbiAgICAgKiBHZXQgYSBjb25maWd1cmF0aW9uIHZhbHVlLlxuICAgICAqXG4gICAgICogQHBhcmFtIHtTdHJpbmd9IG5hbWUgVGhlIGNvbmZpZ3VyYXRpb24gdmFsdWUgbmFtZSB0byBiZSByZXRyaWV2ZWQuXG4gICAgICpcbiAgICAgKiBAcmV0dXJuIHsqfSBSZXR1cm5zIHRoZSBjb25maWcgdmFsdWUuXG4gICAgICovXG4gICAgZXhwb3J0cy5nZXQgPSBmdW5jdGlvbiAobmFtZSkge1xuICAgICAgICBpZiAoY29uZmlnLmVudmlyb25tZW50ID09PSAncHJvZHVjdGlvbicgJiYgYmxhY2tsaXN0LmluY2x1ZGVzKG5hbWUpKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBjb25maWdbbmFtZV07XG4gICAgfTtcblxuICAgIC8qKlxuICAgICAqIEluaXRpYWxpemUgdGhlIEpTIEVuZ2luZSBjb25maWcgb2JqZWN0LlxuICAgICAqXG4gICAgICogVGhpcyBtZXRob2Qgd2lsbCBwYXJzZSB0aGUgZ2xvYmFsIFwiSlNFbmdpbmVDb25maWd1cmF0aW9uXCIgb2JqZWN0IGFuZCB0aGVuIHJlbW92ZVxuICAgICAqIGl0IGZyb20gdGhlIGdsb2JhbCBzY29wZSBzbyB0aGF0IGl0IGJlY29tZXMgdGhlIG9ubHkgY29uZmlnIHNvdXJjZSBmb3IgamF2YXNjcmlwdC5cbiAgICAgKlxuICAgICAqIE5vdGljZTogVGhlIG9ubHkgcmVxdWlyZWQgSlNFbmdpbmVDb25maWd1cmF0aW9uIHZhbHVlcyBhcmUgdGhlIFwiZW52aXJvbm1lbnRcIiBhbmQgdGhlIFwiYXBwVXJsXCIuXG4gICAgICpcbiAgICAgKiBAcGFyYW0ge09iamVjdH0ganNFbmdpbmVDb25maWd1cmF0aW9uIE11c3QgY29udGFpbiBpbmZvcm1hdGlvbiB0aGF0IGRlZmluZSBjb3JlIG9wZXJhdGlvbnNcbiAgICAgKiBvZiB0aGUgZW5naW5lLiBDaGVjayB0aGUgXCJsaWJzL2luaXRpYWxpemVcIiBlbnRyeSBvZiB0aGUgZW5naW5lIGRvY3VtZW50YXRpb24uXG4gICAgICovXG4gICAgZXhwb3J0cy5pbml0ID0gZnVuY3Rpb24gKGpzRW5naW5lQ29uZmlndXJhdGlvbikge1xuICAgICAgICBjb25maWcuZW52aXJvbm1lbnQgPSBqc0VuZ2luZUNvbmZpZ3VyYXRpb24uZW52aXJvbm1lbnQ7XG4gICAgICAgIGNvbmZpZy5hcHBVcmwgPSBqc0VuZ2luZUNvbmZpZ3VyYXRpb24uYXBwVXJsLnJlcGxhY2UoL1xcLyskLywgJycpOyAvLyBSZW1vdmUgdHJhaWxpbmcgc2xhc2ggZnJvbSBhcHBVcmwuXG5cbiAgICAgICAgaWYgKGNvbmZpZy5lbnZpcm9ubWVudCA9PT0gJ2RldmVsb3BtZW50Jykge1xuICAgICAgICAgICAgY29uZmlnLmNhY2hlQnVzdCA9IGZhbHNlO1xuICAgICAgICAgICAgY29uZmlnLm1pbmlmaWVkID0gZmFsc2U7XG4gICAgICAgICAgICBjb25maWcuZGVidWcgPSAnREVCVUcnO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGpzRW5naW5lQ29uZmlndXJhdGlvbi5lbmdpbmVVcmwgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgY29uZmlnLmVuZ2luZVVybCA9IGpzRW5naW5lQ29uZmlndXJhdGlvbi5lbmdpbmVVcmwucmVwbGFjZSgvXFwvKyQvLCAnJyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25maWcuZW5naW5lVXJsID0gY29uZmlnLmFwcFVybCArICcvSlNFbmdpbmUvYnVpbGQnO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGpzRW5naW5lQ29uZmlndXJhdGlvbi50cmFuc2xhdGlvbnMgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgY29uZmlnLnRyYW5zbGF0aW9ucyA9IGpzRW5naW5lQ29uZmlndXJhdGlvbi50cmFuc2xhdGlvbnM7XG5cbiAgICAgICAgICAgIGZvciAobGV0IHNlY3Rpb25OYW1lIGluIGNvbmZpZy50cmFuc2xhdGlvbnMpIHtcbiAgICAgICAgICAgICAgICBqc2UuY29yZS5sYW5nLmFkZFNlY3Rpb24oc2VjdGlvbk5hbWUsIGNvbmZpZy50cmFuc2xhdGlvbnNbc2VjdGlvbk5hbWVdKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChqc0VuZ2luZUNvbmZpZ3VyYXRpb24uY29sbGVjdGlvbnMgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgY29uZmlnLmNvbGxlY3Rpb25zID0ganNFbmdpbmVDb25maWd1cmF0aW9uLmNvbGxlY3Rpb25zO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uZmlnLmNvbGxlY3Rpb25zID0gW1xuICAgICAgICAgICAgICAgIHtuYW1lOiAnY29udHJvbGxlcnMnLCBhdHRyaWJ1dGU6ICdjb250cm9sbGVyJ30sXG4gICAgICAgICAgICAgICAge25hbWU6ICdleHRlbnNpb25zJywgYXR0cmlidXRlOiAnZXh0ZW5zaW9uJ30sXG4gICAgICAgICAgICAgICAge25hbWU6ICd3aWRnZXRzJywgYXR0cmlidXRlOiAnd2lkZ2V0J31cbiAgICAgICAgICAgIF1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChqc0VuZ2luZUNvbmZpZ3VyYXRpb24uYXBwVmVyc2lvbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBjb25maWcuYXBwVmVyc2lvbiA9IGpzRW5naW5lQ29uZmlndXJhdGlvbi5hcHBWZXJzaW9uO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGpzRW5naW5lQ29uZmlndXJhdGlvbi5zaG9wVXJsICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIGpzZS5jb3JlLmRlYnVnLndhcm4oJ0pTIEVuZ2luZTogXCJzaG9wVXJsXCIgaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIEpTIEVuZ2luZSB2MS41LCBwbGVhc2UgJ1xuICAgICAgICAgICAgICAgICsgJ3VzZSB0aGUgXCJhcHBVcmxcIiBpbnN0ZWFkLicpO1xuICAgICAgICAgICAgY29uZmlnLnNob3BVcmwgPSBqc0VuZ2luZUNvbmZpZ3VyYXRpb24uc2hvcFVybC5yZXBsYWNlKC9cXC8rJC8sICcnKTtcbiAgICAgICAgICAgIGNvbmZpZy5hcHBVcmwgPSBjb25maWcuYXBwVXJsIHx8IGNvbmZpZy5zaG9wVXJsOyAvLyBNYWtlIHN1cmUgdGhlIFwiYXBwVXJsXCIgdmFsdWUgaXMgbm90IGVtcHR5LlxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGpzRW5naW5lQ29uZmlndXJhdGlvbi5zaG9wVmVyc2lvbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBqc2UuY29yZS5kZWJ1Zy53YXJuKCdKUyBFbmdpbmU6IFwic2hvcFZlcnNpb25cIiBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQgaW4gSlMgRW5naW5lIHYxLjUsIHBsZWFzZSAnXG4gICAgICAgICAgICAgICAgKyAndXNlIHRoZSBcImFwcFZlcnNpb25cIiBpbnN0ZWFkLicpO1xuICAgICAgICAgICAgY29uZmlnLnNob3BWZXJzaW9uID0ganNFbmdpbmVDb25maWd1cmF0aW9uLnNob3BWZXJzaW9uO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGpzRW5naW5lQ29uZmlndXJhdGlvbi5wcmVmaXggIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgY29uZmlnLnByZWZpeCA9IGpzRW5naW5lQ29uZmlndXJhdGlvbi5wcmVmaXg7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoanNFbmdpbmVDb25maWd1cmF0aW9uLmxhbmd1YWdlQ29kZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBjb25maWcubGFuZ3VhZ2VDb2RlID0ganNFbmdpbmVDb25maWd1cmF0aW9uLmxhbmd1YWdlQ29kZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnaW5pdC1qcycpICE9PSBudWxsXG4gICAgICAgICAgICAmJiBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnaW5pdC1qcycpLmhhc0F0dHJpYnV0ZSgnZGF0YS1wYWdlLXRva2VuJykpIHtcbiAgICAgICAgICAgIGpzRW5naW5lQ29uZmlndXJhdGlvbi5wYWdlVG9rZW4gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnaW5pdC1qcycpLmdldEF0dHJpYnV0ZSgnZGF0YS1wYWdlLXRva2VuJyk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoanNFbmdpbmVDb25maWd1cmF0aW9uLnBhZ2VUb2tlbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBjb25maWcucGFnZVRva2VuID0ganNFbmdpbmVDb25maWd1cmF0aW9uLnBhZ2VUb2tlbjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChqc0VuZ2luZUNvbmZpZ3VyYXRpb24uY2FjaGVUb2tlbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBjb25maWcuY2FjaGVUb2tlbiA9IGpzRW5naW5lQ29uZmlndXJhdGlvbi5jYWNoZVRva2VuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGpzRW5naW5lQ29uZmlndXJhdGlvbi5idXN0RmlsZXMgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgY29uZmlnLmJ1c3RGaWxlcyA9IGpzRW5naW5lQ29uZmlndXJhdGlvbi5idXN0RmlsZXM7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoanNFbmdpbmVDb25maWd1cmF0aW9uLnZ1ZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBjb25maWcudnVlID0ganNFbmdpbmVDb25maWd1cmF0aW9uLnZ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEFkZCB0aGUgXCJ0b3VjaEV2ZW50c1wiIGVudHJ5IHNvIHRoYXQgbW9kdWxlcyBjYW4gYmluZCB2YXJpb3VzIHRvdWNoIGV2ZW50cyBkZXBlbmRpbmcgdGhlIGJyb3dzZXIuXG4gICAgICAgIGNvbnN0IGdlbmVyYWxUb3VjaEV2ZW50cyA9IHtcbiAgICAgICAgICAgIHN0YXJ0OiAndG91Y2hzdGFydCcsXG4gICAgICAgICAgICBlbmQ6ICd0cm91Y2hlbmQnLFxuICAgICAgICAgICAgbW92ZTogJ3RvdWNobW92ZSdcbiAgICAgICAgfTtcblxuICAgICAgICBjb25zdCBtaWNyb3NvZnRUb3VjaEV2ZW50cyA9IHtcbiAgICAgICAgICAgIHN0YXJ0OiAncG9pbnRlcmRvd24nLFxuICAgICAgICAgICAgZW5kOiAncG9pbnRlcnVwJyxcbiAgICAgICAgICAgIG1vdmU6ICdwb2ludGVybW92ZSdcbiAgICAgICAgfTtcblxuICAgICAgICBjb25maWcudG91Y2hFdmVudHMgPSAod2luZG93Lm9ubXNnZXN0dXJlY2hhbmdlKSA/IG1pY3Jvc29mdFRvdWNoRXZlbnRzIDogZ2VuZXJhbFRvdWNoRXZlbnRzO1xuXG4gICAgICAgIC8vIFNldCBpbml0aWFsIHJlZ2lzdHJ5IHZhbHVlcy4gXG4gICAgICAgIGZvciAobGV0IGVudHJ5IGluIGpzRW5naW5lQ29uZmlndXJhdGlvbi5yZWdpc3RyeSkge1xuICAgICAgICAgICAganNlLmNvcmUucmVnaXN0cnkuc2V0KGVudHJ5LCBqc0VuZ2luZUNvbmZpZ3VyYXRpb24ucmVnaXN0cnlbZW50cnldKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEluaXRpYWxpemUgdGhlIG1vZHVsZSBsb2FkZXIgb2JqZWN0LlxuICAgICAgICBqc2UuY29yZS5tb2R1bGVfbG9hZGVyLmluaXQoKTtcblxuICAgICAgICAvLyBEZXN0cm95IGdsb2JhbCBFbmdpbmVDb25maWd1cmF0aW9uIG9iamVjdC5cbiAgICAgICAgZGVsZXRlIHdpbmRvdy5KU0VuZ2luZUNvbmZpZ3VyYXRpb247XG4gICAgfTtcblxufShqc2UuY29yZS5jb25maWcpKTtcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gZGVidWcuanMgMjAxNi0wOS0wOFxuIEdhbWJpbyBHbWJIXG4gaHR0cDovL3d3dy5nYW1iaW8uZGVcbiBDb3B5cmlnaHQgKGMpIDIwMTYgR2FtYmlvIEdtYkhcbiBSZWxlYXNlZCB1bmRlciB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgKFZlcnNpb24gMilcbiBbaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2dwbC0yLjAuaHRtbF1cbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbmpzZS5jb3JlLmRlYnVnID0ganNlLmNvcmUuZGVidWcgfHwge307XG5cbi8qKlxuICogSlNFIERlYnVnIE1vZHVsZVxuICpcbiAqIFRoaXMgb2JqZWN0IHByb3ZpZGVzIGFuIHdyYXBwZXIgdG8gdGhlIGNvbnNvbGUubG9nIGZ1bmN0aW9uIGFuZCBlbmFibGVzIGVhc3kgdXNlXG4gKiBvZiB0aGUgZGlmZmVyZW50IGxvZyB0eXBlcyBsaWtlIFwiaW5mb1wiLCBcIndhcm5pbmdcIiwgXCJlcnJvclwiIGV0Yy5cbiAqXG4gKiBAbW9kdWxlIEpTRS9Db3JlL2RlYnVnXG4gKi9cbihmdW5jdGlvbiAoZXhwb3J0cykge1xuICAgICd1c2Ugc3RyaWN0JztcblxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vIFZBUklBQkxFU1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLyoqXG4gICAgICogQHR5cGUge1N0cmluZ31cbiAgICAgKi9cbiAgICBjb25zdCBUWVBFX0RFQlVHID0gJ0RFQlVHJztcblxuICAgIC8qKlxuICAgICAqIEB0eXBlIHtTdHJpbmd9XG4gICAgICovXG4gICAgY29uc3QgVFlQRV9JTkZPID0gJ0lORk8nO1xuXG4gICAgLyoqXG4gICAgICogQHR5cGUge1N0cmluZ31cbiAgICAgKi9cbiAgICBjb25zdCBUWVBFX0xPRyA9ICdMT0cnO1xuXG4gICAgLyoqXG4gICAgICogQHR5cGUge1N0cmluZ31cbiAgICAgKi9cbiAgICBjb25zdCBUWVBFX1dBUk4gPSAnV0FSTic7XG5cbiAgICAvKipcbiAgICAgKiBAdHlwZSB7U3RyaW5nfVxuICAgICAqL1xuICAgIGNvbnN0IFRZUEVfRVJST1IgPSAnRVJST1InO1xuXG4gICAgLyoqXG4gICAgICogQHR5cGUge1N0cmluZ31cbiAgICAgKi9cbiAgICBjb25zdCBUWVBFX0FMRVJUID0gJ0FMRVJUJztcblxuICAgIC8qKlxuICAgICAqIEB0eXBlIHtTdHJpbmd9XG4gICAgICovXG4gICAgY29uc3QgVFlQRV9NT0JJTEUgPSAnTU9CSUxFJztcblxuICAgIC8qKlxuICAgICAqIEB0eXBlIHtTdHJpbmd9XG4gICAgICovXG4gICAgY29uc3QgVFlQRV9TSUxFTlQgPSAnU0lMRU5UJztcblxuICAgIC8qKlxuICAgICAqIEFsbCBwb3NzaWJsZSBkZWJ1ZyBsZXZlbHMgaW4gdGhlIG9yZGVyIG9mIGltcG9ydGFuY2UuXG4gICAgICpcbiAgICAgKiBAdHlwZSB7U3RyaW5nW119XG4gICAgICovXG4gICAgY29uc3QgbGV2ZWxzID0gW1xuICAgICAgICBUWVBFX0RFQlVHLFxuICAgICAgICBUWVBFX0lORk8sXG4gICAgICAgIFRZUEVfTE9HLFxuICAgICAgICBUWVBFX1dBUk4sXG4gICAgICAgIFRZUEVfRVJST1IsXG4gICAgICAgIFRZUEVfQUxFUlQsXG4gICAgICAgIFRZUEVfTU9CSUxFLFxuICAgICAgICBUWVBFX1NJTEVOVFxuICAgIF07XG5cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvLyBGVU5DVElPTlNcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIC8qKlxuICAgICAqIFNldCBGYXZpY29uIHRvIEVycm9yIFN0YXRlLlxuICAgICAqXG4gICAgICogVGhpcyBtZXRob2Qgd2lsbCBvbmx5IHdvcmsgaWYgPGNhbnZhcz4gaXMgc3VwcG9ydGVkIGZyb20gdGhlIGJyb3dzZXIuXG4gICAgICpcbiAgICAgKiBAcHJpdmF0ZVxuICAgICAqL1xuICAgIGZ1bmN0aW9uIF9zZXRGYXZpY29uVG9FcnJvclN0YXRlKCkge1xuICAgICAgICBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTtcbiAgICAgICAgY29uc3QgZmF2aWNvbiA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tyZWw9XCJzaG9ydGN1dCBpY29uXCJdJyk7XG5cbiAgICAgICAgaWYgKGNhbnZhcy5nZXRDb250ZXh0ICYmICFmYXZpY29uLmNsYXNzTmFtZS5pbmNsdWRlcygnZXJyb3Itc3RhdGUnKSkge1xuICAgICAgICAgICAgY29uc3QgaW1nID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnaW1nJyk7XG4gICAgICAgICAgICBjYW52YXMuaGVpZ2h0ID0gY2FudmFzLndpZHRoID0gMTY7XG4gICAgICAgICAgICBjb25zdCBjdHggPSBjYW52YXMuZ2V0Q29udGV4dCgnMmQnKTtcbiAgICAgICAgICAgIGltZy5vbmxvYWQgPSBmdW5jdGlvbiAoKSB7IC8vIENvbnRpbnVlIG9uY2UgdGhlIGltYWdlIGhhcyBiZWVuIGxvYWRlZC4gXG4gICAgICAgICAgICAgICAgY3R4LmRyYXdJbWFnZSh0aGlzLCAwLCAwKTtcbiAgICAgICAgICAgICAgICBjdHguZ2xvYmFsQWxwaGEgPSAwLjY1O1xuICAgICAgICAgICAgICAgIGN0eC5maWxsU3R5bGUgPSAnI0ZGMDAwMCc7XG4gICAgICAgICAgICAgICAgY3R4LnJlY3QoMCwgMCwgMTYsIDE2KTtcbiAgICAgICAgICAgICAgICBjdHguZmlsbCgpO1xuICAgICAgICAgICAgICAgIGZhdmljb24uaHJlZiA9IGNhbnZhcy50b0RhdGFVUkwoJ2ltYWdlL3BuZycpO1xuICAgICAgICAgICAgICAgIGZhdmljb24uY2xhc3NOYW1lICs9ICdlcnJvci1zdGF0ZSc7XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgaW1nLnNyYyA9IGZhdmljb24uaHJlZjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEVycm9yIGhhbmRsZXIgdGhhdCBmZXRjaGVzIGFsbCBleGNlcHRpb25zIHRocm93biBieSB0aGUgamF2YXNjcmlwdC5cbiAgICAgKlxuICAgICAqIEBwcml2YXRlXG4gICAgICovXG4gICAgZnVuY3Rpb24gX2dsb2JhbEVycm9ySGFuZGxlcigpIHtcbiAgICAgICAgaWYgKGpzZS5jb3JlLmNvbmZpZy5nZXQoJ2Vudmlyb25tZW50JykgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgLy8gTG9nIHRoZSBlcnJvciBpbiB0aGUgYnJvd3NlcidzIGNvbnNvbGUuIFxuICAgICAgICAgICAgaWYgKGpzZS5jb3JlLmRlYnVnICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICBqc2UuY29yZS5kZWJ1Zy5lcnJvcignSlMgRW5naW5lIEVycm9yIEhhbmRsZXInLCBhcmd1bWVudHMpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygnSlMgRW5naW5lIEVycm9yIEhhbmRsZXInLCBhcmd1bWVudHMpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBVcGRhdGUgdGhlIHBhZ2UgdGl0bGUgd2l0aCBhbiBlcnJvciBjb3VudC5cbiAgICAgICAgICAgIGNvbnN0IHJlZ2V4ID0gLy5cXCBcXFsoLispXFxdXFwgLztcbiAgICAgICAgICAgIGxldCB0aXRsZSA9IHdpbmRvdy5kb2N1bWVudC50aXRsZTtcbiAgICAgICAgICAgIGxldCBlcnJvckNvdW50ID0gMTtcblxuICAgICAgICAgICAgLy8gR2V0cyB0aGUgY3VycmVudCBlcnJvciBjb3VudCBhbmQgcmVjcmVhdGVzIHRoZSBkZWZhdWx0IHRpdGxlIG9mIHRoZSBwYWdlLlxuICAgICAgICAgICAgaWYgKHRpdGxlLm1hdGNoKHJlZ2V4KSAhPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIGVycm9yQ291bnQgPSBwYXJzZUludCh0aXRsZS5tYXRjaCgvXFxkKy8pWzBdLCAxMCkgKyAxO1xuICAgICAgICAgICAgICAgIHRpdGxlID0gdGl0bGUucmVwbGFjZShyZWdleCwgJycpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBSZS1jcmVhdGVzIHRoZSBlcnJvciBmbGFnIGF0IHRoZSB0aXRsZSB3aXRoIHRoZSBuZXcgZXJyb3IgY291bnQuXG4gICAgICAgICAgICB0aXRsZSA9ICfinJYgWycgKyBlcnJvckNvdW50ICsgJ10gJyArIHRpdGxlO1xuICAgICAgICAgICAgd2luZG93LmRvY3VtZW50LnRpdGxlID0gdGl0bGU7XG5cbiAgICAgICAgICAgIC8vIFNldCBGYXZpY29uIHRvIEVycm9yIFN0YXRlLlxuICAgICAgICAgICAgX3NldEZhdmljb25Ub0Vycm9yU3RhdGUoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEV4ZWN1dGVzIHRoZSBjb3JyZWN0IGNvbnNvbGUvYWxlcnQgc3RhdGVtZW50LlxuICAgICAqXG4gICAgICogQHBhcmFtIHtPYmplY3R9IGNhbGxlciAob3B0aW9uYWwpIENvbnRhaW5zIHRoZSBjYWxsZXIgaW5mb3JtYXRpb24gdG8gYmUgZGlzcGxheWVkLlxuICAgICAqIEBwYXJhbSB7T2JqZWN0fSBkYXRhIChvcHRpb25hbCkgQ29udGFpbnMgYW55IGFkZGl0aW9uYWwgZGF0YSB0byBiZSBpbmNsdWRlZCBpbiB0aGUgZGVidWcgb3V0cHV0LlxuICAgICAqXG4gICAgICogQHByaXZhdGVcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBfZXhlY3V0ZShjYWxsZXIsIGRhdGEpIHtcbiAgICAgICAgY29uc3QgY3VycmVudExvZ0luZGV4ID0gbGV2ZWxzLmluZGV4T2YoY2FsbGVyKTtcbiAgICAgICAgY29uc3QgYWxsb3dlZExvZ0luZGV4ID0gbGV2ZWxzLmluZGV4T2YoanNlLmNvcmUuY29uZmlnLmdldCgnZGVidWcnKSk7XG4gICAgICAgIGxldCBjb25zb2xlTWV0aG9kID0gbnVsbDtcblxuICAgICAgICBpZiAoY3VycmVudExvZ0luZGV4ID49IGFsbG93ZWRMb2dJbmRleCkge1xuICAgICAgICAgICAgY29uc29sZU1ldGhvZCA9IGNhbGxlci50b0xvd2VyQ2FzZSgpO1xuXG4gICAgICAgICAgICBzd2l0Y2ggKGNvbnNvbGVNZXRob2QpIHtcbiAgICAgICAgICAgICAgICBjYXNlICdhbGVydCc6XG4gICAgICAgICAgICAgICAgICAgIGFsZXJ0KEpTT04uc3RyaW5naWZ5KGRhdGEpKTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgICAgICBjYXNlICdtb2JpbGUnOlxuICAgICAgICAgICAgICAgICAgICBjb25zdCAkbW9iaWxlRGVidWdNb2RhbCA9ICQoJy5tb2JpbGUtZGVidWctbW9kYWwnKTtcblxuICAgICAgICAgICAgICAgICAgICBpZiAoISRtb2JpbGVEZWJ1Z01vZGFsLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgJCgnPGRpdiAvPicpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmFkZENsYXNzKCdtb2JpbGUtZGVidWctbW9kYWwnKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5jc3Moe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogJ2ZpeGVkJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXhIZWlnaHQ6ICc1MCUnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaW5XaWR0aDogJzIwMHB4JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4V2lkdGg6ICczMDBweCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogJ2NyaW1zb24nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB6SW5kZXg6IDEwMDAwMCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6ICdzY3JvbGwnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuYXBwZW5kVG8oJCgnYm9keScpKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICRtb2JpbGVEZWJ1Z01vZGFsLmFwcGVuZCgnPHA+JyArIEpTT04uc3RyaW5naWZ5KGRhdGEpICsgJzwvcD4nKTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgICAgICBpZiAoY29uc29sZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47IC8vIFRoZXJlIGlzIG5vIGNvbnNvbGUgc3VwcG9ydCBzbyBkbyBub3QgcHJvY2VlZC5cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgY29uc29sZVtjb25zb2xlTWV0aG9kXS5hcHBseSA9PT0gJ2Z1bmN0aW9uJyB8fCB0eXBlb2YgY29uc29sZS5sb2cuYXBwbHkgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjb25zb2xlW2NvbnNvbGVNZXRob2RdICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlW2NvbnNvbGVNZXRob2RdLmFwcGx5KGNvbnNvbGUsIGRhdGEpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZy5hcHBseShjb25zb2xlLCBkYXRhKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGRhdGEpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBCaW5kIEdsb2JhbCBFcnJvciBIYW5kbGVyXG4gICAgICovXG4gICAgZXhwb3J0cy5iaW5kR2xvYmFsRXJyb3JIYW5kbGVyID0gZnVuY3Rpb24gKCkge1xuICAgICAgICB3aW5kb3cub25lcnJvciA9IF9nbG9iYWxFcnJvckhhbmRsZXI7XG4gICAgfTtcblxuICAgIC8qKlxuICAgICAqIFJlcGxhY2VzIGNvbnNvbGUuZGVidWdcbiAgICAgKlxuICAgICAqIEBwYXJhbXMgeyp9IGFyZ3VtZW50cyBBbnkgZGF0YSB0aGF0IHNob3VsZCBiZSBzaG93biBpbiB0aGUgY29uc29sZSBzdGF0ZW1lbnQuXG4gICAgICovXG4gICAgZXhwb3J0cy5kZWJ1ZyA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgX2V4ZWN1dGUoVFlQRV9ERUJVRywgYXJndW1lbnRzKTtcbiAgICB9O1xuXG4gICAgLyoqXG4gICAgICogUmVwbGFjZXMgY29uc29sZS5pbmZvXG4gICAgICpcbiAgICAgKiBAcGFyYW1zIHsqfSBhcmd1bWVudHMgQW55IGRhdGEgdGhhdCBzaG91bGQgYmUgc2hvd24gaW4gdGhlIGNvbnNvbGUgc3RhdGVtZW50LlxuICAgICAqL1xuICAgIGV4cG9ydHMuaW5mbyA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgX2V4ZWN1dGUoVFlQRV9JTkZPLCBhcmd1bWVudHMpO1xuICAgIH07XG5cbiAgICAvKipcbiAgICAgKiBSZXBsYWNlcyBjb25zb2xlLmxvZ1xuICAgICAqXG4gICAgICogQHBhcmFtcyB7Kn0gYXJndW1lbnRzIEFueSBkYXRhIHRoYXQgc2hvdWxkIGJlIHNob3duIGluIHRoZSBjb25zb2xlIHN0YXRlbWVudC5cbiAgICAgKi9cbiAgICBleHBvcnRzLmxvZyA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgX2V4ZWN1dGUoVFlQRV9MT0csIGFyZ3VtZW50cyk7XG4gICAgfTtcblxuICAgIC8qKlxuICAgICAqIFJlcGxhY2VzIGNvbnNvbGUud2FyblxuICAgICAqXG4gICAgICogQHBhcmFtcyB7Kn0gYXJndW1lbnRzIEFueSBkYXRhIHRoYXQgc2hvdWxkIGJlIHNob3duIGluIHRoZSBjb25zb2xlIHN0YXRlbWVudC5cbiAgICAgKi9cbiAgICBleHBvcnRzLndhcm4gPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIF9leGVjdXRlKFRZUEVfV0FSTiwgYXJndW1lbnRzKTtcbiAgICB9O1xuXG4gICAgLyoqXG4gICAgICogUmVwbGFjZXMgY29uc29sZS5lcnJvclxuICAgICAqXG4gICAgICogQHBhcmFtIHsqfSBhcmd1bWVudHMgQW55IGRhdGEgdGhhdCBzaG91bGQgYmUgc2hvd24gaW4gdGhlIGNvbnNvbGUgc3RhdGVtZW50LlxuICAgICAqL1xuICAgIGV4cG9ydHMuZXJyb3IgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIF9leGVjdXRlKFRZUEVfRVJST1IsIGFyZ3VtZW50cyk7XG4gICAgfTtcblxuICAgIC8qKlxuICAgICAqIFJlcGxhY2VzIGFsZXJ0XG4gICAgICpcbiAgICAgKiBAcGFyYW0geyp9IGFyZ3VtZW50cyBBbnkgZGF0YSB0aGF0IHNob3VsZCBiZSBzaG93biBpbiB0aGUgY29uc29sZSBzdGF0ZW1lbnQuXG4gICAgICovXG4gICAgZXhwb3J0cy5hbGVydCA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgX2V4ZWN1dGUoVFlQRV9BTEVSVCwgYXJndW1lbnRzKTtcbiAgICB9O1xuXG4gICAgLyoqXG4gICAgICogRGVidWcgaW5mbyBmb3IgbW9iaWxlIGRldmljZXMuXG4gICAgICpcbiAgICAgKiBAcGFyYW0geyp9IGFyZ3VtZW50cyBBbnkgZGF0YSB0aGF0IHNob3VsZCBiZSBzaG93biBpbiB0aGUgY29uc29sZSBzdGF0ZW1lbnQuXG4gICAgICovXG4gICAgZXhwb3J0cy5tb2JpbGUgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIF9leGVjdXRlKFRZUEVfTU9CSUxFLCBhcmd1bWVudHMpO1xuICAgIH07XG5cbn0oanNlLmNvcmUuZGVidWcpKTtcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gZW5naW5lLmpzIDIwMTYtMDktMDhcbiBHYW1iaW8gR21iSFxuIGh0dHA6Ly93d3cuZ2FtYmlvLmRlXG4gQ29weXJpZ2h0IChjKSAyMDE2IEdhbWJpbyBHbWJIXG4gUmVsZWFzZWQgdW5kZXIgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIChWZXJzaW9uIDIpXG4gW2h0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMi4wLmh0bWxdXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuXG5qc2UuY29yZS5lbmdpbmUgPSBqc2UuY29yZS5lbmdpbmUgfHwge307XG5cbi8qKlxuICogSlNFIENvcmUgTW9kdWxlXG4gKlxuICogVGhpcyBvYmplY3Qgd2lsbCBpbml0aWFsaXplIHRoZSBwYWdlIG5hbWVzcGFjZXMgYW5kIGNvbGxlY3Rpb25zLlxuICpcbiAqIEBtb2R1bGUgSlNFL0NvcmUvZW5naW5lXG4gKi9cbihmdW5jdGlvbiAoZXhwb3J0cykge1xuXG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy8gUFJJVkFURSBGVU5DVElPTlNcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIC8qKlxuICAgICAqIEluaXRpYWxpemUgdGhlIHBhZ2UgbmFtZXNwYWNlcy5cbiAgICAgKlxuICAgICAqIFRoaXMgbWV0aG9kIHdpbGwgc2VhcmNoIHRoZSBwYWdlIEhUTUwgZm9yIGF2YWlsYWJsZSBuYW1lc3BhY2VzLlxuICAgICAqXG4gICAgICogQHBhcmFtIHtBcnJheX0gY29sbGVjdGlvbnMgQ29udGFpbnMgdGhlIG1vZHVsZSBjb2xsZWN0aW9uIGluc3RhbmNlcyB0byBiZSBpbmNsdWRlZCBpbiB0aGUgbmFtZXNwYWNlcy5cbiAgICAgKlxuICAgICAqIEByZXR1cm4ge0FycmF5fSBSZXR1cm5zIGFuIGFycmF5IHdpdGggdGhlIHBhZ2UgbmFtZXNwYWNlIG5hbWVzLlxuICAgICAqXG4gICAgICogQHByaXZhdGVcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBfaW5pdE5hbWVzcGFjZXMoY29sbGVjdGlvbnMpIHtcbiAgICAgICAgbGV0IHBhZ2VOYW1lc3BhY2VOYW1lcyA9IFtdO1xuXG4gICAgICAgIC8vIFVzZSB0aGUgY3VzdG9tIHBzZXVkbyBzZWxlY3RvciBkZWZpbmVkIGF0IGV4dGVuZC5qcyBpbiBvcmRlciB0byBmZXRjaCB0aGUgYXZhaWxhYmxlIG5hbWVzcGFjZXMuXG4gICAgICAgIGxldCBub2RlcyA9IEFycmF5LmZyb20oZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJyonKSksXG4gICAgICAgICAgICByZWdleCA9IC9kYXRhLSguKiktbmFtZXNwYWNlLztcblxuICAgICAgICBmb3IgKGxldCBub2RlIG9mIG5vZGVzKSB7XG4gICAgICAgICAgICBmb3IgKGxldCBhdHRyaWJ1dGUgb2YgQXJyYXkuZnJvbShub2RlLmF0dHJpYnV0ZXMpKSB7XG4gICAgICAgICAgICAgICAgaWYgKGF0dHJpYnV0ZS5uYW1lLnNlYXJjaChyZWdleCkgIT09IC0xKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIFBhcnNlIHRoZSBuYW1lc3BhY2UgbmFtZSBhbmQgc291cmNlIFVSTC5cbiAgICAgICAgICAgICAgICAgICAgbGV0IG5hbWUgPSBhdHRyaWJ1dGUubmFtZS5yZXBsYWNlKHJlZ2V4LCAnJDEnKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHNvdXJjZSA9IGF0dHJpYnV0ZS52YWx1ZTtcblxuICAgICAgICAgICAgICAgICAgICAvLyBDaGVjayBpZiB0aGUgbmFtZXNwYWNlIGlzIGFscmVhZHkgZGVmaW5lZC5cbiAgICAgICAgICAgICAgICAgICAgaWYgKHBhZ2VOYW1lc3BhY2VOYW1lcy5pbmRleE9mKG5hbWUpID4gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh3aW5kb3dbbmFtZV0uc291cmNlICE9PSBzb3VyY2UpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBqc2UuY29yZS5kZWJ1Zy5lcnJvcihgRWxlbWVudCB3aXRoIHRoZSBkdXBsaWNhdGUgbmFtZXNwYWNlIG5hbWU6ICR7bm9kZX1gKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFRoZSBuYW1lc3BhY2UgXCIke25hbWV9XCIgaXMgYWxyZWFkeSBkZWZpbmVkLiBQbGVhc2Ugc2VsZWN0IGFub3RoZXIgYCArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBuYW1lIGZvciB5b3VyIG5hbWVzcGFjZS5gKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOyAvLyBUaGUgbmFtZXNwYWNlIGlzIGFscmVhZHkgZGVmaW5lZCwgY29udGludWUgbG9vcC5cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGlmIChzb3VyY2UgPT09ICcnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgU3ludGF4RXJyb3IoYE5hbWVzcGFjZSBzb3VyY2UgaXMgZW1wdHk6ICR7bmFtZX1gKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC8vIENyZWF0ZSBhIG5ldyBuYW1lc3BhY2VzIGluc3RhbmNlIGluIHRoZSBnbG9iYWwgc2NvcGUgKHRoZSBnbG9iYWwgc2NvcGUgaXMgdXNlZCBmb3IgXG4gICAgICAgICAgICAgICAgICAgIC8vIGZhbGxiYWNrIHN1cHBvcnQgb2Ygb2xkIG1vZHVsZSBkZWZpbml0aW9ucykuXG4gICAgICAgICAgICAgICAgICAgIGlmIChuYW1lID09PSAnanNlJykgeyAvLyBNb2RpZnkgdGhlIGVuZ2luZSBvYmplY3Qgd2l0aCBOYW1lc3BhY2UgYXR0cmlidXRlcy5cbiAgICAgICAgICAgICAgICAgICAgICAgIF9jb252ZXJ0RW5naW5lVG9OYW1lc3BhY2Uoc291cmNlLCBjb2xsZWN0aW9ucyk7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3dbbmFtZV0gPSBuZXcganNlLmNvbnN0cnVjdG9ycy5OYW1lc3BhY2UobmFtZSwgc291cmNlLCBjb2xsZWN0aW9ucyk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBwYWdlTmFtZXNwYWNlTmFtZXMucHVzaChuYW1lKTtcbiAgICAgICAgICAgICAgICAgICAgbm9kZS5yZW1vdmVBdHRyaWJ1dGUoYXR0cmlidXRlLm5hbWUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFRocm93IGFuIGVycm9yIGlmIG5vIG5hbWVzcGFjZXMgd2VyZSBmb3VuZC5cbiAgICAgICAgaWYgKHBhZ2VOYW1lc3BhY2VOYW1lcy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignTm8gbW9kdWxlIG5hbWVzcGFjZXMgd2VyZSBmb3VuZCwgd2l0aG91dCBuYW1lc3BhY2VzIGl0IGlzIG5vdCBwb3NzaWJsZSB0byAnICtcbiAgICAgICAgICAgICAgICAnbG9hZCBhbnkgbW9kdWxlcy4nKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEluaXRpYWxpemUgdGhlIG5hbWVzcGFjZSBpbnN0YW5jZXMuXG4gICAgICAgIGxldCBkZWZlcnJlZENvbGxlY3Rpb24gPSBbXTtcblxuICAgICAgICBmb3IgKGxldCBuYW1lIG9mIHBhZ2VOYW1lc3BhY2VOYW1lcykge1xuICAgICAgICAgICAgbGV0IGRlZmVycmVkID0gJC5EZWZlcnJlZCgpO1xuXG4gICAgICAgICAgICBkZWZlcnJlZENvbGxlY3Rpb24ucHVzaChkZWZlcnJlZCk7XG5cbiAgICAgICAgICAgIHdpbmRvd1tuYW1lXVxuICAgICAgICAgICAgICAgIC5pbml0KClcbiAgICAgICAgICAgICAgICAuZG9uZShkZWZlcnJlZC5yZXNvbHZlKVxuICAgICAgICAgICAgICAgIC5mYWlsKGRlZmVycmVkLnJlamVjdClcbiAgICAgICAgICAgICAgICAuYWx3YXlzKCgpID0+IGpzZS5jb3JlLmRlYnVnLmluZm8oJ05hbWVzcGFjZSBwcm9taXNlcyB3ZXJlIHJlc29sdmVkOiAnLCBuYW1lKSk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBUcmlnZ2VyIGFuIGV2ZW50IGFmdGVyIHRoZSBlbmdpbmUgaGFzIGluaXRpYWxpemVkIGFsbCBuZXcgbW9kdWxlcy5cbiAgICAgICAgJC53aGVuLmFwcGx5KHVuZGVmaW5lZCwgZGVmZXJyZWRDb2xsZWN0aW9uKS5hbHdheXMoZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgbGV0IGV2ZW50ID0gZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0V2ZW50Jyk7XG4gICAgICAgICAgICBldmVudC5pbml0RXZlbnQoJ0pTRU5HSU5FX0lOSVRfRklOSVNIRUQnLCB0cnVlLCB0cnVlKTtcbiAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ2JvZHknKS5kaXNwYXRjaEV2ZW50KGV2ZW50KTtcbiAgICAgICAgICAgIGpzZS5jb3JlLnJlZ2lzdHJ5LnNldCgnanNlRW5kVGltZScsIG5ldyBEYXRlKCkuZ2V0VGltZSgpKTtcbiAgICAgICAgICAgIGpzZS5jb3JlLmRlYnVnLmluZm8oJ0pTIEVuZ2luZSBMb2FkaW5nIFRpbWU6ICcsIGpzZS5jb3JlLnJlZ2lzdHJ5LmdldCgnanNlRW5kVGltZScpXG4gICAgICAgICAgICAgICAgLSBqc2UuY29yZS5yZWdpc3RyeS5nZXQoJ2pzZVN0YXJ0VGltZScpLCAnbXMnKTtcbiAgICAgICAgICAgIGlmICh3aW5kb3cuQ3lwcmVzcykge1xuICAgICAgICAgICAgICAgIHdpbmRvdy5qc2VSZWFkeSA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiBwYWdlTmFtZXNwYWNlTmFtZXM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29udmVydCB0aGUgXCJqc2VcIiBvYmplY3QgdG8gYSBOYW1lc3BhY2UgY29tcGF0aWJsZSBvYmplY3QuXG4gICAgICpcbiAgICAgKiBJbiBvcmRlciB0byBzdXBwb3J0IHRoZSBcImpzZVwiIG5hbWVzcGFjZSBuYW1lIGZvciB0aGUgY29yZSBtb2R1bGVzIHBsYWNlZCBpbiB0aGUgXCJKU0VuZ2luZVwiXG4gICAgICogZGlyZWN0b3J5LCB3ZSB3aWxsIG5lZWQgdG8gbW9kaWZ5IHRoZSBhbHJlYWR5IGV4aXN0aW5nIFwianNlXCIgb2JqZWN0IHNvIHRoYXQgaXQgY2FuIG9wZXJhdGVcbiAgICAgKiBhcyBhIG5hbWVzcGFjZSB3aXRob3V0IGxvc2luZyBpdHMgaW5pdGlhbCBhdHRyaWJ1dGVzLlxuICAgICAqXG4gICAgICogQHBhcmFtIHtTdHJpbmd9IHNvdXJjZSBOYW1lc3BhY2Ugc291cmNlIHBhdGggZm9yIHRoZSBtb2R1bGUgZmlsZXMuXG4gICAgICogQHBhcmFtIHtBcnJheX0gY29sbGVjdGlvbnMgQ29udGFpbiBpbnN0YW5jZXMgdG8gdGhlIHByb3RvdHlwZSBjb2xsZWN0aW9uIGluc3RhbmNlcy5cbiAgICAgKlxuICAgICAqIEBwcml2YXRlXG4gICAgICovXG4gICAgZnVuY3Rpb24gX2NvbnZlcnRFbmdpbmVUb05hbWVzcGFjZShzb3VyY2UsIGNvbGxlY3Rpb25zKSB7XG4gICAgICAgIGxldCB0bXBOYW1lc3BhY2UgPSBuZXcganNlLmNvbnN0cnVjdG9ycy5OYW1lc3BhY2UoJ2pzZScsIHNvdXJjZSwgY29sbGVjdGlvbnMpO1xuICAgICAgICBqc2UubmFtZSA9IHRtcE5hbWVzcGFjZS5uYW1lO1xuICAgICAgICBqc2Uuc291cmNlID0gdG1wTmFtZXNwYWNlLnNvdXJjZTtcbiAgICAgICAganNlLmNvbGxlY3Rpb25zID0gdG1wTmFtZXNwYWNlLmNvbGxlY3Rpb25zO1xuICAgICAgICBqc2UuaW5pdCA9IGpzZS5jb25zdHJ1Y3RvcnMuTmFtZXNwYWNlLnByb3RvdHlwZS5pbml0O1xuICAgIH1cblxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vIFBVQkxJQyBGVU5DVElPTlNcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIC8qKlxuICAgICAqIEluaXRpYWxpemUgdGhlIGVuZ2luZS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSB7QXJyYXl9IGNvbGxlY3Rpb25zIENvbnRhaW5zIHRoZSBzdXBwb3J0ZWQgbW9kdWxlIGNvbGxlY3Rpb24gZGF0YS5cbiAgICAgKi9cbiAgICBleHBvcnRzLmluaXQgPSBmdW5jdGlvbiAoY29sbGVjdGlvbnMpIHtcbiAgICAgICAgLy8gR2xvYmFsIGVycm9yIGhhbmRsZXIgdGhhdCBleGVjdXRlcyBpZiBhbiB1bmNhdWdodCBKUyBlcnJvciBvY2N1cnMgb24gcGFnZS5cbiAgICAgICAganNlLmNvcmUuZGVidWcuYmluZEdsb2JhbEVycm9ySGFuZGxlcigpO1xuXG4gICAgICAgIC8vIEluaXRpYWxpemUgdGhlIHBhZ2UgbmFtZXNwYWNlcy5cbiAgICAgICAgbGV0IHBhZ2VOYW1lc3BhY2VOYW1lcyA9IF9pbml0TmFtZXNwYWNlcyhjb2xsZWN0aW9ucyk7XG5cbiAgICAgICAgLy8gTG9nIHRoZSBwYWdlIG5hbWVzcGFjZXMgKGZvciBkZWJ1Z2dpbmcgb25seSkuXG4gICAgICAgIGpzZS5jb3JlLmRlYnVnLmluZm8oJ1BhZ2UgTmFtZXNwYWNlczogJyArIHBhZ2VOYW1lc3BhY2VOYW1lcy5qb2luKCkpO1xuXG4gICAgICAgIC8vIFVwZGF0ZSB0aGUgZW5naW5lIHJlZ2lzdHJ5LlxuICAgICAgICBqc2UuY29yZS5yZWdpc3RyeS5zZXQoJ25hbWVzcGFjZXMnLCBwYWdlTmFtZXNwYWNlTmFtZXMpO1xuICAgIH07XG5cbn0pKGpzZS5jb3JlLmVuZ2luZSk7XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIGV4dGVuc2lvbnMuanMgMjAxNy0wMy0wM1xuIEdhbWJpbyBHbWJIXG4gaHR0cDovL3d3dy5nYW1iaW8uZGVcbiBDb3B5cmlnaHQgKGMpIDIwMTcgR2FtYmlvIEdtYkhcbiBSZWxlYXNlZCB1bmRlciB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgKFZlcnNpb24gMilcbiBbaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2dwbC0yLjAuaHRtbF1cbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbi8qKlxuICogSlNFIEV4dGVuc2lvbnNcbiAqXG4gKiBFeHRlbmQgdGhlIGRlZmF1bHQgYmVoYXZpb3VyIG9mIGVuZ2luZSBjb21wb25lbnRzIG9yIGV4dGVybmFsIHBsdWdpbnMgYmVmb3JlIHRoZXkgYXJlIGxvYWRlZC5cbiAqXG4gKiBAbW9kdWxlIEpTRS9Db3JlL2V4dGVuZFxuICovXG4oZnVuY3Rpb24gKCkge1xuXG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy8gUEFSU0UgTU9EVUxFIERBVEEgSlFVRVJZIEVYVEVOU0lPTlxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgJC5mbi5leHRlbmQoe1xuICAgICAgICBwYXJzZU1vZHVsZURhdGE6IGZ1bmN0aW9uIChtb2R1bGVOYW1lKSB7XG4gICAgICAgICAgICBpZiAoIW1vZHVsZU5hbWUgfHwgbW9kdWxlTmFtZSA9PT0gJycpIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ01vZHVsZSBuYW1lIHdhcyBub3QgcHJvdmlkZWQgYXMgYW4gYXJndW1lbnQuJylcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY29uc3QgaW5pdGlhbERhdGEgPSAkKHRoaXMpLmRhdGEoKTtcbiAgICAgICAgICAgIGNvbnN0IGZpbHRlcmVkRGF0YSA9IHt9O1xuXG4gICAgICAgICAgICAvLyBTZWFyY2hlcyBmb3IgbW9kdWxlIHJlbGV2YW50IGRhdGEgaW5zaWRlIHRoZSBtYWluLWRhdGEtb2JqZWN0LiBEYXRhIGZvciBvdGhlciB3aWRnZXRzIHdpbGwgbm90IGdldCBcbiAgICAgICAgICAgIC8vIHBhc3NlZCB0byB0aGlzIHdpZGdldC5cbiAgICAgICAgICAgICQuZWFjaChpbml0aWFsRGF0YSwgZnVuY3Rpb24gKGtleSwgdmFsdWUpIHtcbiAgICAgICAgICAgICAgICBpZiAoa2V5LmluZGV4T2YobW9kdWxlTmFtZSkgPT09IDAgfHwga2V5LmluZGV4T2YobW9kdWxlTmFtZS50b0xvd2VyQ2FzZSgpKSA9PT0gMCkge1xuICAgICAgICAgICAgICAgICAgICBsZXQgbmV3S2V5ID0ga2V5LnN1YnN0cihtb2R1bGVOYW1lLmxlbmd0aCk7XG4gICAgICAgICAgICAgICAgICAgIG5ld0tleSA9IG5ld0tleS5zdWJzdHIoMCwgMSkudG9Mb3dlckNhc2UoKSArIG5ld0tleS5zdWJzdHIoMSk7XG4gICAgICAgICAgICAgICAgICAgIGZpbHRlcmVkRGF0YVtuZXdLZXldID0gdmFsdWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIHJldHVybiBmaWx0ZXJlZERhdGE7XG4gICAgICAgIH1cbiAgICB9KTtcblxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vIERBVEVQSUNLRVIgUkVHSU9OQUwgSU5GT1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgaWYgKCQuZGF0ZXBpY2tlciAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICQuZGF0ZXBpY2tlci5yZWdpb25hbC5kZSA9IHtcbiAgICAgICAgICAgIGRhdGVGb3JtYXQ6ICdkZC5tbS55eScsXG4gICAgICAgICAgICBmaXJzdERheTogMSxcbiAgICAgICAgICAgIGlzUlRMOiBmYWxzZVxuICAgICAgICB9O1xuICAgICAgICAkLmRhdGVwaWNrZXIuc2V0RGVmYXVsdHMoJC5kYXRlcGlja2VyLnJlZ2lvbmFsLmRlKTtcbiAgICB9XG59KCkpO1xuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiBpbml0aWFsaXplLmpzIDIwMTYtMDktMDhcbiBHYW1iaW8gR21iSFxuIGh0dHA6Ly93d3cuZ2FtYmlvLmRlXG4gQ29weXJpZ2h0IChjKSAyMDE2IEdhbWJpbyBHbWJIXG4gUmVsZWFzZWQgdW5kZXIgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIChWZXJzaW9uIDIpXG4gW2h0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMi4wLmh0bWxdXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuXG4ndXNlIHN0cmljdCc7XG5cbi8qKlxuICogSlNFIEluaXRpYWxpemF0aW9uIE1vZHVsZVxuICpcbiAqIFRoZSBkb2N1bWVudC1yZWFkeSBldmVudCBvZiB0aGUgcGFnZSB3aWxsIHRyaWdnZXIgdGhlIEphdmFTY3JpcHQgRW5naW5lIGluaXRpYWxpemF0aW9uLiBUaGVcbiAqIGVuZ2luZSByZXF1aXJlcyBhIGdsb2JhbCBjb25maWd1cmF0aW9uIG9iamVjdCBcIndpbmRvdy5KU0VuZ2luZUNvbmZpZ3VyYXRpb25cIiB0byBiZSBwcmUtZGVmaW5lZFxuICogaW4gb3JkZXIgdG8gcmV0cmlldmUgdGhlIGJhc2ljIGNvbmZpZ3VyYXRpb24gaW5mby4gQWZ0ZXIgYSBzdWNjZXNzZnVsIGluaXRpYWxpemF0aW9uIHRoaXMgb2JqZWN0XG4gKiBpcyByZW1vdmVkIGZyb20gdGhlIHdpbmRvdyBvYmplY3QuXG4gKlxuICogIyMjIENvbmZpZ3VyYXRpb24gU2FtcGxlXG4gKlxuICogYGBganNcbiAqIHdpbmRvdy5KU0VuZ2luZUNvbmZpZ3VyYXRpb24gPSB7XG4gKiAgIGVudmlyb25tZW50OiAncHJvZHVjdGlvbicsXG4gKiAgIGFwcFVybDogJ2h0dHA6Ly9hcHAuY29tJyxcbiAqICAgY29sbGVjdGlvbnM6IFtcbiAqICAgICB7bmFtZTogJ2NvbnRyb2xsZXJzJywgYXR0cmlidXRlOiAnY29udHJvbGxlcid9XG4gKiAgIF0sICBcbiAqICAgdHJhbnNsYXRpb25zOiB7XG4gKiAgICAgJ3NlY3Rpb25OYW1lJzogeyAndHJhbnNsYXRpb25LZXknOiAndHJhbnNsYXRpb25WYWx1ZScgfSxcbiAqICAgICAnYW5vdGhlclNlY3Rpb24nOiB7IC4uLiB9XG4gKiAgIH0sXG4gKiAgIGxhbmd1YWdlQ29kZTogJ2VuJyxcbiAqICAgcGFnZVRva2VuOiAnOWFzZDdmOTg3OXNkOGY3OXM5OHM3ZDk4ZidcbiAqIH07XG4gKiBgYGBcbiAqXG4gKiBAbW9kdWxlIEpTRS9Db3JlL2luaXRpYWxpemVcbiAqL1xuXG4vLyBJbml0aWFsaXplIGJhc2UgZW5naW5lIG9iamVjdC4gRXZlcnkgb3RoZXIgcGFydCBvZiB0aGUgZW5naW5lIHdpbGwgcmVmZXIgdG8gdGhpc1xuLy8gY2VudHJhbCBvYmplY3QgZm9yIHRoZSBjb3JlIG9wZXJhdGlvbnMuXG53aW5kb3cuanNlID0ge1xuICAgIGNvcmU6IHt9LFxuICAgIGxpYnM6IHt9LFxuICAgIGNvbnN0cnVjdG9yczoge31cbn07XG5cbi8vIEluaXRpYWxpemUgdGhlIGVuZ2luZSBvbiB3aW5kb3cgbG9hZC4gXG5kb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdET01Db250ZW50TG9hZGVkJywgZnVuY3Rpb24gKCkge1xuICAgIHRyeSB7XG4gICAgICAgIC8vIENoZWNrIGlmIGdsb2JhbCBKU0VuZ2luZUNvbmZpZ3VyYXRpb24gb2JqZWN0IGlzIGRlZmluZWQuXG4gICAgICAgIGlmICh3aW5kb3cuSlNFbmdpbmVDb25maWd1cmF0aW9uID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignVGhlIFwid2luZG93LkpTRW5naW5lQ29uZmlndXJhdGlvblwiIG9iamVjdCBpcyBub3QgZGVmaW5lZCBpbiB0aGUgZ2xvYmFsIHNjb3BlLiAnICtcbiAgICAgICAgICAgICAgICAnVGhpcyBvYmplY3QgaXMgcmVxdWlyZWQgYnkgdGhlIGVuZ2luZSB1cG9uIGl0cyBpbml0aWFsaXphdGlvbi4nKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFBhcnNlIEpTRW5naW5lQ29uZmlndXJhdGlvbiBvYmplY3QuXG4gICAgICAgIGpzZS5jb3JlLmNvbmZpZy5pbml0KHdpbmRvdy5KU0VuZ2luZUNvbmZpZ3VyYXRpb24pO1xuXG4gICAgICAgIC8vIFN0b3JlIHRoZSBKU0Ugc3RhcnQgdGltZSBpbiByZWdpc3RyeSAocHJvZmlsaW5nKS4gXG4gICAgICAgIGpzZS5jb3JlLnJlZ2lzdHJ5LnNldCgnanNlU3RhcnRUaW1lJywgRGF0ZS5ub3coKSk7XG5cbiAgICAgICAgLy8gSW5pdGlhbGl6ZSB0aGUgbW9kdWxlIGNvbGxlY3Rpb25zLlxuICAgICAgICBqc2UuY29yZS5lbmdpbmUuaW5pdChqc2UuY29yZS5jb25maWcuZ2V0KCdjb2xsZWN0aW9ucycpKTtcbiAgICB9IGNhdGNoIChleGNlcHRpb24pIHtcbiAgICAgICAganNlLmNvcmUuZGVidWcuZXJyb3IoJ1VuZXhwZWN0ZWQgZXJyb3IgZHVyaW5nIEpTIEVuZ2luZSBpbml0aWFsaXphdGlvbiEnLCBleGNlcHRpb24pO1xuICAgICAgICAvLyBJbmZvcm0gdGhlIGVuZ2luZSBhYm91dCB0aGUgZXhjZXB0aW9uLlxuICAgICAgICBjb25zdCBldmVudCA9IGRvY3VtZW50LmNyZWF0ZUV2ZW50KCdDdXN0b21FdmVudCcpO1xuICAgICAgICBldmVudC5pbml0Q3VzdG9tRXZlbnQoJ2Vycm9yJywgdHJ1ZSwgdHJ1ZSwgZXhjZXB0aW9uKTtcbiAgICAgICAgd2luZG93LmRpc3BhdGNoRXZlbnQoZXZlbnQpO1xuICAgIH1cblxuICAgIFNWR0luamVjdC5zZXRPcHRpb25zKHtcbiAgICAgICAgb25GYWlsOiBmdW5jdGlvbiAoaW1nLCBzdmcpIHtcbiAgICAgICAgICAgIGltZy5jbGFzc0xpc3QucmVtb3ZlKCdzdmctLWluamVjdCcpOyAvLyBpZiBpbmplY3Rpb24gZmFpbHMgc2hvdyB0aGUgaW1nIGVsZW1lbnRcbiAgICAgICAgfVxuICAgIH0pO1xuICAgIC8vIGluamVjdCBpbWFnZXMgd2l0aCBhbiAuc3ZnIGZpbGUgZW5kaW5nXG4gICAgU1ZHSW5qZWN0KGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ2ltZy5zdmctLWluamVjdCcpLCB7XG4gICAgICAgIG9uQWxsRmluaXNoOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAvLyB0aGUgU1ZHIGluamVjdGlvbiBoYXMgZmluaXNoZWQgZm9yIGFsbCB0aHJlZSBpbWFnZXNcblxuICAgICAgICB9XG4gICAgfSk7XG59KTsgXG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIGxhbmcuanMgMjAxNi0wOC0yM1xuIEdhbWJpbyBHbWJIXG4gaHR0cDovL3d3dy5nYW1iaW8uZGVcbiBDb3B5cmlnaHQgKGMpIDIwMTYgR2FtYmlvIEdtYkhcbiBSZWxlYXNlZCB1bmRlciB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgKFZlcnNpb24gMilcbiBbaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2dwbC0yLjAuaHRtbF1cbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICovXG5cbmpzZS5jb3JlLmxhbmcgPSBqc2UuY29yZS5sYW5nIHx8IHt9O1xuXG4vKipcbiAqIEpTRSBMb2NhbGl6YXRpb24gTGlicmFyeVxuICpcbiAqIFRoZSBnbG9iYWwgTGFuZyBvYmplY3QgY29udGFpbnMgbGFuZ3VhZ2UgaW5mb3JtYXRpb24gdGhhdCBjYW4gYmUgZWFzaWx5IHVzZWQgaW4geW91clxuICogSmF2YVNjcmlwdCBjb2RlLiBUaGUgb2JqZWN0IGNvbnRhaW5zIGNvbnN0YW5jZSB0cmFuc2xhdGlvbnMgYW5kIGR5bmFtaWMgc2VjdGlvbnMgdGhhdFxuICogY2FuIGJlIGxvYWRlZCBhbmQgdXNlZCBpbiBkaWZmZXJlbnQgcGFnZS5cbiAqXG4gKiAjIyMjIEltcG9ydGFudFxuICogVGhlIGVuZ2luZSB3aWxsIGF1dG9tYXRpY2FsbHkgbG9hZCB0cmFuc2xhdGlvbiBzZWN0aW9ucyB0aGF0IGFyZSBwcmVzZW50IGluIHRoZVxuICogYHdpbmRvdy5KU0VuZ2luZUNvbmZpZ3VyYXRpb24udHJhbnNsYXRpb25zYCBwcm9wZXJ0eSB1cG9uIGluaXRpYWxpemF0aW9uLiBGb3IgbW9yZVxuICogaW5mb3JtYXRpb24gbG9vayBhdCB0aGUgXCJjb3JlL2luaXRpYWxpemVcIiBwYWdlIG9mIGRvY3VtZW50YXRpb24gcmVmZXJlbmNlLlxuICpcbiAqIGBgYGphdmFzY3JpcHRcbiAqIGpzZS5jb3JlLmxhbmcuYWRkU2VjdGlvbignc2VjdGlvbk5hbWUnLCB7IHRyYW5zbGF0aW9uS2V5OiAndHJhbnNsYXRpb25WYWx1ZScgfSk7IC8vIEFkZCB0cmFuc2xhdGlvbiBzZWN0aW9uLlxuICoganNlLmNvcmUudHJhbnNsYXRlKCd0cmFuc2xhdGlvbktleScsICdzZWN0aW9uTmFtZScpOyAvLyBHZXQgdGhlIHRyYW5zbGF0ZWQgc3RyaW5nLlxuICoganNlLmNvcmUuZ2V0U2VjdGlvbnMoKTsgLy8gcmV0dXJucyBhcnJheSB3aXRoIHNlY3Rpb25zIGUuZy4gWydhZG1pbl9idXR0b25zJywgJ2dlbmVyYWwnXVxuICogYGBgXG4gKlxuICogQG1vZHVsZSBKU0UvQ29yZS9sYW5nXG4gKi9cbihmdW5jdGlvbiAoZXhwb3J0cykge1xuXG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy8gVkFSSUFCTEVTXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICAvKipcbiAgICAgKiBDb250YWlucyB2YXJpb3VzIHRyYW5zbGF0aW9uIHNlY3Rpb25zLlxuICAgICAqXG4gICAgICogQHR5cGUge09iamVjdH1cbiAgICAgKi9cbiAgICBjb25zdCBzZWN0aW9ucyA9IHt9O1xuXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy8gUFVCTElDIE1FVEhPRFNcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIC8qKlxuICAgICAqIEFkZCBhIHRyYW5zbGF0aW9uIHNlY3Rpb24uXG4gICAgICpcbiAgICAgKiBAcGFyYW0ge1N0cmluZ30gbmFtZSBOYW1lIG9mIHRoZSBzZWN0aW9uLCB1c2VkIGxhdGVyIGZvciBhY2Nlc3NpbmcgdHJhbnNsYXRpb24gc3RyaW5ncy5cbiAgICAgKiBAcGFyYW0ge09iamVjdH0gdHJhbnNsYXRpb25zIEtleSAtIHZhbHVlIG9iamVjdCBjb250YWluaW5nIHRoZSB0cmFuc2xhdGlvbnMuXG4gICAgICpcbiAgICAgKiBAdGhyb3dzIHtFcnJvcn0gSWYgXCJuYW1lXCIgb3IgXCJ0cmFuc2xhdGlvbnNcIiBhcmd1bWVudHMgYXJlIGludmFsaWQuXG4gICAgICovXG4gICAgZXhwb3J0cy5hZGRTZWN0aW9uID0gZnVuY3Rpb24gKG5hbWUsIHRyYW5zbGF0aW9ucykge1xuICAgICAgICBpZiAodHlwZW9mIG5hbWUgIT09ICdzdHJpbmcnIHx8IHR5cGVvZiB0cmFuc2xhdGlvbnMgIT09ICdvYmplY3QnIHx8IHRyYW5zbGF0aW9ucyA9PT0gbnVsbCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGB3aW5kb3cuZ3guY29yZS5sYW5nLmFkZFNlY3Rpb246IEludmFsaWQgYXJndW1lbnRzIHByb3ZpZGVkIChuYW1lOiAke3R5cGVvZiBuYW1lfSwgYFxuICAgICAgICAgICAgICAgICsgYHRyYW5zbGF0aW9uczogJHt0eXBlb2YgdHJhbnNsYXRpb25zfSkuYCk7XG4gICAgICAgIH1cbiAgICAgICAgc2VjdGlvbnNbbmFtZV0gPSB0cmFuc2xhdGlvbnM7XG4gICAgfTtcblxuICAgIC8qKlxuICAgICAqIEdldCBsb2FkZWQgdHJhbnNsYXRpb24gc2VjdGlvbnMuXG4gICAgICpcbiAgICAgKiBVc2VmdWwgZm9yIGFzc2VydGluZyBwcmVzZW50IHRyYW5zbGF0aW9uIHNlY3Rpb25zLlxuICAgICAqXG4gICAgICogQHJldHVybiB7QXJyYXl9IFJldHVybnMgYXJyYXkgd2l0aCB0aGUgZXhpc3Rpbmcgc2VjdGlvbnMuXG4gICAgICovXG4gICAgZXhwb3J0cy5nZXRTZWN0aW9ucyA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgY29uc3QgcmVzdWx0ID0gW107XG5cbiAgICAgICAgZm9yIChsZXQgc2VjdGlvbiBpbiBzZWN0aW9ucykge1xuICAgICAgICAgICAgcmVzdWx0LnB1c2goc2VjdGlvbik7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH07XG5cbiAgICAvKipcbiAgICAgKiBUcmFuc2xhdGUgc3RyaW5nIGluIEphdmFzY3JpcHQgY29kZS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSB7U3RyaW5nfSBwaHJhc2UgTmFtZSBvZiB0aGUgcGhyYXNlIGNvbnRhaW5pbmcgdGhlIHRyYW5zbGF0aW9uLlxuICAgICAqIEBwYXJhbSB7U3RyaW5nfSBzZWN0aW9uIFNlY3Rpb24gbmFtZSBjb250YWluaW5nIHRoZSB0cmFuc2xhdGlvbiBzdHJpbmcuXG4gICAgICpcbiAgICAgKiBAcmV0dXJuIHtTdHJpbmd9IFJldHVybnMgdGhlIHRyYW5zbGF0ZWQgc3RyaW5nLlxuICAgICAqXG4gICAgICogQHRocm93cyB7RXJyb3J9IElmIHByb3ZpZGVkIGFyZ3VtZW50cyBhcmUgaW52YWxpZC5cbiAgICAgKiBAdGhyb3dzIHtFcnJvcn0gSWYgcmVxdWlyZWQgc2VjdGlvbiBkb2VzIG5vdCBleGlzdCBvciB0cmFuc2xhdGlvbiBjb3VsZCBub3QgYmUgZm91bmQuXG4gICAgICovXG4gICAgZXhwb3J0cy50cmFuc2xhdGUgPSBmdW5jdGlvbiAocGhyYXNlLCBzZWN0aW9uKSB7XG4gICAgICAgIC8vIFZhbGlkYXRlIHByb3ZpZGVkIGFyZ3VtZW50cy5cbiAgICAgICAgaWYgKHR5cGVvZiBwaHJhc2UgIT09ICdzdHJpbmcnIHx8IHR5cGVvZiBzZWN0aW9uICE9PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGFyZ3VtZW50cyBwcm92aWRlZCBpbiB0cmFuc2xhdGUgbWV0aG9kIChwaHJhc2U6ICR7dHlwZW9mIHBocmFzZX0sIGBcbiAgICAgICAgICAgICAgICArIGBzZWN0aW9uOiAke3R5cGVvZiBzZWN0aW9ufSkuYCk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBDaGVjayBpZiB0cmFuc2xhdGlvbiBleGlzdHMuXG4gICAgICAgIGlmIChzZWN0aW9uc1tzZWN0aW9uXSA9PT0gdW5kZWZpbmVkIHx8IHNlY3Rpb25zW3NlY3Rpb25dW3BocmFzZV0gPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAganNlLmNvcmUuZGVidWcud2FybihgQ291bGQgbm90IGZvdW5kIHJlcXVlc3RlZCB0cmFuc2xhdGlvbiAocGhyYXNlOiAke3BocmFzZX0sIHNlY3Rpb246ICR7c2VjdGlvbn0pLmApO1xuICAgICAgICAgICAgcmV0dXJuICd7JyArIHNlY3Rpb24gKyAnLicgKyBwaHJhc2UgKyAnfSc7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gc2VjdGlvbnNbc2VjdGlvbl1bcGhyYXNlXTtcbiAgICB9O1xuXG59KGpzZS5jb3JlLmxhbmcpKTtcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiBtYWluLmpzIDIwMTgtMDYtMDdcclxuIEdhbWJpbyBHbWJIXHJcbiBodHRwOi8vd3d3LmdhbWJpby5kZVxyXG4gQ29weXJpZ2h0IChjKSAyMDE4IEdhbWJpbyBHbWJIXHJcbiBSZWxlYXNlZCB1bmRlciB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgKFZlcnNpb24gMilcclxuIFtodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvZ3BsLTIuMC5odG1sXVxyXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICovXHJcblxyXG4vLyBJbXBvcnQgaW5pdGlhbGl6YXRpb24gc2NyaXB0LiBcclxuaW1wb3J0ICcuL2luaXRpYWxpemUnO1xyXG5cclxuLy8gSW1wb3J0IHRoZSBjb25zdHJ1Y3RvciBmaWxlcy4gXHJcbmltcG9ydCAnLi4vY29uc3RydWN0b3JzL2NvbGxlY3Rpb24nO1xyXG5pbXBvcnQgJy4uL2NvbnN0cnVjdG9ycy9kYXRhX2JpbmRpbmcnO1xyXG5pbXBvcnQgJy4uL2NvbnN0cnVjdG9ycy9tb2R1bGUnO1xyXG5pbXBvcnQgJy4uL2NvbnN0cnVjdG9ycy9uYW1lc3BhY2UnO1xyXG5cclxuLy8gSW1wb3J0IHRoZSBjb3JlIGZpbGVzLiBcclxuaW1wb3J0ICcuL2Fib3V0JztcclxuaW1wb3J0ICcuL2NvbmZpZyc7XHJcbmltcG9ydCAnLi9kZWJ1Zyc7XHJcbmltcG9ydCAnLi9lbmdpbmUnO1xyXG5pbXBvcnQgJy4vZXh0ZW5kJztcclxuaW1wb3J0ICcuL2xhbmcnO1xyXG5pbXBvcnQgJy4vcmVxdWlyZSc7XHJcbmltcG9ydCAnLi9tb2R1bGVfbG9hZGVyJztcclxuaW1wb3J0ICcuL3BvbHlmaWxscyc7XHJcbmltcG9ydCAnLi9yZWdpc3RyeSc7XHJcbmltcG9ydCAnLi92dWUnOyIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gbW9kdWxlX2xvYWRlci5qcyAyMDE4LTA5LTEyXG4gR2FtYmlvIEdtYkhcbiBodHRwOi8vd3d3LmdhbWJpby5kZVxuIENvcHlyaWdodCAoYykgMjAxNiBHYW1iaW8gR21iSFxuIFJlbGVhc2VkIHVuZGVyIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSAoVmVyc2lvbiAyKVxuIFtodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvZ3BsLTIuMC5odG1sXVxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKi9cblxuanNlLmNvcmUubW9kdWxlX2xvYWRlciA9IGpzZS5jb3JlLm1vZHVsZV9sb2FkZXIgfHwge307XG5cbi8qKlxuICogSlNFIE1vZHVsZSBMb2FkZXJcbiAqXG4gKiBUaGlzIG9iamVjdCBpcyBhbiBhZGFwdGVyIGJldHdlZW4gdGhlIGVuZ2luZSBhbmQgUmVxdWlyZUpTIHdoaWNoIGlzIHVzZWQgdG8gbG9hZCB0aGUgcmVxdWlyZWQgZmlsZXNcbiAqIGludG8gdGhlIGNsaWVudC5cbiAqXG4gKiBAbW9kdWxlIEpTRS9Db3JlL21vZHVsZV9sb2FkZXJcbiAqL1xuKGZ1bmN0aW9uIChleHBvcnRzKSB7XG5cbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvLyBQUklWQVRFIE1FVEhPRFNcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAgIC8qKlxuICAgICAqIExvYWQgQ1NTIGZpbGUuXG4gICAgICpcbiAgICAgKiBAcGFyYW0ge1N0cmluZ30gdXJsIEFic29sdXRlIFVSTCBvZiB0aGUgQ1NTIGZpbGUgdG8gYmUgbG9hZGVkLlxuICAgICAqXG4gICAgICogQHByaXZhdGVcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBfbG9hZENzcyh1cmwpIHtcbiAgICAgICAgY29uc3QgbGluayA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2xpbmsnKTtcbiAgICAgICAgbGluay50eXBlID0gJ3RleHQvY3NzJztcbiAgICAgICAgbGluay5yZWwgPSAnc3R5bGVzaGVldCc7XG4gICAgICAgIGxpbmsuaHJlZiA9IHVybDtcbiAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2hlYWQnKVswXS5hcHBlbmRDaGlsZChsaW5rKTtcbiAgICB9XG5cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvLyBQVUJMSUMgTUVUSE9EU1xuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLyoqXG4gICAgICogSW5pdGlhbGl6ZSB0aGUgbW9kdWxlIGxvYWRlci5cbiAgICAgKlxuICAgICAqIEV4ZWN1dGUgdGhpcyBtZXRob2QgYWZ0ZXIgdGhlIGVuZ2luZSBjb25maWcgaXMgaW5pdGlhbGl6ZWQuIEl0IHdpbGwgY29uZmlndXJlIHJlcXVpcmUuanNcbiAgICAgKiBzbyB0aGF0IGl0IHdpbGwgYmUgYWJsZSB0byBmaW5kIHRoZSBwcm9qZWN0IGZpbGVzLlxuICAgICAqXG4gICAgICogVGhlIGNhY2hlIGJ1c3RpbmcgbWV0aG9kIHdpbGwgdHJ5IHRvIGNyZWF0ZSBhIG51bWJlciBiYXNlZCBvbiB0aGUgY3VycmVudCBzaG9wIHZlcnNpb24uXG4gICAgICovXG4gICAgZXhwb3J0cy5pbml0ID0gZnVuY3Rpb24gKCkge1xuICAgICAgICBsZXQgY2FjaGVCdXN0ID0gJyc7XG5cbiAgICAgICAgaWYgKGpzZS5jb3JlLmNvbmZpZy5nZXQoJ2Vudmlyb25tZW50JykgPT09ICdwcm9kdWN0aW9uJyAmJlxuICAgICAgICAgICAganNlLmNvcmUuY29uZmlnLmdldCgnYnVzdEZpbGVzJykgPT09IGZhbHNlICYmXG4gICAgICAgICAgICBqc2UuY29yZS5jb25maWcuZ2V0KCdjYWNoZVRva2VuJykpIHtcbiAgICAgICAgICAgIGNhY2hlQnVzdCA9IGBidXN0PSR7anNlLmNvcmUuY29uZmlnLmdldCgnY2FjaGVUb2tlbicpfWA7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBjb25maWcgPSB7XG4gICAgICAgICAgICBiYXNlVXJsOiBqc2UuY29yZS5jb25maWcuZ2V0KCdhcHBVcmwnKSxcbiAgICAgICAgICAgIHVybEFyZ3M6IGNhY2hlQnVzdCxcbiAgICAgICAgICAgIG9uRXJyb3I6IGZ1bmN0aW9uIChlcnJvcikge1xuICAgICAgICAgICAgICAgIGpzZS5jb3JlLmRlYnVnLmVycm9yKCdSZXF1aXJlSlMgRXJyb3I6JywgZXJyb3IpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuXG4gICAgICAgIHdpbmRvdy5yZXF1aXJlLmNvbmZpZyhjb25maWcpO1xuICAgIH07XG5cbiAgICAvKipcbiAgICAgKiBSZXF1aXJlIEpTIGFuZCBDU1MgZmlsZXMgLlxuICAgICAqXG4gICAgICogTm90aWNlOiBUaGVyZSdzIG5vIGNvbmNyZXRlIHdheSB0byBkZXRlcm1pbmUgd2hlbiBDU1MgZGVwZW5kZW5jaWVzIGFyZSBsb2FkZWQuXG4gICAgICpcbiAgICAgKiBAcGFyYW0ge1N0cmluZ1tdfSBkZXBlbmRlbmNpZXMgRGVwZW5kZW5jeSBVUkxzLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IGNhbGxiYWNrIENhbGxiYWNrIG1ldGhvZCB0byBiZSBjYWxsZWQgb25jZSB0aGUgZGVwZW5kZW5jaWVzIGFyZSBsb2FkZWQuXG4gICAgICovXG4gICAgZXhwb3J0cy5yZXF1aXJlID0gZnVuY3Rpb24gKGRlcGVuZGVuY2llcywgY2FsbGJhY2spIHtcbiAgICAgICAgZm9yIChsZXQgZGVwZW5kZW5jeSBvZiBkZXBlbmRlbmNpZXMpIHtcbiAgICAgICAgICAgIGlmIChkZXBlbmRlbmN5LmluY2x1ZGVzKCcuY3NzJykpIHtcbiAgICAgICAgICAgICAgICBfbG9hZENzcyhkZXBlbmRlbmN5KTtcbiAgICAgICAgICAgICAgICBjb25zdCBpbmRleCA9IGRlcGVuZGVuY2llcy5pbmRleE9mKGRlcGVuZGVuY3kpO1xuICAgICAgICAgICAgICAgIGRlcGVuZGVuY2llcy5zcGxpY2UoaW5kZXgsIDEpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGRlcGVuZGVuY2llcy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgIGNhbGxiYWNrKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB3aW5kb3cucmVxdWlyZShkZXBlbmRlbmNpZXMsIGNhbGxiYWNrKTtcbiAgICAgICAgfVxuICAgIH07XG5cbiAgICAvKipcbiAgICAgKiBMb2FkIGEgbW9kdWxlIGZpbGUgd2l0aCB0aGUgdXNlIG9mIHJlcXVpcmVqcy5cbiAgICAgKlxuICAgICAqIEBwYXJhbSB7T2JqZWN0fSAkZWxlbWVudCBTZWxlY3RvciBvZiB0aGUgZWxlbWVudCB3aGljaCBoYXMgdGhlIG1vZHVsZSBkZWZpbml0aW9uLlxuICAgICAqIEBwYXJhbSB7U3RyaW5nfSBuYW1lIE1vZHVsZSBuYW1lIHRvIGJlIGxvYWRlZC4gTW9kdWxlcyBoYXZlIHRoZSBzYW1lIG5hbWVzIGFzIHRoZWlyIGZpbGVzLlxuICAgICAqIEBwYXJhbSB7T2JqZWN0fSBjb2xsZWN0aW9uIEN1cnJlbnQgY29sbGVjdGlvbiBpbnN0YW5jZS5cbiAgICAgKlxuICAgICAqIEByZXR1cm4ge09iamVjdH0gUmV0dXJucyBhIHByb21pc2Ugb2JqZWN0IHRvIGJlIHJlc29sdmVkIHdpdGggdGhlIG1vZHVsZSBpbnN0YW5jZSBhcyBhIHBhcmFtZXRlci5cbiAgICAgKi9cbiAgICBleHBvcnRzLmxvYWQgPSBmdW5jdGlvbiAoJGVsZW1lbnQsIG5hbWUsIGNvbGxlY3Rpb24pIHtcbiAgICAgICAgY29uc3QgZGVmZXJyZWQgPSAkLkRlZmVycmVkKCk7XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGlmIChuYW1lID09PSAnJykge1xuICAgICAgICAgICAgICAgIGRlZmVycmVkLnJlamVjdChuZXcgRXJyb3IoJ01vZHVsZSBuYW1lIGNhbm5vdCBiZSBlbXB0eS4nKSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IGJhc2VNb2R1bGVOYW1lID0gbmFtZS5yZXBsYWNlKC8uKlxcLyguKikkLywgJyQxJyk7IC8vIE5hbWUgd2l0aG91dCB0aGUgcGFyZW50IGRpcmVjdG9yaWVzLlxuXG4gICAgICAgICAgICAvLyBUcnkgdG8gbG9hZCB0aGUgY2FjaGVkIGluc3RhbmNlIG9mIHRoZSBtb2R1bGUuXG4gICAgICAgICAgICBjb25zdCBjYWNoZWQgPSBjb2xsZWN0aW9uLmNhY2hlLm1vZHVsZXNbYmFzZU1vZHVsZU5hbWVdO1xuICAgICAgICAgICAgaWYgKGNhY2hlZCAmJiBjYWNoZWQuY29kZSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgICAgIGRlZmVycmVkLnJlc29sdmUobmV3IGpzZS5jb25zdHJ1Y3RvcnMuTW9kdWxlKCRlbGVtZW50LCBiYXNlTW9kdWxlTmFtZSwgY29sbGVjdGlvbikpO1xuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlOyAvLyBjb250aW51ZSBsb29wXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGxldCBidXN0U3VmZml4ID0gJyc7XG4gICAgICAgICAgICBpZiAoanNlLmNvcmUuY29uZmlnLmdldCgnZW52aXJvbm1lbnQnKSA9PT0gJ3Byb2R1Y3Rpb24nICYmXG4gICAgICAgICAgICAgICAganNlLmNvcmUuY29uZmlnLmdldCgnYnVzdEZpbGVzJykgJiZcbiAgICAgICAgICAgICAgICBqc2UuY29yZS5jb25maWcuZ2V0KCdjYWNoZVRva2VuJylcbiAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgIGJ1c3RTdWZmaXggPSAnLWJ1c3RfJyArIGpzZS5jb3JlLmNvbmZpZy5nZXQoJ2NhY2hlVG9rZW4nKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gVHJ5IHRvIGxvYWQgdGhlIG1vZHVsZSBmaWxlIGZyb20gdGhlIHNlcnZlci5cbiAgICAgICAgICAgIGNvbnN0IGZpbGVFeHRlbnNpb24gPSBqc2UuY29yZS5jb25maWcuZ2V0KCdkZWJ1ZycpICE9PSAnREVCVUcnID8gJy5taW4uanMnIDogJy5qcyc7XG4gICAgICAgICAgICBjb25zdCB1cmwgPSBjb2xsZWN0aW9uLm5hbWVzcGFjZS5zb3VyY2UgKyAnLycgKyBjb2xsZWN0aW9uLm5hbWUgKyAnLycgKyBuYW1lICsgYnVzdFN1ZmZpeCArIGZpbGVFeHRlbnNpb247XG5cbiAgICAgICAgICAgIHdpbmRvdy5yZXF1aXJlKFt1cmxdLCAoKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGNvbGxlY3Rpb24uY2FjaGUubW9kdWxlc1tiYXNlTW9kdWxlTmFtZV0gPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ01vZHVsZSBcIicgKyBuYW1lICsgJ1wiIHdhc25cXCd0IGRlZmluZWQgY29ycmVjdGx5LiBDaGVjayB0aGUgbW9kdWxlIGNvZGUgZm9yICdcbiAgICAgICAgICAgICAgICAgICAgICAgICsgJ2Z1cnRoZXIgdHJvdWJsZXNob290aW5nLicpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIFVzZSB0aGUgc2xpY2UgbWV0aG9kIGZvciBjb3B5aW5nIHRoZSBhcnJheS4gXG4gICAgICAgICAgICAgICAgY29uc3QgZGVwZW5kZW5jaWVzID0gY29sbGVjdGlvbi5jYWNoZS5tb2R1bGVzW2Jhc2VNb2R1bGVOYW1lXS5kZXBlbmRlbmNpZXMuc2xpY2UoKTtcblxuICAgICAgICAgICAgICAgIGlmIChkZXBlbmRlbmNpZXMubGVuZ3RoID09PSAwKSB7IC8vIG5vIGRlcGVuZGVuY2llc1xuICAgICAgICAgICAgICAgICAgICBkZWZlcnJlZC5yZXNvbHZlKG5ldyBqc2UuY29uc3RydWN0b3JzLk1vZHVsZSgkZWxlbWVudCwgYmFzZU1vZHVsZU5hbWUsIGNvbGxlY3Rpb24pKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7IC8vIGNvbnRpbnVlIGxvb3BcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAvLyBMb2FkIHRoZSBkZXBlbmRlbmNpZXMgZmlyc3QuXG4gICAgICAgICAgICAgICAgZm9yIChsZXQgaW5kZXggaW4gZGVwZW5kZW5jaWVzKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGRlcGVuZGVuY3kgPSBkZXBlbmRlbmNpZXNbaW5kZXhdO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmIChkZXBlbmRlbmN5LmluZGV4T2YoJy5jc3MnKSAhPT0gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIF9sb2FkQ3NzKGRlcGVuZGVuY3kpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGVwZW5kZW5jaWVzLnNwbGljZShpbmRleCwgMSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC8vIFRoZW4gY29udmVydCB0aGUgcmVsYXRpdmUgcGF0aCB0byBKU0VuZ2luZS9saWJzIGRpcmVjdG9yeS5cbiAgICAgICAgICAgICAgICAgICAgaWYgKGRlcGVuZGVuY3kuaW5kZXhPZignaHR0cCcpID09PSAtMSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGVwZW5kZW5jaWVzW2luZGV4XSA9IGpzZS5jb3JlLmNvbmZpZy5nZXQoJ2VuZ2luZVVybCcpICsgJy9saWJzLycgKyBkZXBlbmRlbmN5ICsgYnVzdFN1ZmZpeCArIGZpbGVFeHRlbnNpb247XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoZGVwZW5kZW5jeS5zdWJzdHIoLTMpICE9PSAnLmpzJykgeyAvLyBUaGVuIGFkZCB0aGUgZHluYW1pYyBmaWxlIGV4dGVuc2lvbiB0byB0aGUgVVJMLlxuICAgICAgICAgICAgICAgICAgICAgICAgZGVwZW5kZW5jaWVzW2luZGV4XSArPSBidXN0U3VmZml4ICsgZmlsZUV4dGVuc2lvbjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHdpbmRvdy5yZXF1aXJlKGRlcGVuZGVuY2llcywgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBkZWZlcnJlZC5yZXNvbHZlKG5ldyBqc2UuY29uc3RydWN0b3JzLk1vZHVsZSgkZWxlbWVudCwgYmFzZU1vZHVsZU5hbWUsIGNvbGxlY3Rpb24pKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGNhdGNoIChleGNlcHRpb24pIHtcbiAgICAgICAgICAgIGRlZmVycmVkLnJlamVjdChleGNlcHRpb24pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGRlZmVycmVkLnByb21pc2UoKTtcbiAgICB9O1xuXG59KShqc2UuY29yZS5tb2R1bGVfbG9hZGVyKTtcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gcG9seWZpbGxzLmpzIDIwMTYtMDUtMTdcbiBHYW1iaW8gR21iSFxuIGh0dHA6Ly93d3cuZ2FtYmlvLmRlXG4gQ29weXJpZ2h0IChjKSAyMDE2IEdhbWJpbyBHbWJIXG4gUmVsZWFzZWQgdW5kZXIgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIChWZXJzaW9uIDIpXG4gW2h0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMi4wLmh0bWxdXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuXG4vKipcbiAqIEpTRSBQb2x5ZmlsbHNcbiAqXG4gKiBSZXF1aXJlZCBwb2x5ZmlsbHMgZm9yIGNvbXBhdGliaWxpdHkgYW1vbmcgb2xkIGJyb3dzZXJzLlxuICpcbiAqIEBtb2R1bGUgSlNFL0NvcmUvcG9seWZpbGxzXG4gKi9cbihmdW5jdGlvbiAoKSB7XG5cbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICAvLyBJbnRlcm5ldCBFeHBsb3JlciBkb2VzIG5vdCBzdXBwb3J0IHRoZSBvcmlnaW4gcHJvcGVydHkgb2YgdGhlIHdpbmRvdy5sb2NhdGlvbiBvYmplY3QuXG4gICAgLy8ge0BsaW5rIGh0dHA6Ly90b3Nib3Vybi5jb20vYS1maXgtZm9yLXdpbmRvdy1sb2NhdGlvbi1vcmlnaW4taW4taW50ZXJuZXQtZXhwbG9yZXJ9XG4gICAgaWYgKCF3aW5kb3cubG9jYXRpb24ub3JpZ2luKSB7XG4gICAgICAgIHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gPSB3aW5kb3cubG9jYXRpb24ucHJvdG9jb2wgKyAnLy8nICtcbiAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZSArICh3aW5kb3cubG9jYXRpb24ucG9ydCA/ICc6JyArIHdpbmRvdy5sb2NhdGlvbi5wb3J0IDogJycpO1xuICAgIH1cblxuICAgIC8vIERhdGUubm93IG1ldGhvZCBwb2x5ZmlsbFxuICAgIC8vIHtAbGluayBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9KYXZhU2NyaXB0L1JlZmVyZW5jZS9HbG9iYWxfT2JqZWN0cy9EYXRlL25vd31cbiAgICBpZiAoIURhdGUubm93KSB7XG4gICAgICAgIERhdGUubm93ID0gZnVuY3Rpb24gbm93KCkge1xuICAgICAgICAgICAgcmV0dXJuIG5ldyBEYXRlKCkuZ2V0VGltZSgpO1xuICAgICAgICB9O1xuICAgIH1cblxufSkoKTtcblxuXG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIHJlZ2lzdHJ5LmpzIDIwMTYtMDktMDhcbiBHYW1iaW8gR21iSFxuIGh0dHA6Ly93d3cuZ2FtYmlvLmRlXG4gQ29weXJpZ2h0IChjKSAyMDE2IEdhbWJpbyBHbWJIXG4gUmVsZWFzZWQgdW5kZXIgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIChWZXJzaW9uIDIpXG4gW2h0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMi4wLmh0bWxdXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuXG5qc2UuY29yZS5yZWdpc3RyeSA9IGpzZS5jb3JlLnJlZ2lzdHJ5IHx8IHt9O1xuXG4vKipcbiAqIEpTIEVuZ2luZSBSZWdpc3RyeVxuICpcbiAqIFRoaXMgb2JqZWN0IGNvbnRhaW5zIHN0cmluZyBkYXRhIHRoYXQgb3RoZXIgc2VjdGlvbnMgb2YgdGhlIGVuZ2luZSBuZWVkIGluIG9yZGVyIHRvIG9wZXJhdGUgY29ycmVjdGx5LlxuICpcbiAqIEBtb2R1bGUgSlNFL0NvcmUvcmVnaXN0cnlcbiAqL1xuKGZ1bmN0aW9uIChleHBvcnRzKSB7XG5cbiAgICAndXNlIHN0cmljdCc7XG5cbiAgICAvKipcbiAgICAgKiBDb250YWlucyB0aGUgcmVnaXN0cnkgdmFsdWVzLlxuICAgICAqXG4gICAgICogQHR5cGUge09iamVjdFtdfVxuICAgICAqL1xuICAgIGNvbnN0IHJlZ2lzdHJ5ID0gW107XG5cbiAgICAvKipcbiAgICAgKiBTZXQgYSB2YWx1ZSBpbiB0aGUgcmVnaXN0cnkuXG4gICAgICpcbiAgICAgKiBAcGFyYW0ge1N0cmluZ30gbmFtZSBDb250YWlucyB0aGUgbmFtZSBvZiB0aGUgZW50cnkgdG8gYmUgYWRkZWQuXG4gICAgICogQHBhcmFtIHsqfSB2YWx1ZSBUaGUgdmFsdWUgdG8gYmUgd3JpdHRlbiBpbiB0aGUgcmVnaXN0cnkuXG4gICAgICovXG4gICAgZXhwb3J0cy5zZXQgPSBmdW5jdGlvbiAobmFtZSwgdmFsdWUpIHtcbiAgICAgICAgLy8gSWYgYSByZWdpc3RyeSBlbnRyeSB3aXRoIHRoZSBzYW1lIG5hbWUgZXhpc3RzIGFscmVhZHkgdGhlIGZvbGxvd2luZyBjb25zb2xlIHdhcm5pbmcgd2lsbFxuICAgICAgICAvLyBpbmZvcm0gZGV2ZWxvcGVycyB0aGF0IHRoZXkgYXJlIG92ZXJ3cml0aW5nIGFuIGV4aXN0aW5nIHZhbHVlLCBzb21ldGhpbmcgdXNlZnVsIHdoZW4gZGVidWdnaW5nLlxuICAgICAgICBpZiAocmVnaXN0cnlbbmFtZV0gIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAganNlLmNvcmUuZGVidWcud2FybignVGhlIHJlZ2lzdHJ5IHZhbHVlIHdpdGggdGhlIG5hbWUgXCInICsgbmFtZSArICdcIiB3aWxsIGJlIG92ZXJ3cml0dGVuLicpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmVnaXN0cnlbbmFtZV0gPSB2YWx1ZTtcbiAgICB9O1xuXG4gICAgLyoqXG4gICAgICogR2V0IGEgdmFsdWUgZnJvbSB0aGUgcmVnaXN0cnkuXG4gICAgICpcbiAgICAgKiBAcGFyYW0ge1N0cmluZ30gbmFtZSBUaGUgbmFtZSBvZiB0aGUgZW50cnkgdmFsdWUgdG8gYmUgcmV0dXJuZWQuXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyB7Kn0gUmV0dXJucyB0aGUgdmFsdWUgdGhhdCBtYXRjaGVzIHRoZSBuYW1lLlxuICAgICAqL1xuICAgIGV4cG9ydHMuZ2V0ID0gZnVuY3Rpb24gKG5hbWUpIHtcbiAgICAgICAgcmV0dXJuIHJlZ2lzdHJ5W25hbWVdO1xuICAgIH07XG5cbiAgICAvKipcbiAgICAgKiBDaGVjayB0aGUgY3VycmVudCBjb250ZW50IG9mIHRoZSByZWdpc3RyeSBvYmplY3QuXG4gICAgICpcbiAgICAgKiBUaGlzIG1ldGhvZCBpcyBvbmx5IGF2YWlsYWJsZSB3aGVuIHRoZSBlbmdpbmUgZW52aXJvbm1lbnQgaXMgdHVybmVkIGludG8gZGV2ZWxvcG1lbnQuXG4gICAgICovXG4gICAgZXhwb3J0cy5kZWJ1ZyA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgaWYgKGpzZS5jb3JlLmNvbmZpZy5nZXQoJ2Vudmlyb25tZW50JykgPT09ICdkZXZlbG9wbWVudCcpIHtcbiAgICAgICAgICAgIGpzZS5jb3JlLmRlYnVnLmxvZygnUmVnaXN0cnkgT2JqZWN0OicsIHJlZ2lzdHJ5KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignVGhpcyBmdW5jdGlvbiBpcyBub3QgYWxsb3dlZCBpbiBhIHByb2R1Y3Rpb24gZW52aXJvbm1lbnQuJyk7XG4gICAgICAgIH1cbiAgICB9O1xuXG59KShqc2UuY29yZS5yZWdpc3RyeSk7XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gcmVxdWlyZS5qcyAyMDE3LTAzLTI4XHJcbiBHYW1iaW8gR21iSFxyXG4gaHR0cDovL3d3dy5nYW1iaW8uZGVcclxuIENvcHlyaWdodCAoYykgMjAxNyBHYW1iaW8gR21iSFxyXG4gUmVsZWFzZWQgdW5kZXIgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIChWZXJzaW9uIDIpXHJcbiBbaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2dwbC0yLjAuaHRtbF1cclxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAqL1xyXG5cclxuLyoqXHJcbiAqIEFzeW5jaHJvbm91cyBNb2R1bGUgTG9hZGluZ1xyXG4gKlxyXG4gKiBUaGlzIG1vZHVsZSBpcyBhIGZvcmsgb2YgUmVxdWlyZUpTIHdpdGhvdXQgdGhlIEFNRCBmdW5jdGlvbmFsaXR5LiBUaGUgZ2xvYmFsIFwiZGVmaW5lXCIgbWV0aG9kIGlzIHJlbW92ZWQgYXNcclxuICogaXQncyBub3QgbmVjZXNzYXJ5IGJ5IEpTIEVuZ2luZS5cclxuICpcclxuICoge0BsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9yZXF1aXJlanMvcmVxdWlyZWpzfVxyXG4gKlxyXG4gKiBOb3QgdXNpbmcgc3RyaWN0OiB1bmV2ZW4gc3RyaWN0IHN1cHBvcnQgaW4gYnJvd3NlcnMsICMzOTIsIGFuZCBjYXVzZXMgcHJvYmxlbXMgd2l0aCByZXF1aXJlanMuZXhlYygpL3RyYW5zcGlsZXJcclxuICogcGx1Z2lucyB0aGF0IG1heSBub3QgYmUgc3RyaWN0LlxyXG4gKi9cclxuKGZ1bmN0aW9uICgpIHtcclxuXHJcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIFZBUklBQkxFU1xyXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFxyXG5cclxuICAgIHdpbmRvdy5yZXF1aXJlanMgPSB1bmRlZmluZWQ7XHJcbiAgICB3aW5kb3cucmVxdWlyZSA9IHVuZGVmaW5lZDtcclxuXHJcbiAgICBsZXQgcmVxO1xyXG4gICAgbGV0IHM7XHJcbiAgICBsZXQgaGVhZDtcclxuICAgIGxldCBiYXNlRWxlbWVudDtcclxuICAgIGxldCBkYXRhTWFpbjtcclxuICAgIGxldCBzcmM7XHJcbiAgICBsZXQgaW50ZXJhY3RpdmVTY3JpcHQ7XHJcbiAgICBsZXQgbWFpblNjcmlwdDtcclxuICAgIGxldCBzdWJQYXRoO1xyXG4gICAgbGV0IHZlcnNpb24gPSAnMi4xLjIyJztcclxuICAgIGxldCBqc1N1ZmZpeFJlZ0V4cCA9IC9cXC5qcyQvO1xyXG4gICAgbGV0IGN1cnJEaXJSZWdFeHAgPSAvXlxcLlxcLy87XHJcbiAgICBsZXQgb3AgPSBPYmplY3QucHJvdG90eXBlO1xyXG4gICAgbGV0IG9zdHJpbmcgPSBvcC50b1N0cmluZztcclxuICAgIGxldCBoYXNPd24gPSBvcC5oYXNPd25Qcm9wZXJ0eTtcclxuICAgIGxldCBpc0Jyb3dzZXIgPSAhISh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB0eXBlb2YgbmF2aWdhdG9yICE9PSAndW5kZWZpbmVkJyAmJiB3aW5kb3cuZG9jdW1lbnQpO1xyXG4gICAgbGV0IGlzV2ViV29ya2VyID0gIWlzQnJvd3NlciAmJiB0eXBlb2YgaW1wb3J0U2NyaXB0cyAhPT0gJ3VuZGVmaW5lZCc7XHJcbiAgICAvLyBQUzMgaW5kaWNhdGVzIGxvYWRlZCBhbmQgY29tcGxldGUsIGJ1dCBuZWVkIHRvIHdhaXQgZm9yIGNvbXBsZXQgc3BlY2lmaWNhbGx5LiBTZXF1ZW5jZSBpcyAnbG9hZGluZycsICdsb2FkZWQnLCBcclxuICAgIC8vIGV4ZWN1dGlvbiB0aGVuICdjb21wbGV0ZScuIFRoZSBVQSBjaGVjayBpcyB1bmZvcnR1bmF0ZSwgYnV0IG5vdCBzdXJlIGhvdyB0byBmZWF0dXJlIHRlc3Qgdy9vIGNhdXNpbmcgcGVyZiBpc3N1ZXMuXHJcbiAgICBsZXQgcmVhZHlSZWdFeHAgPSBpc0Jyb3dzZXIgJiYgbmF2aWdhdG9yLnBsYXRmb3JtID09PSAnUExBWVNUQVRJT04gMycgPyAvXmNvbXBsZXRlJC8gOiAvXihjb21wbGV0ZXxsb2FkZWQpJC87XHJcbiAgICBsZXQgZGVmQ29udGV4dE5hbWUgPSAnXyc7XHJcbiAgICAvLyBPaCB0aGUgdHJhZ2VkeSwgZGV0ZWN0aW5nIG9wZXJhLiBTZWUgdGhlIHVzYWdlIG9mIGlzT3BlcmEgZm9yIHJlYXNvbi5cclxuICAgIGxldCBpc09wZXJhID0gdHlwZW9mIG9wZXJhICE9PSAndW5kZWZpbmVkJyAmJiBvcGVyYS50b1N0cmluZygpID09PSAnW29iamVjdCBPcGVyYV0nO1xyXG4gICAgbGV0IGNvbnRleHRzID0ge307XHJcbiAgICBsZXQgY2ZnID0ge307XHJcbiAgICBsZXQgZ2xvYmFsRGVmUXVldWUgPSBbXTtcclxuICAgIGxldCB1c2VJbnRlcmFjdGl2ZSA9IGZhbHNlO1xyXG5cclxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLy8gRlVOQ1RJT05TXHJcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDaGVjayB3aGV0aGVyIHZhbHVlIGlzIGEgZnVuY3Rpb24uXHJcbiAgICAgKlxyXG4gICAgICogQHBhcmFtIHsqfSBpdCBWYWx1ZSB0byBiZSBjaGVja2VkLlxyXG4gICAgICpcclxuICAgICAqIEByZXR1cm4ge2Jvb2xlYW59IFJldHVybnMgdGhlIHZhbGlkYXRpb24gcmVzdWx0LlxyXG4gICAgICovXHJcbiAgICBmdW5jdGlvbiBpc0Z1bmN0aW9uKGl0KSB7XHJcbiAgICAgICAgcmV0dXJuIG9zdHJpbmcuY2FsbChpdCkgPT09ICdbb2JqZWN0IEZ1bmN0aW9uXSc7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDaGVjayB3aGV0aGVyIHZhbHVlIGlzIGFuIGFycmF5LlxyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSB7Kn0gaXQgVmFsdWUgdG8gYmUgY2hlY2tlZC5cclxuICAgICAqXHJcbiAgICAgKiBAcmV0dXJuIHtib29sZWFufSBSZXR1cm5zIHRoZSB2YWxpZGF0aW9uIHJlc3VsdC5cclxuICAgICAqL1xyXG4gICAgZnVuY3Rpb24gaXNBcnJheShpdCkge1xyXG4gICAgICAgIHJldHVybiBvc3RyaW5nLmNhbGwoaXQpID09PSAnW29iamVjdCBBcnJheV0nO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogSGVscGVyIGZ1bmN0aW9uIGZvciBpdGVyYXRpbmcgb3ZlciBhbiBhcnJheS5cclxuICAgICAqXHJcbiAgICAgKiBJZiB0aGUgZnVuYyByZXR1cm5zIGEgdHJ1ZSB2YWx1ZSwgaXQgd2lsbCBicmVhayBvdXQgb2YgdGhlIGxvb3AuXHJcbiAgICAgKi9cclxuICAgIGZ1bmN0aW9uIGVhY2goYXJ5LCBmdW5jKSB7XHJcbiAgICAgICAgaWYgKGFyeSkge1xyXG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGFyeS5sZW5ndGg7IGkgKz0gMSkge1xyXG4gICAgICAgICAgICAgICAgaWYgKGFyeVtpXSAmJiBmdW5jKGFyeVtpXSwgaSwgYXJ5KSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogSGVscGVyIGZ1bmN0aW9uIGZvciBpdGVyYXRpbmcgb3ZlciBhbiBhcnJheSBiYWNrd2FyZHMuXHJcbiAgICAgKlxyXG4gICAgICogSWYgdGhlIGZ1bmMgcmV0dXJucyBhIHRydWUgdmFsdWUsIGl0IHdpbGwgYnJlYWsgb3V0IG9mIHRoZSBsb29wLlxyXG4gICAgICovXHJcbiAgICBmdW5jdGlvbiBlYWNoUmV2ZXJzZShhcnksIGZ1bmMpIHtcclxuICAgICAgICBpZiAoYXJ5KSB7XHJcbiAgICAgICAgICAgIGxldCBpO1xyXG4gICAgICAgICAgICBmb3IgKGkgPSBhcnkubGVuZ3RoIC0gMTsgaSA+IC0xOyBpIC09IDEpIHtcclxuICAgICAgICAgICAgICAgIGlmIChhcnlbaV0gJiYgZnVuYyhhcnlbaV0sIGksIGFyeSkpIHtcclxuICAgICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIENoZWNrIHdoZXRoZXIgYW4gb2JqZWN0IGhhcyBhIHNwZWNpZmljIHByb3BlcnR5LlxyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSB7T2JqZWN0fSBvYmogT2JqZWN0IHRvIGJlIGNoZWNrZWQuXHJcbiAgICAgKiBAcGFyYW0ge1N0cmluZ30gcHJvcCBQcm9wZXJ0eSBuYW1lIHRvIGJlIGNoZWNrZWQuXHJcbiAgICAgKlxyXG4gICAgICogQHJldHVybiB7Qm9vbGVhbn0gUmV0dXJucyB0aGUgdmFsaWRhdGlvbiByZXN1bHQuXHJcbiAgICAgKi9cclxuICAgIGZ1bmN0aW9uIGhhc1Byb3Aob2JqLCBwcm9wKSB7XHJcbiAgICAgICAgcmV0dXJuIGhhc093bi5jYWxsKG9iaiwgcHJvcCk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDaGVjayBpZiBhbiBvYmplY3QgaGFzIGEgcHJvcGVydHkgYW5kIGlmIHRoYXQgcHJvcGVydHkgY29udGFpbnMgYSB0cnV0aHkgdmFsdWUuXHJcbiAgICAgKlxyXG4gICAgICogQHBhcmFtIHtPYmplY3R9IG9iaiBPYmplY3QgdG8gYmUgY2hlY2tlZC5cclxuICAgICAqIEBwYXJhbSB7U3RyaW5nfSBwcm9wIFByb3BlcnR5IG5hbWUgdG8gYmUgY2hlY2tlZC5cclxuICAgICAqXHJcbiAgICAgKiBAcmV0dXJuIHtCb29sZWFufSBSZXR1cm5zIHRoZSB2YWxpZGF0aW9uIHJlc3VsdC5cclxuICAgICAqL1xyXG4gICAgZnVuY3Rpb24gZ2V0T3duKG9iaiwgcHJvcCkge1xyXG4gICAgICAgIHJldHVybiBoYXNQcm9wKG9iaiwgcHJvcCkgJiYgb2JqW3Byb3BdO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogQ3ljbGVzIG92ZXIgcHJvcGVydGllcyBpbiBhbiBvYmplY3QgYW5kIGNhbGxzIGEgZnVuY3Rpb24gZm9yIGVhY2ggcHJvcGVydHkgdmFsdWUuXHJcbiAgICAgKlxyXG4gICAgICogSWYgdGhlIGZ1bmN0aW9uIHJldHVybnMgYSB0cnV0aHkgdmFsdWUsIHRoZW4gdGhlIGl0ZXJhdGlvbiBpcyBzdG9wcGVkLlxyXG4gICAgICovXHJcbiAgICBmdW5jdGlvbiBlYWNoUHJvcChvYmosIGZ1bmMpIHtcclxuICAgICAgICBsZXQgcHJvcDtcclxuICAgICAgICBmb3IgKHByb3AgaW4gb2JqKSB7XHJcbiAgICAgICAgICAgIGlmIChoYXNQcm9wKG9iaiwgcHJvcCkpIHtcclxuICAgICAgICAgICAgICAgIGlmIChmdW5jKG9ialtwcm9wXSwgcHJvcCkpIHtcclxuICAgICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFNpbXBsZSBmdW5jdGlvbiB0byBtaXggaW4gcHJvcGVydGllcyBmcm9tIHNvdXJjZSBpbnRvIHRhcmdldCwgYnV0IG9ubHkgaWYgdGFyZ2V0IGRvZXMgbm90IGFscmVhZHkgaGF2ZSBhXHJcbiAgICAgKiBwcm9wZXJ0eSBvZiB0aGUgc2FtZSBuYW1lLlxyXG4gICAgICovXHJcbiAgICBmdW5jdGlvbiBtaXhpbih0YXJnZXQsIHNvdXJjZSwgZm9yY2UsIGRlZXBTdHJpbmdNaXhpbikge1xyXG4gICAgICAgIGlmIChzb3VyY2UpIHtcclxuICAgICAgICAgICAgZWFjaFByb3Aoc291cmNlLCBmdW5jdGlvbiAodmFsdWUsIHByb3ApIHtcclxuICAgICAgICAgICAgICAgIGlmIChmb3JjZSB8fCAhaGFzUHJvcCh0YXJnZXQsIHByb3ApKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKGRlZXBTdHJpbmdNaXhpbiAmJiB0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnICYmIHZhbHVlICYmXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICFpc0FycmF5KHZhbHVlKSAmJiAhaXNGdW5jdGlvbih2YWx1ZSkgJiZcclxuICAgICAgICAgICAgICAgICAgICAgICAgISh2YWx1ZSBpbnN0YW5jZW9mIFJlZ0V4cCkpIHtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghdGFyZ2V0W3Byb3BdKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXRbcHJvcF0gPSB7fTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBtaXhpbih0YXJnZXRbcHJvcF0sIHZhbHVlLCBmb3JjZSwgZGVlcFN0cmluZ01peGluKTtcclxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXRbcHJvcF0gPSB2YWx1ZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gdGFyZ2V0O1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFNpbWlsYXIgdG8gRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQsIGJ1dCB0aGUgJ3RoaXMnIG9iamVjdCBpcyBzcGVjaWZpZWQgZmlyc3QsIHNpbmNlIGl0IGlzIGVhc2llciB0byByZWFkL2ZpZ3VyZSBcclxuICAgIC8vIG91dCB3aGF0ICd0aGlzJyB3aWxsIGJlLlxyXG4gICAgZnVuY3Rpb24gYmluZChvYmosIGZuKSB7XHJcbiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uICgpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZuLmFwcGx5KG9iaiwgYXJndW1lbnRzKTtcclxuICAgICAgICB9O1xyXG4gICAgfVxyXG5cclxuICAgIGZ1bmN0aW9uIHNjcmlwdHMoKSB7XHJcbiAgICAgICAgcmV0dXJuIGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdzY3JpcHQnKTtcclxuICAgIH1cclxuXHJcbiAgICBmdW5jdGlvbiBkZWZhdWx0T25FcnJvcihlcnIpIHtcclxuICAgICAgICB0aHJvdyBlcnI7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQWxsb3cgZ2V0dGluZyBhIGdsb2JhbCB0aGF0IGlzIGV4cHJlc3NlZCBpbiBkb3Qgbm90YXRpb24sIGxpa2UgJ2EuYi5jJy5cclxuICAgIGZ1bmN0aW9uIGdldEdsb2JhbCh2YWx1ZSkge1xyXG4gICAgICAgIGlmICghdmFsdWUpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHZhbHVlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBsZXQgZyA9IGdsb2JhbDtcclxuICAgICAgICBlYWNoKHZhbHVlLnNwbGl0KCcuJyksIGZ1bmN0aW9uIChwYXJ0KSB7XHJcbiAgICAgICAgICAgIGcgPSBnW3BhcnRdO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHJldHVybiBnO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogQ29uc3RydWN0cyBhbiBlcnJvciB3aXRoIGEgcG9pbnRlciB0byBhbiBVUkwgd2l0aCBtb3JlIGluZm9ybWF0aW9uLlxyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSB7U3RyaW5nfSBpZCBUaGUgZXJyb3IgSUQgdGhhdCBtYXBzIHRvIGFuIElEIG9uIGEgd2ViIHBhZ2UuXHJcbiAgICAgKiBAcGFyYW0ge1N0cmluZ30gbXNnIEh1bWFuIHJlYWRhYmxlIGVycm9yLlxyXG4gICAgICogQHBhcmFtIHtFcnJvcn0gW2Vycl0gVGhlIG9yaWdpbmFsIGVycm9yLCBpZiB0aGVyZSBpcyBvbmUuXHJcbiAgICAgKlxyXG4gICAgICogQHJldHVybiB7RXJyb3J9XHJcbiAgICAgKi9cclxuICAgIGZ1bmN0aW9uIG1ha2VFcnJvcihpZCwgbXNnLCBlcnIsIHJlcXVpcmVNb2R1bGVzKSB7XHJcbiAgICAgICAgY29uc3QgZXJyb3IgPSBuZXcgRXJyb3IobXNnICsgJ1xcbmh0dHA6Ly9yZXF1aXJlanMub3JnL2RvY3MvZXJyb3JzLmh0bWwjJyArIGlkKTtcclxuXHJcbiAgICAgICAgZXJyb3IucmVxdWlyZVR5cGUgPSBpZDtcclxuICAgICAgICBlcnJvci5yZXF1aXJlTW9kdWxlcyA9IHJlcXVpcmVNb2R1bGVzO1xyXG5cclxuICAgICAgICBpZiAoZXJyKSB7XHJcbiAgICAgICAgICAgIGVycm9yLm9yaWdpbmFsRXJyb3IgPSBlcnI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gZXJyb3I7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHR5cGVvZiB3aW5kb3cucmVxdWlyZWpzICE9PSAndW5kZWZpbmVkJykge1xyXG4gICAgICAgIGlmIChpc0Z1bmN0aW9uKHdpbmRvdy5yZXF1aXJlanMpKSB7XHJcbiAgICAgICAgICAgIC8vIERvIG5vdCBvdmVyd3JpdGUgYW4gZXhpc3RpbmcgcmVxdWlyZWpzIGluc3RhbmNlLlxyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNmZyA9IHdpbmRvdy5yZXF1aXJlanM7XHJcbiAgICAgICAgd2luZG93LnJlcXVpcmVqcyA9IHVuZGVmaW5lZDtcclxuICAgIH1cclxuXHJcbiAgICAvLyBBbGxvdyBmb3IgYSByZXF1aXJlIGNvbmZpZyBvYmplY3RcclxuICAgIGlmICh0eXBlb2Ygd2luZG93LnJlcXVpcmUgIT09ICd1bmRlZmluZWQnICYmICFpc0Z1bmN0aW9uKHdpbmRvdy5yZXF1aXJlKSkge1xyXG4gICAgICAgIC8vIGFzc3VtZSBpdCBpcyBhIGNvbmZpZyBvYmplY3QuXHJcbiAgICAgICAgY2ZnID0gd2luZG93LnJlcXVpcmU7XHJcbiAgICAgICAgd2luZG93LnJlcXVpcmUgPSB1bmRlZmluZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgZnVuY3Rpb24gbmV3Q29udGV4dChjb250ZXh0TmFtZSkge1xyXG4gICAgICAgIGxldCBpbkNoZWNrTG9hZGVkLCBNb2R1bGUsIGNvbnRleHQsIGhhbmRsZXJzLFxyXG4gICAgICAgICAgICBjaGVja0xvYWRlZFRpbWVvdXRJZCxcclxuICAgICAgICAgICAgY29uZmlnID0ge1xyXG4gICAgICAgICAgICAgICAgLy8gRGVmYXVsdHMuIERvIG5vdCBzZXQgYSBkZWZhdWx0IGZvciBtYXBcclxuICAgICAgICAgICAgICAgIC8vIGNvbmZpZyB0byBzcGVlZCB1cCBub3JtYWxpemUoKSwgd2hpY2hcclxuICAgICAgICAgICAgICAgIC8vIHdpbGwgcnVuIGZhc3RlciBpZiB0aGVyZSBpcyBubyBkZWZhdWx0LlxyXG4gICAgICAgICAgICAgICAgd2FpdFNlY29uZHM6IDcsXHJcbiAgICAgICAgICAgICAgICBiYXNlVXJsOiAnLi8nLFxyXG4gICAgICAgICAgICAgICAgcGF0aHM6IHt9LFxyXG4gICAgICAgICAgICAgICAgYnVuZGxlczoge30sXHJcbiAgICAgICAgICAgICAgICBwa2dzOiB7fSxcclxuICAgICAgICAgICAgICAgIHNoaW06IHt9LFxyXG4gICAgICAgICAgICAgICAgY29uZmlnOiB7fVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICByZWdpc3RyeSA9IHt9LFxyXG4gICAgICAgICAgICAvLyByZWdpc3RyeSBvZiBqdXN0IGVuYWJsZWQgbW9kdWxlcywgdG8gc3BlZWRcclxuICAgICAgICAgICAgLy8gY3ljbGUgYnJlYWtpbmcgY29kZSB3aGVuIGxvdHMgb2YgbW9kdWxlc1xyXG4gICAgICAgICAgICAvLyBhcmUgcmVnaXN0ZXJlZCwgYnV0IG5vdCBhY3RpdmF0ZWQuXHJcbiAgICAgICAgICAgIGVuYWJsZWRSZWdpc3RyeSA9IHt9LFxyXG4gICAgICAgICAgICB1bmRlZkV2ZW50cyA9IHt9LFxyXG4gICAgICAgICAgICBkZWZRdWV1ZSA9IFtdLFxyXG4gICAgICAgICAgICBkZWZpbmVkID0ge30sXHJcbiAgICAgICAgICAgIHVybEZldGNoZWQgPSB7fSxcclxuICAgICAgICAgICAgYnVuZGxlc01hcCA9IHt9LFxyXG4gICAgICAgICAgICByZXF1aXJlQ291bnRlciA9IDEsXHJcbiAgICAgICAgICAgIHVubm9ybWFsaXplZENvdW50ZXIgPSAxO1xyXG5cclxuICAgICAgICAvKipcclxuICAgICAgICAgKiBUcmltcyB0aGUgLiBhbmQgLi4gZnJvbSBhbiBhcnJheSBvZiBwYXRoIHNlZ21lbnRzLlxyXG4gICAgICAgICAqXHJcbiAgICAgICAgICogSXQgd2lsbCBrZWVwIGEgbGVhZGluZyBwYXRoIHNlZ21lbnQgaWYgYSAuLiB3aWxsIGJlY29tZSB0aGUgZmlyc3QgcGF0aCBzZWdtZW50LCB0byBoZWxwIHdpdGggbW9kdWxlIG5hbWVcclxuICAgICAgICAgKiBsb29rdXBzLCB3aGljaCBhY3QgbGlrZSBwYXRocywgYnV0IGNhbiBiZSByZW1hcHBlZC4gQnV0IHRoZSBlbmQgcmVzdWx0LCBhbGwgcGF0aHMgdGhhdCB1c2UgdGhpcyBmdW5jdGlvblxyXG4gICAgICAgICAqIHNob3VsZCBsb29rIG5vcm1hbGl6ZWQuXHJcbiAgICAgICAgICpcclxuICAgICAgICAgKiBOT1RFOiB0aGlzIG1ldGhvZCBNT0RJRklFUyB0aGUgaW5wdXQgYXJyYXkuXHJcbiAgICAgICAgICpcclxuICAgICAgICAgKiBAcGFyYW0ge0FycmF5fSBhcnkgdGhlIGFycmF5IG9mIHBhdGggc2VnbWVudHMuXHJcbiAgICAgICAgICovXHJcbiAgICAgICAgZnVuY3Rpb24gdHJpbURvdHMoYXJ5KSB7XHJcbiAgICAgICAgICAgIGxldCBpLCBwYXJ0O1xyXG4gICAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgYXJ5Lmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgICAgICBwYXJ0ID0gYXJ5W2ldO1xyXG4gICAgICAgICAgICAgICAgaWYgKHBhcnQgPT09ICcuJykge1xyXG4gICAgICAgICAgICAgICAgICAgIGFyeS5zcGxpY2UoaSwgMSk7XHJcbiAgICAgICAgICAgICAgICAgICAgaSAtPSAxO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmIChwYXJ0ID09PSAnLi4nKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gSWYgYXQgdGhlIHN0YXJ0LCBvciBwcmV2aW91cyB2YWx1ZSBpcyBzdGlsbCAuLiwgIGtlZXAgdGhlbSBzbyB0aGF0IHdoZW4gY29udmVydGVkIHRvIGEgcGF0aCBpdCBcclxuICAgICAgICAgICAgICAgICAgICAvLyBtYXkgc3RpbGwgd29yayB3aGVuIGNvbnZlcnRlZCB0byBhIHBhdGgsIGV2ZW4gdGhvdWdoIGFzIGFuIElEIGl0IGlzIGxlc3MgdGhhbiBpZGVhbC4gSW4gbGFyZ2VyIFxyXG4gICAgICAgICAgICAgICAgICAgIC8vIHBvaW50IHJlbGVhc2VzLCBtYXkgYmUgYmV0dGVyIHRvIGp1c3Qga2ljayBvdXQgYW4gZXJyb3IuXHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKGkgPT09IDAgfHwgKGkgPT09IDEgJiYgYXJ5WzJdID09PSAnLi4nKSB8fCBhcnlbaSAtIDFdID09PSAnLi4nKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xyXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoaSA+IDApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYXJ5LnNwbGljZShpIC0gMSwgMik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGkgLT0gMjtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8qKlxyXG4gICAgICAgICAqIEdpdmVuIGEgcmVsYXRpdmUgbW9kdWxlIG5hbWUsIGxpa2UgLi9zb21ldGhpbmcsIG5vcm1hbGl6ZSBpdCB0byBhIHJlYWwgbmFtZSB0aGF0IGNhbiBiZSBtYXBwZWQgdG8gYSBwYXRoLlxyXG4gICAgICAgICAqXHJcbiAgICAgICAgICogQHBhcmFtIHtTdHJpbmd9IG5hbWUgdGhlIHJlbGF0aXZlIG5hbWVcclxuICAgICAgICAgKiBAcGFyYW0ge1N0cmluZ30gYmFzZU5hbWUgYSByZWFsIG5hbWUgdGhhdCB0aGUgbmFtZSBhcmcgaXMgcmVsYXRpdmUgdG8uXHJcbiAgICAgICAgICogQHBhcmFtIHtCb29sZWFufSBhcHBseU1hcCBhcHBseSB0aGUgbWFwIGNvbmZpZyB0byB0aGUgdmFsdWUuIFNob3VsZCBvbmx5IGJlIGRvbmUgaWYgdGhpcyBub3JtYWxpemF0aW9uIGlzXHJcbiAgICAgICAgICogZm9yIGEgZGVwZW5kZW5jeSBJRC5cclxuICAgICAgICAgKlxyXG4gICAgICAgICAqIEByZXR1cm4ge1N0cmluZ30gbm9ybWFsaXplZCBuYW1lXHJcbiAgICAgICAgICovXHJcbiAgICAgICAgZnVuY3Rpb24gbm9ybWFsaXplKG5hbWUsIGJhc2VOYW1lLCBhcHBseU1hcCkge1xyXG4gICAgICAgICAgICBsZXQgcGtnTWFpbiwgbWFwVmFsdWUsIG5hbWVQYXJ0cywgaSwgaiwgbmFtZVNlZ21lbnQsIGxhc3RJbmRleCxcclxuICAgICAgICAgICAgICAgIGZvdW5kTWFwLCBmb3VuZEksIGZvdW5kU3Rhck1hcCwgc3RhckksIG5vcm1hbGl6ZWRCYXNlUGFydHMsXHJcbiAgICAgICAgICAgICAgICBiYXNlUGFydHMgPSAoYmFzZU5hbWUgJiYgYmFzZU5hbWUuc3BsaXQoJy8nKSksXHJcbiAgICAgICAgICAgICAgICBtYXAgPSBjb25maWcubWFwLFxyXG4gICAgICAgICAgICAgICAgc3Rhck1hcCA9IG1hcCAmJiBtYXBbJyonXTtcclxuXHJcbiAgICAgICAgICAgIC8vIEFkanVzdCBhbnkgcmVsYXRpdmUgcGF0aHMuXHJcbiAgICAgICAgICAgIGlmIChuYW1lKSB7XHJcbiAgICAgICAgICAgICAgICBuYW1lID0gbmFtZS5zcGxpdCgnLycpO1xyXG4gICAgICAgICAgICAgICAgbGFzdEluZGV4ID0gbmFtZS5sZW5ndGggLSAxO1xyXG5cclxuICAgICAgICAgICAgICAgIC8vIElmIHdhbnRpbmcgbm9kZSBJRCBjb21wYXRpYmlsaXR5LCBzdHJpcCAuanMgZnJvbSBlbmQgb2YgSURzLiBIYXZlIHRvIGRvIHRoaXMgaGVyZSwgYW5kIG5vdCBpbiBcclxuICAgICAgICAgICAgICAgIC8vIG5hbWVUb1VybCBiZWNhdXNlIG5vZGUgYWxsb3dzIGVpdGhlciAuanMgb3Igbm9uIC5qcyB0byBtYXAgdG8gc2FtZSBmaWxlLlxyXG4gICAgICAgICAgICAgICAgaWYgKGNvbmZpZy5ub2RlSWRDb21wYXQgJiYganNTdWZmaXhSZWdFeHAudGVzdChuYW1lW2xhc3RJbmRleF0pKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbmFtZVtsYXN0SW5kZXhdID0gbmFtZVtsYXN0SW5kZXhdLnJlcGxhY2UoanNTdWZmaXhSZWdFeHAsICcnKTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAvLyBTdGFydHMgd2l0aCBhICcuJyBzbyBuZWVkIHRoZSBiYXNlTmFtZVxyXG4gICAgICAgICAgICAgICAgaWYgKG5hbWVbMF0uY2hhckF0KDApID09PSAnLicgJiYgYmFzZVBhcnRzKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gQ29udmVydCBiYXNlTmFtZSB0byBhcnJheSwgYW5kIGxvcCBvZmYgdGhlIGxhc3QgcGFydCwgc28gdGhhdCAuIG1hdGNoZXMgdGhhdCAnZGlyZWN0b3J5JyBhbmQgbm90IFxyXG4gICAgICAgICAgICAgICAgICAgIC8vIG5hbWUgb2YgdGhlIGJhc2VOYW1lJ3MgbW9kdWxlLiBGb3IgaW5zdGFuY2UsIGJhc2VOYW1lIG9mICdvbmUvdHdvL3RocmVlJywgbWFwcyB0byBcclxuICAgICAgICAgICAgICAgICAgICAvLyAnb25lL3R3by90aHJlZS5qcycsIGJ1dCB3ZSB3YW50IHRoZSBkaXJlY3RvcnksICdvbmUvdHdvJyBmb3IgdGhpcyBub3JtYWxpemF0aW9uLlxyXG4gICAgICAgICAgICAgICAgICAgIG5vcm1hbGl6ZWRCYXNlUGFydHMgPSBiYXNlUGFydHMuc2xpY2UoMCwgYmFzZVBhcnRzLmxlbmd0aCAtIDEpO1xyXG4gICAgICAgICAgICAgICAgICAgIG5hbWUgPSBub3JtYWxpemVkQmFzZVBhcnRzLmNvbmNhdChuYW1lKTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICB0cmltRG90cyhuYW1lKTtcclxuICAgICAgICAgICAgICAgIG5hbWUgPSBuYW1lLmpvaW4oJy8nKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLy8gQXBwbHkgbWFwIGNvbmZpZyBpZiBhdmFpbGFibGUuXHJcbiAgICAgICAgICAgIGlmIChhcHBseU1hcCAmJiBtYXAgJiYgKGJhc2VQYXJ0cyB8fCBzdGFyTWFwKSkge1xyXG4gICAgICAgICAgICAgICAgbmFtZVBhcnRzID0gbmFtZS5zcGxpdCgnLycpO1xyXG5cclxuICAgICAgICAgICAgICAgIG91dGVyTG9vcDogZm9yIChpID0gbmFtZVBhcnRzLmxlbmd0aDsgaSA+IDA7IGkgLT0gMSkge1xyXG4gICAgICAgICAgICAgICAgICAgIG5hbWVTZWdtZW50ID0gbmFtZVBhcnRzLnNsaWNlKDAsIGkpLmpvaW4oJy8nKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKGJhc2VQYXJ0cykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBGaW5kIHRoZSBsb25nZXN0IGJhc2VOYW1lIHNlZ21lbnQgbWF0Y2ggaW4gdGhlIGNvbmZpZy4gU28sIGRvIGpvaW5zIG9uIHRoZSBiaWdnZXN0IHRvIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBzbWFsbGVzdCBsZW5ndGhzIG9mIGJhc2VQYXJ0cy5cclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChqID0gYmFzZVBhcnRzLmxlbmd0aDsgaiA+IDA7IGogLT0gMSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwVmFsdWUgPSBnZXRPd24obWFwLCBiYXNlUGFydHMuc2xpY2UoMCwgaikuam9pbignLycpKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBiYXNlTmFtZSBzZWdtZW50IGhhcyBjb25maWcsIGZpbmQgaWYgaXQgaGFzIG9uZSBmb3IgdGhpcyBuYW1lLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG1hcFZhbHVlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwVmFsdWUgPSBnZXRPd24obWFwVmFsdWUsIG5hbWVTZWdtZW50KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAobWFwVmFsdWUpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gTWF0Y2gsIHVwZGF0ZSBuYW1lIHRvIHRoZSBuZXcgdmFsdWUuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvdW5kTWFwID0gbWFwVmFsdWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvdW5kSSA9IGk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrIG91dGVyTG9vcDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC8vIENoZWNrIGZvciBhIHN0YXIgbWFwIG1hdGNoLCBidXQganVzdCBob2xkIG9uIHRvIGl0LCBpZiB0aGVyZSBpcyBhIHNob3J0ZXIgc2VnbWVudCBtYXRjaCBsYXRlciBpbiBcclxuICAgICAgICAgICAgICAgICAgICAvLyBhIG1hdGNoaW5nIGNvbmZpZywgdGhlbiBmYXZvciBvdmVyIHRoaXMgc3RhciBtYXAuXHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFmb3VuZFN0YXJNYXAgJiYgc3Rhck1hcCAmJiBnZXRPd24oc3Rhck1hcCwgbmFtZVNlZ21lbnQpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvdW5kU3Rhck1hcCA9IGdldE93bihzdGFyTWFwLCBuYW1lU2VnbWVudCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0YXJJID0gaTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgaWYgKCFmb3VuZE1hcCAmJiBmb3VuZFN0YXJNYXApIHtcclxuICAgICAgICAgICAgICAgICAgICBmb3VuZE1hcCA9IGZvdW5kU3Rhck1hcDtcclxuICAgICAgICAgICAgICAgICAgICBmb3VuZEkgPSBzdGFySTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBpZiAoZm91bmRNYXApIHtcclxuICAgICAgICAgICAgICAgICAgICBuYW1lUGFydHMuc3BsaWNlKDAsIGZvdW5kSSwgZm91bmRNYXApO1xyXG4gICAgICAgICAgICAgICAgICAgIG5hbWUgPSBuYW1lUGFydHMuam9pbignLycpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAvLyBJZiB0aGUgbmFtZSBwb2ludHMgdG8gYSBwYWNrYWdlJ3MgbmFtZSwgdXNlIHRoZSBwYWNrYWdlIG1haW4gaW5zdGVhZC5cclxuICAgICAgICAgICAgcGtnTWFpbiA9IGdldE93bihjb25maWcucGtncywgbmFtZSk7XHJcblxyXG4gICAgICAgICAgICByZXR1cm4gcGtnTWFpbiA/IHBrZ01haW4gOiBuYW1lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgZnVuY3Rpb24gcmVtb3ZlU2NyaXB0KG5hbWUpIHtcclxuICAgICAgICAgICAgaWYgKGlzQnJvd3Nlcikge1xyXG4gICAgICAgICAgICAgICAgZWFjaChzY3JpcHRzKCksIGZ1bmN0aW9uIChzY3JpcHROb2RlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHNjcmlwdE5vZGUuZ2V0QXR0cmlidXRlKCdkYXRhLXJlcXVpcmVtb2R1bGUnKSA9PT0gbmFtZSAmJlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzY3JpcHROb2RlLmdldEF0dHJpYnV0ZSgnZGF0YS1yZXF1aXJlY29udGV4dCcpID09PSBjb250ZXh0LmNvbnRleHROYW1lKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNjcmlwdE5vZGUucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChzY3JpcHROb2RlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGZ1bmN0aW9uIGhhc1BhdGhGYWxsYmFjayhpZCkge1xyXG4gICAgICAgICAgICBsZXQgcGF0aENvbmZpZyA9IGdldE93bihjb25maWcucGF0aHMsIGlkKTtcclxuICAgICAgICAgICAgaWYgKHBhdGhDb25maWcgJiYgaXNBcnJheShwYXRoQ29uZmlnKSAmJiBwYXRoQ29uZmlnLmxlbmd0aCA+IDEpIHtcclxuICAgICAgICAgICAgICAgIC8vIFBvcCBvZmYgdGhlIGZpcnN0IGFycmF5IHZhbHVlLCBzaW5jZSBpdCBmYWlsZWQsIGFuZCByZXRyeS5cclxuICAgICAgICAgICAgICAgIHBhdGhDb25maWcuc2hpZnQoKTtcclxuICAgICAgICAgICAgICAgIGNvbnRleHQucmVxdWlyZS51bmRlZihpZCk7XHJcblxyXG4gICAgICAgICAgICAgICAgLy8gQ3VzdG9tIHJlcXVpcmUgdGhhdCBkb2VzIG5vdCBkbyBtYXAgdHJhbnNsYXRpb24sIHNpbmNlIElEIGlzIFwiYWJzb2x1dGVcIiwgYWxyZWFkeSBtYXBwZWQvcmVzb2x2ZWQuXHJcbiAgICAgICAgICAgICAgICBjb250ZXh0Lm1ha2VSZXF1aXJlKG51bGwsIHtcclxuICAgICAgICAgICAgICAgICAgICBza2lwTWFwOiB0cnVlXHJcbiAgICAgICAgICAgICAgICB9KShbaWRdKTtcclxuXHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gVHVybnMgYSBwbHVnaW4hcmVzb3VyY2UgdG8gW3BsdWdpbiwgcmVzb3VyY2VdIHdpdGggdGhlIHBsdWdpbiBiZWluZyB1bmRlZmluZWQgaWYgdGhlIG5hbWUgZGlkIG5vdCBoYXZlIGEgXHJcbiAgICAgICAgLy8gcGx1Z2luIHByZWZpeC5cclxuICAgICAgICBmdW5jdGlvbiBzcGxpdFByZWZpeChuYW1lKSB7XHJcbiAgICAgICAgICAgIGxldCBwcmVmaXgsXHJcbiAgICAgICAgICAgICAgICBpbmRleCA9IG5hbWUgPyBuYW1lLmluZGV4T2YoJyEnKSA6IC0xO1xyXG4gICAgICAgICAgICBpZiAoaW5kZXggPiAtMSkge1xyXG4gICAgICAgICAgICAgICAgcHJlZml4ID0gbmFtZS5zdWJzdHJpbmcoMCwgaW5kZXgpO1xyXG4gICAgICAgICAgICAgICAgbmFtZSA9IG5hbWUuc3Vic3RyaW5nKGluZGV4ICsgMSwgbmFtZS5sZW5ndGgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHJldHVybiBbcHJlZml4LCBuYW1lXTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8qKlxyXG4gICAgICAgICAqIENyZWF0ZXMgYSBtb2R1bGUgbWFwcGluZyB0aGF0IGluY2x1ZGVzIHBsdWdpbiBwcmVmaXgsIG1vZHVsZSBuYW1lLCBhbmQgcGF0aC4gSWYgcGFyZW50TW9kdWxlTWFwIGlzIHByb3ZpZGVkXHJcbiAgICAgICAgICogaXQgd2lsbCBhbHNvIG5vcm1hbGl6ZSB0aGUgbmFtZSB2aWEgcmVxdWlyZS5ub3JtYWxpemUoKVxyXG4gICAgICAgICAqXHJcbiAgICAgICAgICogQHBhcmFtIHtTdHJpbmd9IG5hbWUgVGhlIG1vZHVsZSBuYW1lLlxyXG4gICAgICAgICAqIEBwYXJhbSB7U3RyaW5nfSBbcGFyZW50TW9kdWxlTWFwXSBQYXJlbnQgbW9kdWxlIG1hcCBmb3IgdGhlIG1vZHVsZSBuYW1lLCB1c2VkIHRvIHJlc29sdmUgcmVsYXRpdmUgbmFtZXMuXHJcbiAgICAgICAgICogQHBhcmFtIHtCb29sZWFufSBpc05vcm1hbGl6ZWQgSXMgdGhlIElEIGFscmVhZHkgbm9ybWFsaXplZD8gVGhpcyBpcyB0cnVlIGlmIHRoaXMgY2FsbCBpcyBkb25lIGZvciBhIGRlZmluZSgpXHJcbiAgICAgICAgICogbW9kdWxlIElELlxyXG4gICAgICAgICAqIEBwYXJhbSB7Qm9vbGVhbn0gYXBwbHlNYXA6IGFwcGx5IHRoZSBtYXAgY29uZmlnIHRvIHRoZSBJRC4gU2hvdWxkIG9ubHkgYmUgdHJ1ZSBpZiB0aGlzIG1hcCBpcyBmb3IgYSBkZXBlbmRlbmN5LlxyXG4gICAgICAgICAqXHJcbiAgICAgICAgICogQHJldHVybiB7T2JqZWN0fVxyXG4gICAgICAgICAqL1xyXG4gICAgICAgIGZ1bmN0aW9uIG1ha2VNb2R1bGVNYXAobmFtZSwgcGFyZW50TW9kdWxlTWFwLCBpc05vcm1hbGl6ZWQsIGFwcGx5TWFwKSB7XHJcbiAgICAgICAgICAgIGxldCB1cmwsIHBsdWdpbk1vZHVsZSwgc3VmZml4LCBuYW1lUGFydHMsXHJcbiAgICAgICAgICAgICAgICBwcmVmaXggPSBudWxsLFxyXG4gICAgICAgICAgICAgICAgcGFyZW50TmFtZSA9IHBhcmVudE1vZHVsZU1hcCA/IHBhcmVudE1vZHVsZU1hcC5uYW1lIDogbnVsbCxcclxuICAgICAgICAgICAgICAgIG9yaWdpbmFsTmFtZSA9IG5hbWUsXHJcbiAgICAgICAgICAgICAgICBpc0RlZmluZSA9IHRydWUsXHJcbiAgICAgICAgICAgICAgICBub3JtYWxpemVkTmFtZSA9ICcnO1xyXG5cclxuICAgICAgICAgICAgLy8gSWYgbm8gbmFtZSwgdGhlbiBpdCBtZWFucyBpdCBpcyBhIHJlcXVpcmUgY2FsbCwgZ2VuZXJhdGUgYW5cclxuICAgICAgICAgICAgLy8gaW50ZXJuYWwgbmFtZS5cclxuICAgICAgICAgICAgaWYgKCFuYW1lKSB7XHJcbiAgICAgICAgICAgICAgICBpc0RlZmluZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgbmFtZSA9ICdfQHInICsgKHJlcXVpcmVDb3VudGVyICs9IDEpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBuYW1lUGFydHMgPSBzcGxpdFByZWZpeChuYW1lKTtcclxuICAgICAgICAgICAgcHJlZml4ID0gbmFtZVBhcnRzWzBdO1xyXG4gICAgICAgICAgICBuYW1lID0gbmFtZVBhcnRzWzFdO1xyXG5cclxuICAgICAgICAgICAgaWYgKHByZWZpeCkge1xyXG4gICAgICAgICAgICAgICAgcHJlZml4ID0gbm9ybWFsaXplKHByZWZpeCwgcGFyZW50TmFtZSwgYXBwbHlNYXApO1xyXG4gICAgICAgICAgICAgICAgcGx1Z2luTW9kdWxlID0gZ2V0T3duKGRlZmluZWQsIHByZWZpeCk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC8vIEFjY291bnQgZm9yIHJlbGF0aXZlIHBhdGhzIGlmIHRoZXJlIGlzIGEgYmFzZSBuYW1lLlxyXG4gICAgICAgICAgICBpZiAobmFtZSkge1xyXG4gICAgICAgICAgICAgICAgaWYgKHByZWZpeCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChwbHVnaW5Nb2R1bGUgJiYgcGx1Z2luTW9kdWxlLm5vcm1hbGl6ZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBQbHVnaW4gaXMgbG9hZGVkLCB1c2UgaXRzIG5vcm1hbGl6ZSBtZXRob2QuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG5vcm1hbGl6ZWROYW1lID0gcGx1Z2luTW9kdWxlLm5vcm1hbGl6ZShuYW1lLCBmdW5jdGlvbiAobmFtZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG5vcm1hbGl6ZShuYW1lLCBwYXJlbnROYW1lLCBhcHBseU1hcCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIElmIG5lc3RlZCBwbHVnaW4gcmVmZXJlbmNlcywgdGhlbiBkbyBub3QgdHJ5IHRvXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIG5vcm1hbGl6ZSwgYXMgaXQgd2lsbCBub3Qgbm9ybWFsaXplIGNvcnJlY3RseS4gVGhpc1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBwbGFjZXMgYSByZXN0cmljdGlvbiBvbiByZXNvdXJjZUlkcywgYW5kIHRoZSBsb25nZXJcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gdGVybSBzb2x1dGlvbiBpcyBub3QgdG8gbm9ybWFsaXplIHVudGlsIHBsdWdpbnMgYXJlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGxvYWRlZCBhbmQgYWxsIG5vcm1hbGl6YXRpb25zIHRvIGFsbG93IGZvciBhc3luY1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBsb2FkaW5nIG9mIGEgbG9hZGVyIHBsdWdpbi4gQnV0IGZvciBub3csIGZpeGVzIHRoZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBjb21tb24gdXNlcy4gRGV0YWlscyBpbiAjMTEzMVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBub3JtYWxpemVkTmFtZSA9IG5hbWUuaW5kZXhPZignIScpID09PSAtMSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBub3JtYWxpemUobmFtZSwgcGFyZW50TmFtZSwgYXBwbHlNYXApIDpcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAvLyBBIHJlZ3VsYXIgbW9kdWxlLlxyXG4gICAgICAgICAgICAgICAgICAgIG5vcm1hbGl6ZWROYW1lID0gbm9ybWFsaXplKG5hbWUsIHBhcmVudE5hbWUsIGFwcGx5TWFwKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLy8gTm9ybWFsaXplZCBuYW1lIG1heSBiZSBhIHBsdWdpbiBJRCBkdWUgdG8gbWFwIGNvbmZpZ1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIGFwcGxpY2F0aW9uIGluIG5vcm1hbGl6ZS4gVGhlIG1hcCBjb25maWcgdmFsdWVzIG11c3RcclxuICAgICAgICAgICAgICAgICAgICAvLyBhbHJlYWR5IGJlIG5vcm1hbGl6ZWQsIHNvIGRvIG5vdCBuZWVkIHRvIHJlZG8gdGhhdCBwYXJ0LlxyXG4gICAgICAgICAgICAgICAgICAgIG5hbWVQYXJ0cyA9IHNwbGl0UHJlZml4KG5vcm1hbGl6ZWROYW1lKTtcclxuICAgICAgICAgICAgICAgICAgICBwcmVmaXggPSBuYW1lUGFydHNbMF07XHJcbiAgICAgICAgICAgICAgICAgICAgbm9ybWFsaXplZE5hbWUgPSBuYW1lUGFydHNbMV07XHJcbiAgICAgICAgICAgICAgICAgICAgaXNOb3JtYWxpemVkID0gdHJ1ZTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgdXJsID0gY29udGV4dC5uYW1lVG9Vcmwobm9ybWFsaXplZE5hbWUpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAvLyBJZiB0aGUgaWQgaXMgYSBwbHVnaW4gaWQgdGhhdCBjYW5ub3QgYmUgZGV0ZXJtaW5lZCBpZiBpdCBuZWVkc1xyXG4gICAgICAgICAgICAvLyBub3JtYWxpemF0aW9uLCBzdGFtcCBpdCB3aXRoIGEgdW5pcXVlIElEIHNvIHR3byBtYXRjaGluZyByZWxhdGl2ZVxyXG4gICAgICAgICAgICAvLyBpZHMgdGhhdCBtYXkgY29uZmxpY3QgY2FuIGJlIHNlcGFyYXRlLlxyXG4gICAgICAgICAgICBzdWZmaXggPSBwcmVmaXggJiYgIXBsdWdpbk1vZHVsZSAmJiAhaXNOb3JtYWxpemVkID9cclxuICAgICAgICAgICAgICAgICdfdW5ub3JtYWxpemVkJyArICh1bm5vcm1hbGl6ZWRDb3VudGVyICs9IDEpIDpcclxuICAgICAgICAgICAgICAgICcnO1xyXG5cclxuICAgICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgICAgIHByZWZpeDogcHJlZml4LFxyXG4gICAgICAgICAgICAgICAgbmFtZTogbm9ybWFsaXplZE5hbWUsXHJcbiAgICAgICAgICAgICAgICBwYXJlbnRNYXA6IHBhcmVudE1vZHVsZU1hcCxcclxuICAgICAgICAgICAgICAgIHVubm9ybWFsaXplZDogISFzdWZmaXgsXHJcbiAgICAgICAgICAgICAgICB1cmw6IHVybCxcclxuICAgICAgICAgICAgICAgIG9yaWdpbmFsTmFtZTogb3JpZ2luYWxOYW1lLFxyXG4gICAgICAgICAgICAgICAgaXNEZWZpbmU6IGlzRGVmaW5lLFxyXG4gICAgICAgICAgICAgICAgaWQ6IChwcmVmaXggP1xyXG4gICAgICAgICAgICAgICAgICAgIHByZWZpeCArICchJyArIG5vcm1hbGl6ZWROYW1lIDpcclxuICAgICAgICAgICAgICAgICAgICBub3JtYWxpemVkTmFtZSkgKyBzdWZmaXhcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGZ1bmN0aW9uIGdldE1vZHVsZShkZXBNYXApIHtcclxuICAgICAgICAgICAgbGV0IGlkID0gZGVwTWFwLmlkLFxyXG4gICAgICAgICAgICAgICAgbW9kID0gZ2V0T3duKHJlZ2lzdHJ5LCBpZCk7XHJcblxyXG4gICAgICAgICAgICBpZiAoIW1vZCkge1xyXG4gICAgICAgICAgICAgICAgbW9kID0gcmVnaXN0cnlbaWRdID0gbmV3IGNvbnRleHQuTW9kdWxlKGRlcE1hcCk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHJldHVybiBtb2Q7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBmdW5jdGlvbiBvbihkZXBNYXAsIG5hbWUsIGZuKSB7XHJcbiAgICAgICAgICAgIGxldCBpZCA9IGRlcE1hcC5pZCxcclxuICAgICAgICAgICAgICAgIG1vZCA9IGdldE93bihyZWdpc3RyeSwgaWQpO1xyXG5cclxuICAgICAgICAgICAgaWYgKGhhc1Byb3AoZGVmaW5lZCwgaWQpICYmXHJcbiAgICAgICAgICAgICAgICAoIW1vZCB8fCBtb2QuZGVmaW5lRW1pdENvbXBsZXRlKSkge1xyXG4gICAgICAgICAgICAgICAgaWYgKG5hbWUgPT09ICdkZWZpbmVkJykge1xyXG4gICAgICAgICAgICAgICAgICAgIGZuKGRlZmluZWRbaWRdKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIG1vZCA9IGdldE1vZHVsZShkZXBNYXApO1xyXG4gICAgICAgICAgICAgICAgaWYgKG1vZC5lcnJvciAmJiBuYW1lID09PSAnZXJyb3InKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm4obW9kLmVycm9yKTtcclxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbW9kLm9uKG5hbWUsIGZuKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgZnVuY3Rpb24gb25FcnJvcihlcnIsIGVycmJhY2spIHtcclxuICAgICAgICAgICAgbGV0IGlkcyA9IGVyci5yZXF1aXJlTW9kdWxlcyxcclxuICAgICAgICAgICAgICAgIG5vdGlmaWVkID0gZmFsc2U7XHJcblxyXG4gICAgICAgICAgICBpZiAoZXJyYmFjaykge1xyXG4gICAgICAgICAgICAgICAgZXJyYmFjayhlcnIpO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgZWFjaChpZHMsIGZ1bmN0aW9uIChpZCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCBtb2QgPSBnZXRPd24ocmVnaXN0cnksIGlkKTtcclxuICAgICAgICAgICAgICAgICAgICBpZiAobW9kKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIFNldCBlcnJvciBvbiBtb2R1bGUsIHNvIGl0IHNraXBzIHRpbWVvdXQgY2hlY2tzLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBtb2QuZXJyb3IgPSBlcnI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChtb2QuZXZlbnRzLmVycm9yKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBub3RpZmllZCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtb2QuZW1pdCgnZXJyb3InLCBlcnIpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSk7XHJcblxyXG4gICAgICAgICAgICAgICAgaWYgKCFub3RpZmllZCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHJlcS5vbkVycm9yKGVycik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8qKlxyXG4gICAgICAgICAqIEludGVybmFsIG1ldGhvZCB0byB0cmFuc2ZlciBnbG9iYWxRdWV1ZSBpdGVtcyB0byB0aGlzIGNvbnRleHQnc1xyXG4gICAgICAgICAqIGRlZlF1ZXVlLlxyXG4gICAgICAgICAqL1xyXG4gICAgICAgIGZ1bmN0aW9uIHRha2VHbG9iYWxRdWV1ZSgpIHtcclxuICAgICAgICAgICAgLy8gUHVzaCBhbGwgdGhlIGdsb2JhbERlZlF1ZXVlIGl0ZW1zIGludG8gdGhlIGNvbnRleHQncyBkZWZRdWV1ZVxyXG4gICAgICAgICAgICBpZiAoZ2xvYmFsRGVmUXVldWUubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgICAgICBlYWNoKGdsb2JhbERlZlF1ZXVlLCBmdW5jdGlvbiAocXVldWVJdGVtKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IGlkID0gcXVldWVJdGVtWzBdO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgaWQgPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRleHQuZGVmUXVldWVNYXBbaWRdID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgZGVmUXVldWUucHVzaChxdWV1ZUl0ZW0pO1xyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICBnbG9iYWxEZWZRdWV1ZSA9IFtdO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBoYW5kbGVycyA9IHtcclxuICAgICAgICAgICAgJ3JlcXVpcmUnOiBmdW5jdGlvbiAobW9kKSB7XHJcbiAgICAgICAgICAgICAgICBpZiAobW9kLnJlcXVpcmUpIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gbW9kLnJlcXVpcmU7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiAobW9kLnJlcXVpcmUgPSBjb250ZXh0Lm1ha2VSZXF1aXJlKG1vZC5tYXApKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgJ2V4cG9ydHMnOiBmdW5jdGlvbiAobW9kKSB7XHJcbiAgICAgICAgICAgICAgICBtb2QudXNpbmdFeHBvcnRzID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIGlmIChtb2QubWFwLmlzRGVmaW5lKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKG1vZC5leHBvcnRzKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAoZGVmaW5lZFttb2QubWFwLmlkXSA9IG1vZC5leHBvcnRzKTtcclxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gKG1vZC5leHBvcnRzID0gZGVmaW5lZFttb2QubWFwLmlkXSA9IHt9KTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICdtb2R1bGUnOiBmdW5jdGlvbiAobW9kKSB7XHJcbiAgICAgICAgICAgICAgICBpZiAobW9kLm1vZHVsZSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBtb2QubW9kdWxlO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gKG1vZC5tb2R1bGUgPSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBtb2QubWFwLmlkLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB1cmk6IG1vZC5tYXAudXJsLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25maWc6IGZ1bmN0aW9uICgpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBnZXRPd24oY29uZmlnLmNvbmZpZywgbW9kLm1hcC5pZCkgfHwge307XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGV4cG9ydHM6IG1vZC5leHBvcnRzIHx8IChtb2QuZXhwb3J0cyA9IHt9KVxyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfTtcclxuXHJcbiAgICAgICAgZnVuY3Rpb24gY2xlYW5SZWdpc3RyeShpZCkge1xyXG4gICAgICAgICAgICAvLyBDbGVhbiB1cCBtYWNoaW5lcnkgdXNlZCBmb3Igd2FpdGluZyBtb2R1bGVzLlxyXG4gICAgICAgICAgICBkZWxldGUgcmVnaXN0cnlbaWRdO1xyXG4gICAgICAgICAgICBkZWxldGUgZW5hYmxlZFJlZ2lzdHJ5W2lkXTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGZ1bmN0aW9uIGJyZWFrQ3ljbGUobW9kLCB0cmFjZWQsIHByb2Nlc3NlZCkge1xyXG4gICAgICAgICAgICBsZXQgaWQgPSBtb2QubWFwLmlkO1xyXG5cclxuICAgICAgICAgICAgaWYgKG1vZC5lcnJvcikge1xyXG4gICAgICAgICAgICAgICAgbW9kLmVtaXQoJ2Vycm9yJywgbW9kLmVycm9yKTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHRyYWNlZFtpZF0gPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgZWFjaChtb2QuZGVwTWFwcywgZnVuY3Rpb24gKGRlcE1hcCwgaSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCBkZXBJZCA9IGRlcE1hcC5pZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGVwID0gZ2V0T3duKHJlZ2lzdHJ5LCBkZXBJZCk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC8vIE9ubHkgZm9yY2UgdGhpbmdzIHRoYXQgaGF2ZSBub3QgY29tcGxldGVkXHJcbiAgICAgICAgICAgICAgICAgICAgLy8gYmVpbmcgZGVmaW5lZCwgc28gc3RpbGwgaW4gdGhlIHJlZ2lzdHJ5LFxyXG4gICAgICAgICAgICAgICAgICAgIC8vIGFuZCBvbmx5IGlmIGl0IGhhcyBub3QgYmVlbiBtYXRjaGVkIHVwXHJcbiAgICAgICAgICAgICAgICAgICAgLy8gaW4gdGhlIG1vZHVsZSBhbHJlYWR5LlxyXG4gICAgICAgICAgICAgICAgICAgIGlmIChkZXAgJiYgIW1vZC5kZXBNYXRjaGVkW2ldICYmICFwcm9jZXNzZWRbZGVwSWRdKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChnZXRPd24odHJhY2VkLCBkZXBJZCkpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vZC5kZWZpbmVEZXAoaSwgZGVmaW5lZFtkZXBJZF0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kLmNoZWNrKCk7IC8vIHBhc3MgZmFsc2U/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVha0N5Y2xlKGRlcCwgdHJhY2VkLCBwcm9jZXNzZWQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICBwcm9jZXNzZWRbaWRdID0gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgZnVuY3Rpb24gY2hlY2tMb2FkZWQoKSB7XHJcbiAgICAgICAgICAgIGxldCBlcnIsIHVzaW5nUGF0aEZhbGxiYWNrLFxyXG4gICAgICAgICAgICAgICAgd2FpdEludGVydmFsID0gY29uZmlnLndhaXRTZWNvbmRzICogMTAwMCxcclxuICAgICAgICAgICAgICAgIC8vIEl0IGlzIHBvc3NpYmxlIHRvIGRpc2FibGUgdGhlIHdhaXQgaW50ZXJ2YWwgYnkgdXNpbmcgd2FpdFNlY29uZHMgb2YgMC5cclxuICAgICAgICAgICAgICAgIGV4cGlyZWQgPSB3YWl0SW50ZXJ2YWwgJiYgKGNvbnRleHQuc3RhcnRUaW1lICsgd2FpdEludGVydmFsKSA8IG5ldyBEYXRlKCkuZ2V0VGltZSgpLFxyXG4gICAgICAgICAgICAgICAgbm9Mb2FkcyA9IFtdLFxyXG4gICAgICAgICAgICAgICAgcmVxQ2FsbHMgPSBbXSxcclxuICAgICAgICAgICAgICAgIHN0aWxsTG9hZGluZyA9IGZhbHNlLFxyXG4gICAgICAgICAgICAgICAgbmVlZEN5Y2xlQ2hlY2sgPSB0cnVlO1xyXG5cclxuICAgICAgICAgICAgLy8gRG8gbm90IGJvdGhlciBpZiB0aGlzIGNhbGwgd2FzIGEgcmVzdWx0IG9mIGEgY3ljbGUgYnJlYWsuXHJcbiAgICAgICAgICAgIGlmIChpbkNoZWNrTG9hZGVkKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGluQ2hlY2tMb2FkZWQgPSB0cnVlO1xyXG5cclxuICAgICAgICAgICAgLy8gRmlndXJlIG91dCB0aGUgc3RhdGUgb2YgYWxsIHRoZSBtb2R1bGVzLlxyXG4gICAgICAgICAgICBlYWNoUHJvcChlbmFibGVkUmVnaXN0cnksIGZ1bmN0aW9uIChtb2QpIHtcclxuICAgICAgICAgICAgICAgIGxldCBtYXAgPSBtb2QubWFwLFxyXG4gICAgICAgICAgICAgICAgICAgIG1vZElkID0gbWFwLmlkO1xyXG5cclxuICAgICAgICAgICAgICAgIC8vIFNraXAgdGhpbmdzIHRoYXQgYXJlIG5vdCBlbmFibGVkIG9yIGluIGVycm9yIHN0YXRlLlxyXG4gICAgICAgICAgICAgICAgaWYgKCFtb2QuZW5hYmxlZCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBpZiAoIW1hcC5pc0RlZmluZSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHJlcUNhbGxzLnB1c2gobW9kKTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBpZiAoIW1vZC5lcnJvcikge1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIElmIHRoZSBtb2R1bGUgc2hvdWxkIGJlIGV4ZWN1dGVkLCBhbmQgaXQgaGFzIG5vdFxyXG4gICAgICAgICAgICAgICAgICAgIC8vIGJlZW4gaW5pdGVkIGFuZCB0aW1lIGlzIHVwLCByZW1lbWJlciBpdC5cclxuICAgICAgICAgICAgICAgICAgICBpZiAoIW1vZC5pbml0ZWQgJiYgZXhwaXJlZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoaGFzUGF0aEZhbGxiYWNrKG1vZElkKSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNpbmdQYXRoRmFsbGJhY2sgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RpbGxMb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vTG9hZHMucHVzaChtb2RJZCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZW1vdmVTY3JpcHQobW9kSWQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmICghbW9kLmluaXRlZCAmJiBtb2QuZmV0Y2hlZCAmJiBtYXAuaXNEZWZpbmUpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3RpbGxMb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFtYXAucHJlZml4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBObyByZWFzb24gdG8ga2VlcCBsb29raW5nIGZvciB1bmZpbmlzaGVkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBsb2FkaW5nLiBJZiB0aGUgb25seSBzdGlsbExvYWRpbmcgaXMgYVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gcGx1Z2luIHJlc291cmNlIHRob3VnaCwga2VlcCBnb2luZyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGJlY2F1c2UgaXQgbWF5IGJlIHRoYXQgYSBwbHVnaW4gcmVzb3VyY2VcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGlzIHdhaXRpbmcgb24gYSBub24tcGx1Z2luIGN5Y2xlLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIChuZWVkQ3ljbGVDaGVjayA9IGZhbHNlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcblxyXG4gICAgICAgICAgICBpZiAoZXhwaXJlZCAmJiBub0xvYWRzLmxlbmd0aCkge1xyXG4gICAgICAgICAgICAgICAgLy8gSWYgd2FpdCB0aW1lIGV4cGlyZWQsIHRocm93IGVycm9yIG9mIHVubG9hZGVkIG1vZHVsZXMuXHJcbiAgICAgICAgICAgICAgICBlcnIgPSBtYWtlRXJyb3IoJ3RpbWVvdXQnLCAnTG9hZCB0aW1lb3V0IGZvciBtb2R1bGVzOiAnICsgbm9Mb2FkcywgbnVsbCwgbm9Mb2Fkcyk7XHJcbiAgICAgICAgICAgICAgICBlcnIuY29udGV4dE5hbWUgPSBjb250ZXh0LmNvbnRleHROYW1lO1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIG9uRXJyb3IoZXJyKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLy8gTm90IGV4cGlyZWQsIGNoZWNrIGZvciBhIGN5Y2xlLlxyXG4gICAgICAgICAgICBpZiAobmVlZEN5Y2xlQ2hlY2spIHtcclxuICAgICAgICAgICAgICAgIGVhY2gocmVxQ2FsbHMsIGZ1bmN0aW9uIChtb2QpIHtcclxuICAgICAgICAgICAgICAgICAgICBicmVha0N5Y2xlKG1vZCwge30sIHt9KTtcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAvLyBJZiBzdGlsbCB3YWl0aW5nIG9uIGxvYWRzLCBhbmQgdGhlIHdhaXRpbmcgbG9hZCBpcyBzb21ldGhpbmdcclxuICAgICAgICAgICAgLy8gb3RoZXIgdGhhbiBhIHBsdWdpbiByZXNvdXJjZSwgb3IgdGhlcmUgYXJlIHN0aWxsIG91dHN0YW5kaW5nXHJcbiAgICAgICAgICAgIC8vIHNjcmlwdHMsIHRoZW4ganVzdCB0cnkgYmFjayBsYXRlci5cclxuICAgICAgICAgICAgaWYgKCghZXhwaXJlZCB8fCB1c2luZ1BhdGhGYWxsYmFjaykgJiYgc3RpbGxMb2FkaW5nKSB7XHJcbiAgICAgICAgICAgICAgICAvLyBTb21ldGhpbmcgaXMgc3RpbGwgd2FpdGluZyB0byBsb2FkLiBXYWl0IGZvciBpdCwgYnV0IG9ubHlcclxuICAgICAgICAgICAgICAgIC8vIGlmIGEgdGltZW91dCBpcyBub3QgYWxyZWFkeSBpbiBlZmZlY3QuXHJcbiAgICAgICAgICAgICAgICBpZiAoKGlzQnJvd3NlciB8fCBpc1dlYldvcmtlcikgJiYgIWNoZWNrTG9hZGVkVGltZW91dElkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY2hlY2tMb2FkZWRUaW1lb3V0SWQgPSBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2hlY2tMb2FkZWRUaW1lb3V0SWQgPSAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjaGVja0xvYWRlZCgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH0sIDUwKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaW5DaGVja0xvYWRlZCA9IGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgTW9kdWxlID0gZnVuY3Rpb24gKG1hcCkge1xyXG4gICAgICAgICAgICB0aGlzLmV2ZW50cyA9IGdldE93bih1bmRlZkV2ZW50cywgbWFwLmlkKSB8fCB7fTtcclxuICAgICAgICAgICAgdGhpcy5tYXAgPSBtYXA7XHJcbiAgICAgICAgICAgIHRoaXMuc2hpbSA9IGdldE93bihjb25maWcuc2hpbSwgbWFwLmlkKTtcclxuICAgICAgICAgICAgdGhpcy5kZXBFeHBvcnRzID0gW107XHJcbiAgICAgICAgICAgIHRoaXMuZGVwTWFwcyA9IFtdO1xyXG4gICAgICAgICAgICB0aGlzLmRlcE1hdGNoZWQgPSBbXTtcclxuICAgICAgICAgICAgdGhpcy5wbHVnaW5NYXBzID0ge307XHJcbiAgICAgICAgICAgIHRoaXMuZGVwQ291bnQgPSAwO1xyXG5cclxuICAgICAgICAgICAgLyogdGhpcy5leHBvcnRzIHRoaXMuZmFjdG9yeVxyXG4gICAgICAgICAgICAgdGhpcy5kZXBNYXBzID0gW10sXHJcbiAgICAgICAgICAgICB0aGlzLmVuYWJsZWQsIHRoaXMuZmV0Y2hlZFxyXG4gICAgICAgICAgICAgKi9cclxuICAgICAgICB9O1xyXG5cclxuICAgICAgICBNb2R1bGUucHJvdG90eXBlID0ge1xyXG4gICAgICAgICAgICBpbml0OiBmdW5jdGlvbiAoZGVwTWFwcywgZmFjdG9yeSwgZXJyYmFjaywgb3B0aW9ucykge1xyXG4gICAgICAgICAgICAgICAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307XHJcblxyXG4gICAgICAgICAgICAgICAgLy8gRG8gbm90IGRvIG1vcmUgaW5pdHMgaWYgYWxyZWFkeSBkb25lLiBDYW4gaGFwcGVuIGlmIHRoZXJlXHJcbiAgICAgICAgICAgICAgICAvLyBhcmUgbXVsdGlwbGUgZGVmaW5lIGNhbGxzIGZvciB0aGUgc2FtZSBtb2R1bGUuIFRoYXQgaXMgbm90XHJcbiAgICAgICAgICAgICAgICAvLyBhIG5vcm1hbCwgY29tbW9uIGNhc2UsIGJ1dCBpdCBpcyBhbHNvIG5vdCB1bmV4cGVjdGVkLlxyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuaW5pdGVkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIHRoaXMuZmFjdG9yeSA9IGZhY3Rvcnk7XHJcblxyXG4gICAgICAgICAgICAgICAgaWYgKGVycmJhY2spIHtcclxuICAgICAgICAgICAgICAgICAgICAvLyBSZWdpc3RlciBmb3IgZXJyb3JzIG9uIHRoaXMgbW9kdWxlLlxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMub24oJ2Vycm9yJywgZXJyYmFjayk7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMuZXZlbnRzLmVycm9yKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gSWYgbm8gZXJyYmFjayBhbHJlYWR5LCBidXQgdGhlcmUgYXJlIGVycm9yIGxpc3RlbmVyc1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIG9uIHRoaXMgbW9kdWxlLCBzZXQgdXAgYW4gZXJyYmFjayB0byBwYXNzIHRvIHRoZSBkZXBzLlxyXG4gICAgICAgICAgICAgICAgICAgIGVycmJhY2sgPSBiaW5kKHRoaXMsIGZ1bmN0aW9uIChlcnIpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5lbWl0KCdlcnJvcicsIGVycik7XHJcbiAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLy8gRG8gYSBjb3B5IG9mIHRoZSBkZXBlbmRlbmN5IGFycmF5LCBzbyB0aGF0XHJcbiAgICAgICAgICAgICAgICAvLyBzb3VyY2UgaW5wdXRzIGFyZSBub3QgbW9kaWZpZWQuIEZvciBleGFtcGxlXHJcbiAgICAgICAgICAgICAgICAvLyBcInNoaW1cIiBkZXBzIGFyZSBwYXNzZWQgaW4gaGVyZSBkaXJlY3RseSwgYW5kXHJcbiAgICAgICAgICAgICAgICAvLyBkb2luZyBhIGRpcmVjdCBtb2RpZmljYXRpb24gb2YgdGhlIGRlcE1hcHMgYXJyYXlcclxuICAgICAgICAgICAgICAgIC8vIHdvdWxkIGFmZmVjdCB0aGF0IGNvbmZpZy5cclxuICAgICAgICAgICAgICAgIHRoaXMuZGVwTWFwcyA9IGRlcE1hcHMgJiYgZGVwTWFwcy5zbGljZSgwKTtcclxuXHJcbiAgICAgICAgICAgICAgICB0aGlzLmVycmJhY2sgPSBlcnJiYWNrO1xyXG5cclxuICAgICAgICAgICAgICAgIC8vIEluZGljYXRlIHRoaXMgbW9kdWxlIGhhcyBiZSBpbml0aWFsaXplZFxyXG4gICAgICAgICAgICAgICAgdGhpcy5pbml0ZWQgPSB0cnVlO1xyXG5cclxuICAgICAgICAgICAgICAgIHRoaXMuaWdub3JlID0gb3B0aW9ucy5pZ25vcmU7XHJcblxyXG4gICAgICAgICAgICAgICAgLy8gQ291bGQgaGF2ZSBvcHRpb24gdG8gaW5pdCB0aGlzIG1vZHVsZSBpbiBlbmFibGVkIG1vZGUsXHJcbiAgICAgICAgICAgICAgICAvLyBvciBjb3VsZCBoYXZlIGJlZW4gcHJldmlvdXNseSBtYXJrZWQgYXMgZW5hYmxlZC4gSG93ZXZlcixcclxuICAgICAgICAgICAgICAgIC8vIHRoZSBkZXBlbmRlbmNpZXMgYXJlIG5vdCBrbm93biB1bnRpbCBpbml0IGlzIGNhbGxlZC4gU29cclxuICAgICAgICAgICAgICAgIC8vIGlmIGVuYWJsZWQgcHJldmlvdXNseSwgbm93IHRyaWdnZXIgZGVwZW5kZW5jaWVzIGFzIGVuYWJsZWQuXHJcbiAgICAgICAgICAgICAgICBpZiAob3B0aW9ucy5lbmFibGVkIHx8IHRoaXMuZW5hYmxlZCkge1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIEVuYWJsZSB0aGlzIG1vZHVsZSBhbmQgZGVwZW5kZW5jaWVzLlxyXG4gICAgICAgICAgICAgICAgICAgIC8vIFdpbGwgY2FsbCB0aGlzLmNoZWNrKClcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmVuYWJsZSgpO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNoZWNrKCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0sXHJcblxyXG4gICAgICAgICAgICBkZWZpbmVEZXA6IGZ1bmN0aW9uIChpLCBkZXBFeHBvcnRzKSB7XHJcbiAgICAgICAgICAgICAgICAvLyBCZWNhdXNlIG9mIGN5Y2xlcywgZGVmaW5lZCBjYWxsYmFjayBmb3IgYSBnaXZlblxyXG4gICAgICAgICAgICAgICAgLy8gZXhwb3J0IGNhbiBiZSBjYWxsZWQgbW9yZSB0aGFuIG9uY2UuXHJcbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMuZGVwTWF0Y2hlZFtpXSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGVwTWF0Y2hlZFtpXSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kZXBDb3VudCAtPSAxO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGVwRXhwb3J0c1tpXSA9IGRlcEV4cG9ydHM7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0sXHJcblxyXG4gICAgICAgICAgICBmZXRjaDogZnVuY3Rpb24gKCkge1xyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuZmV0Y2hlZCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHRoaXMuZmV0Y2hlZCA9IHRydWU7XHJcblxyXG4gICAgICAgICAgICAgICAgY29udGV4dC5zdGFydFRpbWUgPSAobmV3IERhdGUoKSkuZ2V0VGltZSgpO1xyXG5cclxuICAgICAgICAgICAgICAgIGxldCBtYXAgPSB0aGlzLm1hcDtcclxuXHJcbiAgICAgICAgICAgICAgICAvLyBJZiB0aGUgbWFuYWdlciBpcyBmb3IgYSBwbHVnaW4gbWFuYWdlZCByZXNvdXJjZSxcclxuICAgICAgICAgICAgICAgIC8vIGFzayB0aGUgcGx1Z2luIHRvIGxvYWQgaXQgbm93LlxyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuc2hpbSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRleHQubWFrZVJlcXVpcmUodGhpcy5tYXAsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZW5hYmxlQnVpbGRDYWxsYmFjazogdHJ1ZVxyXG4gICAgICAgICAgICAgICAgICAgIH0pKHRoaXMuc2hpbS5kZXBzIHx8IFtdLCBiaW5kKHRoaXMsIGZ1bmN0aW9uICgpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG1hcC5wcmVmaXggPyB0aGlzLmNhbGxQbHVnaW4oKSA6IHRoaXMubG9hZCgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH0pKTtcclxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gUmVndWxhciBkZXBlbmRlbmN5LlxyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBtYXAucHJlZml4ID8gdGhpcy5jYWxsUGx1Z2luKCkgOiB0aGlzLmxvYWQoKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSxcclxuXHJcbiAgICAgICAgICAgIGxvYWQ6IGZ1bmN0aW9uICgpIHtcclxuICAgICAgICAgICAgICAgIGxldCB1cmwgPSB0aGlzLm1hcC51cmw7XHJcblxyXG4gICAgICAgICAgICAgICAgLy8gUmVndWxhciBkZXBlbmRlbmN5LlxyXG4gICAgICAgICAgICAgICAgaWYgKCF1cmxGZXRjaGVkW3VybF0pIHtcclxuICAgICAgICAgICAgICAgICAgICB1cmxGZXRjaGVkW3VybF0gPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRleHQubG9hZCh0aGlzLm1hcC5pZCwgdXJsKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSxcclxuXHJcbiAgICAgICAgICAgIC8qKlxyXG4gICAgICAgICAgICAgKiBDaGVja3MgaWYgdGhlIG1vZHVsZSBpcyByZWFkeSB0byBkZWZpbmUgaXRzZWxmLCBhbmQgaWYgc28sXHJcbiAgICAgICAgICAgICAqIGRlZmluZSBpdC5cclxuICAgICAgICAgICAgICovXHJcbiAgICAgICAgICAgIGNoZWNrOiBmdW5jdGlvbiAoKSB7XHJcbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMuZW5hYmxlZCB8fCB0aGlzLmVuYWJsaW5nKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIGxldCBlcnIsIGNqc01vZHVsZSxcclxuICAgICAgICAgICAgICAgICAgICBpZCA9IHRoaXMubWFwLmlkLFxyXG4gICAgICAgICAgICAgICAgICAgIGRlcEV4cG9ydHMgPSB0aGlzLmRlcEV4cG9ydHMsXHJcbiAgICAgICAgICAgICAgICAgICAgZXhwb3J0cyA9IHRoaXMuZXhwb3J0cyxcclxuICAgICAgICAgICAgICAgICAgICBmYWN0b3J5ID0gdGhpcy5mYWN0b3J5O1xyXG5cclxuICAgICAgICAgICAgICAgIGlmICghdGhpcy5pbml0ZWQpIHtcclxuICAgICAgICAgICAgICAgICAgICAvLyBPbmx5IGZldGNoIGlmIG5vdCBhbHJlYWR5IGluIHRoZSBkZWZRdWV1ZS5cclxuICAgICAgICAgICAgICAgICAgICBpZiAoIWhhc1Byb3AoY29udGV4dC5kZWZRdWV1ZU1hcCwgaWQpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZmV0Y2goKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMuZXJyb3IpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmVtaXQoJ2Vycm9yJywgdGhpcy5lcnJvcik7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKCF0aGlzLmRlZmluaW5nKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gVGhlIGZhY3RvcnkgY291bGQgdHJpZ2dlciBhbm90aGVyIHJlcXVpcmUgY2FsbFxyXG4gICAgICAgICAgICAgICAgICAgIC8vIHRoYXQgd291bGQgcmVzdWx0IGluIGNoZWNraW5nIHRoaXMgbW9kdWxlIHRvXHJcbiAgICAgICAgICAgICAgICAgICAgLy8gZGVmaW5lIGl0c2VsZiBhZ2Fpbi4gSWYgYWxyZWFkeSBpbiB0aGUgcHJvY2Vzc1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIG9mIGRvaW5nIHRoYXQsIHNraXAgdGhpcyB3b3JrLlxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGVmaW5pbmcgPSB0cnVlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5kZXBDb3VudCA8IDEgJiYgIXRoaXMuZGVmaW5lZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoaXNGdW5jdGlvbihmYWN0b3J5KSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHBvcnRzID0gY29udGV4dC5leGVjQ2IoaWQsIGZhY3RvcnksIGRlcEV4cG9ydHMsIGV4cG9ydHMpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVyciA9IGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gRmF2b3IgcmV0dXJuIHZhbHVlIG92ZXIgZXhwb3J0cy4gSWYgbm9kZS9janMgaW4gcGxheSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRoZW4gd2lsbCBub3QgaGF2ZSBhIHJldHVybiB2YWx1ZSBhbnl3YXkuIEZhdm9yXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBtb2R1bGUuZXhwb3J0cyBhc3NpZ25tZW50IG92ZXIgZXhwb3J0cyBvYmplY3QuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5tYXAuaXNEZWZpbmUgJiYgZXhwb3J0cyA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2pzTW9kdWxlID0gdGhpcy5tb2R1bGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGNqc01vZHVsZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHBvcnRzID0gY2pzTW9kdWxlLmV4cG9ydHM7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLnVzaW5nRXhwb3J0cykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBleHBvcnRzIGFscmVhZHkgc2V0IHRoZSBkZWZpbmVkIHZhbHVlLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHBvcnRzID0gdGhpcy5leHBvcnRzO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoZXJyKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gSWYgdGhlcmUgaXMgYW4gZXJyb3IgbGlzdGVuZXIsIGZhdm9yIHBhc3NpbmdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB0byB0aGF0IGluc3RlYWQgb2YgdGhyb3dpbmcgYW4gZXJyb3IuIEhvd2V2ZXIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gb25seSBkbyBpdCBmb3IgZGVmaW5lKCknZCAgbW9kdWxlcy4gcmVxdWlyZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGVycmJhY2tzIHNob3VsZCBub3QgYmUgY2FsbGVkIGZvciBmYWlsdXJlcyBpblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRoZWlyIGNhbGxiYWNrcyAoIzY5OSkuIEhvd2V2ZXIgaWYgYSBnbG9iYWxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBvbkVycm9yIGlzIHNldCwgdXNlIHRoYXQuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCh0aGlzLmV2ZW50cy5lcnJvciAmJiB0aGlzLm1hcC5pc0RlZmluZSkgfHxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxLm9uRXJyb3IgIT09IGRlZmF1bHRPbkVycm9yKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVyci5yZXF1aXJlTWFwID0gdGhpcy5tYXA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVyci5yZXF1aXJlTW9kdWxlcyA9IHRoaXMubWFwLmlzRGVmaW5lID8gW3RoaXMubWFwLmlkXSA6IG51bGw7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVyci5yZXF1aXJlVHlwZSA9IHRoaXMubWFwLmlzRGVmaW5lID8gJ2RlZmluZScgOiAncmVxdWlyZSc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBvbkVycm9yKCh0aGlzLmVycm9yID0gZXJyKSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmICh0eXBlb2YgY29uc29sZSAhPT0gJ3VuZGVmaW5lZCcgJiZcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBMb2cgdGhlIGVycm9yIGZvciBkZWJ1Z2dpbmcuIElmIHByb21pc2VzIGNvdWxkIGJlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHVzZWQsIHRoaXMgd291bGQgYmUgZGlmZmVyZW50LCBidXQgbWFraW5nIGRvLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKGVycik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gRG8gbm90IHdhbnQgdG8gY29tcGxldGVseSBsb3NlIHRoZSBlcnJvci4gV2hpbGUgdGhpc1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB3aWxsIG1lc3MgdXAgcHJvY2Vzc2luZyBhbmQgbGVhZCB0byBzaW1pbGFyIHJlc3VsdHNcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gYXMgYnVnIDE0NDAsIGl0IGF0IGxlYXN0IHN1cmZhY2VzIHRoZSBlcnJvci5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxLm9uRXJyb3IoZXJyKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBKdXN0IGEgbGl0ZXJhbCB2YWx1ZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwb3J0cyA9IGZhY3Rvcnk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZXhwb3J0cyA9IGV4cG9ydHM7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5tYXAuaXNEZWZpbmUgJiYgIXRoaXMuaWdub3JlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZpbmVkW2lkXSA9IGV4cG9ydHM7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlcS5vblJlc291cmNlTG9hZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCByZXNMb2FkTWFwcyA9IFtdO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVhY2godGhpcy5kZXBNYXBzLCBmdW5jdGlvbiAoZGVwTWFwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc0xvYWRNYXBzLnB1c2goZGVwTWFwLm5vcm1hbGl6ZWRNYXAgfHwgZGVwTWFwKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXEub25SZXNvdXJjZUxvYWQoY29udGV4dCwgdGhpcy5tYXAsIHJlc0xvYWRNYXBzKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gQ2xlYW4gdXBcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xlYW5SZWdpc3RyeShpZCk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmRlZmluZWQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLy8gRmluaXNoZWQgdGhlIGRlZmluZSBzdGFnZS4gQWxsb3cgY2FsbGluZyBjaGVjayBhZ2FpblxyXG4gICAgICAgICAgICAgICAgICAgIC8vIHRvIGFsbG93IGRlZmluZSBub3RpZmljYXRpb25zIGJlbG93IGluIHRoZSBjYXNlIG9mIGFcclxuICAgICAgICAgICAgICAgICAgICAvLyBjeWNsZS5cclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmRlZmluaW5nID0gZmFsc2U7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmRlZmluZWQgJiYgIXRoaXMuZGVmaW5lRW1pdHRlZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmRlZmluZUVtaXR0ZWQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmVtaXQoJ2RlZmluZWQnLCB0aGlzLmV4cG9ydHMpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmRlZmluZUVtaXRDb21wbGV0ZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSxcclxuXHJcbiAgICAgICAgICAgIGNhbGxQbHVnaW46IGZ1bmN0aW9uICgpIHtcclxuICAgICAgICAgICAgICAgIGxldCBtYXAgPSB0aGlzLm1hcDtcclxuICAgICAgICAgICAgICAgIGxldCBpZCA9IG1hcC5pZDtcclxuICAgICAgICAgICAgICAgIC8vIE1hcCBhbHJlYWR5IG5vcm1hbGl6ZWQgdGhlIHByZWZpeC5cclxuICAgICAgICAgICAgICAgIGxldCBwbHVnaW5NYXAgPSBtYWtlTW9kdWxlTWFwKG1hcC5wcmVmaXgpO1xyXG5cclxuICAgICAgICAgICAgICAgIC8vIE1hcmsgdGhpcyBhcyBhIGRlcGVuZGVuY3kgZm9yIHRoaXMgcGx1Z2luLCBzbyBpdFxyXG4gICAgICAgICAgICAgICAgLy8gY2FuIGJlIHRyYWNlZCBmb3IgY3ljbGVzLlxyXG4gICAgICAgICAgICAgICAgdGhpcy5kZXBNYXBzLnB1c2gocGx1Z2luTWFwKTtcclxuXHJcbiAgICAgICAgICAgICAgICBvbihwbHVnaW5NYXAsICdkZWZpbmVkJywgYmluZCh0aGlzLCBmdW5jdGlvbiAocGx1Z2luKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IGxvYWQsIG5vcm1hbGl6ZWRNYXAsIG5vcm1hbGl6ZWRNb2QsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJ1bmRsZUlkID0gZ2V0T3duKGJ1bmRsZXNNYXAsIHRoaXMubWFwLmlkKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZSA9IHRoaXMubWFwLm5hbWUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhcmVudE5hbWUgPSB0aGlzLm1hcC5wYXJlbnRNYXAgPyB0aGlzLm1hcC5wYXJlbnRNYXAubmFtZSA6IG51bGwsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxvY2FsUmVxdWlyZSA9IGNvbnRleHQubWFrZVJlcXVpcmUobWFwLnBhcmVudE1hcCwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5hYmxlQnVpbGRDYWxsYmFjazogdHJ1ZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLy8gSWYgY3VycmVudCBtYXAgaXMgbm90IG5vcm1hbGl6ZWQsIHdhaXQgZm9yIHRoYXRcclxuICAgICAgICAgICAgICAgICAgICAvLyBub3JtYWxpemVkIG5hbWUgdG8gbG9hZCBpbnN0ZWFkIG9mIGNvbnRpbnVpbmcuXHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMubWFwLnVubm9ybWFsaXplZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBOb3JtYWxpemUgdGhlIElEIGlmIHRoZSBwbHVnaW4gYWxsb3dzIGl0LlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAocGx1Z2luLm5vcm1hbGl6ZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZSA9IHBsdWdpbi5ub3JtYWxpemUobmFtZSwgZnVuY3Rpb24gKG5hbWUpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbm9ybWFsaXplKG5hbWUsIHBhcmVudE5hbWUsIHRydWUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkgfHwgJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHByZWZpeCBhbmQgbmFtZSBzaG91bGQgYWxyZWFkeSBiZSBub3JtYWxpemVkLCBubyBuZWVkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGZvciBhcHBseWluZyBtYXAgY29uZmlnIGFnYWluIGVpdGhlci5cclxuICAgICAgICAgICAgICAgICAgICAgICAgbm9ybWFsaXplZE1hcCA9IG1ha2VNb2R1bGVNYXAobWFwLnByZWZpeCArICchJyArIG5hbWUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm1hcC5wYXJlbnRNYXApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvbihub3JtYWxpemVkTWFwLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2RlZmluZWQnLCBiaW5kKHRoaXMsIGZ1bmN0aW9uICh2YWx1ZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubWFwLm5vcm1hbGl6ZWRNYXAgPSBub3JtYWxpemVkTWFwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuaW5pdChbXSwgZnVuY3Rpb24gKCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdmFsdWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgbnVsbCwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbmFibGVkOiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZ25vcmU6IHRydWVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG5vcm1hbGl6ZWRNb2QgPSBnZXRPd24ocmVnaXN0cnksIG5vcm1hbGl6ZWRNYXAuaWQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAobm9ybWFsaXplZE1vZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gTWFyayB0aGlzIGFzIGEgZGVwZW5kZW5jeSBmb3IgdGhpcyBwbHVnaW4sIHNvIGl0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBjYW4gYmUgdHJhY2VkIGZvciBjeWNsZXMuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmRlcE1hcHMucHVzaChub3JtYWxpemVkTWFwKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5ldmVudHMuZXJyb3IpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBub3JtYWxpemVkTW9kLm9uKCdlcnJvcicsIGJpbmQodGhpcywgZnVuY3Rpb24gKGVycikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmVtaXQoJ2Vycm9yJywgZXJyKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBub3JtYWxpemVkTW9kLmVuYWJsZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAvLyBJZiBhIHBhdGhzIGNvbmZpZywgdGhlbiBqdXN0IGxvYWQgdGhhdCBmaWxlIGluc3RlYWQgdG9cclxuICAgICAgICAgICAgICAgICAgICAvLyByZXNvbHZlIHRoZSBwbHVnaW4sIGFzIGl0IGlzIGJ1aWx0IGludG8gdGhhdCBwYXRocyBsYXllci5cclxuICAgICAgICAgICAgICAgICAgICBpZiAoYnVuZGxlSWQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tYXAudXJsID0gY29udGV4dC5uYW1lVG9VcmwoYnVuZGxlSWQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmxvYWQoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgbG9hZCA9IGJpbmQodGhpcywgZnVuY3Rpb24gKHZhbHVlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuaW5pdChbXSwgZnVuY3Rpb24gKCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHZhbHVlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9LCBudWxsLCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbmFibGVkOiB0cnVlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICBsb2FkLmVycm9yID0gYmluZCh0aGlzLCBmdW5jdGlvbiAoZXJyKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuaW5pdGVkID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5lcnJvciA9IGVycjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZXJyLnJlcXVpcmVNb2R1bGVzID0gW2lkXTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIFJlbW92ZSB0ZW1wIHVubm9ybWFsaXplZCBtb2R1bGVzIGZvciB0aGlzIG1vZHVsZSwgc2luY2UgdGhleSB3aWxsIG5ldmVyIGJlIHJlc29sdmVkIG90aGVyd2lzZSBcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gbm93LlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBlYWNoUHJvcChyZWdpc3RyeSwgZnVuY3Rpb24gKG1vZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG1vZC5tYXAuaWQuaW5kZXhPZihpZCArICdfdW5ub3JtYWxpemVkJykgPT09IDApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGVhblJlZ2lzdHJ5KG1vZC5tYXAuaWQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG9uRXJyb3IoZXJyKTtcclxuICAgICAgICAgICAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLy8gQWxsb3cgcGx1Z2lucyB0byBsb2FkIG90aGVyIGNvZGUgd2l0aG91dCBoYXZpbmcgdG8ga25vdyB0aGUgY29udGV4dCBvciBob3cgdG8gJ2NvbXBsZXRlJyB0aGUgXHJcbiAgICAgICAgICAgICAgICAgICAgLy8gbG9hZC5cclxuICAgICAgICAgICAgICAgICAgICBsb2FkLmZyb21UZXh0ID0gYmluZCh0aGlzLCBmdW5jdGlvbiAodGV4dCwgdGV4dEFsdCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAvKmpzbGludCBldmlsOiB0cnVlICovXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBtb2R1bGVOYW1lID0gbWFwLm5hbWUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtb2R1bGVNYXAgPSBtYWtlTW9kdWxlTWFwKG1vZHVsZU5hbWUpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFzSW50ZXJhY3RpdmUgPSB1c2VJbnRlcmFjdGl2ZTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIEFzIG9mIDIuMS4wLCBzdXBwb3J0IGp1c3QgcGFzc2luZyB0aGUgdGV4dCwgdG8gcmVpbmZvcmNlIGZyb21UZXh0IG9ubHkgYmVpbmcgY2FsbGVkIG9uY2UgcGVyIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyByZXNvdXJjZS4gU3RpbGwgc3VwcG9ydCBvbGQgc3R5bGUgb2YgcGFzc2luZyBtb2R1bGVOYW1lIGJ1dCBkaXNjYXJkIHRoYXQgbW9kdWxlTmFtZSBpbiBmYXZvciBcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gb2YgdGhlIGludGVybmFsIHJlZi5cclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRleHRBbHQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQgPSB0ZXh0QWx0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBUdXJuIG9mZiBpbnRlcmFjdGl2ZSBzY3JpcHQgbWF0Y2hpbmcgZm9yIElFIGZvciBhbnkgZGVmaW5lIGNhbGxzIGluIHRoZSB0ZXh0LCB0aGVuIHR1cm4gaXQgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGJhY2sgb24gYXQgdGhlIGVuZC5cclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGhhc0ludGVyYWN0aXZlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VJbnRlcmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBQcmltZSB0aGUgc3lzdGVtIGJ5IGNyZWF0aW5nIGEgbW9kdWxlIGluc3RhbmNlIGZvciBpdC5cclxuICAgICAgICAgICAgICAgICAgICAgICAgZ2V0TW9kdWxlKG1vZHVsZU1hcCk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBUcmFuc2ZlciBhbnkgY29uZmlnIHRvIHRoaXMgb3RoZXIgbW9kdWxlLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoaGFzUHJvcChjb25maWcuY29uZmlnLCBpZCkpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZpZy5jb25maWdbbW9kdWxlTmFtZV0gPSBjb25maWcuY29uZmlnW2lkXTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcS5leGVjKHRleHQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gb25FcnJvcihtYWtlRXJyb3IoJ2Zyb210ZXh0ZXZhbCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2Zyb21UZXh0IGV2YWwgZm9yICcgKyBpZCArXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJyBmYWlsZWQ6ICcgKyBlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2lkXSkpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoaGFzSW50ZXJhY3RpdmUpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZUludGVyYWN0aXZlID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gTWFyayB0aGlzIGFzIGEgZGVwZW5kZW5jeSBmb3IgdGhlIHBsdWdpbiByZXNvdXJjZS5cclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kZXBNYXBzLnB1c2gobW9kdWxlTWFwKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIFN1cHBvcnQgYW5vbnltb3VzIG1vZHVsZXMuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRleHQuY29tcGxldGVMb2FkKG1vZHVsZU5hbWUpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gQmluZCB0aGUgdmFsdWUgb2YgdGhhdCBtb2R1bGUgdG8gdGhlIHZhbHVlIGZvciB0aGlzIHJlc291cmNlIElELlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBsb2NhbFJlcXVpcmUoW21vZHVsZU5hbWVdLCBsb2FkKTtcclxuICAgICAgICAgICAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLy8gVXNlIHBhcmVudE5hbWUgaGVyZSBzaW5jZSB0aGUgcGx1Z2luJ3MgbmFtZSBpcyBub3QgcmVsaWFibGUsIGNvdWxkIGJlIHNvbWUgd2VpcmQgc3RyaW5nIHdpdGggbm8gXHJcbiAgICAgICAgICAgICAgICAgICAgLy8gcGF0aCB0aGF0IGFjdHVhbGx5IHdhbnRzIHRvIHJlZmVyZW5jZSB0aGUgcGFyZW50TmFtZSdzIHBhdGguXHJcbiAgICAgICAgICAgICAgICAgICAgcGx1Z2luLmxvYWQobWFwLm5hbWUsIGxvY2FsUmVxdWlyZSwgbG9hZCwgY29uZmlnKTtcclxuICAgICAgICAgICAgICAgIH0pKTtcclxuXHJcbiAgICAgICAgICAgICAgICBjb250ZXh0LmVuYWJsZShwbHVnaW5NYXAsIHRoaXMpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5wbHVnaW5NYXBzW3BsdWdpbk1hcC5pZF0gPSBwbHVnaW5NYXA7XHJcbiAgICAgICAgICAgIH0sXHJcblxyXG4gICAgICAgICAgICBlbmFibGU6IGZ1bmN0aW9uICgpIHtcclxuICAgICAgICAgICAgICAgIGVuYWJsZWRSZWdpc3RyeVt0aGlzLm1hcC5pZF0gPSB0aGlzO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5lbmFibGVkID0gdHJ1ZTtcclxuXHJcbiAgICAgICAgICAgICAgICAvLyBTZXQgZmxhZyBtZW50aW9uaW5nIHRoYXQgdGhlIG1vZHVsZSBpcyBlbmFibGluZywgc28gdGhhdCBpbW1lZGlhdGUgY2FsbHMgdG8gdGhlIGRlZmluZWQgY2FsbGJhY2tzIGZvciBcclxuICAgICAgICAgICAgICAgIC8vIGRlcGVuZGVuY2llcyBkbyBub3QgdHJpZ2dlciBpbmFkdmVydGVudCBsb2FkIHdpdGggdGhlIGRlcENvdW50IHN0aWxsIGJlaW5nIHplcm8uXHJcbiAgICAgICAgICAgICAgICB0aGlzLmVuYWJsaW5nID0gdHJ1ZTtcclxuXHJcbiAgICAgICAgICAgICAgICAvLyBFbmFibGUgZWFjaCBkZXBlbmRlbmN5LlxyXG4gICAgICAgICAgICAgICAgZWFjaCh0aGlzLmRlcE1hcHMsIGJpbmQodGhpcywgZnVuY3Rpb24gKGRlcE1hcCwgaSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCBpZDtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgbW9kO1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCBoYW5kbGVyO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICBpZiAodHlwZW9mIGRlcE1hcCA9PT0gJ3N0cmluZycpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gRGVwZW5kZW5jeSBuZWVkcyB0byBiZSBjb252ZXJ0ZWQgdG8gYSBkZXBNYXAgYW5kIHdpcmVkIHVwIHRvIHRoaXMgbW9kdWxlLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkZXBNYXAgPSBtYWtlTW9kdWxlTWFwKGRlcE1hcCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICh0aGlzLm1hcC5pc0RlZmluZSA/IHRoaXMubWFwIDogdGhpcy5tYXAucGFyZW50TWFwKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIXRoaXMuc2tpcE1hcCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZGVwTWFwc1tpXSA9IGRlcE1hcDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZXIgPSBnZXRPd24oaGFuZGxlcnMsIGRlcE1hcC5pZCk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoaGFuZGxlcikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kZXBFeHBvcnRzW2ldID0gaGFuZGxlcih0aGlzKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kZXBDb3VudCArPSAxO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgb24oZGVwTWFwLCAnZGVmaW5lZCcsIGJpbmQodGhpcywgZnVuY3Rpb24gKGRlcEV4cG9ydHMpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLnVuZGVmZWQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmRlZmluZURlcChpLCBkZXBFeHBvcnRzKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY2hlY2soKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSkpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuZXJyYmFjaykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb24oZGVwTWFwLCAnZXJyb3InLCBiaW5kKHRoaXMsIHRoaXMuZXJyYmFjaykpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMuZXZlbnRzLmVycm9yKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBObyBkaXJlY3QgZXJyYmFjayBvbiB0aGlzIG1vZHVsZSwgYnV0IHNvbWV0aGluZyBlbHNlIGlzIGxpc3RlbmluZyBmb3IgZXJyb3JzLCBzbyBiZSBzdXJlIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdG8gcHJvcGFnYXRlIHRoZSBlcnJvciBjb3JyZWN0bHkuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbihkZXBNYXAsICdlcnJvcicsIGJpbmQodGhpcywgZnVuY3Rpb24gKGVycikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZW1pdCgnZXJyb3InLCBlcnIpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICBpZCA9IGRlcE1hcC5pZDtcclxuICAgICAgICAgICAgICAgICAgICBtb2QgPSByZWdpc3RyeVtpZF07XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC8vIFNraXAgc3BlY2lhbCBtb2R1bGVzIGxpa2UgJ3JlcXVpcmUnLCAnZXhwb3J0cycsICdtb2R1bGUnLiBBbHNvLCBkb24ndCBjYWxsIGVuYWJsZSBpZiBpdCBpcyBcclxuICAgICAgICAgICAgICAgICAgICAvLyBhbHJlYWR5IGVuYWJsZWQsIGltcG9ydGFudCBpbiBjaXJjdWxhciBkZXBlbmRlbmN5IGNhc2VzLlxyXG4gICAgICAgICAgICAgICAgICAgIGlmICghaGFzUHJvcChoYW5kbGVycywgaWQpICYmIG1vZCAmJiAhbW9kLmVuYWJsZWQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dC5lbmFibGUoZGVwTWFwLCB0aGlzKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9KSk7XHJcblxyXG4gICAgICAgICAgICAgICAgLy8gRW5hYmxlIGVhY2ggcGx1Z2luIHRoYXQgaXMgdXNlZCBpbiAgYSBkZXBlbmRlbmN5LlxyXG4gICAgICAgICAgICAgICAgZWFjaFByb3AodGhpcy5wbHVnaW5NYXBzLCBiaW5kKHRoaXMsIGZ1bmN0aW9uIChwbHVnaW5NYXApIHtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgbW9kID0gZ2V0T3duKHJlZ2lzdHJ5LCBwbHVnaW5NYXAuaWQpO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChtb2QgJiYgIW1vZC5lbmFibGVkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRleHQuZW5hYmxlKHBsdWdpbk1hcCwgdGhpcyk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSkpO1xyXG5cclxuICAgICAgICAgICAgICAgIHRoaXMuZW5hYmxpbmcgPSBmYWxzZTtcclxuXHJcbiAgICAgICAgICAgICAgICB0aGlzLmNoZWNrKCk7XHJcbiAgICAgICAgICAgIH0sXHJcblxyXG4gICAgICAgICAgICBvbjogZnVuY3Rpb24gKG5hbWUsIGNiKSB7XHJcbiAgICAgICAgICAgICAgICBsZXQgY2JzID0gdGhpcy5ldmVudHNbbmFtZV07XHJcbiAgICAgICAgICAgICAgICBpZiAoIWNicykge1xyXG4gICAgICAgICAgICAgICAgICAgIGNicyA9IHRoaXMuZXZlbnRzW25hbWVdID0gW107XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBjYnMucHVzaChjYik7XHJcbiAgICAgICAgICAgIH0sXHJcblxyXG4gICAgICAgICAgICBlbWl0OiBmdW5jdGlvbiAobmFtZSwgZXZ0KSB7XHJcbiAgICAgICAgICAgICAgICBlYWNoKHRoaXMuZXZlbnRzW25hbWVdLCBmdW5jdGlvbiAoY2IpIHtcclxuICAgICAgICAgICAgICAgICAgICBjYihldnQpO1xyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICBpZiAobmFtZSA9PT0gJ2Vycm9yJykge1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIE5vdyB0aGF0IHRoZSBlcnJvciBoYW5kbGVyIHdhcyB0cmlnZ2VyZWQsIHJlbW92ZSB0aGUgbGlzdGVuZXJzLCBzaW5jZSB0aGlzIGJyb2tlbiBNb2R1bGUgaW5zdGFuY2VcclxuICAgICAgICAgICAgICAgICAgICAvLyBjYW4gc3RheSBhcm91bmQgZm9yIGEgd2hpbGUgaW4gdGhlIHJlZ2lzdHJ5LlxyXG4gICAgICAgICAgICAgICAgICAgIGRlbGV0ZSB0aGlzLmV2ZW50c1tuYW1lXTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH07XHJcblxyXG4gICAgICAgIGZ1bmN0aW9uIGNhbGxHZXRNb2R1bGUoYXJncykge1xyXG4gICAgICAgICAgICAvLyBTa2lwIG1vZHVsZXMgYWxyZWFkeSBkZWZpbmVkLlxyXG4gICAgICAgICAgICBpZiAoIWhhc1Byb3AoZGVmaW5lZCwgYXJnc1swXSkpIHtcclxuICAgICAgICAgICAgICAgIGdldE1vZHVsZShtYWtlTW9kdWxlTWFwKGFyZ3NbMF0sIG51bGwsIHRydWUpKS5pbml0KGFyZ3NbMV0sIGFyZ3NbMl0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBmdW5jdGlvbiByZW1vdmVMaXN0ZW5lcihub2RlLCBmdW5jLCBuYW1lLCBpZU5hbWUpIHtcclxuICAgICAgICAgICAgLy8gRmF2b3IgZGV0YWNoRXZlbnQgYmVjYXVzZSBvZiBJRTkgaXNzdWUsIHNlZSBhdHRhY2hFdmVudC9hZGRFdmVudExpc3RlbmVyIGNvbW1lbnQgZWxzZXdoZXJlIGluIHRoaXMgZmlsZS5cclxuICAgICAgICAgICAgaWYgKG5vZGUuZGV0YWNoRXZlbnQgJiYgIWlzT3BlcmEpIHtcclxuICAgICAgICAgICAgICAgIC8vIFByb2JhYmx5IElFLiBJZiBub3QgaXQgd2lsbCB0aHJvdyBhbiBlcnJvciwgd2hpY2ggd2lsbCBiZSB1c2VmdWwgdG8ga25vdy5cclxuICAgICAgICAgICAgICAgIGlmIChpZU5hbWUpIHtcclxuICAgICAgICAgICAgICAgICAgICBub2RlLmRldGFjaEV2ZW50KGllTmFtZSwgZnVuYyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICBub2RlLnJlbW92ZUV2ZW50TGlzdGVuZXIobmFtZSwgZnVuYywgZmFsc2UpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvKipcclxuICAgICAgICAgKiBHaXZlbiBhbiBldmVudCBmcm9tIGEgc2NyaXB0IG5vZGUsIGdldCB0aGUgcmVxdWlyZWpzIGluZm8gZnJvbSBpdCwgYW5kIHRoZW4gcmVtb3ZlcyB0aGUgZXZlbnQgbGlzdGVuZXJzIG9uXHJcbiAgICAgICAgICogdGhlIG5vZGUuXHJcbiAgICAgICAgICpcclxuICAgICAgICAgKiBAcGFyYW0ge0V2ZW50fSBldnRcclxuICAgICAgICAgKlxyXG4gICAgICAgICAqIEByZXR1cm4ge09iamVjdH1cclxuICAgICAgICAgKi9cclxuICAgICAgICBmdW5jdGlvbiBnZXRTY3JpcHREYXRhKGV2dCkge1xyXG4gICAgICAgICAgICAvLyBVc2luZyBjdXJyZW50VGFyZ2V0IGluc3RlYWQgb2YgdGFyZ2V0IGZvciBGaXJlZm94IDIuMCdzIHNha2UuIE5vdCBhbGwgb2xkIGJyb3dzZXJzIHdpbGwgYmUgc3VwcG9ydGVkLCBidXQgXHJcbiAgICAgICAgICAgIC8vIHRoaXMgb25lIHdhcyBlYXN5IGVub3VnaCB0byBzdXBwb3J0IGFuZCBzdGlsbCBtYWtlcyBzZW5zZS5cclxuICAgICAgICAgICAgbGV0IG5vZGUgPSBldnQuY3VycmVudFRhcmdldCB8fCBldnQuc3JjRWxlbWVudDtcclxuXHJcbiAgICAgICAgICAgIC8vIFJlbW92ZSB0aGUgbGlzdGVuZXJzIG9uY2UgaGVyZS5cclxuICAgICAgICAgICAgcmVtb3ZlTGlzdGVuZXIobm9kZSwgY29udGV4dC5vblNjcmlwdExvYWQsICdsb2FkJywgJ29ucmVhZHlzdGF0ZWNoYW5nZScpO1xyXG4gICAgICAgICAgICByZW1vdmVMaXN0ZW5lcihub2RlLCBjb250ZXh0Lm9uU2NyaXB0RXJyb3IsICdlcnJvcicpO1xyXG5cclxuICAgICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgICAgIG5vZGU6IG5vZGUsXHJcbiAgICAgICAgICAgICAgICBpZDogbm9kZSAmJiBub2RlLmdldEF0dHJpYnV0ZSgnZGF0YS1yZXF1aXJlbW9kdWxlJylcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGZ1bmN0aW9uIGludGFrZURlZmluZXMoKSB7XHJcbiAgICAgICAgICAgIGxldCBhcmdzO1xyXG5cclxuICAgICAgICAgICAgLy8gQW55IGRlZmluZWQgbW9kdWxlcyBpbiB0aGUgZ2xvYmFsIHF1ZXVlLCBpbnRha2UgdGhlbSBub3cuXHJcbiAgICAgICAgICAgIHRha2VHbG9iYWxRdWV1ZSgpO1xyXG5cclxuICAgICAgICAgICAgLy8gTWFrZSBzdXJlIGFueSByZW1haW5pbmcgZGVmUXVldWUgaXRlbXMgZ2V0IHByb3Blcmx5IHByb2Nlc3NlZC5cclxuICAgICAgICAgICAgd2hpbGUgKGRlZlF1ZXVlLmxlbmd0aCkge1xyXG4gICAgICAgICAgICAgICAgYXJncyA9IGRlZlF1ZXVlLnNoaWZ0KCk7XHJcbiAgICAgICAgICAgICAgICBpZiAoYXJnc1swXSA9PT0gbnVsbCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBvbkVycm9yKG1ha2VFcnJvcignbWlzbWF0Y2gnLCAnTWlzbWF0Y2hlZCBhbm9ueW1vdXMgZGVmaW5lKCkgbW9kdWxlOiAnICtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYXJnc1thcmdzLmxlbmd0aCAtIDFdKSk7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIGFyZ3MgYXJlIGlkLCBkZXBzLCBmYWN0b3J5LiBTaG91bGQgYmUgbm9ybWFsaXplZCBieSB0aGVcclxuICAgICAgICAgICAgICAgICAgICAvLyBkZWZpbmUoKSBmdW5jdGlvbi5cclxuICAgICAgICAgICAgICAgICAgICBjYWxsR2V0TW9kdWxlKGFyZ3MpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGNvbnRleHQuZGVmUXVldWVNYXAgPSB7fTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNvbnRleHQgPSB7XHJcbiAgICAgICAgICAgIGNvbmZpZzogY29uZmlnLFxyXG4gICAgICAgICAgICBjb250ZXh0TmFtZTogY29udGV4dE5hbWUsXHJcbiAgICAgICAgICAgIHJlZ2lzdHJ5OiByZWdpc3RyeSxcclxuICAgICAgICAgICAgZGVmaW5lZDogZGVmaW5lZCxcclxuICAgICAgICAgICAgdXJsRmV0Y2hlZDogdXJsRmV0Y2hlZCxcclxuICAgICAgICAgICAgZGVmUXVldWU6IGRlZlF1ZXVlLFxyXG4gICAgICAgICAgICBkZWZRdWV1ZU1hcDoge30sXHJcbiAgICAgICAgICAgIE1vZHVsZTogTW9kdWxlLFxyXG4gICAgICAgICAgICBtYWtlTW9kdWxlTWFwOiBtYWtlTW9kdWxlTWFwLFxyXG4gICAgICAgICAgICBuZXh0VGljazogcmVxLm5leHRUaWNrLFxyXG4gICAgICAgICAgICBvbkVycm9yOiBvbkVycm9yLFxyXG5cclxuICAgICAgICAgICAgLyoqXHJcbiAgICAgICAgICAgICAqIFNldCBhIGNvbmZpZ3VyYXRpb24gZm9yIHRoZSBjb250ZXh0LlxyXG4gICAgICAgICAgICAgKlxyXG4gICAgICAgICAgICAgKiBAcGFyYW0ge09iamVjdH0gY2ZnIGNvbmZpZyBvYmplY3QgdG8gaW50ZWdyYXRlLlxyXG4gICAgICAgICAgICAgKi9cclxuICAgICAgICAgICAgY29uZmlndXJlOiBmdW5jdGlvbiAoY2ZnKSB7XHJcbiAgICAgICAgICAgICAgICAvLyBNYWtlIHN1cmUgdGhlIGJhc2VVcmwgZW5kcyBpbiBhIHNsYXNoLlxyXG4gICAgICAgICAgICAgICAgaWYgKGNmZy5iYXNlVXJsKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKGNmZy5iYXNlVXJsLmNoYXJBdChjZmcuYmFzZVVybC5sZW5ndGggLSAxKSAhPT0gJy8nKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNmZy5iYXNlVXJsICs9ICcvJztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLy8gU2F2ZSBvZmYgdGhlIHBhdGhzIHNpbmNlIHRoZXkgcmVxdWlyZSBzcGVjaWFsIHByb2Nlc3NpbmcsIHRoZXkgYXJlIGFkZGl0aXZlLlxyXG4gICAgICAgICAgICAgICAgbGV0IHNoaW0gPSBjb25maWcuc2hpbSxcclxuICAgICAgICAgICAgICAgICAgICBvYmpzID0ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXRoczogdHJ1ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgYnVuZGxlczogdHJ1ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uZmlnOiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXA6IHRydWVcclxuICAgICAgICAgICAgICAgICAgICB9O1xyXG5cclxuICAgICAgICAgICAgICAgIGVhY2hQcm9wKGNmZywgZnVuY3Rpb24gKHZhbHVlLCBwcm9wKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKG9ianNbcHJvcF0pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFjb25maWdbcHJvcF0pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZpZ1twcm9wXSA9IHt9O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1peGluKGNvbmZpZ1twcm9wXSwgdmFsdWUsIHRydWUsIHRydWUpO1xyXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZpZ1twcm9wXSA9IHZhbHVlO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgICAgICAgIC8vIFJldmVyc2UgbWFwIHRoZSBidW5kbGVzXHJcbiAgICAgICAgICAgICAgICBpZiAoY2ZnLmJ1bmRsZXMpIHtcclxuICAgICAgICAgICAgICAgICAgICBlYWNoUHJvcChjZmcuYnVuZGxlcywgZnVuY3Rpb24gKHZhbHVlLCBwcm9wKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGVhY2godmFsdWUsIGZ1bmN0aW9uICh2KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodiAhPT0gcHJvcCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1bmRsZXNNYXBbdl0gPSBwcm9wO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAvLyBNZXJnZSBzaGltXHJcbiAgICAgICAgICAgICAgICBpZiAoY2ZnLnNoaW0pIHtcclxuICAgICAgICAgICAgICAgICAgICBlYWNoUHJvcChjZmcuc2hpbSwgZnVuY3Rpb24gKHZhbHVlLCBpZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBOb3JtYWxpemUgdGhlIHN0cnVjdHVyZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoaXNBcnJheSh2YWx1ZSkpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlID0ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlcHM6IHZhbHVlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgodmFsdWUuZXhwb3J0cyB8fCB2YWx1ZS5pbml0KSAmJiAhdmFsdWUuZXhwb3J0c0ZuKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZS5leHBvcnRzRm4gPSBjb250ZXh0Lm1ha2VTaGltRXhwb3J0cyh2YWx1ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgc2hpbVtpZF0gPSB2YWx1ZTtcclxuICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICBjb25maWcuc2hpbSA9IHNoaW07XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLy8gQWRqdXN0IHBhY2thZ2VzIGlmIG5lY2Vzc2FyeS5cclxuICAgICAgICAgICAgICAgIGlmIChjZmcucGFja2FnZXMpIHtcclxuICAgICAgICAgICAgICAgICAgICBlYWNoKGNmZy5wYWNrYWdlcywgZnVuY3Rpb24gKHBrZ09iaikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgbG9jYXRpb24sIG5hbWU7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBwa2dPYmogPSB0eXBlb2YgcGtnT2JqID09PSAnc3RyaW5nJyA/IHtuYW1lOiBwa2dPYmp9IDogcGtnT2JqO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZSA9IHBrZ09iai5uYW1lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsb2NhdGlvbiA9IHBrZ09iai5sb2NhdGlvbjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGxvY2F0aW9uKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25maWcucGF0aHNbbmFtZV0gPSBwa2dPYmoubG9jYXRpb247XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIFNhdmUgcG9pbnRlciB0byBtYWluIG1vZHVsZSBJRCBmb3IgcGtnIG5hbWUuIFJlbW92ZSBsZWFkaW5nIGRvdCBpbiBtYWluLCBzbyBtYWluIHBhdGhzIGFyZSBcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gbm9ybWFsaXplZCwgYW5kIHJlbW92ZSBhbnkgdHJhaWxpbmcgLmpzLCBzaW5jZSBkaWZmZXJlbnQgcGFja2FnZSBlbnZzIGhhdmUgZGlmZmVyZW50IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBjb252ZW50aW9uczogc29tZSB1c2UgYSBtb2R1bGUgbmFtZSwgc29tZSB1c2UgYSBmaWxlIG5hbWUuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZpZy5wa2dzW25hbWVdID0gcGtnT2JqLm5hbWUgKyAnLycgKyAocGtnT2JqLm1haW4gfHwgJ21haW4nKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnJlcGxhY2UoY3VyckRpclJlZ0V4cCwgJycpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAucmVwbGFjZShqc1N1ZmZpeFJlZ0V4cCwgJycpO1xyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC8vIElmIHRoZXJlIGFyZSBhbnkgXCJ3YWl0aW5nIHRvIGV4ZWN1dGVcIiBtb2R1bGVzIGluIHRoZSByZWdpc3RyeSwgdXBkYXRlIHRoZSBtYXBzIGZvciB0aGVtLCBzaW5jZSB0aGVpciBcclxuICAgICAgICAgICAgICAgIC8vIGluZm8sIGxpa2UgVVJMcyB0byBsb2FkLCBtYXkgaGF2ZSBjaGFuZ2VkLlxyXG4gICAgICAgICAgICAgICAgZWFjaFByb3AocmVnaXN0cnksIGZ1bmN0aW9uIChtb2QsIGlkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gSWYgbW9kdWxlIGFscmVhZHkgaGFzIGluaXQgY2FsbGVkLCBzaW5jZSBpdCBpcyB0b28gbGF0ZSB0byBtb2RpZnkgdGhlbSwgYW5kIGlnbm9yZSB1bm5vcm1hbGl6ZWQgXHJcbiAgICAgICAgICAgICAgICAgICAgLy8gb25lcyBzaW5jZSB0aGV5IGFyZSB0cmFuc2llbnQuXHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFtb2QuaW5pdGVkICYmICFtb2QubWFwLnVubm9ybWFsaXplZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtb2QubWFwID0gbWFrZU1vZHVsZU1hcChpZCwgbnVsbCwgdHJ1ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSk7XHJcblxyXG4gICAgICAgICAgICAgICAgLy8gSWYgYSBkZXBzIGFycmF5IG9yIGEgY29uZmlnIGNhbGxiYWNrIGlzIHNwZWNpZmllZCwgdGhlbiBjYWxsIHJlcXVpcmUgd2l0aCB0aG9zZSBhcmdzLiBUaGlzIGlzIHVzZWZ1bCBcclxuICAgICAgICAgICAgICAgIC8vIHdoZW4gcmVxdWlyZSBpcyBkZWZpbmVkIGFzIGEgY29uZmlnIG9iamVjdCBiZWZvcmUgcmVxdWlyZS5qcyBpcyBsb2FkZWQuXHJcbiAgICAgICAgICAgICAgICBpZiAoY2ZnLmRlcHMgfHwgY2ZnLmNhbGxiYWNrKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGV4dC5yZXF1aXJlKGNmZy5kZXBzIHx8IFtdLCBjZmcuY2FsbGJhY2spO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9LFxyXG5cclxuICAgICAgICAgICAgbWFrZVNoaW1FeHBvcnRzOiBmdW5jdGlvbiAodmFsdWUpIHtcclxuICAgICAgICAgICAgICAgIGZ1bmN0aW9uIGZuKCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCByZXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHZhbHVlLmluaXQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0ID0gdmFsdWUuaW5pdC5hcHBseShnbG9iYWwsIGFyZ3VtZW50cyk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiByZXQgfHwgKHZhbHVlLmV4cG9ydHMgJiYgZ2V0R2xvYmFsKHZhbHVlLmV4cG9ydHMpKTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICByZXR1cm4gZm47XHJcbiAgICAgICAgICAgIH0sXHJcblxyXG4gICAgICAgICAgICBtYWtlUmVxdWlyZTogZnVuY3Rpb24gKHJlbE1hcCwgb3B0aW9ucykge1xyXG4gICAgICAgICAgICAgICAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307XHJcblxyXG4gICAgICAgICAgICAgICAgZnVuY3Rpb24gbG9jYWxSZXF1aXJlKGRlcHMsIGNhbGxiYWNrLCBlcnJiYWNrKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IGlkLCBtYXAsIHJlcXVpcmVNb2Q7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIGlmIChvcHRpb25zLmVuYWJsZUJ1aWxkQ2FsbGJhY2sgJiYgY2FsbGJhY2sgJiYgaXNGdW5jdGlvbihjYWxsYmFjaykpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2suX19yZXF1aXJlSnNCdWlsZCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICBpZiAodHlwZW9mIGRlcHMgPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpc0Z1bmN0aW9uKGNhbGxiYWNrKSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gSW52YWxpZCBjYWxsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gb25FcnJvcihtYWtlRXJyb3IoJ3JlcXVpcmVhcmdzJywgJ0ludmFsaWQgcmVxdWlyZSBjYWxsJyksIGVycmJhY2spO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBJZiByZXF1aXJlfGV4cG9ydHN8bW9kdWxlIGFyZSByZXF1ZXN0ZWQsIGdldCB0aGUgdmFsdWUgZm9yIHRoZW0gZnJvbSB0aGUgc3BlY2lhbCBoYW5kbGVycy4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIENhdmVhdDogdGhpcyBvbmx5IHdvcmtzIHdoaWxlIG1vZHVsZSBpcyBiZWluZyBkZWZpbmVkLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVsTWFwICYmIGhhc1Byb3AoaGFuZGxlcnMsIGRlcHMpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gaGFuZGxlcnNbZGVwc10ocmVnaXN0cnlbcmVsTWFwLmlkXSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIFN5bmNocm9ub3VzIGFjY2VzcyB0byBvbmUgbW9kdWxlLiBJZiByZXF1aXJlLmdldCBpcyBhdmFpbGFibGUgKGFzIGluIHRoZSBOb2RlIGFkYXB0ZXIpLCBcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gcHJlZmVyIHRoYXQuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXEuZ2V0KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVxLmdldChjb250ZXh0LCBkZXBzLCByZWxNYXAsIGxvY2FsUmVxdWlyZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIE5vcm1hbGl6ZSBtb2R1bGUgbmFtZSwgaWYgaXQgY29udGFpbnMgLiBvciAuLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXAgPSBtYWtlTW9kdWxlTWFwKGRlcHMsIHJlbE1hcCwgZmFsc2UsIHRydWUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZCA9IG1hcC5pZDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghaGFzUHJvcChkZWZpbmVkLCBpZCkpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBvbkVycm9yKG1ha2VFcnJvcignbm90bG9hZGVkJywgJ01vZHVsZSBuYW1lIFwiJyArXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQgK1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdcIiBoYXMgbm90IGJlZW4gbG9hZGVkIHlldCBmb3IgY29udGV4dDogJyArXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dE5hbWUgK1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChyZWxNYXAgPyAnJyA6ICcuIFVzZSByZXF1aXJlKFtdKScpKSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGRlZmluZWRbaWRdO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLy8gR3JhYiBkZWZpbmVzIHdhaXRpbmcgaW4gdGhlIGdsb2JhbCBxdWV1ZS5cclxuICAgICAgICAgICAgICAgICAgICBpbnRha2VEZWZpbmVzKCk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC8vIE1hcmsgYWxsIHRoZSBkZXBlbmRlbmNpZXMgYXMgbmVlZGluZyB0byBiZSBsb2FkZWQuXHJcbiAgICAgICAgICAgICAgICAgICAgY29udGV4dC5uZXh0VGljayhmdW5jdGlvbiAoKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIFNvbWUgZGVmaW5lcyBjb3VsZCBoYXZlIGJlZW4gYWRkZWQgc2luY2UgdGhlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHJlcXVpcmUgY2FsbCwgY29sbGVjdCB0aGVtLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBpbnRha2VEZWZpbmVzKCk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlTW9kID0gZ2V0TW9kdWxlKG1ha2VNb2R1bGVNYXAobnVsbCwgcmVsTWFwKSk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBTdG9yZSBpZiBtYXAgY29uZmlnIHNob3VsZCBiZSBhcHBsaWVkIHRvIHRoaXMgcmVxdWlyZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBjYWxsIGZvciBkZXBlbmRlbmNpZXMuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVNb2Quc2tpcE1hcCA9IG9wdGlvbnMuc2tpcE1hcDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVNb2QuaW5pdChkZXBzLCBjYWxsYmFjaywgZXJyYmFjaywge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5hYmxlZDogdHJ1ZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNoZWNrTG9hZGVkKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfSk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBsb2NhbFJlcXVpcmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgbWl4aW4obG9jYWxSZXF1aXJlLCB7XHJcbiAgICAgICAgICAgICAgICAgICAgaXNCcm93c2VyOiBpc0Jyb3dzZXIsXHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC8qKlxyXG4gICAgICAgICAgICAgICAgICAgICAqIENvbnZlcnRzIGEgbW9kdWxlIG5hbWUgKyAuZXh0ZW5zaW9uIGludG8gYW4gVVJMIHBhdGguXHJcbiAgICAgICAgICAgICAgICAgICAgICpcclxuICAgICAgICAgICAgICAgICAgICAgKiAqUmVxdWlyZXMqIHRoZSB1c2Ugb2YgYSBtb2R1bGUgbmFtZS4gSXQgZG9lcyBub3Qgc3VwcG9ydCB1c2luZyBwbGFpbiBVUkxzIGxpa2UgbmFtZVRvVXJsLlxyXG4gICAgICAgICAgICAgICAgICAgICAqL1xyXG4gICAgICAgICAgICAgICAgICAgIHRvVXJsOiBmdW5jdGlvbiAobW9kdWxlTmFtZVBsdXNFeHQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGV4dCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluZGV4ID0gbW9kdWxlTmFtZVBsdXNFeHQubGFzdEluZGV4T2YoJy4nKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlZ21lbnQgPSBtb2R1bGVOYW1lUGx1c0V4dC5zcGxpdCgnLycpWzBdLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNSZWxhdGl2ZSA9IHNlZ21lbnQgPT09ICcuJyB8fCBzZWdtZW50ID09PSAnLi4nO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gSGF2ZSBhIGZpbGUgZXh0ZW5zaW9uIGFsaWFzLCBhbmQgaXQgaXMgbm90IHRoZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBkb3RzIGZyb20gYSByZWxhdGl2ZSBwYXRoLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoaW5kZXggIT09IC0xICYmICghaXNSZWxhdGl2ZSB8fCBpbmRleCA+IDEpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHQgPSBtb2R1bGVOYW1lUGx1c0V4dC5zdWJzdHJpbmcoaW5kZXgsIG1vZHVsZU5hbWVQbHVzRXh0Lmxlbmd0aCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtb2R1bGVOYW1lUGx1c0V4dCA9IG1vZHVsZU5hbWVQbHVzRXh0LnN1YnN0cmluZygwLCBpbmRleCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBjb250ZXh0Lm5hbWVUb1VybChub3JtYWxpemUobW9kdWxlTmFtZVBsdXNFeHQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWxNYXAgJiYgcmVsTWFwLmlkLCB0cnVlKSwgZXh0LCB0cnVlKTtcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG5cclxuICAgICAgICAgICAgICAgICAgICBkZWZpbmVkOiBmdW5jdGlvbiAoaWQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGhhc1Byb3AoZGVmaW5lZCwgbWFrZU1vZHVsZU1hcChpZCwgcmVsTWFwLCBmYWxzZSwgdHJ1ZSkuaWQpO1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHNwZWNpZmllZDogZnVuY3Rpb24gKGlkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlkID0gbWFrZU1vZHVsZU1hcChpZCwgcmVsTWFwLCBmYWxzZSwgdHJ1ZSkuaWQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBoYXNQcm9wKGRlZmluZWQsIGlkKSB8fCBoYXNQcm9wKHJlZ2lzdHJ5LCBpZCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSk7XHJcblxyXG4gICAgICAgICAgICAgICAgLy8gT25seSBhbGxvdyB1bmRlZiBvbiB0b3AgbGV2ZWwgcmVxdWlyZSBjYWxscy5cclxuICAgICAgICAgICAgICAgIGlmICghcmVsTWFwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbG9jYWxSZXF1aXJlLnVuZGVmID0gZnVuY3Rpb24gKGlkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIEJpbmQgYW55IHdhaXRpbmcgZGVmaW5lKCkgY2FsbHMgdG8gdGhpcyBjb250ZXh0LCBmaXggZm9yICM0MDguXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRha2VHbG9iYWxRdWV1ZSgpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IG1hcCA9IG1ha2VNb2R1bGVNYXAoaWQsIHJlbE1hcCwgdHJ1ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBtb2QgPSBnZXRPd24ocmVnaXN0cnksIGlkKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1vZC51bmRlZmVkID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmVtb3ZlU2NyaXB0KGlkKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlbGV0ZSBkZWZpbmVkW2lkXTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGVsZXRlIHVybEZldGNoZWRbbWFwLnVybF07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlbGV0ZSB1bmRlZkV2ZW50c1tpZF07XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBDbGVhbiBxdWV1ZWQgZGVmaW5lcyB0b28uIEdvIGJhY2t3YXJkcyBpbiBhcnJheSBzbyB0aGF0IHRoZSBzcGxpY2VzIGRvIG5vdCBtZXNzIHVwIHRoZSBcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gaXRlcmF0aW9uLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBlYWNoUmV2ZXJzZShkZWZRdWV1ZSwgZnVuY3Rpb24gKGFyZ3MsIGkpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChhcmdzWzBdID09PSBpZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZlF1ZXVlLnNwbGljZShpLCAxKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlbGV0ZSBjb250ZXh0LmRlZlF1ZXVlTWFwW2lkXTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChtb2QpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEhvbGQgb24gdG8gbGlzdGVuZXJzIGluIGNhc2UgdGhlIG1vZHVsZSB3aWxsIGJlIGF0dGVtcHRlZCB0byBiZSByZWxvYWRlZCB1c2luZyBhIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gZGlmZmVyZW50IGNvbmZpZy5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChtb2QuZXZlbnRzLmRlZmluZWQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmRlZkV2ZW50c1tpZF0gPSBtb2QuZXZlbnRzO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsZWFuUmVnaXN0cnkoaWQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICByZXR1cm4gbG9jYWxSZXF1aXJlO1xyXG4gICAgICAgICAgICB9LFxyXG5cclxuICAgICAgICAgICAgLyoqXHJcbiAgICAgICAgICAgICAqIENhbGxlZCB0byBlbmFibGUgYSBtb2R1bGUgaWYgaXQgaXMgc3RpbGwgaW4gdGhlIHJlZ2lzdHJ5IGF3YWl0aW5nIGVuYWJsZW1lbnQuIEEgc2Vjb25kIGFyZywgcGFyZW50LCB0aGVcclxuICAgICAgICAgICAgICogcGFyZW50IG1vZHVsZSwgaXMgcGFzc2VkIGluIGZvciBjb250ZXh0LCB3aGVuIHRoaXMgbWV0aG9kIGlzIG92ZXJyaWRkZW4gYnkgdGhlIG9wdGltaXplci4gTm90IHNob3duIGhlcmVcclxuICAgICAgICAgICAgICogdG8ga2VlcCBjb2RlIGNvbXBhY3QuXHJcbiAgICAgICAgICAgICAqL1xyXG4gICAgICAgICAgICBlbmFibGU6IGZ1bmN0aW9uIChkZXBNYXApIHtcclxuICAgICAgICAgICAgICAgIGxldCBtb2QgPSBnZXRPd24ocmVnaXN0cnksIGRlcE1hcC5pZCk7XHJcbiAgICAgICAgICAgICAgICBpZiAobW9kKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZ2V0TW9kdWxlKGRlcE1hcCkuZW5hYmxlKCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0sXHJcblxyXG4gICAgICAgICAgICAvKipcclxuICAgICAgICAgICAgICogSW50ZXJuYWwgbWV0aG9kIHVzZWQgYnkgZW52aXJvbm1lbnQgYWRhcHRlcnMgdG8gY29tcGxldGUgYSBsb2FkIGV2ZW50LlxyXG4gICAgICAgICAgICAgKlxyXG4gICAgICAgICAgICAgKiBBIGxvYWQgZXZlbnQgY291bGQgYmUgYSBzY3JpcHQgbG9hZCBvciBqdXN0IGEgbG9hZCBwYXNzIGZyb20gYSBzeW5jaHJvbm91cyBsb2FkIGNhbGwuXHJcbiAgICAgICAgICAgICAqXHJcbiAgICAgICAgICAgICAqIEBwYXJhbSB7U3RyaW5nfSBtb2R1bGVOYW1lIFRoZSBuYW1lIG9mIHRoZSBtb2R1bGUgdG8gcG90ZW50aWFsbHkgY29tcGxldGUuXHJcbiAgICAgICAgICAgICAqL1xyXG4gICAgICAgICAgICBjb21wbGV0ZUxvYWQ6IGZ1bmN0aW9uIChtb2R1bGVOYW1lKSB7XHJcbiAgICAgICAgICAgICAgICBsZXQgZm91bmQ7XHJcbiAgICAgICAgICAgICAgICBsZXQgYXJncztcclxuICAgICAgICAgICAgICAgIGxldCBtb2Q7XHJcbiAgICAgICAgICAgICAgICBsZXQgc2hpbSA9IGdldE93bihjb25maWcuc2hpbSwgbW9kdWxlTmFtZSkgfHwge307XHJcbiAgICAgICAgICAgICAgICBsZXQgc2hFeHBvcnRzID0gc2hpbS5leHBvcnRzO1xyXG5cclxuICAgICAgICAgICAgICAgIHRha2VHbG9iYWxRdWV1ZSgpO1xyXG5cclxuICAgICAgICAgICAgICAgIHdoaWxlIChkZWZRdWV1ZS5sZW5ndGgpIHtcclxuICAgICAgICAgICAgICAgICAgICBhcmdzID0gZGVmUXVldWUuc2hpZnQoKTtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoYXJnc1swXSA9PT0gbnVsbCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBhcmdzWzBdID0gbW9kdWxlTmFtZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gSWYgYWxyZWFkeSBmb3VuZCBhbiBhbm9ueW1vdXMgbW9kdWxlIGFuZCBib3VuZCBpdCB0byB0aGlzIG5hbWUsIHRoZW4gdGhpcyBpcyBzb21lIG90aGVyIGFub24gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIG1vZHVsZSB3YWl0aW5nIGZvciBpdHMgY29tcGxldGVMb2FkIHRvIGZpcmUuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChmb3VuZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgZm91bmQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoYXJnc1swXSA9PT0gbW9kdWxlTmFtZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBGb3VuZCBtYXRjaGluZyBkZWZpbmUgY2FsbCBmb3IgdGhpcyBzY3JpcHQhXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvdW5kID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIGNhbGxHZXRNb2R1bGUoYXJncyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBjb250ZXh0LmRlZlF1ZXVlTWFwID0ge307XHJcblxyXG4gICAgICAgICAgICAgICAgLy8gRG8gdGhpcyBhZnRlciB0aGUgY3ljbGUgb2YgY2FsbEdldE1vZHVsZSBpbiBjYXNlIHRoZSByZXN1bHRcclxuICAgICAgICAgICAgICAgIC8vIG9mIHRob3NlIGNhbGxzL2luaXQgY2FsbHMgY2hhbmdlcyB0aGUgcmVnaXN0cnkuXHJcbiAgICAgICAgICAgICAgICBtb2QgPSBnZXRPd24ocmVnaXN0cnksIG1vZHVsZU5hbWUpO1xyXG5cclxuICAgICAgICAgICAgICAgIGlmICghZm91bmQgJiYgIWhhc1Byb3AoZGVmaW5lZCwgbW9kdWxlTmFtZSkgJiYgbW9kICYmICFtb2QuaW5pdGVkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKGNvbmZpZy5lbmZvcmNlRGVmaW5lICYmICghc2hFeHBvcnRzIHx8ICFnZXRHbG9iYWwoc2hFeHBvcnRzKSkpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGhhc1BhdGhGYWxsYmFjayhtb2R1bGVOYW1lKSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9uRXJyb3IobWFrZUVycm9yKCdub2RlZmluZScsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ05vIGRlZmluZSBjYWxsIGZvciAnICsgbW9kdWxlTmFtZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBudWxsLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttb2R1bGVOYW1lXSkpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gQSBzY3JpcHQgdGhhdCBkb2VzIG5vdCBjYWxsIGRlZmluZSgpLCBzbyBqdXN0IHNpbXVsYXRlIHRoZSBjYWxsIGZvciBpdC5cclxuICAgICAgICAgICAgICAgICAgICAgICAgY2FsbEdldE1vZHVsZShbbW9kdWxlTmFtZSwgKHNoaW0uZGVwcyB8fCBbXSksIHNoaW0uZXhwb3J0c0ZuXSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIGNoZWNrTG9hZGVkKCk7XHJcbiAgICAgICAgICAgIH0sXHJcblxyXG4gICAgICAgICAgICAvKipcclxuICAgICAgICAgICAgICogQ29udmVydHMgYSBtb2R1bGUgbmFtZSB0byBhIGZpbGUgcGF0aC5cclxuICAgICAgICAgICAgICpcclxuICAgICAgICAgICAgICogU3VwcG9ydHMgY2FzZXMgd2hlcmUgbW9kdWxlTmFtZSBtYXkgYWN0dWFsbHkgYmUganVzdCBhbiBVUkwuXHJcbiAgICAgICAgICAgICAqXHJcbiAgICAgICAgICAgICAqIE5vdGUgdGhhdCBpdCAqKmRvZXMgbm90KiogY2FsbCBub3JtYWxpemUgb24gdGhlIG1vZHVsZU5hbWUsIGl0IGlzIGFzc3VtZWQgdG8gaGF2ZSBhbHJlYWR5IGJlZW5cclxuICAgICAgICAgICAgICogbm9ybWFsaXplZC4gVGhpcyBpcyBhbiBpbnRlcm5hbCBBUEksIG5vdCBhIHB1YmxpYyBvbmUuIFVzZSB0b1VybCBmb3IgdGhlIHB1YmxpYyBBUEkuXHJcbiAgICAgICAgICAgICAqL1xyXG4gICAgICAgICAgICBuYW1lVG9Vcmw6IGZ1bmN0aW9uIChtb2R1bGVOYW1lLCBleHQsIHNraXBFeHQpIHtcclxuICAgICAgICAgICAgICAgIGxldCBwYXRocztcclxuICAgICAgICAgICAgICAgIGxldCBzeW1zO1xyXG4gICAgICAgICAgICAgICAgbGV0IGk7XHJcbiAgICAgICAgICAgICAgICBsZXQgcGFyZW50TW9kdWxlO1xyXG4gICAgICAgICAgICAgICAgbGV0IHVybDtcclxuICAgICAgICAgICAgICAgIGxldCBwYXJlbnRQYXRoLCBidW5kbGVJZDtcclxuICAgICAgICAgICAgICAgIGxldCBwa2dNYWluID0gZ2V0T3duKGNvbmZpZy5wa2dzLCBtb2R1bGVOYW1lKTtcclxuXHJcbiAgICAgICAgICAgICAgICBpZiAocGtnTWFpbikge1xyXG4gICAgICAgICAgICAgICAgICAgIG1vZHVsZU5hbWUgPSBwa2dNYWluO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIGJ1bmRsZUlkID0gZ2V0T3duKGJ1bmRsZXNNYXAsIG1vZHVsZU5hbWUpO1xyXG5cclxuICAgICAgICAgICAgICAgIGlmIChidW5kbGVJZCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBjb250ZXh0Lm5hbWVUb1VybChidW5kbGVJZCwgZXh0LCBza2lwRXh0KTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAvLyBJZiBhIGNvbG9uIGlzIGluIHRoZSBVUkwsIGl0IGluZGljYXRlcyBhIHByb3RvY29sIGlzIHVzZWQgYW5kIGl0IGlzIGp1c3QgYW4gVVJMIHRvIGEgZmlsZSwgb3IgaWYgaXQgXHJcbiAgICAgICAgICAgICAgICAvLyBzdGFydHMgd2l0aCBhIHNsYXNoLCBjb250YWlucyBhIHF1ZXJ5IGFyZyAoaS5lLiA/KSBvciBlbmRzIHdpdGggLmpzLCB0aGVuIGFzc3VtZSB0aGUgdXNlciBtZWFudCB0byBcclxuICAgICAgICAgICAgICAgIC8vIHVzZSBhbiB1cmwgYW5kIG5vdCBhIG1vZHVsZSBpZC4gVGhlIHNsYXNoIGlzIGltcG9ydGFudCBmb3IgcHJvdG9jb2wtbGVzcyBVUkxzIGFzIHdlbGwgYXMgZnVsbCBwYXRocy5cclxuICAgICAgICAgICAgICAgIGlmIChyZXEuanNFeHRSZWdFeHAudGVzdChtb2R1bGVOYW1lKSkge1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIEp1c3QgYSBwbGFpbiBwYXRoLCBub3QgbW9kdWxlIG5hbWUgbG9va3VwLCBzbyBqdXN0IHJldHVybiBpdC4gQWRkIGV4dGVuc2lvbiBpZiBpdCBpcyBpbmNsdWRlZC4gXHJcbiAgICAgICAgICAgICAgICAgICAgLy8gVGhpcyBpcyBhIGJpdCB3b25reSwgb25seSBub24tLmpzIHRoaW5ncyBwYXNzIGFuIGV4dGVuc2lvbiwgdGhpcyBtZXRob2QgcHJvYmFibHkgbmVlZHMgdG8gYmUgXHJcbiAgICAgICAgICAgICAgICAgICAgLy8gcmV3b3JrZWQuXHJcbiAgICAgICAgICAgICAgICAgICAgdXJsID0gbW9kdWxlTmFtZSArIChleHQgfHwgJycpO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAvLyBBIG1vZHVsZSB0aGF0IG5lZWRzIHRvIGJlIGNvbnZlcnRlZCB0byBhIHBhdGguXHJcbiAgICAgICAgICAgICAgICAgICAgcGF0aHMgPSBjb25maWcucGF0aHM7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHN5bXMgPSBtb2R1bGVOYW1lLnNwbGl0KCcvJyk7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gRm9yIGVhY2ggbW9kdWxlIG5hbWUgc2VnbWVudCwgc2VlIGlmIHRoZXJlIGlzIGEgcGF0aCByZWdpc3RlcmVkIGZvciBpdC4gU3RhcnQgd2l0aCBtb3N0IHNwZWNpZmljIFxyXG4gICAgICAgICAgICAgICAgICAgIC8vIG5hbWUgYW5kIHdvcmsgdXAgZnJvbSBpdC5cclxuICAgICAgICAgICAgICAgICAgICBmb3IgKGkgPSBzeW1zLmxlbmd0aDsgaSA+IDA7IGkgLT0gMSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXJlbnRNb2R1bGUgPSBzeW1zLnNsaWNlKDAsIGkpLmpvaW4oJy8nKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhcmVudFBhdGggPSBnZXRPd24ocGF0aHMsIHBhcmVudE1vZHVsZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChwYXJlbnRQYXRoKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBJZiBhbiBhcnJheSwgaXQgbWVhbnMgdGhlcmUgYXJlIGEgZmV3IGNob2ljZXMsIENob29zZSB0aGUgb25lIHRoYXQgaXMgZGVzaXJlZC5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpc0FycmF5KHBhcmVudFBhdGgpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFyZW50UGF0aCA9IHBhcmVudFBhdGhbMF07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzeW1zLnNwbGljZSgwLCBpLCBwYXJlbnRQYXRoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAvLyBKb2luIHRoZSBwYXRoIHBhcnRzIHRvZ2V0aGVyLCB0aGVuIGZpZ3VyZSBvdXQgaWYgYmFzZVVybCBpcyBuZWVkZWQuXHJcbiAgICAgICAgICAgICAgICAgICAgdXJsID0gc3ltcy5qb2luKCcvJyk7XHJcbiAgICAgICAgICAgICAgICAgICAgdXJsICs9IChleHQgfHwgKC9eZGF0YVxcOnxcXD8vLnRlc3QodXJsKSB8fCBza2lwRXh0ID8gJycgOiAnLmpzJykpO1xyXG4gICAgICAgICAgICAgICAgICAgIHVybCA9ICh1cmwuY2hhckF0KDApID09PSAnLycgfHwgdXJsLm1hdGNoKC9eW1xcd1xcK1xcLlxcLV0rOi8pID8gJycgOiBjb25maWcuYmFzZVVybCkgKyB1cmw7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIGNvbmZpZy51cmxBcmdzID8gdXJsICtcclxuICAgICAgICAgICAgICAgICAgICAoKHVybC5pbmRleE9mKCc/JykgPT09IC0xID8gJz8nIDogJyYnKSArXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZpZy51cmxBcmdzKSA6IHVybDtcclxuICAgICAgICAgICAgfSxcclxuXHJcbiAgICAgICAgICAgIC8vIERlbGVnYXRlcyB0byByZXEubG9hZC4gQnJva2VuIG91dCBhcyBhIHNlcGFyYXRlIGZ1bmN0aW9uIHRvIGFsbG93IG92ZXJyaWRpbmcgaW4gdGhlIG9wdGltaXplci5cclxuICAgICAgICAgICAgbG9hZDogZnVuY3Rpb24gKGlkLCB1cmwpIHtcclxuICAgICAgICAgICAgICAgIHJlcS5sb2FkKGNvbnRleHQsIGlkLCB1cmwpO1xyXG4gICAgICAgICAgICB9LFxyXG5cclxuICAgICAgICAgICAgLyoqXHJcbiAgICAgICAgICAgICAqIEV4ZWN1dGVzIGEgbW9kdWxlIGNhbGxiYWNrIGZ1bmN0aW9uLlxyXG4gICAgICAgICAgICAgKlxyXG4gICAgICAgICAgICAgKiBCcm9rZW4gb3V0IGFzIGEgc2VwYXJhdGUgZnVuY3Rpb24gc29sZWx5IHRvIGFsbG93IHRoZSBidWlsZCBzeXN0ZW0gdG8gc2VxdWVuY2UgdGhlIGZpbGVzIGluIHRoZSBidWlsdFxyXG4gICAgICAgICAgICAgKiBsYXllciBpbiB0aGUgcmlnaHQgc2VxdWVuY2UuXHJcbiAgICAgICAgICAgICAqXHJcbiAgICAgICAgICAgICAqIEBwcml2YXRlXHJcbiAgICAgICAgICAgICAqL1xyXG4gICAgICAgICAgICBleGVjQ2I6IGZ1bmN0aW9uIChuYW1lLCBjYWxsYmFjaywgYXJncywgZXhwb3J0cykge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIGNhbGxiYWNrLmFwcGx5KGV4cG9ydHMsIGFyZ3MpO1xyXG4gICAgICAgICAgICB9LFxyXG5cclxuICAgICAgICAgICAgLyoqXHJcbiAgICAgICAgICAgICAqIENhbGxiYWNrIGZvciBzY3JpcHQgbG9hZHMsIHVzZWQgdG8gY2hlY2sgc3RhdHVzIG9mIGxvYWRpbmcuXHJcbiAgICAgICAgICAgICAqXHJcbiAgICAgICAgICAgICAqIEBwYXJhbSB7RXZlbnR9IGV2dCB0aGUgZXZlbnQgZnJvbSB0aGUgYnJvd3NlciBmb3IgdGhlIHNjcmlwdCB0aGF0IHdhcyBsb2FkZWQuXHJcbiAgICAgICAgICAgICAqL1xyXG4gICAgICAgICAgICBvblNjcmlwdExvYWQ6IGZ1bmN0aW9uIChldnQpIHtcclxuICAgICAgICAgICAgICAgIC8vIFVzaW5nIGN1cnJlbnRUYXJnZXQgaW5zdGVhZCBvZiB0YXJnZXQgZm9yIEZpcmVmb3ggMi4wJ3Mgc2FrZS4gTm90XHJcbiAgICAgICAgICAgICAgICAvLyBhbGwgb2xkIGJyb3dzZXJzIHdpbGwgYmUgc3VwcG9ydGVkLCBidXQgdGhpcyBvbmUgd2FzIGVhc3kgZW5vdWdoXHJcbiAgICAgICAgICAgICAgICAvLyB0byBzdXBwb3J0IGFuZCBzdGlsbCBtYWtlcyBzZW5zZS5cclxuICAgICAgICAgICAgICAgIGlmIChldnQudHlwZSA9PT0gJ2xvYWQnIHx8XHJcbiAgICAgICAgICAgICAgICAgICAgKHJlYWR5UmVnRXhwLnRlc3QoKGV2dC5jdXJyZW50VGFyZ2V0IHx8IGV2dC5zcmNFbGVtZW50KS5yZWFkeVN0YXRlKSkpIHtcclxuICAgICAgICAgICAgICAgICAgICAvLyBSZXNldCBpbnRlcmFjdGl2ZSBzY3JpcHQgc28gYSBzY3JpcHQgbm9kZSBpcyBub3QgaGVsZCBvbnRvIGZvclxyXG4gICAgICAgICAgICAgICAgICAgIC8vIHRvIGxvbmcuXHJcbiAgICAgICAgICAgICAgICAgICAgaW50ZXJhY3RpdmVTY3JpcHQgPSBudWxsO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAvLyBQdWxsIG91dCB0aGUgbmFtZSBvZiB0aGUgbW9kdWxlIGFuZCB0aGUgY29udGV4dC5cclxuICAgICAgICAgICAgICAgICAgICBsZXQgZGF0YSA9IGdldFNjcmlwdERhdGEoZXZ0KTtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZXh0LmNvbXBsZXRlTG9hZChkYXRhLmlkKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSxcclxuXHJcbiAgICAgICAgICAgIC8qKlxyXG4gICAgICAgICAgICAgKiBDYWxsYmFjayBmb3Igc2NyaXB0IGVycm9ycy5cclxuICAgICAgICAgICAgICovXHJcbiAgICAgICAgICAgIG9uU2NyaXB0RXJyb3I6IGZ1bmN0aW9uIChldnQpIHtcclxuICAgICAgICAgICAgICAgIGxldCBkYXRhID0gZ2V0U2NyaXB0RGF0YShldnQpO1xyXG4gICAgICAgICAgICAgICAgaWYgKCFoYXNQYXRoRmFsbGJhY2soZGF0YS5pZCkpIHtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgcGFyZW50cyA9IFtdO1xyXG4gICAgICAgICAgICAgICAgICAgIGVhY2hQcm9wKHJlZ2lzdHJ5LCBmdW5jdGlvbiAodmFsdWUsIGtleSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoa2V5LmluZGV4T2YoJ19AcicpICE9PSAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlYWNoKHZhbHVlLmRlcE1hcHMsIGZ1bmN0aW9uIChkZXBNYXApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoZGVwTWFwLmlkID09PSBkYXRhLmlkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmVudHMucHVzaChrZXkpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9uRXJyb3IobWFrZUVycm9yKCdzY3JpcHRlcnJvcicsICdTY3JpcHQgZXJyb3IgZm9yIFwiJyArIGRhdGEuaWQgK1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAocGFyZW50cy5sZW5ndGggP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1wiLCBuZWVkZWQgYnk6ICcgKyBwYXJlbnRzLmpvaW4oJywgJykgOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1wiJyksIGV2dCwgW2RhdGEuaWRdKSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9O1xyXG5cclxuICAgICAgICBjb250ZXh0LnJlcXVpcmUgPSBjb250ZXh0Lm1ha2VSZXF1aXJlKCk7XHJcbiAgICAgICAgcmV0dXJuIGNvbnRleHQ7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBNYWluIGVudHJ5IHBvaW50LlxyXG4gICAgICpcclxuICAgICAqIElmIHRoZSBvbmx5IGFyZ3VtZW50IHRvIHJlcXVpcmUgaXMgYSBzdHJpbmcsIHRoZW4gdGhlIG1vZHVsZSB0aGF0IGlzIHJlcHJlc2VudGVkIGJ5IHRoYXQgc3RyaW5nIGlzIGZldGNoZWQgZm9yXHJcbiAgICAgKiB0aGUgYXBwcm9wcmlhdGUgY29udGV4dC5cclxuICAgICAqXHJcbiAgICAgKiBJZiB0aGUgZmlyc3QgYXJndW1lbnQgaXMgYW4gYXJyYXksIHRoZW4gaXQgd2lsbCBiZSB0cmVhdGVkIGFzIGFuIGFycmF5IG9mIGRlcGVuZGVuY3kgc3RyaW5nIG5hbWVzIHRvIGZldGNoLiBBblxyXG4gICAgICogb3B0aW9uYWwgZnVuY3Rpb24gY2FsbGJhY2sgY2FuIGJlIHNwZWNpZmllZCB0byBleGVjdXRlIHdoZW4gYWxsIG9mIHRob3NlIGRlcGVuZGVuY2llcyBhcmUgYXZhaWxhYmxlLlxyXG4gICAgICpcclxuICAgICAqIE1ha2UgYSBsb2NhbCByZXEgdmFyaWFibGUgdG8gaGVscCBDYWphIGNvbXBsaWFuY2UgKGl0IGFzc3VtZXMgdGhpbmdzIG9uIGEgcmVxdWlyZSB0aGF0IGFyZSBub3Qgc3RhbmRhcmRpemVkKSxcclxuICAgICAqIGFuZCB0byBnaXZlIGEgc2hvcnQgbmFtZSBmb3IgbWluaWZpY2F0aW9uL2xvY2FsIHNjb3BlIHVzZS5cclxuICAgICAqL1xyXG4gICAgcmVxID0gd2luZG93LnJlcXVpcmVqcyA9IGZ1bmN0aW9uIChkZXBzLCBjYWxsYmFjaywgZXJyYmFjaywgb3B0aW9uYWwpIHtcclxuICAgICAgICAvLyBGaW5kIHRoZSByaWdodCBjb250ZXh0LCB1c2UgZGVmYXVsdFxyXG4gICAgICAgIGxldCBjb250ZXh0O1xyXG4gICAgICAgIGxldCBjb25maWc7XHJcbiAgICAgICAgbGV0IGNvbnRleHROYW1lID0gZGVmQ29udGV4dE5hbWU7XHJcblxyXG4gICAgICAgIC8vIERldGVybWluZSBpZiBoYXZlIGNvbmZpZyBvYmplY3QgaW4gdGhlIGNhbGwuXHJcbiAgICAgICAgaWYgKCFpc0FycmF5KGRlcHMpICYmIHR5cGVvZiBkZXBzICE9PSAnc3RyaW5nJykge1xyXG4gICAgICAgICAgICAvLyBkZXBzIGlzIGEgY29uZmlnIG9iamVjdFxyXG4gICAgICAgICAgICBjb25maWcgPSBkZXBzO1xyXG4gICAgICAgICAgICBpZiAoaXNBcnJheShjYWxsYmFjaykpIHtcclxuICAgICAgICAgICAgICAgIC8vIEFkanVzdCBhcmdzIGlmIHRoZXJlIGFyZSBkZXBlbmRlbmNpZXNcclxuICAgICAgICAgICAgICAgIGRlcHMgPSBjYWxsYmFjaztcclxuICAgICAgICAgICAgICAgIGNhbGxiYWNrID0gZXJyYmFjaztcclxuICAgICAgICAgICAgICAgIGVycmJhY2sgPSBvcHRpb25hbDtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIGRlcHMgPSBbXTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKGNvbmZpZyAmJiBjb25maWcuY29udGV4dCkge1xyXG4gICAgICAgICAgICBjb250ZXh0TmFtZSA9IGNvbmZpZy5jb250ZXh0O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29udGV4dCA9IGdldE93bihjb250ZXh0cywgY29udGV4dE5hbWUpO1xyXG4gICAgICAgIGlmICghY29udGV4dCkge1xyXG4gICAgICAgICAgICBjb250ZXh0ID0gY29udGV4dHNbY29udGV4dE5hbWVdID0gcmVxLnMubmV3Q29udGV4dChjb250ZXh0TmFtZSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAoY29uZmlnKSB7XHJcbiAgICAgICAgICAgIGNvbnRleHQuY29uZmlndXJlKGNvbmZpZyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gY29udGV4dC5yZXF1aXJlKGRlcHMsIGNhbGxiYWNrLCBlcnJiYWNrKTtcclxuICAgIH07XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBTdXBwb3J0IHJlcXVpcmUuY29uZmlnKCkgdG8gbWFrZSBpdCBlYXNpZXIgdG8gY29vcGVyYXRlIHdpdGggb3RoZXIgQU1EIGxvYWRlcnMgb24gZ2xvYmFsbHkgYWdyZWVkIG5hbWVzLlxyXG4gICAgICovXHJcbiAgICByZXEuY29uZmlnID0gZnVuY3Rpb24gKGNvbmZpZykge1xyXG4gICAgICAgIHJldHVybiByZXEoY29uZmlnKTtcclxuICAgIH07XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBFeGVjdXRlIHNvbWV0aGluZyBhZnRlciB0aGUgY3VycmVudCB0aWNrIG9mIHRoZSBldmVudCBsb29wLlxyXG4gICAgICpcclxuICAgICAqIE92ZXJyaWRlIGZvciBvdGhlciBlbnZzIHRoYXQgaGF2ZSBhIGJldHRlciBzb2x1dGlvbiB0aGFuIHNldFRpbWVvdXQuXHJcbiAgICAgKlxyXG4gICAgICogQHBhcmFtICB7RnVuY3Rpb259IGZuIGZ1bmN0aW9uIHRvIGV4ZWN1dGUgbGF0ZXIuXHJcbiAgICAgKi9cclxuICAgIHJlcS5uZXh0VGljayA9IHR5cGVvZiBzZXRUaW1lb3V0ICE9PSAndW5kZWZpbmVkJyA/IGZ1bmN0aW9uIChmbikge1xyXG4gICAgICAgIHNldFRpbWVvdXQoZm4sIDQpO1xyXG4gICAgfSA6IGZ1bmN0aW9uIChmbikge1xyXG4gICAgICAgIGZuKCk7XHJcbiAgICB9O1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogRXhwb3J0IHJlcXVpcmUgYXMgYSBnbG9iYWwsIGJ1dCBvbmx5IGlmIGl0IGRvZXMgbm90IGFscmVhZHkgZXhpc3QuXHJcbiAgICAgKi9cclxuICAgIGlmICghd2luZG93LnJlcXVpcmUpIHtcclxuICAgICAgICB3aW5kb3cucmVxdWlyZSA9IHJlcTtcclxuICAgIH1cclxuXHJcbiAgICByZXEudmVyc2lvbiA9IHZlcnNpb247XHJcblxyXG4gICAgLy8gVXNlZCB0byBmaWx0ZXIgb3V0IGRlcGVuZGVuY2llcyB0aGF0IGFyZSBhbHJlYWR5IHBhdGhzLlxyXG4gICAgcmVxLmpzRXh0UmVnRXhwID0gL15cXC98OnxcXD98XFwuanMkLztcclxuICAgIHJlcS5pc0Jyb3dzZXIgPSBpc0Jyb3dzZXI7XHJcbiAgICBzID0gcmVxLnMgPSB7XHJcbiAgICAgICAgY29udGV4dHM6IGNvbnRleHRzLFxyXG4gICAgICAgIG5ld0NvbnRleHQ6IG5ld0NvbnRleHRcclxuICAgIH07XHJcblxyXG4gICAgLy8gQ3JlYXRlIGRlZmF1bHQgY29udGV4dC5cclxuICAgIHJlcSh7fSk7XHJcblxyXG4gICAgLy8gRXhwb3J0cyBzb21lIGNvbnRleHQtc2Vuc2l0aXZlIG1ldGhvZHMgb24gZ2xvYmFsIHJlcXVpcmUuXHJcbiAgICBlYWNoKFtcclxuICAgICAgICAndG9VcmwnLFxyXG4gICAgICAgICd1bmRlZicsXHJcbiAgICAgICAgJ2RlZmluZWQnLFxyXG4gICAgICAgICdzcGVjaWZpZWQnXHJcbiAgICBdLCBmdW5jdGlvbiAocHJvcCkge1xyXG4gICAgICAgIC8vICBSZWZlcmVuY2UgZnJvbSBjb250ZXh0cyBpbnN0ZWFkIG9mIGVhcmx5IGJpbmRpbmcgdG8gZGVmYXVsdCBjb250ZXh0LFxyXG4gICAgICAgIC8vIHNvIHRoYXQgZHVyaW5nIGJ1aWxkcywgdGhlIGxhdGVzdCBpbnN0YW5jZSBvZiB0aGUgZGVmYXVsdCBjb250ZXh0XHJcbiAgICAgICAgLy8gd2l0aCBpdHMgY29uZmlnIGdldHMgdXNlZC5cclxuICAgICAgICByZXFbcHJvcF0gPSBmdW5jdGlvbiAoKSB7XHJcbiAgICAgICAgICAgIGxldCBjdHggPSBjb250ZXh0c1tkZWZDb250ZXh0TmFtZV07XHJcbiAgICAgICAgICAgIHJldHVybiBjdHgucmVxdWlyZVtwcm9wXS5hcHBseShjdHgsIGFyZ3VtZW50cyk7XHJcbiAgICAgICAgfTtcclxuICAgIH0pO1xyXG5cclxuICAgIGlmIChpc0Jyb3dzZXIpIHtcclxuICAgICAgICBoZWFkID0gcy5oZWFkID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2hlYWQnKVswXTtcclxuICAgICAgICAvLyBJZiBCQVNFIHRhZyBpcyBpbiBwbGF5LCB1c2luZyBhcHBlbmRDaGlsZCBpcyBhIHByb2JsZW0gZm9yIElFNi5cclxuICAgICAgICAvLyBXaGVuIHRoYXQgYnJvd3NlciBkaWVzLCB0aGlzIGNhbiBiZSByZW1vdmVkLiBEZXRhaWxzIGluIHRoaXMgalF1ZXJ5IGJ1ZzpcclxuICAgICAgICAvLyBodHRwOi8vZGV2LmpxdWVyeS5jb20vdGlja2V0LzI3MDlcclxuICAgICAgICBiYXNlRWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdiYXNlJylbMF07XHJcbiAgICAgICAgaWYgKGJhc2VFbGVtZW50KSB7XHJcbiAgICAgICAgICAgIGhlYWQgPSBzLmhlYWQgPSBiYXNlRWxlbWVudC5wYXJlbnROb2RlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEFueSBlcnJvcnMgdGhhdCByZXF1aXJlIGV4cGxpY2l0bHkgZ2VuZXJhdGVzIHdpbGwgYmUgcGFzc2VkIHRvIHRoaXMgZnVuY3Rpb24uXHJcbiAgICAgKlxyXG4gICAgICogSW50ZXJjZXB0L292ZXJyaWRlIGl0IGlmIHlvdSB3YW50IGN1c3RvbSBlcnJvciBoYW5kbGluZy5cclxuICAgICAqXHJcbiAgICAgKiBAcGFyYW0ge0Vycm9yfSBlcnIgdGhlIGVycm9yIG9iamVjdC5cclxuICAgICAqL1xyXG4gICAgcmVxLm9uRXJyb3IgPSBkZWZhdWx0T25FcnJvcjtcclxuXHJcbiAgICAvKipcclxuICAgICAqIENyZWF0ZXMgdGhlIG5vZGUgZm9yIHRoZSBsb2FkIGNvbW1hbmQuIE9ubHkgdXNlZCBpbiBicm93c2VyIGVudnMuXHJcbiAgICAgKi9cclxuICAgIHJlcS5jcmVhdGVOb2RlID0gZnVuY3Rpb24gKGNvbmZpZywgbW9kdWxlTmFtZSwgdXJsKSB7XHJcbiAgICAgICAgY29uc3Qgbm9kZSA9IGNvbmZpZy54aHRtbCA/XHJcbiAgICAgICAgICAgIGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUygnaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCcsICdodG1sOnNjcmlwdCcpIDpcclxuICAgICAgICAgICAgZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XHJcbiAgICAgICAgbm9kZS50eXBlID0gY29uZmlnLnNjcmlwdFR5cGUgfHwgJ3RleHQvamF2YXNjcmlwdCc7XHJcbiAgICAgICAgbm9kZS5jaGFyc2V0ID0gJ3V0Zi04JztcclxuICAgICAgICBub2RlLmFzeW5jID0gdHJ1ZTtcclxuICAgICAgICByZXR1cm4gbm9kZTtcclxuICAgIH07XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBEb2VzIHRoZSByZXF1ZXN0IHRvIGxvYWQgYSBtb2R1bGUgZm9yIHRoZSBicm93c2VyIGNhc2UuXHJcbiAgICAgKlxyXG4gICAgICogTWFrZSB0aGlzIGEgc2VwYXJhdGUgZnVuY3Rpb24gdG8gYWxsb3cgb3RoZXIgZW52aXJvbm1lbnRzIHRvIG92ZXJyaWRlIGl0LlxyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSB7T2JqZWN0fSBjb250ZXh0IHRoZSByZXF1aXJlIGNvbnRleHQgdG8gZmluZCBzdGF0ZS5cclxuICAgICAqIEBwYXJhbSB7U3RyaW5nfSBtb2R1bGVOYW1lIHRoZSBuYW1lIG9mIHRoZSBtb2R1bGUuXHJcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gdXJsIHRoZSBVUkwgdG8gdGhlIG1vZHVsZS5cclxuICAgICAqL1xyXG4gICAgcmVxLmxvYWQgPSBmdW5jdGlvbiAoY29udGV4dCwgbW9kdWxlTmFtZSwgdXJsKSB7XHJcbiAgICAgICAgbGV0IGNvbmZpZyA9IChjb250ZXh0ICYmIGNvbnRleHQuY29uZmlnKSB8fCB7fTtcclxuICAgICAgICBsZXQgbm9kZTtcclxuXHJcbiAgICAgICAgaWYgKGlzQnJvd3Nlcikge1xyXG4gICAgICAgICAgICAvLyBJbiB0aGUgYnJvd3NlciBzbyB1c2UgYSBzY3JpcHQgdGFnXHJcbiAgICAgICAgICAgIG5vZGUgPSByZXEuY3JlYXRlTm9kZShjb25maWcsIG1vZHVsZU5hbWUsIHVybCk7XHJcbiAgICAgICAgICAgIGlmIChjb25maWcub25Ob2RlQ3JlYXRlZCkge1xyXG4gICAgICAgICAgICAgICAgY29uZmlnLm9uTm9kZUNyZWF0ZWQobm9kZSwgY29uZmlnLCBtb2R1bGVOYW1lLCB1cmwpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBub2RlLnNldEF0dHJpYnV0ZSgnZGF0YS1yZXF1aXJlY29udGV4dCcsIGNvbnRleHQuY29udGV4dE5hbWUpO1xyXG4gICAgICAgICAgICBub2RlLnNldEF0dHJpYnV0ZSgnZGF0YS1yZXF1aXJlbW9kdWxlJywgbW9kdWxlTmFtZSk7XHJcblxyXG4gICAgICAgICAgICAvLyBTZXQgdXAgbG9hZCBsaXN0ZW5lci4gVGVzdCBhdHRhY2hFdmVudCBmaXJzdCBiZWNhdXNlIElFOSBoYXMgYSBzdWJ0bGUgaXNzdWUgaW4gaXRzIGFkZEV2ZW50TGlzdGVuZXIgYW5kIFxyXG4gICAgICAgICAgICAvLyBzY3JpcHQgb25sb2FkIGZpcmluZ3MgdGhhdCBkbyBub3QgbWF0Y2ggdGhlIGJlaGF2aW9yIG9mIGFsbCBvdGhlciBicm93c2VycyB3aXRoIGFkZEV2ZW50TGlzdGVuZXIgc3VwcG9ydCwgXHJcbiAgICAgICAgICAgIC8vIHdoaWNoIGZpcmUgdGhlIG9ubG9hZCBldmVudCBmb3IgYSBzY3JpcHQgcmlnaHQgYWZ0ZXIgdGhlIHNjcmlwdCBleGVjdXRpb24uIFNlZTpcclxuICAgICAgICAgICAgLy8gaHR0cHM6Ly9jb25uZWN0Lm1pY3Jvc29mdC5jb20vSUUvZmVlZGJhY2svZGV0YWlscy82NDgwNTcvc2NyaXB0LW9ubG9hZC1ldmVudC1pcy1ub3QtZmlyZWQtaW1tZWRpYXRlbHktYWZ0ZXItc2NyaXB0LWV4ZWN1dGlvblxyXG4gICAgICAgICAgICAvLyBVTkZPUlRVTkFURUxZIE9wZXJhIGltcGxlbWVudHMgYXR0YWNoRXZlbnQgYnV0IGRvZXMgbm90IGZvbGxvdyB0aGUgc2NyaXB0IHNjcmlwdCBleGVjdXRpb24gbW9kZS5cclxuICAgICAgICAgICAgaWYgKG5vZGUuYXR0YWNoRXZlbnQgJiZcclxuICAgICAgICAgICAgICAgIC8vIENoZWNrIGlmIG5vZGUuYXR0YWNoRXZlbnQgaXMgYXJ0aWZpY2lhbGx5IGFkZGVkIGJ5IGN1c3RvbSBzY3JpcHQgb3IgbmF0aXZlbHkgc3VwcG9ydGVkIGJ5IGJyb3dzZXJcclxuICAgICAgICAgICAgICAgIC8vIHJlYWQgaHR0cHM6Ly9naXRodWIuY29tL2pyYnVya2UvcmVxdWlyZWpzL2lzc3Vlcy8xODdcclxuICAgICAgICAgICAgICAgIC8vIGlmIHdlIGNhbiBOT1QgZmluZCBbbmF0aXZlIGNvZGVdIHRoZW4gaXQgbXVzdCBOT1QgbmF0aXZlbHkgc3VwcG9ydGVkLiBpbiBJRTgsIG5vZGUuYXR0YWNoRXZlbnQgZG9lcyBcclxuICAgICAgICAgICAgICAgIC8vIG5vdCBoYXZlIHRvU3RyaW5nKCkuIE5vdGUgdGhlIHRlc3QgZm9yIFwiW25hdGl2ZSBjb2RlXCIgd2l0aCBubyBjbG9zaW5nIGJyYWNlLCBzZWU6XHJcbiAgICAgICAgICAgICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vanJidXJrZS9yZXF1aXJlanMvaXNzdWVzLzI3M1xyXG4gICAgICAgICAgICAgICAgIShub2RlLmF0dGFjaEV2ZW50LnRvU3RyaW5nICYmIG5vZGUuYXR0YWNoRXZlbnQudG9TdHJpbmcoKS5pbmRleE9mKCdbbmF0aXZlIGNvZGUnKSA8IDApICYmXHJcbiAgICAgICAgICAgICAgICAhaXNPcGVyYSkge1xyXG4gICAgICAgICAgICAgICAgLy8gUHJvYmFibHkgSUUuIElFIChhdCBsZWFzdCA2LTgpIGRvIG5vdCBmaXJlIHNjcmlwdCBvbmxvYWQgcmlnaHQgYWZ0ZXIgZXhlY3V0aW5nIHRoZSBzY3JpcHQsIHNvXHJcbiAgICAgICAgICAgICAgICAvLyB3ZSBjYW5ub3QgdGllIHRoZSBhbm9ueW1vdXMgZGVmaW5lIGNhbGwgdG8gYSBuYW1lLiBIb3dldmVyLCBJRSByZXBvcnRzIHRoZSBzY3JpcHQgYXMgYmVpbmcgaW4gXHJcbiAgICAgICAgICAgICAgICAvLyAnaW50ZXJhY3RpdmUnIHJlYWR5U3RhdGUgYXQgdGhlIHRpbWUgb2YgdGhlIGRlZmluZSBjYWxsLlxyXG4gICAgICAgICAgICAgICAgdXNlSW50ZXJhY3RpdmUgPSB0cnVlO1xyXG5cclxuICAgICAgICAgICAgICAgIG5vZGUuYXR0YWNoRXZlbnQoJ29ucmVhZHlzdGF0ZWNoYW5nZScsIGNvbnRleHQub25TY3JpcHRMb2FkKTtcclxuICAgICAgICAgICAgICAgIC8vIEl0IHdvdWxkIGJlIGdyZWF0IHRvIGFkZCBhbiBlcnJvciBoYW5kbGVyIGhlcmUgdG8gY2F0Y2ggNDA0cyBpbiBJRTkrLiBIb3dldmVyLCBvbnJlYWR5c3RhdGVjaGFuZ2UgXHJcbiAgICAgICAgICAgICAgICAvLyB3aWxsIGZpcmUgYmVmb3JlIHRoZSBlcnJvciBoYW5kbGVyLCBzbyB0aGF0IGRvZXMgbm90IGhlbHAuIElmIGFkZEV2ZW50TGlzdGVuZXIgaXMgdXNlZCwgdGhlbiBJRSB3aWxsIFxyXG4gICAgICAgICAgICAgICAgLy8gZmlyZSBlcnJvciBiZWZvcmUgbG9hZCwgYnV0IHdlIGNhbm5vdCB1c2UgdGhhdCBwYXRod2F5IGdpdmVuIHRoZSBjb25uZWN0Lm1pY3Jvc29mdC5jb20gaXNzdWUgXHJcbiAgICAgICAgICAgICAgICAvLyBtZW50aW9uZWQgYWJvdmUgYWJvdXQgbm90IGRvaW5nIHRoZSAnc2NyaXB0IGV4ZWN1dGUsIHRoZW4gZmlyZSB0aGUgc2NyaXB0IGxvYWQgZXZlbnQgbGlzdGVuZXIgYmVmb3JlIFxyXG4gICAgICAgICAgICAgICAgLy8gZXhlY3V0ZSBuZXh0IHNjcmlwdCcgdGhhdCBvdGhlciBicm93c2VycyBkby4gQmVzdCBob3BlOiBJRTEwIGZpeGVzIHRoZSBpc3N1ZXMsIGFuZCB0aGVuIGRlc3Ryb3lzIGFsbCBcclxuICAgICAgICAgICAgICAgIC8vIGluc3RhbGxzIG9mIElFIDYtOS5cclxuICAgICAgICAgICAgICAgIC8vIG5vZGUuYXR0YWNoRXZlbnQoJ29uZXJyb3InLCBjb250ZXh0Lm9uU2NyaXB0RXJyb3IpO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgbm9kZS5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgY29udGV4dC5vblNjcmlwdExvYWQsIGZhbHNlKTtcclxuICAgICAgICAgICAgICAgIG5vZGUuYWRkRXZlbnRMaXN0ZW5lcignZXJyb3InLCBjb250ZXh0Lm9uU2NyaXB0RXJyb3IsIGZhbHNlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBub2RlLnNyYyA9IHVybDtcclxuXHJcbiAgICAgICAgICAgIC8vIEZvciBzb21lIGNhY2hlIGNhc2VzIGluIElFIDYtOCwgdGhlIHNjcmlwdCBleGVjdXRlcyBiZWZvcmUgdGhlIGVuZCBvZiB0aGUgYXBwZW5kQ2hpbGQgZXhlY3V0aW9uLCBzbyB0byBcclxuICAgICAgICAgICAgLy8gdGllIGFuIGFub255bW91cyBkZWZpbmUgY2FsbCB0byB0aGUgbW9kdWxlIG5hbWUgKHdoaWNoIGlzIHN0b3JlZCBvbiB0aGUgbm9kZSksIGhvbGQgb24gdG8gYSByZWZlcmVuY2UgdG8gXHJcbiAgICAgICAgICAgIC8vIHRoaXMgbm9kZSwgYnV0IGNsZWFyIGFmdGVyIHRoZSBET00gaW5zZXJ0aW9uLlxyXG4gICAgICAgICAgICBpZiAoYmFzZUVsZW1lbnQpIHtcclxuICAgICAgICAgICAgICAgIGhlYWQuaW5zZXJ0QmVmb3JlKG5vZGUsIGJhc2VFbGVtZW50KTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIGhlYWQuYXBwZW5kQ2hpbGQobm9kZSk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHJldHVybiBub2RlO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoaXNXZWJXb3JrZXIpIHtcclxuICAgICAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgICAgIC8vIEluIGEgd2ViIHdvcmtlciwgdXNlIGltcG9ydFNjcmlwdHMuIFRoaXMgaXMgbm90IGEgdmVyeVxyXG4gICAgICAgICAgICAgICAgLy8gZWZmaWNpZW50IHVzZSBvZiBpbXBvcnRTY3JpcHRzLCBpbXBvcnRTY3JpcHRzIHdpbGwgYmxvY2sgdW50aWxcclxuICAgICAgICAgICAgICAgIC8vIGl0cyBzY3JpcHQgaXMgZG93bmxvYWRlZCBhbmQgZXZhbHVhdGVkLiBIb3dldmVyLCBpZiB3ZWIgd29ya2Vyc1xyXG4gICAgICAgICAgICAgICAgLy8gYXJlIGluIHBsYXksIHRoZSBleHBlY3RhdGlvbiBpcyB0aGF0IGEgYnVpbGQgaGFzIGJlZW4gZG9uZSBzb1xyXG4gICAgICAgICAgICAgICAgLy8gdGhhdCBvbmx5IG9uZSBzY3JpcHQgbmVlZHMgdG8gYmUgbG9hZGVkIGFueXdheS4gVGhpcyBtYXkgbmVlZFxyXG4gICAgICAgICAgICAgICAgLy8gdG8gYmUgcmVldmFsdWF0ZWQgaWYgb3RoZXIgdXNlIGNhc2VzIGJlY29tZSBjb21tb24uXHJcbiAgICAgICAgICAgICAgICBpbXBvcnRTY3JpcHRzKHVybCk7XHJcblxyXG4gICAgICAgICAgICAgICAgLy8gQWNjb3VudCBmb3IgYW5vbnltb3VzIG1vZHVsZXNcclxuICAgICAgICAgICAgICAgIGNvbnRleHQuY29tcGxldGVMb2FkKG1vZHVsZU5hbWUpO1xyXG4gICAgICAgICAgICB9IGNhdGNoIChlKSB7XHJcbiAgICAgICAgICAgICAgICBjb250ZXh0Lm9uRXJyb3IobWFrZUVycm9yKCdpbXBvcnRzY3JpcHRzJyxcclxuICAgICAgICAgICAgICAgICAgICAnaW1wb3J0U2NyaXB0cyBmYWlsZWQgZm9yICcgK1xyXG4gICAgICAgICAgICAgICAgICAgIG1vZHVsZU5hbWUgKyAnIGF0ICcgKyB1cmwsXHJcbiAgICAgICAgICAgICAgICAgICAgZSxcclxuICAgICAgICAgICAgICAgICAgICBbbW9kdWxlTmFtZV0pKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH07XHJcblxyXG4gICAgLy8gTG9vayBmb3IgYSBkYXRhLW1haW4gc2NyaXB0IGF0dHJpYnV0ZSwgd2hpY2ggY291bGQgYWxzbyBhZGp1c3QgdGhlIGJhc2VVcmwuXHJcbiAgICBpZiAoaXNCcm93c2VyICYmICFjZmcuc2tpcERhdGFNYWluKSB7XHJcbiAgICAgICAgLy8gRmlndXJlIG91dCBiYXNlVXJsLiBHZXQgaXQgZnJvbSB0aGUgc2NyaXB0IHRhZyB3aXRoIHJlcXVpcmUuanMgaW4gaXQuXHJcbiAgICAgICAgZWFjaFJldmVyc2Uoc2NyaXB0cygpLCBmdW5jdGlvbiAoc2NyaXB0KSB7XHJcbiAgICAgICAgICAgIC8vIFNldCB0aGUgJ2hlYWQnIHdoZXJlIHdlIGNhbiBhcHBlbmQgY2hpbGRyZW4gYnlcclxuICAgICAgICAgICAgLy8gdXNpbmcgdGhlIHNjcmlwdCdzIHBhcmVudC5cclxuICAgICAgICAgICAgaWYgKCFoZWFkKSB7XHJcbiAgICAgICAgICAgICAgICBoZWFkID0gc2NyaXB0LnBhcmVudE5vZGU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC8vIExvb2sgZm9yIGEgZGF0YS1tYWluIGF0dHJpYnV0ZSB0byBzZXQgbWFpbiBzY3JpcHQgZm9yIHRoZSBwYWdlXHJcbiAgICAgICAgICAgIC8vIHRvIGxvYWQuIElmIGl0IGlzIHRoZXJlLCB0aGUgcGF0aCB0byBkYXRhIG1haW4gYmVjb21lcyB0aGVcclxuICAgICAgICAgICAgLy8gYmFzZVVybCwgaWYgaXQgaXMgbm90IGFscmVhZHkgc2V0LlxyXG4gICAgICAgICAgICBkYXRhTWFpbiA9IHNjcmlwdC5nZXRBdHRyaWJ1dGUoJ2RhdGEtbWFpbicpO1xyXG4gICAgICAgICAgICBpZiAoZGF0YU1haW4pIHtcclxuICAgICAgICAgICAgICAgIC8vIFByZXNlcnZlIGRhdGFNYWluIGluIGNhc2UgaXQgaXMgYSBwYXRoIChpLmUuIGNvbnRhaW5zICc/JylcclxuICAgICAgICAgICAgICAgIG1haW5TY3JpcHQgPSBkYXRhTWFpbjtcclxuXHJcbiAgICAgICAgICAgICAgICAvLyBTZXQgZmluYWwgYmFzZVVybCBpZiB0aGVyZSBpcyBub3QgYWxyZWFkeSBhbiBleHBsaWNpdCBvbmUuXHJcbiAgICAgICAgICAgICAgICBpZiAoIWNmZy5iYXNlVXJsKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gUHVsbCBvZmYgdGhlIGRpcmVjdG9yeSBvZiBkYXRhLW1haW4gZm9yIHVzZSBhcyB0aGVcclxuICAgICAgICAgICAgICAgICAgICAvLyBiYXNlVXJsLlxyXG4gICAgICAgICAgICAgICAgICAgIHNyYyA9IG1haW5TY3JpcHQuc3BsaXQoJy8nKTtcclxuICAgICAgICAgICAgICAgICAgICBtYWluU2NyaXB0ID0gc3JjLnBvcCgpO1xyXG4gICAgICAgICAgICAgICAgICAgIHN1YlBhdGggPSBzcmMubGVuZ3RoID8gc3JjLmpvaW4oJy8nKSArICcvJyA6ICcuLyc7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIGNmZy5iYXNlVXJsID0gc3ViUGF0aDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAvLyBTdHJpcCBvZmYgYW55IHRyYWlsaW5nIC5qcyBzaW5jZSBtYWluU2NyaXB0IGlzIG5vd1xyXG4gICAgICAgICAgICAgICAgLy8gbGlrZSBhIG1vZHVsZSBuYW1lLlxyXG4gICAgICAgICAgICAgICAgbWFpblNjcmlwdCA9IG1haW5TY3JpcHQucmVwbGFjZShqc1N1ZmZpeFJlZ0V4cCwgJycpO1xyXG5cclxuICAgICAgICAgICAgICAgIC8vIElmIG1haW5TY3JpcHQgaXMgc3RpbGwgYSBwYXRoLCBmYWxsIGJhY2sgdG8gZGF0YU1haW5cclxuICAgICAgICAgICAgICAgIGlmIChyZXEuanNFeHRSZWdFeHAudGVzdChtYWluU2NyaXB0KSkge1xyXG4gICAgICAgICAgICAgICAgICAgIG1haW5TY3JpcHQgPSBkYXRhTWFpbjtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAvLyBQdXQgdGhlIGRhdGEtbWFpbiBzY3JpcHQgaW4gdGhlIGZpbGVzIHRvIGxvYWQuXHJcbiAgICAgICAgICAgICAgICBjZmcuZGVwcyA9IGNmZy5kZXBzID8gY2ZnLmRlcHMuY29uY2F0KG1haW5TY3JpcHQpIDogW21haW5TY3JpcHRdO1xyXG5cclxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBFeGVjdXRlcyB0aGUgdGV4dC4gTm9ybWFsbHkganVzdCB1c2VzIGV2YWwsIGJ1dCBjYW4gYmUgbW9kaWZpZWQgdG8gdXNlIGEgYmV0dGVyLCBlbnZpcm9ubWVudC1zcGVjaWZpYyBjYWxsLlxyXG4gICAgICogT25seSB1c2VkIGZvciB0cmFuc3BpbGluZyBsb2FkZXIgcGx1Z2lucywgbm90IGZvciBwbGFpbiBKUyBtb2R1bGVzLlxyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSB7U3RyaW5nfSB0ZXh0IFRoZSB0ZXh0IHRvIGV4ZWN1dGUvZXZhbHVhdGUuXHJcbiAgICAgKi9cclxuICAgIHJlcS5leGVjID0gZnVuY3Rpb24gKHRleHQpIHtcclxuICAgICAgICAvKmpzbGludCBldmlsOiB0cnVlICovXHJcbiAgICAgICAgcmV0dXJuIGV2YWwodGV4dCk7XHJcbiAgICB9O1xyXG5cclxuICAgIC8vIFNldCB1cCB3aXRoIGNvbmZpZyBpbmZvLlxyXG4gICAgcmVxKGNmZyk7XHJcbn0pKCk7XHJcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gdnVlLmpzIDIwMTgtMDYtMDdcbiBHYW1iaW8gR21iSFxuIGh0dHA6Ly93d3cuZ2FtYmlvLmRlXG4gQ29weXJpZ2h0IChjKSAyMDE4IEdhbWJpbyBHbWJIXG4gUmVsZWFzZWQgdW5kZXIgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIChWZXJzaW9uIDIpXG4gW2h0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMi4wLmh0bWxdXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqL1xuXG5qc2UuY29yZS52dWUgPSBqc2UuY29yZS52dWUgfHwge307XG5cbi8qKlxuICogSlNFIFZ1ZSBJbnRlZ3JhdGlvblxuICpcbiAqIEluaXRpYWxpemVzIHRoZSBWdWUgYXBwbGljYXRpb24gZm9yIHRoZSBjdXJyZW50IHBhZ2UuXG4gKlxuICogVnVlIHN1cHBvcnQgaXMgYWN0aXZhdGVkIGlmIHRoZSBnbG9iYWwgSlNFbmdpbmVDb25maWd1cmF0aW9uIG9iamVjdCBjb250YWlucyBzZXRzIHRoZSByZXF1ZXN0ZWQgdmFsdWVzIGZvclxuICogdGhlIGludGVncmF0aW9uLlxuICpcbiAqIGBgYFxuICogd2luZG93LkpTRW5naW5lQ29uZmlndXJhdGlvbiA9IHtcbiAqXHQgZW52aXJvbm1lbnQ6ICdkZXZlbG9wbWVudCcsXG4gKlx0IGFwcFVybDogJ2h0dHA6Ly9leGFtcGxlLm9yZycsXG4gKlx0IGFwcFZlcnNpb246ICd2MS4wLjAnLFxuICpcdCB0cmFuc2xhdGlvbnM6IHt9LFxuICpcdCBsYW5ndWFnZUNvZGU6ICdlbicsXG4gKlx0IHBhZ2VUb2tlbjogJ2NzcmYtcHJvdGVjdGlvbi10b2tlbicsXG4gKlx0IGNhY2hlVG9rZW46ICdjYWNoZS1idXN0aW5nLXRva2VuJyAsXG4gKlx0IHZ1ZToge1xuICpcdCBcdGVsOiAnLnZ1ZS1pbnN0YW5jZSdcbiAqXHQgfSwgXG4gKlx0IGNvbGxlY3Rpb25zOiBbXG4gKlx0IFx0e25hbWU6ICdjb250cm9sbGVycycsIGF0dHJpYnV0ZTogJ2NvbnRyb2xsZXInfSxcbiAqXHQgXHR7bmFtZTogJ2V4dGVuc2lvbnMnLCBhdHRyaWJ1dGU6ICdleHRlbnNpb24nfSxcbiAqXHQgXHR7bmFtZTogJ3dpZGdldHMnLCBhdHRyaWJ1dGU6ICd3aWRnZXQnfSxcbiAqXHQgXHR7bmFtZTogJ2NvbXBhdGliaWxpdHknLCBhdHRyaWJ1dGU6ICdjb21wYXRpYmlsaXR5J31cbiAqXHQgXSxcbiAqXHQgcmVnaXN0cnk6IHt9IFxuICogfTtcbiAqIGBgYFxuICpcbiAqIEBtb2R1bGUgSlNFL0NvcmUvcG9seWZpbGxzXG4gKi9cbihmdW5jdGlvbiAoZXhwb3J0cykge1xuXG4gICAgJ3VzZSBzdHJpY3QnO1xuXG4gICAgLyoqXG4gICAgICogSG9sZHMgdnVlIGluc3RhbmNlc1xuICAgICAqXG4gICAgICogQHR5cGUge09iamVjdH1cbiAgICAgKi9cbiAgICBjb25zdCBpbnN0YW5jZXMgPSB7fTtcblxuICAgIC8qKlxuICAgICAqIEhvbGRzIGdyb3VwZWQgY29tcG9uZW50cy5cbiAgICAgKlxuICAgICAqIEdyb3VwZWQgY29tcG9uZW50cyBhcmUgYmVpbmcgdXNlZCBmb3IgYXNzaWdubWVudHMgYmV0d2VlbiBhIHBhcmVudCBhbmQgY2hpbGQgVnVlIGNvbXBvbmVudHMuXG4gICAgICpcbiAgICAgKiBAdHlwZSB7T2JqZWN0fVxuICAgICAqL1xuICAgIGNvbnN0IGNvbXBvbmVudHMgPSB7fTtcblxuICAgIC8qKlxuICAgICAqIEhvbGRzIGdyb3VwZWQgY2hpbGQgY29tcG9uZW50cy5cbiAgICAgKlxuICAgICAqIEdyb3VwZWQgY29tcG9uZW50cyBhcmUgYmVpbmcgdXNlZCBmb3IgYXNzaWdubWVudHMgYmV0d2VlbiBhIHBhcmVudCBhbmQgY2hpbGQgVnVlIGNvbXBvbmVudHMuXG4gICAgICpcbiAgICAgKiBAdHlwZSB7T2JqZWN0fVxuICAgICAqL1xuICAgIGNvbnN0IGNoaWxkQ29tcG9uZW50cyA9IHt9O1xuXG4gICAgLyoqXG4gICAgICogSW5pdGlhbGl6ZSB0aGUgVnVlIGFwcGxpY2F0aW9uIG9uY2UgdGhlIEpTIEVuZ2luZSBoYXMgZmluaXNoZWQgbG9hZGluZyBhbGwgdGhlIG1vZHVsZXMuXG4gICAgICovXG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignSlNFTkdJTkVfSU5JVF9GSU5JU0hFRCcsICgpID0+IHtcbiAgICAgICAgY29uc3QgZ2xvYmFsQ29uZmlnID0ganNlLmNvcmUuY29uZmlnLmdldCgndnVlJyk7XG5cbiAgICAgICAgLy8gQ2hlY2sgZm9yIFZ1ZSBKU0UgY29uZmlndXJhdGlvbi4gXG4gICAgICAgIGlmICghZ2xvYmFsQ29uZmlnKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCByb290cyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoZ2xvYmFsQ29uZmlnLmVsKTtcblxuICAgICAgICBBcnJheS5mcm9tKHJvb3RzKS5mb3JFYWNoKChyb290LCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgbmFtZSA9IHJvb3QuZ2V0QXR0cmlidXRlKCdkYXRhLXZ1ZS1pbnN0YW5jZS1uYW1lJykgfHwgYHZ1ZS1pbnN0YW5jZS0ke2luZGV4fWA7XG4gICAgICAgICAgICBjb25zdCBjb25maWcgPSBPYmplY3QuYXNzaWduKHt9LCBnbG9iYWxDb25maWcsIHtlbDogcm9vdH0pO1xuICAgICAgICAgICAganNlLmNvcmUudnVlLmNyZWF0ZShuYW1lLCBjb25maWcpO1xuICAgICAgICB9KTtcbiAgICB9KTtcblxuICAgIC8qKlxuICAgICAqIFJlZ2lzdGVyIGEgSlMgRW5naW5lIHZ1ZSBtb2R1bGUuXG4gICAgICpcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gbW9kdWxlXG4gICAgICovXG4gICAgZXhwb3J0cy5yZWdpc3Rlck1vZHVsZSA9IGZ1bmN0aW9uIChtb2R1bGUpIHtcbiAgICAgICAgaWYgKCFtb2R1bGUgfHwgIW1vZHVsZS52dWUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghbW9kdWxlLnBhcmVudCkge1xuICAgICAgICAgICAganNlLmNvcmUudnVlLnJlZ2lzdGVyQ29tcG9uZW50KG1vZHVsZS5uYW1lLCBtb2R1bGUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAganNlLmNvcmUudnVlLnJlZ2lzdGVyQ2hpbGRDb21wb25lbnQobW9kdWxlLnBhcmVudCwgbW9kdWxlLm5hbWUsIG1vZHVsZSk7XG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgLyoqXG4gICAgICogUmVnaXN0ZXIgYSBjaGlsZCBjb21wb25lbnQuXG4gICAgICpcbiAgICAgKiBAcGFyYW0ge1N0cmluZ30gcGFyZW50IFBhcmVudCBjb21wb25lbnQgcmVmZXJlbmNlLlxuICAgICAqIEBwYXJhbSB7U3RyaW5nfSBuYW1lIE5hbWUgY29tcG9uZW50IHJlZmVyZW5jZS5cbiAgICAgKiBAcGFyYW0ge09iamVjdH0gY2hpbGRDb21wb25lbnQgQ2hpbGQgY29tcG9uZW50IGRlZmluaXRpb24uXG4gICAgICovXG4gICAgZXhwb3J0cy5yZWdpc3RlckNoaWxkQ29tcG9uZW50ID0gZnVuY3Rpb24gKHBhcmVudCwgbmFtZSwgY2hpbGRDb21wb25lbnQpIHtcbiAgICAgICAgY2hpbGRDb21wb25lbnRzW3BhcmVudF0gPSBjaGlsZENvbXBvbmVudHNbcGFyZW50XSB8fCB7fTtcblxuICAgICAgICBpZiAoY2hpbGRDb21wb25lbnRzW3BhcmVudF1bbmFtZV0pIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNoaWxkQ29tcG9uZW50c1twYXJlbnRdW25hbWVdID0gY2hpbGRDb21wb25lbnQ7XG4gICAgfTtcblxuICAgIC8qKlxuICAgICAqIFJlZ2lzdGVyIGEgY29tcG9uZW50LlxuICAgICAqXG4gICAgICogQHBhcmFtIHtTdHJpbmd9IG5hbWUgTmFtZSBjb21wb25lbnQgcmVmZXJlbmNlLlxuICAgICAqIEBwYXJhbSB7T2JqZWN0fSBjb21wb25lbnQgQ29tcG9uZW50IGRlZmluaXRpb24uXG4gICAgICovXG4gICAgZXhwb3J0cy5yZWdpc3RlckNvbXBvbmVudCA9IGZ1bmN0aW9uIChuYW1lLCBjb21wb25lbnQpIHtcbiAgICAgICAgaWYgKGNvbXBvbmVudHNbbmFtZV0pIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbXBvbmVudHNbbmFtZV0gPSBjb21wb25lbnQ7XG4gICAgfTtcblxuICAgIC8qKlxuICAgICAqIENyZWF0ZSBhIG5ldyBWdWUgaW5zdGFuY2UuXG4gICAgICpcbiAgICAgKiBAcGFyYW0ge1N0cmluZ30gbmFtZSBVbmlxdWUgbmFtZSBmb3IgaW5zdGFuY2UuXG4gICAgICogQHBhcmFtIHtPYmplY3R9IGNvbmZpZyBWdWUgY29uZmlndXJhdGlvbiBmb3IgdGhlIG5ldyBpbnN0YW5jZS5cbiAgICAgKi9cbiAgICBleHBvcnRzLmNyZWF0ZSA9IGZ1bmN0aW9uIChuYW1lLCBjb25maWcpIHtcbiAgICAgICAgaWYgKGluc3RhbmNlc1tuYW1lXSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBJbnN0YW5jZSB3aXRoIG5hbWUgJHtuYW1lfSBhbHJlYWR5IGV4aXN0cywgcGxlYXNlIHVzZSBhIGRpZmZlcmVudCBuYW1lLmApO1xuICAgICAgICB9XG5cbiAgICAgICAgZm9yIChsZXQgbmFtZSBpbiBjb21wb25lbnRzKSB7XG4gICAgICAgICAgICBjb21wb25lbnRzW25hbWVdLmNvbXBvbmVudHMgPSBjaGlsZENvbXBvbmVudHNbbmFtZV0gfHwge307XG5cbiAgICAgICAgICAgIFZ1ZS5jb21wb25lbnQobmFtZSwgY29tcG9uZW50c1tuYW1lXSk7XG4gICAgICAgIH1cblxuICAgICAgICBpbnN0YW5jZXNbbmFtZV0gPSBuZXcgVnVlKGNvbmZpZyk7XG4gICAgfTtcblxuICAgIC8qKlxuICAgICAqIERlc3Ryb3kgYSB2dWUgaW5zdGFuY2UuXG4gICAgICpcbiAgICAgKiBAcGFyYW0ge1N0cmluZ30gbmFtZSBJbnN0YW5jZSBuYW1lIHRvIGJlIGRlc3Ryb3llZC5cbiAgICAgKi9cbiAgICBleHBvcnRzLmRlc3Ryb3kgPSBmdW5jdGlvbiAobmFtZSkge1xuICAgICAgICBpZiAoIWluc3RhbmNlc1tuYW1lXSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBJbnN0YW5jZSB3aXRoIG5hbWUgJHtuYW1lfSBkb2VzIG5vdCBleGlzdCwgbWFrZSBzdXJlIHRoZSBpbnN0YW5jZSB3YXMgaW5pdGlhbGl6ZWQgY29ycmVjdGx5LmApO1xuICAgICAgICB9XG5cbiAgICAgICAgaW5zdGFuY2VzW25hbWVdLiRkZXN0cm95KCk7XG5cbiAgICAgICAgZGVsZXRlIGluc3RhbmNlc1tuYW1lXTtcbiAgICB9O1xuXG4gICAgLyoqXG4gICAgICogR2V0IGFsbCBhY3RpdmUgaW5zdGFuY2VzLlxuICAgICAqXG4gICAgICogQHJldHVybiB7T2JqZWN0fSBOYW1lIC0gaW5zdGFuY2UgcGFpcnMuXG4gICAgICovXG4gICAgZXhwb3J0cy5pbnN0YW5jZXMgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiBpbnN0YW5jZXM7XG4gICAgfTtcbn0pKGpzZS5jb3JlLnZ1ZSk7Il0sInByZUV4aXN0aW5nQ29tbWVudCI6Ii8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKemIzVnlZMlZ6SWpwYkltNXZaR1ZmYlc5a2RXeGxjeTlpY205M2MyVnlMWEJoWTJzdlgzQnlaV3gxWkdVdWFuTWlMQ0p6Y21NdlNsTkZibWRwYm1VdlkyOXVjM1J5ZFdOMGIzSnpMMk52Ykd4bFkzUnBiMjR1YW5NaUxDSnpjbU12U2xORmJtZHBibVV2WTI5dWMzUnlkV04wYjNKekwyUmhkR0ZmWW1sdVpHbHVaeTVxY3lJc0luTnlZeTlLVTBWdVoybHVaUzlqYjI1emRISjFZM1J2Y25NdmJXOWtkV3hsTG1weklpd2ljM0pqTDBwVFJXNW5hVzVsTDJOdmJuTjBjblZqZEc5eWN5OXVZVzFsYzNCaFkyVXVhbk1pTENKemNtTXZTbE5GYm1kcGJtVXZZMjl5WlM5aFltOTFkQzVxY3lJc0luTnlZeTlLVTBWdVoybHVaUzlqYjNKbEwyTnZibVpwWnk1cWN5SXNJbk55WXk5S1UwVnVaMmx1WlM5amIzSmxMMlJsWW5WbkxtcHpJaXdpYzNKakwwcFRSVzVuYVc1bEwyTnZjbVV2Wlc1bmFXNWxMbXB6SWl3aWMzSmpMMHBUUlc1bmFXNWxMMk52Y21VdlpYaDBaVzVrTG1weklpd2ljM0pqTDBwVFJXNW5hVzVsTDJOdmNtVXZhVzVwZEdsaGJHbDZaUzVxY3lJc0luTnlZeTlLVTBWdVoybHVaUzlqYjNKbEwyeGhibWN1YW5NaUxDSnpjbU12U2xORmJtZHBibVV2WTI5eVpTOXRZV2x1TG1weklpd2ljM0pqTDBwVFJXNW5hVzVsTDJOdmNtVXZiVzlrZFd4bFgyeHZZV1JsY2k1cWN5SXNJbk55WXk5S1UwVnVaMmx1WlM5amIzSmxMM0J2YkhsbWFXeHNjeTVxY3lJc0luTnlZeTlLVTBWdVoybHVaUzlqYjNKbEwzSmxaMmx6ZEhKNUxtcHpJaXdpYzNKakwwcFRSVzVuYVc1bEwyTnZjbVV2Y21WeGRXbHlaUzVxY3lJc0luTnlZeTlLVTBWdVoybHVaUzlqYjNKbEwzWjFaUzVxY3lKZExDSnVZVzFsY3lJNlcxMHNJbTFoY0hCcGJtZHpJam9pUVVGQlFUczdPenM3T3p0QlEwRkJPenM3T3pzN096czdPMEZCVlVFc1EwRkJReXhaUVVGWk96dEJRVVZVT3p0QlFVVkJPenM3T3pzN096dEJRVXBUTEZGQlYwZ3NWVUZZUnp0QlFWbE1PenM3T3pzN08wRkJUMEVzTkVKQlFWa3NTVUZCV2l4RlFVRnJRaXhUUVVGc1FpeEZRVUUyUWl4VFFVRTNRaXhGUVVGM1F6dEJRVUZCT3p0QlFVTndReXhwUWtGQlN5eEpRVUZNTEVkQlFWa3NTVUZCV2p0QlFVTkJMR2xDUVVGTExGTkJRVXdzUjBGQmFVSXNVMEZCYWtJN1FVRkRRU3hwUWtGQlN5eFRRVUZNTEVkQlFXbENMRk5CUVdwQ08wRkJRMEVzYVVKQlFVc3NTMEZCVEN4SFFVRmhPMEZCUTFRc2VVSkJRVk1zUlVGRVFUdEJRVVZVTEhOQ1FVRk5PMEZCUmtjc1lVRkJZanRCUVVsSU96dEJRVVZFT3pzN096czdPenM3T3pzN096dEJRVGRDU3p0QlFVRkJPMEZCUVVFc2JVTkJlVU5GTEVsQmVrTkdMRVZCZVVOUkxGbEJla05TTEVWQmVVTnpRaXhKUVhwRGRFSXNSVUY1UXpSQ08wRkJRemRDTzBGQlEwRXNiMEpCUVVrc1EwRkJReXhKUVVGRUxFbEJRVk1zVDBGQlR5eEpRVUZRTEV0QlFXZENMRkZCUVhwQ0xFbEJRWEZETEU5QlFVOHNTVUZCVUN4TFFVRm5RaXhWUVVGNlJDeEZRVUZ4UlR0QlFVTnFSU3gzUWtGQlNTeEpRVUZLTEVOQlFWTXNTMEZCVkN4RFFVRmxMRWxCUVdZc1EwRkJiMElzTmtSQlFYQkNMRVZCUVcxR0xGTkJRVzVHTzBGQlEwRXNNa0pCUVU4c1MwRkJVRHRCUVVOSU96dEJRVVZFTzBGQlEwRXNiMEpCUVVrc1MwRkJTeXhMUVVGTUxFTkJRVmNzVDBGQldDeERRVUZ0UWl4SlFVRnVRaXhEUVVGS0xFVkJRVGhDTzBGQlF6RkNMSGRDUVVGSkxFbEJRVW9zUTBGQlV5eExRVUZVTEVOQlFXVXNTVUZCWml4RFFVRnZRaXcyUWtGQk5rSXNTVUZCTjBJc1IwRkJiME1zZFVOQlFYaEVPMEZCUTBFc01rSkJRVThzUzBGQlVEdEJRVU5JT3p0QlFVVkVPMEZCUTBFc2NVSkJRVXNzUzBGQlRDeERRVUZYTEU5QlFWZ3NRMEZCYlVJc1NVRkJia0lzU1VGQk1rSTdRVUZEZGtJc01FSkJRVTBzU1VGRWFVSTdRVUZGZGtJc2EwTkJRV003UVVGR1V5eHBRa0ZCTTBJN1FVRkpTRHM3UVVGRlJEczdPenM3T3pzN096czdPenRCUVRkRVN6dEJRVUZCTzBGQlFVRXNiVU5CZVVWblFqdEJRVUZCT3p0QlFVRkJMRzlDUVVGb1FpeFBRVUZuUWl4MVJVRkJUaXhKUVVGTk96dEJRVU5xUWp0QlFVTkJMRzlDUVVGSkxFTkJRVU1zUzBGQlN5eFRRVUZXTEVWQlFYRkNPMEZCUTJwQ0xEQkNRVUZOTEVsQlFVa3NTMEZCU2l4RFFVRlZMSGxGUVVGV0xFTkJRVTQ3UVVGRFNEczdRVUZGUkR0QlFVTkJMRzlDUVVGSkxGbEJRVmtzVTBGQldpeEpRVUY1UWl4WlFVRlpMRWxCUVhwRExFVkJRU3RETzBGQlF6TkRMRGhDUVVGVkxFVkJRVVVzVFVGQlJpeERRVUZXTzBGQlEwZzdPMEZCUlVRc2IwSkJRVTBzV1VGQldTeFZRVUZWTEV0QlFVc3NVMEZCVEN4RFFVRmxMRWxCUVhwQ0xFZEJRV2RETEVkQlFXaERMRWRCUVhORExFdEJRVXNzVTBGQk4wUTdRVUZEUVN4dlFrRkJUU3h2UWtGQmIwSXNSVUZCUlN4UlFVRkdMRVZCUVRGQ08wRkJRMEVzYjBKQlFVMHNjVUpCUVhGQ0xFVkJRVE5DT3p0QlFVVkJMSGRDUVVOTExFMUJSRXdzUTBGRFdTeE5RVUZOTEZOQlFVNHNSMEZCYTBJc1IwRkVPVUlzUlVGRlN5eEhRVVpNTEVOQlJWTXNVVUZCVVN4SlFVRlNMRU5CUVdFc1RVRkJUU3hUUVVGT0xFZEJRV3RDTEVkQlFTOUNMRU5CUmxRc1JVRkhTeXhKUVVoTUxFTkJSMVVzVlVGQlF5eExRVUZFTEVWQlFWRXNUMEZCVWl4RlFVRnZRanRCUVVOMFFpeDNRa0ZCVFN4WFFVRlhMRVZCUVVVc1QwRkJSaXhEUVVGcVFqdEJRVU5CTEhkQ1FVRk5MRlZCUVZVc1UwRkJVeXhKUVVGVUxFTkJRV01zVTBGQlpDeERRVUZvUWpzN1FVRkZRU3cyUWtGQlV5eFZRVUZVTEVOQlFXOUNMRk5CUVhCQ096dEJRVVZCTEhOQ1FVRkZMRWxCUVVZc1EwRkJUeXhSUVVGUkxFOUJRVklzUTBGQlowSXNjMEpCUVdoQ0xFVkJRWGRETEVkQlFYaERMRVZCUVRaRExFbEJRVGRETEVkQlFXOUVMRXRCUVhCRUxFTkJRVEJFTEVkQlFURkVMRU5CUVZBc1JVRkJkVVVzVlVGQlF5eExRVUZFTEVWQlFWRXNTVUZCVWl4RlFVRnBRanRCUVVOd1JpdzBRa0ZCU1N4VFFVRlRMRVZCUVdJc1JVRkJhVUk3UVVGRFlpeHRRMEZCVHl4SlFVRlFPMEZCUTBnN08wRkJSVVFzTkVKQlFVMHNWMEZCVnl4RlFVRkZMRkZCUVVZc1JVRkJha0k3UVVGRFFTd3lRMEZCYlVJc1NVRkJia0lzUTBGQmQwSXNVVUZCZUVJN08wRkJSVUVzTkVKQlFVa3NTVUZCU2l4RFFVRlRMR0ZCUVZRc1EwRkRTeXhKUVVSTUxFTkJRMVVzVVVGRVZpeEZRVU52UWl4SlFVUndRaXhGUVVNd1FpeExRVVF4UWl4RlFVVkxMRWxCUmt3c1EwRkZWU3hWUVVGRExFMUJRVVE3UVVGQlFTeHRRMEZCV1N4UFFVRlBMRWxCUVZBc1EwRkJXU3hSUVVGYUxFTkJRVm83UVVGQlFTeDVRa0ZHVml4RlFVZExMRWxCU0V3c1EwRkhWU3hWUVVGRExFdEJRVVFzUlVGQlZ6dEJRVU5pTEhGRFFVRlRMRTFCUVZRN1FVRkRRVHRCUVVOQkxHZERRVUZKTEVsQlFVb3NRMEZCVXl4TFFVRlVMRU5CUVdVc1MwRkJaaXhEUVVGeFFpdzBRa0ZCTkVJc1NVRkJha1FzUlVGQmRVUXNTMEZCZGtRN1FVRkRTQ3g1UWtGUVREdEJRVkZJTEhGQ1FXaENSRHRCUVdsQ1NDeHBRa0V4UWt3N08wRkJORUpCTzBGQlEwRXNhMEpCUVVVc1NVRkJSaXhEUVVGUExFdEJRVkFzUTBGQllTeFRRVUZpTEVWQlFYZENMR3RDUVVGNFFpeEZRVUUwUXl4TlFVRTFReXhEUVVGdFJEdEJRVUZCTERKQ1FVRk5MR3RDUVVGclFpeFBRVUZzUWl4RlFVRk9PMEZCUVVFc2FVSkJRVzVFT3p0QlFVVkJMSFZDUVVGUExHMUNRVUZ0UWl4TlFVRnVRaXhIUVVFMFFpeHJRa0ZCYTBJc1QwRkJiRUlzUlVGQk5VSXNSMEZCTUVRc2EwSkJRV3RDTEU5QlFXeENMRVZCUVdwRk8wRkJRMGc3UVVGNFNFazdPMEZCUVVFN1FVRkJRVHM3UVVFeVNGUXNVVUZCU1N4WlFVRktMRU5CUVdsQ0xGVkJRV3BDTEVkQlFUaENMRlZCUVRsQ08wRkJRMGdzUTBFMVNFUTdPenM3T3pzN096dEJRMVpCT3pzN096czdPenM3TzBGQlZVRXNRMEZCUXl4WlFVRlpPenRCUVVWVU96dEJRVVZCT3pzN096czdPenRCUVVwVExGRkJWMGdzVjBGWVJ6dEJRVmxNT3pzN096czdRVUZOUVN3MlFrRkJXU3hKUVVGYUxFVkJRV3RDTEZGQlFXeENMRVZCUVRSQ08wRkJRVUU3TzBGQlEzaENMR2xDUVVGTExFbEJRVXdzUjBGQldTeEpRVUZhTzBGQlEwRXNhVUpCUVVzc1VVRkJUQ3hIUVVGblFpeFJRVUZvUWp0QlFVTkJMR2xDUVVGTExFdEJRVXdzUjBGQllTeEpRVUZpTzBGQlEwRXNhVUpCUVVzc1UwRkJUQ3hIUVVGcFFpeFRRVUZUTEVWQlFWUXNRMEZCV1N4NVFrRkJXaXhEUVVGcVFqdEJRVU5CTEdsQ1FVRkxMRWxCUVV3N1FVRkRTRHM3UVVGRlJEczdPenM3UVVFeFFrczdRVUZCUVR0QlFVRkJMRzFEUVRaQ1JUdEJRVUZCT3p0QlFVTklMSEZDUVVGTExGRkJRVXdzUTBGQll5eEZRVUZrTEVOQlFXbENMRkZCUVdwQ0xFVkJRVEpDTEZsQlFVMDdRVUZETjBJc01FSkJRVXNzUjBGQlREdEJRVU5JTEdsQ1FVWkVPMEZCUjBnN08wRkJSVVE3T3pzN096dEJRVzVEU3p0QlFVRkJPMEZCUVVFc2EwTkJkME5ETzBGQlEwWXNjVUpCUVVzc1MwRkJUQ3hIUVVGaExFdEJRVXNzVTBGQlRDeEhRVUZwUWl4TFFVRkxMRkZCUVV3c1EwRkJZeXhIUVVGa0xFVkJRV3BDTEVkQlFYVkRMRXRCUVVzc1VVRkJUQ3hEUVVGakxFbEJRV1FzUlVGQmNFUTdPMEZCUlVFc2IwSkJRVWtzUzBGQlN5eFJRVUZNTEVOQlFXTXNSVUZCWkN4RFFVRnBRaXhYUVVGcVFpeExRVUZwUXl4TFFVRkxMRkZCUVV3c1EwRkJZeXhGUVVGa0xFTkJRV2xDTEZGQlFXcENMRU5CUVhKRExFVkJRV2xGTzBGQlF6ZEVMSGxDUVVGTExFdEJRVXdzUjBGQllTeExRVUZMTEZGQlFVd3NRMEZCWXl4SlFVRmtMRU5CUVcxQ0xGTkJRVzVDTEVOQlFXSTdRVUZEU0RzN1FVRkZSQ3gxUWtGQlR5eExRVUZMTEV0QlFWbzdRVUZEU0RzN1FVRkZSRHM3T3pzN08wRkJiRVJMTzBGQlFVRTdRVUZCUVN4blEwRjFSRVFzUzBGMlJFTXNSVUYxUkUwN1FVRkRVQ3h4UWtGQlN5eExRVUZNTEVkQlFXRXNTMEZCWWpzN1FVRkZRU3h2UWtGQlNTeExRVUZMTEZOQlFWUXNSVUZCYjBJN1FVRkRhRUlzZVVKQlFVc3NVVUZCVEN4RFFVRmpMRWRCUVdRc1EwRkJhMElzUzBGQmJFSTdRVUZEU0N4cFFrRkdSQ3hOUVVWUE8wRkJRMGdzZVVKQlFVc3NVVUZCVEN4RFFVRmpMRWxCUVdRc1EwRkJiVUlzUzBGQmJrSTdRVUZEU0R0QlFVTktPMEZCTDBSSk96dEJRVUZCTzBGQlFVRTdPMEZCYTBWVUxGRkJRVWtzV1VGQlNpeERRVUZwUWl4WFFVRnFRaXhIUVVFclFpeFhRVUV2UWp0QlFVTklMRU5CYmtWRU96czdPenM3T3pzN1FVTldRVHM3T3pzN096czdPenRCUVZWQkxFTkJRVU1zV1VGQldUczdRVUZGVkRzN1FVRkZRVHM3T3pzN096czdRVUZLVXl4UlFWZElMRTFCV0VjN1FVRlpURHM3T3pzN096dEJRVTlCTEhkQ1FVRlpMRkZCUVZvc1JVRkJjMElzU1VGQmRFSXNSVUZCTkVJc1ZVRkJOVUlzUlVGQmQwTTdRVUZCUVRzN1FVRkRjRU1zYVVKQlFVc3NVVUZCVEN4SFFVRm5RaXhSUVVGb1FqdEJRVU5CTEdsQ1FVRkxMRWxCUVV3c1IwRkJXU3hKUVVGYU8wRkJRMEVzYVVKQlFVc3NWVUZCVEN4SFFVRnJRaXhWUVVGc1FqdEJRVU5JT3p0QlFVVkVPenM3T3pzN096czdPMEZCZWtKTE8wRkJRVUU3UVVGQlFTeHBRMEZwUTBFc2EwSkJha05CTEVWQmFVTnZRanRCUVVGQk96dEJRVU55UWp0QlFVTkJMRzlDUVVGTkxGTkJRVk1zUzBGQlN5eFZRVUZNTEVOQlFXZENMRXRCUVdoQ0xFTkJRWE5DTEU5QlFYUkNMRU5CUVRoQ0xFdEJRVXNzU1VGQmJrTXNRMEZCWmp0QlFVTkJMRzlDUVVGSkxGVkJRVlVzU1VGQlpEczdRVUZGUVN4dlFrRkJTVHRCUVVOQkxIZENRVUZKTEVOQlFVTXNUVUZCVEN4RlFVRmhPMEZCUTFRc09FSkJRVTBzU1VGQlNTeExRVUZLTEdOQlFYRkNMRXRCUVVzc1NVRkJNVUlzYlVSQlFVNDdRVUZEU0RzN1FVRkZSQ3gzUWtGQlRTeFBRVUZQTEV0QlFVc3NZMEZCVEN4RlFVRmlPMEZCUTBFc2QwSkJRVTBzVjBGQlZ5eFBRVUZQTEVsQlFWQXNRMEZCV1N4SlFVRmFMRU5CUVdsQ0xFdEJRVXNzVVVGQmRFSXNSVUZCWjBNc1NVRkJhRU1zUTBGQmFrSTdPMEZCUlVFN1FVRkRRVHRCUVVOQkxIZENRVUZOTEU5QlFVOHNVMEZCVUN4SlFVRlBMRWRCUVUwN1FVRkRaaXc0UWtGQlN5eFJRVUZNTEVOQlFXTXNUMEZCWkN4RFFVRnpRaXgzUWtGQmRFSXNSVUZCWjBRc1EwRkJReXhGUVVGRExGRkJRVkVzVFVGQlN5eEpRVUZrTEVWQlFVUXNRMEZCYUVRN1FVRkRRU3cwUWtGQlNTeEpRVUZLTEVOQlFWTXNTMEZCVkN4RFFVRmxMRWxCUVdZc1kwRkJLMElzVFVGQlN5eEpRVUZ3UXp0QlFVTkJMREpEUVVGdFFpeFBRVUZ1UWp0QlFVTkJMSEZEUVVGaExFOUJRV0k3UVVGRFNDeHhRa0ZNUkRzN1FVRlBRVHRCUVVOQkxIbENRVUZMTEdWQlFVd3NRMEZCY1VJc1VVRkJja0lzUlVGRFN5eEpRVVJNTEVOQlExVXNXVUZCVFR0QlFVTlNPMEZCUTBFc2EwTkJRVlVzVjBGQlZ5eFpRVUZOTzBGQlEzWkNMR2REUVVGSkxFbEJRVW9zUTBGQlV5eExRVUZVTEVOQlFXVXNTVUZCWml4RFFVRnZRaXh4UkVGQmNVUXNUVUZCU3l4SlFVRTVSVHRCUVVOQkxDdERRVUZ0UWl4TlFVRnVRanRCUVVOSUxIbENRVWhUTEVWQlIxQXNTMEZJVHl4RFFVRldPenRCUVV0QkxEUkNRVUZKTEVsQlFVb3NRMEZCVXl4SFFVRlVMRU5CUVdFc1kwRkJZaXhEUVVFMFFpeFJRVUUxUWp0QlFVTkJMR2xEUVVGVExFbEJRVlFzUTBGQll5eEpRVUZrTzBGQlEwZ3NjVUpCVmt3c1JVRlhTeXhKUVZoTUxFTkJWMVVzVlVGQlF5eExRVUZFTEVWQlFWYzdRVUZEWWl3eVEwRkJiVUlzVFVGQmJrSTdRVUZEUVN3MFFrRkJTU3hKUVVGS0xFTkJRVk1zUzBGQlZDeERRVUZsTEV0QlFXWXNRMEZCY1VJc2NVTkJRWEpDTEVWQlFUUkVMRXRCUVRWRU8wRkJRMGdzY1VKQlpFdzdRVUZsU0N4cFFrRnFRMFFzUTBGcFEwVXNUMEZCVHl4VFFVRlFMRVZCUVd0Q08wRkJRMmhDTEhWRFFVRnRRaXhOUVVGdVFqdEJRVU5CTEhkQ1FVRkpMRWxCUVVvc1EwRkJVeXhMUVVGVUxFTkJRV1VzUzBGQlppeG5RMEZCYTBRc1MwRkJTeXhKUVVGMlJDeFRRVUZwUlN4VFFVRnFSVHRCUVVOQkxITkNRVUZGTEUxQlFVWXNSVUZCVlN4UFFVRldMRU5CUVd0Q0xFOUJRV3hDTEVWQlFUSkNMRU5CUVVNc1UwRkJSQ3hEUVVFelFpeEZRVWhuUWl4RFFVZDVRanRCUVVNMVF6czdRVUZGUkN4MVFrRkJUeXh0UWtGQmJVSXNUMEZCYmtJc1JVRkJVRHRCUVVOSU96dEJRVVZFT3pzN096czdPenRCUVdoR1N6dEJRVUZCTzBGQlFVRXNOa05CZFVaWk8wRkJRVUU3TzBGQlEySXNiMEpCUVUwc1QwRkJUeXhGUVVGaU96dEJRVVZCTEd0Q1FVRkZMRWxCUVVZc1EwRkJUeXhMUVVGTExGRkJRVXdzUTBGQll5eEpRVUZrTEVWQlFWQXNSVUZCTmtJc1ZVRkJReXhKUVVGRUxFVkJRVThzUzBGQlVDeEZRVUZwUWp0QlFVTXhReXgzUWtGQlNTeExRVUZMTEU5QlFVd3NRMEZCWVN4UFFVRkxMRWxCUVd4Q0xFMUJRVFJDTEVOQlFUVkNMRWxCUVdsRExFdEJRVXNzVDBGQlRDeERRVUZoTEU5QlFVc3NTVUZCVEN4RFFVRlZMRmRCUVZZc1JVRkJZaXhOUVVFd1F5eERRVUV2UlN4RlFVRnJSanRCUVVNNVJTdzBRa0ZCU1N4TlFVRk5MRXRCUVVzc1RVRkJUQ3hEUVVGWkxFOUJRVXNzU1VGQlRDeERRVUZWTEUxQlFYUkNMRU5CUVZZN1FVRkRRU3c0UWtGQlRTeEpRVUZKTEUxQlFVb3NRMEZCVnl4RFFVRllMRVZCUVdNc1EwRkJaQ3hGUVVGcFFpeFhRVUZxUWl4TFFVRnBReXhKUVVGSkxFMUJRVW9zUTBGQlZ5eERRVUZZTEVOQlFYWkRPMEZCUTBFc05rSkJRVXNzUjBGQlRDeEpRVUZaTEV0QlFWbzdRVUZEUVR0QlFVTkJMRFJDUVVGTkxHVkJRV1VzU1VGQlNTeFBRVUZLTEVOQlFWa3NhVUpCUVZvc1JVRkJLMElzVDBGQkwwSXNSVUZCZDBNc1YwRkJlRU1zUlVGQmNrSTdRVUZEUVN3clFrRkJTeXhSUVVGTUxFTkJRV01zVlVGQlpDeFhRVUZwUXl4UFFVRkxMRWxCUVhSRExGTkJRVGhETEZsQlFUbERPMEZCUTBnN1FVRkRTaXhwUWtGVVJEczdRVUZYUVN4MVFrRkJUeXhKUVVGUU8wRkJRMGc3TzBGQlJVUTdPenM3T3pzN096czdRVUY0UjBzN1FVRkJRVHRCUVVGQkxEUkRRV2xJVnl4UlFXcElXQ3hGUVdsSWNVSTdRVUZEZEVJc2IwSkJRVTBzVjBGQlZ5eEZRVUZGTEZGQlFVWXNSVUZCYWtJN1FVRkRRU3h2UWtGQlRTeHhRa0ZCY1VJc1JVRkJNMEk3TzBGQlJVRXNiMEpCUVVrN1FVRkRRU3gzUWtGQlNTeFRRVUZUTEV0QlFXSXNSVUZCYjBJN1FVRkRhRUlzTUVKQlFVVXNTVUZCUml4RFFVRlBMRk5CUVZNc1MwRkJhRUlzUlVGQmRVSXNWVUZCVlN4TFFVRldMRVZCUVdsQ0xFZEJRV3BDTEVWQlFYTkNPMEZCUTNwRExHZERRVUZOTEdkQ1FVRm5RaXhGUVVGRkxGRkJRVVlzUlVGQmRFSTdRVUZEUVN3clEwRkJiVUlzU1VGQmJrSXNRMEZCZDBJc1lVRkJlRUk3UVVGRFFTdzRRa0ZCUlN4UFFVRkdMRU5CUVZVc1IwRkJWaXhGUVVOTExFbEJSRXdzUTBGRFZTeFZRVUZETEZGQlFVUXNSVUZCWXp0QlFVTm9RaXg1UTBGQlV5eExRVUZVTEVOQlFXVXNTMEZCWml4SlFVRjNRaXhSUVVGNFFqdEJRVU5CTERoRFFVRmpMRTlCUVdRc1EwRkJjMElzVVVGQmRFSTdRVUZEU0N3MlFrRktUQ3hGUVV0TExFbEJURXdzUTBGTFZTeFZRVUZETEV0QlFVUXNSVUZCVnp0QlFVTmlMRGhEUVVGakxFMUJRV1FzUTBGQmNVSXNTMEZCY2tJN1FVRkRTQ3cyUWtGUVREdEJRVkZJTEhsQ1FWaEVPMEZCV1VnN08wRkJSVVFzZDBKQlFVa3NVMEZCVXl4SlFVRmlMRVZCUVcxQ08wRkJRMllzTUVKQlFVVXNTVUZCUml4RFFVRlBMRk5CUVZNc1NVRkJhRUlzUlVGQmMwSXNWVUZCVlN4TFFVRldMRVZCUVdsQ0xFZEJRV3BDTEVWQlFYTkNPMEZCUTNoRExHZERRVUZOTEdWQlFXVXNSVUZCUlN4UlFVRkdMRVZCUVhKQ08wRkJRMEVzSzBOQlFXMUNMRWxCUVc1Q0xFTkJRWGRDTEZsQlFYaENPMEZCUTBFc09FSkJRVVVzUjBGQlJpeERRVUZOTEVkQlFVNHNSVUZEU3l4SlFVUk1MRU5CUTFVc1ZVRkJReXhSUVVGRUxFVkJRV003UVVGRGFFSXNlVU5CUVZNc1NVRkJWQ3hEUVVGakxFdEJRV1FzU1VGQmRVSXNVVUZCZGtJN1FVRkRRU3cyUTBGQllTeFBRVUZpTEVOQlFYRkNMRkZCUVhKQ08wRkJRMGdzTmtKQlNrd3NSVUZMU3l4SlFVeE1MRU5CUzFVc1ZVRkJReXhMUVVGRUxFVkJRVmM3UVVGRFlpdzJRMEZCWVN4TlFVRmlMRU5CUVc5Q0xFdEJRWEJDTzBGQlEwZ3NOa0pCVUV3N1FVRlJTQ3g1UWtGWVJEdEJRVmxJT3p0QlFVVkVMSGRDUVVGSkxGTkJRVk1zVVVGQllpeEZRVUYxUWp0QlFVTnVRaXcyUWtGQlN5eEpRVUZKTEVsQlFWUXNTVUZCYVVJc1UwRkJVeXhSUVVFeFFpeEZRVUZ2UXp0QlFVTm9ReXhuUTBGQlRTeFhRVUZYTEZOQlFWTXNVVUZCVkN4RFFVRnJRaXhKUVVGc1FpeERRVUZxUWp0QlFVTkJMSEZEUVVGVExGRkJRVlFzUTBGQmEwSXNTVUZCYkVJc1NVRkJNRUlzU1VGQlNTeEpRVUZKTEZsQlFVb3NRMEZCYVVJc1YwRkJja0lzUTBGQmFVTXNTVUZCYWtNc1JVRkJkVU1zVVVGQmRrTXNRMEZCTVVJN1FVRkRTRHRCUVVOS096dEJRVVZFTEhOQ1FVRkZMRWxCUVVZc1EwRkJUeXhMUVVGUUxFTkJRV0VzVTBGQllpeEZRVUYzUWl4clFrRkJlRUlzUlVGRFN5eEpRVVJNTEVOQlExVXNVMEZCVXl4UFFVUnVRaXhGUVVWTExFbEJSa3dzUTBGRlZTeFZRVUZETEV0QlFVUXNSVUZCVnp0QlFVTmlMR2xEUVVGVExFMUJRVlFzUTBGQlowSXNTVUZCU1N4TFFVRktMRzFEUVVFd1F5eFRRVUZUTEVsQlFXNUVMRk5CUVRaRUxFdEJRVGRFTEVOQlFXaENPMEZCUTBnc2NVSkJTa3c3UVVGTFNDeHBRa0V6UTBRc1EwRXlRMFVzVDBGQlR5eFRRVUZRTEVWQlFXdENPMEZCUTJoQ0xEWkNRVUZUTEUxQlFWUXNRMEZCWjBJc1UwRkJhRUk3UVVGRFFTeDNRa0ZCU1N4SlFVRktMRU5CUVZNc1MwRkJWQ3hEUVVGbExFdEJRV1lzYzBOQlFYZEVMRXRCUVVzc1NVRkJOMFFzVTBGQmRVVXNVMEZCZGtVN1FVRkRRU3h6UWtGQlJTeE5RVUZHTEVWQlFWVXNUMEZCVml4RFFVRnJRaXhQUVVGc1FpeEZRVUV5UWl4RFFVRkRMRk5CUVVRc1EwRkJNMElzUlVGSVowSXNRMEZIZVVJN1FVRkROVU03TzBGQlJVUXNkVUpCUVU4c1UwRkJVeXhQUVVGVUxFVkJRVkE3UVVGRFNEdEJRWFpMU1RzN1FVRkJRVHRCUVVGQk96dEJRVEJMVkN4UlFVRkpMRmxCUVVvc1EwRkJhVUlzVFVGQmFrSXNSMEZCTUVJc1RVRkJNVUk3UVVGRFNDeERRVE5MUkRzN096czdPenM3TzBGRFZrRTdPenM3T3pzN096czdRVUZWUVN4RFFVRkRMRmxCUVZrN08wRkJSVlE3TzBGQlJVRTdPenM3T3pzN096dEJRVXBUTEZGQldVZ3NVMEZhUnp0QlFXRk1PenM3T3pzN08wRkJUMEVzTWtKQlFWa3NTVUZCV2l4RlFVRnJRaXhOUVVGc1FpeEZRVUV3UWl4WFFVRXhRaXhGUVVGMVF6dEJRVUZCT3p0QlFVTnVReXhwUWtGQlN5eEpRVUZNTEVkQlFWa3NTVUZCV2p0QlFVTkJMR2xDUVVGTExFMUJRVXdzUjBGQll5eE5RVUZrTzBGQlEwRXNhVUpCUVVzc1YwRkJUQ3hIUVVGdFFpeFhRVUZ1UWl4RFFVaHRReXhEUVVkSU8wRkJRMjVET3p0QlFVVkVPenM3T3pzN096czdPMEZCTVVKTE8wRkJRVUU3UVVGQlFTeHRRMEZyUTBVN1FVRkRTQ3h2UWtGQlRTeHhRa0ZCY1VJc1JVRkJNMEk3TzBGQlJFYzdRVUZCUVR0QlFVRkJPenRCUVVGQk8wRkJSMGdzZVVOQlFYVkNMRXRCUVVzc1YwRkJOVUlzT0VoQlFYbERPMEZCUVVFc05FSkJRV2hETEZWQlFXZERPenRCUVVOeVF5dzJRa0ZCU3l4WFFVRlhMRWxCUVdoQ0xFbEJRWGRDTEVsQlFVa3NTVUZCU1N4WlFVRktMRU5CUVdsQ0xGVkJRWEpDTEVOQlFXZERMRmRCUVZjc1NVRkJNME1zUlVGQmFVUXNWMEZCVnl4VFFVRTFSQ3hGUVVGMVJTeEpRVUYyUlN4RFFVRjRRanRCUVVOQkxEUkNRVUZOTEZkQlFWY3NTMEZCU3l4WFFVRlhMRWxCUVdoQ0xFVkJRWE5DTEVsQlFYUkNMRVZCUVdwQ08wRkJRMEVzTWtOQlFXMUNMRWxCUVc1Q0xFTkJRWGRDTEZGQlFYaENPMEZCUTBnN1FVRlFSVHRCUVVGQk8wRkJRVUU3UVVGQlFUdEJRVUZCTzBGQlFVRTdRVUZCUVR0QlFVRkJPMEZCUVVFN1FVRkJRVHRCUVVGQk8wRkJRVUU3UVVGQlFUdEJRVUZCT3p0QlFWTklMSFZDUVVGUExHMUNRVUZ0UWl4TlFVRnVRaXhIUVVFMFFpeEZRVUZGTEVsQlFVWXNRMEZCVHl4TFFVRlFMRU5CUVdFc1UwRkJZaXhGUVVGM1FpeHJRa0ZCZUVJc1JVRkJORU1zVDBGQk5VTXNSVUZCTlVJc1IwRkJiMFlzUlVGQlJTeFJRVUZHTEVkQlFXRXNUMEZCWWl4RlFVRXpSanRCUVVOSU8wRkJOVU5KT3p0QlFVRkJPMEZCUVVFN08wRkJLME5VTEZGQlFVa3NXVUZCU2l4RFFVRnBRaXhUUVVGcVFpeEhRVUUyUWl4VFFVRTNRanRCUVVOSUxFTkJhRVJFT3pzN096dEJRMVpCT3pzN096czdPenM3TzBGQlZVRTdPenM3T3pzN096dEJRVk5CTEZOQlFWTXNaMEpCUVZRc1EwRkJNRUlzYTBKQlFURkNMRVZCUVRoRExGbEJRVms3TzBGQlJYUkVPenRCUVVWQkxGRkJRVWtzU1VGQlNTeEpRVUZLTEVOQlFWTXNUVUZCVkN4RFFVRm5RaXhIUVVGb1FpeERRVUZ2UWl4aFFVRndRaXhOUVVGMVF5eFpRVUV6UXl4RlFVRjVSRHRCUVVOeVJEdEJRVU5JT3p0QlFVVkVMRkZCUVVrc1MwRkJTaXhIUVVGWkxGbEJRVms3UVVGRGNFSXNXVUZCVFN3clFrRkRSU3hKUVVGSkxFbEJRVW9zUTBGQlV5eE5RVUZVTEVOQlFXZENMRWRCUVdoQ0xFTkJRVzlDTEZOQlFYQkNMRU5CUkVZc09EbERRVUZPT3p0QlFYZENRU3haUVVGSkxFbEJRVW9zUTBGQlV5eExRVUZVTEVOQlFXVXNTVUZCWml4RFFVRnZRaXhKUVVGd1FqdEJRVU5JTEV0Qk1VSkVPMEZCTWtKSUxFTkJia05FT3pzN096dEJRMjVDUVRzN096czdPenM3T3p0QlFWVkJMRWxCUVVrc1NVRkJTaXhEUVVGVExFMUJRVlFzUjBGQmEwSXNTVUZCU1N4SlFVRktMRU5CUVZNc1RVRkJWQ3hKUVVGdFFpeEZRVUZ5UXpzN1FVRkZRVHM3T3pzN096czdPenM3T3p0QlFXRkRMRmRCUVZVc1QwRkJWaXhGUVVGdFFqczdRVUZGYUVJN08wRkJSVUU3UVVGRFFUdEJRVU5CT3p0QlFVVkJMRkZCUVUwc1UwRkJVenRCUVVOWU96czdPenRCUVV0QkxHbENRVUZUTEV0QlRrVTdPMEZCVVZnN096czdPenM3UVVGUFFTeG5Ra0ZCVVN4SlFXWkhPenRCUVdsQ1dEczdPenM3T3pzN08wRkJVMEVzYVVKQlFWTXNTVUV4UWtVN08wRkJORUpZT3pzN096czdPMEZCVDBFc2IwSkJRVmtzU1VGdVEwUTdPMEZCY1VOWU96czdPenM3T3pzN1FVRlRRU3h4UWtGQllTeEpRVGxEUmpzN1FVRm5SRmc3T3pzN096czdRVUZQUVN4dFFrRkJWeXhKUVhaRVFUczdRVUY1UkZnN096czdPenM3T3p0QlFWTkJMSEZDUVVGaExGbEJiRVZHT3p0QlFXOUZXRHM3T3pzN096czdPMEZCVTBFc2MwSkJRV01zUlVFM1JVZzdPMEZCSzBWWU96czdPenM3T3p0QlFWRkJMSEZDUVVGaExFVkJka1pHT3p0QlFYbEdXRHM3T3pzN1FVRkxRU3h6UWtGQll5eEpRVGxHU0RzN1FVRm5SMWc3T3pzN096dEJRVTFCTEdWQlFVOHNVVUYwUjBrN08wRkJkMGRZT3pzN096czdPenM3UVVGVFFTeHRRa0ZCVnl4SlFXcElRVHM3UVVGdFNGZzdPenM3TzBGQlMwRXNiVUpCUVZjc1MwRjRTRUU3TzBGQk1FaFlPenM3T3p0QlFVdEJMR2RDUVVGVExHbEZRVUZwUlN4SlFVRnFSU3hEUVVGelJTeFZRVUZWTEZOQlFXaEdMRU5CTDBoRk96dEJRV2xKV0RzN096czdRVUZMUVN4bFFVRlRMR3RDUVVGclFpeE5RVUZ1UWl4SlFVRTRRaXhQUVVGUExGbEJRWEpETEVsQlFYRkVMRTlCUVU4c2FVSkJRVGRFTEVkQlFXdEdMRWxCUVd4R0xFZEJRWGxHTEV0QmRFbHlSanM3UVVGM1NWZzdPenM3T3pzN1FVRlBRU3h4UWtGQllTd3dRMEV2U1VZN08wRkJhVXBZT3pzN096czdPenRCUVZGQkxHMUNRVUZYTEVWQmVrcEJPenRCUVRKS1dEczdPenM3T3pzN1FVRlJRU3h2UWtGQldTeEZRVzVMUkRzN1FVRnhTMWc3T3pzN08wRkJTMEVzYVVKQlFWTXNWMEZCVnl4UlFVRlJMRmxCUVc1Q0xFbEJRVzFETEZGQlFWRXNVMEV4UzNwRE96dEJRVFJMV0RzN096czdPenRCUVU5QkxHRkJRVXM3UVVGdVRFMHNTMEZCWmpzN1FVRnpURUU3T3pzN08wRkJTMEVzVVVGQlRTeFpRVUZaTEVOQlEyUXNVMEZFWXl4RlFVVmtMRmxCUm1Nc1JVRkhaQ3hoUVVoakxFTkJRV3hDT3p0QlFVMUJPMEZCUTBFN1FVRkRRVHM3UVVGRlFUczdPenM3T3p0QlFVOUJMRmxCUVZFc1IwRkJVaXhIUVVGakxGVkJRVlVzU1VGQlZpeEZRVUZuUWp0QlFVTXhRaXhaUVVGSkxFOUJRVThzVjBGQlVDeExRVUYxUWl4WlFVRjJRaXhKUVVGMVF5eFZRVUZWTEZGQlFWWXNRMEZCYlVJc1NVRkJia0lzUTBGQk0wTXNSVUZCY1VVN1FVRkRha1VzYlVKQlFVOHNTVUZCVUR0QlFVTklPenRCUVVWRUxHVkJRVThzVDBGQlR5eEpRVUZRTEVOQlFWQTdRVUZEU0N4TFFVNUVPenRCUVZGQk96czdPenM3T3pzN096dEJRVmRCTEZsQlFWRXNTVUZCVWl4SFFVRmxMRlZCUVZVc2NVSkJRVllzUlVGQmFVTTdRVUZETlVNc1pVRkJUeXhYUVVGUUxFZEJRWEZDTEhOQ1FVRnpRaXhYUVVFelF6dEJRVU5CTEdWQlFVOHNUVUZCVUN4SFFVRm5RaXh6UWtGQmMwSXNUVUZCZEVJc1EwRkJOa0lzVDBGQk4wSXNRMEZCY1VNc1RVRkJja01zUlVGQk5rTXNSVUZCTjBNc1EwRkJhRUlzUTBGR05FTXNRMEZGYzBJN08wRkJSV3hGTEZsQlFVa3NUMEZCVHl4WFFVRlFMRXRCUVhWQ0xHRkJRVE5DTEVWQlFUQkRPMEZCUTNSRExHMUNRVUZQTEZOQlFWQXNSMEZCYlVJc1MwRkJia0k3UVVGRFFTeHRRa0ZCVHl4UlFVRlFMRWRCUVd0Q0xFdEJRV3hDTzBGQlEwRXNiVUpCUVU4c1MwRkJVQ3hIUVVGbExFOUJRV1k3UVVGRFNEczdRVUZGUkN4WlFVRkpMSE5DUVVGelFpeFRRVUYwUWl4TFFVRnZReXhUUVVGNFF5eEZRVUZ0UkR0QlFVTXZReXh0UWtGQlR5eFRRVUZRTEVkQlFXMUNMSE5DUVVGelFpeFRRVUYwUWl4RFFVRm5ReXhQUVVGb1F5eERRVUYzUXl4TlFVRjRReXhGUVVGblJDeEZRVUZvUkN4RFFVRnVRanRCUVVOSUxGTkJSa1FzVFVGRlR6dEJRVU5JTEcxQ1FVRlBMRk5CUVZBc1IwRkJiVUlzVDBGQlR5eE5RVUZRTEVkQlFXZENMR2xDUVVGdVF6dEJRVU5JT3p0QlFVVkVMRmxCUVVrc2MwSkJRWE5DTEZsQlFYUkNMRXRCUVhWRExGTkJRVE5ETEVWQlFYTkVPMEZCUTJ4RUxHMUNRVUZQTEZsQlFWQXNSMEZCYzBJc2MwSkJRWE5DTEZsQlFUVkRPenRCUVVWQkxHbENRVUZMTEVsQlFVa3NWMEZCVkN4SlFVRjNRaXhQUVVGUExGbEJRUzlDTEVWQlFUWkRPMEZCUTNwRExHOUNRVUZKTEVsQlFVb3NRMEZCVXl4SlFVRlVMRU5CUVdNc1ZVRkJaQ3hEUVVGNVFpeFhRVUY2UWl4RlFVRnpReXhQUVVGUExGbEJRVkFzUTBGQmIwSXNWMEZCY0VJc1EwRkJkRU03UVVGRFNEdEJRVU5LT3p0QlFVVkVMRmxCUVVrc2MwSkJRWE5DTEZkQlFYUkNMRXRCUVhORExGTkJRVEZETEVWQlFYRkVPMEZCUTJwRUxHMUNRVUZQTEZkQlFWQXNSMEZCY1VJc2MwSkJRWE5DTEZkQlFUTkRPMEZCUTBnc1UwRkdSQ3hOUVVWUE8wRkJRMGdzYlVKQlFVOHNWMEZCVUN4SFFVRnhRaXhEUVVOcVFpeEZRVUZETEUxQlFVMHNZVUZCVUN4RlFVRnpRaXhYUVVGWExGbEJRV3BETEVWQlJHbENMRVZCUldwQ0xFVkJRVU1zVFVGQlRTeFpRVUZRTEVWQlFYRkNMRmRCUVZjc1YwRkJhRU1zUlVGR2FVSXNSVUZIYWtJc1JVRkJReXhOUVVGTkxGTkJRVkFzUlVGQmEwSXNWMEZCVnl4UlFVRTNRaXhGUVVocFFpeERRVUZ5UWp0QlFVdElPenRCUVVWRUxGbEJRVWtzYzBKQlFYTkNMRlZCUVhSQ0xFdEJRWEZETEZOQlFYcERMRVZCUVc5RU8wRkJRMmhFTEcxQ1FVRlBMRlZCUVZBc1IwRkJiMElzYzBKQlFYTkNMRlZCUVRGRE8wRkJRMGc3TzBGQlJVUXNXVUZCU1N4elFrRkJjMElzVDBGQmRFSXNTMEZCYTBNc1UwRkJkRU1zUlVGQmFVUTdRVUZETjBNc1owSkJRVWtzU1VGQlNpeERRVUZUTEV0QlFWUXNRMEZCWlN4SlFVRm1MRU5CUVc5Q0xITkdRVU5rTERKQ1FVUk9PMEZCUlVFc2JVSkJRVThzVDBGQlVDeEhRVUZwUWl4elFrRkJjMElzVDBGQmRFSXNRMEZCT0VJc1QwRkJPVUlzUTBGQmMwTXNUVUZCZEVNc1JVRkJPRU1zUlVGQk9VTXNRMEZCYWtJN1FVRkRRU3h0UWtGQlR5eE5RVUZRTEVkQlFXZENMRTlCUVU4c1RVRkJVQ3hKUVVGcFFpeFBRVUZQTEU5QlFYaERMRU5CU2paRExFTkJTVWs3UVVGRGNFUTdPMEZCUlVRc1dVRkJTU3h6UWtGQmMwSXNWMEZCZEVJc1MwRkJjME1zVTBGQk1VTXNSVUZCY1VRN1FVRkRha1FzWjBKQlFVa3NTVUZCU2l4RFFVRlRMRXRCUVZRc1EwRkJaU3hKUVVGbUxFTkJRVzlDTERCR1FVTmtMQ3RDUVVST08wRkJSVUVzYlVKQlFVOHNWMEZCVUN4SFFVRnhRaXh6UWtGQmMwSXNWMEZCTTBNN1FVRkRTRHM3UVVGRlJDeFpRVUZKTEhOQ1FVRnpRaXhOUVVGMFFpeExRVUZwUXl4VFFVRnlReXhGUVVGblJEdEJRVU0xUXl4dFFrRkJUeXhOUVVGUUxFZEJRV2RDTEhOQ1FVRnpRaXhOUVVGMFF6dEJRVU5JT3p0QlFVVkVMRmxCUVVrc2MwSkJRWE5DTEZsQlFYUkNMRXRCUVhWRExGTkJRVE5ETEVWQlFYTkVPMEZCUTJ4RUxHMUNRVUZQTEZsQlFWQXNSMEZCYzBJc2MwSkJRWE5DTEZsQlFUVkRPMEZCUTBnN08wRkJSVVFzV1VGQlNTeFRRVUZUTEdOQlFWUXNRMEZCZDBJc1UwRkJlRUlzVFVGQmRVTXNTVUZCZGtNc1NVRkRSeXhUUVVGVExHTkJRVlFzUTBGQmQwSXNVMEZCZUVJc1JVRkJiVU1zV1VGQmJrTXNRMEZCWjBRc2FVSkJRV2hFTEVOQlJGQXNSVUZETWtVN1FVRkRka1VzYTBOQlFYTkNMRk5CUVhSQ0xFZEJRV3RETEZOQlFWTXNZMEZCVkN4RFFVRjNRaXhUUVVGNFFpeEZRVUZ0UXl4WlFVRnVReXhEUVVGblJDeHBRa0ZCYUVRc1EwRkJiRU03UVVGRFNEczdRVUZGUkN4WlFVRkpMSE5DUVVGelFpeFRRVUYwUWl4TFFVRnZReXhUUVVGNFF5eEZRVUZ0UkR0QlFVTXZReXh0UWtGQlR5eFRRVUZRTEVkQlFXMUNMSE5DUVVGelFpeFRRVUY2UXp0QlFVTklPenRCUVVWRUxGbEJRVWtzYzBKQlFYTkNMRlZCUVhSQ0xFdEJRWEZETEZOQlFYcERMRVZCUVc5RU8wRkJRMmhFTEcxQ1FVRlBMRlZCUVZBc1IwRkJiMElzYzBKQlFYTkNMRlZCUVRGRE8wRkJRMGc3TzBGQlJVUXNXVUZCU1N4elFrRkJjMElzVTBGQmRFSXNTMEZCYjBNc1UwRkJlRU1zUlVGQmJVUTdRVUZETDBNc2JVSkJRVThzVTBGQlVDeEhRVUZ0UWl4elFrRkJjMElzVTBGQmVrTTdRVUZEU0RzN1FVRkZSQ3haUVVGSkxITkNRVUZ6UWl4SFFVRjBRaXhMUVVFNFFpeFRRVUZzUXl4RlFVRTJRenRCUVVONlF5eHRRa0ZCVHl4SFFVRlFMRWRCUVdFc2MwSkJRWE5DTEVkQlFXNURPMEZCUTBnN08wRkJSVVE3UVVGRFFTeFpRVUZOTEhGQ1FVRnhRanRCUVVOMlFpeHRRa0ZCVHl4WlFVUm5RanRCUVVWMlFpeHBRa0ZCU3l4WFFVWnJRanRCUVVkMlFpeHJRa0ZCVFR0QlFVaHBRaXhUUVVFelFqczdRVUZOUVN4WlFVRk5MSFZDUVVGMVFqdEJRVU42UWl4dFFrRkJUeXhoUVVSclFqdEJRVVY2UWl4cFFrRkJTeXhYUVVadlFqdEJRVWQ2UWl4clFrRkJUVHRCUVVodFFpeFRRVUUzUWpzN1FVRk5RU3hsUVVGUExGZEJRVkFzUjBGQmMwSXNUMEZCVHl4cFFrRkJVaXhIUVVFMlFpeHZRa0ZCTjBJc1IwRkJiMFFzYTBKQlFYcEZPenRCUVVWQk8wRkJRMEVzWVVGQlN5eEpRVUZKTEV0QlFWUXNTVUZCYTBJc2MwSkJRWE5DTEZGQlFYaERMRVZCUVd0RU8wRkJRemxETEdkQ1FVRkpMRWxCUVVvc1EwRkJVeXhSUVVGVUxFTkJRV3RDTEVkQlFXeENMRU5CUVhOQ0xFdEJRWFJDTEVWQlFUWkNMSE5DUVVGelFpeFJRVUYwUWl4RFFVRXJRaXhMUVVFdlFpeERRVUUzUWp0QlFVTklPenRCUVVWRU8wRkJRMEVzV1VGQlNTeEpRVUZLTEVOQlFWTXNZVUZCVkN4RFFVRjFRaXhKUVVGMlFqczdRVUZGUVR0QlFVTkJMR1ZCUVU4c1QwRkJUeXh4UWtGQlpEdEJRVU5JTEV0QmVrZEVPMEZCTWtkSUxFTkJiRlpCTEVWQmExWkRMRWxCUVVrc1NVRkJTaXhEUVVGVExFMUJiRlpXTEVOQlFVUTdPenM3TzBGRGVrSkJPenM3T3pzN096czdPMEZCVlVFc1NVRkJTU3hKUVVGS0xFTkJRVk1zUzBGQlZDeEhRVUZwUWl4SlFVRkpMRWxCUVVvc1EwRkJVeXhMUVVGVUxFbEJRV3RDTEVWQlFXNURPenRCUVVWQk96czdPenM3T3p0QlFWRkRMRmRCUVZVc1QwRkJWaXhGUVVGdFFqdEJRVU5vUWpzN1FVRkZRVHRCUVVOQk8wRkJRMEU3TzBGQlJVRTdPenM3UVVGSFFTeFJRVUZOTEdGQlFXRXNUMEZCYmtJN08wRkJSVUU3T3p0QlFVZEJMRkZCUVUwc1dVRkJXU3hOUVVGc1FqczdRVUZGUVRzN08wRkJSMEVzVVVGQlRTeFhRVUZYTEV0QlFXcENPenRCUVVWQk96czdRVUZIUVN4UlFVRk5MRmxCUVZrc1RVRkJiRUk3TzBGQlJVRTdPenRCUVVkQkxGRkJRVTBzWVVGQllTeFBRVUZ1UWpzN1FVRkZRVHM3TzBGQlIwRXNVVUZCVFN4aFFVRmhMRTlCUVc1Q096dEJRVVZCT3pzN1FVRkhRU3hSUVVGTkxHTkJRV01zVVVGQmNFSTdPMEZCUlVFN096dEJRVWRCTEZGQlFVMHNZMEZCWXl4UlFVRndRanM3UVVGRlFUczdPenM3UVVGTFFTeFJRVUZOTEZOQlFWTXNRMEZEV0N4VlFVUlhMRVZCUlZnc1UwRkdWeXhGUVVkWUxGRkJTRmNzUlVGSldDeFRRVXBYTEVWQlMxZ3NWVUZNVnl4RlFVMVlMRlZCVGxjc1JVRlBXQ3hYUVZCWExFVkJVVmdzVjBGU1Z5eERRVUZtT3p0QlFWZEJPMEZCUTBFN1FVRkRRVHM3UVVGRlFUczdPenM3T3p0QlFVOUJMR0ZCUVZNc2RVSkJRVlFzUjBGQmJVTTdRVUZETDBJc1dVRkJUU3hUUVVGVExGTkJRVk1zWVVGQlZDeERRVUYxUWl4UlFVRjJRaXhEUVVGbU8wRkJRMEVzV1VGQlRTeFZRVUZWTEZOQlFWTXNZVUZCVkN4RFFVRjFRaXgxUWtGQmRrSXNRMEZCYUVJN08wRkJSVUVzV1VGQlNTeFBRVUZQTEZWQlFWQXNTVUZCY1VJc1EwRkJReXhSUVVGUkxGTkJRVklzUTBGQmEwSXNVVUZCYkVJc1EwRkJNa0lzWVVGQk0wSXNRMEZCTVVJc1JVRkJjVVU3UVVGRGFrVXNaMEpCUVUwc1RVRkJUU3hUUVVGVExHRkJRVlFzUTBGQmRVSXNTMEZCZGtJc1EwRkJXanRCUVVOQkxHMUNRVUZQTEUxQlFWQXNSMEZCWjBJc1QwRkJUeXhMUVVGUUxFZEJRV1VzUlVGQkwwSTdRVUZEUVN4blFrRkJUU3hOUVVGTkxFOUJRVThzVlVGQlVDeERRVUZyUWl4SlFVRnNRaXhEUVVGYU8wRkJRMEVzWjBKQlFVa3NUVUZCU2l4SFFVRmhMRmxCUVZrN1FVRkJSVHRCUVVOMlFpeHZRa0ZCU1N4VFFVRktMRU5CUVdNc1NVRkJaQ3hGUVVGdlFpeERRVUZ3UWl4RlFVRjFRaXhEUVVGMlFqdEJRVU5CTEc5Q1FVRkpMRmRCUVVvc1IwRkJhMElzU1VGQmJFSTdRVUZEUVN4dlFrRkJTU3hUUVVGS0xFZEJRV2RDTEZOQlFXaENPMEZCUTBFc2IwSkJRVWtzU1VGQlNpeERRVUZUTEVOQlFWUXNSVUZCV1N4RFFVRmFMRVZCUVdVc1JVRkJaaXhGUVVGdFFpeEZRVUZ1UWp0QlFVTkJMRzlDUVVGSkxFbEJRVW83UVVGRFFTeDNRa0ZCVVN4SlFVRlNMRWRCUVdVc1QwRkJUeXhUUVVGUUxFTkJRV2xDTEZkQlFXcENMRU5CUVdZN1FVRkRRU3gzUWtGQlVTeFRRVUZTTEVsQlFYRkNMR0ZCUVhKQ08wRkJRMGdzWVVGU1JEdEJRVk5CTEdkQ1FVRkpMRWRCUVVvc1IwRkJWU3hSUVVGUkxFbEJRV3hDTzBGQlEwZzdRVUZEU2pzN1FVRkZSRHM3T3pzN1FVRkxRU3hoUVVGVExHMUNRVUZVTEVkQlFTdENPMEZCUXpOQ0xGbEJRVWtzU1VGQlNTeEpRVUZLTEVOQlFWTXNUVUZCVkN4RFFVRm5RaXhIUVVGb1FpeERRVUZ2UWl4aFFVRndRaXhOUVVGMVF5eFpRVUV6UXl4RlFVRjVSRHRCUVVOeVJEdEJRVU5CTEdkQ1FVRkpMRWxCUVVrc1NVRkJTaXhEUVVGVExFdEJRVlFzUzBGQmJVSXNVMEZCZGtJc1JVRkJhME03UVVGRE9VSXNiMEpCUVVrc1NVRkJTaXhEUVVGVExFdEJRVlFzUTBGQlpTeExRVUZtTEVOQlFYRkNMSGxDUVVGeVFpeEZRVUZuUkN4VFFVRm9SRHRCUVVOSUxHRkJSa1FzVFVGRlR6dEJRVU5JTEhkQ1FVRlJMRWRCUVZJc1EwRkJXU3g1UWtGQldpeEZRVUYxUXl4VFFVRjJRenRCUVVOSU96dEJRVVZFTzBGQlEwRXNaMEpCUVUwc1VVRkJVU3hsUVVGa08wRkJRMEVzWjBKQlFVa3NVVUZCVVN4UFFVRlBMRkZCUVZBc1EwRkJaMElzUzBGQk5VSTdRVUZEUVN4blFrRkJTU3hoUVVGaExFTkJRV3BDT3p0QlFVVkJPMEZCUTBFc1owSkJRVWtzVFVGQlRTeExRVUZPTEVOQlFWa3NTMEZCV2l4TlFVRjFRaXhKUVVFelFpeEZRVUZwUXp0QlFVTTNRaXcyUWtGQllTeFRRVUZUTEUxQlFVMHNTMEZCVGl4RFFVRlpMRXRCUVZvc1JVRkJiVUlzUTBGQmJrSXNRMEZCVkN4RlFVRm5ReXhGUVVGb1F5eEpRVUZ6UXl4RFFVRnVSRHRCUVVOQkxIZENRVUZSTEUxQlFVMHNUMEZCVGl4RFFVRmpMRXRCUVdRc1JVRkJjVUlzUlVGQmNrSXNRMEZCVWp0QlFVTklPenRCUVVWRU8wRkJRMEVzYjBKQlFWRXNVVUZCVVN4VlFVRlNMRWRCUVhGQ0xFbEJRWEpDTEVkQlFUUkNMRXRCUVhCRE8wRkJRMEVzYlVKQlFVOHNVVUZCVUN4RFFVRm5RaXhMUVVGb1FpeEhRVUYzUWl4TFFVRjRRanM3UVVGRlFUdEJRVU5CTzBGQlEwZzdPMEZCUlVRc1pVRkJUeXhKUVVGUU8wRkJRMGc3TzBGQlJVUTdPenM3T3pzN08wRkJVVUVzWVVGQlV5eFJRVUZVTEVOQlFXdENMRTFCUVd4Q0xFVkJRVEJDTEVsQlFURkNMRVZCUVdkRE8wRkJRelZDTEZsQlFVMHNhMEpCUVd0Q0xFOUJRVThzVDBGQlVDeERRVUZsTEUxQlFXWXNRMEZCZUVJN1FVRkRRU3haUVVGTkxHdENRVUZyUWl4UFFVRlBMRTlCUVZBc1EwRkJaU3hKUVVGSkxFbEJRVW9zUTBGQlV5eE5RVUZVTEVOQlFXZENMRWRCUVdoQ0xFTkJRVzlDTEU5QlFYQkNMRU5CUVdZc1EwRkJlRUk3UVVGRFFTeFpRVUZKTEdkQ1FVRm5RaXhKUVVGd1FqczdRVUZGUVN4WlFVRkpMRzFDUVVGdFFpeGxRVUYyUWl4RlFVRjNRenRCUVVOd1F5dzBRa0ZCWjBJc1QwRkJUeXhYUVVGUUxFVkJRV2hDT3p0QlFVVkJMRzlDUVVGUkxHRkJRVkk3UVVGRFNTeHhRa0ZCU3l4UFFVRk1PMEZCUTBrc01FSkJRVTBzUzBGQlN5eFRRVUZNTEVOQlFXVXNTVUZCWml4RFFVRk9PMEZCUTBFN08wRkJSVW9zY1VKQlFVc3NVVUZCVER0QlFVTkpMSGRDUVVGTkxHOUNRVUZ2UWl4RlFVRkZMSEZDUVVGR0xFTkJRVEZDT3p0QlFVVkJMSGRDUVVGSkxFTkJRVU1zYTBKQlFXdENMRTFCUVhaQ0xFVkJRU3RDTzBGQlF6TkNMREJDUVVGRkxGTkJRVVlzUlVGRFN5eFJRVVJNTEVOQlEyTXNiMEpCUkdRc1JVRkZTeXhIUVVaTUxFTkJSVk03UVVGRFJDeHpRMEZCVlN4UFFVUlVPMEZCUlVRc2FVTkJRVXNzUTBGR1NqdEJRVWRFTEd0RFFVRk5MRU5CU0V3N1FVRkpSQ3gxUTBGQlZ5eExRVXBXTzBGQlMwUXNjME5CUVZVc1QwRk1WRHRCUVUxRUxITkRRVUZWTEU5QlRsUTdRVUZQUkN3MlEwRkJhVUlzVTBGUWFFSTdRVUZSUkN4dlEwRkJVU3hOUVZKUU8wRkJVMFFzYzBOQlFWVTdRVUZVVkN4NVFrRkdWQ3hGUVdGTExGRkJZa3dzUTBGaFl5eEZRVUZGTEUxQlFVWXNRMEZpWkR0QlFXTklPenRCUVVWRUxITkRRVUZyUWl4TlFVRnNRaXhEUVVGNVFpeFJRVUZSTEV0QlFVc3NVMEZCVEN4RFFVRmxMRWxCUVdZc1EwRkJVaXhIUVVFclFpeE5RVUY0UkR0QlFVTkJPenRCUVVWS08wRkJRMGtzZDBKQlFVa3NXVUZCV1N4VFFVRm9RaXhGUVVFeVFqdEJRVU4yUWl3clFrRkVkVUlzUTBGRFpqdEJRVU5ZT3p0QlFVVkVMSGRDUVVGSkxFOUJRVThzVVVGQlVTeGhRVUZTTEVWQlFYVkNMRXRCUVRsQ0xFdEJRWGRETEZWQlFYaERMRWxCUVhORUxFOUJRVThzVVVGQlVTeEhRVUZTTEVOQlFWa3NTMEZCYmtJc1MwRkJOa0lzVlVGQmRrWXNSVUZCYlVjN1FVRkRMMFlzTkVKQlFVa3NVVUZCVVN4aFFVRlNMRTFCUVRKQ0xGTkJRUzlDTEVWQlFUQkRPMEZCUTNSRExHOURRVUZSTEdGQlFWSXNSVUZCZFVJc1MwRkJka0lzUTBGQk5rSXNUMEZCTjBJc1JVRkJjME1zU1VGQmRFTTdRVUZEU0N4NVFrRkdSQ3hOUVVWUE8wRkJRMGdzYjBOQlFWRXNSMEZCVWl4RFFVRlpMRXRCUVZvc1EwRkJhMElzVDBGQmJFSXNSVUZCTWtJc1NVRkJNMEk3UVVGRFNEdEJRVU5LTEhGQ1FVNUVMRTFCVFU4N1FVRkRTQ3huUTBGQlVTeEhRVUZTTEVOQlFWa3NTVUZCV2p0QlFVTklPMEZCZWtOVU8wRkJNa05JTzBGQlEwbzdPMEZCUlVRN096dEJRVWRCTEZsQlFWRXNjMEpCUVZJc1IwRkJhVU1zV1VGQldUdEJRVU42UXl4bFFVRlBMRTlCUVZBc1IwRkJhVUlzYlVKQlFXcENPMEZCUTBnc1MwRkdSRHM3UVVGSlFUczdPenM3UVVGTFFTeFpRVUZSTEV0QlFWSXNSMEZCWjBJc1dVRkJXVHRCUVVONFFpeHBRa0ZCVXl4VlFVRlVMRVZCUVhGQ0xGTkJRWEpDTzBGQlEwZ3NTMEZHUkRzN1FVRkpRVHM3T3pzN1FVRkxRU3haUVVGUkxFbEJRVklzUjBGQlpTeFpRVUZaTzBGQlEzWkNMR2xDUVVGVExGTkJRVlFzUlVGQmIwSXNVMEZCY0VJN1FVRkRTQ3hMUVVaRU96dEJRVWxCT3pzN096dEJRVXRCTEZsQlFWRXNSMEZCVWl4SFFVRmpMRmxCUVZrN1FVRkRkRUlzYVVKQlFWTXNVVUZCVkN4RlFVRnRRaXhUUVVGdVFqdEJRVU5JTEV0QlJrUTdPMEZCU1VFN096czdPMEZCUzBFc1dVRkJVU3hKUVVGU0xFZEJRV1VzV1VGQldUdEJRVU4yUWl4cFFrRkJVeXhUUVVGVUxFVkJRVzlDTEZOQlFYQkNPMEZCUTBnc1MwRkdSRHM3UVVGSlFUczdPenM3UVVGTFFTeFpRVUZSTEV0QlFWSXNSMEZCWjBJc1dVRkJXVHRCUVVONFFpeHBRa0ZCVXl4VlFVRlVMRVZCUVhGQ0xGTkJRWEpDTzBGQlEwZ3NTMEZHUkRzN1FVRkpRVHM3T3pzN1FVRkxRU3haUVVGUkxFdEJRVklzUjBGQlowSXNXVUZCV1R0QlFVTjRRaXhwUWtGQlV5eFZRVUZVTEVWQlFYRkNMRk5CUVhKQ08wRkJRMGdzUzBGR1JEczdRVUZKUVRzN096czdRVUZMUVN4WlFVRlJMRTFCUVZJc1IwRkJhVUlzV1VGQldUdEJRVU42UWl4cFFrRkJVeXhYUVVGVUxFVkJRWE5DTEZOQlFYUkNPMEZCUTBnc1MwRkdSRHRCUVVsSUxFTkJkbEZCTEVWQmRWRkRMRWxCUVVrc1NVRkJTaXhEUVVGVExFdEJkbEZXTEVOQlFVUTdPenM3TzBGRGNFSkJPenM3T3pzN096czdPMEZCVlVFc1NVRkJTU3hKUVVGS0xFTkJRVk1zVFVGQlZDeEhRVUZyUWl4SlFVRkpMRWxCUVVvc1EwRkJVeXhOUVVGVUxFbEJRVzFDTEVWQlFYSkRPenRCUVVWQk96czdPenM3TzBGQlQwRXNRMEZCUXl4VlFVRlZMRTlCUVZZc1JVRkJiVUk3TzBGQlJXaENPenRCUVVWQk8wRkJRMEU3UVVGRFFUczdRVUZGUVRzN096czdPenM3T3pzN08wRkJWMEVzWVVGQlV5eGxRVUZVTEVOQlFYbENMRmRCUVhwQ0xFVkJRWE5ETzBGQlEyeERMRmxCUVVrc2NVSkJRWEZDTEVWQlFYcENPenRCUVVWQk8wRkJRMEVzV1VGQlNTeFJRVUZSTEUxQlFVMHNTVUZCVGl4RFFVRlhMRk5CUVZNc2IwSkJRVlFzUTBGQk9FSXNSMEZCT1VJc1EwRkJXQ3hEUVVGYU8wRkJRVUVzV1VGRFNTeFJRVUZSTEhGQ1FVUmFPenRCUVVwclF6dEJRVUZCTzBGQlFVRTdPMEZCUVVFN1FVRlBiRU1zYVVOQlFXbENMRXRCUVdwQ0xEaElRVUYzUWp0QlFVRkJMRzlDUVVGbUxFbEJRV1U3UVVGQlFUdEJRVUZCTzBGQlFVRTdPMEZCUVVFN1FVRkRjRUlzTUVOQlFYTkNMRTFCUVUwc1NVRkJUaXhEUVVGWExFdEJRVXNzVlVGQmFFSXNRMEZCZEVJc2JVbEJRVzFFTzBGQlFVRXNORUpCUVRGRExGTkJRVEJET3p0QlFVTXZReXcwUWtGQlNTeFZRVUZWTEVsQlFWWXNRMEZCWlN4TlFVRm1MRU5CUVhOQ0xFdEJRWFJDTEUxQlFXbERMRU5CUVVNc1EwRkJkRU1zUlVGQmVVTTdRVUZEY2tNN1FVRkRRU3huUTBGQlNTeFBRVUZQTEZWQlFWVXNTVUZCVml4RFFVRmxMRTlCUVdZc1EwRkJkVUlzUzBGQmRrSXNSVUZCT0VJc1NVRkJPVUlzUTBGQldEdEJRVUZCTEdkRFFVTkpMRk5CUVZNc1ZVRkJWU3hMUVVSMlFqczdRVUZIUVR0QlFVTkJMR2REUVVGSkxHMUNRVUZ0UWl4UFFVRnVRaXhEUVVFeVFpeEpRVUV6UWl4SlFVRnRReXhEUVVGRExFTkJRWGhETEVWQlFUSkRPMEZCUTNaRExHOURRVUZKTEU5QlFVOHNTVUZCVUN4RlFVRmhMRTFCUVdJc1MwRkJkMElzVFVGQk5VSXNSVUZCYjBNN1FVRkRhRU1zZDBOQlFVa3NTVUZCU2l4RFFVRlRMRXRCUVZRc1EwRkJaU3hMUVVGbUxHbEVRVUZ0UlN4SlFVRnVSVHRCUVVOQkxEQkRRVUZOTEVsQlFVa3NTMEZCU2l4RFFVRlZMRzlDUVVGclFpeEpRVUZzUWl3NFJVRkJWaXhEUVVGT08wRkJSVWc3UVVGRFJDeDVRMEZPZFVNc1EwRk5OMEk3UVVGRFlqczdRVUZGUkN4blEwRkJTU3hYUVVGWExFVkJRV1lzUlVGQmJVSTdRVUZEWml4elEwRkJUU3hKUVVGSkxGZEJRVW9zYVVOQlFUaERMRWxCUVRsRExFTkJRVTQ3UVVGRFNEczdRVUZGUkR0QlFVTkJPMEZCUTBFc1owTkJRVWtzVTBGQlV5eExRVUZpTEVWQlFXOUNPMEZCUVVVN1FVRkRiRUlzTUVSQlFUQkNMRTFCUVRGQ0xFVkJRV3RETEZkQlFXeERPMEZCUTBnc05rSkJSa1FzVFVGRlR6dEJRVU5JTEhWRFFVRlBMRWxCUVZBc1NVRkJaU3hKUVVGSkxFbEJRVWtzV1VGQlNpeERRVUZwUWl4VFFVRnlRaXhEUVVFclFpeEpRVUV2UWl4RlFVRnhReXhOUVVGeVF5eEZRVUUyUXl4WFFVRTNReXhEUVVGbU8wRkJRMGc3TzBGQlJVUXNLME5CUVcxQ0xFbEJRVzVDTEVOQlFYZENMRWxCUVhoQ08wRkJRMEVzYVVOQlFVc3NaVUZCVEN4RFFVRnhRaXhWUVVGVkxFbEJRUzlDTzBGQlEwZzdRVUZEU2p0QlFXaERiVUk3UVVGQlFUdEJRVUZCTzBGQlFVRTdRVUZCUVR0QlFVRkJPMEZCUVVFN1FVRkJRVHRCUVVGQk8wRkJRVUU3UVVGQlFUdEJRVUZCTzBGQlFVRTdRVUZCUVR0QlFXbERka0k3TzBGQlJVUTdRVUV4UTJ0RE8wRkJRVUU3UVVGQlFUdEJRVUZCTzBGQlFVRTdRVUZCUVR0QlFVRkJPMEZCUVVFN1FVRkJRVHRCUVVGQk8wRkJRVUU3UVVGQlFUdEJRVUZCTzBGQlFVRTdPMEZCTWtOc1F5eFpRVUZKTEcxQ1FVRnRRaXhOUVVGdVFpeExRVUU0UWl4RFFVRnNReXhGUVVGeFF6dEJRVU5xUXl4clFrRkJUU3hKUVVGSkxFdEJRVW9zUTBGQlZTd3JSVUZEV2l4dFFrRkVSU3hEUVVGT08wRkJSVWc3TzBGQlJVUTdRVUZEUVN4WlFVRkpMSEZDUVVGeFFpeEZRVUY2UWpzN1FVRnFSR3RETzBGQlFVRTdRVUZCUVRzN1FVRkJRVHRCUVVGQk8wRkJRVUVzYjBKQmJVUjZRaXhKUVc1RWVVSTdPMEZCYjBRNVFpeHZRa0ZCU1N4WFFVRlhMRVZCUVVVc1VVRkJSaXhGUVVGbU96dEJRVVZCTEcxRFFVRnRRaXhKUVVGdVFpeERRVUYzUWl4UlFVRjRRanM3UVVGRlFTeDFRa0ZCVHl4SlFVRlFMRVZCUTBzc1NVRkVUQ3hIUVVWTExFbEJSa3dzUTBGRlZTeFRRVUZUTEU5QlJtNUNMRVZCUjBzc1NVRklUQ3hEUVVkVkxGTkJRVk1zVFVGSWJrSXNSVUZKU3l4TlFVcE1MRU5CU1ZrN1FVRkJRU3d5UWtGQlRTeEpRVUZKTEVsQlFVb3NRMEZCVXl4TFFVRlVMRU5CUVdVc1NVRkJaaXhEUVVGdlFpeHZRMEZCY0VJc1JVRkJNRVFzU1VGQk1VUXNRMEZCVGp0QlFVRkJMR2xDUVVwYU8wRkJlRVE0UWpzN1FVRnRSR3hETEd0RFFVRnBRaXhyUWtGQmFrSXNiVWxCUVhGRE8wRkJRVUU3UVVGVmNFTTdPMEZCUlVRN1FVRXZSR3RETzBGQlFVRTdRVUZCUVR0QlFVRkJPMEZCUVVFN1FVRkJRVHRCUVVGQk8wRkJRVUU3UVVGQlFUdEJRVUZCTzBGQlFVRTdRVUZCUVR0QlFVRkJPMEZCUVVFN08wRkJaMFZzUXl4VlFVRkZMRWxCUVVZc1EwRkJUeXhMUVVGUUxFTkJRV0VzVTBGQllpeEZRVUYzUWl4clFrRkJlRUlzUlVGQk5FTXNUVUZCTlVNc1EwRkJiVVFzV1VGQldUdEJRVU16UkN4blFrRkJTU3hSUVVGUkxGTkJRVk1zVjBGQlZDeERRVUZ4UWl4UFFVRnlRaXhEUVVGYU8wRkJRMEVzYTBKQlFVMHNVMEZCVGl4RFFVRm5RaXgzUWtGQmFFSXNSVUZCTUVNc1NVRkJNVU1zUlVGQlowUXNTVUZCYUVRN1FVRkRRU3h4UWtGQlV5eGhRVUZVTEVOQlFYVkNMRTFCUVhaQ0xFVkJRU3RDTEdGQlFTOUNMRU5CUVRaRExFdEJRVGRETzBGQlEwRXNaMEpCUVVrc1NVRkJTaXhEUVVGVExGRkJRVlFzUTBGQmEwSXNSMEZCYkVJc1EwRkJjMElzV1VGQmRFSXNSVUZCYjBNc1NVRkJTU3hKUVVGS0xFZEJRVmNzVDBGQldDeEZRVUZ3UXp0QlFVTkJMR2RDUVVGSkxFbEJRVW9zUTBGQlV5eExRVUZVTEVOQlFXVXNTVUZCWml4RFFVRnZRaXd3UWtGQmNFSXNSVUZCWjBRc1NVRkJTU3hKUVVGS0xFTkJRVk1zVVVGQlZDeERRVUZyUWl4SFFVRnNRaXhEUVVGelFpeFpRVUYwUWl4SlFVTXhReXhKUVVGSkxFbEJRVW9zUTBGQlV5eFJRVUZVTEVOQlFXdENMRWRCUVd4Q0xFTkJRWE5DTEdOQlFYUkNMRU5CUkU0c1JVRkROa01zU1VGRU4wTTdRVUZGUVN4blFrRkJTU3hQUVVGUExFOUJRVmdzUlVGQmIwSTdRVUZEYUVJc2RVSkJRVThzVVVGQlVDeEhRVUZyUWl4SlFVRnNRanRCUVVOSU8wRkJRMG9zVTBGV1JEczdRVUZaUVN4bFFVRlBMR3RDUVVGUU8wRkJRMGc3TzBGQlJVUTdPenM3T3pzN096czdPenRCUVZsQkxHRkJRVk1zZVVKQlFWUXNRMEZCYlVNc1RVRkJia01zUlVGQk1rTXNWMEZCTTBNc1JVRkJkMFE3UVVGRGNFUXNXVUZCU1N4bFFVRmxMRWxCUVVrc1NVRkJTU3haUVVGS0xFTkJRV2xDTEZOQlFYSkNMRU5CUVN0Q0xFdEJRUzlDTEVWQlFYTkRMRTFCUVhSRExFVkJRVGhETEZkQlFUbERMRU5CUVc1Q08wRkJRMEVzV1VGQlNTeEpRVUZLTEVkQlFWY3NZVUZCWVN4SlFVRjRRanRCUVVOQkxGbEJRVWtzVFVGQlNpeEhRVUZoTEdGQlFXRXNUVUZCTVVJN1FVRkRRU3haUVVGSkxGZEJRVW9zUjBGQmEwSXNZVUZCWVN4WFFVRXZRanRCUVVOQkxGbEJRVWtzU1VGQlNpeEhRVUZYTEVsQlFVa3NXVUZCU2l4RFFVRnBRaXhUUVVGcVFpeERRVUV5UWl4VFFVRXpRaXhEUVVGeFF5eEpRVUZvUkR0QlFVTklPenRCUVVWRU8wRkJRMEU3UVVGRFFUczdRVUZGUVRzN096czdRVUZMUVN4WlFVRlJMRWxCUVZJc1IwRkJaU3hWUVVGVkxGZEJRVllzUlVGQmRVSTdRVUZEYkVNN1FVRkRRU3haUVVGSkxFbEJRVW9zUTBGQlV5eExRVUZVTEVOQlFXVXNjMEpCUVdZN08wRkJSVUU3UVVGRFFTeFpRVUZKTEhGQ1FVRnhRaXhuUWtGQlowSXNWMEZCYUVJc1EwRkJla0k3TzBGQlJVRTdRVUZEUVN4WlFVRkpMRWxCUVVvc1EwRkJVeXhMUVVGVUxFTkJRV1VzU1VGQlppeERRVUZ2UWl4elFrRkJjMElzYlVKQlFXMUNMRWxCUVc1Q0xFVkJRVEZET3p0QlFVVkJPMEZCUTBFc1dVRkJTU3hKUVVGS0xFTkJRVk1zVVVGQlZDeERRVUZyUWl4SFFVRnNRaXhEUVVGelFpeFpRVUYwUWl4RlFVRnZReXhyUWtGQmNFTTdRVUZEU0N4TFFWcEVPMEZCWTBnc1EwRTNTVVFzUlVFMlNVY3NTVUZCU1N4SlFVRktMRU5CUVZNc1RVRTNTVm83T3pzN08wRkRia0pCT3pzN096czdPenM3TzBGQlZVRTdPenM3T3pzN1FVRlBReXhoUVVGWk96dEJRVVZVT3p0QlFVVkJPMEZCUTBFN1FVRkRRVHM3UVVGRlFTeE5RVUZGTEVWQlFVWXNRMEZCU3l4TlFVRk1MRU5CUVZrN1FVRkRVaXg1UWtGQmFVSXNlVUpCUVZVc1ZVRkJWaXhGUVVGelFqdEJRVU51UXl4blFrRkJTU3hEUVVGRExGVkJRVVFzU1VGQlpTeGxRVUZsTEVWQlFXeERMRVZCUVhORE8wRkJRMnhETEhOQ1FVRk5MRWxCUVVrc1MwRkJTaXhEUVVGVkxEaERRVUZXTEVOQlFVNDdRVUZEU0RzN1FVRkZSQ3huUWtGQlRTeGpRVUZqTEVWQlFVVXNTVUZCUml4RlFVRlJMRWxCUVZJc1JVRkJjRUk3UVVGRFFTeG5Ra0ZCVFN4bFFVRmxMRVZCUVhKQ096dEJRVVZCTzBGQlEwRTdRVUZEUVN4alFVRkZMRWxCUVVZc1EwRkJUeXhYUVVGUUxFVkJRVzlDTEZWQlFWVXNSMEZCVml4RlFVRmxMRXRCUVdZc1JVRkJjMEk3UVVGRGRFTXNiMEpCUVVrc1NVRkJTU3hQUVVGS0xFTkJRVmtzVlVGQldpeE5RVUUwUWl4RFFVRTFRaXhKUVVGcFF5eEpRVUZKTEU5QlFVb3NRMEZCV1N4WFFVRlhMRmRCUVZnc1JVRkJXaXhOUVVFd1F5eERRVUV2UlN4RlFVRnJSanRCUVVNNVJTeDNRa0ZCU1N4VFFVRlRMRWxCUVVrc1RVRkJTaXhEUVVGWExGZEJRVmNzVFVGQmRFSXNRMEZCWWp0QlFVTkJMRFpDUVVGVExFOUJRVThzVFVGQlVDeERRVUZqTEVOQlFXUXNSVUZCYVVJc1EwRkJha0lzUlVGQmIwSXNWMEZCY0VJc1MwRkJiME1zVDBGQlR5eE5RVUZRTEVOQlFXTXNRMEZCWkN4RFFVRTNRenRCUVVOQkxHbERRVUZoTEUxQlFXSXNTVUZCZFVJc1MwRkJka0k3UVVGRFNEdEJRVU5LTEdGQlRrUTdPMEZCVVVFc2JVSkJRVThzV1VGQlVEdEJRVU5JTzBGQmNFSlBMRXRCUVZvN08wRkJkVUpCTzBGQlEwRTdRVUZEUVRzN1FVRkZRU3hSUVVGSkxFVkJRVVVzVlVGQlJpeExRVUZwUWl4VFFVRnlRaXhGUVVGblF6dEJRVU0xUWl4VlFVRkZMRlZCUVVZc1EwRkJZU3hSUVVGaUxFTkJRWE5DTEVWQlFYUkNMRWRCUVRKQ08wRkJRM1pDTEhkQ1FVRlpMRlZCUkZjN1FVRkZka0lzYzBKQlFWVXNRMEZHWVR0QlFVZDJRaXh0UWtGQlR6dEJRVWhuUWl4VFFVRXpRanRCUVV0QkxGVkJRVVVzVlVGQlJpeERRVUZoTEZkQlFXSXNRMEZCZVVJc1JVRkJSU3hWUVVGR0xFTkJRV0VzVVVGQllpeERRVUZ6UWl4RlFVRXZRenRCUVVOSU8wRkJRMG9zUTBFelEwRXNSMEZCUkRzN08wRkRha0pCT3pzN096czdPenM3TzBGQlZVRTdPMEZCUlVFN096czdPenM3T3pzN096czdPenM3T3pzN096czdPenM3T3pzN08wRkJOa0pCTzBGQlEwRTdPMEZCUTBFc1QwRkJUeXhIUVVGUUxFZEJRV0U3UVVGRFZDeFZRVUZOTEVWQlJFYzdRVUZGVkN4VlFVRk5MRVZCUmtjN1FVRkhWQ3hyUWtGQll6dEJRVWhNTEVOQlFXSTdPMEZCVFVFN1FVRkRRU3hUUVVGVExHZENRVUZVTEVOQlFUQkNMR3RDUVVFeFFpeEZRVUU0UXl4WlFVRlpPMEZCUTNSRUxGRkJRVWs3UVVGRFFUdEJRVU5CTEZsQlFVa3NUMEZCVHl4eFFrRkJVQ3hMUVVGcFF5eFRRVUZ5UXl4RlFVRm5SRHRCUVVNMVF5eHJRa0ZCVFN4SlFVRkpMRXRCUVVvc1EwRkJWU3h0UmtGRFdpeG5SVUZFUlN4RFFVRk9PMEZCUlVnN08wRkJSVVE3UVVGRFFTeFpRVUZKTEVsQlFVb3NRMEZCVXl4TlFVRlVMRU5CUVdkQ0xFbEJRV2hDTEVOQlFYRkNMRTlCUVU4c2NVSkJRVFZDT3p0QlFVVkJPMEZCUTBFc1dVRkJTU3hKUVVGS0xFTkJRVk1zVVVGQlZDeERRVUZyUWl4SFFVRnNRaXhEUVVGelFpeGpRVUYwUWl4RlFVRnpReXhMUVVGTExFZEJRVXdzUlVGQmRFTTdPMEZCUlVFN1FVRkRRU3haUVVGSkxFbEJRVW9zUTBGQlV5eE5RVUZVTEVOQlFXZENMRWxCUVdoQ0xFTkJRWEZDTEVsQlFVa3NTVUZCU2l4RFFVRlRMRTFCUVZRc1EwRkJaMElzUjBGQmFFSXNRMEZCYjBJc1lVRkJjRUlzUTBGQmNrSTdRVUZEU0N4TFFXWkVMRU5CWlVVc1QwRkJUeXhUUVVGUUxFVkJRV3RDTzBGQlEyaENMRmxCUVVrc1NVRkJTaXhEUVVGVExFdEJRVlFzUTBGQlpTeExRVUZtTEVOQlFYRkNMRzFFUVVGeVFpeEZRVUV3UlN4VFFVRXhSVHRCUVVOQk8wRkJRMEVzV1VGQlRTeFJRVUZSTEZOQlFWTXNWMEZCVkN4RFFVRnhRaXhoUVVGeVFpeERRVUZrTzBGQlEwRXNZMEZCVFN4bFFVRk9MRU5CUVhOQ0xFOUJRWFJDTEVWQlFTdENMRWxCUVM5Q0xFVkJRWEZETEVsQlFYSkRMRVZCUVRKRExGTkJRVE5ETzBGQlEwRXNaVUZCVHl4aFFVRlFMRU5CUVhGQ0xFdEJRWEpDTzBGQlEwZzdPMEZCUlVRc1kwRkJWU3hWUVVGV0xFTkJRWEZDTzBGQlEycENMR2RDUVVGUkxHZENRVUZWTEVkQlFWWXNSVUZCWlN4SFFVRm1MRVZCUVc5Q08wRkJRM2hDTEdkQ1FVRkpMRk5CUVVvc1EwRkJZeXhOUVVGa0xFTkJRWEZDTEdGQlFYSkNMRVZCUkhkQ0xFTkJRMkU3UVVGRGVFTTdRVUZJWjBJc1MwRkJja0k3UVVGTFFUdEJRVU5CTEdOQlFWVXNVMEZCVXl4blFrRkJWQ3hEUVVFd1FpeHBRa0ZCTVVJc1EwRkJWaXhGUVVGM1JEdEJRVU53UkN4eFFrRkJZU3gxUWtGQldUdEJRVU55UWpzN1FVRkZTRHRCUVVwdFJDeExRVUY0UkR0QlFVMUlMRU5CY0VORU96czdPenM3TzBGRGJFUkJPenM3T3pzN096czdPMEZCVlVFc1NVRkJTU3hKUVVGS0xFTkJRVk1zU1VGQlZDeEhRVUZuUWl4SlFVRkpMRWxCUVVvc1EwRkJVeXhKUVVGVUxFbEJRV2xDTEVWQlFXcERPenRCUVVWQk96czdPenM3T3pzN096czdPenM3T3pzN096dEJRVzlDUXl4WFFVRlZMRTlCUVZZc1JVRkJiVUk3TzBGQlJXaENPenRCUVVWQk8wRkJRMEU3UVVGRFFUczdRVUZGUVRzN096czdPMEZCUzBFc1VVRkJUU3hYUVVGWExFVkJRV3BDT3p0QlFVVkJPMEZCUTBFN1FVRkRRVHM3UVVGRlFUczdPenM3T3pzN1FVRlJRU3haUVVGUkxGVkJRVklzUjBGQmNVSXNWVUZCVlN4SlFVRldMRVZCUVdkQ0xGbEJRV2hDTEVWQlFUaENPMEZCUXk5RExGbEJRVWtzVDBGQlR5eEpRVUZRTEV0QlFXZENMRkZCUVdoQ0xFbEJRVFJDTEZGQlFVOHNXVUZCVUN4NVEwRkJUeXhaUVVGUUxFOUJRWGRDTEZGQlFYQkVMRWxCUVdkRkxHbENRVUZwUWl4SlFVRnlSaXhGUVVFeVJqdEJRVU4yUml4clFrRkJUU3hKUVVGSkxFdEJRVW9zUTBGQlZTd3JSVUZCTkVVc1NVRkJOVVVzZVVOQlFUUkZMRWxCUVRWRkxIZERRVU5qTEZsQlJHUXNlVU5CUTJNc1dVRkVaQ3hWUVVGV0xFTkJRVTQ3UVVGRlNEdEJRVU5FTEdsQ1FVRlRMRWxCUVZRc1NVRkJhVUlzV1VGQmFrSTdRVUZEU0N4TFFVNUVPenRCUVZGQk96czdPenM3TzBGQlQwRXNXVUZCVVN4WFFVRlNMRWRCUVhOQ0xGbEJRVms3UVVGRE9VSXNXVUZCVFN4VFFVRlRMRVZCUVdZN08wRkJSVUVzWVVGQlN5eEpRVUZKTEU5QlFWUXNTVUZCYjBJc1VVRkJjRUlzUlVGQk9FSTdRVUZETVVJc2JVSkJRVThzU1VGQlVDeERRVUZaTEU5QlFWbzdRVUZEU0RzN1FVRkZSQ3hsUVVGUExFMUJRVkE3UVVGRFNDeExRVkpFT3p0QlFWVkJPenM3T3pzN096czdPenRCUVZkQkxGbEJRVkVzVTBGQlVpeEhRVUZ2UWl4VlFVRlZMRTFCUVZZc1JVRkJhMElzVDBGQmJFSXNSVUZCTWtJN1FVRkRNME03UVVGRFFTeFpRVUZKTEU5QlFVOHNUVUZCVUN4TFFVRnJRaXhSUVVGc1FpeEpRVUU0UWl4UFFVRlBMRTlCUVZBc1MwRkJiVUlzVVVGQmNrUXNSVUZCSzBRN1FVRkRNMFFzYTBKQlFVMHNTVUZCU1N4TFFVRktMRU5CUVZVc2NVVkJRV3RGTEUxQlFXeEZMSGxEUVVGclJTeE5RVUZzUlN4dFEwRkRVeXhQUVVSVUxIbERRVU5UTEU5QlJGUXNWVUZCVml4RFFVRk9PMEZCUlVnN08wRkJSVVE3UVVGRFFTeFpRVUZKTEZOQlFWTXNUMEZCVkN4TlFVRnpRaXhUUVVGMFFpeEpRVUZ0UXl4VFFVRlRMRTlCUVZRc1JVRkJhMElzVFVGQmJFSXNUVUZCT0VJc1UwRkJja1VzUlVGQlowWTdRVUZETlVVc1owSkJRVWtzU1VGQlNpeERRVUZUTEV0QlFWUXNRMEZCWlN4SlFVRm1MSEZFUVVGelJTeE5RVUYwUlN4dFFrRkJNRVlzVDBGQk1VWTdRVUZEUVN4dFFrRkJUeXhOUVVGTkxFOUJRVTRzUjBGQlowSXNSMEZCYUVJc1IwRkJjMElzVFVGQmRFSXNSMEZCSzBJc1IwRkJkRU03UVVGRFNEczdRVUZGUkN4bFFVRlBMRk5CUVZNc1QwRkJWQ3hGUVVGclFpeE5RVUZzUWl4RFFVRlFPMEZCUTBnc1MwRmtSRHRCUVdkQ1NDeERRUzlGUVN4RlFTdEZReXhKUVVGSkxFbEJRVW9zUTBGQlV5eEpRUzlGVml4RFFVRkVPenM3T3p0QlEzSkNRVHM3UVVGSFFUczdRVUZEUVRzN1FVRkRRVHM3UVVGRFFUczdRVUZIUVRzN1FVRkRRVHM3UVVGRFFUczdRVUZEUVRzN1FVRkRRVHM3UVVGRFFUczdRVUZEUVRzN1FVRkRRVHM3UVVGRFFUczdRVUZEUVRzN1FVRkRRVHM3T3pzN1FVTTVRa0U3T3pzN096czdPenM3UVVGVlFTeEpRVUZKTEVsQlFVb3NRMEZCVXl4aFFVRlVMRWRCUVhsQ0xFbEJRVWtzU1VGQlNpeERRVUZUTEdGQlFWUXNTVUZCTUVJc1JVRkJia1E3TzBGQlJVRTdPenM3T3pzN08wRkJVVUVzUTBGQlF5eFZRVUZWTEU5QlFWWXNSVUZCYlVJN08wRkJSV2hDT3p0QlFVVkJPMEZCUTBFN1FVRkRRVHM3UVVGRlFUczdPenM3T3pzN1FVRlBRU3hoUVVGVExGRkJRVlFzUTBGQmEwSXNSMEZCYkVJc1JVRkJkVUk3UVVGRGJrSXNXVUZCVFN4UFFVRlBMRk5CUVZNc1lVRkJWQ3hEUVVGMVFpeE5RVUYyUWl4RFFVRmlPMEZCUTBFc1lVRkJTeXhKUVVGTUxFZEJRVmtzVlVGQldqdEJRVU5CTEdGQlFVc3NSMEZCVEN4SFFVRlhMRmxCUVZnN1FVRkRRU3hoUVVGTExFbEJRVXdzUjBGQldTeEhRVUZhTzBGQlEwRXNhVUpCUVZNc2IwSkJRVlFzUTBGQk9FSXNUVUZCT1VJc1JVRkJjME1zUTBGQmRFTXNSVUZCZVVNc1YwRkJla01zUTBGQmNVUXNTVUZCY2tRN1FVRkRTRHM3UVVGRlJEdEJRVU5CTzBGQlEwRTdPMEZCUlVFN096czdPenM3TzBGQlVVRXNXVUZCVVN4SlFVRlNMRWRCUVdVc1dVRkJXVHRCUVVOMlFpeFpRVUZKTEZsQlFWa3NSVUZCYUVJN08wRkJSVUVzV1VGQlNTeEpRVUZKTEVsQlFVb3NRMEZCVXl4TlFVRlVMRU5CUVdkQ0xFZEJRV2hDTEVOQlFXOUNMR0ZCUVhCQ0xFMUJRWFZETEZsQlFYWkRMRWxCUTBFc1NVRkJTU3hKUVVGS0xFTkJRVk1zVFVGQlZDeERRVUZuUWl4SFFVRm9RaXhEUVVGdlFpeFhRVUZ3UWl4TlFVRnhReXhMUVVSeVF5eEpRVVZCTEVsQlFVa3NTVUZCU2l4RFFVRlRMRTFCUVZRc1EwRkJaMElzUjBGQmFFSXNRMEZCYjBJc1dVRkJjRUlzUTBGR1NpeEZRVVYxUXp0QlFVTnVReXhyUTBGQmIwSXNTVUZCU1N4SlFVRktMRU5CUVZNc1RVRkJWQ3hEUVVGblFpeEhRVUZvUWl4RFFVRnZRaXhaUVVGd1FpeERRVUZ3UWp0QlFVTklPenRCUVVWRUxGbEJRVTBzVTBGQlV6dEJRVU5ZTEhGQ1FVRlRMRWxCUVVrc1NVRkJTaXhEUVVGVExFMUJRVlFzUTBGQlowSXNSMEZCYUVJc1EwRkJiMElzVVVGQmNFSXNRMEZFUlR0QlFVVllMSEZDUVVGVExGTkJSa1U3UVVGSFdDeHhRa0ZCVXl4cFFrRkJWU3hMUVVGV0xFVkJRV2xDTzBGQlEzUkNMRzlDUVVGSkxFbEJRVW9zUTBGQlV5eExRVUZVTEVOQlFXVXNTMEZCWml4RFFVRnhRaXhyUWtGQmNrSXNSVUZCZVVNc1MwRkJla003UVVGRFNEdEJRVXhWTEZOQlFXWTdPMEZCVVVFc1pVRkJUeXhQUVVGUUxFTkJRV1VzVFVGQlppeERRVUZ6UWl4TlFVRjBRanRCUVVOSUxFdEJiRUpFT3p0QlFXOUNRVHM3T3pzN096czdRVUZSUVN4WlFVRlJMRTlCUVZJc1IwRkJhMElzVlVGQlZTeFpRVUZXTEVWQlFYZENMRkZCUVhoQ0xFVkJRV3RETzBGQlFVRTdRVUZCUVR0QlFVRkJPenRCUVVGQk8wRkJRMmhFTEdsRFFVRjFRaXhaUVVGMlFpdzRTRUZCY1VNN1FVRkJRU3h2UWtGQk5VSXNWVUZCTkVJN08wRkJRMnBETEc5Q1FVRkpMRmRCUVZjc1VVRkJXQ3hEUVVGdlFpeE5RVUZ3UWl4RFFVRktMRVZCUVdsRE8wRkJRemRDTERaQ1FVRlRMRlZCUVZRN1FVRkRRU3gzUWtGQlRTeFJRVUZSTEdGQlFXRXNUMEZCWWl4RFFVRnhRaXhWUVVGeVFpeERRVUZrTzBGQlEwRXNhVU5CUVdFc1RVRkJZaXhEUVVGdlFpeExRVUZ3UWl4RlFVRXlRaXhEUVVFelFqdEJRVU5JTzBGQlEwbzdRVUZRSzBNN1FVRkJRVHRCUVVGQk8wRkJRVUU3UVVGQlFUdEJRVUZCTzBGQlFVRTdRVUZCUVR0QlFVRkJPMEZCUVVFN1FVRkJRVHRCUVVGQk8wRkJRVUU3UVVGQlFUczdRVUZUYUVRc1dVRkJTU3hoUVVGaExFMUJRV0lzUzBGQmQwSXNRMEZCTlVJc1JVRkJLMEk3UVVGRE0wSTdRVUZEU0N4VFFVWkVMRTFCUlU4N1FVRkRTQ3h0UWtGQlR5eFBRVUZRTEVOQlFXVXNXVUZCWml4RlFVRTJRaXhSUVVFM1FqdEJRVU5JTzBGQlEwb3NTMEZrUkRzN1FVRm5Ra0U3T3pzN096czdPenRCUVZOQkxGbEJRVkVzU1VGQlVpeEhRVUZsTEZWQlFWVXNVVUZCVml4RlFVRnZRaXhKUVVGd1FpeEZRVUV3UWl4VlFVRXhRaXhGUVVGelF6dEJRVU5xUkN4WlFVRk5MRmRCUVZjc1JVRkJSU3hSUVVGR0xFVkJRV3BDT3p0QlFVVkJMRmxCUVVrN1FVRkRRU3huUWtGQlNTeFRRVUZUTEVWQlFXSXNSVUZCYVVJN1FVRkRZaXg1UWtGQlV5eE5RVUZVTEVOQlFXZENMRWxCUVVrc1MwRkJTaXhEUVVGVkxEaENRVUZXTEVOQlFXaENPMEZCUTBnN08wRkJSVVFzWjBKQlFVMHNhVUpCUVdsQ0xFdEJRVXNzVDBGQlRDeERRVUZoTEZkQlFXSXNSVUZCTUVJc1NVRkJNVUlzUTBGQmRrSXNRMEZNUVN4RFFVdDNSRHM3UVVGRmVFUTdRVUZEUVN4blFrRkJUU3hUUVVGVExGZEJRVmNzUzBGQldDeERRVUZwUWl4UFFVRnFRaXhEUVVGNVFpeGpRVUY2UWl4RFFVRm1PMEZCUTBFc1owSkJRVWtzVlVGQlZTeFBRVUZQTEVsQlFWQXNTMEZCWjBJc1ZVRkJPVUlzUlVGQk1FTTdRVUZEZEVNc2VVSkJRVk1zVDBGQlZDeERRVUZwUWl4SlFVRkpMRWxCUVVrc1dVRkJTaXhEUVVGcFFpeE5RVUZ5UWl4RFFVRTBRaXhSUVVFMVFpeEZRVUZ6UXl4alFVRjBReXhGUVVGelJDeFZRVUYwUkN4RFFVRnFRanRCUVVOQkxIVkNRVUZQTEVsQlFWQXNRMEZHYzBNc1EwRkZla0k3UVVGRGFFSTdPMEZCUlVRc1owSkJRVWtzWVVGQllTeEZRVUZxUWp0QlFVTkJMR2RDUVVGSkxFbEJRVWtzU1VGQlNpeERRVUZUTEUxQlFWUXNRMEZCWjBJc1IwRkJhRUlzUTBGQmIwSXNZVUZCY0VJc1RVRkJkVU1zV1VGQmRrTXNTVUZEUVN4SlFVRkpMRWxCUVVvc1EwRkJVeXhOUVVGVUxFTkJRV2RDTEVkQlFXaENMRU5CUVc5Q0xGZEJRWEJDTEVOQlJFRXNTVUZGUVN4SlFVRkpMRWxCUVVvc1EwRkJVeXhOUVVGVUxFTkJRV2RDTEVkQlFXaENMRU5CUVc5Q0xGbEJRWEJDTEVOQlJrb3NSVUZIUlR0QlFVTkZMRFpDUVVGaExGZEJRVmNzU1VGQlNTeEpRVUZLTEVOQlFWTXNUVUZCVkN4RFFVRm5RaXhIUVVGb1FpeERRVUZ2UWl4WlFVRndRaXhEUVVGNFFqdEJRVU5JT3p0QlFVVkVPMEZCUTBFc1owSkJRVTBzWjBKQlFXZENMRWxCUVVrc1NVRkJTaXhEUVVGVExFMUJRVlFzUTBGQlowSXNSMEZCYUVJc1EwRkJiMElzVDBGQmNFSXNUVUZCYVVNc1QwRkJha01zUjBGQk1rTXNVMEZCTTBNc1IwRkJkVVFzUzBGQk4wVTdRVUZEUVN4blFrRkJUU3hOUVVGTkxGZEJRVmNzVTBGQldDeERRVUZ4UWl4TlFVRnlRaXhIUVVFNFFpeEhRVUU1UWl4SFFVRnZReXhYUVVGWExFbEJRUzlETEVkQlFYTkVMRWRCUVhSRUxFZEJRVFJFTEVsQlFUVkVMRWRCUVcxRkxGVkJRVzVGTEVkQlFXZEdMR0ZCUVRWR096dEJRVVZCTEcxQ1FVRlBMRTlCUVZBc1EwRkJaU3hEUVVGRExFZEJRVVFzUTBGQlppeEZRVUZ6UWl4WlFVRk5PMEZCUTNoQ0xHOUNRVUZKTEZkQlFWY3NTMEZCV0N4RFFVRnBRaXhQUVVGcVFpeERRVUY1UWl4alFVRjZRaXhOUVVFMlF5eFRRVUZxUkN4RlFVRTBSRHRCUVVONFJDd3dRa0ZCVFN4SlFVRkpMRXRCUVVvc1EwRkJWU3hoUVVGaExFbEJRV0lzUjBGQmIwSXNlVVJCUVhCQ0xFZEJRMVlzTUVKQlJFRXNRMEZCVGp0QlFVVklPenRCUVVWRU8wRkJRMEVzYjBKQlFVMHNaVUZCWlN4WFFVRlhMRXRCUVZnc1EwRkJhVUlzVDBGQmFrSXNRMEZCZVVJc1kwRkJla0lzUlVGQmVVTXNXVUZCZWtNc1EwRkJjMFFzUzBGQmRFUXNSVUZCY2tJN08wRkJSVUVzYjBKQlFVa3NZVUZCWVN4TlFVRmlMRXRCUVhkQ0xFTkJRVFZDTEVWQlFTdENPMEZCUVVVN1FVRkROMElzTmtKQlFWTXNUMEZCVkN4RFFVRnBRaXhKUVVGSkxFbEJRVWtzV1VGQlNpeERRVUZwUWl4TlFVRnlRaXhEUVVFMFFpeFJRVUUxUWl4RlFVRnpReXhqUVVGMFF5eEZRVUZ6UkN4VlFVRjBSQ3hEUVVGcVFqdEJRVU5CTERKQ1FVRlBMRWxCUVZBc1EwRkdNa0lzUTBGRlpEdEJRVU5vUWpzN1FVRkZSRHRCUVVOQkxIRkNRVUZMTEVsQlFVa3NTMEZCVkN4SlFVRnJRaXhaUVVGc1FpeEZRVUZuUXp0QlFVTTFRaXgzUWtGQlRTeGhRVUZoTEdGQlFXRXNTMEZCWWl4RFFVRnVRanM3UVVGRlFTeDNRa0ZCU1N4WFFVRlhMRTlCUVZnc1EwRkJiVUlzVFVGQmJrSXNUVUZCSzBJc1EwRkJReXhEUVVGd1F5eEZRVUYxUXp0QlFVTnVReXhwUTBGQlV5eFZRVUZVTzBGQlEwRXNjVU5CUVdFc1RVRkJZaXhEUVVGdlFpeExRVUZ3UWl4RlFVRXlRaXhEUVVFelFqdEJRVU5CTzBGQlEwZzdPMEZCUlVRN1FVRkRRU3gzUWtGQlNTeFhRVUZYTEU5QlFWZ3NRMEZCYlVJc1RVRkJia0lzVFVGQkswSXNRMEZCUXl4RFFVRndReXhGUVVGMVF6dEJRVU51UXl4eFEwRkJZU3hMUVVGaUxFbEJRWE5DTEVsQlFVa3NTVUZCU2l4RFFVRlRMRTFCUVZRc1EwRkJaMElzUjBGQmFFSXNRMEZCYjBJc1YwRkJjRUlzU1VGQmJVTXNVVUZCYmtNc1IwRkJPRU1zVlVGQk9VTXNSMEZCTWtRc1ZVRkJNMFFzUjBGQmQwVXNZVUZCT1VZN1FVRkRTQ3h4UWtGR1JDeE5RVVZQTEVsQlFVa3NWMEZCVnl4TlFVRllMRU5CUVd0Q0xFTkJRVU1zUTBGQmJrSXNUVUZCTUVJc1MwRkJPVUlzUlVGQmNVTTdRVUZCUlR0QlFVTXhReXh4UTBGQllTeExRVUZpTEV0QlFYVkNMR0ZCUVdFc1lVRkJjRU03UVVGRFNEdEJRVU5LT3p0QlFVVkVMSFZDUVVGUExFOUJRVkFzUTBGQlpTeFpRVUZtTEVWQlFUWkNMRmxCUVUwN1FVRkRMMElzTmtKQlFWTXNUMEZCVkN4RFFVRnBRaXhKUVVGSkxFbEJRVWtzV1VGQlNpeERRVUZwUWl4TlFVRnlRaXhEUVVFMFFpeFJRVUUxUWl4RlFVRnpReXhqUVVGMFF5eEZRVUZ6UkN4VlFVRjBSQ3hEUVVGcVFqdEJRVU5JTEdsQ1FVWkVPMEZCUjBnc1lVRnVRMFE3UVVGdlEwZ3NVMEU1UkVRc1EwRTRSRVVzVDBGQlR5eFRRVUZRTEVWQlFXdENPMEZCUTJoQ0xIRkNRVUZUTEUxQlFWUXNRMEZCWjBJc1UwRkJhRUk3UVVGRFNEczdRVUZGUkN4bFFVRlBMRk5CUVZNc1QwRkJWQ3hGUVVGUU8wRkJRMGdzUzBGMFJVUTdRVUYzUlVnc1EwRm9TMFFzUlVGblMwY3NTVUZCU1N4SlFVRktMRU5CUVZNc1lVRm9TMW83T3pzN08wRkRjRUpCT3pzN096czdPenM3TzBGQlZVRTdPenM3T3pzN1FVRlBRU3hEUVVGRExGbEJRVms3TzBGQlJWUTdPMEZCUlVFN1FVRkRRVHM3UVVGRFFTeFJRVUZKTEVOQlFVTXNUMEZCVHl4UlFVRlFMRU5CUVdkQ0xFMUJRWEpDTEVWQlFUWkNPMEZCUTNwQ0xHVkJRVThzVVVGQlVDeERRVUZuUWl4TlFVRm9RaXhIUVVGNVFpeFBRVUZQTEZGQlFWQXNRMEZCWjBJc1VVRkJhRUlzUjBGQk1rSXNTVUZCTTBJc1IwRkRja0lzVDBGQlR5eFJRVUZRTEVOQlFXZENMRkZCUkVzc1NVRkRUeXhQUVVGUExGRkJRVkFzUTBGQlowSXNTVUZCYUVJc1IwRkJkVUlzVFVGQlRTeFBRVUZQTEZGQlFWQXNRMEZCWjBJc1NVRkJOME1zUjBGQmIwUXNSVUZFTTBRc1EwRkJla0k3UVVGRlNEczdRVUZGUkR0QlFVTkJPMEZCUTBFc1VVRkJTU3hEUVVGRExFdEJRVXNzUjBGQlZpeEZRVUZsTzBGQlExZ3NZVUZCU3l4SFFVRk1MRWRCUVZjc1UwRkJVeXhIUVVGVUxFZEJRV1U3UVVGRGRFSXNiVUpCUVU4c1NVRkJTU3hKUVVGS0xFZEJRVmNzVDBGQldDeEZRVUZRTzBGQlEwZ3NVMEZHUkR0QlFVZElPMEZCUlVvc1EwRnVRa1E3T3pzN08wRkRha0pCT3pzN096czdPenM3TzBGQlZVRXNTVUZCU1N4SlFVRktMRU5CUVZNc1VVRkJWQ3hIUVVGdlFpeEpRVUZKTEVsQlFVb3NRMEZCVXl4UlFVRlVMRWxCUVhGQ0xFVkJRWHBET3p0QlFVVkJPenM3T3pzN08wRkJUMEVzUTBGQlF5eFZRVUZWTEU5QlFWWXNSVUZCYlVJN08wRkJSV2hDT3p0QlFVVkJPenM3T3pzN1FVRkxRU3hSUVVGTkxGZEJRVmNzUlVGQmFrSTdPMEZCUlVFN096czdPenRCUVUxQkxGbEJRVkVzUjBGQlVpeEhRVUZqTEZWQlFWVXNTVUZCVml4RlFVRm5RaXhMUVVGb1FpeEZRVUYxUWp0QlFVTnFRenRCUVVOQk8wRkJRMEVzV1VGQlNTeFRRVUZUTEVsQlFWUXNUVUZCYlVJc1UwRkJka0lzUlVGQmEwTTdRVUZET1VJc1owSkJRVWtzU1VGQlNpeERRVUZUTEV0QlFWUXNRMEZCWlN4SlFVRm1MRU5CUVc5Q0xIVkRRVUYxUXl4SlFVRjJReXhIUVVFNFF5eDNRa0ZCYkVVN1FVRkRTRHM3UVVGRlJDeHBRa0ZCVXl4SlFVRlVMRWxCUVdsQ0xFdEJRV3BDTzBGQlEwZ3NTMEZTUkRzN1FVRlZRVHM3T3pzN096dEJRVTlCTEZsQlFWRXNSMEZCVWl4SFFVRmpMRlZCUVZVc1NVRkJWaXhGUVVGblFqdEJRVU14UWl4bFFVRlBMRk5CUVZNc1NVRkJWQ3hEUVVGUU8wRkJRMGdzUzBGR1JEczdRVUZKUVRzN096czdRVUZMUVN4WlFVRlJMRXRCUVZJc1IwRkJaMElzV1VGQldUdEJRVU40UWl4WlFVRkpMRWxCUVVrc1NVRkJTaXhEUVVGVExFMUJRVlFzUTBGQlowSXNSMEZCYUVJc1EwRkJiMElzWVVGQmNFSXNUVUZCZFVNc1lVRkJNME1zUlVGQk1FUTdRVUZEZEVRc1owSkJRVWtzU1VGQlNpeERRVUZUTEV0QlFWUXNRMEZCWlN4SFFVRm1MRU5CUVcxQ0xHdENRVUZ1UWl4RlFVRjFReXhSUVVGMlF6dEJRVU5JTEZOQlJrUXNUVUZGVHp0QlFVTklMR3RDUVVGTkxFbEJRVWtzUzBGQlNpeERRVUZWTERKRVFVRldMRU5CUVU0N1FVRkRTRHRCUVVOS0xFdEJUa1E3UVVGUlNDeERRVzVFUkN4RlFXMUVSeXhKUVVGSkxFbEJRVW9zUTBGQlV5eFJRVzVFV2pzN096czdPenM3UVVOdVFrRTdPenM3T3pzN096czdRVUZWUVRzN096czdPenM3T3pzN1FVRlhRU3hEUVVGRExGbEJRVms3TzBGQlJWUTdRVUZEUVR0QlFVTkJPenRCUVVWQkxGZEJRVThzVTBGQlVDeEhRVUZ0UWl4VFFVRnVRanRCUVVOQkxGZEJRVThzVDBGQlVDeEhRVUZwUWl4VFFVRnFRanM3UVVGRlFTeFJRVUZKTEZsQlFVbzdRVUZEUVN4UlFVRkpMRlZCUVVvN1FVRkRRU3hSUVVGSkxHRkJRVW83UVVGRFFTeFJRVUZKTEc5Q1FVRktPMEZCUTBFc1VVRkJTU3hwUWtGQlNqdEJRVU5CTEZGQlFVa3NXVUZCU2p0QlFVTkJMRkZCUVVrc01FSkJRVW83UVVGRFFTeFJRVUZKTEcxQ1FVRktPMEZCUTBFc1VVRkJTU3huUWtGQlNqdEJRVU5CTEZGQlFVa3NWVUZCVlN4UlFVRmtPMEZCUTBFc1VVRkJTU3hwUWtGQmFVSXNUMEZCY2tJN1FVRkRRU3hSUVVGSkxHZENRVUZuUWl4UFFVRndRanRCUVVOQkxGRkJRVWtzUzBGQlN5eFBRVUZQTEZOQlFXaENPMEZCUTBFc1VVRkJTU3hWUVVGVkxFZEJRVWNzVVVGQmFrSTdRVUZEUVN4UlFVRkpMRk5CUVZNc1IwRkJSeXhqUVVGb1FqdEJRVU5CTEZGQlFVa3NXVUZCV1N4RFFVRkRMRVZCUVVVc1QwRkJUeXhOUVVGUUxFdEJRV3RDTEZkQlFXeENMRWxCUVdsRExFOUJRVThzVTBGQlVDeExRVUZ4UWl4WFFVRjBSQ3hKUVVGeFJTeFBRVUZQTEZGQlFUbEZMRU5CUVdwQ08wRkJRMEVzVVVGQlNTeGpRVUZqTEVOQlFVTXNVMEZCUkN4SlFVRmpMRTlCUVU4c1lVRkJVQ3hMUVVGNVFpeFhRVUY2UkR0QlFVTkJPMEZCUTBFN1FVRkRRU3hSUVVGSkxHTkJRV01zWVVGQllTeFZRVUZWTEZGQlFWWXNTMEZCZFVJc1pVRkJjRU1zUjBGQmMwUXNXVUZCZEVRc1IwRkJjVVVzY1VKQlFYWkdPMEZCUTBFc1VVRkJTU3hwUWtGQmFVSXNSMEZCY2tJN1FVRkRRVHRCUVVOQkxGRkJRVWtzVlVGQlZTeFBRVUZQTEV0QlFWQXNTMEZCYVVJc1YwRkJha0lzU1VGQlowTXNUVUZCVFN4UlFVRk9MRTlCUVhGQ0xHZENRVUZ1UlR0QlFVTkJMRkZCUVVrc1YwRkJWeXhGUVVGbU8wRkJRMEVzVVVGQlNTeE5RVUZOTEVWQlFWWTdRVUZEUVN4UlFVRkpMR2xDUVVGcFFpeEZRVUZ5UWp0QlFVTkJMRkZCUVVrc2FVSkJRV2xDTEV0QlFYSkNPenRCUVVWQk8wRkJRMEU3UVVGRFFUczdRVUZGUVRzN096czdPenRCUVU5QkxHRkJRVk1zVlVGQlZDeERRVUZ2UWl4RlFVRndRaXhGUVVGM1FqdEJRVU53UWl4bFFVRlBMRkZCUVZFc1NVRkJVaXhEUVVGaExFVkJRV0lzVFVGQmNVSXNiVUpCUVRWQ08wRkJRMGc3TzBGQlJVUTdPenM3T3pzN1FVRlBRU3hoUVVGVExFOUJRVlFzUTBGQmFVSXNSVUZCYWtJc1JVRkJjVUk3UVVGRGFrSXNaVUZCVHl4UlFVRlJMRWxCUVZJc1EwRkJZU3hGUVVGaUxFMUJRWEZDTEdkQ1FVRTFRanRCUVVOSU96dEJRVVZFT3pzN096dEJRVXRCTEdGQlFWTXNTVUZCVkN4RFFVRmpMRWRCUVdRc1JVRkJiVUlzU1VGQmJrSXNSVUZCZVVJN1FVRkRja0lzV1VGQlNTeEhRVUZLTEVWQlFWTTdRVUZEVEN4cFFrRkJTeXhKUVVGSkxFbEJRVWtzUTBGQllpeEZRVUZuUWl4SlFVRkpMRWxCUVVrc1RVRkJlRUlzUlVGQlowTXNTMEZCU3l4RFFVRnlReXhGUVVGM1F6dEJRVU53UXl4dlFrRkJTU3hKUVVGSkxFTkJRVW9zUzBGQlZTeExRVUZMTEVsQlFVa3NRMEZCU2l4RFFVRk1MRVZCUVdFc1EwRkJZaXhGUVVGblFpeEhRVUZvUWl4RFFVRmtMRVZCUVc5RE8wRkJRMmhETzBGQlEwZzdRVUZEU2p0QlFVTktPMEZCUTBvN08wRkJSVVE3T3pzN08wRkJTMEVzWVVGQlV5eFhRVUZVTEVOQlFYRkNMRWRCUVhKQ0xFVkJRVEJDTEVsQlFURkNMRVZCUVdkRE8wRkJRelZDTEZsQlFVa3NSMEZCU2l4RlFVRlRPMEZCUTB3c1owSkJRVWtzVlVGQlNqdEJRVU5CTEdsQ1FVRkxMRWxCUVVrc1NVRkJTU3hOUVVGS0xFZEJRV0VzUTBGQmRFSXNSVUZCZVVJc1NVRkJTU3hEUVVGRExFTkJRVGxDTEVWQlFXbERMRXRCUVVzc1EwRkJkRU1zUlVGQmVVTTdRVUZEY2tNc2IwSkJRVWtzU1VGQlNTeERRVUZLTEV0QlFWVXNTMEZCU3l4SlFVRkpMRU5CUVVvc1EwRkJUQ3hGUVVGaExFTkJRV0lzUlVGQlowSXNSMEZCYUVJc1EwRkJaQ3hGUVVGdlF6dEJRVU5vUXp0QlFVTklPMEZCUTBvN1FVRkRTanRCUVVOS096dEJRVVZFT3pzN096czdPenRCUVZGQkxHRkJRVk1zVDBGQlZDeERRVUZwUWl4SFFVRnFRaXhGUVVGelFpeEpRVUYwUWl4RlFVRTBRanRCUVVONFFpeGxRVUZQTEU5QlFVOHNTVUZCVUN4RFFVRlpMRWRCUVZvc1JVRkJhVUlzU1VGQmFrSXNRMEZCVUR0QlFVTklPenRCUVVWRU96czdPenM3T3p0QlFWRkJMR0ZCUVZNc1RVRkJWQ3hEUVVGblFpeEhRVUZvUWl4RlFVRnhRaXhKUVVGeVFpeEZRVUV5UWp0QlFVTjJRaXhsUVVGUExGRkJRVkVzUjBGQlVpeEZRVUZoTEVsQlFXSXNTMEZCYzBJc1NVRkJTU3hKUVVGS0xFTkJRVGRDTzBGQlEwZzdPMEZCUlVRN096czdPMEZCUzBFc1lVRkJVeXhSUVVGVUxFTkJRV3RDTEVkQlFXeENMRVZCUVhWQ0xFbEJRWFpDTEVWQlFUWkNPMEZCUTNwQ0xGbEJRVWtzWVVGQlNqdEJRVU5CTEdGQlFVc3NTVUZCVEN4SlFVRmhMRWRCUVdJc1JVRkJhMEk3UVVGRFpDeG5Ra0ZCU1N4UlFVRlJMRWRCUVZJc1JVRkJZU3hKUVVGaUxFTkJRVW9zUlVGQmQwSTdRVUZEY0VJc2IwSkJRVWtzUzBGQlN5eEpRVUZKTEVsQlFVb3NRMEZCVEN4RlFVRm5RaXhKUVVGb1FpeERRVUZLTEVWQlFUSkNPMEZCUTNaQ08wRkJRMGc3UVVGRFNqdEJRVU5LTzBGQlEwbzdPMEZCUlVRN096czdRVUZKUVN4aFFVRlRMRXRCUVZRc1EwRkJaU3hOUVVGbUxFVkJRWFZDTEUxQlFYWkNMRVZCUVN0Q0xFdEJRUzlDTEVWQlFYTkRMR1ZCUVhSRExFVkJRWFZFTzBGQlEyNUVMRmxCUVVrc1RVRkJTaXhGUVVGWk8wRkJRMUlzY1VKQlFWTXNUVUZCVkN4RlFVRnBRaXhWUVVGVkxFdEJRVllzUlVGQmFVSXNTVUZCYWtJc1JVRkJkVUk3UVVGRGNFTXNiMEpCUVVrc1UwRkJVeXhEUVVGRExGRkJRVkVzVFVGQlVpeEZRVUZuUWl4SlFVRm9RaXhEUVVGa0xFVkJRWEZETzBGQlEycERMSGRDUVVGSkxHMUNRVUZ0UWl4UlFVRlBMRXRCUVZBc2VVTkJRVThzUzBGQlVDeFBRVUZwUWl4UlFVRndReXhKUVVGblJDeExRVUZvUkN4SlFVTkJMRU5CUVVNc1VVRkJVU3hMUVVGU0xFTkJSRVFzU1VGRGJVSXNRMEZCUXl4WFFVRlhMRXRCUVZnc1EwRkVjRUlzU1VGRlFTeEZRVUZGTEdsQ1FVRnBRaXhOUVVGdVFpeERRVVpLTEVWQlJXZERPenRCUVVVMVFpdzBRa0ZCU1N4RFFVRkRMRTlCUVU4c1NVRkJVQ3hEUVVGTUxFVkJRVzFDTzBGQlEyWXNiVU5CUVU4c1NVRkJVQ3hKUVVGbExFVkJRV1k3UVVGRFNEdEJRVU5FTERoQ1FVRk5MRTlCUVU4c1NVRkJVQ3hEUVVGT0xFVkJRVzlDTEV0QlFYQkNMRVZCUVRKQ0xFdEJRVE5DTEVWQlFXdERMR1ZCUVd4RE8wRkJRMGdzY1VKQlVrUXNUVUZSVHp0QlFVTklMQ3RDUVVGUExFbEJRVkFzU1VGQlpTeExRVUZtTzBGQlEwZzdRVUZEU2p0QlFVTktMR0ZCWkVRN1FVRmxTRHRCUVVORUxHVkJRVThzVFVGQlVEdEJRVU5JT3p0QlFVVkVPMEZCUTBFN1FVRkRRU3hoUVVGVExFbEJRVlFzUTBGQll5eEhRVUZrTEVWQlFXMUNMRVZCUVc1Q0xFVkJRWFZDTzBGQlEyNUNMR1ZCUVU4c1dVRkJXVHRCUVVObUxHMUNRVUZQTEVkQlFVY3NTMEZCU0N4RFFVRlRMRWRCUVZRc1JVRkJZeXhUUVVGa0xFTkJRVkE3UVVGRFNDeFRRVVpFTzBGQlIwZzdPMEZCUlVRc1lVRkJVeXhQUVVGVUxFZEJRVzFDTzBGQlEyWXNaVUZCVHl4VFFVRlRMRzlDUVVGVUxFTkJRVGhDTEZGQlFUbENMRU5CUVZBN1FVRkRTRHM3UVVGRlJDeGhRVUZUTEdOQlFWUXNRMEZCZDBJc1IwRkJlRUlzUlVGQk5rSTdRVUZEZWtJc1kwRkJUU3hIUVVGT08wRkJRMGc3TzBGQlJVUTdRVUZEUVN4aFFVRlRMRk5CUVZRc1EwRkJiVUlzUzBGQmJrSXNSVUZCTUVJN1FVRkRkRUlzV1VGQlNTeERRVUZETEV0QlFVd3NSVUZCV1R0QlFVTlNMRzFDUVVGUExFdEJRVkE3UVVGRFNEdEJRVU5FTEZsQlFVa3NTVUZCU1N4TlFVRlNPMEZCUTBFc1lVRkJTeXhOUVVGTkxFdEJRVTRzUTBGQldTeEhRVUZhTEVOQlFVd3NSVUZCZFVJc1ZVRkJWU3hKUVVGV0xFVkJRV2RDTzBGQlEyNURMR2RDUVVGSkxFVkJRVVVzU1VGQlJpeERRVUZLTzBGQlEwZ3NVMEZHUkR0QlFVZEJMR1ZCUVU4c1EwRkJVRHRCUVVOSU96dEJRVVZFT3pzN096czdPenM3UVVGVFFTeGhRVUZUTEZOQlFWUXNRMEZCYlVJc1JVRkJia0lzUlVGQmRVSXNSMEZCZGtJc1JVRkJORUlzUjBGQk5VSXNSVUZCYVVNc1kwRkJha01zUlVGQmFVUTdRVUZETjBNc1dVRkJUU3hSUVVGUkxFbEJRVWtzUzBGQlNpeERRVUZWTEUxQlFVMHNNRU5CUVU0c1IwRkJiVVFzUlVGQk4wUXNRMEZCWkRzN1FVRkZRU3hqUVVGTkxGZEJRVTRzUjBGQmIwSXNSVUZCY0VJN1FVRkRRU3hqUVVGTkxHTkJRVTRzUjBGQmRVSXNZMEZCZGtJN08wRkJSVUVzV1VGQlNTeEhRVUZLTEVWQlFWTTdRVUZEVEN4clFrRkJUU3hoUVVGT0xFZEJRWE5DTEVkQlFYUkNPMEZCUTBnN08wRkJSVVFzWlVGQlR5eExRVUZRTzBGQlEwZzdPMEZCUlVRc1VVRkJTU3hQUVVGUExFOUJRVThzVTBGQlpDeExRVUUwUWl4WFFVRm9ReXhGUVVFMlF6dEJRVU42UXl4WlFVRkpMRmRCUVZjc1QwRkJUeXhUUVVGc1FpeERRVUZLTEVWQlFXdERPMEZCUXpsQ08wRkJRMEU3UVVGRFNEdEJRVU5FTEdOQlFVMHNUMEZCVHl4VFFVRmlPMEZCUTBFc1pVRkJUeXhUUVVGUUxFZEJRVzFDTEZOQlFXNUNPMEZCUTBnN08wRkJSVVE3UVVGRFFTeFJRVUZKTEU5QlFVOHNUMEZCVHl4UFFVRmtMRXRCUVRCQ0xGZEJRVEZDTEVsQlFYbERMRU5CUVVNc1YwRkJWeXhQUVVGUExFOUJRV3hDTEVOQlFUbERMRVZCUVRCRk8wRkJRM1JGTzBGQlEwRXNZMEZCVFN4UFFVRlBMRTlCUVdJN1FVRkRRU3hsUVVGUExFOUJRVkFzUjBGQmFVSXNVMEZCYWtJN1FVRkRTRHM3UVVGRlJDeGhRVUZUTEZWQlFWUXNRMEZCYjBJc1YwRkJjRUlzUlVGQmFVTTdRVUZETjBJc1dVRkJTU3h6UWtGQlNqdEJRVUZCTEZsQlFXMUNMR1ZCUVc1Q08wRkJRVUVzV1VGQk1rSXNaMEpCUVROQ08wRkJRVUVzV1VGQmIwTXNhVUpCUVhCRE8wRkJRVUVzV1VGRFNTdzJRa0ZFU2p0QlFVRkJMRmxCUlVrc1ZVRkJVenRCUVVOTU8wRkJRMEU3UVVGRFFUdEJRVU5CTEhsQ1FVRmhMRU5CU2xJN1FVRkxUQ3h4UWtGQlV5eEpRVXhLTzBGQlRVd3NiVUpCUVU4c1JVRk9SanRCUVU5TUxIRkNRVUZUTEVWQlVFbzdRVUZSVEN4clFrRkJUU3hGUVZKRU8wRkJVMHdzYTBKQlFVMHNSVUZVUkR0QlFWVk1MRzlDUVVGUk8wRkJWa2dzVTBGR1lqdEJRVUZCTEZsQlkwa3NWMEZCVnl4RlFXUm1PenRCUVdWSk8wRkJRMEU3UVVGRFFUdEJRVU5CTERCQ1FVRnJRaXhGUVd4Q2RFSTdRVUZCUVN4WlFXMUNTU3hqUVVGakxFVkJia0pzUWp0QlFVRkJMRmxCYjBKSkxGZEJRVmNzUlVGd1FtWTdRVUZCUVN4WlFYRkNTU3hYUVVGVkxFVkJja0prTzBGQlFVRXNXVUZ6UWtrc1lVRkJZU3hGUVhSQ2FrSTdRVUZCUVN4WlFYVkNTU3hoUVVGaExFVkJka0pxUWp0QlFVRkJMRmxCZDBKSkxHbENRVUZwUWl4RFFYaENja0k3UVVGQlFTeFpRWGxDU1N4elFrRkJjMElzUTBGNlFqRkNPenRCUVRKQ1FUczdPenM3T3pzN096czdRVUZYUVN4cFFrRkJVeXhSUVVGVUxFTkJRV3RDTEVkQlFXeENMRVZCUVhWQ08wRkJRMjVDTEdkQ1FVRkpMRlZCUVVvN1FVRkJRU3huUWtGQlR5eGhRVUZRTzBGQlEwRXNhVUpCUVVzc1NVRkJTU3hEUVVGVUxFVkJRVmtzU1VGQlNTeEpRVUZKTEUxQlFYQkNMRVZCUVRSQ0xFZEJRVFZDTEVWQlFXbERPMEZCUXpkQ0xIVkNRVUZQTEVsQlFVa3NRMEZCU2l4RFFVRlFPMEZCUTBFc2IwSkJRVWtzVTBGQlV5eEhRVUZpTEVWQlFXdENPMEZCUTJRc2QwSkJRVWtzVFVGQlNpeERRVUZYTEVOQlFWZ3NSVUZCWXl4RFFVRmtPMEZCUTBFc2VVSkJRVXNzUTBGQlREdEJRVU5JTEdsQ1FVaEVMRTFCUjA4c1NVRkJTU3hUUVVGVExFbEJRV0lzUlVGQmJVSTdRVUZEZEVJN1FVRkRRVHRCUVVOQk8wRkJRMEVzZDBKQlFVa3NUVUZCVFN4RFFVRk9MRWxCUVZrc1RVRkJUU3hEUVVGT0xFbEJRVmNzU1VGQlNTeERRVUZLTEUxQlFWY3NTVUZCYkVNc1NVRkJNa01zU1VGQlNTeEpRVUZKTEVOQlFWSXNUVUZCWlN4SlFVRTVSQ3hGUVVGdlJUdEJRVU5vUlR0QlFVTklMSEZDUVVaRUxFMUJSVThzU1VGQlNTeEpRVUZKTEVOQlFWSXNSVUZCVnp0QlFVTmtMRFJDUVVGSkxFMUJRVW9zUTBGQlZ5eEpRVUZKTEVOQlFXWXNSVUZCYTBJc1EwRkJiRUk3UVVGRFFTdzJRa0ZCU3l4RFFVRk1PMEZCUTBnN1FVRkRTanRCUVVOS08wRkJRMG83TzBGQlJVUTdPenM3T3pzN096czdRVUZWUVN4cFFrRkJVeXhUUVVGVUxFTkJRVzFDTEVsQlFXNUNMRVZCUVhsQ0xGRkJRWHBDTEVWQlFXMURMRkZCUVc1RExFVkJRVFpETzBGQlEzcERMR2RDUVVGSkxHZENRVUZLTzBGQlFVRXNaMEpCUVdFc2FVSkJRV0k3UVVGQlFTeG5Ra0ZCZFVJc2EwSkJRWFpDTzBGQlFVRXNaMEpCUVd0RExGVkJRV3hETzBGQlFVRXNaMEpCUVhGRExGVkJRWEpETzBGQlFVRXNaMEpCUVhkRExHOUNRVUY0UXp0QlFVRkJMR2RDUVVGeFJDeHJRa0ZCY2tRN1FVRkJRU3huUWtGRFNTeHBRa0ZFU2p0QlFVRkJMR2RDUVVOakxHVkJSR1E3UVVGQlFTeG5Ra0ZEYzBJc2NVSkJSSFJDTzBGQlFVRXNaMEpCUTI5RExHTkJSSEJETzBGQlFVRXNaMEpCUXpKRExEUkNRVVF6UXp0QlFVRkJMR2RDUVVWSkxGbEJRV0VzV1VGQldTeFRRVUZUTEV0QlFWUXNRMEZCWlN4SFFVRm1MRU5CUmpkQ08wRkJRVUVzWjBKQlIwa3NUVUZCVFN4UlFVRlBMRWRCU0dwQ08wRkJRVUVzWjBKQlNVa3NWVUZCVlN4UFFVRlBMRWxCUVVrc1IwRkJTaXhEUVVweVFqczdRVUZOUVR0QlFVTkJMR2RDUVVGSkxFbEJRVW9zUlVGQlZUdEJRVU5PTEhWQ1FVRlBMRXRCUVVzc1MwRkJUQ3hEUVVGWExFZEJRVmdzUTBGQlVEdEJRVU5CTERSQ1FVRlpMRXRCUVVzc1RVRkJUQ3hIUVVGakxFTkJRVEZDT3p0QlFVVkJPMEZCUTBFN1FVRkRRU3h2UWtGQlNTeFJRVUZQTEZsQlFWQXNTVUZCZFVJc1pVRkJaU3hKUVVGbUxFTkJRVzlDTEV0QlFVc3NVMEZCVEN4RFFVRndRaXhEUVVFelFpeEZRVUZwUlR0QlFVTTNSQ3g1UWtGQlN5eFRRVUZNTEVsQlFXdENMRXRCUVVzc1UwRkJUQ3hGUVVGblFpeFBRVUZvUWl4RFFVRjNRaXhqUVVGNFFpeEZRVUYzUXl4RlFVRjRReXhEUVVGc1FqdEJRVU5JT3p0QlFVVkVPMEZCUTBFc2IwSkJRVWtzUzBGQlN5eERRVUZNTEVWQlFWRXNUVUZCVWl4RFFVRmxMRU5CUVdZc1RVRkJjMElzUjBGQmRFSXNTVUZCTmtJc1UwRkJha01zUlVGQk5FTTdRVUZEZUVNN1FVRkRRVHRCUVVOQk8wRkJRMEVzTUVOQlFYTkNMRlZCUVZVc1MwRkJWaXhEUVVGblFpeERRVUZvUWl4RlFVRnRRaXhWUVVGVkxFMUJRVllzUjBGQmJVSXNRMEZCZEVNc1EwRkJkRUk3UVVGRFFTd3lRa0ZCVHl4dlFrRkJiMElzVFVGQmNFSXNRMEZCTWtJc1NVRkJNMElzUTBGQlVEdEJRVU5JT3p0QlFVVkVMSGxDUVVGVExFbEJRVlE3UVVGRFFTeDFRa0ZCVHl4TFFVRkxMRWxCUVV3c1EwRkJWU3hIUVVGV0xFTkJRVkE3UVVGRFNEczdRVUZGUkR0QlFVTkJMR2RDUVVGSkxGbEJRVmtzUjBGQldpeExRVUZ2UWl4aFFVRmhMRTlCUVdwRExFTkJRVW9zUlVGQkswTTdRVUZETTBNc05FSkJRVmtzUzBGQlN5eExRVUZNTEVOQlFWY3NSMEZCV0N4RFFVRmFPenRCUVVWQkxESkNRVUZYTEV0QlFVc3NTVUZCU1N4VlFVRlZMRTFCUVc1Q0xFVkJRVEpDTEVsQlFVa3NRMEZCTDBJc1JVRkJhME1zUzBGQlN5eERRVUYyUXl4RlFVRXdRenRCUVVOcVJDeHJRMEZCWXl4VlFVRlZMRXRCUVZZc1EwRkJaMElzUTBGQmFFSXNSVUZCYlVJc1EwRkJia0lzUlVGQmMwSXNTVUZCZEVJc1EwRkJNa0lzUjBGQk0wSXNRMEZCWkRzN1FVRkZRU3gzUWtGQlNTeFRRVUZLTEVWQlFXVTdRVUZEV0R0QlFVTkJPMEZCUTBFc05rSkJRVXNzU1VGQlNTeFZRVUZWTEUxQlFXNUNMRVZCUVRKQ0xFbEJRVWtzUTBGQkwwSXNSVUZCYTBNc1MwRkJTeXhEUVVGMlF5eEZRVUV3UXp0QlFVTjBReXgxUTBGQlZ5eFBRVUZQTEVkQlFWQXNSVUZCV1N4VlFVRlZMRXRCUVZZc1EwRkJaMElzUTBGQmFFSXNSVUZCYlVJc1EwRkJia0lzUlVGQmMwSXNTVUZCZEVJc1EwRkJNa0lzUjBGQk0wSXNRMEZCV2l4RFFVRllPenRCUVVWQk8wRkJRMEVzWjBOQlFVa3NVVUZCU2l4RlFVRmpPMEZCUTFZc01rTkJRVmNzVDBGQlR5eFJRVUZRTEVWQlFXbENMRmRCUVdwQ0xFTkJRVmc3UVVGRFFTeHZRMEZCU1N4UlFVRktMRVZCUVdNN1FVRkRWanRCUVVOQkxDdERRVUZYTEZGQlFWZzdRVUZEUVN3MlEwRkJVeXhEUVVGVU8wRkJRMEVzTUVOQlFVMHNVMEZCVGp0QlFVTklPMEZCUTBvN1FVRkRTanRCUVVOS096dEJRVVZFTzBGQlEwRTdRVUZEUVN4M1FrRkJTU3hEUVVGRExGbEJRVVFzU1VGQmFVSXNUMEZCYWtJc1NVRkJORUlzVDBGQlR5eFBRVUZRTEVWQlFXZENMRmRCUVdoQ0xFTkJRV2hETEVWQlFUaEVPMEZCUXpGRUxIVkRRVUZsTEU5QlFVOHNUMEZCVUN4RlFVRm5RaXhYUVVGb1FpeERRVUZtTzBGQlEwRXNaME5CUVZFc1EwRkJVanRCUVVOSU8wRkJRMG83TzBGQlJVUXNiMEpCUVVrc1EwRkJReXhSUVVGRUxFbEJRV0VzV1VGQmFrSXNSVUZCSzBJN1FVRkRNMElzSzBKQlFWY3NXVUZCV0R0QlFVTkJMRFpDUVVGVExFdEJRVlE3UVVGRFNEczdRVUZGUkN4dlFrRkJTU3hSUVVGS0xFVkJRV003UVVGRFZpdzRRa0ZCVlN4TlFVRldMRU5CUVdsQ0xFTkJRV3BDTEVWQlFXOUNMRTFCUVhCQ0xFVkJRVFJDTEZGQlFUVkNPMEZCUTBFc01rSkJRVThzVlVGQlZTeEpRVUZXTEVOQlFXVXNSMEZCWml4RFFVRlFPMEZCUTBnN1FVRkRTanM3UVVGRlJEdEJRVU5CTEhOQ1FVRlZMRTlCUVU4c1VVRkJUeXhKUVVGa0xFVkJRVzlDTEVsQlFYQkNMRU5CUVZZN08wRkJSVUVzYlVKQlFVOHNWVUZCVlN4UFFVRldMRWRCUVc5Q0xFbEJRVE5DTzBGQlEwZzdPMEZCUlVRc2FVSkJRVk1zV1VGQlZDeERRVUZ6UWl4SlFVRjBRaXhGUVVFMFFqdEJRVU40UWl4blFrRkJTU3hUUVVGS0xFVkJRV1U3UVVGRFdDeHhRa0ZCU3l4VFFVRk1MRVZCUVdkQ0xGVkJRVlVzVlVGQlZpeEZRVUZ6UWp0QlFVTnNReXgzUWtGQlNTeFhRVUZYTEZsQlFWZ3NRMEZCZDBJc2IwSkJRWGhDTEUxQlFXdEVMRWxCUVd4RUxFbEJRMEVzVjBGQlZ5eFpRVUZZTEVOQlFYZENMSEZDUVVGNFFpeE5RVUZ0UkN4UlFVRlJMRmRCUkM5RUxFVkJRelJGTzBGQlEzaEZMRzFEUVVGWExGVkJRVmdzUTBGQmMwSXNWMEZCZEVJc1EwRkJhME1zVlVGQmJFTTdRVUZEUVN3clFrRkJUeXhKUVVGUU8wRkJRMGc3UVVGRFNpeHBRa0ZPUkR0QlFVOUlPMEZCUTBvN08wRkJSVVFzYVVKQlFWTXNaVUZCVkN4RFFVRjVRaXhGUVVGNlFpeEZRVUUyUWp0QlFVTjZRaXhuUWtGQlNTeGhRVUZoTEU5QlFVOHNVVUZCVHl4TFFVRmtMRVZCUVhGQ0xFVkJRWEpDTEVOQlFXcENPMEZCUTBFc1owSkJRVWtzWTBGQll5eFJRVUZSTEZWQlFWSXNRMEZCWkN4SlFVRnhReXhYUVVGWExFMUJRVmdzUjBGQmIwSXNRMEZCTjBRc1JVRkJaMFU3UVVGRE5VUTdRVUZEUVN3eVFrRkJWeXhMUVVGWU8wRkJRMEVzZDBKQlFWRXNUMEZCVWl4RFFVRm5RaXhMUVVGb1FpeERRVUZ6UWl4RlFVRjBRanM3UVVGRlFUdEJRVU5CTEhkQ1FVRlJMRmRCUVZJc1EwRkJiMElzU1VGQmNFSXNSVUZCTUVJN1FVRkRkRUlzTmtKQlFWTTdRVUZFWVN4cFFrRkJNVUlzUlVGRlJ5eERRVUZETEVWQlFVUXNRMEZHU0RzN1FVRkpRU3gxUWtGQlR5eEpRVUZRTzBGQlEwZzdRVUZEU2pzN1FVRkZSRHRCUVVOQk8wRkJRMEVzYVVKQlFWTXNWMEZCVkN4RFFVRnhRaXhKUVVGeVFpeEZRVUV5UWp0QlFVTjJRaXhuUWtGQlNTeGxRVUZLTzBGQlFVRXNaMEpCUTBrc1VVRkJVU3hQUVVGUExFdEJRVXNzVDBGQlRDeERRVUZoTEVkQlFXSXNRMEZCVUN4SFFVRXlRaXhEUVVGRExFTkJSSGhETzBGQlJVRXNaMEpCUVVrc1VVRkJVU3hEUVVGRExFTkJRV0lzUlVGQlowSTdRVUZEV2l4NVFrRkJVeXhMUVVGTExGTkJRVXdzUTBGQlpTeERRVUZtTEVWQlFXdENMRXRCUVd4Q0xFTkJRVlE3UVVGRFFTeDFRa0ZCVHl4TFFVRkxMRk5CUVV3c1EwRkJaU3hSUVVGUkxFTkJRWFpDTEVWQlFUQkNMRXRCUVVzc1RVRkJMMElzUTBGQlVEdEJRVU5JTzBGQlEwUXNiVUpCUVU4c1EwRkJReXhOUVVGRUxFVkJRVk1zU1VGQlZDeERRVUZRTzBGQlEwZzdPMEZCUlVRN096czdPenM3T3pzN096dEJRVmxCTEdsQ1FVRlRMR0ZCUVZRc1EwRkJkVUlzU1VGQmRrSXNSVUZCTmtJc1pVRkJOMElzUlVGQk9FTXNXVUZCT1VNc1JVRkJORVFzVVVGQk5VUXNSVUZCYzBVN1FVRkRiRVVzWjBKQlFVa3NXVUZCU2p0QlFVRkJMR2RDUVVGVExIRkNRVUZVTzBGQlFVRXNaMEpCUVhWQ0xHVkJRWFpDTzBGQlFVRXNaMEpCUVN0Q0xHdENRVUV2UWp0QlFVRkJMR2RDUVVOSkxGTkJRVk1zU1VGRVlqdEJRVUZCTEdkQ1FVVkpMR0ZCUVdFc2EwSkJRV3RDTEdkQ1FVRm5RaXhKUVVGc1F5eEhRVUY1UXl4SlFVWXhSRHRCUVVGQkxHZENRVWRKTEdWQlFXVXNTVUZJYmtJN1FVRkJRU3huUWtGSlNTeFhRVUZYTEVsQlNtWTdRVUZCUVN4blFrRkxTU3hwUWtGQmFVSXNSVUZNY2tJN08wRkJUMEU3UVVGRFFUdEJRVU5CTEdkQ1FVRkpMRU5CUVVNc1NVRkJUQ3hGUVVGWE8wRkJRMUFzTWtKQlFWY3NTMEZCV0R0QlFVTkJMSFZDUVVGUExGTkJRVk1zYTBKQlFXdENMRU5CUVROQ0xFTkJRVkE3UVVGRFNEczdRVUZGUkN4M1FrRkJXU3haUVVGWkxFbEJRVm9zUTBGQldqdEJRVU5CTEhGQ1FVRlRMRlZCUVZVc1EwRkJWaXhEUVVGVU8wRkJRMEVzYlVKQlFVOHNWVUZCVlN4RFFVRldMRU5CUVZBN08wRkJSVUVzWjBKQlFVa3NUVUZCU2l4RlFVRlpPMEZCUTFJc2VVSkJRVk1zVlVGQlZTeE5RVUZXTEVWQlFXdENMRlZCUVd4Q0xFVkJRVGhDTEZGQlFUbENMRU5CUVZRN1FVRkRRU3dyUWtGQlpTeFBRVUZQTEZGQlFWQXNSVUZCWjBJc1RVRkJhRUlzUTBGQlpqdEJRVU5JT3p0QlFVVkVPMEZCUTBFc1owSkJRVWtzU1VGQlNpeEZRVUZWTzBGQlEwNHNiMEpCUVVrc1RVRkJTaXhGUVVGWk8wRkJRMUlzZDBKQlFVa3NaMEpCUVdkQ0xHRkJRV0VzVTBGQmFrTXNSVUZCTkVNN1FVRkRlRU03UVVGRFFTeDVRMEZCYVVJc1lVRkJZU3hUUVVGaUxFTkJRWFZDTEVsQlFYWkNMRVZCUVRaQ0xGVkJRVlVzU1VGQlZpeEZRVUZuUWp0QlFVTXhSQ3h0UTBGQlR5eFZRVUZWTEVsQlFWWXNSVUZCWjBJc1ZVRkJhRUlzUlVGQk5FSXNVVUZCTlVJc1EwRkJVRHRCUVVOSUxIbENRVVpuUWl4RFFVRnFRanRCUVVkSUxIRkNRVXhFTEUxQlMwODdRVUZEU0R0QlFVTkJPMEZCUTBFN1FVRkRRVHRCUVVOQk8wRkJRMEU3UVVGRFFUdEJRVU5CTEhsRFFVRnBRaXhMUVVGTExFOUJRVXdzUTBGQllTeEhRVUZpTEUxQlFYTkNMRU5CUVVNc1EwRkJka0lzUjBGRFlpeFZRVUZWTEVsQlFWWXNSVUZCWjBJc1ZVRkJhRUlzUlVGQk5FSXNVVUZCTlVJc1EwRkVZU3hIUVVWaUxFbEJSa283UVVGSFNEdEJRVU5LTEdsQ1FXeENSQ3hOUVd0Q1R6dEJRVU5JTzBGQlEwRXNjVU5CUVdsQ0xGVkJRVlVzU1VGQlZpeEZRVUZuUWl4VlFVRm9RaXhGUVVFMFFpeFJRVUUxUWl4RFFVRnFRanM3UVVGRlFUdEJRVU5CTzBGQlEwRTdRVUZEUVN4blEwRkJXU3haUVVGWkxHTkJRVm9zUTBGQldqdEJRVU5CTERaQ1FVRlRMRlZCUVZVc1EwRkJWaXhEUVVGVU8wRkJRMEVzY1VOQlFXbENMRlZCUVZVc1EwRkJWaXhEUVVGcVFqdEJRVU5CTEcxRFFVRmxMRWxCUVdZN08wRkJSVUVzTUVKQlFVMHNVVUZCVVN4VFFVRlNMRU5CUVd0Q0xHTkJRV3hDTEVOQlFVNDdRVUZEU0R0QlFVTktPenRCUVVWRU8wRkJRMEU3UVVGRFFUdEJRVU5CTEhGQ1FVRlRMRlZCUVZVc1EwRkJReXhaUVVGWUxFbEJRVEpDTEVOQlFVTXNXVUZCTlVJc1IwRkRUQ3h0UWtGQmJVSXNkVUpCUVhWQ0xFTkJRVEZETEVOQlJFc3NSMEZGVEN4RlFVWktPenRCUVVsQkxHMUNRVUZQTzBGQlEwZ3NkMEpCUVZFc1RVRkVURHRCUVVWSUxITkNRVUZOTEdOQlJrZzdRVUZIU0N3eVFrRkJWeXhsUVVoU08wRkJTVWdzT0VKQlFXTXNRMEZCUXl4RFFVRkRMRTFCU21JN1FVRkxTQ3h4UWtGQlN5eEhRVXhHTzBGQlRVZ3NPRUpCUVdNc1dVRk9XRHRCUVU5SUxEQkNRVUZWTEZGQlVGQTdRVUZSU0N4dlFrRkJTU3hEUVVGRExGTkJRMFFzVTBGQlV5eEhRVUZVTEVkQlFXVXNZMEZFWkN4SFFVVkVMR05CUmtFc1NVRkZhMEk3UVVGV2JrSXNZVUZCVUR0QlFWbElPenRCUVVWRUxHbENRVUZUTEZOQlFWUXNRMEZCYlVJc1RVRkJia0lzUlVGQk1rSTdRVUZEZGtJc1owSkJRVWtzUzBGQlN5eFBRVUZQTEVWQlFXaENPMEZCUVVFc1owSkJRMGtzVFVGQlRTeFBRVUZQTEZGQlFWQXNSVUZCYVVJc1JVRkJha0lzUTBGRVZqczdRVUZIUVN4blFrRkJTU3hEUVVGRExFZEJRVXdzUlVGQlZUdEJRVU5PTEhOQ1FVRk5MRk5CUVZNc1JVRkJWQ3hKUVVGbExFbEJRVWtzVVVGQlVTeE5RVUZhTEVOQlFXMUNMRTFCUVc1Q0xFTkJRWEpDTzBGQlEwZzdPMEZCUlVRc2JVSkJRVThzUjBGQlVEdEJRVU5JT3p0QlFVVkVMR2xDUVVGVExFVkJRVlFzUTBGQldTeE5RVUZhTEVWQlFXOUNMRWxCUVhCQ0xFVkJRVEJDTEVWQlFURkNMRVZCUVRoQ08wRkJRekZDTEdkQ1FVRkpMRXRCUVVzc1QwRkJUeXhGUVVGb1FqdEJRVUZCTEdkQ1FVTkpMRTFCUVUwc1QwRkJUeXhSUVVGUUxFVkJRV2xDTEVWQlFXcENMRU5CUkZZN08wRkJSMEVzWjBKQlFVa3NVVUZCVVN4UlFVRlNMRVZCUVdsQ0xFVkJRV3BDTEUxQlEwTXNRMEZCUXl4SFFVRkVMRWxCUVZFc1NVRkJTU3hyUWtGRVlpeERRVUZLTEVWQlEzTkRPMEZCUTJ4RExHOUNRVUZKTEZOQlFWTXNVMEZCWWl4RlFVRjNRanRCUVVOd1FpeDFRa0ZCUnl4VFFVRlJMRVZCUVZJc1EwRkJTRHRCUVVOSU8wRkJRMG9zWVVGTVJDeE5RVXRQTzBGQlEwZ3NjMEpCUVUwc1ZVRkJWU3hOUVVGV0xFTkJRVTQ3UVVGRFFTeHZRa0ZCU1N4SlFVRkpMRXRCUVVvc1NVRkJZU3hUUVVGVExFOUJRVEZDTEVWQlFXMURPMEZCUXk5Q0xIVkNRVUZITEVsQlFVa3NTMEZCVUR0QlFVTklMR2xDUVVaRUxFMUJSVTg3UVVGRFNDeDNRa0ZCU1N4RlFVRktMRU5CUVU4c1NVRkJVQ3hGUVVGaExFVkJRV0k3UVVGRFNEdEJRVU5LTzBGQlEwbzdPMEZCUlVRc2FVSkJRVk1zVDBGQlZDeERRVUZwUWl4SFFVRnFRaXhGUVVGelFpeFBRVUYwUWl4RlFVRXJRanRCUVVNelFpeG5Ra0ZCU1N4TlFVRk5MRWxCUVVrc1kwRkJaRHRCUVVGQkxHZENRVU5KTEZkQlFWY3NTMEZFWmpzN1FVRkhRU3huUWtGQlNTeFBRVUZLTEVWQlFXRTdRVUZEVkN4M1FrRkJVU3hIUVVGU08wRkJRMGdzWVVGR1JDeE5RVVZQTzBGQlEwZ3NjVUpCUVVzc1IwRkJUQ3hGUVVGVkxGVkJRVlVzUlVGQlZpeEZRVUZqTzBGQlEzQkNMSGRDUVVGSkxFMUJRVTBzVDBGQlR5eFJRVUZRTEVWQlFXbENMRVZCUVdwQ0xFTkJRVlk3UVVGRFFTeDNRa0ZCU1N4SFFVRktMRVZCUVZNN1FVRkRURHRCUVVOQkxEUkNRVUZKTEV0QlFVb3NSMEZCV1N4SFFVRmFPMEZCUTBFc05FSkJRVWtzU1VGQlNTeE5RVUZLTEVOQlFWY3NTMEZCWml4RlFVRnpRanRCUVVOc1FpeDFRMEZCVnl4SlFVRllPMEZCUTBFc1owTkJRVWtzU1VGQlNpeERRVUZUTEU5QlFWUXNSVUZCYTBJc1IwRkJiRUk3UVVGRFNEdEJRVU5LTzBGQlEwb3NhVUpCVmtRN08wRkJXVUVzYjBKQlFVa3NRMEZCUXl4UlFVRk1MRVZCUVdVN1FVRkRXQ3gzUWtGQlNTeFBRVUZLTEVOQlFWa3NSMEZCV2p0QlFVTklPMEZCUTBvN1FVRkRTanM3UVVGRlJEczdPenRCUVVsQkxHbENRVUZUTEdWQlFWUXNSMEZCTWtJN1FVRkRka0k3UVVGRFFTeG5Ra0ZCU1N4bFFVRmxMRTFCUVc1Q0xFVkJRVEpDTzBGQlEzWkNMSEZDUVVGTExHTkJRVXdzUlVGQmNVSXNWVUZCVlN4VFFVRldMRVZCUVhGQ08wRkJRM1JETEhkQ1FVRkpMRXRCUVVzc1ZVRkJWU3hEUVVGV0xFTkJRVlE3UVVGRFFTeDNRa0ZCU1N4UFFVRlBMRVZCUVZBc1MwRkJZeXhSUVVGc1FpeEZRVUUwUWp0QlFVTjRRaXhuUTBGQlVTeFhRVUZTTEVOQlFXOUNMRVZCUVhCQ0xFbEJRVEJDTEVsQlFURkNPMEZCUTBnN1FVRkRSQ3cyUWtGQlV5eEpRVUZVTEVOQlFXTXNVMEZCWkR0QlFVTklMR2xDUVU1RU8wRkJUMEVzYVVOQlFXbENMRVZCUVdwQ08wRkJRMGc3UVVGRFNqczdRVUZGUkN4dFFrRkJWenRCUVVOUUxIVkNRVUZYTEdsQ1FVRlZMRWRCUVZZc1JVRkJaVHRCUVVOMFFpeHZRa0ZCU1N4SlFVRkpMRTlCUVZJc1JVRkJhVUk3UVVGRFlpd3lRa0ZCVHl4SlFVRkpMRTlCUVZnN1FVRkRTQ3hwUWtGR1JDeE5RVVZQTzBGQlEwZ3NNa0pCUVZFc1NVRkJTU3hQUVVGS0xFZEJRV01zVVVGQlVTeFhRVUZTTEVOQlFXOUNMRWxCUVVrc1IwRkJlRUlzUTBGQmRFSTdRVUZEU0R0QlFVTktMR0ZCVUUwN1FVRlJVQ3gxUWtGQlZ5eHBRa0ZCVlN4SFFVRldMRVZCUVdVN1FVRkRkRUlzYjBKQlFVa3NXVUZCU2l4SFFVRnRRaXhKUVVGdVFqdEJRVU5CTEc5Q1FVRkpMRWxCUVVrc1IwRkJTaXhEUVVGUkxGRkJRVm9zUlVGQmMwSTdRVUZEYkVJc2QwSkJRVWtzU1VGQlNTeFBRVUZTTEVWQlFXbENPMEZCUTJJc0swSkJRVkVzVTBGQlVTeEpRVUZKTEVkQlFVb3NRMEZCVVN4RlFVRm9RaXhKUVVGelFpeEpRVUZKTEU5QlFXeERPMEZCUTBnc2NVSkJSa1FzVFVGRlR6dEJRVU5JTEN0Q1FVRlJMRWxCUVVrc1QwRkJTaXhIUVVGakxGTkJRVkVzU1VGQlNTeEhRVUZLTEVOQlFWRXNSVUZCYUVJc1NVRkJjMElzUlVGQk5VTTdRVUZEU0R0QlFVTktPMEZCUTBvc1lVRnFRazA3UVVGclFsQXNjMEpCUVZVc1owSkJRVlVzUjBGQlZpeEZRVUZsTzBGQlEzSkNMRzlDUVVGSkxFbEJRVWtzVFVGQlVpeEZRVUZuUWp0QlFVTmFMREpDUVVGUExFbEJRVWtzVFVGQldEdEJRVU5JTEdsQ1FVWkVMRTFCUlU4N1FVRkRTQ3d5UWtGQlVTeEpRVUZKTEUxQlFVb3NSMEZCWVR0QlFVTnFRaXcwUWtGQlNTeEpRVUZKTEVkQlFVb3NRMEZCVVN4RlFVUkxPMEZCUldwQ0xEWkNRVUZMTEVsQlFVa3NSMEZCU2l4RFFVRlJMRWRCUmtrN1FVRkhha0lzWjBOQlFWRXNhMEpCUVZrN1FVRkRhRUlzYlVOQlFVOHNUMEZCVHl4UlFVRlBMRTFCUVdRc1JVRkJjMElzU1VGQlNTeEhRVUZLTEVOQlFWRXNSVUZCT1VJc1MwRkJjVU1zUlVGQk5VTTdRVUZEU0N4NVFrRk1aMEk3UVVGTmFrSXNhVU5CUVZNc1NVRkJTU3hQUVVGS0xFdEJRV2RDTEVsQlFVa3NUMEZCU2l4SFFVRmpMRVZCUVRsQ08wRkJUbEVzY1VKQlFYSkNPMEZCVVVnN1FVRkRTanRCUVM5Q1RTeFRRVUZZT3p0QlFXdERRU3hwUWtGQlV5eGhRVUZVTEVOQlFYVkNMRVZCUVhaQ0xFVkJRVEpDTzBGQlEzWkNPMEZCUTBFc2JVSkJRVThzVTBGQlV5eEZRVUZVTEVOQlFWQTdRVUZEUVN4dFFrRkJUeXhuUWtGQlowSXNSVUZCYUVJc1EwRkJVRHRCUVVOSU96dEJRVVZFTEdsQ1FVRlRMRlZCUVZRc1EwRkJiMElzUjBGQmNFSXNSVUZCZVVJc1RVRkJla0lzUlVGQmFVTXNVMEZCYWtNc1JVRkJORU03UVVGRGVFTXNaMEpCUVVrc1MwRkJTeXhKUVVGSkxFZEJRVW9zUTBGQlVTeEZRVUZxUWpzN1FVRkZRU3huUWtGQlNTeEpRVUZKTEV0QlFWSXNSVUZCWlR0QlFVTllMRzlDUVVGSkxFbEJRVW9zUTBGQlV5eFBRVUZVTEVWQlFXdENMRWxCUVVrc1MwRkJkRUk3UVVGRFNDeGhRVVpFTEUxQlJVODdRVUZEU0N4MVFrRkJUeXhGUVVGUUxFbEJRV0VzU1VGQllqdEJRVU5CTEhGQ1FVRkxMRWxCUVVrc1QwRkJWQ3hGUVVGclFpeFZRVUZWTEUxQlFWWXNSVUZCYTBJc1EwRkJiRUlzUlVGQmNVSTdRVUZEYmtNc2QwSkJRVWtzVVVGQlVTeFBRVUZQTEVWQlFXNUNPMEZCUVVFc2QwSkJRMGtzVFVGQlRTeFBRVUZQTEZGQlFWQXNSVUZCYVVJc1MwRkJha0lzUTBGRVZqczdRVUZIUVR0QlFVTkJPMEZCUTBFN1FVRkRRVHRCUVVOQkxIZENRVUZKTEU5QlFVOHNRMEZCUXl4SlFVRkpMRlZCUVVvc1EwRkJaU3hEUVVGbUxFTkJRVklzU1VGQk5rSXNRMEZCUXl4VlFVRlZMRXRCUVZZc1EwRkJiRU1zUlVGQmIwUTdRVUZEYUVRc05FSkJRVWtzVDBGQlR5eE5RVUZRTEVWQlFXVXNTMEZCWml4RFFVRktMRVZCUVRKQ08wRkJRM1pDTEdkRFFVRkpMRk5CUVVvc1EwRkJZeXhEUVVGa0xFVkJRV2xDTEZOQlFWRXNTMEZCVWl4RFFVRnFRanRCUVVOQkxHZERRVUZKTEV0QlFVb3NSMEZHZFVJc1EwRkZWanRCUVVOb1FpeDVRa0ZJUkN4TlFVZFBPMEZCUTBnc2RVTkJRVmNzUjBGQldDeEZRVUZuUWl4TlFVRm9RaXhGUVVGM1FpeFRRVUY0UWp0QlFVTklPMEZCUTBvN1FVRkRTaXhwUWtGb1FrUTdRVUZwUWtFc01FSkJRVlVzUlVGQlZpeEpRVUZuUWl4SlFVRm9RanRCUVVOSU8wRkJRMG83TzBGQlJVUXNhVUpCUVZNc1YwRkJWQ3hIUVVGMVFqdEJRVU51UWl4blFrRkJTU3haUVVGS08wRkJRVUVzWjBKQlFWTXNNRUpCUVZRN1FVRkJRU3huUWtGRFNTeGxRVUZsTEZGQlFVOHNWMEZCVUN4SFFVRnhRaXhKUVVSNFF6czdRVUZGU1R0QlFVTkJMSE5DUVVGVkxHZENRVUZwUWl4UlFVRlJMRk5CUVZJc1IwRkJiMElzV1VGQmNrSXNSMEZCY1VNc1NVRkJTU3hKUVVGS0xFZEJRVmNzVDBGQldDeEZRVWh1UlR0QlFVRkJMR2RDUVVsSkxGVkJRVlVzUlVGS1pEdEJRVUZCTEdkQ1FVdEpMRmRCUVZjc1JVRk1aanRCUVVGQkxHZENRVTFKTEdWQlFXVXNTMEZPYmtJN1FVRkJRU3huUWtGUFNTeHBRa0ZCYVVJc1NVRlFja0k3TzBGQlUwRTdRVUZEUVN4blFrRkJTU3hoUVVGS0xFVkJRVzFDTzBGQlEyWTdRVUZEU0RzN1FVRkZSQ3cwUWtGQlowSXNTVUZCYUVJN08wRkJSVUU3UVVGRFFTeHhRa0ZCVXl4bFFVRlVMRVZCUVRCQ0xGVkJRVlVzUjBGQlZpeEZRVUZsTzBGQlEzSkRMRzlDUVVGSkxFMUJRVTBzU1VGQlNTeEhRVUZrTzBGQlFVRXNiMEpCUTBrc1VVRkJVU3hKUVVGSkxFVkJSR2hDT3p0QlFVZEJPMEZCUTBFc2IwSkJRVWtzUTBGQlF5eEpRVUZKTEU5QlFWUXNSVUZCYTBJN1FVRkRaRHRCUVVOSU96dEJRVVZFTEc5Q1FVRkpMRU5CUVVNc1NVRkJTU3hSUVVGVUxFVkJRVzFDTzBGQlEyWXNOa0pCUVZNc1NVRkJWQ3hEUVVGakxFZEJRV1E3UVVGRFNEczdRVUZGUkN4dlFrRkJTU3hEUVVGRExFbEJRVWtzUzBGQlZDeEZRVUZuUWp0QlFVTmFPMEZCUTBFN1FVRkRRU3gzUWtGQlNTeERRVUZETEVsQlFVa3NUVUZCVEN4SlFVRmxMRTlCUVc1Q0xFVkJRVFJDTzBGQlEzaENMRFJDUVVGSkxHZENRVUZuUWl4TFFVRm9RaXhEUVVGS0xFVkJRVFJDTzBGQlEzaENMR2RFUVVGdlFpeEpRVUZ3UWp0QlFVTkJMREpEUVVGbExFbEJRV1k3UVVGRFNDeDVRa0ZJUkN4TlFVZFBPMEZCUTBnc2IwTkJRVkVzU1VGQlVpeERRVUZoTEV0QlFXSTdRVUZEUVN4NVEwRkJZU3hMUVVGaU8wRkJRMGc3UVVGRFNpeHhRa0ZTUkN4TlFWRlBMRWxCUVVrc1EwRkJReXhKUVVGSkxFMUJRVXdzU1VGQlpTeEpRVUZKTEU5QlFXNUNMRWxCUVRoQ0xFbEJRVWtzVVVGQmRFTXNSVUZCWjBRN1FVRkRia1FzZFVOQlFXVXNTVUZCWmp0QlFVTkJMRFJDUVVGSkxFTkJRVU1zU1VGQlNTeE5RVUZVTEVWQlFXbENPMEZCUTJJN1FVRkRRVHRCUVVOQk8wRkJRMEU3UVVGRFFUdEJRVU5CTEcxRFFVRlJMR2xDUVVGcFFpeExRVUY2UWp0QlFVTklPMEZCUTBvN1FVRkRTanRCUVVOS0xHRkJjRU5FT3p0QlFYTkRRU3huUWtGQlNTeFhRVUZYTEZGQlFWRXNUVUZCZGtJc1JVRkJLMEk3UVVGRE0wSTdRVUZEUVN4elFrRkJUU3hWUVVGVkxGTkJRVllzUlVGQmNVSXNLMEpCUVN0Q0xFOUJRWEJFTEVWQlFUWkVMRWxCUVRkRUxFVkJRVzFGTEU5QlFXNUZMRU5CUVU0N1FVRkRRU3h2UWtGQlNTeFhRVUZLTEVkQlFXdENMRkZCUVZFc1YwRkJNVUk3UVVGRFFTeDFRa0ZCVHl4UlFVRlJMRWRCUVZJc1EwRkJVRHRCUVVOSU96dEJRVVZFTzBGQlEwRXNaMEpCUVVrc1kwRkJTaXhGUVVGdlFqdEJRVU5vUWl4eFFrRkJTeXhSUVVGTUxFVkJRV1VzVlVGQlZTeEhRVUZXTEVWQlFXVTdRVUZETVVJc0swSkJRVmNzUjBGQldDeEZRVUZuUWl4RlFVRm9RaXhGUVVGdlFpeEZRVUZ3UWp0QlFVTklMR2xDUVVaRU8wRkJSMGc3TzBGQlJVUTdRVUZEUVR0QlFVTkJPMEZCUTBFc1owSkJRVWtzUTBGQlF5eERRVUZETEU5QlFVUXNTVUZCV1N4cFFrRkJZaXhMUVVGdFF5eFpRVUYyUXl4RlFVRnhSRHRCUVVOcVJEdEJRVU5CTzBGQlEwRXNiMEpCUVVrc1EwRkJReXhoUVVGaExGZEJRV1FzUzBGQk9FSXNRMEZCUXl4dlFrRkJia01zUlVGQmVVUTdRVUZEY2tRc01rTkJRWFZDTEZkQlFWY3NXVUZCV1R0QlFVTXhReXdyUTBGQmRVSXNRMEZCZGtJN1FVRkRRVHRCUVVOSUxIRkNRVWh6UWl4RlFVZHdRaXhGUVVodlFpeERRVUYyUWp0QlFVbElPMEZCUTBvN08wRkJSVVFzTkVKQlFXZENMRXRCUVdoQ08wRkJRMGc3TzBGQlJVUXNhVUpCUVZNc1owSkJRVlVzUjBGQlZpeEZRVUZsTzBGQlEzQkNMR2xDUVVGTExFMUJRVXdzUjBGQll5eFBRVUZQTEZkQlFWQXNSVUZCYjBJc1NVRkJTU3hGUVVGNFFpeExRVUVyUWl4RlFVRTNRenRCUVVOQkxHbENRVUZMTEVkQlFVd3NSMEZCVnl4SFFVRllPMEZCUTBFc2FVSkJRVXNzU1VGQlRDeEhRVUZaTEU5QlFVOHNVVUZCVHl4SlFVRmtMRVZCUVc5Q0xFbEJRVWtzUlVGQmVFSXNRMEZCV2p0QlFVTkJMR2xDUVVGTExGVkJRVXdzUjBGQmEwSXNSVUZCYkVJN1FVRkRRU3hwUWtGQlN5eFBRVUZNTEVkQlFXVXNSVUZCWmp0QlFVTkJMR2xDUVVGTExGVkJRVXdzUjBGQmEwSXNSVUZCYkVJN1FVRkRRU3hwUWtGQlN5eFZRVUZNTEVkQlFXdENMRVZCUVd4Q08wRkJRMEVzYVVKQlFVc3NVVUZCVEN4SFFVRm5RaXhEUVVGb1FqczdRVUZGUVRzN096dEJRVWxJTEZOQlpFUTdPMEZCWjBKQkxHVkJRVThzVTBGQlVDeEhRVUZ0UWp0QlFVTm1MR3RDUVVGTkxHTkJRVlVzVDBGQlZpeEZRVUZ0UWl4UFFVRnVRaXhGUVVFMFFpeFBRVUUxUWl4RlFVRnhReXhQUVVGeVF5eEZRVUU0UXp0QlFVTm9SQ3d3UWtGQlZTeFhRVUZYTEVWQlFYSkNPenRCUVVWQk8wRkJRMEU3UVVGRFFUdEJRVU5CTEc5Q1FVRkpMRXRCUVVzc1RVRkJWQ3hGUVVGcFFqdEJRVU5pTzBGQlEwZzdPMEZCUlVRc2NVSkJRVXNzVDBGQlRDeEhRVUZsTEU5QlFXWTdPMEZCUlVFc2IwSkJRVWtzVDBGQlNpeEZRVUZoTzBGQlExUTdRVUZEUVN4NVFrRkJTeXhGUVVGTUxFTkJRVkVzVDBGQlVpeEZRVUZwUWl4UFFVRnFRanRCUVVOSUxHbENRVWhFTEUxQlIwOHNTVUZCU1N4TFFVRkxMRTFCUVV3c1EwRkJXU3hMUVVGb1FpeEZRVUYxUWp0QlFVTXhRanRCUVVOQk8wRkJRMEVzT0VKQlFWVXNTMEZCU3l4SlFVRk1MRVZCUVZjc1ZVRkJWU3hIUVVGV0xFVkJRV1U3UVVGRGFFTXNOa0pCUVVzc1NVRkJUQ3hEUVVGVkxFOUJRVllzUlVGQmJVSXNSMEZCYmtJN1FVRkRTQ3h4UWtGR1V5eERRVUZXTzBGQlIwZzdPMEZCUlVRN1FVRkRRVHRCUVVOQk8wRkJRMEU3UVVGRFFUdEJRVU5CTEhGQ1FVRkxMRTlCUVV3c1IwRkJaU3hYUVVGWExGRkJRVkVzUzBGQlVpeERRVUZqTEVOQlFXUXNRMEZCTVVJN08wRkJSVUVzY1VKQlFVc3NUMEZCVEN4SFFVRmxMRTlCUVdZN08wRkJSVUU3UVVGRFFTeHhRa0ZCU3l4TlFVRk1MRWRCUVdNc1NVRkJaRHM3UVVGRlFTeHhRa0ZCU3l4TlFVRk1MRWRCUVdNc1VVRkJVU3hOUVVGMFFqczdRVUZGUVR0QlFVTkJPMEZCUTBFN1FVRkRRVHRCUVVOQkxHOUNRVUZKTEZGQlFWRXNUMEZCVWl4SlFVRnRRaXhMUVVGTExFOUJRVFZDTEVWQlFYRkRPMEZCUTJwRE8wRkJRMEU3UVVGRFFTeDVRa0ZCU3l4TlFVRk1PMEZCUTBnc2FVSkJTa1FzVFVGSlR6dEJRVU5JTEhsQ1FVRkxMRXRCUVV3N1FVRkRTRHRCUVVOS0xHRkJha1JqT3p0QlFXMUVaaXgxUWtGQlZ5eHRRa0ZCVlN4RFFVRldMRVZCUVdFc1ZVRkJZaXhGUVVGNVFqdEJRVU5vUXp0QlFVTkJPMEZCUTBFc2IwSkJRVWtzUTBGQlF5eExRVUZMTEZWQlFVd3NRMEZCWjBJc1EwRkJhRUlzUTBGQlRDeEZRVUY1UWp0QlFVTnlRaXg1UWtGQlN5eFZRVUZNTEVOQlFXZENMRU5CUVdoQ0xFbEJRWEZDTEVsQlFYSkNPMEZCUTBFc2VVSkJRVXNzVVVGQlRDeEpRVUZwUWl4RFFVRnFRanRCUVVOQkxIbENRVUZMTEZWQlFVd3NRMEZCWjBJc1EwRkJhRUlzU1VGQmNVSXNWVUZCY2tJN1FVRkRTRHRCUVVOS0xHRkJNMFJqT3p0QlFUWkVaaXh0UWtGQlR5eHBRa0ZCV1R0QlFVTm1MRzlDUVVGSkxFdEJRVXNzVDBGQlZDeEZRVUZyUWp0QlFVTmtPMEZCUTBnN1FVRkRSQ3h4UWtGQlN5eFBRVUZNTEVkQlFXVXNTVUZCWmpzN1FVRkZRU3gzUWtGQlVTeFRRVUZTTEVkQlFYRkNMRWxCUVVrc1NVRkJTaXhGUVVGRUxFTkJRV0VzVDBGQllpeEZRVUZ3UWpzN1FVRkZRU3h2UWtGQlNTeE5RVUZOTEV0QlFVc3NSMEZCWmpzN1FVRkZRVHRCUVVOQk8wRkJRMEVzYjBKQlFVa3NTMEZCU3l4SlFVRlVMRVZCUVdVN1FVRkRXQ3cwUWtGQlVTeFhRVUZTTEVOQlFXOUNMRXRCUVVzc1IwRkJla0lzUlVGQk9FSTdRVUZETVVJc05rTkJRWEZDTzBGQlJFc3NjVUpCUVRsQ0xFVkJSVWNzUzBGQlN5eEpRVUZNTEVOQlFWVXNTVUZCVml4SlFVRnJRaXhGUVVaeVFpeEZRVVY1UWl4TFFVRkxMRWxCUVV3c1JVRkJWeXhaUVVGWk8wRkJRelZETEN0Q1FVRlBMRWxCUVVrc1RVRkJTaXhIUVVGaExFdEJRVXNzVlVGQlRDeEZRVUZpTEVkQlFXbERMRXRCUVVzc1NVRkJUQ3hGUVVGNFF6dEJRVU5JTEhGQ1FVWjNRaXhEUVVaNlFqdEJRVXRJTEdsQ1FVNUVMRTFCVFU4N1FVRkRTRHRCUVVOQkxESkNRVUZQTEVsQlFVa3NUVUZCU2l4SFFVRmhMRXRCUVVzc1ZVRkJUQ3hGUVVGaUxFZEJRV2xETEV0QlFVc3NTVUZCVEN4RlFVRjRRenRCUVVOSU8wRkJRMG9zWVVGdVJtTTdPMEZCY1VabUxHdENRVUZOTEdkQ1FVRlpPMEZCUTJRc2IwSkJRVWtzVFVGQlRTeExRVUZMTEVkQlFVd3NRMEZCVXl4SFFVRnVRanM3UVVGRlFUdEJRVU5CTEc5Q1FVRkpMRU5CUVVNc1YwRkJWeXhIUVVGWUxFTkJRVXdzUlVGQmMwSTdRVUZEYkVJc0swSkJRVmNzUjBGQldDeEpRVUZyUWl4SlFVRnNRanRCUVVOQkxEUkNRVUZSTEVsQlFWSXNRMEZCWVN4TFFVRkxMRWRCUVV3c1EwRkJVeXhGUVVGMFFpeEZRVUV3UWl4SFFVRXhRanRCUVVOSU8wRkJRMG9zWVVFM1JtTTdPMEZCSzBabU96czdPMEZCU1VFc2JVSkJRVThzYVVKQlFWazdRVUZEWml4dlFrRkJTU3hEUVVGRExFdEJRVXNzVDBGQlRpeEpRVUZwUWl4TFFVRkxMRkZCUVRGQ0xFVkJRVzlETzBGQlEyaERPMEZCUTBnN08wRkJSVVFzYjBKQlFVa3NXVUZCU2p0QlFVRkJMRzlDUVVGVExHdENRVUZVTzBGQlFVRXNiMEpCUTBrc1MwRkJTeXhMUVVGTExFZEJRVXdzUTBGQlV5eEZRVVJzUWp0QlFVRkJMRzlDUVVWSkxHRkJRV0VzUzBGQlN5eFZRVVowUWp0QlFVRkJMRzlDUVVkSkxGVkJRVlVzUzBGQlN5eFBRVWh1UWp0QlFVRkJMRzlDUVVsSkxGVkJRVlVzUzBGQlN5eFBRVXB1UWpzN1FVRk5RU3h2UWtGQlNTeERRVUZETEV0QlFVc3NUVUZCVml4RlFVRnJRanRCUVVOa08wRkJRMEVzZDBKQlFVa3NRMEZCUXl4UlFVRlJMRkZCUVZFc1YwRkJhRUlzUlVGQk5rSXNSVUZCTjBJc1EwRkJUQ3hGUVVGMVF6dEJRVU51UXl3MlFrRkJTeXhMUVVGTU8wRkJRMGc3UVVGRFNpeHBRa0ZNUkN4TlFVdFBMRWxCUVVrc1MwRkJTeXhMUVVGVUxFVkJRV2RDTzBGQlEyNUNMSGxDUVVGTExFbEJRVXdzUTBGQlZTeFBRVUZXTEVWQlFXMUNMRXRCUVVzc1MwRkJlRUk3UVVGRFNDeHBRa0ZHVFN4TlFVVkJMRWxCUVVrc1EwRkJReXhMUVVGTExGRkJRVllzUlVGQmIwSTdRVUZEZGtJN1FVRkRRVHRCUVVOQk8wRkJRMEU3UVVGRFFTeDVRa0ZCU3l4UlFVRk1MRWRCUVdkQ0xFbEJRV2hDT3p0QlFVVkJMSGRDUVVGSkxFdEJRVXNzVVVGQlRDeEhRVUZuUWl4RFFVRm9RaXhKUVVGeFFpeERRVUZETEV0QlFVc3NUMEZCTDBJc1JVRkJkME03UVVGRGNFTXNORUpCUVVrc1YwRkJWeXhQUVVGWUxFTkJRVW9zUlVGQmVVSTdRVUZEY2tJc1owTkJRVWs3UVVGRFFTd3dRMEZCVlN4UlFVRlJMRTFCUVZJc1EwRkJaU3hGUVVGbUxFVkJRVzFDTEU5QlFXNUNMRVZCUVRSQ0xGVkJRVFZDTEVWQlFYZERMRTlCUVhoRExFTkJRVlk3UVVGRFNDdzJRa0ZHUkN4RFFVVkZMRTlCUVU4c1EwRkJVQ3hGUVVGVk8wRkJRMUlzYzBOQlFVMHNRMEZCVGp0QlFVTklPenRCUVVWRU8wRkJRMEU3UVVGRFFUdEJRVU5CTEdkRFFVRkpMRXRCUVVzc1IwRkJUQ3hEUVVGVExGRkJRVlFzU1VGQmNVSXNXVUZCV1N4VFFVRnlReXhGUVVGblJEdEJRVU0xUXl3MFEwRkJXU3hMUVVGTExFMUJRV3BDTzBGQlEwRXNiME5CUVVrc1UwRkJTaXhGUVVGbE8wRkJRMWdzT0VOQlFWVXNWVUZCVlN4UFFVRndRanRCUVVOSUxHbERRVVpFTEUxQlJVOHNTVUZCU1N4TFFVRkxMRmxCUVZRc1JVRkJkVUk3UVVGRE1VSTdRVUZEUVN3NFEwRkJWU3hMUVVGTExFOUJRV1k3UVVGRFNEdEJRVU5LT3p0QlFVVkVMR2REUVVGSkxFZEJRVW9zUlVGQlV6dEJRVU5NTzBGQlEwRTdRVUZEUVR0QlFVTkJPMEZCUTBFN1FVRkRRVHRCUVVOQkxHOURRVUZMTEV0QlFVc3NUVUZCVEN4RFFVRlpMRXRCUVZvc1NVRkJjVUlzUzBGQlN5eEhRVUZNTEVOQlFWTXNVVUZCTDBJc1NVRkRRU3hKUVVGSkxFOUJRVW9zUzBGQlowSXNZMEZFY0VJc1JVRkRiME03UVVGRGFFTXNkME5CUVVrc1ZVRkJTaXhIUVVGcFFpeExRVUZMTEVkQlFYUkNPMEZCUTBFc2QwTkJRVWtzWTBGQlNpeEhRVUZ4UWl4TFFVRkxMRWRCUVV3c1EwRkJVeXhSUVVGVUxFZEJRVzlDTEVOQlFVTXNTMEZCU3l4SFFVRk1MRU5CUVZNc1JVRkJWaXhEUVVGd1FpeEhRVUZ2UXl4SlFVRjZSRHRCUVVOQkxIZERRVUZKTEZkQlFVb3NSMEZCYTBJc1MwRkJTeXhIUVVGTUxFTkJRVk1zVVVGQlZDeEhRVUZ2UWl4UlFVRndRaXhIUVVFclFpeFRRVUZxUkR0QlFVTkJMREpEUVVGUExGRkJRVk1zUzBGQlN5eExRVUZNTEVkQlFXRXNSMEZCZEVJc1EwRkJVRHRCUVVOSUxHbERRVTVFTEUxQlRVOHNTVUZCU1N4UFFVRlBMRTlCUVZBc1MwRkJiVUlzVjBGQmJrSXNTVUZEVUN4UlFVRlJMRXRCUkV3c1JVRkRXVHRCUVVObU8wRkJRMEU3UVVGRFFTdzBRMEZCVVN4TFFVRlNMRU5CUVdNc1IwRkJaRHRCUVVOSUxHbERRVXhOTEUxQlMwRTdRVUZEU0R0QlFVTkJPMEZCUTBFN1FVRkRRU3gzUTBGQlNTeFBRVUZLTEVOQlFWa3NSMEZCV2p0QlFVTklPMEZCUTBvN1FVRkRTaXg1UWtFM1EwUXNUVUUyUTA4N1FVRkRTRHRCUVVOQkxITkRRVUZWTEU5QlFWWTdRVUZEU0RzN1FVRkZSQ3cyUWtGQlN5eFBRVUZNTEVkQlFXVXNUMEZCWmpzN1FVRkZRU3cwUWtGQlNTeExRVUZMTEVkQlFVd3NRMEZCVXl4UlFVRlVMRWxCUVhGQ0xFTkJRVU1zUzBGQlN5eE5RVUV2UWl4RlFVRjFRenRCUVVOdVF5eHhRMEZCVVN4RlFVRlNMRWxCUVdNc1QwRkJaRHM3UVVGRlFTeG5RMEZCU1N4SlFVRkpMR05CUVZJc1JVRkJkMEk3UVVGRGNFSXNiME5CUVVrc1kwRkJZeXhGUVVGc1FqdEJRVU5CTEhGRFFVRkxMRXRCUVVzc1QwRkJWaXhGUVVGdFFpeFZRVUZWTEUxQlFWWXNSVUZCYTBJN1FVRkRha01zWjBSQlFWa3NTVUZCV2l4RFFVRnBRaXhQUVVGUExHRkJRVkFzU1VGQmQwSXNUVUZCZWtNN1FVRkRTQ3hwUTBGR1JEdEJRVWRCTEc5RFFVRkpMR05CUVVvc1EwRkJiVUlzVDBGQmJrSXNSVUZCTkVJc1MwRkJTeXhIUVVGcVF5eEZRVUZ6UXl4WFFVRjBRenRCUVVOSU8wRkJRMG83TzBGQlJVUTdRVUZEUVN4elEwRkJZeXhGUVVGa096dEJRVVZCTERaQ1FVRkxMRTlCUVV3c1IwRkJaU3hKUVVGbU8wRkJRMGc3TzBGQlJVUTdRVUZEUVR0QlFVTkJPMEZCUTBFc2VVSkJRVXNzVVVGQlRDeEhRVUZuUWl4TFFVRm9RanM3UVVGRlFTeDNRa0ZCU1N4TFFVRkxMRTlCUVV3c1NVRkJaMElzUTBGQlF5eExRVUZMTEdGQlFURkNMRVZCUVhsRE8wRkJRM0pETERaQ1FVRkxMR0ZCUVV3c1IwRkJjVUlzU1VGQmNrSTdRVUZEUVN3MlFrRkJTeXhKUVVGTUxFTkJRVlVzVTBGQlZpeEZRVUZ4UWl4TFFVRkxMRTlCUVRGQ08wRkJRMEVzTmtKQlFVc3NhMEpCUVV3c1IwRkJNRUlzU1VGQk1VSTdRVUZEU0R0QlFVVktPMEZCUTBvc1lVRXZUV003TzBGQmFVNW1MSGRDUVVGWkxITkNRVUZaTzBGQlEzQkNMRzlDUVVGSkxFMUJRVTBzUzBGQlN5eEhRVUZtTzBGQlEwRXNiMEpCUVVrc1MwRkJTeXhKUVVGSkxFVkJRV0k3UVVGRFFUdEJRVU5CTEc5Q1FVRkpMRmxCUVZrc1kwRkJZeXhKUVVGSkxFMUJRV3hDTEVOQlFXaENPenRCUVVWQk8wRkJRMEU3UVVGRFFTeHhRa0ZCU3l4UFFVRk1MRU5CUVdFc1NVRkJZaXhEUVVGclFpeFRRVUZzUWpzN1FVRkZRU3h0UWtGQlJ5eFRRVUZJTEVWQlFXTXNVMEZCWkN4RlFVRjVRaXhMUVVGTExFbEJRVXdzUlVGQlZ5eFZRVUZWTEUxQlFWWXNSVUZCYTBJN1FVRkRiRVFzZDBKQlFVa3NZVUZCU2p0QlFVRkJMSGRDUVVGVkxITkNRVUZXTzBGQlFVRXNkMEpCUVhsQ0xITkNRVUY2UWp0QlFVRkJMSGRDUVVOSkxGZEJRVmNzVDBGQlR5eFZRVUZRTEVWQlFXMUNMRXRCUVVzc1IwRkJUQ3hEUVVGVExFVkJRVFZDTEVOQlJHWTdRVUZCUVN4M1FrRkZTU3hQUVVGUExFdEJRVXNzUjBGQlRDeERRVUZUTEVsQlJuQkNPMEZCUVVFc2QwSkJSMGtzWVVGQllTeExRVUZMTEVkQlFVd3NRMEZCVXl4VFFVRlVMRWRCUVhGQ0xFdEJRVXNzUjBGQlRDeERRVUZUTEZOQlFWUXNRMEZCYlVJc1NVRkJlRU1zUjBGQkswTXNTVUZJYUVVN1FVRkJRU3gzUWtGSlNTeGxRVUZsTEZGQlFWRXNWMEZCVWl4RFFVRnZRaXhKUVVGSkxGTkJRWGhDTEVWQlFXMURPMEZCUXpsRExEWkRRVUZ4UWp0QlFVUjVRaXh4UWtGQmJrTXNRMEZLYmtJN08wRkJVVUU3UVVGRFFUdEJRVU5CTEhkQ1FVRkpMRXRCUVVzc1IwRkJUQ3hEUVVGVExGbEJRV0lzUlVGQk1rSTdRVUZEZGtJN1FVRkRRU3cwUWtGQlNTeFBRVUZQTEZOQlFWZ3NSVUZCYzBJN1FVRkRiRUlzYlVOQlFVOHNUMEZCVHl4VFFVRlFMRU5CUVdsQ0xFbEJRV3BDTEVWQlFYVkNMRlZCUVZVc1NVRkJWaXhGUVVGblFqdEJRVU14UXl4MVEwRkJUeXhWUVVGVkxFbEJRVllzUlVGQlowSXNWVUZCYUVJc1JVRkJORUlzU1VGQk5VSXNRMEZCVUR0QlFVTklMRFpDUVVaTkxFdEJSVVFzUlVGR1RqdEJRVWRJT3p0QlFVVkVPMEZCUTBFN1FVRkRRU3gzUTBGQlowSXNZMEZCWXl4SlFVRkpMRTFCUVVvc1IwRkJZU3hIUVVGaUxFZEJRVzFDTEVsQlFXcERMRVZCUTFvc1MwRkJTeXhIUVVGTUxFTkJRVk1zVTBGRVJ5eERRVUZvUWp0QlFVVkJMREpDUVVGSExHRkJRVWdzUlVGRFNTeFRRVVJLTEVWQlEyVXNTMEZCU3l4SlFVRk1MRVZCUVZjc1ZVRkJWU3hMUVVGV0xFVkJRV2xDTzBGQlEyNURMR2xEUVVGTExFZEJRVXdzUTBGQlV5eGhRVUZVTEVkQlFYbENMR0ZCUVhwQ08wRkJRMEVzYVVOQlFVc3NTVUZCVEN4RFFVRlZMRVZCUVZZc1JVRkJZeXhaUVVGWk8wRkJRM1JDTEhWRFFVRlBMRXRCUVZBN1FVRkRTQ3cyUWtGR1JDeEZRVVZITEVsQlJrZ3NSVUZGVXp0QlFVTk1MSGxEUVVGVExFbEJSRW83UVVGRlRDeDNRMEZCVVR0QlFVWklMRFpDUVVaVU8wRkJUVWdzZVVKQlVsVXNRMEZFWmpzN1FVRlhRU3gzUTBGQlowSXNUMEZCVHl4UlFVRlFMRVZCUVdsQ0xHTkJRV01zUlVGQkwwSXNRMEZCYUVJN1FVRkRRU3cwUWtGQlNTeGhRVUZLTEVWQlFXMUNPMEZCUTJZN1FVRkRRVHRCUVVOQkxHbERRVUZMTEU5QlFVd3NRMEZCWVN4SlFVRmlMRU5CUVd0Q0xHRkJRV3hDT3p0QlFVVkJMR2REUVVGSkxFdEJRVXNzVFVGQlRDeERRVUZaTEV0QlFXaENMRVZCUVhWQ08wRkJRMjVDTERoRFFVRmpMRVZCUVdRc1EwRkJhVUlzVDBGQmFrSXNSVUZCTUVJc1MwRkJTeXhKUVVGTUxFVkJRVmNzVlVGQlZTeEhRVUZXTEVWQlFXVTdRVUZEYUVRc2VVTkJRVXNzU1VGQlRDeERRVUZWTEU5QlFWWXNSVUZCYlVJc1IwRkJia0k3UVVGRFNDeHBRMEZHZVVJc1EwRkJNVUk3UVVGSFNEdEJRVU5FTERCRFFVRmpMRTFCUVdRN1FVRkRTRHM3UVVGRlJEdEJRVU5JT3p0QlFVVkVPMEZCUTBFN1FVRkRRU3gzUWtGQlNTeFJRVUZLTEVWQlFXTTdRVUZEVml3MlFrRkJTeXhIUVVGTUxFTkJRVk1zUjBGQlZDeEhRVUZsTEZGQlFWRXNVMEZCVWl4RFFVRnJRaXhSUVVGc1FpeERRVUZtTzBGQlEwRXNOa0pCUVVzc1NVRkJURHRCUVVOQk8wRkJRMGc3TzBGQlJVUXNNa0pCUVU4c1MwRkJTeXhKUVVGTUxFVkJRVmNzVlVGQlZTeExRVUZXTEVWQlFXbENPMEZCUXk5Q0xEWkNRVUZMTEVsQlFVd3NRMEZCVlN4RlFVRldMRVZCUVdNc1dVRkJXVHRCUVVOMFFpeHRRMEZCVHl4TFFVRlFPMEZCUTBnc2VVSkJSa1FzUlVGRlJ5eEpRVVpJTEVWQlJWTTdRVUZEVEN4eFEwRkJVenRCUVVSS0xIbENRVVpVTzBGQlMwZ3NjVUpCVGswc1EwRkJVRHM3UVVGUlFTeDVRa0ZCU3l4TFFVRk1MRWRCUVdFc1MwRkJTeXhKUVVGTUxFVkJRVmNzVlVGQlZTeEhRVUZXTEVWQlFXVTdRVUZEYmtNc05rSkJRVXNzVFVGQlRDeEhRVUZqTEVsQlFXUTdRVUZEUVN3MlFrRkJTeXhMUVVGTUxFZEJRV0VzUjBGQllqdEJRVU5CTERSQ1FVRkpMR05CUVVvc1IwRkJjVUlzUTBGQlF5eEZRVUZFTEVOQlFYSkNPenRCUVVWQk8wRkJRMEU3UVVGRFFTeHBRMEZCVXl4UlFVRlVMRVZCUVcxQ0xGVkJRVlVzUjBGQlZpeEZRVUZsTzBGQlF6bENMR2REUVVGSkxFbEJRVWtzUjBGQlNpeERRVUZSTEVWQlFWSXNRMEZCVnl4UFFVRllMRU5CUVcxQ0xFdEJRVXNzWlVGQmVFSXNUVUZCTmtNc1EwRkJha1FzUlVGQmIwUTdRVUZEYUVRc09FTkJRV01zU1VGQlNTeEhRVUZLTEVOQlFWRXNSVUZCZEVJN1FVRkRTRHRCUVVOS0xIbENRVXBFT3p0QlFVMUJMR2REUVVGUkxFZEJRVkk3UVVGRFNDeHhRa0ZrV1N4RFFVRmlPenRCUVdkQ1FUdEJRVU5CTzBGQlEwRXNlVUpCUVVzc1VVRkJUQ3hIUVVGblFpeExRVUZMTEVsQlFVd3NSVUZCVnl4VlFVRlZMRWxCUVZZc1JVRkJaMElzVDBGQmFFSXNSVUZCZVVJN1FVRkRhRVE3UVVGRFFTdzBRa0ZCU1N4aFFVRmhMRWxCUVVrc1NVRkJja0k3UVVGQlFTdzBRa0ZEU1N4WlFVRlpMR05CUVdNc1ZVRkJaQ3hEUVVSb1FqdEJRVUZCTERSQ1FVVkpMR2xDUVVGcFFpeGpRVVp5UWpzN1FVRkpRVHRCUVVOQk8wRkJRMEU3UVVGRFFTdzBRa0ZCU1N4UFFVRktMRVZCUVdFN1FVRkRWQ3h0UTBGQlR5eFBRVUZRTzBGQlEwZzdPMEZCUlVRN1FVRkRRVHRCUVVOQkxEUkNRVUZKTEdOQlFVb3NSVUZCYjBJN1FVRkRhRUlzTmtOQlFXbENMRXRCUVdwQ08wRkJRMGc3TzBGQlJVUTdRVUZEUVN4clEwRkJWU3hUUVVGV096dEJRVVZCTzBGQlEwRXNORUpCUVVrc1VVRkJVU3hSUVVGUExFMUJRV1lzUlVGQmRVSXNSVUZCZGtJc1EwRkJTaXhGUVVGblF6dEJRVU0xUWl4dlEwRkJUeXhOUVVGUUxFTkJRV01zVlVGQlpDeEpRVUUwUWl4UlFVRlBMRTFCUVZBc1EwRkJZeXhGUVVGa0xFTkJRVFZDTzBGQlEwZzdPMEZCUlVRc05FSkJRVWs3UVVGRFFTeG5RMEZCU1N4SlFVRktMRU5CUVZNc1NVRkJWRHRCUVVOSUxIbENRVVpFTEVOQlJVVXNUMEZCVHl4RFFVRlFMRVZCUVZVN1FVRkRVaXh0UTBGQlR5eFJRVUZSTEZWQlFWVXNZMEZCVml4RlFVTllMSFZDUVVGMVFpeEZRVUYyUWl4SFFVTkJMRmRCUkVFc1IwRkRZeXhEUVVaSUxFVkJSMWdzUTBGSVZ5eEZRVWxZTEVOQlFVTXNSVUZCUkN4RFFVcFhMRU5CUVZJc1EwRkJVRHRCUVV0SU96dEJRVVZFTERSQ1FVRkpMR05CUVVvc1JVRkJiMEk3UVVGRGFFSXNOa05CUVdsQ0xFbEJRV3BDTzBGQlEwZzdPMEZCUlVRN1FVRkRRU3cyUWtGQlN5eFBRVUZNTEVOQlFXRXNTVUZCWWl4RFFVRnJRaXhUUVVGc1FqczdRVUZGUVR0QlFVTkJMR2REUVVGUkxGbEJRVklzUTBGQmNVSXNWVUZCY2tJN08wRkJSVUU3UVVGRFFTeHhRMEZCWVN4RFFVRkRMRlZCUVVRc1EwRkJZaXhGUVVFeVFpeEpRVUV6UWp0QlFVTklMSEZDUVdwRVpTeERRVUZvUWpzN1FVRnRSRUU3UVVGRFFUdEJRVU5CTERKQ1FVRlBMRWxCUVZBc1EwRkJXU3hKUVVGSkxFbEJRV2hDTEVWQlFYTkNMRmxCUVhSQ0xFVkJRVzlETEVsQlFYQkRMRVZCUVRCRExFOUJRVEZETzBGQlEwZ3NhVUpCTTBsM1FpeERRVUY2UWpzN1FVRTJTVUVzZDBKQlFWRXNUVUZCVWl4RFFVRmxMRk5CUVdZc1JVRkJNRUlzU1VGQk1VSTdRVUZEUVN4eFFrRkJTeXhWUVVGTUxFTkJRV2RDTEZWQlFWVXNSVUZCTVVJc1NVRkJaME1zVTBGQmFFTTdRVUZEU0N4aFFURlhZenM3UVVFMFYyWXNiMEpCUVZFc2EwSkJRVms3UVVGRGFFSXNaME5CUVdkQ0xFdEJRVXNzUjBGQlRDeERRVUZUTEVWQlFYcENMRWxCUVN0Q0xFbEJRUzlDTzBGQlEwRXNjVUpCUVVzc1QwRkJUQ3hIUVVGbExFbEJRV1k3TzBGQlJVRTdRVUZEUVR0QlFVTkJMSEZDUVVGTExGRkJRVXdzUjBGQlowSXNTVUZCYUVJN08wRkJSVUU3UVVGRFFTeHhRa0ZCU3l4TFFVRkxMRTlCUVZZc1JVRkJiVUlzUzBGQlN5eEpRVUZNTEVWQlFWY3NWVUZCVlN4TlFVRldMRVZCUVd0Q0xFTkJRV3hDTEVWQlFYRkNPMEZCUXk5RExIZENRVUZKTEZkQlFVbzdRVUZEUVN4M1FrRkJTU3haUVVGS08wRkJRMEVzZDBKQlFVa3NaMEpCUVVvN08wRkJSVUVzZDBKQlFVa3NUMEZCVHl4TlFVRlFMRXRCUVd0Q0xGRkJRWFJDTEVWQlFXZERPMEZCUXpWQ08wRkJRMEVzYVVOQlFWTXNZMEZCWXl4TlFVRmtMRVZCUTBvc1MwRkJTeXhIUVVGTUxFTkJRVk1zVVVGQlZDeEhRVUZ2UWl4TFFVRkxMRWRCUVhwQ0xFZEJRU3RDTEV0QlFVc3NSMEZCVEN4RFFVRlRMRk5CUkhCRExFVkJSVXdzUzBGR1N5eEZRVWRNTEVOQlFVTXNTMEZCU3l4UFFVaEVMRU5CUVZRN1FVRkpRU3cyUWtGQlN5eFBRVUZNTEVOQlFXRXNRMEZCWWl4SlFVRnJRaXhOUVVGc1FqczdRVUZGUVN4clEwRkJWU3hQUVVGUExGRkJRVkFzUlVGQmFVSXNUMEZCVHl4RlFVRjRRaXhEUVVGV096dEJRVVZCTERSQ1FVRkpMRTlCUVVvc1JVRkJZVHRCUVVOVUxHbERRVUZMTEZWQlFVd3NRMEZCWjBJc1EwRkJhRUlzU1VGQmNVSXNVVUZCVVN4SlFVRlNMRU5CUVhKQ08wRkJRMEU3UVVGRFNEczdRVUZGUkN3MlFrRkJTeXhSUVVGTUxFbEJRV2xDTEVOQlFXcENPenRCUVVWQkxESkNRVUZITEUxQlFVZ3NSVUZCVnl4VFFVRllMRVZCUVhOQ0xFdEJRVXNzU1VGQlRDeEZRVUZYTEZWQlFWVXNWVUZCVml4RlFVRnpRanRCUVVOdVJDeG5RMEZCU1N4TFFVRkxMRTlCUVZRc1JVRkJhMEk3UVVGRFpEdEJRVU5JTzBGQlEwUXNhVU5CUVVzc1UwRkJUQ3hEUVVGbExFTkJRV1lzUlVGQmEwSXNWVUZCYkVJN1FVRkRRU3hwUTBGQlN5eExRVUZNTzBGQlEwZ3NlVUpCVG5GQ0xFTkJRWFJDT3p0QlFWRkJMRFJDUVVGSkxFdEJRVXNzVDBGQlZDeEZRVUZyUWp0QlFVTmtMQ3RDUVVGSExFMUJRVWdzUlVGQlZ5eFBRVUZZTEVWQlFXOUNMRXRCUVVzc1NVRkJUQ3hGUVVGWExFdEJRVXNzVDBGQmFFSXNRMEZCY0VJN1FVRkRTQ3g1UWtGR1JDeE5RVVZQTEVsQlFVa3NTMEZCU3l4TlFVRk1MRU5CUVZrc1MwRkJhRUlzUlVGQmRVSTdRVUZETVVJN1FVRkRRVHRCUVVOQkxDdENRVUZITEUxQlFVZ3NSVUZCVnl4UFFVRllMRVZCUVc5Q0xFdEJRVXNzU1VGQlRDeEZRVUZYTEZWQlFWVXNSMEZCVml4RlFVRmxPMEZCUXpGRExIRkRRVUZMTEVsQlFVd3NRMEZCVlN4UFFVRldMRVZCUVcxQ0xFZEJRVzVDTzBGQlEwZ3NOa0pCUm0xQ0xFTkJRWEJDTzBGQlIwZzdRVUZEU2pzN1FVRkZSQ3g1UWtGQlN5eFBRVUZQTEVWQlFWbzdRVUZEUVN3d1FrRkJUU3hUUVVGVExFVkJRVlFzUTBGQlRqczdRVUZGUVR0QlFVTkJPMEZCUTBFc2QwSkJRVWtzUTBGQlF5eFJRVUZSTEZGQlFWSXNSVUZCYTBJc1JVRkJiRUlzUTBGQlJDeEpRVUV3UWl4SFFVRXhRaXhKUVVGcFF5eERRVUZETEVsQlFVa3NUMEZCTVVNc1JVRkJiVVE3UVVGREwwTXNaME5CUVZFc1RVRkJVaXhEUVVGbExFMUJRV1lzUlVGQmRVSXNTVUZCZGtJN1FVRkRTRHRCUVVOS0xHbENRV3BFYTBJc1EwRkJia0k3TzBGQmJVUkJPMEZCUTBFc2VVSkJRVk1zUzBGQlN5eFZRVUZrTEVWQlFUQkNMRXRCUVVzc1NVRkJUQ3hGUVVGWExGVkJRVlVzVTBGQlZpeEZRVUZ4UWp0QlFVTjBSQ3gzUWtGQlNTeE5RVUZOTEU5QlFVOHNVVUZCVUN4RlFVRnBRaXhWUVVGVkxFVkJRVE5DTEVOQlFWWTdRVUZEUVN4M1FrRkJTU3hQUVVGUExFTkJRVU1zU1VGQlNTeFBRVUZvUWl4RlFVRjVRanRCUVVOeVFpeG5RMEZCVVN4TlFVRlNMRU5CUVdVc1UwRkJaaXhGUVVFd1FpeEpRVUV4UWp0QlFVTklPMEZCUTBvc2FVSkJUSGxDTEVOQlFURkNPenRCUVU5QkxIRkNRVUZMTEZGQlFVd3NSMEZCWjBJc1MwRkJhRUk3TzBGQlJVRXNjVUpCUVVzc1MwRkJURHRCUVVOSUxHRkJibUpqT3p0QlFYRmlaaXhuUWtGQlNTeFpRVUZWTEVsQlFWWXNSVUZCWjBJc1JVRkJhRUlzUlVGQmIwSTdRVUZEY0VJc2IwSkJRVWtzVFVGQlRTeExRVUZMTEUxQlFVd3NRMEZCV1N4SlFVRmFMRU5CUVZZN1FVRkRRU3h2UWtGQlNTeERRVUZETEVkQlFVd3NSVUZCVlR0QlFVTk9MREJDUVVGTkxFdEJRVXNzVFVGQlRDeERRVUZaTEVsQlFWb3NTVUZCYjBJc1JVRkJNVUk3UVVGRFNEdEJRVU5FTEc5Q1FVRkpMRWxCUVVvc1EwRkJVeXhGUVVGVU8wRkJRMGdzWVVFelltTTdPMEZCTm1KbUxHdENRVUZOTEdOQlFWVXNTVUZCVml4RlFVRm5RaXhIUVVGb1FpeEZRVUZ4UWp0QlFVTjJRaXh4UWtGQlN5eExRVUZMTEUxQlFVd3NRMEZCV1N4SlFVRmFMRU5CUVV3c1JVRkJkMElzVlVGQlZTeEZRVUZXTEVWQlFXTTdRVUZEYkVNc2RVSkJRVWNzUjBGQlNEdEJRVU5JTEdsQ1FVWkVPMEZCUjBFc2IwSkJRVWtzVTBGQlV5eFBRVUZpTEVWQlFYTkNPMEZCUTJ4Q08wRkJRMEU3UVVGRFFTd3lRa0ZCVHl4TFFVRkxMRTFCUVV3c1EwRkJXU3hKUVVGYUxFTkJRVkE3UVVGRFNEdEJRVU5LTzBGQmRHTmpMRk5CUVc1Q096dEJRWGxqUVN4cFFrRkJVeXhoUVVGVUxFTkJRWFZDTEVsQlFYWkNMRVZCUVRaQ08wRkJRM3BDTzBGQlEwRXNaMEpCUVVrc1EwRkJReXhSUVVGUkxGRkJRVklzUlVGQmFVSXNTMEZCU3l4RFFVRk1MRU5CUVdwQ0xFTkJRVXdzUlVGQlowTTdRVUZETlVJc01FSkJRVlVzWTBGQll5eExRVUZMTEVOQlFVd3NRMEZCWkN4RlFVRjFRaXhKUVVGMlFpeEZRVUUyUWl4SlFVRTNRaXhEUVVGV0xFVkJRVGhETEVsQlFUbERMRU5CUVcxRUxFdEJRVXNzUTBGQlRDeERRVUZ1UkN4RlFVRTBSQ3hMUVVGTExFTkJRVXdzUTBGQk5VUTdRVUZEU0R0QlFVTktPenRCUVVWRUxHbENRVUZUTEdOQlFWUXNRMEZCZDBJc1NVRkJlRUlzUlVGQk9FSXNTVUZCT1VJc1JVRkJiME1zU1VGQmNFTXNSVUZCTUVNc1RVRkJNVU1zUlVGQmEwUTdRVUZET1VNN1FVRkRRU3huUWtGQlNTeExRVUZMTEZkQlFVd3NTVUZCYjBJc1EwRkJReXhQUVVGNlFpeEZRVUZyUXp0QlFVTTVRanRCUVVOQkxHOUNRVUZKTEUxQlFVb3NSVUZCV1R0QlFVTlNMSGxDUVVGTExGZEJRVXdzUTBGQmFVSXNUVUZCYWtJc1JVRkJlVUlzU1VGQmVrSTdRVUZEU0R0QlFVTktMR0ZCVEVRc1RVRkxUenRCUVVOSUxIRkNRVUZMTEcxQ1FVRk1MRU5CUVhsQ0xFbEJRWHBDTEVWQlFTdENMRWxCUVM5Q0xFVkJRWEZETEV0QlFYSkRPMEZCUTBnN1FVRkRTanM3UVVGRlJEczdPenM3T3pzN1FVRlJRU3hwUWtGQlV5eGhRVUZVTEVOQlFYVkNMRWRCUVhaQ0xFVkJRVFJDTzBGQlEzaENPMEZCUTBFN1FVRkRRU3huUWtGQlNTeFBRVUZQTEVsQlFVa3NZVUZCU2l4SlFVRnhRaXhKUVVGSkxGVkJRWEJET3p0QlFVVkJPMEZCUTBFc01rSkJRV1VzU1VGQlppeEZRVUZ4UWl4UlFVRlJMRmxCUVRkQ0xFVkJRVEpETEUxQlFUTkRMRVZCUVcxRUxHOUNRVUZ1UkR0QlFVTkJMREpDUVVGbExFbEJRV1lzUlVGQmNVSXNVVUZCVVN4aFFVRTNRaXhGUVVFMFF5eFBRVUUxUXpzN1FVRkZRU3h0UWtGQlR6dEJRVU5JTEhOQ1FVRk5MRWxCUkVnN1FVRkZTQ3h2UWtGQlNTeFJRVUZSTEV0QlFVc3NXVUZCVEN4RFFVRnJRaXh2UWtGQmJFSTdRVUZHVkN4aFFVRlFPMEZCU1VnN08wRkJSVVFzYVVKQlFWTXNZVUZCVkN4SFFVRjVRanRCUVVOeVFpeG5Ra0ZCU1N4aFFVRktPenRCUVVWQk8wRkJRMEU3TzBGQlJVRTdRVUZEUVN4dFFrRkJUeXhUUVVGVExFMUJRV2hDTEVWQlFYZENPMEZCUTNCQ0xIVkNRVUZQTEZOQlFWTXNTMEZCVkN4RlFVRlFPMEZCUTBFc2IwSkJRVWtzUzBGQlN5eERRVUZNTEUxQlFWa3NTVUZCYUVJc1JVRkJjMEk3UVVGRGJFSXNNa0pCUVU4c1VVRkJVU3hWUVVGVkxGVkJRVllzUlVGQmMwSXNNa05CUTJwRExFdEJRVXNzUzBGQlN5eE5RVUZNTEVkQlFXTXNRMEZCYmtJc1EwRkVWeXhEUVVGU0xFTkJRVkE3UVVGRlNDeHBRa0ZJUkN4TlFVZFBPMEZCUTBnN1FVRkRRVHRCUVVOQkxHdERRVUZqTEVsQlFXUTdRVUZEU0R0QlFVTktPMEZCUTBRc2IwSkJRVkVzVjBGQlVpeEhRVUZ6UWl4RlFVRjBRanRCUVVOSU96dEJRVVZFTEd0Q1FVRlZPMEZCUTA0c2IwSkJRVkVzVDBGRVJqdEJRVVZPTEhsQ1FVRmhMRmRCUmxBN1FVRkhUaXh6UWtGQlZTeFJRVWhLTzBGQlNVNHNjVUpCUVZNc1VVRktTRHRCUVV0T0xIZENRVUZaTEZWQlRFNDdRVUZOVGl4elFrRkJWU3hSUVU1S08wRkJUMDRzZVVKQlFXRXNSVUZRVUR0QlFWRk9MRzlDUVVGUkxFMUJVa1k3UVVGVFRpd3lRa0ZCWlN4aFFWUlVPMEZCVlU0c2MwSkJRVlVzU1VGQlNTeFJRVlpTTzBGQlYwNHNjVUpCUVZNc1QwRllTRHM3UVVGaFRqczdPenM3UVVGTFFTeDFRa0ZCVnl4dFFrRkJWU3hIUVVGV0xFVkJRV1U3UVVGRGRFSTdRVUZEUVN4dlFrRkJTU3hKUVVGSkxFOUJRVklzUlVGQmFVSTdRVUZEWWl4M1FrRkJTU3hKUVVGSkxFOUJRVW9zUTBGQldTeE5RVUZhTEVOQlFXMUNMRWxCUVVrc1QwRkJTaXhEUVVGWkxFMUJRVm9zUjBGQmNVSXNRMEZCZUVNc1RVRkJLME1zUjBGQmJrUXNSVUZCZDBRN1FVRkRjRVFzTkVKQlFVa3NUMEZCU2l4SlFVRmxMRWRCUVdZN1FVRkRTRHRCUVVOS096dEJRVVZFTzBGQlEwRXNiMEpCUVVrc1QwRkJUeXhSUVVGUExFbEJRV3hDTzBGQlFVRXNiMEpCUTBrc1QwRkJUenRCUVVOSUxESkNRVUZQTEVsQlJFbzdRVUZGU0N3MlFrRkJVeXhKUVVaT08wRkJSMGdzTkVKQlFWRXNTVUZJVER0QlFVbElMSGxDUVVGTE8wRkJTa1lzYVVKQlJGZzdPMEZCVVVFc2VVSkJRVk1zUjBGQlZDeEZRVUZqTEZWQlFWVXNTMEZCVml4RlFVRnBRaXhKUVVGcVFpeEZRVUYxUWp0QlFVTnFReXgzUWtGQlNTeExRVUZMTEVsQlFVd3NRMEZCU2l4RlFVRm5RanRCUVVOYUxEUkNRVUZKTEVOQlFVTXNVVUZCVHl4SlFVRlFMRU5CUVV3c1JVRkJiVUk3UVVGRFppeHZRMEZCVHl4SlFVRlFMRWxCUVdVc1JVRkJaanRCUVVOSU8wRkJRMFFzT0VKQlFVMHNVVUZCVHl4SlFVRlFMRU5CUVU0c1JVRkJiMElzUzBGQmNFSXNSVUZCTWtJc1NVRkJNMElzUlVGQmFVTXNTVUZCYWtNN1FVRkRTQ3h4UWtGTVJDeE5RVXRQTzBGQlEwZ3NaME5CUVU4c1NVRkJVQ3hKUVVGbExFdEJRV1k3UVVGRFNEdEJRVU5LTEdsQ1FWUkVPenRCUVZkQk8wRkJRMEVzYjBKQlFVa3NTVUZCU1N4UFFVRlNMRVZCUVdsQ08wRkJRMklzTmtKQlFWTXNTVUZCU1N4UFFVRmlMRVZCUVhOQ0xGVkJRVlVzUzBGQlZpeEZRVUZwUWl4SlFVRnFRaXhGUVVGMVFqdEJRVU42UXl3MlFrRkJTeXhMUVVGTUxFVkJRVmtzVlVGQlZTeERRVUZXTEVWQlFXRTdRVUZEY2tJc1owTkJRVWtzVFVGQlRTeEpRVUZXTEVWQlFXZENPMEZCUTFvc01rTkJRVmNzUTBGQldDeEpRVUZuUWl4SlFVRm9RanRCUVVOSU8wRkJRMG9zZVVKQlNrUTdRVUZMU0N4eFFrRk9SRHRCUVU5SU96dEJRVVZFTzBGQlEwRXNiMEpCUVVrc1NVRkJTU3hKUVVGU0xFVkJRV003UVVGRFZpdzJRa0ZCVXl4SlFVRkpMRWxCUVdJc1JVRkJiVUlzVlVGQlZTeExRVUZXTEVWQlFXbENMRVZCUVdwQ0xFVkJRWEZDTzBGQlEzQkRPMEZCUTBFc05FSkJRVWtzVVVGQlVTeExRVUZTTEVOQlFVb3NSVUZCYjBJN1FVRkRhRUlzYjBOQlFWRTdRVUZEU2l4elEwRkJUVHRCUVVSR0xEWkNRVUZTTzBGQlIwZzdRVUZEUkN3MFFrRkJTU3hEUVVGRExFMUJRVTBzVDBGQlRpeEpRVUZwUWl4TlFVRk5MRWxCUVhoQ0xFdEJRV2xETEVOQlFVTXNUVUZCVFN4VFFVRTFReXhGUVVGMVJEdEJRVU51UkN4clEwRkJUU3hUUVVGT0xFZEJRV3RDTEZGQlFWRXNaVUZCVWl4RFFVRjNRaXhMUVVGNFFpeERRVUZzUWp0QlFVTklPMEZCUTBRc05rSkJRVXNzUlVGQlRDeEpRVUZYTEV0QlFWZzdRVUZEU0N4eFFrRllSRHRCUVZsQkxEUkNRVUZQTEVsQlFWQXNSMEZCWXl4SlFVRmtPMEZCUTBnN08wRkJSVVE3UVVGRFFTeHZRa0ZCU1N4SlFVRkpMRkZCUVZJc1JVRkJhMEk3UVVGRFpDeDVRa0ZCU3l4SlFVRkpMRkZCUVZRc1JVRkJiVUlzVlVGQlZTeE5RVUZXTEVWQlFXdENPMEZCUTJwRExEUkNRVUZKTEdsQ1FVRktPMEZCUVVFc05FSkJRV01zWVVGQlpEczdRVUZGUVN4cFEwRkJVeXhQUVVGUExFMUJRVkFzUzBGQmEwSXNVVUZCYkVJc1IwRkJOa0lzUlVGQlF5eE5RVUZOTEUxQlFWQXNSVUZCTjBJc1IwRkJPRU1zVFVGQmRrUTdPMEZCUlVFc0swSkJRVThzVDBGQlR5eEpRVUZrTzBGQlEwRXNiVU5CUVZjc1QwRkJUeXhSUVVGc1FqdEJRVU5CTERSQ1FVRkpMRkZCUVVvc1JVRkJZenRCUVVOV0xHOURRVUZQTEV0QlFWQXNRMEZCWVN4SlFVRmlMRWxCUVhGQ0xFOUJRVThzVVVGQk5VSTdRVUZEU0RzN1FVRkZSRHRCUVVOQk8wRkJRMEU3UVVGRFFTeG5RMEZCVHl4SlFVRlFMRU5CUVZrc1NVRkJXaXhKUVVGdlFpeFBRVUZQTEVsQlFWQXNSMEZCWXl4SFFVRmtMRWRCUVc5Q0xFTkJRVU1zVDBGQlR5eEpRVUZRTEVsQlFXVXNUVUZCYUVJc1JVRkRia01zVDBGRWJVTXNRMEZETTBJc1lVRkVNa0lzUlVGRFdpeEZRVVJaTEVWQlJXNURMRTlCUm0xRExFTkJSVE5DTEdOQlJqSkNMRVZCUlZnc1JVRkdWeXhEUVVGNFF6dEJRVWRJTEhGQ1FXcENSRHRCUVd0Q1NEczdRVUZGUkR0QlFVTkJPMEZCUTBFc2VVSkJRVk1zVVVGQlZDeEZRVUZ0UWl4VlFVRlZMRWRCUVZZc1JVRkJaU3hGUVVGbUxFVkJRVzFDTzBGQlEyeERPMEZCUTBFN1FVRkRRU3gzUWtGQlNTeERRVUZETEVsQlFVa3NUVUZCVEN4SlFVRmxMRU5CUVVNc1NVRkJTU3hIUVVGS0xFTkJRVkVzV1VGQk5VSXNSVUZCTUVNN1FVRkRkRU1zTkVKQlFVa3NSMEZCU2l4SFFVRlZMR05CUVdNc1JVRkJaQ3hGUVVGclFpeEpRVUZzUWl4RlFVRjNRaXhKUVVGNFFpeERRVUZXTzBGQlEwZzdRVUZEU2l4cFFrRk9SRHM3UVVGUlFUdEJRVU5CTzBGQlEwRXNiMEpCUVVrc1NVRkJTU3hKUVVGS0xFbEJRVmtzU1VGQlNTeFJRVUZ3UWl4RlFVRTRRanRCUVVNeFFpdzBRa0ZCVVN4UFFVRlNMRU5CUVdkQ0xFbEJRVWtzU1VGQlNpeEpRVUZaTEVWQlFUVkNMRVZCUVdkRExFbEJRVWtzVVVGQmNFTTdRVUZEU0R0QlFVTktMR0ZCTDBkTE96dEJRV2xJVGl3MlFrRkJhVUlzZVVKQlFWVXNTMEZCVml4RlFVRnBRanRCUVVNNVFpeDVRa0ZCVXl4RlFVRlVMRWRCUVdNN1FVRkRWaXgzUWtGQlNTeFpRVUZLTzBGQlEwRXNkMEpCUVVrc1RVRkJUU3hKUVVGV0xFVkJRV2RDTzBGQlExb3NPRUpCUVUwc1RVRkJUU3hKUVVGT0xFTkJRVmNzUzBGQldDeERRVUZwUWl4TlFVRnFRaXhGUVVGNVFpeFRRVUY2UWl4RFFVRk9PMEZCUTBnN1FVRkRSQ3d5UWtGQlR5eFBRVUZSTEUxQlFVMHNUMEZCVGl4SlFVRnBRaXhWUVVGVkxFMUJRVTBzVDBGQmFFSXNRMEZCYUVNN1FVRkRTRHM3UVVGRlJDeDFRa0ZCVHl4RlFVRlFPMEZCUTBnc1lVRXpTRXM3TzBGQk5raE9MSGxDUVVGaExIRkNRVUZWTEUxQlFWWXNSVUZCYTBJc1QwRkJiRUlzUlVGQk1rSTdRVUZEY0VNc01FSkJRVlVzVjBGQlZ5eEZRVUZ5UWpzN1FVRkZRU3g1UWtGQlV5eFpRVUZVTEVOQlFYTkNMRWxCUVhSQ0xFVkJRVFJDTEZGQlFUVkNMRVZCUVhORExFOUJRWFJETEVWQlFTdERPMEZCUXpORExIZENRVUZKTEZkQlFVbzdRVUZCUVN4M1FrRkJVU3haUVVGU08wRkJRVUVzZDBKQlFXRXNiVUpCUVdJN08wRkJSVUVzZDBKQlFVa3NVVUZCVVN4dFFrRkJVaXhKUVVFclFpeFJRVUV2UWl4SlFVRXlReXhYUVVGWExGRkJRVmdzUTBGQkwwTXNSVUZCY1VVN1FVRkRha1VzYVVOQlFWTXNaMEpCUVZRc1IwRkJORUlzU1VGQk5VSTdRVUZEU0RzN1FVRkZSQ3gzUWtGQlNTeFBRVUZQTEVsQlFWQXNTMEZCWjBJc1VVRkJjRUlzUlVGQk9FSTdRVUZETVVJc05FSkJRVWtzVjBGQlZ5eFJRVUZZTEVOQlFVb3NSVUZCTUVJN1FVRkRkRUk3UVVGRFFTeHRRMEZCVHl4UlFVRlJMRlZCUVZVc1lVRkJWaXhGUVVGNVFpeHpRa0ZCZWtJc1EwRkJVaXhGUVVFd1JDeFBRVUV4UkN4RFFVRlFPMEZCUTBnN08wRkJSVVE3UVVGRFFUdEJRVU5CTERSQ1FVRkpMRlZCUVZVc1VVRkJVU3hSUVVGU0xFVkJRV3RDTEVsQlFXeENMRU5CUVdRc1JVRkJkVU03UVVGRGJrTXNiVU5CUVU4c1UwRkJVeXhKUVVGVUxFVkJRV1VzVTBGQlV5eFBRVUZQTEVWQlFXaENMRU5CUVdZc1EwRkJVRHRCUVVOSU96dEJRVVZFTzBGQlEwRTdRVUZEUVN3MFFrRkJTU3hKUVVGSkxFZEJRVklzUlVGQllUdEJRVU5VTEcxRFFVRlBMRWxCUVVrc1IwRkJTaXhEUVVGUkxFOUJRVklzUlVGQmFVSXNTVUZCYWtJc1JVRkJkVUlzVFVGQmRrSXNSVUZCSzBJc1dVRkJMMElzUTBGQlVEdEJRVU5JT3p0QlFVVkVPMEZCUTBFc09FSkJRVTBzWTBGQll5eEpRVUZrTEVWQlFXOUNMRTFCUVhCQ0xFVkJRVFJDTEV0QlFUVkNMRVZCUVcxRExFbEJRVzVETEVOQlFVNDdRVUZEUVN3MlFrRkJTeXhKUVVGSkxFVkJRVlE3TzBGQlJVRXNORUpCUVVrc1EwRkJReXhSUVVGUkxGRkJRVklzUlVGQmFVSXNSVUZCYWtJc1EwRkJUQ3hGUVVFeVFqdEJRVU4yUWl4dFEwRkJUeXhSUVVGUkxGVkJRVlVzVjBGQlZpeEZRVUYxUWl4clFrRkRiRU1zUlVGRWEwTXNSMEZGYkVNc2VVTkJSbXRETEVkQlIyeERMRmRCU0d0RExFbEJTV3BETEZOQlFWTXNSVUZCVkN4SFFVRmpMRzFDUVVwdFFpeERRVUYyUWl4RFFVRlNMRU5CUVZBN1FVRkxTRHRCUVVORUxDdENRVUZQTEZOQlFWRXNSVUZCVWl4RFFVRlFPMEZCUTBnN08wRkJSVVE3UVVGRFFUczdRVUZGUVR0QlFVTkJMRFJDUVVGUkxGRkJRVklzUTBGQmFVSXNXVUZCV1R0QlFVTjZRanRCUVVOQk8wRkJRMEU3TzBGQlJVRXNjVU5CUVdFc1ZVRkJWU3hqUVVGakxFbEJRV1FzUlVGQmIwSXNUVUZCY0VJc1EwRkJWaXhEUVVGaU96dEJRVVZCTzBGQlEwRTdRVUZEUVN4dFEwRkJWeXhQUVVGWUxFZEJRWEZDTEZGQlFWRXNUMEZCTjBJN08wRkJSVUVzYlVOQlFWY3NTVUZCV0N4RFFVRm5RaXhKUVVGb1FpeEZRVUZ6UWl4UlFVRjBRaXhGUVVGblF5eFBRVUZvUXl4RlFVRjVRenRCUVVOeVF5eHhRMEZCVXp0QlFVUTBRaXg1UWtGQmVrTTdPMEZCU1VFN1FVRkRTQ3h4UWtGb1FrUTdPMEZCYTBKQkxESkNRVUZQTEZsQlFWQTdRVUZEU0RzN1FVRkZSQ3h6UWtGQlRTeFpRVUZPTEVWQlFXOUNPMEZCUTJoQ0xDdENRVUZYTEZOQlJFczdPMEZCUjJoQ096czdPenRCUVV0QkxESkNRVUZQTEdWQlFWVXNhVUpCUVZZc1JVRkJOa0k3UVVGRGFFTXNORUpCUVVrc1dVRkJTanRCUVVGQkxEUkNRVU5KTEZGQlFWRXNhMEpCUVd0Q0xGZEJRV3hDTEVOQlFUaENMRWRCUVRsQ0xFTkJSRm83UVVGQlFTdzBRa0ZGU1N4VlFVRlZMR3RDUVVGclFpeExRVUZzUWl4RFFVRjNRaXhIUVVGNFFpeEZRVUUyUWl4RFFVRTNRaXhEUVVaa08wRkJRVUVzTkVKQlIwa3NZVUZCWVN4WlFVRlpMRWRCUVZvc1NVRkJiVUlzV1VGQldTeEpRVWhvUkRzN1FVRkxRVHRCUVVOQk8wRkJRMEVzTkVKQlFVa3NWVUZCVlN4RFFVRkRMRU5CUVZnc1MwRkJhVUlzUTBGQlF5eFZRVUZFTEVsQlFXVXNVVUZCVVN4RFFVRjRReXhEUVVGS0xFVkJRV2RFTzBGQlF6VkRMR3REUVVGTkxHdENRVUZyUWl4VFFVRnNRaXhEUVVFMFFpeExRVUUxUWl4RlFVRnRReXhyUWtGQmEwSXNUVUZCY2tRc1EwRkJUanRCUVVOQkxHZEVRVUZ2UWl4clFrRkJhMElzVTBGQmJFSXNRMEZCTkVJc1EwRkJOVUlzUlVGQkswSXNTMEZCTDBJc1EwRkJjRUk3UVVGRFNEczdRVUZGUkN3clFrRkJUeXhSUVVGUkxGTkJRVklzUTBGQmEwSXNWVUZCVlN4cFFrRkJWaXhGUVVOeVFpeFZRVUZWTEU5QlFVOHNSVUZFU1N4RlFVTkJMRWxCUkVFc1EwRkJiRUlzUlVGRGVVSXNSMEZFZWtJc1JVRkRPRUlzU1VGRU9VSXNRMEZCVUR0QlFVVklMSEZDUVhaQ1pUczdRVUY1UW1oQ0xEWkNRVUZUTEdsQ1FVRlZMRVZCUVZZc1JVRkJZenRCUVVOdVFpd3JRa0ZCVHl4UlFVRlJMRkZCUVZJc1JVRkJhVUlzWTBGQll5eEZRVUZrTEVWQlFXdENMRTFCUVd4Q0xFVkJRVEJDTEV0QlFURkNMRVZCUVdsRExFbEJRV3BETEVWQlFYVkRMRVZCUVhoRUxFTkJRVkE3UVVGRFNDeHhRa0V6UW1VN08wRkJOa0pvUWl3clFrRkJWeXh0UWtGQlZTeEZRVUZXTEVWQlFXTTdRVUZEY2tJc05rSkJRVXNzWTBGQll5eEZRVUZrTEVWQlFXdENMRTFCUVd4Q0xFVkJRVEJDTEV0QlFURkNMRVZCUVdsRExFbEJRV3BETEVWQlFYVkRMRVZCUVRWRE8wRkJRMEVzSzBKQlFVOHNVVUZCVVN4UlFVRlNMRVZCUVdsQ0xFVkJRV3BDTEV0QlFYZENMRkZCUVZFc1VVRkJVaXhGUVVGclFpeEZRVUZzUWl4RFFVRXZRanRCUVVOSU8wRkJhRU5sTEdsQ1FVRndRanM3UVVGdFEwRTdRVUZEUVN4dlFrRkJTU3hEUVVGRExFMUJRVXdzUlVGQllUdEJRVU5VTEdsRFFVRmhMRXRCUVdJc1IwRkJjVUlzVlVGQlZTeEZRVUZXTEVWQlFXTTdRVUZETDBJN1FVRkRRVHM3UVVGRlFTdzBRa0ZCU1N4TlFVRk5MR05CUVdNc1JVRkJaQ3hGUVVGclFpeE5RVUZzUWl4RlFVRXdRaXhKUVVFeFFpeERRVUZXTzBGQlEwRXNORUpCUVVrc1RVRkJUU3hQUVVGUExGRkJRVkFzUlVGQmFVSXNSVUZCYWtJc1EwRkJWanM3UVVGRlFTdzBRa0ZCU1N4UFFVRktMRWRCUVdNc1NVRkJaRHRCUVVOQkxIRkRRVUZoTEVWQlFXSTdPMEZCUlVFc0swSkJRVThzVTBGQlVTeEZRVUZTTEVOQlFWQTdRVUZEUVN3clFrRkJUeXhYUVVGWExFbEJRVWtzUjBGQlppeERRVUZRTzBGQlEwRXNLMEpCUVU4c1dVRkJXU3hGUVVGYUxFTkJRVkE3TzBGQlJVRTdRVUZEUVR0QlFVTkJMRzlEUVVGWkxGRkJRVm9zUlVGQmMwSXNWVUZCVlN4SlFVRldMRVZCUVdkQ0xFTkJRV2hDTEVWQlFXMUNPMEZCUTNKRExHZERRVUZKTEV0QlFVc3NRMEZCVEN4TlFVRlpMRVZCUVdoQ0xFVkJRVzlDTzBGQlEyaENMSGxEUVVGVExFMUJRVlFzUTBGQlowSXNRMEZCYUVJc1JVRkJiVUlzUTBGQmJrSTdRVUZEU0R0QlFVTktMSGxDUVVwRU8wRkJTMEVzSzBKQlFVOHNVVUZCVVN4WFFVRlNMRU5CUVc5Q0xFVkJRWEJDTEVOQlFWQTdPMEZCUlVFc05FSkJRVWtzUjBGQlNpeEZRVUZUTzBGQlEwdzdRVUZEUVR0QlFVTkJMR2REUVVGSkxFbEJRVWtzVFVGQlNpeERRVUZYTEU5QlFXWXNSVUZCZDBJN1FVRkRjRUlzTkVOQlFWa3NSVUZCV2l4SlFVRnJRaXhKUVVGSkxFMUJRWFJDTzBGQlEwZzdPMEZCUlVRc01FTkJRV01zUlVGQlpEdEJRVU5JTzBGQlEwb3NjVUpCYUVORU8wRkJhVU5JT3p0QlFVVkVMSFZDUVVGUExGbEJRVkE3UVVGRFNDeGhRWHBSU3pzN1FVRXlVVTQ3T3pzN08wRkJTMEVzYjBKQlFWRXNaMEpCUVZVc1RVRkJWaXhGUVVGclFqdEJRVU4wUWl4dlFrRkJTU3hOUVVGTkxFOUJRVThzVVVGQlVDeEZRVUZwUWl4UFFVRlBMRVZCUVhoQ0xFTkJRVlk3UVVGRFFTeHZRa0ZCU1N4SFFVRktMRVZCUVZNN1FVRkRUQ3c0UWtGQlZTeE5RVUZXTEVWQlFXdENMRTFCUVd4Q08wRkJRMGc3UVVGRFNpeGhRWEpTU3pzN1FVRjFVazQ3T3pzN096czdRVUZQUVN3d1FrRkJZeXh6UWtGQlZTeFZRVUZXTEVWQlFYTkNPMEZCUTJoRExHOUNRVUZKTEdOQlFVbzdRVUZEUVN4dlFrRkJTU3hoUVVGS08wRkJRMEVzYjBKQlFVa3NXVUZCU2p0QlFVTkJMRzlDUVVGSkxFOUJRVThzVDBGQlR5eFJRVUZQTEVsQlFXUXNSVUZCYjBJc1ZVRkJjRUlzUzBGQmJVTXNSVUZCT1VNN1FVRkRRU3h2UWtGQlNTeFpRVUZaTEV0QlFVc3NUMEZCY2tJN08wRkJSVUU3TzBGQlJVRXNkVUpCUVU4c1UwRkJVeXhOUVVGb1FpeEZRVUYzUWp0QlFVTndRaXd5UWtGQlR5eFRRVUZUTEV0QlFWUXNSVUZCVUR0QlFVTkJMSGRDUVVGSkxFdEJRVXNzUTBGQlRDeE5RVUZaTEVsQlFXaENMRVZCUVhOQ08wRkJRMnhDTERaQ1FVRkxMRU5CUVV3c1NVRkJWU3hWUVVGV08wRkJRMEU3UVVGRFFUdEJRVU5CTERSQ1FVRkpMRXRCUVVvc1JVRkJWenRCUVVOUU8wRkJRMGc3UVVGRFJDeG5RMEZCVVN4SlFVRlNPMEZCUTBnc2NVSkJVa1FzVFVGUlR5eEpRVUZKTEV0QlFVc3NRMEZCVEN4TlFVRlpMRlZCUVdoQ0xFVkJRVFJDTzBGQlF5OUNPMEZCUTBFc1owTkJRVkVzU1VGQlVqdEJRVU5JT3p0QlFVVkVMR3REUVVGakxFbEJRV1E3UVVGRFNEdEJRVU5FTEhkQ1FVRlJMRmRCUVZJc1IwRkJjMElzUlVGQmRFSTdPMEZCUlVFN1FVRkRRVHRCUVVOQkxITkNRVUZOTEU5QlFVOHNVVUZCVUN4RlFVRnBRaXhWUVVGcVFpeERRVUZPT3p0QlFVVkJMRzlDUVVGSkxFTkJRVU1zUzBGQlJDeEpRVUZWTEVOQlFVTXNVVUZCVVN4UlFVRlNMRVZCUVdsQ0xGVkJRV3BDTEVOQlFWZ3NTVUZCTWtNc1IwRkJNME1zU1VGQmEwUXNRMEZCUXl4SlFVRkpMRTFCUVRORUxFVkJRVzFGTzBGQlF5OUVMSGRDUVVGSkxGRkJRVThzWVVGQlVDeExRVUY1UWl4RFFVRkRMRk5CUVVRc1NVRkJZeXhEUVVGRExGVkJRVlVzVTBGQlZpeERRVUY0UXl4RFFVRktMRVZCUVcxRk8wRkJReTlFTERSQ1FVRkpMR2RDUVVGblFpeFZRVUZvUWl4RFFVRktMRVZCUVdsRE8wRkJRemRDTzBGQlEwZ3NlVUpCUmtRc1RVRkZUenRCUVVOSUxHMURRVUZQTEZGQlFWRXNWVUZCVlN4VlFVRldMRVZCUTFnc2QwSkJRWGRDTEZWQlJHSXNSVUZGV0N4SlFVWlhMRVZCUjFnc1EwRkJReXhWUVVGRUxFTkJTRmNzUTBGQlVpeERRVUZRTzBGQlNVZzdRVUZEU2l4eFFrRlVSQ3hOUVZOUE8wRkJRMGc3UVVGRFFTeHpRMEZCWXl4RFFVRkRMRlZCUVVRc1JVRkJZeXhMUVVGTExFbEJRVXdzU1VGQllTeEZRVUV6UWl4RlFVRm5ReXhMUVVGTExGTkJRWEpETEVOQlFXUTdRVUZEU0R0QlFVTktPenRCUVVWRU8wRkJRMGdzWVVFdlZVczdPMEZCYVZaT096czdPenM3T3p0QlFWRkJMSFZDUVVGWExHMUNRVUZWTEZWQlFWWXNSVUZCYzBJc1IwRkJkRUlzUlVGQk1rSXNUMEZCTTBJc1JVRkJiME03UVVGRE0wTXNiMEpCUVVrc1kwRkJTanRCUVVOQkxHOUNRVUZKTEdGQlFVbzdRVUZEUVN4dlFrRkJTU3hWUVVGS08wRkJRMEVzYjBKQlFVa3NjVUpCUVVvN1FVRkRRU3h2UWtGQlNTeFpRVUZLTzBGQlEwRXNiMEpCUVVrc2JVSkJRVW83UVVGQlFTeHZRa0ZCWjBJc2FVSkJRV2hDTzBGQlEwRXNiMEpCUVVrc1ZVRkJWU3hQUVVGUExGRkJRVThzU1VGQlpDeEZRVUZ2UWl4VlFVRndRaXhEUVVGa096dEJRVVZCTEc5Q1FVRkpMRTlCUVVvc1JVRkJZVHRCUVVOVUxHbERRVUZoTEU5QlFXSTdRVUZEU0RzN1FVRkZSQ3d5UWtGQlZ5eFBRVUZQTEZWQlFWQXNSVUZCYlVJc1ZVRkJia0lzUTBGQldEczdRVUZGUVN4dlFrRkJTU3hSUVVGS0xFVkJRV003UVVGRFZpd3lRa0ZCVHl4UlFVRlJMRk5CUVZJc1EwRkJhMElzVVVGQmJFSXNSVUZCTkVJc1IwRkJOVUlzUlVGQmFVTXNUMEZCYWtNc1EwRkJVRHRCUVVOSU96dEJRVVZFTzBGQlEwRTdRVUZEUVR0QlFVTkJMRzlDUVVGSkxFbEJRVWtzVjBGQlNpeERRVUZuUWl4SlFVRm9RaXhEUVVGeFFpeFZRVUZ5UWl4RFFVRktMRVZCUVhORE8wRkJRMnhETzBGQlEwRTdRVUZEUVR0QlFVTkJMREJDUVVGTkxHTkJRV01zVDBGQlR5eEZRVUZ5UWl4RFFVRk9PMEZCUTBnc2FVSkJURVFzVFVGTFR6dEJRVU5JTzBGQlEwRXNORUpCUVZFc1VVRkJUeXhMUVVGbU96dEJRVVZCTERKQ1FVRlBMRmRCUVZjc1MwRkJXQ3hEUVVGcFFpeEhRVUZxUWl4RFFVRlFPMEZCUTBFN1FVRkRRVHRCUVVOQkxIbENRVUZMTEVsQlFVa3NTMEZCU3l4TlFVRmtMRVZCUVhOQ0xFbEJRVWtzUTBGQk1VSXNSVUZCTmtJc1MwRkJTeXhEUVVGc1F5eEZRVUZ4UXp0QlFVTnFReXgxUTBGQlpTeExRVUZMTEV0QlFVd3NRMEZCVnl4RFFVRllMRVZCUVdNc1EwRkJaQ3hGUVVGcFFpeEpRVUZxUWl4RFFVRnpRaXhIUVVGMFFpeERRVUZtT3p0QlFVVkJMSEZEUVVGaExFOUJRVThzUzBGQlVDeEZRVUZqTEZsQlFXUXNRMEZCWWp0QlFVTkJMRFJDUVVGSkxGVkJRVW9zUlVGQlowSTdRVUZEV2p0QlFVTkJMR2REUVVGSkxGRkJRVkVzVlVGQlVpeERRVUZLTEVWQlFYbENPMEZCUTNKQ0xEWkRRVUZoTEZkQlFWY3NRMEZCV0N4RFFVRmlPMEZCUTBnN1FVRkRSQ3hwUTBGQlN5eE5RVUZNTEVOQlFWa3NRMEZCV2l4RlFVRmxMRU5CUVdZc1JVRkJhMElzVlVGQmJFSTdRVUZEUVR0QlFVTklPMEZCUTBvN08wRkJSVVE3UVVGRFFTd3dRa0ZCVFN4TFFVRkxMRWxCUVV3c1EwRkJWU3hIUVVGV0xFTkJRVTQ3UVVGRFFTd3lRa0ZCVVN4UlFVRlJMR0ZCUVdFc1NVRkJZaXhEUVVGclFpeEhRVUZzUWl4TFFVRXdRaXhQUVVFeFFpeEhRVUZ2UXl4RlFVRndReXhIUVVGNVF5eExRVUZxUkN4RFFVRlNPMEZCUTBFc01FSkJRVTBzUTBGQlF5eEpRVUZKTEUxQlFVb3NRMEZCVnl4RFFVRllMRTFCUVd0Q0xFZEJRV3hDTEVsQlFYbENMRWxCUVVrc1MwRkJTaXhEUVVGVkxHVkJRVllzUTBGQmVrSXNSMEZCYzBRc1JVRkJkRVFzUjBGQk1rUXNVVUZCVHl4UFFVRnVSU3hKUVVFNFJTeEhRVUZ3Ump0QlFVTklPenRCUVVWRUxIVkNRVUZQTEZGQlFVOHNUMEZCVUN4SFFVRnBRaXhQUVVOdVFpeERRVUZETEVsQlFVa3NUMEZCU2l4RFFVRlpMRWRCUVZvc1RVRkJjVUlzUTBGQlF5eERRVUYwUWl4SFFVRXdRaXhIUVVFeFFpeEhRVUZuUXl4SFFVRnFReXhKUVVOSExGRkJRVThzVDBGR1V5eERRVUZxUWl4SFFVVnRRaXhIUVVZeFFqdEJRVWRJTEdGQmJGcExPenRCUVc5YVRqdEJRVU5CTEd0Q1FVRk5MR05CUVZVc1JVRkJWaXhGUVVGakxFZEJRV1FzUlVGQmJVSTdRVUZEY2tJc2IwSkJRVWtzU1VGQlNpeERRVUZUTEU5QlFWUXNSVUZCYTBJc1JVRkJiRUlzUlVGQmMwSXNSMEZCZEVJN1FVRkRTQ3hoUVhaYVN6czdRVUY1V2s0N096czdPenM3TzBGQlVVRXNiMEpCUVZFc1owSkJRVlVzU1VGQlZpeEZRVUZuUWl4UlFVRm9RaXhGUVVFd1FpeEpRVUV4UWl4RlFVRm5ReXhQUVVGb1F5eEZRVUY1UXp0QlFVTTNReXgxUWtGQlR5eFRRVUZUTEV0QlFWUXNRMEZCWlN4UFFVRm1MRVZCUVhkQ0xFbEJRWGhDTEVOQlFWQTdRVUZEU0N4aFFXNWhTenM3UVVGeFlVNDdPenM3TzBGQlMwRXNNRUpCUVdNc2MwSkJRVlVzUjBGQlZpeEZRVUZsTzBGQlEzcENPMEZCUTBFN1FVRkRRVHRCUVVOQkxHOUNRVUZKTEVsQlFVa3NTVUZCU2l4TFFVRmhMRTFCUVdJc1NVRkRReXhaUVVGWkxFbEJRVm9zUTBGQmFVSXNRMEZCUXl4SlFVRkpMR0ZCUVVvc1NVRkJjVUlzU1VGQlNTeFZRVUV4UWl4RlFVRnpReXhWUVVGMlJDeERRVVJNTEVWQlF6QkZPMEZCUTNSRk8wRkJRMEU3UVVGRFFTeDNRMEZCYjBJc1NVRkJjRUk3TzBGQlJVRTdRVUZEUVN4M1FrRkJTU3hQUVVGUExHTkJRV01zUjBGQlpDeERRVUZZTzBGQlEwRXNORUpCUVZFc1dVRkJVaXhEUVVGeFFpeExRVUZMTEVWQlFURkNPMEZCUTBnN1FVRkRTaXhoUVhoaVN6czdRVUV3WWs0N096dEJRVWRCTERKQ1FVRmxMSFZDUVVGVkxFZEJRVllzUlVGQlpUdEJRVU14UWl4dlFrRkJTU3hQUVVGUExHTkJRV01zUjBGQlpDeERRVUZZTzBGQlEwRXNiMEpCUVVrc1EwRkJReXhuUWtGQlowSXNTMEZCU3l4RlFVRnlRaXhEUVVGTUxFVkJRU3RDTzBGQlF6TkNMSGRDUVVGSkxGVkJRVlVzUlVGQlpEdEJRVU5CTERaQ1FVRlRMRkZCUVZRc1JVRkJiVUlzVlVGQlZTeExRVUZXTEVWQlFXbENMRWRCUVdwQ0xFVkJRWE5DTzBGQlEzSkRMRFJDUVVGSkxFbEJRVWtzVDBGQlNpeERRVUZaTEV0QlFWb3NUVUZCZFVJc1EwRkJNMElzUlVGQk9FSTdRVUZETVVJc2FVTkJRVXNzVFVGQlRTeFBRVUZZTEVWQlFXOUNMRlZCUVZVc1RVRkJWaXhGUVVGclFqdEJRVU5zUXl4dlEwRkJTU3hQUVVGUExFVkJRVkFzUzBGQll5eExRVUZMTEVWQlFYWkNMRVZCUVRKQ08wRkJRM1pDTERSRFFVRlJMRWxCUVZJc1EwRkJZU3hIUVVGaU8wRkJRMGc3UVVGRFJDeDFRMEZCVHl4SlFVRlFPMEZCUTBnc05rSkJURVE3UVVGTlNEdEJRVU5LTEhGQ1FWUkVPMEZCVlVFc01rSkJRVThzVVVGQlVTeFZRVUZWTEdGQlFWWXNSVUZCZVVJc2RVSkJRWFZDTEV0QlFVc3NSVUZCTlVJc1NVRkRia01zVVVGQlVTeE5RVUZTTEVkQlEwY3NiVUpCUVcxQ0xGRkJRVkVzU1VGQlVpeERRVUZoTEVsQlFXSXNRMEZFZEVJc1IwRkZSeXhIUVVoblF5eERRVUY2UWl4RlFVZEVMRWRCU0VNc1JVRkhTU3hEUVVGRExFdEJRVXNzUlVGQlRpeERRVWhLTEVOQlFWSXNRMEZCVUR0QlFVbElPMEZCUTBvN1FVRm9aRXNzVTBGQlZqczdRVUZ0WkVFc1owSkJRVkVzVDBGQlVpeEhRVUZyUWl4UlFVRlJMRmRCUVZJc1JVRkJiRUk3UVVGRFFTeGxRVUZQTEU5QlFWQTdRVUZEU0RzN1FVRkZSRHM3T3pzN096czdPenM3TzBGQldVRXNWVUZCVFN4UFFVRlBMRk5CUVZBc1IwRkJiVUlzVlVGQlZTeEpRVUZXTEVWQlFXZENMRkZCUVdoQ0xFVkJRVEJDTEU5QlFURkNMRVZCUVcxRExGRkJRVzVETEVWQlFUWkRPMEZCUTJ4Rk8wRkJRMEVzV1VGQlNTeG5Ra0ZCU2p0QlFVTkJMRmxCUVVrc1pVRkJTanRCUVVOQkxGbEJRVWtzWTBGQll5eGpRVUZzUWpzN1FVRkZRVHRCUVVOQkxGbEJRVWtzUTBGQlF5eFJRVUZSTEVsQlFWSXNRMEZCUkN4SlFVRnJRaXhQUVVGUExFbEJRVkFzUzBGQlowSXNVVUZCZEVNc1JVRkJaMFE3UVVGRE5VTTdRVUZEUVN4eFFrRkJVeXhKUVVGVU8wRkJRMEVzWjBKQlFVa3NVVUZCVVN4UlFVRlNMRU5CUVVvc1JVRkJkVUk3UVVGRGJrSTdRVUZEUVN4MVFrRkJUeXhSUVVGUU8wRkJRMEVzTWtKQlFWY3NUMEZCV0R0QlFVTkJMREJDUVVGVkxGRkJRVlk3UVVGRFNDeGhRVXhFTEUxQlMwODdRVUZEU0N4MVFrRkJUeXhGUVVGUU8wRkJRMGc3UVVGRFNqczdRVUZGUkN4WlFVRkpMRlZCUVZVc1QwRkJUeXhQUVVGeVFpeEZRVUU0UWp0QlFVTXhRaXd3UWtGQll5eFBRVUZQTEU5QlFYSkNPMEZCUTBnN08wRkJSVVFzYTBKQlFWVXNUMEZCVHl4UlFVRlFMRVZCUVdsQ0xGZEJRV3BDTEVOQlFWWTdRVUZEUVN4WlFVRkpMRU5CUVVNc1QwRkJUQ3hGUVVGak8wRkJRMVlzYzBKQlFWVXNVMEZCVXl4WFFVRlVMRWxCUVhkQ0xFbEJRVWtzUTBGQlNpeERRVUZOTEZWQlFVNHNRMEZCYVVJc1YwRkJha0lzUTBGQmJFTTdRVUZEU0RzN1FVRkZSQ3haUVVGSkxFMUJRVW9zUlVGQldUdEJRVU5TTEc5Q1FVRlJMRk5CUVZJc1EwRkJhMElzVFVGQmJFSTdRVUZEU0RzN1FVRkZSQ3hsUVVGUExGRkJRVkVzVDBGQlVpeERRVUZuUWl4SlFVRm9RaXhGUVVGelFpeFJRVUYwUWl4RlFVRm5ReXhQUVVGb1F5eERRVUZRTzBGQlEwZ3NTMEZzUTBRN08wRkJiME5CT3pzN1FVRkhRU3hSUVVGSkxFMUJRVW9zUjBGQllTeFZRVUZWTEUxQlFWWXNSVUZCYTBJN1FVRkRNMElzWlVGQlR5eEpRVUZKTEUxQlFVb3NRMEZCVUR0QlFVTklMRXRCUmtRN08wRkJTVUU3T3pzN096czdRVUZQUVN4UlFVRkpMRkZCUVVvc1IwRkJaU3hQUVVGUExGVkJRVkFzUzBGQmMwSXNWMEZCZEVJc1IwRkJiME1zVlVGQlZTeEZRVUZXTEVWQlFXTTdRVUZETjBRc2JVSkJRVmNzUlVGQldDeEZRVUZsTEVOQlFXWTdRVUZEU0N4TFFVWmpMRWRCUlZnc1ZVRkJWU3hGUVVGV0xFVkJRV003UVVGRFpEdEJRVU5JTEV0QlNrUTdPMEZCVFVFN096dEJRVWRCTEZGQlFVa3NRMEZCUXl4UFFVRlBMRTlCUVZvc1JVRkJjVUk3UVVGRGFrSXNaVUZCVHl4UFFVRlFMRWRCUVdsQ0xFZEJRV3BDTzBGQlEwZzdPMEZCUlVRc1VVRkJTU3hQUVVGS0xFZEJRV01zVDBGQlpEczdRVUZGUVR0QlFVTkJMRkZCUVVrc1YwRkJTaXhIUVVGclFpeG5Ra0ZCYkVJN1FVRkRRU3hSUVVGSkxGTkJRVW9zUjBGQlowSXNVMEZCYUVJN1FVRkRRU3hSUVVGSkxFbEJRVWtzUTBGQlNpeEhRVUZSTzBGQlExSXNhMEpCUVZVc1VVRkVSanRCUVVWU0xHOUNRVUZaTzBGQlJrb3NTMEZCV2pzN1FVRkxRVHRCUVVOQkxGRkJRVWtzUlVGQlNqczdRVUZGUVR0QlFVTkJMRk5CUVVzc1EwRkRSQ3hQUVVSRExFVkJSVVFzVDBGR1F5eEZRVWRFTEZOQlNFTXNSVUZKUkN4WFFVcERMRU5CUVV3c1JVRkxSeXhWUVVGVkxFbEJRVllzUlVGQlowSTdRVUZEWmp0QlFVTkJPMEZCUTBFN1FVRkRRU3haUVVGSkxFbEJRVW9zU1VGQldTeFpRVUZaTzBGQlEzQkNMR2RDUVVGSkxFMUJRVTBzVTBGQlV5eGpRVUZVTEVOQlFWWTdRVUZEUVN4dFFrRkJUeXhKUVVGSkxFOUJRVW9zUTBGQldTeEpRVUZhTEVWQlFXdENMRXRCUVd4Q0xFTkJRWGRDTEVkQlFYaENMRVZCUVRaQ0xGTkJRVGRDTEVOQlFWQTdRVUZEU0N4VFFVaEVPMEZCU1Vnc1MwRmlSRHM3UVVGbFFTeFJRVUZKTEZOQlFVb3NSVUZCWlR0QlFVTllMR1ZCUVU4c1JVRkJSU3hKUVVGR0xFZEJRVk1zVTBGQlV5eHZRa0ZCVkN4RFFVRTRRaXhOUVVFNVFpeEZRVUZ6UXl4RFFVRjBReXhEUVVGb1FqdEJRVU5CTzBGQlEwRTdRVUZEUVR0QlFVTkJMSE5DUVVGakxGTkJRVk1zYjBKQlFWUXNRMEZCT0VJc1RVRkJPVUlzUlVGQmMwTXNRMEZCZEVNc1EwRkJaRHRCUVVOQkxGbEJRVWtzVjBGQlNpeEZRVUZwUWp0QlFVTmlMRzFDUVVGUExFVkJRVVVzU1VGQlJpeEhRVUZUTEZsQlFWa3NWVUZCTlVJN1FVRkRTRHRCUVVOS096dEJRVVZFT3pzN096czdPMEZCVDBFc1VVRkJTU3hQUVVGS0xFZEJRV01zWTBGQlpEczdRVUZGUVRzN08wRkJSMEVzVVVGQlNTeFZRVUZLTEVkQlFXbENMRlZCUVZVc1RVRkJWaXhGUVVGclFpeFZRVUZzUWl4RlFVRTRRaXhIUVVFNVFpeEZRVUZ0UXp0QlFVTm9SQ3haUVVGTkxFOUJRVThzVDBGQlR5eExRVUZRTEVkQlExUXNVMEZCVXl4bFFVRlVMRU5CUVhsQ0xEaENRVUY2UWl4RlFVRjVSQ3hoUVVGNlJDeERRVVJUTEVkQlJWUXNVMEZCVXl4aFFVRlVMRU5CUVhWQ0xGRkJRWFpDTEVOQlJrbzdRVUZIUVN4aFFVRkxMRWxCUVV3c1IwRkJXU3hQUVVGUExGVkJRVkFzU1VGQmNVSXNhVUpCUVdwRE8wRkJRMEVzWVVGQlN5eFBRVUZNTEVkQlFXVXNUMEZCWmp0QlFVTkJMR0ZCUVVzc1MwRkJUQ3hIUVVGaExFbEJRV0k3UVVGRFFTeGxRVUZQTEVsQlFWQTdRVUZEU0N4TFFWSkVPenRCUVZWQk96czdPenM3T3pzN1FVRlRRU3hSUVVGSkxFbEJRVW9zUjBGQlZ5eFZRVUZWTEU5QlFWWXNSVUZCYlVJc1ZVRkJia0lzUlVGQkswSXNSMEZCTDBJc1JVRkJiME03UVVGRE0wTXNXVUZCU1N4VFFVRlZMRmRCUVZjc1VVRkJVU3hOUVVGd1FpeEpRVUVyUWl4RlFVRTFRenRCUVVOQkxGbEJRVWtzWVVGQlNqczdRVUZGUVN4WlFVRkpMRk5CUVVvc1JVRkJaVHRCUVVOWU8wRkJRMEVzYlVKQlFVOHNTVUZCU1N4VlFVRktMRU5CUVdVc1RVRkJaaXhGUVVGMVFpeFZRVUYyUWl4RlFVRnRReXhIUVVGdVF5eERRVUZRTzBGQlEwRXNaMEpCUVVrc1QwRkJUeXhoUVVGWUxFVkJRVEJDTzBGQlEzUkNMSFZDUVVGUExHRkJRVkFzUTBGQmNVSXNTVUZCY2tJc1JVRkJNa0lzVFVGQk0wSXNSVUZCYlVNc1ZVRkJia01zUlVGQkswTXNSMEZCTDBNN1FVRkRTRHM3UVVGRlJDeHBRa0ZCU3l4WlFVRk1MRU5CUVd0Q0xIRkNRVUZzUWl4RlFVRjVReXhSUVVGUkxGZEJRV3BFTzBGQlEwRXNhVUpCUVVzc1dVRkJUQ3hEUVVGclFpeHZRa0ZCYkVJc1JVRkJkME1zVlVGQmVFTTdPMEZCUlVFN1FVRkRRVHRCUVVOQk8wRkJRMEU3UVVGRFFUdEJRVU5CTEdkQ1FVRkpMRXRCUVVzc1YwRkJURHRCUVVOQk8wRkJRMEU3UVVGRFFUdEJRVU5CTzBGQlEwRTdRVUZEUVN4alFVRkZMRXRCUVVzc1YwRkJUQ3hEUVVGcFFpeFJRVUZxUWl4SlFVRTJRaXhMUVVGTExGZEJRVXdzUTBGQmFVSXNVVUZCYWtJc1IwRkJORUlzVDBGQk5VSXNRMEZCYjBNc1kwRkJjRU1zU1VGQmMwUXNRMEZCY2tZc1EwRk9RU3hKUVU5QkxFTkJRVU1zVDBGUVRDeEZRVTlqTzBGQlExWTdRVUZEUVR0QlFVTkJPMEZCUTBFc2FVTkJRV2xDTEVsQlFXcENPenRCUVVWQkxIRkNRVUZMTEZkQlFVd3NRMEZCYVVJc2IwSkJRV3BDTEVWQlFYVkRMRkZCUVZFc1dVRkJMME03UVVGRFFUdEJRVU5CTzBGQlEwRTdRVUZEUVR0QlFVTkJPMEZCUTBFN1FVRkRRVHRCUVVOSUxHRkJja0pFTEUxQmNVSlBPMEZCUTBnc2NVSkJRVXNzWjBKQlFVd3NRMEZCYzBJc1RVRkJkRUlzUlVGQk9FSXNVVUZCVVN4WlFVRjBReXhGUVVGdlJDeExRVUZ3UkR0QlFVTkJMSEZDUVVGTExHZENRVUZNTEVOQlFYTkNMRTlCUVhSQ0xFVkJRU3RDTEZGQlFWRXNZVUZCZGtNc1JVRkJjMFFzUzBGQmRFUTdRVUZEU0R0QlFVTkVMR2xDUVVGTExFZEJRVXdzUjBGQlZ5eEhRVUZZT3p0QlFVVkJPMEZCUTBFN1FVRkRRVHRCUVVOQkxHZENRVUZKTEZkQlFVb3NSVUZCYVVJN1FVRkRZaXh4UWtGQlN5eFpRVUZNTEVOQlFXdENMRWxCUVd4Q0xFVkJRWGRDTEZkQlFYaENPMEZCUTBnc1lVRkdSQ3hOUVVWUE8wRkJRMGdzY1VKQlFVc3NWMEZCVEN4RFFVRnBRaXhKUVVGcVFqdEJRVU5JT3p0QlFVVkVMRzFDUVVGUExFbEJRVkE3UVVGRFNDeFRRWEJFUkN4TlFXOUVUeXhKUVVGSkxGZEJRVW9zUlVGQmFVSTdRVUZEY0VJc1owSkJRVWs3UVVGRFFUdEJRVU5CTzBGQlEwRTdRVUZEUVR0QlFVTkJPMEZCUTBFN1FVRkRRU3c0UWtGQll5eEhRVUZrT3p0QlFVVkJPMEZCUTBFc2QwSkJRVkVzV1VGQlVpeERRVUZ4UWl4VlFVRnlRanRCUVVOSUxHRkJXRVFzUTBGWFJTeFBRVUZQTEVOQlFWQXNSVUZCVlR0QlFVTlNMSGRDUVVGUkxFOUJRVklzUTBGQlowSXNWVUZCVlN4bFFVRldMRVZCUTFvc09FSkJRMEVzVlVGRVFTeEhRVU5oTEUxQlJHSXNSMEZEYzBJc1IwRkdWaXhGUVVkYUxFTkJTRmtzUlVGSldpeERRVUZETEZWQlFVUXNRMEZLV1N4RFFVRm9RanRCUVV0SU8wRkJRMG83UVVGRFNpeExRVFZGUkRzN1FVRTRSVUU3UVVGRFFTeFJRVUZKTEdGQlFXRXNRMEZCUXl4SlFVRkpMRmxCUVhSQ0xFVkJRVzlETzBGQlEyaERPMEZCUTBFc2IwSkJRVmtzVTBGQldpeEZRVUYxUWl4VlFVRlZMRTFCUVZZc1JVRkJhMEk3UVVGRGNrTTdRVUZEUVR0QlFVTkJMR2RDUVVGSkxFTkJRVU1zU1VGQlRDeEZRVUZYTzBGQlExQXNkVUpCUVU4c1QwRkJUeXhWUVVGa08wRkJRMGc3TzBGQlJVUTdRVUZEUVR0QlFVTkJPMEZCUTBFc2RVSkJRVmNzVDBGQlR5eFpRVUZRTEVOQlFXOUNMRmRCUVhCQ0xFTkJRVmc3UVVGRFFTeG5Ra0ZCU1N4UlFVRktMRVZCUVdNN1FVRkRWanRCUVVOQkxEWkNRVUZoTEZGQlFXSTdPMEZCUlVFN1FVRkRRU3h2UWtGQlNTeERRVUZETEVsQlFVa3NUMEZCVkN4RlFVRnJRanRCUVVOa08wRkJRMEU3UVVGRFFTd3dRa0ZCVFN4WFFVRlhMRXRCUVZnc1EwRkJhVUlzUjBGQmFrSXNRMEZCVGp0QlFVTkJMR2xEUVVGaExFbEJRVWtzUjBGQlNpeEZRVUZpTzBGQlEwRXNPRUpCUVZVc1NVRkJTU3hOUVVGS0xFZEJRV0VzU1VGQlNTeEpRVUZLTEVOQlFWTXNSMEZCVkN4SlFVRm5RaXhIUVVFM1FpeEhRVUZ0UXl4SlFVRTNRenM3UVVGRlFTeDNRa0ZCU1N4UFFVRktMRWRCUVdNc1QwRkJaRHRCUVVOSU96dEJRVVZFTzBGQlEwRTdRVUZEUVN3MlFrRkJZU3hYUVVGWExFOUJRVmdzUTBGQmJVSXNZMEZCYmtJc1JVRkJiVU1zUlVGQmJrTXNRMEZCWWpzN1FVRkZRVHRCUVVOQkxHOUNRVUZKTEVsQlFVa3NWMEZCU2l4RFFVRm5RaXhKUVVGb1FpeERRVUZ4UWl4VlFVRnlRaXhEUVVGS0xFVkJRWE5ETzBGQlEyeERMR2xEUVVGaExGRkJRV0k3UVVGRFNEczdRVUZGUkR0QlFVTkJMRzlDUVVGSkxFbEJRVW9zUjBGQlZ5eEpRVUZKTEVsQlFVb3NSMEZCVnl4SlFVRkpMRWxCUVVvc1EwRkJVeXhOUVVGVUxFTkJRV2RDTEZWQlFXaENMRU5CUVZnc1IwRkJlVU1zUTBGQlF5eFZRVUZFTEVOQlFYQkVPenRCUVVWQkxIVkNRVUZQTEVsQlFWQTdRVUZEU0R0QlFVTktMRk5CZUVORU8wRkJlVU5JT3p0QlFVVkVPenM3T3pzN1FVRk5RU3hSUVVGSkxFbEJRVW9zUjBGQlZ5eFZRVUZWTEVsQlFWWXNSVUZCWjBJN1FVRkRka0k3UVVGRFFTeGxRVUZQTEV0QlFVc3NTVUZCVEN4RFFVRlFPMEZCUTBnc1MwRklSRHM3UVVGTFFUdEJRVU5CTEZGQlFVa3NSMEZCU2p0QlFVTklMRU5CTlN0RVJEczdPenM3T3p0QlEzSkNRVHM3T3pzN096czdPenRCUVZWQkxFbEJRVWtzU1VGQlNpeERRVUZUTEVkQlFWUXNSMEZCWlN4SlFVRkpMRWxCUVVvc1EwRkJVeXhIUVVGVUxFbEJRV2RDTEVWQlFTOUNPenRCUVVWQk96czdPenM3T3pzN096czdPenM3T3pzN096czdPenM3T3pzN096czdPenRCUVdkRFFTeERRVUZETEZWQlFWVXNUMEZCVml4RlFVRnRRanM3UVVGRmFFSTdPMEZCUlVFN096czdPenRCUVV0QkxGRkJRVTBzV1VGQldTeEZRVUZzUWpzN1FVRkZRVHM3T3pzN096dEJRVTlCTEZGQlFVMHNZVUZCWVN4RlFVRnVRanM3UVVGRlFUczdPenM3T3p0QlFVOUJMRkZCUVUwc2EwSkJRV3RDTEVWQlFYaENPenRCUVVWQk96czdRVUZIUVN4aFFVRlRMR2RDUVVGVUxFTkJRVEJDTEhkQ1FVRXhRaXhGUVVGdlJDeFpRVUZOTzBGQlEzUkVMRmxCUVUwc1pVRkJaU3hKUVVGSkxFbEJRVW9zUTBGQlV5eE5RVUZVTEVOQlFXZENMRWRCUVdoQ0xFTkJRVzlDTEV0QlFYQkNMRU5CUVhKQ096dEJRVVZCTzBGQlEwRXNXVUZCU1N4RFFVRkRMRmxCUVV3c1JVRkJiVUk3UVVGRFpqdEJRVU5JT3p0QlFVVkVMRmxCUVUwc1VVRkJVU3hUUVVGVExHZENRVUZVTEVOQlFUQkNMR0ZCUVdFc1JVRkJka01zUTBGQlpEczdRVUZGUVN4alFVRk5MRWxCUVU0c1EwRkJWeXhMUVVGWUxFVkJRV3RDTEU5QlFXeENMRU5CUVRCQ0xGVkJRVU1zU1VGQlJDeEZRVUZQTEV0QlFWQXNSVUZCYVVJN1FVRkRka01zWjBKQlFVMHNUMEZCVHl4TFFVRkxMRmxCUVV3c1EwRkJhMElzZDBKQlFXeENMSFZDUVVFclJDeExRVUUxUlR0QlFVTkJMR2RDUVVGTkxGTkJRVk1zVDBGQlR5eE5RVUZRTEVOQlFXTXNSVUZCWkN4RlFVRnJRaXhaUVVGc1FpeEZRVUZuUXl4RlFVRkRMRWxCUVVrc1NVRkJUQ3hGUVVGb1F5eERRVUZtTzBGQlEwRXNaMEpCUVVrc1NVRkJTaXhEUVVGVExFZEJRVlFzUTBGQllTeE5RVUZpTEVOQlFXOUNMRWxCUVhCQ0xFVkJRVEJDTEUxQlFURkNPMEZCUTBnc1UwRktSRHRCUVV0SUxFdEJaa1E3TzBGQmFVSkJPenM3T3p0QlFVdEJMRmxCUVZFc1kwRkJVaXhIUVVGNVFpeFZRVUZWTEUxQlFWWXNSVUZCYTBJN1FVRkRka01zV1VGQlNTeERRVUZETEUxQlFVUXNTVUZCVnl4RFFVRkRMRTlCUVU4c1IwRkJka0lzUlVGQk5FSTdRVUZEZUVJN1FVRkRTRHM3UVVGRlJDeFpRVUZKTEVOQlFVTXNUMEZCVHl4TlFVRmFMRVZCUVc5Q08wRkJRMmhDTEdkQ1FVRkpMRWxCUVVvc1EwRkJVeXhIUVVGVUxFTkJRV0VzYVVKQlFXSXNRMEZCSzBJc1QwRkJUeXhKUVVGMFF5eEZRVUUwUXl4TlFVRTFRenRCUVVOSUxGTkJSa1FzVFVGRlR6dEJRVU5JTEdkQ1FVRkpMRWxCUVVvc1EwRkJVeXhIUVVGVUxFTkJRV0VzYzBKQlFXSXNRMEZCYjBNc1QwRkJUeXhOUVVFelF5eEZRVUZ0UkN4UFFVRlBMRWxCUVRGRUxFVkJRV2RGTEUxQlFXaEZPMEZCUTBnN1FVRkRTaXhMUVZaRU96dEJRVmxCT3pzN096czdPMEZCVDBFc1dVRkJVU3h6UWtGQlVpeEhRVUZwUXl4VlFVRlZMRTFCUVZZc1JVRkJhMElzU1VGQmJFSXNSVUZCZDBJc1kwRkJlRUlzUlVGQmQwTTdRVUZEY2tVc2QwSkJRV2RDTEUxQlFXaENMRWxCUVRCQ0xHZENRVUZuUWl4TlFVRm9RaXhMUVVFeVFpeEZRVUZ5UkRzN1FVRkZRU3haUVVGSkxHZENRVUZuUWl4TlFVRm9RaXhGUVVGM1FpeEpRVUY0UWl4RFFVRktMRVZCUVcxRE8wRkJReTlDTzBGQlEwZzdPMEZCUlVRc2QwSkJRV2RDTEUxQlFXaENMRVZCUVhkQ0xFbEJRWGhDTEVsQlFXZERMR05CUVdoRE8wRkJRMGdzUzBGU1JEczdRVUZWUVRzN096czdPMEZCVFVFc1dVRkJVU3hwUWtGQlVpeEhRVUUwUWl4VlFVRlZMRWxCUVZZc1JVRkJaMElzVTBGQmFFSXNSVUZCTWtJN1FVRkRia1FzV1VGQlNTeFhRVUZYTEVsQlFWZ3NRMEZCU2l4RlFVRnpRanRCUVVOc1FqdEJRVU5JT3p0QlFVVkVMRzFDUVVGWExFbEJRVmdzU1VGQmJVSXNVMEZCYmtJN1FVRkRTQ3hMUVU1RU96dEJRVkZCT3pzN096czdRVUZOUVN4WlFVRlJMRTFCUVZJc1IwRkJhVUlzVlVGQlZTeEpRVUZXTEVWQlFXZENMRTFCUVdoQ0xFVkJRWGRDTzBGQlEzSkRMRmxCUVVrc1ZVRkJWU3hKUVVGV0xFTkJRVW9zUlVGQmNVSTdRVUZEYWtJc2EwSkJRVTBzU1VGQlNTeExRVUZLTEhsQ1FVRm5ReXhKUVVGb1F5eHRSRUZCVGp0QlFVTklPenRCUVVWRUxHRkJRVXNzU1VGQlNTeExRVUZVTEVsQlFXbENMRlZCUVdwQ0xFVkJRVFpDTzBGQlEzcENMSFZDUVVGWExFdEJRVmdzUlVGQmFVSXNWVUZCYWtJc1IwRkJPRUlzWjBKQlFXZENMRXRCUVdoQ0xFdEJRWGxDTEVWQlFYWkVPenRCUVVWQkxHZENRVUZKTEZOQlFVb3NRMEZCWXl4TFFVRmtMRVZCUVc5Q0xGZEJRVmNzUzBGQldDeERRVUZ3UWp0QlFVTklPenRCUVVWRUxHdENRVUZWTEVsQlFWWXNTVUZCYTBJc1NVRkJTU3hIUVVGS0xFTkJRVkVzVFVGQlVpeERRVUZzUWp0QlFVTklMRXRCV2tRN08wRkJZMEU3T3pzN08wRkJTMEVzV1VGQlVTeFBRVUZTTEVkQlFXdENMRlZCUVZVc1NVRkJWaXhGUVVGblFqdEJRVU01UWl4WlFVRkpMRU5CUVVNc1ZVRkJWU3hKUVVGV0xFTkJRVXdzUlVGQmMwSTdRVUZEYkVJc2EwSkJRVTBzU1VGQlNTeExRVUZLTEhsQ1FVRm5ReXhKUVVGb1F5eDNSVUZCVGp0QlFVTklPenRCUVVWRUxHdENRVUZWTEVsQlFWWXNSVUZCWjBJc1VVRkJhRUk3TzBGQlJVRXNaVUZCVHl4VlFVRlZMRWxCUVZZc1EwRkJVRHRCUVVOSUxFdEJVa1E3TzBGQlZVRTdPenM3TzBGQlMwRXNXVUZCVVN4VFFVRlNMRWRCUVc5Q0xGbEJRVms3UVVGRE5VSXNaVUZCVHl4VFFVRlFPMEZCUTBnc1MwRkdSRHRCUVVkSUxFTkJOVWxFTEVWQk5FbEhMRWxCUVVrc1NVRkJTaXhEUVVGVExFZEJOVWxhSWl3aVptbHNaU0k2SW1kbGJtVnlZWFJsWkM1cWN5SXNJbk52ZFhKalpWSnZiM1FpT2lJaUxDSnpiM1Z5WTJWelEyOXVkR1Z1ZENJNld5SW9ablZ1WTNScGIyNG9LWHRtZFc1amRHbHZiaUJ5S0dVc2JpeDBLWHRtZFc1amRHbHZiaUJ2S0drc1ppbDdhV1lvSVc1YmFWMHBlMmxtS0NGbFcybGRLWHQyWVhJZ1l6MWNJbVoxYm1OMGFXOXVYQ0k5UFhSNWNHVnZaaUJ5WlhGMWFYSmxKaVp5WlhGMWFYSmxPMmxtS0NGbUppWmpLWEpsZEhWeWJpQmpLR2tzSVRBcE8ybG1LSFVwY21WMGRYSnVJSFVvYVN3aE1DazdkbUZ5SUdFOWJtVjNJRVZ5Y205eUtGd2lRMkZ1Ym05MElHWnBibVFnYlc5a2RXeGxJQ2RjSWl0cEsxd2lKMXdpS1R0MGFISnZkeUJoTG1OdlpHVTlYQ0pOVDBSVlRFVmZUazlVWDBaUFZVNUVYQ0lzWVgxMllYSWdjRDF1VzJsZFBYdGxlSEJ2Y25Sek9udDlmVHRsVzJsZFd6QmRMbU5oYkd3b2NDNWxlSEJ2Y25SekxHWjFibU4wYVc5dUtISXBlM1poY2lCdVBXVmJhVjFiTVYxYmNsMDdjbVYwZFhKdUlHOG9ibng4Y2lsOUxIQXNjQzVsZUhCdmNuUnpMSElzWlN4dUxIUXBmWEpsZEhWeWJpQnVXMmxkTG1WNGNHOXlkSE45Wm05eUtIWmhjaUIxUFZ3aVpuVnVZM1JwYjI1Y0lqMDlkSGx3Wlc5bUlISmxjWFZwY21VbUpuSmxjWFZwY21Vc2FUMHdPMms4ZEM1c1pXNW5kR2c3YVNzcktXOG9kRnRwWFNrN2NtVjBkWEp1SUc5OWNtVjBkWEp1SUhKOUtTZ3BJaXdpTHlvZ0xTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMxY2JpQmpiMnhzWldOMGFXOXVMbXB6SURJd01UWXRNRFl0TWpKY2JpQkhZVzFpYVc4Z1IyMWlTRnh1SUdoMGRIQTZMeTkzZDNjdVoyRnRZbWx2TG1SbFhHNGdRMjl3ZVhKcFoyaDBJQ2hqS1NBeU1ERTJJRWRoYldKcGJ5QkhiV0pJWEc0Z1VtVnNaV0Z6WldRZ2RXNWtaWElnZEdobElFZE9WU0JIWlc1bGNtRnNJRkIxWW14cFl5Qk1hV05sYm5ObElDaFdaWEp6YVc5dUlESXBYRzRnVzJoMGRIQTZMeTkzZDNjdVoyNTFMbTl5Wnk5c2FXTmxibk5sY3k5bmNHd3RNaTR3TG1oMGJXeGRYRzRnTFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzFjYmlBcUwxeHVYRzRvWm5WdVkzUnBiMjRnS0NrZ2UxeHVYRzRnSUNBZ0ozVnpaU0J6ZEhKcFkzUW5PMXh1WEc0Z0lDQWdMeW9xWEc0Z0lDQWdJQ29nUTJ4aGMzTWdRMjlzYkdWamRHbHZibHh1SUNBZ0lDQXFYRzRnSUNBZ0lDb2dWR2hwY3lCamJHRnpjeUJwY3lCMWMyVmtJSFJ2SUdoaGJtUnNaU0J0ZFd4MGFYQnNaU0J0YjJSMWJHVnpJRzltSUhSb1pTQnpZVzFsSUhSNWNHVWdLR052Ym5SeWIyeHNaWEp6TENCbGVIUmxibk5wYjI1eklDNHVMaWt1WEc0Z0lDQWdJQ3BjYmlBZ0lDQWdLaUJBWTJ4aGMzTWdTbE5GTDBOdmJuTjBjblZqZEc5eWN5OURiMnhzWldOMGFXOXVYRzRnSUNBZ0lDb3ZYRzRnSUNBZ1kyeGhjM01nUTI5c2JHVmpkR2x2YmlCN1hHNGdJQ0FnSUNBZ0lDOHFLbHh1SUNBZ0lDQWdJQ0FnS2lCRGJHRnpjeUJEYjI1emRISjFZM1J2Y2x4dUlDQWdJQ0FnSUNBZ0tseHVJQ0FnSUNBZ0lDQWdLaUJBY0dGeVlXMGdlMU4wY21sdVozMGdibUZ0WlNCVWFHVWdZMjlzYkdWamRHbHZiaUJ1WVcxbElDMGdiWFZ6ZENCaVpTQjFibWx4ZFdVdVhHNGdJQ0FnSUNBZ0lDQXFJRUJ3WVhKaGJTQjdVM1J5YVc1bmZTQmhkSFJ5YVdKMWRHVWdWR2hsSUdGMGRISnBZblYwWlNCMGFHRjBJSGRwYkd3Z2RISnBaMmRsY2lCamIyeHNaV04wYVc5dUozTWdiVzlrZFd4bGN5NWNiaUFnSUNBZ0lDQWdJQ29nUUhCaGNtRnRJSHRQWW1wbFkzUjlJRzVoYldWemNHRmpaU0JQY0hScGIyNWhiQ3dnZEdobElHNWhiV1Z6Y0dGalpTQnBibk4wWVc1alpTQjNhR1Z5WlNCMGFHVWdZMjlzYkdWamRHbHZiaUJpWld4dmJtZHpMbHh1SUNBZ0lDQWdJQ0FnS2k5Y2JpQWdJQ0FnSUNBZ1kyOXVjM1J5ZFdOMGIzSW9ibUZ0WlN3Z1lYUjBjbWxpZFhSbExDQnVZVzFsYzNCaFkyVXBJSHRjYmlBZ0lDQWdJQ0FnSUNBZ0lIUm9hWE11Ym1GdFpTQTlJRzVoYldVN1hHNGdJQ0FnSUNBZ0lDQWdJQ0IwYUdsekxtRjBkSEpwWW5WMFpTQTlJR0YwZEhKcFluVjBaVHRjYmlBZ0lDQWdJQ0FnSUNBZ0lIUm9hWE11Ym1GdFpYTndZV05sSUQwZ2JtRnRaWE53WVdObE8xeHVJQ0FnSUNBZ0lDQWdJQ0FnZEdocGN5NWpZV05vWlNBOUlIdGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnRiMlIxYkdWek9pQjdmU3hjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JrWVhSaE9pQjdmVnh1SUNBZ0lDQWdJQ0FnSUNBZ2ZUdGNiaUFnSUNBZ0lDQWdmVnh1WEc0Z0lDQWdJQ0FnSUM4cUtseHVJQ0FnSUNBZ0lDQWdLaUJFWldacGJtVWdZU0J1WlhjZ1pXNW5hVzVsSUcxdlpIVnNaUzVjYmlBZ0lDQWdJQ0FnSUNwY2JpQWdJQ0FnSUNBZ0lDb2dWR2hwY3lCbWRXNWpkR2x2YmlCM2FXeHNJR1JsWm1sdVpTQmhJRzVsZHlCdGIyUjFiR1VnYVc1MGJ5QjBhR1VnWlc1bmFXNWxMaUJGWVdOb0lHMXZaSFZzWlNCM2FXeHNJR0psSUhOMGIzSmxaQ0JwYmlCMGFHVmNiaUFnSUNBZ0lDQWdJQ29nWTI5c2JHVmpkR2x2YmlkeklHTmhZMmhsSUhSdklIQnlaWFpsYm5RZ2RXNXVaV05sYzNOaGNua2dabWxzWlNCMGNtRnVjMlpsY25NdUlGUm9aU0J6WVcxbElHaGhjSEJsYm5NZ2QybDBhQ0IwYUdVZ1pHVm1ZWFZzZEZ4dUlDQWdJQ0FnSUNBZ0tpQmpiMjVtYVdkMWNtRjBhVzl1SUhSb1lYUWdZWEJ3Wlc1a0lIUnZJSFJvWlNCdGIyUjFiR1VnWkdWbWFXNXBkR2x2Ymk1Y2JpQWdJQ0FnSUNBZ0lDcGNiaUFnSUNBZ0lDQWdJQ29nUUhCaGNtRnRJSHRUZEhKcGJtZDlJRzVoYldVZ1RtRnRaU0J2WmlCMGFHVWdiVzlrZFd4bElDaHpZVzFsSUdGeklIUm9aU0JtYVd4bGJtRnRaU2t1WEc0Z0lDQWdJQ0FnSUNBcUlFQndZWEpoYlNCN1FYSnlZWGw5SUdSbGNHVnVaR1Z1WTJsbGN5QkJjbkpoZVNCdlppQnNhV0p5WVhKcFpYTWdkR2hoZENCMGFHbHpJRzF2WkhWc1pTQmtaWEJsYm1SeklHOXVJQ2gzYVd4c0lHSmxJR3h2WVdSbFpDQmhjM2x1WTJoeWIyNXZkWE5zZVNrdVhHNGdJQ0FnSUNBZ0lDQXFJRUZ3Y0d4NUlHOXViSGtnWm1sc1pXNWhiV1Z6SUhkcGRHaHZkWFFnWlhoMFpXNXphVzl1SUdVdVp5NGdXMXdpWlcxaGFXeHpYQ0pkTGx4dUlDQWdJQ0FnSUNBZ0tpQkFjR0Z5WVcwZ2UwOWlhbVZqZEgwZ1kyOWtaU0JEYjI1MFlXbHVjeUIwYUdVZ2JXOWtkV3hsSUdOdlpHVWdLR1oxYm1OMGFXOXVLUzVjYmlBZ0lDQWdJQ0FnSUNvdlhHNGdJQ0FnSUNBZ0lHMXZaSFZzWlNodVlXMWxMQ0JrWlhCbGJtUmxibU5wWlhNc0lHTnZaR1VwSUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJQzh2SUVOb1pXTnJJR2xtSUhKbGNYVnBjbVZrSUhaaGJIVmxjeUJoY21VZ1lYWmhhV3hoWW14bElHRnVaQ0J2WmlCamIzSnlaV04wSUhSNWNHVXVYRzRnSUNBZ0lDQWdJQ0FnSUNCcFppQW9JVzVoYldVZ2ZId2dkSGx3Wlc5bUlHNWhiV1VnSVQwOUlDZHpkSEpwYm1jbklIeDhJSFI1Y0dWdlppQmpiMlJsSUNFOVBTQW5ablZ1WTNScGIyNG5LU0I3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYW5ObExtTnZjbVV1WkdWaWRXY3VkMkZ5YmlnblVtVm5hWE4wY21GMGFXOXVJRzltSUhSb1pTQnRiMlIxYkdVZ1ptRnBiR1ZrTENCa2RXVWdkRzhnWW1Ga0lHWjFibU4wYVc5dUlHTmhiR3duTENCaGNtZDFiV1Z1ZEhNcE8xeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lISmxkSFZ5YmlCbVlXeHpaVHRjYmlBZ0lDQWdJQ0FnSUNBZ0lIMWNibHh1SUNBZ0lDQWdJQ0FnSUNBZ0x5OGdRMmhsWTJzZ2FXWWdkR2hsSUcxdlpIVnNaU0JwY3lCaGJISmxZV1I1SUdSbFptbHVaV1F1WEc0Z0lDQWdJQ0FnSUNBZ0lDQnBaaUFvZEdocGN5NWpZV05vWlM1dGIyUjFiR1Z6VzI1aGJXVmRLU0I3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYW5ObExtTnZjbVV1WkdWaWRXY3VkMkZ5YmlnblVtVm5hWE4wY21GMGFXOXVJRzltSUcxdlpIVnNaU0JjSWljZ0t5QnVZVzFsSUNzZ0oxd2lJSE5yYVhCd1pXUXNJR0psWTJGMWMyVWdhWFFnWVd4eVpXRmtlU0JsZUdsemRITXVKeWs3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnY21WMGRYSnVJR1poYkhObE8xeHVJQ0FnSUNBZ0lDQWdJQ0FnZlZ4dVhHNGdJQ0FnSUNBZ0lDQWdJQ0F2THlCVGRHOXlaU0IwYUdVZ2JXOWtkV3hsSUhSdklHTmhZMmhsSUhOdklIUm9ZWFFnYVhRZ1kyRnVJR0psSUhWelpXUWdiR0YwWlhJdVhHNGdJQ0FnSUNBZ0lDQWdJQ0IwYUdsekxtTmhZMmhsTG0xdlpIVnNaWE5iYm1GdFpWMGdQU0I3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnWTI5a1pUb2dZMjlrWlN4Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCa1pYQmxibVJsYm1OcFpYTTZJR1JsY0dWdVpHVnVZMmxsYzF4dUlDQWdJQ0FnSUNBZ0lDQWdmVHRjYmlBZ0lDQWdJQ0FnZlZ4dVhHNGdJQ0FnSUNBZ0lDOHFLbHh1SUNBZ0lDQWdJQ0FnS2lCSmJtbDBhV0ZzYVhwbElFMXZaSFZzWlNCRGIyeHNaV04wYVc5dVhHNGdJQ0FnSUNBZ0lDQXFYRzRnSUNBZ0lDQWdJQ0FxSUZSb2FYTWdiV1YwYUc5a0lIZHBiR3dnZEhKcFoyZGxjaUIwYUdVZ2NHRm5aU0J0YjJSMWJHVnpJR2x1YVhScFlXeHBlbUYwYVc5dUxpQkpkQ0IzYVd4c0lITmxZWEpqYUNCaGJHeGNiaUFnSUNBZ0lDQWdJQ29nZEdobElFUlBUU0JtYjNJZ2RHaGxJRndpWkdGMFlTMW5lQzFsZUhSbGJuTnBiMjVjSWl3Z1hDSmtZWFJoTFdkNExXTnZiblJ5YjJ4c1pYSmNJaUJ2Y2x4dUlDQWdJQ0FnSUNBZ0tpQmNJbVJoZEdFdFozZ3RkMmxrWjJWMFhDSWdZWFIwY21saWRYUmxjeUJoYm1RZ2JHOWhaQ0IwYUdVZ2NtVnNaWFpoYm5RZ2MyTnlhWEIwY3lCMGFISnZkV2RvSUZKbGNYVnBjbVZLVXk1Y2JpQWdJQ0FnSUNBZ0lDcGNiaUFnSUNBZ0lDQWdJQ29nUUhCaGNtRnRJSHRxVVhWbGNubDlJQ1J3WVhKbGJuUWdUM0IwYVc5dVlXd2dLRzUxYkd3cExDQndZWEpsYm5RZ1pXeGxiV1Z1ZENCM2FXeHNJR0psSUhWelpXUWdkRzhnYzJWaGNtTm9JR1p2Y2lCMGFHVWdjbVZ4ZFdseVpXUWdiVzlrZFd4bGN5NWNiaUFnSUNBZ0lDQWdJQ3BjYmlBZ0lDQWdJQ0FnSUNvZ1FISmxkSFZ5YmlCN2FsRjFaWEo1TGtSbFptVnljbVZrZlNCdVlXMWxjM0JoWTJWRVpXWmxjbkpsWkNCRVpXWmxjbkpsWkNCdlltcGxZM1FnZEdoaGRDQm5aWFJ6SUhCeWIyTmxjM05sWkNCaFpuUmxjaUIwYUdWY2JpQWdJQ0FnSUNBZ0lDb2diVzlrZFd4bElHbHVhWFJwWVd4cGVtRjBhVzl1SUdseklHWnBibWx6YUdWa0xseHVJQ0FnSUNBZ0lDQWdLaTljYmlBZ0lDQWdJQ0FnYVc1cGRDZ2tjR0Z5Wlc1MElEMGdiblZzYkNrZ2UxeHVJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z1UzUnZjbVVnZEdobElHNWhiV1Z6Y0dGalpYTWdjbVZtWlhKbGJtTmxJRzltSUhSb1pTQmpiMnhzWldOMGFXOXVMbHh1SUNBZ0lDQWdJQ0FnSUNBZ2FXWWdLQ0YwYUdsekxtNWhiV1Z6Y0dGalpTa2dlMXh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSFJvY205M0lHNWxkeUJGY25KdmNpZ25RMjlzYkdWamRHbHZiaUJqWVc1dWIzUWdZbVVnYVc1cGRHbGhiR2w2WldRZ2QybDBhRzkxZENCcGRITWdjR0Z5Wlc1MElHNWhiV1Z6Y0dGalpTQnBibk4wWVc1alpTNG5LVHRjYmlBZ0lDQWdJQ0FnSUNBZ0lIMWNibHh1SUNBZ0lDQWdJQ0FnSUNBZ0x5OGdVMlYwSUhSb1pTQmtaV1poZFd4MElIQmhjbVZ1ZEMxdlltcGxZM1FnYVdZZ2JtOXVaU0IzWVhNZ1oybDJaVzR1WEc0Z0lDQWdJQ0FnSUNBZ0lDQnBaaUFvSkhCaGNtVnVkQ0E5UFQwZ2RXNWtaV1pwYm1Wa0lIeDhJQ1J3WVhKbGJuUWdQVDA5SUc1MWJHd3BJSHRjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FrY0dGeVpXNTBJRDBnSkNnbmFIUnRiQ2NwTzF4dUlDQWdJQ0FnSUNBZ0lDQWdmVnh1WEc0Z0lDQWdJQ0FnSUNBZ0lDQmpiMjV6ZENCaGRIUnlhV0oxZEdVZ1BTQW5aR0YwWVMwbklDc2dkR2hwY3k1dVlXMWxjM0JoWTJVdWJtRnRaU0FySUNjdEp5QXJJSFJvYVhNdVlYUjBjbWxpZFhSbE8xeHVJQ0FnSUNBZ0lDQWdJQ0FnWTI5dWMzUWdibUZ0WlhOd1lXTmxSR1ZtWlhKeVpXUWdQU0FrTGtSbFptVnljbVZrS0NrN1hHNGdJQ0FnSUNBZ0lDQWdJQ0JqYjI1emRDQmtaV1psY25KbFpFTnZiR3hsWTNScGIyNGdQU0JiWFR0Y2JseHVJQ0FnSUNBZ0lDQWdJQ0FnSkhCaGNtVnVkRnh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQzVtYVd4MFpYSW9KMXNuSUNzZ1lYUjBjbWxpZFhSbElDc2dKMTBuS1Z4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM1aFpHUW9KSEJoY21WdWRDNW1hVzVrS0NkYkp5QXJJR0YwZEhKcFluVjBaU0FySUNkZEp5a3BYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMbVZoWTJnb0tHbHVaR1Y0TENCbGJHVnRaVzUwS1NBOVBpQjdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdOdmJuTjBJQ1JsYkdWdFpXNTBJRDBnSkNobGJHVnRaVzUwS1R0Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdZMjl1YzNRZ2JXOWtkV3hsY3lBOUlDUmxiR1Z0Wlc1MExtRjBkSElvWVhSMGNtbGlkWFJsS1R0Y2JseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FrWld4bGJXVnVkQzV5WlcxdmRtVkJkSFJ5S0dGMGRISnBZblYwWlNrN1hHNWNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSkM1bFlXTm9LRzF2WkhWc1pYTXVjbVZ3YkdGalpTZ3ZLRnhjY2x4Y2JueGNYRzU4WEZ4eWZGeGNjMXhjY3lzcEwyZHRMQ0FuSUNjcExuUnlhVzBvS1M1emNHeHBkQ2duSUNjcExDQW9hVzVrWlhnc0lHNWhiV1VwSUQwK0lIdGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHbG1JQ2h1WVcxbElEMDlQU0FuSnlrZ2UxeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSEpsZEhWeWJpQjBjblZsTzF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlZ4dVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCamIyNXpkQ0JrWldabGNuSmxaQ0E5SUNRdVJHVm1aWEp5WldRb0tUdGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHUmxabVZ5Y21Wa1EyOXNiR1ZqZEdsdmJpNXdkWE5vS0dSbFptVnljbVZrS1R0Y2JseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2FuTmxMbU52Y21VdWJXOWtkV3hsWDJ4dllXUmxjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM1c2IyRmtLQ1JsYkdWdFpXNTBMQ0J1WVcxbExDQjBhR2x6S1Z4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDNWtiMjVsS0NodGIyUjFiR1VwSUQwK0lHMXZaSFZzWlM1cGJtbDBLR1JsWm1WeWNtVmtLU2xjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBdVptRnBiQ2dvWlhKeWIzSXBJRDArSUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnWkdWbVpYSnlaV1F1Y21WcVpXTjBLQ2s3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQzh2SUV4dlp5QjBhR1VnWlhKeWIzSWdhVzRnZEdobElHTnZibk52YkdVZ1luVjBJR1J2SUc1dmRDQnpkRzl3SUhSb1pTQmxibWRwYm1VZ1pYaGxZM1YwYVc5dUxseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCcWMyVXVZMjl5WlM1a1pXSjFaeTVsY25KdmNpZ25RMjkxYkdRZ2JtOTBJR3h2WVdRZ2JXOWtkV3hsT2lBbklDc2dibUZ0WlN3Z1pYSnliM0lwTzF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMHBPMXh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCOUtUdGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjlLVHRjYmx4dUlDQWdJQ0FnSUNBZ0lDQWdMeThnUVd4M1lYbHpJSEpsYzI5c2RtVWdkR2hsSUc1aGJXVnpjR0ZqWlN3Z1pYWmxiaUJwWmlCMGFHVnlaU0JoY21VZ2JXOWtkV3hsSUdWeWNtOXljeTVjYmlBZ0lDQWdJQ0FnSUNBZ0lDUXVkMmhsYmk1aGNIQnNlU2gxYm1SbFptbHVaV1FzSUdSbFptVnljbVZrUTI5c2JHVmpkR2x2YmlrdVlXeDNZWGx6S0NncElEMCtJRzVoYldWemNHRmpaVVJsWm1WeWNtVmtMbkpsYzI5c2RtVW9LU2s3WEc1Y2JpQWdJQ0FnSUNBZ0lDQWdJSEpsZEhWeWJpQmtaV1psY25KbFpFTnZiR3hsWTNScGIyNHViR1Z1WjNSb0lEOGdibUZ0WlhOd1lXTmxSR1ZtWlhKeVpXUXVjSEp2YldselpTZ3BJRG9nYm1GdFpYTndZV05sUkdWbVpYSnlaV1F1Y21WemIyeDJaU2dwTzF4dUlDQWdJQ0FnSUNCOVhHNGdJQ0FnZlZ4dVhHNGdJQ0FnYW5ObExtTnZibk4wY25WamRHOXljeTVEYjJ4c1pXTjBhVzl1SUQwZ1EyOXNiR1ZqZEdsdmJqdGNibjBwS0NrN1hHNGlMQ0l2S2lBdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFZ4eVhHNGdaR0YwWVY5aWFXNWthVzVuTG1weklESXdNVFl0TURVdE1UZGNjbHh1SUVkaGJXSnBieUJIYldKSVhISmNiaUJvZEhSd09pOHZkM2QzTG1kaGJXSnBieTVrWlZ4eVhHNGdRMjl3ZVhKcFoyaDBJQ2hqS1NBeU1ERTJJRWRoYldKcGJ5QkhiV0pJWEhKY2JpQlNaV3hsWVhObFpDQjFibVJsY2lCMGFHVWdSMDVWSUVkbGJtVnlZV3dnVUhWaWJHbGpJRXhwWTJWdWMyVWdLRlpsY25OcGIyNGdNaWxjY2x4dUlGdG9kSFJ3T2k4dmQzZDNMbWR1ZFM1dmNtY3ZiR2xqWlc1elpYTXZaM0JzTFRJdU1DNW9kRzFzWFZ4eVhHNGdMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMWNjbHh1SUNvdlhISmNibHh5WEc0b1puVnVZM1JwYjI0Z0tDa2dlMXh5WEc1Y2NseHVJQ0FnSUNkMWMyVWdjM1J5YVdOMEp6dGNjbHh1WEhKY2JpQWdJQ0F2S2lwY2NseHVJQ0FnSUNBcUlFUmhkR0VnUW1sdVpHbHVaeUJEYkdGemMxeHlYRzRnSUNBZ0lDcGNjbHh1SUNBZ0lDQXFJRWhoYm1Sc1pYTWdkSGR2TFhkaGVTQmtZWFJoSUdKcGJtUnBibWNnZDJsMGFDQlZTU0JsYkdWdFpXNTBjeTVjY2x4dUlDQWdJQ0FxWEhKY2JpQWdJQ0FnS2lCQVkyeGhjM01nU2xORkwwTnZibk4wY25WamRHOXljeTlFWVhSaFFtbHVaR2x1WjF4eVhHNGdJQ0FnSUNvdlhISmNiaUFnSUNCamJHRnpjeUJFWVhSaFFtbHVaR2x1WnlCN1hISmNiaUFnSUNBZ0lDQWdMeW9xWEhKY2JpQWdJQ0FnSUNBZ0lDb2dRMnhoYzNNZ1EyOXVjM1J5ZFdOMGIzSmNjbHh1SUNBZ0lDQWdJQ0FnS2x4eVhHNGdJQ0FnSUNBZ0lDQXFJRUJ3WVhKaGJTQjdVM1J5YVc1bmZTQnVZVzFsSUZSb1pTQnVZVzFsSUc5bUlIUm9aU0JpYVc1a2FXNW5MbHh5WEc0Z0lDQWdJQ0FnSUNBcUlFQndZWEpoYlNCN1QySnFaV04wZlNBa1pXeGxiV1Z1ZENCVVlYSm5aWFFnWld4bGJXVnVkQ0IwYnlCaVpTQmliMjVrTGx4eVhHNGdJQ0FnSUNBZ0lDQXFMMXh5WEc0Z0lDQWdJQ0FnSUdOdmJuTjBjblZqZEc5eUtHNWhiV1VzSUNSbGJHVnRaVzUwS1NCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUhSb2FYTXVibUZ0WlNBOUlHNWhiV1U3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJSFJvYVhNdUpHVnNaVzFsYm5RZ1BTQWtaV3hsYldWdWREdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ2RHaHBjeTUyWVd4MVpTQTlJRzUxYkd3N1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUhSb2FYTXVhWE5OZFhSaFlteGxJRDBnSkdWc1pXMWxiblF1YVhNb0oybHVjSFYwTENCMFpYaDBZWEpsWVN3Z2MyVnNaV04wSnlrN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUhSb2FYTXVhVzVwZENncE8xeHlYRzRnSUNBZ0lDQWdJSDFjY2x4dVhISmNiaUFnSUNBZ0lDQWdMeW9xWEhKY2JpQWdJQ0FnSUNBZ0lDb2dTVzVwZEdsaGJHbDZaU0IwYUdVZ1ltbHVaR2x1Wnk1Y2NseHVJQ0FnSUNBZ0lDQWdLaTljY2x4dUlDQWdJQ0FnSUNCcGJtbDBLQ2tnZTF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0IwYUdsekxpUmxiR1Z0Wlc1MExtOXVLQ2RqYUdGdVoyVW5MQ0FvS1NBOVBpQjdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0IwYUdsekxtZGxkQ2dwTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0I5S1R0Y2NseHVJQ0FnSUNBZ0lDQjlYSEpjYmx4eVhHNGdJQ0FnSUNBZ0lDOHFLbHh5WEc0Z0lDQWdJQ0FnSUNBcUlFZGxkQ0JpYVc1a2FXNW5JSFpoYkhWbExseHlYRzRnSUNBZ0lDQWdJQ0FxWEhKY2JpQWdJQ0FnSUNBZ0lDb2dRSEpsZEhWeWJuTWdleXA5WEhKY2JpQWdJQ0FnSUNBZ0lDb3ZYSEpjYmlBZ0lDQWdJQ0FnWjJWMEtDa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQjBhR2x6TG5aaGJIVmxJRDBnZEdocGN5NXBjMDExZEdGaWJHVWdQeUIwYUdsekxpUmxiR1Z0Wlc1MExuWmhiQ2dwSURvZ2RHaHBjeTRrWld4bGJXVnVkQzVvZEcxc0tDazdYSEpjYmx4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0JwWmlBb2RHaHBjeTRrWld4bGJXVnVkQzVwY3lnbk9tTm9aV05yWW05NEp5a2dmSHdnZEdocGN5NGtaV3hsYldWdWRDNXBjeWduT25KaFpHbHZKeWtwSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIUm9hWE11ZG1Gc2RXVWdQU0IwYUdsekxpUmxiR1Z0Wlc1MExuQnliM0FvSjJOb1pXTnJaV1FuS1R0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnZlZ4eVhHNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ2NtVjBkWEp1SUhSb2FYTXVkbUZzZFdVN1hISmNiaUFnSUNBZ0lDQWdmVnh5WEc1Y2NseHVJQ0FnSUNBZ0lDQXZLaXBjY2x4dUlDQWdJQ0FnSUNBZ0tpQlRaWFFnWW1sdVpHbHVaeUIyWVd4MVpTNWNjbHh1SUNBZ0lDQWdJQ0FnS2x4eVhHNGdJQ0FnSUNBZ0lDQXFJRUJ3WVhKaGJTQjdVM1J5YVc1bmZTQjJZV3gxWlZ4eVhHNGdJQ0FnSUNBZ0lDQXFMMXh5WEc0Z0lDQWdJQ0FnSUhObGRDaDJZV3gxWlNrZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNCMGFHbHpMblpoYkhWbElEMGdkbUZzZFdVN1hISmNibHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQnBaaUFvZEdocGN5NXBjMDExZEdGaWJHVXBJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUhSb2FYTXVKR1ZzWlcxbGJuUXVkbUZzS0haaGJIVmxLVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdmU0JsYkhObElIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSFJvYVhNdUpHVnNaVzFsYm5RdWFIUnRiQ2gyWVd4MVpTazdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lIMWNjbHh1SUNBZ0lDQWdJQ0I5WEhKY2JpQWdJQ0I5WEhKY2JseHlYRzRnSUNBZ2FuTmxMbU52Ym5OMGNuVmpkRzl5Y3k1RVlYUmhRbWx1WkdsdVp5QTlJRVJoZEdGQ2FXNWthVzVuTzF4eVhHNTlLU2dwTzF4eVhHNGlMQ0l2S2lBdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFZ4dUlHMXZaSFZzWlM1cWN5QXlNREUyTFRBMUxURTNYRzRnUjJGdFltbHZJRWR0WWtoY2JpQm9kSFJ3T2k4dmQzZDNMbWRoYldKcGJ5NWtaVnh1SUVOdmNIbHlhV2RvZENBb1l5a2dNakF4TmlCSFlXMWlhVzhnUjIxaVNGeHVJRkpsYkdWaGMyVmtJSFZ1WkdWeUlIUm9aU0JIVGxVZ1IyVnVaWEpoYkNCUWRXSnNhV01nVEdsalpXNXpaU0FvVm1WeWMybHZiaUF5S1Z4dUlGdG9kSFJ3T2k4dmQzZDNMbWR1ZFM1dmNtY3ZiR2xqWlc1elpYTXZaM0JzTFRJdU1DNW9kRzFzWFZ4dUlDMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMWNiaUFxTDF4dVhHNG9ablZ1WTNScGIyNGdLQ2tnZTF4dVhHNGdJQ0FnSjNWelpTQnpkSEpwWTNRbk8xeHVYRzRnSUNBZ0x5b3FYRzRnSUNBZ0lDb2dRMnhoYzNNZ1RXOWtkV3hsWEc0Z0lDQWdJQ3BjYmlBZ0lDQWdLaUJVYUdseklHTnNZWE56SUdseklIVnpaV1FnWm05eUlISmxjSEpsYzJWdWRHbHVaeUJoSUcxdlpIVnNaU0JwYm5OMFlXNWpaU0IzYVhSb2FXNGdkR2hsSUVwVFJTQmxZMjl6ZVhOMFpXMHVYRzRnSUNBZ0lDcGNiaUFnSUNBZ0tpQkFZMnhoYzNNZ1NsTkZMME52Ym5OMGNuVmpkRzl5Y3k5TmIyUjFiR1ZjYmlBZ0lDQWdLaTljYmlBZ0lDQmpiR0Z6Y3lCTmIyUjFiR1VnZTF4dUlDQWdJQ0FnSUNBdktpcGNiaUFnSUNBZ0lDQWdJQ29nUTJ4aGMzTWdRMjl1YzNSeWRXTjBiM0pjYmlBZ0lDQWdJQ0FnSUNwY2JpQWdJQ0FnSUNBZ0lDb2dRSEJoY21GdElIdFBZbXBsWTNSOUlDUmxiR1Z0Wlc1MElFMXZaSFZzWlNCbGJHVnRaVzUwSUhObGJHVmpkRzl5SUc5aWFtVmpkQzVjYmlBZ0lDQWdJQ0FnSUNvZ1FIQmhjbUZ0SUh0VGRISnBibWQ5SUc1aGJXVWdWR2hsSUcxdlpIVnNaU0J1WVcxbElDaHRhV2RvZENCamIyNTBZV2x1SUhSb1pTQndZWFJvS1Z4dUlDQWdJQ0FnSUNBZ0tpQkFjR0Z5WVcwZ2UwOWlhbVZqZEgwZ1kyOXNiR1ZqZEdsdmJpQlVhR1VnWTI5c2JHVmpkR2x2YmlCcGJuTjBZVzVqWlNCdlppQjBhR1VnYlc5a2RXeGxMbHh1SUNBZ0lDQWdJQ0FnS2k5Y2JpQWdJQ0FnSUNBZ1kyOXVjM1J5ZFdOMGIzSW9KR1ZzWlcxbGJuUXNJRzVoYldVc0lHTnZiR3hsWTNScGIyNHBJSHRjYmlBZ0lDQWdJQ0FnSUNBZ0lIUm9hWE11SkdWc1pXMWxiblFnUFNBa1pXeGxiV1Z1ZER0Y2JpQWdJQ0FnSUNBZ0lDQWdJSFJvYVhNdWJtRnRaU0E5SUc1aGJXVTdYRzRnSUNBZ0lDQWdJQ0FnSUNCMGFHbHpMbU52Ykd4bFkzUnBiMjRnUFNCamIyeHNaV04wYVc5dU8xeHVJQ0FnSUNBZ0lDQjlYRzVjYmlBZ0lDQWdJQ0FnTHlvcVhHNGdJQ0FnSUNBZ0lDQXFJRWx1YVhScFlXeHBlbVVnZEdobElHMXZaSFZzWlNCbGVHVmpkWFJwYjI0dVhHNGdJQ0FnSUNBZ0lDQXFYRzRnSUNBZ0lDQWdJQ0FxSUZSb2FYTWdablZ1WTNScGIyNGdkMmxzYkNCbGVHVmpkWFJsSUhSb1pTQmNJbWx1YVhSY0lpQnRaWFJvYjJRZ2IyWWdaV0ZqYUNCdGIyUjFiR1V1WEc0Z0lDQWdJQ0FnSUNBcVhHNGdJQ0FnSUNBZ0lDQXFJRUJ3WVhKaGJTQjdUMkpxWldOMGZTQmpiMnhzWldOMGFXOXVSR1ZtWlhKeVpXUWdSR1ZtWlhKeVpXUWdiMkpxWldOMElIUm9ZWFFnWjJWMGN5QndjbTlqWlhOelpXUWdZV1owWlhJZ2RHaGxJRzF2WkhWc1pWeHVJQ0FnSUNBZ0lDQWdLaUJwYm1sMGFXRnNhWHBoZEdsdmJpQnBjeUJtYVc1cGMyaGxaQzVjYmlBZ0lDQWdJQ0FnSUNvdlhHNGdJQ0FnSUNBZ0lHbHVhWFFvWTI5c2JHVmpkR2x2YmtSbFptVnljbVZrS1NCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0F2THlCVGRHOXlaU0J0YjJSMWJHVWdhVzV6ZEdGdVkyVWdZV3hwWVhNdVhHNGdJQ0FnSUNBZ0lDQWdJQ0JqYjI1emRDQmpZV05vWldRZ1BTQjBhR2x6TG1OdmJHeGxZM1JwYjI0dVkyRmphR1V1Ylc5a2RXeGxjMXQwYUdsekxtNWhiV1ZkTzF4dUlDQWdJQ0FnSUNBZ0lDQWdiR1YwSUhScGJXVnZkWFFnUFNCdWRXeHNPMXh1WEc0Z0lDQWdJQ0FnSUNBZ0lDQjBjbmtnZTF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdsbUlDZ2hZMkZqYUdWa0tTQjdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUhSb2NtOTNJRzVsZHlCRmNuSnZjaWhnVFc5a2RXeGxJRndpSkh0MGFHbHpMbTVoYldWOVhDSWdZMjkxYkdRZ2JtOTBJR0psSUdadmRXNWtJR2x1SUhSb1pTQmpiMnhzWldOMGFXOXVJR05oWTJobExtQXBPMXh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSDFjYmx4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdOdmJuTjBJR1JoZEdFZ1BTQjBhR2x6TGw5blpYUk5iMlIxYkdWRVlYUmhLQ2s3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnWTI5dWMzUWdhVzV6ZEdGdVkyVWdQU0JqWVdOb1pXUXVZMjlrWlM1allXeHNLSFJvYVhNdUpHVnNaVzFsYm5Rc0lHUmhkR0VwTzF4dVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0x5OGdVSEp2ZG1sa1pTQmhJR1J2Ym1VZ1puVnVZM1JwYjI0Z2RHaGhkQ0J1WldWa2N5QjBieUJpWlNCallXeHNaV1FnWm5KdmJTQjBhR1VnYlc5a2RXeGxMQ0JwYmlCdmNtUmxjaUIwYnlCcGJtWnZjbTBnWEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z2RHaGhkQ0IwYUdVZ2JXOWtkV3hsSUZ3aWFXNXBkRndpSUdaMWJtTjBhVzl1SUhkaGN5QmpiMjF3YkdWMFpXUWdjM1ZqWTJWemMyWjFiR3g1TGx4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdOdmJuTjBJR1J2Ym1VZ1BTQW9LU0E5UGlCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSFJvYVhNdUpHVnNaVzFsYm5RdWRISnBaMmRsY2lnbmFuTmxPbTF2WkhWc1pUcHBibWwwYVdGc2FYcGxaQ2NzSUZ0N2JXOWtkV3hsT2lCMGFHbHpMbTVoYldWOVhTazdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdwelpTNWpiM0psTG1SbFluVm5MbWx1Wm04b1lFMXZaSFZzWlNCY0lpUjdkR2hwY3k1dVlXMWxmVndpSUdsdWFYUnBZV3hwZW1Wa0lITjFZMk5sYzNObWRXeHNlUzVnS1R0Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdZMjlzYkdWamRHbHZia1JsWm1WeWNtVmtMbkpsYzI5c2RtVW9LVHRjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ1kyeGxZWEpVYVcxbGIzVjBLSFJwYldWdmRYUXBPMXh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSDA3WEc1Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBdkx5Qk1iMkZrSUhSb1pTQnRiMlIxYkdVZ1pHRjBZU0JpWldadmNtVWdkR2hsSUcxdlpIVnNaU0JwY3lCc2IyRmtaV1F1WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZEdocGN5NWZiRzloWkUxdlpIVnNaVVJoZEdFb2FXNXpkR0Z1WTJVcFhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQzVrYjI1bEtDZ3BJRDArSUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklGSmxhbVZqZENCMGFHVWdZMjlzYkdWamRHbHZia1JsWm1WeWNtVmtJR2xtSUhSb1pTQnRiMlIxYkdVZ2FYTnVKM1FnYVc1cGRHbGhiR2w2WldRZ1lXWjBaWElnTVRBZ2MyVmpiMjVrY3k1Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUhScGJXVnZkWFFnUFNCelpYUlVhVzFsYjNWMEtDZ3BJRDArSUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnFjMlV1WTI5eVpTNWtaV0oxWnk1M1lYSnVLQ2ROYjJSMWJHVWdkMkZ6SUc1dmRDQnBibWwwYVdGc2FYcGxaQ0JoWm5SbGNpQXhNQ0J6WldOdmJtUnpJU0F0TFNBbklDc2dkR2hwY3k1dVlXMWxLVHRjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCamIyeHNaV04wYVc5dVJHVm1aWEp5WldRdWNtVnFaV04wS0NrN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCOUxDQXhNREF3TUNrN1hHNWNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHcHpaUzVqYjNKbExuWjFaUzV5WldkcGMzUmxjazF2WkhWc1pTaHBibk4wWVc1alpTazdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnBibk4wWVc1alpTNXBibWwwS0dSdmJtVXBPMXh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCOUtWeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F1Wm1GcGJDZ29aWEp5YjNJcElEMCtJSHRjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR052Ykd4bFkzUnBiMjVFWldabGNuSmxaQzV5WldwbFkzUW9LVHRjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR3B6WlM1amIzSmxMbVJsWW5WbkxtVnljbTl5S0NkRGIzVnNaQ0J1YjNRZ2JHOWhaQ0J0YjJSMWJHVmNYQ2R6SUcxbGRHRWdaR0YwWVM0bkxDQmxjbkp2Y2lrN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSDBwTzF4dUlDQWdJQ0FnSUNBZ0lDQWdmU0JqWVhSamFDQW9aWGhqWlhCMGFXOXVLU0I3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnWTI5c2JHVmpkR2x2YmtSbFptVnljbVZrTG5KbGFtVmpkQ2dwTzF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdwelpTNWpiM0psTG1SbFluVm5MbVZ5Y205eUtHQkRZVzV1YjNRZ2FXNXBkR2xoYkdsNlpTQnRiMlIxYkdVZ1hDSWtlM1JvYVhNdWJtRnRaWDFjSWk1Z0xDQmxlR05sY0hScGIyNHBPMXh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ1FvZDJsdVpHOTNLUzUwY21sbloyVnlLQ2RsY25KdmNpY3NJRnRsZUdObGNIUnBiMjVkS1RzZ0x5OGdTVzVtYjNKdElIUm9aU0JsYm1kcGJtVWdZV0p2ZFhRZ2RHaGxJR1Y0WTJWd2RHbHZiaTVjYmlBZ0lDQWdJQ0FnSUNBZ0lIMWNibHh1SUNBZ0lDQWdJQ0FnSUNBZ2NtVjBkWEp1SUdOdmJHeGxZM1JwYjI1RVpXWmxjbkpsWkM1d2NtOXRhWE5sS0NrN1hHNGdJQ0FnSUNBZ0lIMWNibHh1SUNBZ0lDQWdJQ0F2S2lwY2JpQWdJQ0FnSUNBZ0lDb2dVR0Z5YzJVZ2RHaGxJRzF2WkhWc1pTQmtZWFJoSUdGMGRISnBZblYwWlhNdVhHNGdJQ0FnSUNBZ0lDQXFYRzRnSUNBZ0lDQWdJQ0FxSUVCeVpYUjFjbTRnZTA5aWFtVmpkSDBnVW1WMGRYSnVjeUJoYmlCdlltcGxZM1FnZEdoaGRDQmpiMjUwWVdsdWN5QjBhR1VnWkdGMFlTQnZaaUIwYUdVZ2JXOWtkV3hsTGx4dUlDQWdJQ0FnSUNBZ0tseHVJQ0FnSUNBZ0lDQWdLaUJBY0hKcGRtRjBaVnh1SUNBZ0lDQWdJQ0FnS2k5Y2JpQWdJQ0FnSUNBZ1gyZGxkRTF2WkhWc1pVUmhkR0VvS1NCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0JqYjI1emRDQmtZWFJoSUQwZ2UzMDdYRzVjYmlBZ0lDQWdJQ0FnSUNBZ0lDUXVaV0ZqYUNoMGFHbHpMaVJsYkdWdFpXNTBMbVJoZEdFb0tTd2dLRzVoYldVc0lIWmhiSFZsS1NBOVBpQjdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdhV1lnS0c1aGJXVXVhVzVrWlhoUFppaDBhR2x6TG01aGJXVXBJRDA5UFNBd0lIeDhJRzVoYldVdWFXNWtaWGhQWmloMGFHbHpMbTVoYldVdWRHOU1iM2RsY2tOaGMyVW9LU2tnUFQwOUlEQXBJSHRjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2JHVjBJR3RsZVNBOUlHNWhiV1V1YzNWaWMzUnlLSFJvYVhNdWJtRnRaUzVzWlc1bmRHZ3BPMXh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCclpYa2dQU0JyWlhrdWMzVmljM1J5S0RBc0lERXBMblJ2VEc5M1pYSkRZWE5sS0NrZ0t5QnJaWGt1YzNWaWMzUnlLREVwTzF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQmtZWFJoVzJ0bGVWMGdQU0IyWVd4MVpUdGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z1VtVnRiM1psSUdSaGRHRWdZWFIwY21saWRYUmxJR1p5YjIwZ1pXeGxiV1Z1ZENBb2MyRnVhWFJwYzJVZ1kyRnRaV3dnWTJGelpTQm1hWEp6ZENrdVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR052Ym5OMElITmhibWwwYVhObFpFdGxlU0E5SUd0bGVTNXlaWEJzWVdObEtDOG9XMkV0ZWwwcEtGdEJMVnBkS1M5bkxDQW5KREV0SkRJbktTNTBiMHh2ZDJWeVEyRnpaU2dwTzF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjBhR2x6TGlSbGJHVnRaVzUwTG5KbGJXOTJaVUYwZEhJb1lHUmhkR0V0Skh0MGFHbHpMbTVoYldWOUxTUjdjMkZ1YVhScGMyVmtTMlY1ZldBcE8xeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMWNiaUFnSUNBZ0lDQWdJQ0FnSUgwcE8xeHVYRzRnSUNBZ0lDQWdJQ0FnSUNCeVpYUjFjbTRnWkdGMFlUdGNiaUFnSUNBZ0lDQWdmVnh1WEc0Z0lDQWdJQ0FnSUM4cUtseHVJQ0FnSUNBZ0lDQWdLaUJOYjJSMWJHVnpJSEpsZEhWeWJpQnZZbXBsWTNSeklIZG9hV05vSUcxcFoyaDBJR052Ym5SaGFXNGdjbVZ4ZFdseVpXMWxiblJ6TGx4dUlDQWdJQ0FnSUNBZ0tseHVJQ0FnSUNBZ0lDQWdLaUJBY0dGeVlXMGdlMDlpYW1WamRIMGdhVzV6ZEdGdVkyVWdUVzlrZFd4bElHbHVjM1JoYm1ObElHOWlhbVZqZEM1Y2JpQWdJQ0FnSUNBZ0lDcGNiaUFnSUNBZ0lDQWdJQ29nUUhKbGRIVnliaUI3VDJKcVpXTjBmU0JTWlhSMWNtNXpJR0VnY0hKdmJXbHpaU0J2WW1wbFkzUWdkR2hoZENCM2FXeHNJR0psSUhKbGMyOXNkbVZrSUhkb1pXNGdkR2hsSUdSaGRHRWdZWEpsSUdabGRHTm9aV1F1WEc0Z0lDQWdJQ0FnSUNBcVhHNGdJQ0FnSUNBZ0lDQXFJRUJ3Y21sMllYUmxYRzRnSUNBZ0lDQWdJQ0FxTDF4dUlDQWdJQ0FnSUNCZmJHOWhaRTF2WkhWc1pVUmhkR0VvYVc1emRHRnVZMlVwSUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJR052Ym5OMElHUmxabVZ5Y21Wa0lEMGdKQzVFWldabGNuSmxaQ2dwTzF4dUlDQWdJQ0FnSUNBZ0lDQWdZMjl1YzNRZ1pHVm1aWEp5WldSRGIyeHNaV04wYVc5dUlEMGdXMTA3WEc1Y2JpQWdJQ0FnSUNBZ0lDQWdJSFJ5ZVNCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2FXWWdLR2x1YzNSaGJtTmxMbTF2WkdWc0tTQjdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNRdVpXRmphQ2hwYm5OMFlXNWpaUzV0YjJSbGJDd2dablZ1WTNScGIyNGdLR2x1WkdWNExDQjFjbXdwSUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdOdmJuTjBJRzF2WkdWc1JHVm1aWEp5WldRZ1BTQWtMa1JsWm1WeWNtVmtLQ2s3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JrWldabGNuSmxaRU52Ykd4bFkzUnBiMjR1Y0hWemFDaHRiMlJsYkVSbFptVnljbVZrS1R0Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNRdVoyVjBTbE5QVGloMWNtd3BYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnTG1SdmJtVW9LSEpsYzNCdmJuTmxLU0E5UGlCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdsdWMzUmhibU5sTG0xdlpHVnNXMmx1WkdWNFhTQTlJSEpsYzNCdmJuTmxPMXh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnRiMlJsYkVSbFptVnljbVZrTG5KbGMyOXNkbVVvY21WemNHOXVjMlVwTzF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMHBYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnTG1aaGFXd29LR1Z5Y205eUtTQTlQaUI3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJRzF2WkdWc1JHVm1aWEp5WldRdWNtVnFaV04wS0dWeWNtOXlLVHRjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCOUtUdGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlNrN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZWeHVYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdhV1lnS0dsdWMzUmhibU5sTG5acFpYY3BJSHRjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0pDNWxZV05vS0dsdWMzUmhibU5sTG5acFpYY3NJR1oxYm1OMGFXOXVJQ2hwYm1SbGVDd2dkWEpzS1NCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCamIyNXpkQ0IyYVdWM1JHVm1aWEp5WldRZ1BTQWtMa1JsWm1WeWNtVmtLQ2s3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JrWldabGNuSmxaRU52Ykd4bFkzUnBiMjR1Y0hWemFDaDJhV1YzUkdWbVpYSnlaV1FwTzF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSkM1blpYUW9kWEpzS1Z4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDNWtiMjVsS0NoeVpYTndiMjV6WlNrZ1BUNGdlMXh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnBibk4wWVc1alpTNTJhV1YzVzJsdVpHVjRYU0E5SUhKbGMzQnZibk5sTzF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0IyYVdWM1JHVm1aWEp5WldRdWNtVnpiMngyWlNoeVpYTndiMjV6WlNrN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdmU2xjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBdVptRnBiQ2dvWlhKeWIzSXBJRDArSUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZG1sbGQwUmxabVZ5Y21Wa0xuSmxhbVZqZENobGNuSnZjaWs3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZTazdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUgwcE8xeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMWNibHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR2xtSUNocGJuTjBZVzVqWlM1aWFXNWthVzVuY3lrZ2UxeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JtYjNJZ0tHeGxkQ0J1WVcxbElHbHVJR2x1YzNSaGJtTmxMbUpwYm1ScGJtZHpLU0I3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JqYjI1emRDQWtaV3hsYldWdWRDQTlJR2x1YzNSaGJtTmxMbUpwYm1ScGJtZHpXMjVoYldWZE8xeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2FXNXpkR0Z1WTJVdVltbHVaR2x1WjNOYmJtRnRaVjBnUFNCdVpYY2dhbk5sTG1OdmJuTjBjblZqZEc5eWN5NUVZWFJoUW1sdVpHbHVaeWh1WVcxbExDQWtaV3hsYldWdWRDazdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCOVhHNWNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWtMbmRvWlc0dVlYQndiSGtvZFc1a1pXWnBibVZrTENCa1pXWmxjbkpsWkVOdmJHeGxZM1JwYjI0cFhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQzVrYjI1bEtHUmxabVZ5Y21Wa0xuSmxjMjlzZG1VcFhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQzVtWVdsc0tDaGxjbkp2Y2lrZ1BUNGdlMXh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdaR1ZtWlhKeVpXUXVjbVZxWldOMEtHNWxkeUJGY25KdmNpaGdRMkZ1Ym05MElHeHZZV1FnWkdGMFlTQm1iM0lnYlc5a2RXeGxJRndpSkh0cGJuTjBZVzVqWlM1dVlXMWxmVndpTG1Bc0lHVnljbTl5S1NrN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSDBwTzF4dUlDQWdJQ0FnSUNBZ0lDQWdmU0JqWVhSamFDQW9aWGhqWlhCMGFXOXVLU0I3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnWkdWbVpYSnlaV1F1Y21WcVpXTjBLR1Y0WTJWd2RHbHZiaWs3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYW5ObExtTnZjbVV1WkdWaWRXY3VaWEp5YjNJb1lFTmhibTV2ZENCd2NtVnNiMkZrSUcxdlpIVnNaU0JrWVhSaElHWnZjaUJjSWlSN2RHaHBjeTV1WVcxbGZWd2lMbUFzSUdWNFkyVndkR2x2YmlrN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0pDaDNhVzVrYjNjcExuUnlhV2RuWlhJb0oyVnljbTl5Snl3Z1cyVjRZMlZ3ZEdsdmJsMHBPeUF2THlCSmJtWnZjbTBnZEdobElHVnVaMmx1WlNCaFltOTFkQ0IwYUdVZ1pYaGpaWEIwYVc5dUxseHVJQ0FnSUNBZ0lDQWdJQ0FnZlZ4dVhHNGdJQ0FnSUNBZ0lDQWdJQ0J5WlhSMWNtNGdaR1ZtWlhKeVpXUXVjSEp2YldselpTZ3BPMXh1SUNBZ0lDQWdJQ0I5WEc0Z0lDQWdmVnh1WEc0Z0lDQWdhbk5sTG1OdmJuTjBjblZqZEc5eWN5NU5iMlIxYkdVZ1BTQk5iMlIxYkdVN1hHNTlLU2dwTzF4dUlpd2lMeW9nTFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzFjYmlCdVlXMWxjM0JoWTJVdWFuTWdNakF4Tmkwd05TMHhOMXh1SUVkaGJXSnBieUJIYldKSVhHNGdhSFIwY0RvdkwzZDNkeTVuWVcxaWFXOHVaR1ZjYmlCRGIzQjVjbWxuYUhRZ0tHTXBJREl3TVRZZ1IyRnRZbWx2SUVkdFlraGNiaUJTWld4bFlYTmxaQ0IxYm1SbGNpQjBhR1VnUjA1VklFZGxibVZ5WVd3Z1VIVmliR2xqSUV4cFkyVnVjMlVnS0ZabGNuTnBiMjRnTWlsY2JpQmJhSFIwY0RvdkwzZDNkeTVuYm5VdWIzSm5MMnhwWTJWdWMyVnpMMmR3YkMweUxqQXVhSFJ0YkYxY2JpQXRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExWeHVJQ292WEc1Y2JpaG1kVzVqZEdsdmJpQW9LU0I3WEc1Y2JpQWdJQ0FuZFhObElITjBjbWxqZENjN1hHNWNiaUFnSUNBdktpcGNiaUFnSUNBZ0tpQkRiR0Z6Y3lCT1lXMWxjM0JoWTJWY2JpQWdJQ0FnS2x4dUlDQWdJQ0FxSUZSb2FYTWdZMnhoYzNNZ2FYTWdkWE5sWkNCMGJ5Qm9ZVzVrYkdVZ2JYVnNkR2x3YkdVZ1kyOXNiR1ZqZEdsdmJuTWdiMllnYlc5a2RXeGxjeTRnUlhabGNua2dibUZ0WlhOd1lXTmxJR2hoY3lCcGRITWdiM2R1SUhOdmRYSmpaU0JWVWt4Y2JpQWdJQ0FnS2lCbWIzSWdiRzloWkdsdVp5QjBhR1VnWkdGMFlTNGdWR2hoZENCdFpXRnVjeUIwYUdGMElFcFRSU0JqWVc0Z2JHOWhaQ0J0YjJSMWJHVnpJR1p5YjIwZ2JYVnNkR2x3YkdVZ2NHeGhZMlZ6SUdGMElIUm9aU0J6WVcxbElIUnBiV1V1WEc0Z0lDQWdJQ3BjYmlBZ0lDQWdLaUJBWTJ4aGMzTWdTbE5GTDBOdmJuTjBjblZqZEc5eWN5OU9ZVzFsYzNCaFkyVmNiaUFnSUNBZ0tpOWNiaUFnSUNCamJHRnpjeUJPWVcxbGMzQmhZMlVnZTF4dUlDQWdJQ0FnSUNBdktpcGNiaUFnSUNBZ0lDQWdJQ29nUTJ4aGMzTWdRMjl1YzNSeWRXTjBiM0pjYmlBZ0lDQWdJQ0FnSUNwY2JpQWdJQ0FnSUNBZ0lDb2dRSEJoY21GdElIdFRkSEpwYm1kOUlHNWhiV1VnVkdobElHNWhiV1Z6Y0dGalpTQnVZVzFsSUcxMWMzUWdZbVVnZFc1cGNYVmxJSGRwZEdocGJpQjBhR1VnWVhCd0xseHVJQ0FnSUNBZ0lDQWdLaUJBY0dGeVlXMGdlMU4wY21sdVozMGdjMjkxY21ObElFTnZiWEJzWlhSbElGVlNUQ0IwYnlCMGFHVWdibUZ0WlhOd1lXTmxJRzF2WkhWc1pYTWdaR2x5WldOMGIzSjVJQ2gzYVhSb2IzVjBJSFJ5WVdsc2FXNW5JSE5zWVhOb0tTNWNiaUFnSUNBZ0lDQWdJQ29nUUhCaGNtRnRJSHRCY25KaGVYMGdZMjlzYkdWamRHbHZibk1nUTI5dWRHRnBibk1nWTI5c2JHVmpkR2x2YmlCcGJuTjBZVzVqWlhNZ2RHOGdZbVVnYVc1amJIVmtaV1FnYVc0Z2RHaGxJRzVoYldWemNHRmpaUzVjYmlBZ0lDQWdJQ0FnSUNvdlhHNGdJQ0FnSUNBZ0lHTnZibk4wY25WamRHOXlLRzVoYldVc0lITnZkWEpqWlN3Z1kyOXNiR1ZqZEdsdmJuTXBJSHRjYmlBZ0lDQWdJQ0FnSUNBZ0lIUm9hWE11Ym1GdFpTQTlJRzVoYldVN1hHNGdJQ0FnSUNBZ0lDQWdJQ0IwYUdsekxuTnZkWEpqWlNBOUlITnZkWEpqWlR0Y2JpQWdJQ0FnSUNBZ0lDQWdJSFJvYVhNdVkyOXNiR1ZqZEdsdmJuTWdQU0JqYjJ4c1pXTjBhVzl1Y3pzZ0x5OGdZMjl1ZEdGcGJuTWdkR2hsSUdSbFptRjFiSFFnYVc1emRHRnVZMlZ6SUNBZ1hIUmNkRnh1SUNBZ0lDQWdJQ0I5WEc1Y2JpQWdJQ0FnSUNBZ0x5b3FYRzRnSUNBZ0lDQWdJQ0FxSUVsdWFYUnBZV3hwZW1VZ2RHaGxJRzVoYldWemNHRmpaU0JqYjJ4c1pXTjBhVzl1Y3k1Y2JpQWdJQ0FnSUNBZ0lDcGNiaUFnSUNBZ0lDQWdJQ29nVkdocGN5QnRaWFJvYjJRZ2QybHNiQ0JqY21WaGRHVWdibVYzSUdOdmJHeGxZM1JwYjI0Z2FXNXpkR0Z1WTJWeklHSmhjMlZrSUdsdUlIUm9aU0J2Y21sbmFXNWhiQ0J2Ym1WekxseHVJQ0FnSUNBZ0lDQWdLbHh1SUNBZ0lDQWdJQ0FnS2lCQWNtVjBkWEp1SUh0cVVYVmxjbmt1VUhKdmJXbHpaWDBnVW1WMGRYSnVjeUJoSUhCeWIyMXBjMlVnZEdoaGRDQjNhV3hzSUdKbElISmxjMjlzZG1Wa0lHOXVZMlVnWlhabGNua2dibUZ0WlhOd1lXTmxJR052Ykd4bFkzUnBiMjVjYmlBZ0lDQWdJQ0FnSUNvZ2FYTWdjbVZ6YjJ4MlpXUXVYRzRnSUNBZ0lDQWdJQ0FxTDF4dUlDQWdJQ0FnSUNCcGJtbDBLQ2tnZTF4dUlDQWdJQ0FnSUNBZ0lDQWdZMjl1YzNRZ1pHVm1aWEp5WldSRGIyeHNaV04wYVc5dUlEMGdXMTA3WEc1Y2JpQWdJQ0FnSUNBZ0lDQWdJR1p2Y2lBb2JHVjBJR052Ykd4bFkzUnBiMjRnYjJZZ2RHaHBjeTVqYjJ4c1pXTjBhVzl1Y3lrZ2UxeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIUm9hWE5iWTI5c2JHVmpkR2x2Ymk1dVlXMWxYU0E5SUc1bGR5QnFjMlV1WTI5dWMzUnlkV04wYjNKekxrTnZiR3hsWTNScGIyNG9ZMjlzYkdWamRHbHZiaTV1WVcxbExDQmpiMnhzWldOMGFXOXVMbUYwZEhKcFluVjBaU3dnZEdocGN5azdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdZMjl1YzNRZ1pHVm1aWEp5WldRZ1BTQjBhR2x6VzJOdmJHeGxZM1JwYjI0dWJtRnRaVjB1YVc1cGRDZ3BPMXh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR1JsWm1WeWNtVmtRMjlzYkdWamRHbHZiaTV3ZFhOb0tHUmxabVZ5Y21Wa0tUdGNiaUFnSUNBZ0lDQWdJQ0FnSUgxY2JseHVJQ0FnSUNBZ0lDQWdJQ0FnY21WMGRYSnVJR1JsWm1WeWNtVmtRMjlzYkdWamRHbHZiaTVzWlc1bmRHZ2dQeUFrTG5kb1pXNHVZWEJ3Ykhrb2RXNWtaV1pwYm1Wa0xDQmtaV1psY25KbFpFTnZiR3hsWTNScGIyNHBMbkJ5YjIxcGMyVW9LU0E2SUNRdVJHVm1aWEp5WldRb0tTNXlaWE52YkhabEtDazdYRzRnSUNBZ0lDQWdJSDFjYmlBZ0lDQjlYRzVjYmlBZ0lDQnFjMlV1WTI5dWMzUnlkV04wYjNKekxrNWhiV1Z6Y0dGalpTQTlJRTVoYldWemNHRmpaVHRjYm4wcEtDazdYRzRpTENJdktpQXRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExWeHVJR0ZpYjNWMExtcHpJREl3TVRZdE1Ea3RNRGhjYmlCSFlXMWlhVzhnUjIxaVNGeHVJR2gwZEhBNkx5OTNkM2N1WjJGdFltbHZMbVJsWEc0Z1EyOXdlWEpwWjJoMElDaGpLU0F5TURFMklFZGhiV0pwYnlCSGJXSklYRzRnVW1Wc1pXRnpaV1FnZFc1a1pYSWdkR2hsSUVkT1ZTQkhaVzVsY21Gc0lGQjFZbXhwWXlCTWFXTmxibk5sSUNoV1pYSnphVzl1SURJcFhHNGdXMmgwZEhBNkx5OTNkM2N1WjI1MUxtOXlaeTlzYVdObGJuTmxjeTluY0d3dE1pNHdMbWgwYld4ZFhHNGdMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMWNiaUFxTDF4dVhHNHZLaXBjYmlBcUlFcFRSU0JKYm1admNtMWhkR2x2YmlCTmIyUjFiR1ZjYmlBcVhHNGdLaUJGZUdWamRYUmxJSFJvWlNCZ2FuTmxMbUZpYjNWMEtDbGdJR052YlcxaGJtUWdZVzVrSUhsdmRTQjNhV3hzSUdkbGRDQmhJRzVsZHlCc2IyY2daVzUwY25rZ2FXNGdkR2hsWEc0Z0tpQmpiMjV6YjJ4bElIZHBkR2dnYVc1bWJ5QmhZbTkxZENCMGFHVWdaVzVuYVc1bExpQlVhR1VnWENKaFltOTFkRndpSUcxbGRHaHZaQ0JwY3lCdmJteDVJR0YyWVdsc1lXSnNaU0JwYmx4dUlDb2dkR2hsSUZ3aVpHVjJaV3h2Y0cxbGJuUmNJaUJsYm5acGNtOXViV1Z1ZENCdlppQjBhR1VnWlc1bmFXNWxMbHh1SUNwY2JpQXFJRUJ0YjJSMWJHVWdTbE5GTDBOdmNtVXZZV0p2ZFhSY2JpQXFMMXh1Wkc5amRXMWxiblF1WVdSa1JYWmxiblJNYVhOMFpXNWxjaWduUkU5TlEyOXVkR1Z1ZEV4dllXUmxaQ2NzSUdaMWJtTjBhVzl1SUNncElIdGNibHh1SUNBZ0lDZDFjMlVnYzNSeWFXTjBKenRjYmx4dUlDQWdJR2xtSUNocWMyVXVZMjl5WlM1amIyNW1hV2N1WjJWMEtDZGxiblpwY205dWJXVnVkQ2NwSUQwOVBTQW5jSEp2WkhWamRHbHZiaWNwSUh0Y2JpQWdJQ0FnSUNBZ2NtVjBkWEp1TzF4dUlDQWdJSDFjYmx4dUlDQWdJR3B6WlM1aFltOTFkQ0E5SUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNBZ0lDQWdZMjl1YzNRZ2FXNW1ieUE5SUdCY2JseDBYSFJjZEVwVElFVk9SMGxPUlNCMkpIdHFjMlV1WTI5eVpTNWpiMjVtYVdjdVoyVjBLQ2QyWlhKemFXOXVKeWw5SU1LcElFZEJUVUpKVHlCSFRVSklYRzVjZEZ4MFhIUXRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRYRzVjZEZ4MFhIUlVhR1VnU2xNZ1JXNW5hVzVsSUdWdVlXSnNaWE1nWkdWMlpXeHZjR1Z5Y3lCMGJ5QnNiMkZrSUdGMWRHOXRZWFJwWTJGc2JIa2djMjFoYkd3Z2NHbGxZMlZ6SUc5bUlHcGhkbUZ6WTNKcGNIUWdZMjlrWlNCaWVWeHVYSFJjZEZ4MGNHeGhZMmx1WnlCemNHVmphV1pwWXlCa1lYUmhJR0YwZEhKcFluVjBaWE1nZEc4Z2RHaGxJRWhVVFV3Z2JXRnlhM1Z3SUc5bUlHRWdjR0ZuWlM0Z1NYUWdkMkZ6SUdKMWFXeDBJSGRwZEdnZ2JXOWtkV3hoY21sMGVWeHVYSFJjZEZ4MGFXNGdiV2x1WkNCemJ5QjBhR0YwSUcxdlpIVnNaWE1nWTJGdUlHSmxJSEpsZFhObFpDQnBiblJ2SUcxMWJIUnBjR3hsSUhCc1lXTmxjeUIzYVhSb2IzVjBJR1Y0ZEhKaElHVm1abTl5ZEM0Z1ZHaGxJR1Z1WjJsdVpWeHVYSFJjZEZ4MFkyOXVkR0ZwYm5NZ2JtRnRaWE53WVdObGN5QjNhR2xqYUNCamIyNTBZV2x1SUdOdmJHeGxZM1JwYjI1eklHOW1JRzF2WkhWc1pYTXNJR1ZoWTJnZ2IyNWxJRzltSUhkb2IyMGdjMlZ5ZG1VZ1lTQmthV1ptWlhKbGJuUmNibHgwWEhSY2RHZGxibVZ5YVdNZ2NIVnljRzl6WlM1Y2JseDBYSFJjZEZacGMybDBJR2gwZEhBNkx5OWtaWFpsYkc5d1pYSnpMbWRoYldKcGJ5NWtaU0JtYjNJZ1kyOXRjR3hsZEdVZ2NtVm1aWEpsYm1ObElHOW1JSFJvWlNCS1V5QkZibWRwYm1VdVhHNWNkRngwWEhSY2JseDBYSFJjZEVaQlRFeENRVU5MSUVsT1JrOVNUVUZVU1U5T1hHNWNkRngwWEhRdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdFhHNWNkRngwWEhSVGFXNWpaU0IwYUdVZ1pXNW5hVzVsSUdOdlpHVWdZbVZqYjIxbGN5QmlhV2RuWlhJZ2RHaGxjbVVnWVhKbElITmxZM1JwYjI1eklIUm9ZWFFnYm1WbFpDQjBieUJpWlNCeVpXWmhZM1J2Y21Wa0lHbHVJRzl5WkdWeVhHNWNkRngwWEhSMGJ5QmlaV052YldVZ2JXOXlaU0JtYkdWNGFXSnNaUzRnU1c0Z2JXOXpkQ0JqWVhObGN5QmhJSGRoY201cGJtY2diRzluSUhkcGJHd2dZbVVnWkdsemNHeGhlV1ZrSUdGMElIUm9aU0JpY205M2MyVnlYRnduY3lCamIyNXpiMnhsWEc1Y2RGeDBYSFIzYUdWdVpYWmxjaUIwYUdWeVpTQnBjeUJoSUhWelpTQnZaaUJoSUdSbGNISmxZMkYwWldRZ1puVnVZM1JwYjI0dUlFSmxiRzkzSUhSb1pYSmxJR2x6SUdFZ2NYVnBZMnNnYkdsemRDQnZaaUJtWVd4c1ltRmpheUJ6ZFhCd2IzSjBYRzVjZEZ4MFhIUjBhR0YwSUhkcGJHd2dZbVVnY21WdGIzWmxaQ0JwYmlCMGFHVWdablYwZFhKbElIWmxjbk5wYjI1eklHOW1JSFJvWlNCbGJtZHBibVV1WEc1Y2RGeDBYSFJjYmx4MFhIUmNkREV1SUZSb1pTQnRZV2x1SUdWdVoybHVaU0J2WW1wbFkzUWdkMkZ6SUhKbGJtRnRaV1FnWm5KdmJTQmNJbWQ0WENJZ2RHOGdYQ0pxYzJWY0lpQjNhR2xqYUNCemRHRnVaSE1nWm05eUlIUm9aU0JLWVhaaFUyTnlhWEIwSUVWdVoybHVaUzVjYmx4MFhIUmNkREl1SUZSb1pTQmNJbWQ0TG14cFlsd2lJRzlpYW1WamRDQnBjeUJ5WlcxdmRtVmtJR0ZtZEdWeUlHRWdiRzl1WnlCa1pYQnlaV05oZEdsdmJpQndaWEpwYjJRdUlGbHZkU0J6YUc5MWJHUWdkWEJrWVhSbElIUm9aU0J0YjJSMWJHVnpJRnh1WEhSY2RGeDBJQ0FnZEdoaGRDQmpiMjUwWVdsdVpXUWdZMkZzYkhNZ2RHOGdkR2hsSUdaMWJtTjBhVzl1Y3lCdlppQjBhR2x6SUc5aWFtVmpkQzVjYmx4MFhIUmNkRE11SUZSb1pTQm5lQzQ4WTI5c2JHVmpkR2x2YmkxdVlXMWxQaTV5WldkcGMzUmxjaUJtZFc1amRHbHZiaUJwY3lCa1pYQnlaV05oZEdWa0lHSjVJSFl4TGpJc0lIVnpaU0IwYUdVZ1hHNWNkRngwWEhRZ0lDQThibUZ0WlhOd1lXTmxQaTQ4WTI5c2JHVmpkR2x2Ymo0dWJXOWtkV3hsS0NrZ2FXNXpkR1ZoWkM1Y2JseDBYSFJnTzF4dVhHNGdJQ0FnSUNBZ0lHcHpaUzVqYjNKbExtUmxZblZuTG1sdVptOG9hVzVtYnlrN1hHNGdJQ0FnZlR0Y2JuMHBPMXh1SWl3aUx5b2dMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMWNiaUJqYjI1bWFXY3Vhbk1nTWpBeE9DMHdPUzB4TWx4dUlFZGhiV0pwYnlCSGJXSklYRzRnYUhSMGNEb3ZMM2QzZHk1bllXMWlhVzh1WkdWY2JpQkRiM0I1Y21sbmFIUWdLR01wSURJd01UY2dSMkZ0WW1sdklFZHRZa2hjYmlCU1pXeGxZWE5sWkNCMWJtUmxjaUIwYUdVZ1IwNVZJRWRsYm1WeVlXd2dVSFZpYkdsaklFeHBZMlZ1YzJVZ0tGWmxjbk5wYjI0Z01pbGNiaUJiYUhSMGNEb3ZMM2QzZHk1bmJuVXViM0puTDJ4cFkyVnVjMlZ6TDJkd2JDMHlMakF1YUhSdGJGMWNiaUF0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMVnh1SUNvdlhHNWNibXB6WlM1amIzSmxMbU52Ym1acFp5QTlJR3B6WlM1amIzSmxMbU52Ym1acFp5QjhmQ0I3ZlR0Y2JseHVMeW9xWEc0Z0tpQktVMFVnUTI5dVptbG5kWEpoZEdsdmJpQk5iMlIxYkdWY2JpQXFYRzRnS2lCUGJtTmxJSFJvWlNCamIyNW1hV2NnYjJKcVpXTjBJR2x6SUdsdWFYUnBZV3hwZW1Wa0lIbHZkU0JqWVc1dWIzUWdZMmhoYm1kbElHbDBjeUIyWVd4MVpYTXVJRlJvYVhNZ2FYTWdaRzl1WlNCcGJpQnZjbVJsY2lCMGIxeHVJQ29nY0hKbGRtVnVkQ0IxYm5Cc1pXRnpZVzUwSUhOcGRIVmhkR2x2Ym5NZ2QyaGxjbVVnYjI1bElHTnZaR1VnYzJWamRHbHZiaUJqYUdGdVoyVnpJR0VnWTI5eVpTQmpiMjVtYVdjZ2MyVjBkR2x1WnlCMGFHRjBJR0ZtWm1WamRITmNiaUFxSUdGdWIzUm9aWElnWTI5a1pTQnpaV04wYVc5dUlHbHVJR0VnZDJGNUlIUm9ZWFFnYVhNZ2FHRnlaQ0IwYnlCa2FYTmpiM1psY2k1Y2JpQXFYRzRnS2lCZ1lHQnFZWFpoYzJOeWFYQjBYRzRnS2lCamIyNXpkQ0JoY0hCVmNtd2dQU0JxYzJVdVkyOXlaUzVqYjI1bWFXY3VaMlYwS0NkaGNIQlZjbXduS1R0Y2JpQXFJR0JnWUZ4dUlDcGNiaUFxSUVCdGIyUjFiR1VnU2xORkwwTnZjbVV2WTI5dVptbG5YRzRnS2k5Y2JpaG1kVzVqZEdsdmJpQW9aWGh3YjNKMGN5a2dlMXh1WEc0Z0lDQWdKM1Z6WlNCemRISnBZM1FuTzF4dVhHNGdJQ0FnTHk4Z0xTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdFhHNGdJQ0FnTHk4Z1EwOU9Sa2xIVlZKQlZFbFBUaUJXUVV4VlJWTmNiaUFnSUNBdkx5QXRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMWNibHh1SUNBZ0lHTnZibk4wSUdOdmJtWnBaeUE5SUh0Y2JpQWdJQ0FnSUNBZ0x5b3FYRzRnSUNBZ0lDQWdJQ0FxSUVWdVoybHVaU0JXWlhKemFXOXVYRzRnSUNBZ0lDQWdJQ0FxWEc0Z0lDQWdJQ0FnSUNBcUlFQjBlWEJsSUh0VGRISnBibWQ5WEc0Z0lDQWdJQ0FnSUNBcUwxeHVJQ0FnSUNBZ0lDQjJaWEp6YVc5dU9pQW5NUzQySnl4Y2JseHVJQ0FnSUNBZ0lDQXZLaXBjYmlBZ0lDQWdJQ0FnSUNvZ1FYQndJRlZTVEZ4dUlDQWdJQ0FnSUNBZ0tseHVJQ0FnSUNBZ0lDQWdLaUJsTG1jdUlDZG9kSFJ3T2k4dllYQndMbU52YlNkY2JpQWdJQ0FnSUNBZ0lDcGNiaUFnSUNBZ0lDQWdJQ29nUUhSNWNHVWdlMU4wY21sdVozMWNiaUFnSUNBZ0lDQWdJQ292WEc0Z0lDQWdJQ0FnSUdGd2NGVnliRG9nYm5Wc2JDeGNibHh1SUNBZ0lDQWdJQ0F2S2lwY2JpQWdJQ0FnSUNBZ0lDb2dVMmh2Y0NCVlVreGNiaUFnSUNBZ0lDQWdJQ3BjYmlBZ0lDQWdJQ0FnSUNvZ1pTNW5MaUFuYUhSMGNEb3ZMM05vYjNBdVpHVW5YRzRnSUNBZ0lDQWdJQ0FxWEc0Z0lDQWdJQ0FnSUNBcUlFQmtaWEJ5WldOaGRHVmtJRk5wYm1ObElIWXhMalFzSUhWelpTQmhjSEJWY213Z2FXNXpkR1ZoWkM1Y2JpQWdJQ0FnSUNBZ0lDcGNiaUFnSUNBZ0lDQWdJQ29nUUhSNWNHVWdlMU4wY21sdVozMWNiaUFnSUNBZ0lDQWdJQ292WEc0Z0lDQWdJQ0FnSUhOb2IzQlZjbXc2SUc1MWJHd3NYRzVjYmlBZ0lDQWdJQ0FnTHlvcVhHNGdJQ0FnSUNBZ0lDQXFJRUZ3Y0NCV1pYSnphVzl1WEc0Z0lDQWdJQ0FnSUNBcVhHNGdJQ0FnSUNBZ0lDQXFJR1V1Wnk0Z0p6SXVOeTR6TGpBblhHNGdJQ0FnSUNBZ0lDQXFYRzRnSUNBZ0lDQWdJQ0FxSUVCMGVYQmxJSHRUZEhKcGJtZDlYRzRnSUNBZ0lDQWdJQ0FxTDF4dUlDQWdJQ0FnSUNCaGNIQldaWEp6YVc5dU9pQnVkV3hzTEZ4dVhHNGdJQ0FnSUNBZ0lDOHFLbHh1SUNBZ0lDQWdJQ0FnS2lCVGFHOXdJRlpsY25OcGIyNWNiaUFnSUNBZ0lDQWdJQ3BjYmlBZ0lDQWdJQ0FnSUNvZ1pTNW5MaUFuTWk0M0xqTXVNQ2RjYmlBZ0lDQWdJQ0FnSUNwY2JpQWdJQ0FnSUNBZ0lDb2dRR1JsY0hKbFkyRjBaV1FnVTJsdVkyVWdNUzQwTENCMWMyVWdZWEJ3Vm1WeWMybHZiaUJwYm5OMFpXRmtMbHh1SUNBZ0lDQWdJQ0FnS2x4dUlDQWdJQ0FnSUNBZ0tpQkFkSGx3WlNCN1UzUnlhVzVuZlZ4dUlDQWdJQ0FnSUNBZ0tpOWNiaUFnSUNBZ0lDQWdjMmh2Y0ZabGNuTnBiMjQ2SUc1MWJHd3NYRzVjYmlBZ0lDQWdJQ0FnTHlvcVhHNGdJQ0FnSUNBZ0lDQXFJRlZTVENCMGJ5QktVMFZ1WjJsdVpTQkVhWEpsWTNSdmNua3VYRzRnSUNBZ0lDQWdJQ0FxWEc0Z0lDQWdJQ0FnSUNBcUlHVXVaeTRnSjJoMGRIQTZMeTloY0hBdVkyOXRMMHBUUlc1bmFXNWxYRzRnSUNBZ0lDQWdJQ0FxWEc0Z0lDQWdJQ0FnSUNBcUlFQjBlWEJsSUh0VGRISnBibWQ5WEc0Z0lDQWdJQ0FnSUNBcUwxeHVJQ0FnSUNBZ0lDQmxibWRwYm1WVmNtdzZJRzUxYkd3c1hHNWNiaUFnSUNBZ0lDQWdMeW9xWEc0Z0lDQWdJQ0FnSUNBcUlFVnVaMmx1WlNCRmJuWnBjbTl1YldWdWRGeHVJQ0FnSUNBZ0lDQWdLbHh1SUNBZ0lDQWdJQ0FnS2lCRVpXWnBibVZ6SUhSb1pTQm1kVzVqZEdsdmJtRnNhWFI1SUc5bUlIUm9aU0JsYm1kcGJtVWdhVzRnYldGdWVTQnpaV04wYVc5dWN5NWNiaUFnSUNBZ0lDQWdJQ3BjYmlBZ0lDQWdJQ0FnSUNvZ1ZtRnNkV1Z6T2lBblpHVjJaV3h2Y0cxbGJuUW5MQ0FuY0hKdlpIVmpkR2x2YmlkY2JpQWdJQ0FnSUNBZ0lDcGNiaUFnSUNBZ0lDQWdJQ29nUUhSNWNHVWdlMU4wY21sdVozMWNiaUFnSUNBZ0lDQWdJQ292WEc0Z0lDQWdJQ0FnSUdWdWRtbHliMjV0Wlc1ME9pQW5jSEp2WkhWamRHbHZiaWNzWEc1Y2JpQWdJQ0FnSUNBZ0x5b3FYRzRnSUNBZ0lDQWdJQ0FxSUZSeVlXNXpiR0YwYVc5dWN5QlBZbXBsWTNSY2JpQWdJQ0FnSUNBZ0lDcGNiaUFnSUNBZ0lDQWdJQ29nUTI5dWRHRnBibk1nZEdobElHeHZZV1JsWkNCMGNtRnVjMnhoZEdsdmJuTWdkRzhnWW1VZ2RYTmxaQ0IzYVhSb2FXNGdTbE5GYm1kcGJtVXVYRzRnSUNBZ0lDQWdJQ0FxWEc0Z0lDQWdJQ0FnSUNBcUlFQnpaV1VnYW5ObExtTnZjbVV1YkdGdVp5QnZZbXBsWTNSY2JpQWdJQ0FnSUNBZ0lDcGNiaUFnSUNBZ0lDQWdJQ29nUUhSNWNHVWdlMDlpYW1WamRIMWNiaUFnSUNBZ0lDQWdJQ292WEc0Z0lDQWdJQ0FnSUhSeVlXNXpiR0YwYVc5dWN6b2dlMzBzWEc1Y2JpQWdJQ0FnSUNBZ0x5b3FYRzRnSUNBZ0lDQWdJQ0FxSUUxdlpIVnNaU0JEYjJ4c1pXTjBhVzl1YzF4dUlDQWdJQ0FnSUNBZ0tseHVJQ0FnSUNBZ0lDQWdLaUJRY205MmFXUmxJR0Z5Y21GNUlIZHBkR2dnZXlCdVlXMWxPaUFuSnl3Z1lYUjBjbWxpZFhSbE9pQW5KMzBnYjJKcVpXTjBjeUIwYUdGMElHUmxabWx1WlNCMGFHVWdZMjlzYkdWamRHbHZibk1nZEc4Z1ltVWdkWE5sWkNCM2FYUm9hVzVjYmlBZ0lDQWdJQ0FnSUNvZ2RHaGxJR0Z3Y0d4cFkyRjBhVzl1TGx4dUlDQWdJQ0FnSUNBZ0tseHVJQ0FnSUNBZ0lDQWdLaUJBZEhsd1pTQjdRWEp5WVhsOVhHNGdJQ0FnSUNBZ0lDQXFMMXh1SUNBZ0lDQWdJQ0JqYjJ4c1pXTjBhVzl1Y3pvZ1cxMHNYRzVjYmlBZ0lDQWdJQ0FnTHlvcVhHNGdJQ0FnSUNBZ0lDQXFJRU4xY25KbGJuUWdUR0Z1WjNWaFoyVWdRMjlrWlZ4dUlDQWdJQ0FnSUNBZ0tseHVJQ0FnSUNBZ0lDQWdLaUJBZEhsd1pTQjdVM1J5YVc1bmZWeHVJQ0FnSUNBZ0lDQWdLaTljYmlBZ0lDQWdJQ0FnYkdGdVozVmhaMlZEYjJSbE9pQW5aR1VuTEZ4dVhHNGdJQ0FnSUNBZ0lDOHFLbHh1SUNBZ0lDQWdJQ0FnS2lCVFpYUWdkR2hsSUdSbFluVm5JR3hsZG1Wc0lIUnZJRzl1WlNCdlppQjBhR1VnWm05c2JHOTNhVzVuT2lBblJFVkNWVWNuTENBblNVNUdUeWNzSUNkTVQwY25MQ0FuVjBGU1RpY3NJQ2RGVWxKUFVpY3NYRzRnSUNBZ0lDQWdJQ0FxSUNkQlRFVlNWQ2NzSUNkVFNVeEZUbFFuTGx4dUlDQWdJQ0FnSUNBZ0tseHVJQ0FnSUNBZ0lDQWdLaUJBZEhsd1pTQjdVM1J5YVc1bmZWeHVJQ0FnSUNBZ0lDQWdLaTljYmlBZ0lDQWdJQ0FnWkdWaWRXYzZJQ2RUU1V4RlRsUW5MRnh1WEc0Z0lDQWdJQ0FnSUM4cUtseHVJQ0FnSUNBZ0lDQWdLaUJWYzJVZ1kyRmphR1VnWW5WemRHbHVaeUIwWldOb2JtbHhkV1VnZDJobGJpQnNiMkZrYVc1bklHMXZaSFZzWlhNdVhHNGdJQ0FnSUNBZ0lDQXFYRzRnSUNBZ0lDQWdJQ0FxSUVCa1pYQnlaV05oZEdWa0lGTnBibU5sSUhZeExqUmNiaUFnSUNBZ0lDQWdJQ3BjYmlBZ0lDQWdJQ0FnSUNvZ1FITmxaU0JxYzJVdVkyOXlaUzV0YjJSMWJHVmZiRzloWkdWeUlHOWlhbVZqZEZ4dUlDQWdJQ0FnSUNBZ0tseHVJQ0FnSUNBZ0lDQWdLaUJBZEhsd1pTQjdRbTl2YkdWaGJuMWNiaUFnSUNBZ0lDQWdJQ292WEc0Z0lDQWdJQ0FnSUdOaFkyaGxRblZ6ZERvZ2RISjFaU3hjYmx4dUlDQWdJQ0FnSUNBdktpcGNiaUFnSUNBZ0lDQWdJQ29nVlhObElHTmhZMmhsSUdKMWMzUnBibWNnZEc5clpXNGdZWE1nY0dGeWRDQnZaaUJtYVd4bElHNWhiV1V1WEc0Z0lDQWdJQ0FnSUNBcVhHNGdJQ0FnSUNBZ0lDQXFJRUIwZVhCbElIdENiMjlzWldGdWZWeHVJQ0FnSUNBZ0lDQWdLaTljYmlBZ0lDQWdJQ0FnWW5WemRFWnBiR1Z6T2lCbVlXeHpaU3hjYmx4dUlDQWdJQ0FnSUNBdktpcGNiaUFnSUNBZ0lDQWdJQ29nVjJobGRHaGxjaUIwYUdVZ1kyeHBaVzUwSUdoaGN5QmhJRzF2WW1sc1pTQnBiblJsY21aaFkyVXVYRzRnSUNBZ0lDQWdJQ0FxWEc0Z0lDQWdJQ0FnSUNBcUlFQjBlWEJsSUh0Q2IyOXNaV0Z1ZlZ4dUlDQWdJQ0FnSUNBZ0tpOWNiaUFnSUNBZ0lDQWdiVzlpYVd4bE9pQW9MMEZ1WkhKdmFXUjhkMlZpVDFOOGFWQm9iMjVsZkdsUVlXUjhhVkJ2Wkh4Q2JHRmphMEpsY25KNWZFbEZUVzlpYVd4bGZFOXdaWEpoSUUxcGJta3ZhUzUwWlhOMEtHNWhkbWxuWVhSdmNpNTFjMlZ5UVdkbGJuUXBLU3hjYmx4dUlDQWdJQ0FnSUNBdktpcGNiaUFnSUNBZ0lDQWdJQ29nVjJobGRHaGxjaUIwYUdVZ1kyeHBaVzUwSUhOMWNIQnZjblJ6SUhSdmRXTm9JR1YyWlc1MGN5NWNiaUFnSUNBZ0lDQWdJQ3BjYmlBZ0lDQWdJQ0FnSUNvZ1FIUjVjR1VnZTBKdmIyeGxZVzU5WEc0Z0lDQWdJQ0FnSUNBcUwxeHVJQ0FnSUNBZ0lDQjBiM1ZqYURvZ0tDZ25iMjUwYjNWamFITjBZWEowSnlCcGJpQjNhVzVrYjNjcElIeDhJSGRwYm1SdmR5NXZiblJ2ZFdOb2MzUmhjblFnZkh3Z2QybHVaRzkzTG05dWJYTm5aWE4wZFhKbFkyaGhibWRsS1NBL0lIUnlkV1VnT2lCbVlXeHpaU3hjYmx4dUlDQWdJQ0FnSUNBdktpcGNiaUFnSUNBZ0lDQWdJQ29nVTNCbFkybG1lU0IwYUdVZ2NHRjBhQ0JtYjNJZ2RHaGxJR1pwYkdVZ2JXRnVZV2RsY2k1Y2JpQWdJQ0FnSUNBZ0lDcGNiaUFnSUNBZ0lDQWdJQ29nUUdSbGNISmxZMkYwWldRZ1UybHVZMlVnZGpFdU5GeHVJQ0FnSUNBZ0lDQWdLbHh1SUNBZ0lDQWdJQ0FnS2lCQWRIbHdaU0I3VTNSeWFXNW5mVnh1SUNBZ0lDQWdJQ0FnS2k5Y2JpQWdJQ0FnSUNBZ1ptbHNaVzFoYm1GblpYSTZJQ2RwYm1Oc2RXUmxjeTlqYTJWa2FYUnZjaTltYVd4bGJXRnVZV2RsY2k5cGJtUmxlQzVvZEcxc0p5eGNibHh1SUNBZ0lDQWdJQ0F2S2lwY2JpQWdJQ0FnSUNBZ0lDb2dVR0ZuWlNCMGIydGxiaUIwYnlCcGJtTnNkV1JsSUdsdUlHVjJaWEo1SUVGS1FWZ2djbVZ4ZFdWemRDNWNiaUFnSUNBZ0lDQWdJQ3BjYmlBZ0lDQWdJQ0FnSUNvZ1ZHaGxJSEJoWjJVZ2RHOXJaVzRnYVhNZ2RYTmxaQ0IwYnlCaGRtOXBaQ0JEVTFKR0lHRjBkR0ZqYTNNdUlFbDBJRzExYzNRZ1ltVWdjSEp2ZG1sa1pXUWdZbmtnZEdobElHSmhZMnRsYm1RZ1lXNWtJR2wwSUhkcGJHeGNiaUFnSUNBZ0lDQWdJQ29nWW1VZ2RtRnNhV1JoZEdWa0lIUm9aWEpsTGx4dUlDQWdJQ0FnSUNBZ0tseHVJQ0FnSUNBZ0lDQWdLaUJBZEhsd1pTQjdVM1J5YVc1bmZWeHVJQ0FnSUNBZ0lDQWdLaTljYmlBZ0lDQWdJQ0FnY0dGblpWUnZhMlZ1T2lBbkp5eGNibHh1SUNBZ0lDQWdJQ0F2S2lwY2JpQWdJQ0FnSUNBZ0lDb2dRMkZqYUdVZ1ZHOXJaVzRnVTNSeWFXNW5YRzRnSUNBZ0lDQWdJQ0FxWEc0Z0lDQWdJQ0FnSUNBcUlGUm9hWE1nWTI5dVptbG5kWEpoZEdsdmJpQjJZV3gxWlNCM2FXeHNJR0psSUhWelpXUWdhVzRnY0hKdlpIVmpkR2x2YmlCbGJuWnBjbTl1YldWdWRDQm1iM0lnWTJGamFHVWdZblZ6ZEdsdVp5NGdTWFFnYlhWemRGeHVJQ0FnSUNBZ0lDQWdLaUJpWlNCd2NtOTJhV1JsWkNCM2FYUm9JSFJvWlNCM2FXNWtiM2N1U2xORmJtZHBibVZEYjI1bWFXZDFjbUYwYVc5dUlHOWlhbVZqZEM1Y2JpQWdJQ0FnSUNBZ0lDcGNiaUFnSUNBZ0lDQWdJQ29nUUhSNWNHVWdlMU4wY21sdVozMWNiaUFnSUNBZ0lDQWdJQ292WEc0Z0lDQWdJQ0FnSUdOaFkyaGxWRzlyWlc0NklDY25MRnh1WEc0Z0lDQWdJQ0FnSUM4cUtseHVJQ0FnSUNBZ0lDQWdLaUJFWldacGJtVnpJSGRvWlhSb1pYSWdkR2hsSUdocGMzUnZjbmtnYjJKcVpXTjBJR2x6SUdGMllXbHNZV0pzWlM1Y2JpQWdJQ0FnSUNBZ0lDcGNiaUFnSUNBZ0lDQWdJQ29nUUhSNWNHVWdlMEp2YjJ4bFlXNTlYRzRnSUNBZ0lDQWdJQ0FxTDF4dUlDQWdJQ0FnSUNCb2FYTjBiM0o1T2lCb2FYTjBiM0o1SUNZbUlHaHBjM1J2Y25rdWNtVndiR0ZqWlZOMFlYUmxJQ1ltSUdocGMzUnZjbmt1Y0hWemFGTjBZWFJsTEZ4dVhHNGdJQ0FnSUNBZ0lDOHFLbHh1SUNBZ0lDQWdJQ0FnS2lCV2RXVWdRMjl1Wm1sbmRYSmhkR2x2Ymx4dUlDQWdJQ0FnSUNBZ0tseHVJQ0FnSUNBZ0lDQWdLaUJVYUdseklHTnZibVpwWjNWeVlYUnBiMjRnZDNkcGJHd2dZbVVnZFhObFpDQm1iM0lnWVdSa2FXNW5JRloxWlNCemRYQndiM0owSUdsdUlIUm9aU0JqZFhKeVpXNTBJSEJoWjJVdVhHNGdJQ0FnSUNBZ0lDQXFYRzRnSUNBZ0lDQWdJQ0FxSUVCMGVYQmxJSHRQWW1wbFkzUjlYRzRnSUNBZ0lDQWdJQ0FxTDF4dUlDQWdJQ0FnSUNCMmRXVTZJRzUxYkd3c1hHNGdJQ0FnZlR0Y2JseHVJQ0FnSUM4cUtseHVJQ0FnSUNBcUlFSnNZV05yYkdsemRDQmpiMjVtYVdjZ2RtRnNkV1Z6SUdsdUlIQnliMlIxWTNScGIyNGdaVzUyYVhKdmJtMWxiblF1WEc0Z0lDQWdJQ3BjYmlBZ0lDQWdLaUJBZEhsd1pTQjdVM1J5YVc1blcxMTlYRzRnSUNBZ0lDb3ZYRzRnSUNBZ1kyOXVjM1FnWW14aFkydHNhWE4wSUQwZ1cxeHVJQ0FnSUNBZ0lDQW5kbVZ5YzJsdmJpY3NYRzRnSUNBZ0lDQWdJQ2RoY0hCV1pYSnphVzl1Snl4Y2JpQWdJQ0FnSUNBZ0ozTm9iM0JXWlhKemFXOXVKMXh1SUNBZ0lGMDdYRzVjYmlBZ0lDQXZMeUF0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzFjYmlBZ0lDQXZMeUJRVlVKTVNVTWdUVVZVU0U5RVUxeHVJQ0FnSUM4dklDMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExWeHVYRzRnSUNBZ0x5b3FYRzRnSUNBZ0lDb2dSMlYwSUdFZ1kyOXVabWxuZFhKaGRHbHZiaUIyWVd4MVpTNWNiaUFnSUNBZ0tseHVJQ0FnSUNBcUlFQndZWEpoYlNCN1UzUnlhVzVuZlNCdVlXMWxJRlJvWlNCamIyNW1hV2QxY21GMGFXOXVJSFpoYkhWbElHNWhiV1VnZEc4Z1ltVWdjbVYwY21sbGRtVmtMbHh1SUNBZ0lDQXFYRzRnSUNBZ0lDb2dRSEpsZEhWeWJpQjdLbjBnVW1WMGRYSnVjeUIwYUdVZ1kyOXVabWxuSUhaaGJIVmxMbHh1SUNBZ0lDQXFMMXh1SUNBZ0lHVjRjRzl5ZEhNdVoyVjBJRDBnWm5WdVkzUnBiMjRnS0c1aGJXVXBJSHRjYmlBZ0lDQWdJQ0FnYVdZZ0tHTnZibVpwWnk1bGJuWnBjbTl1YldWdWRDQTlQVDBnSjNCeWIyUjFZM1JwYjI0bklDWW1JR0pzWVdOcmJHbHpkQzVwYm1Oc2RXUmxjeWh1WVcxbEtTa2dlMXh1SUNBZ0lDQWdJQ0FnSUNBZ2NtVjBkWEp1SUc1MWJHdzdYRzRnSUNBZ0lDQWdJSDFjYmx4dUlDQWdJQ0FnSUNCeVpYUjFjbTRnWTI5dVptbG5XMjVoYldWZE8xeHVJQ0FnSUgwN1hHNWNiaUFnSUNBdktpcGNiaUFnSUNBZ0tpQkpibWwwYVdGc2FYcGxJSFJvWlNCS1V5QkZibWRwYm1VZ1kyOXVabWxuSUc5aWFtVmpkQzVjYmlBZ0lDQWdLbHh1SUNBZ0lDQXFJRlJvYVhNZ2JXVjBhRzlrSUhkcGJHd2djR0Z5YzJVZ2RHaGxJR2RzYjJKaGJDQmNJa3BUUlc1bmFXNWxRMjl1Wm1sbmRYSmhkR2x2Ymx3aUlHOWlhbVZqZENCaGJtUWdkR2hsYmlCeVpXMXZkbVZjYmlBZ0lDQWdLaUJwZENCbWNtOXRJSFJvWlNCbmJHOWlZV3dnYzJOdmNHVWdjMjhnZEdoaGRDQnBkQ0JpWldOdmJXVnpJSFJvWlNCdmJteDVJR052Ym1acFp5QnpiM1Z5WTJVZ1ptOXlJR3BoZG1GelkzSnBjSFF1WEc0Z0lDQWdJQ3BjYmlBZ0lDQWdLaUJPYjNScFkyVTZJRlJvWlNCdmJteDVJSEpsY1hWcGNtVmtJRXBUUlc1bmFXNWxRMjl1Wm1sbmRYSmhkR2x2YmlCMllXeDFaWE1nWVhKbElIUm9aU0JjSW1WdWRtbHliMjV0Wlc1MFhDSWdZVzVrSUhSb1pTQmNJbUZ3Y0ZWeWJGd2lMbHh1SUNBZ0lDQXFYRzRnSUNBZ0lDb2dRSEJoY21GdElIdFBZbXBsWTNSOUlHcHpSVzVuYVc1bFEyOXVabWxuZFhKaGRHbHZiaUJOZFhOMElHTnZiblJoYVc0Z2FXNW1iM0p0WVhScGIyNGdkR2hoZENCa1pXWnBibVVnWTI5eVpTQnZjR1Z5WVhScGIyNXpYRzRnSUNBZ0lDb2diMllnZEdobElHVnVaMmx1WlM0Z1EyaGxZMnNnZEdobElGd2liR2xpY3k5cGJtbDBhV0ZzYVhwbFhDSWdaVzUwY25rZ2IyWWdkR2hsSUdWdVoybHVaU0JrYjJOMWJXVnVkR0YwYVc5dUxseHVJQ0FnSUNBcUwxeHVJQ0FnSUdWNGNHOXlkSE11YVc1cGRDQTlJR1oxYm1OMGFXOXVJQ2hxYzBWdVoybHVaVU52Ym1acFozVnlZWFJwYjI0cElIdGNiaUFnSUNBZ0lDQWdZMjl1Wm1sbkxtVnVkbWx5YjI1dFpXNTBJRDBnYW5ORmJtZHBibVZEYjI1bWFXZDFjbUYwYVc5dUxtVnVkbWx5YjI1dFpXNTBPMXh1SUNBZ0lDQWdJQ0JqYjI1bWFXY3VZWEJ3VlhKc0lEMGdhbk5GYm1kcGJtVkRiMjVtYVdkMWNtRjBhVzl1TG1Gd2NGVnliQzV5WlhCc1lXTmxLQzljWEM4ckpDOHNJQ2NuS1RzZ0x5OGdVbVZ0YjNabElIUnlZV2xzYVc1bklITnNZWE5vSUdaeWIyMGdZWEJ3VlhKc0xseHVYRzRnSUNBZ0lDQWdJR2xtSUNoamIyNW1hV2N1Wlc1MmFYSnZibTFsYm5RZ1BUMDlJQ2RrWlhabGJHOXdiV1Z1ZENjcElIdGNiaUFnSUNBZ0lDQWdJQ0FnSUdOdmJtWnBaeTVqWVdOb1pVSjFjM1FnUFNCbVlXeHpaVHRjYmlBZ0lDQWdJQ0FnSUNBZ0lHTnZibVpwWnk1dGFXNXBabWxsWkNBOUlHWmhiSE5sTzF4dUlDQWdJQ0FnSUNBZ0lDQWdZMjl1Wm1sbkxtUmxZblZuSUQwZ0owUkZRbFZISnp0Y2JpQWdJQ0FnSUNBZ2ZWeHVYRzRnSUNBZ0lDQWdJR2xtSUNocWMwVnVaMmx1WlVOdmJtWnBaM1Z5WVhScGIyNHVaVzVuYVc1bFZYSnNJQ0U5UFNCMWJtUmxabWx1WldRcElIdGNiaUFnSUNBZ0lDQWdJQ0FnSUdOdmJtWnBaeTVsYm1kcGJtVlZjbXdnUFNCcWMwVnVaMmx1WlVOdmJtWnBaM1Z5WVhScGIyNHVaVzVuYVc1bFZYSnNMbkpsY0d4aFkyVW9MMXhjTHlza0x5d2dKeWNwTzF4dUlDQWdJQ0FnSUNCOUlHVnNjMlVnZTF4dUlDQWdJQ0FnSUNBZ0lDQWdZMjl1Wm1sbkxtVnVaMmx1WlZWeWJDQTlJR052Ym1acFp5NWhjSEJWY213Z0t5QW5MMHBUUlc1bmFXNWxMMkoxYVd4a0p6dGNiaUFnSUNBZ0lDQWdmVnh1WEc0Z0lDQWdJQ0FnSUdsbUlDaHFjMFZ1WjJsdVpVTnZibVpwWjNWeVlYUnBiMjR1ZEhKaGJuTnNZWFJwYjI1eklDRTlQU0IxYm1SbFptbHVaV1FwSUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJR052Ym1acFp5NTBjbUZ1YzJ4aGRHbHZibk1nUFNCcWMwVnVaMmx1WlVOdmJtWnBaM1Z5WVhScGIyNHVkSEpoYm5Oc1lYUnBiMjV6TzF4dVhHNGdJQ0FnSUNBZ0lDQWdJQ0JtYjNJZ0tHeGxkQ0J6WldOMGFXOXVUbUZ0WlNCcGJpQmpiMjVtYVdjdWRISmhibk5zWVhScGIyNXpLU0I3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYW5ObExtTnZjbVV1YkdGdVp5NWhaR1JUWldOMGFXOXVLSE5sWTNScGIyNU9ZVzFsTENCamIyNW1hV2N1ZEhKaGJuTnNZWFJwYjI1elczTmxZM1JwYjI1T1lXMWxYU2s3WEc0Z0lDQWdJQ0FnSUNBZ0lDQjlYRzRnSUNBZ0lDQWdJSDFjYmx4dUlDQWdJQ0FnSUNCcFppQW9hbk5GYm1kcGJtVkRiMjVtYVdkMWNtRjBhVzl1TG1OdmJHeGxZM1JwYjI1eklDRTlQU0IxYm1SbFptbHVaV1FwSUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJR052Ym1acFp5NWpiMnhzWldOMGFXOXVjeUE5SUdwelJXNW5hVzVsUTI5dVptbG5kWEpoZEdsdmJpNWpiMnhzWldOMGFXOXVjenRjYmlBZ0lDQWdJQ0FnZlNCbGJITmxJSHRjYmlBZ0lDQWdJQ0FnSUNBZ0lHTnZibVpwWnk1amIyeHNaV04wYVc5dWN5QTlJRnRjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I3Ym1GdFpUb2dKMk52Ym5SeWIyeHNaWEp6Snl3Z1lYUjBjbWxpZFhSbE9pQW5ZMjl1ZEhKdmJHeGxjaWQ5TEZ4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUh0dVlXMWxPaUFuWlhoMFpXNXphVzl1Y3ljc0lHRjBkSEpwWW5WMFpUb2dKMlY0ZEdWdWMybHZiaWQ5TEZ4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUh0dVlXMWxPaUFuZDJsa1oyVjBjeWNzSUdGMGRISnBZblYwWlRvZ0ozZHBaR2RsZENkOVhHNGdJQ0FnSUNBZ0lDQWdJQ0JkWEc0Z0lDQWdJQ0FnSUgxY2JseHVJQ0FnSUNBZ0lDQnBaaUFvYW5ORmJtZHBibVZEYjI1bWFXZDFjbUYwYVc5dUxtRndjRlpsY25OcGIyNGdJVDA5SUhWdVpHVm1hVzVsWkNrZ2UxeHVJQ0FnSUNBZ0lDQWdJQ0FnWTI5dVptbG5MbUZ3Y0ZabGNuTnBiMjRnUFNCcWMwVnVaMmx1WlVOdmJtWnBaM1Z5WVhScGIyNHVZWEJ3Vm1WeWMybHZianRjYmlBZ0lDQWdJQ0FnZlZ4dVhHNGdJQ0FnSUNBZ0lHbG1JQ2hxYzBWdVoybHVaVU52Ym1acFozVnlZWFJwYjI0dWMyaHZjRlZ5YkNBaFBUMGdkVzVrWldacGJtVmtLU0I3WEc0Z0lDQWdJQ0FnSUNBZ0lDQnFjMlV1WTI5eVpTNWtaV0oxWnk1M1lYSnVLQ2RLVXlCRmJtZHBibVU2SUZ3aWMyaHZjRlZ5YkZ3aUlHbHpJR1JsY0hKbFkyRjBaV1FnWVc1a0lIZHBiR3dnWW1VZ2NtVnRiM1psWkNCcGJpQktVeUJGYm1kcGJtVWdkakV1TlN3Z2NHeGxZWE5sSUNkY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBcklDZDFjMlVnZEdobElGd2lZWEJ3VlhKc1hDSWdhVzV6ZEdWaFpDNG5LVHRjYmlBZ0lDQWdJQ0FnSUNBZ0lHTnZibVpwWnk1emFHOXdWWEpzSUQwZ2FuTkZibWRwYm1WRGIyNW1hV2QxY21GMGFXOXVMbk5vYjNCVmNtd3VjbVZ3YkdGalpTZ3ZYRnd2S3lRdkxDQW5KeWs3WEc0Z0lDQWdJQ0FnSUNBZ0lDQmpiMjVtYVdjdVlYQndWWEpzSUQwZ1kyOXVabWxuTG1Gd2NGVnliQ0I4ZkNCamIyNW1hV2N1YzJodmNGVnliRHNnTHk4Z1RXRnJaU0J6ZFhKbElIUm9aU0JjSW1Gd2NGVnliRndpSUhaaGJIVmxJR2x6SUc1dmRDQmxiWEIwZVM1Y2JpQWdJQ0FnSUNBZ2ZWeHVYRzRnSUNBZ0lDQWdJR2xtSUNocWMwVnVaMmx1WlVOdmJtWnBaM1Z5WVhScGIyNHVjMmh2Y0ZabGNuTnBiMjRnSVQwOUlIVnVaR1ZtYVc1bFpDa2dlMXh1SUNBZ0lDQWdJQ0FnSUNBZ2FuTmxMbU52Y21VdVpHVmlkV2N1ZDJGeWJpZ25TbE1nUlc1bmFXNWxPaUJjSW5Ob2IzQldaWEp6YVc5dVhDSWdhWE1nWkdWd2NtVmpZWFJsWkNCaGJtUWdkMmxzYkNCaVpTQnlaVzF2ZG1Wa0lHbHVJRXBUSUVWdVoybHVaU0IyTVM0MUxDQndiR1ZoYzJVZ0oxeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDc2dKM1Z6WlNCMGFHVWdYQ0poY0hCV1pYSnphVzl1WENJZ2FXNXpkR1ZoWkM0bktUdGNiaUFnSUNBZ0lDQWdJQ0FnSUdOdmJtWnBaeTV6YUc5d1ZtVnljMmx2YmlBOUlHcHpSVzVuYVc1bFEyOXVabWxuZFhKaGRHbHZiaTV6YUc5d1ZtVnljMmx2Ymp0Y2JpQWdJQ0FnSUNBZ2ZWeHVYRzRnSUNBZ0lDQWdJR2xtSUNocWMwVnVaMmx1WlVOdmJtWnBaM1Z5WVhScGIyNHVjSEpsWm1sNElDRTlQU0IxYm1SbFptbHVaV1FwSUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJR052Ym1acFp5NXdjbVZtYVhnZ1BTQnFjMFZ1WjJsdVpVTnZibVpwWjNWeVlYUnBiMjR1Y0hKbFptbDRPMXh1SUNBZ0lDQWdJQ0I5WEc1Y2JpQWdJQ0FnSUNBZ2FXWWdLR3B6Ulc1bmFXNWxRMjl1Wm1sbmRYSmhkR2x2Ymk1c1lXNW5kV0ZuWlVOdlpHVWdJVDA5SUhWdVpHVm1hVzVsWkNrZ2UxeHVJQ0FnSUNBZ0lDQWdJQ0FnWTI5dVptbG5MbXhoYm1kMVlXZGxRMjlrWlNBOUlHcHpSVzVuYVc1bFEyOXVabWxuZFhKaGRHbHZiaTVzWVc1bmRXRm5aVU52WkdVN1hHNGdJQ0FnSUNBZ0lIMWNibHh1SUNBZ0lDQWdJQ0JwWmlBb1pHOWpkVzFsYm5RdVoyVjBSV3hsYldWdWRFSjVTV1FvSjJsdWFYUXRhbk1uS1NBaFBUMGdiblZzYkZ4dUlDQWdJQ0FnSUNBZ0lDQWdKaVlnWkc5amRXMWxiblF1WjJWMFJXeGxiV1Z1ZEVKNVNXUW9KMmx1YVhRdGFuTW5LUzVvWVhOQmRIUnlhV0oxZEdVb0oyUmhkR0V0Y0dGblpTMTBiMnRsYmljcEtTQjdYRzRnSUNBZ0lDQWdJQ0FnSUNCcWMwVnVaMmx1WlVOdmJtWnBaM1Z5WVhScGIyNHVjR0ZuWlZSdmEyVnVJRDBnWkc5amRXMWxiblF1WjJWMFJXeGxiV1Z1ZEVKNVNXUW9KMmx1YVhRdGFuTW5LUzVuWlhSQmRIUnlhV0oxZEdVb0oyUmhkR0V0Y0dGblpTMTBiMnRsYmljcE8xeHVJQ0FnSUNBZ0lDQjlYRzVjYmlBZ0lDQWdJQ0FnYVdZZ0tHcHpSVzVuYVc1bFEyOXVabWxuZFhKaGRHbHZiaTV3WVdkbFZHOXJaVzRnSVQwOUlIVnVaR1ZtYVc1bFpDa2dlMXh1SUNBZ0lDQWdJQ0FnSUNBZ1kyOXVabWxuTG5CaFoyVlViMnRsYmlBOUlHcHpSVzVuYVc1bFEyOXVabWxuZFhKaGRHbHZiaTV3WVdkbFZHOXJaVzQ3WEc0Z0lDQWdJQ0FnSUgxY2JseHVJQ0FnSUNBZ0lDQnBaaUFvYW5ORmJtZHBibVZEYjI1bWFXZDFjbUYwYVc5dUxtTmhZMmhsVkc5clpXNGdJVDA5SUhWdVpHVm1hVzVsWkNrZ2UxeHVJQ0FnSUNBZ0lDQWdJQ0FnWTI5dVptbG5MbU5oWTJobFZHOXJaVzRnUFNCcWMwVnVaMmx1WlVOdmJtWnBaM1Z5WVhScGIyNHVZMkZqYUdWVWIydGxianRjYmlBZ0lDQWdJQ0FnZlZ4dVhHNGdJQ0FnSUNBZ0lHbG1JQ2hxYzBWdVoybHVaVU52Ym1acFozVnlZWFJwYjI0dVluVnpkRVpwYkdWeklDRTlQU0IxYm1SbFptbHVaV1FwSUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJR052Ym1acFp5NWlkWE4wUm1sc1pYTWdQU0JxYzBWdVoybHVaVU52Ym1acFozVnlZWFJwYjI0dVluVnpkRVpwYkdWek8xeHVJQ0FnSUNBZ0lDQjlYRzVjYmlBZ0lDQWdJQ0FnYVdZZ0tHcHpSVzVuYVc1bFEyOXVabWxuZFhKaGRHbHZiaTUyZFdVZ0lUMDlJSFZ1WkdWbWFXNWxaQ2tnZTF4dUlDQWdJQ0FnSUNBZ0lDQWdZMjl1Wm1sbkxuWjFaU0E5SUdwelJXNW5hVzVsUTI5dVptbG5kWEpoZEdsdmJpNTJkV1U3WEc0Z0lDQWdJQ0FnSUgxY2JseHVJQ0FnSUNBZ0lDQXZMeUJCWkdRZ2RHaGxJRndpZEc5MVkyaEZkbVZ1ZEhOY0lpQmxiblJ5ZVNCemJ5QjBhR0YwSUcxdlpIVnNaWE1nWTJGdUlHSnBibVFnZG1GeWFXOTFjeUIwYjNWamFDQmxkbVZ1ZEhNZ1pHVndaVzVrYVc1bklIUm9aU0JpY205M2MyVnlMbHh1SUNBZ0lDQWdJQ0JqYjI1emRDQm5aVzVsY21Gc1ZHOTFZMmhGZG1WdWRITWdQU0I3WEc0Z0lDQWdJQ0FnSUNBZ0lDQnpkR0Z5ZERvZ0ozUnZkV05vYzNSaGNuUW5MRnh1SUNBZ0lDQWdJQ0FnSUNBZ1pXNWtPaUFuZEhKdmRXTm9aVzVrSnl4Y2JpQWdJQ0FnSUNBZ0lDQWdJRzF2ZG1VNklDZDBiM1ZqYUcxdmRtVW5YRzRnSUNBZ0lDQWdJSDA3WEc1Y2JpQWdJQ0FnSUNBZ1kyOXVjM1FnYldsamNtOXpiMlowVkc5MVkyaEZkbVZ1ZEhNZ1BTQjdYRzRnSUNBZ0lDQWdJQ0FnSUNCemRHRnlkRG9nSjNCdmFXNTBaWEprYjNkdUp5eGNiaUFnSUNBZ0lDQWdJQ0FnSUdWdVpEb2dKM0J2YVc1MFpYSjFjQ2NzWEc0Z0lDQWdJQ0FnSUNBZ0lDQnRiM1psT2lBbmNHOXBiblJsY20xdmRtVW5YRzRnSUNBZ0lDQWdJSDA3WEc1Y2JpQWdJQ0FnSUNBZ1kyOXVabWxuTG5SdmRXTm9SWFpsYm5SeklEMGdLSGRwYm1SdmR5NXZibTF6WjJWemRIVnlaV05vWVc1blpTa2dQeUJ0YVdOeWIzTnZablJVYjNWamFFVjJaVzUwY3lBNklHZGxibVZ5WVd4VWIzVmphRVYyWlc1MGN6dGNibHh1SUNBZ0lDQWdJQ0F2THlCVFpYUWdhVzVwZEdsaGJDQnlaV2RwYzNSeWVTQjJZV3gxWlhNdUlGeHVJQ0FnSUNBZ0lDQm1iM0lnS0d4bGRDQmxiblJ5ZVNCcGJpQnFjMFZ1WjJsdVpVTnZibVpwWjNWeVlYUnBiMjR1Y21WbmFYTjBjbmtwSUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJR3B6WlM1amIzSmxMbkpsWjJsemRISjVMbk5sZENobGJuUnllU3dnYW5ORmJtZHBibVZEYjI1bWFXZDFjbUYwYVc5dUxuSmxaMmx6ZEhKNVcyVnVkSEo1WFNrN1hHNGdJQ0FnSUNBZ0lIMWNibHh1SUNBZ0lDQWdJQ0F2THlCSmJtbDBhV0ZzYVhwbElIUm9aU0J0YjJSMWJHVWdiRzloWkdWeUlHOWlhbVZqZEM1Y2JpQWdJQ0FnSUNBZ2FuTmxMbU52Y21VdWJXOWtkV3hsWDJ4dllXUmxjaTVwYm1sMEtDazdYRzVjYmlBZ0lDQWdJQ0FnTHk4Z1JHVnpkSEp2ZVNCbmJHOWlZV3dnUlc1bmFXNWxRMjl1Wm1sbmRYSmhkR2x2YmlCdlltcGxZM1F1WEc0Z0lDQWdJQ0FnSUdSbGJHVjBaU0IzYVc1a2IzY3VTbE5GYm1kcGJtVkRiMjVtYVdkMWNtRjBhVzl1TzF4dUlDQWdJSDA3WEc1Y2JuMG9hbk5sTG1OdmNtVXVZMjl1Wm1sbktTazdYRzRpTENJdktpQXRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExWeHVJR1JsWW5WbkxtcHpJREl3TVRZdE1Ea3RNRGhjYmlCSFlXMWlhVzhnUjIxaVNGeHVJR2gwZEhBNkx5OTNkM2N1WjJGdFltbHZMbVJsWEc0Z1EyOXdlWEpwWjJoMElDaGpLU0F5TURFMklFZGhiV0pwYnlCSGJXSklYRzRnVW1Wc1pXRnpaV1FnZFc1a1pYSWdkR2hsSUVkT1ZTQkhaVzVsY21Gc0lGQjFZbXhwWXlCTWFXTmxibk5sSUNoV1pYSnphVzl1SURJcFhHNGdXMmgwZEhBNkx5OTNkM2N1WjI1MUxtOXlaeTlzYVdObGJuTmxjeTluY0d3dE1pNHdMbWgwYld4ZFhHNGdMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMWNiaUFxTDF4dVhHNXFjMlV1WTI5eVpTNWtaV0oxWnlBOUlHcHpaUzVqYjNKbExtUmxZblZuSUh4OElIdDlPMXh1WEc0dktpcGNiaUFxSUVwVFJTQkVaV0oxWnlCTmIyUjFiR1ZjYmlBcVhHNGdLaUJVYUdseklHOWlhbVZqZENCd2NtOTJhV1JsY3lCaGJpQjNjbUZ3Y0dWeUlIUnZJSFJvWlNCamIyNXpiMnhsTG14dlp5Qm1kVzVqZEdsdmJpQmhibVFnWlc1aFlteGxjeUJsWVhONUlIVnpaVnh1SUNvZ2IyWWdkR2hsSUdScFptWmxjbVZ1ZENCc2IyY2dkSGx3WlhNZ2JHbHJaU0JjSW1sdVptOWNJaXdnWENKM1lYSnVhVzVuWENJc0lGd2laWEp5YjNKY0lpQmxkR011WEc0Z0tseHVJQ29nUUcxdlpIVnNaU0JLVTBVdlEyOXlaUzlrWldKMVoxeHVJQ292WEc0b1puVnVZM1JwYjI0Z0tHVjRjRzl5ZEhNcElIdGNiaUFnSUNBbmRYTmxJSE4wY21samRDYzdYRzVjYmlBZ0lDQXZMeUF0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzFjYmlBZ0lDQXZMeUJXUVZKSlFVSk1SVk5jYmlBZ0lDQXZMeUF0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzFjYmx4dUlDQWdJQzhxS2x4dUlDQWdJQ0FxSUVCMGVYQmxJSHRUZEhKcGJtZDlYRzRnSUNBZ0lDb3ZYRzRnSUNBZ1kyOXVjM1FnVkZsUVJWOUVSVUpWUnlBOUlDZEVSVUpWUnljN1hHNWNiaUFnSUNBdktpcGNiaUFnSUNBZ0tpQkFkSGx3WlNCN1UzUnlhVzVuZlZ4dUlDQWdJQ0FxTDF4dUlDQWdJR052Ym5OMElGUlpVRVZmU1U1R1R5QTlJQ2RKVGtaUEp6dGNibHh1SUNBZ0lDOHFLbHh1SUNBZ0lDQXFJRUIwZVhCbElIdFRkSEpwYm1kOVhHNGdJQ0FnSUNvdlhHNGdJQ0FnWTI5dWMzUWdWRmxRUlY5TVQwY2dQU0FuVEU5SEp6dGNibHh1SUNBZ0lDOHFLbHh1SUNBZ0lDQXFJRUIwZVhCbElIdFRkSEpwYm1kOVhHNGdJQ0FnSUNvdlhHNGdJQ0FnWTI5dWMzUWdWRmxRUlY5WFFWSk9JRDBnSjFkQlVrNG5PMXh1WEc0Z0lDQWdMeW9xWEc0Z0lDQWdJQ29nUUhSNWNHVWdlMU4wY21sdVozMWNiaUFnSUNBZ0tpOWNiaUFnSUNCamIyNXpkQ0JVV1ZCRlgwVlNVazlTSUQwZ0owVlNVazlTSnp0Y2JseHVJQ0FnSUM4cUtseHVJQ0FnSUNBcUlFQjBlWEJsSUh0VGRISnBibWQ5WEc0Z0lDQWdJQ292WEc0Z0lDQWdZMjl1YzNRZ1ZGbFFSVjlCVEVWU1ZDQTlJQ2RCVEVWU1ZDYzdYRzVjYmlBZ0lDQXZLaXBjYmlBZ0lDQWdLaUJBZEhsd1pTQjdVM1J5YVc1bmZWeHVJQ0FnSUNBcUwxeHVJQ0FnSUdOdmJuTjBJRlJaVUVWZlRVOUNTVXhGSUQwZ0owMVBRa2xNUlNjN1hHNWNiaUFnSUNBdktpcGNiaUFnSUNBZ0tpQkFkSGx3WlNCN1UzUnlhVzVuZlZ4dUlDQWdJQ0FxTDF4dUlDQWdJR052Ym5OMElGUlpVRVZmVTBsTVJVNVVJRDBnSjFOSlRFVk9WQ2M3WEc1Y2JpQWdJQ0F2S2lwY2JpQWdJQ0FnS2lCQmJHd2djRzl6YzJsaWJHVWdaR1ZpZFdjZ2JHVjJaV3h6SUdsdUlIUm9aU0J2Y21SbGNpQnZaaUJwYlhCdmNuUmhibU5sTGx4dUlDQWdJQ0FxWEc0Z0lDQWdJQ29nUUhSNWNHVWdlMU4wY21sdVoxdGRmVnh1SUNBZ0lDQXFMMXh1SUNBZ0lHTnZibk4wSUd4bGRtVnNjeUE5SUZ0Y2JpQWdJQ0FnSUNBZ1ZGbFFSVjlFUlVKVlJ5eGNiaUFnSUNBZ0lDQWdWRmxRUlY5SlRrWlBMRnh1SUNBZ0lDQWdJQ0JVV1ZCRlgweFBSeXhjYmlBZ0lDQWdJQ0FnVkZsUVJWOVhRVkpPTEZ4dUlDQWdJQ0FnSUNCVVdWQkZYMFZTVWs5U0xGeHVJQ0FnSUNBZ0lDQlVXVkJGWDBGTVJWSlVMRnh1SUNBZ0lDQWdJQ0JVV1ZCRlgwMVBRa2xNUlN4Y2JpQWdJQ0FnSUNBZ1ZGbFFSVjlUU1V4RlRsUmNiaUFnSUNCZE8xeHVYRzRnSUNBZ0x5OGdMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRYRzRnSUNBZ0x5OGdSbFZPUTFSSlQwNVRYRzRnSUNBZ0x5OGdMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRYRzVjYmlBZ0lDQXZLaXBjYmlBZ0lDQWdLaUJUWlhRZ1JtRjJhV052YmlCMGJ5QkZjbkp2Y2lCVGRHRjBaUzVjYmlBZ0lDQWdLbHh1SUNBZ0lDQXFJRlJvYVhNZ2JXVjBhRzlrSUhkcGJHd2diMjVzZVNCM2IzSnJJR2xtSUR4allXNTJZWE0rSUdseklITjFjSEJ2Y25SbFpDQm1jbTl0SUhSb1pTQmljbTkzYzJWeUxseHVJQ0FnSUNBcVhHNGdJQ0FnSUNvZ1FIQnlhWFpoZEdWY2JpQWdJQ0FnS2k5Y2JpQWdJQ0JtZFc1amRHbHZiaUJmYzJWMFJtRjJhV052YmxSdlJYSnliM0pUZEdGMFpTZ3BJSHRjYmlBZ0lDQWdJQ0FnWTI5dWMzUWdZMkZ1ZG1GeklEMGdaRzlqZFcxbGJuUXVZM0psWVhSbFJXeGxiV1Z1ZENnblkyRnVkbUZ6SnlrN1hHNGdJQ0FnSUNBZ0lHTnZibk4wSUdaaGRtbGpiMjRnUFNCa2IyTjFiV1Z1ZEM1eGRXVnllVk5sYkdWamRHOXlLQ2RiY21Wc1BWd2ljMmh2Y25SamRYUWdhV052Ymx3aVhTY3BPMXh1WEc0Z0lDQWdJQ0FnSUdsbUlDaGpZVzUyWVhNdVoyVjBRMjl1ZEdWNGRDQW1KaUFoWm1GMmFXTnZiaTVqYkdGemMwNWhiV1V1YVc1amJIVmtaWE1vSjJWeWNtOXlMWE4wWVhSbEp5a3BJSHRjYmlBZ0lDQWdJQ0FnSUNBZ0lHTnZibk4wSUdsdFp5QTlJR1J2WTNWdFpXNTBMbU55WldGMFpVVnNaVzFsYm5Rb0oybHRaeWNwTzF4dUlDQWdJQ0FnSUNBZ0lDQWdZMkZ1ZG1GekxtaGxhV2RvZENBOUlHTmhiblpoY3k1M2FXUjBhQ0E5SURFMk8xeHVJQ0FnSUNBZ0lDQWdJQ0FnWTI5dWMzUWdZM1I0SUQwZ1kyRnVkbUZ6TG1kbGRFTnZiblJsZUhRb0p6SmtKeWs3WEc0Z0lDQWdJQ0FnSUNBZ0lDQnBiV2N1YjI1c2IyRmtJRDBnWm5WdVkzUnBiMjRnS0NrZ2V5QXZMeUJEYjI1MGFXNTFaU0J2Ym1ObElIUm9aU0JwYldGblpTQm9ZWE1nWW1WbGJpQnNiMkZrWldRdUlGeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHTjBlQzVrY21GM1NXMWhaMlVvZEdocGN5d2dNQ3dnTUNrN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ1kzUjRMbWRzYjJKaGJFRnNjR2hoSUQwZ01DNDJOVHRjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JqZEhndVptbHNiRk4wZVd4bElEMGdKeU5HUmpBd01EQW5PMXh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR04wZUM1eVpXTjBLREFzSURBc0lERTJMQ0F4TmlrN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ1kzUjRMbVpwYkd3b0tUdGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQm1ZWFpwWTI5dUxtaHlaV1lnUFNCallXNTJZWE11ZEc5RVlYUmhWVkpNS0NkcGJXRm5aUzl3Ym1jbktUdGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQm1ZWFpwWTI5dUxtTnNZWE56VG1GdFpTQXJQU0FuWlhKeWIzSXRjM1JoZEdVbk8xeHVJQ0FnSUNBZ0lDQWdJQ0FnZlR0Y2JpQWdJQ0FnSUNBZ0lDQWdJR2x0Wnk1emNtTWdQU0JtWVhacFkyOXVMbWh5WldZN1hHNGdJQ0FnSUNBZ0lIMWNiaUFnSUNCOVhHNWNiaUFnSUNBdktpcGNiaUFnSUNBZ0tpQkZjbkp2Y2lCb1lXNWtiR1Z5SUhSb1lYUWdabVYwWTJobGN5QmhiR3dnWlhoalpYQjBhVzl1Y3lCMGFISnZkMjRnWW5rZ2RHaGxJR3BoZG1GelkzSnBjSFF1WEc0Z0lDQWdJQ3BjYmlBZ0lDQWdLaUJBY0hKcGRtRjBaVnh1SUNBZ0lDQXFMMXh1SUNBZ0lHWjFibU4wYVc5dUlGOW5iRzlpWVd4RmNuSnZja2hoYm1Sc1pYSW9LU0I3WEc0Z0lDQWdJQ0FnSUdsbUlDaHFjMlV1WTI5eVpTNWpiMjVtYVdjdVoyVjBLQ2RsYm5acGNtOXViV1Z1ZENjcElDRTlQU0FuY0hKdlpIVmpkR2x2YmljcElIdGNiaUFnSUNBZ0lDQWdJQ0FnSUM4dklFeHZaeUIwYUdVZ1pYSnliM0lnYVc0Z2RHaGxJR0p5YjNkelpYSW5jeUJqYjI1emIyeGxMaUJjYmlBZ0lDQWdJQ0FnSUNBZ0lHbG1JQ2hxYzJVdVkyOXlaUzVrWldKMVp5QWhQVDBnZFc1a1pXWnBibVZrS1NCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2FuTmxMbU52Y21VdVpHVmlkV2N1WlhKeWIzSW9KMHBUSUVWdVoybHVaU0JGY25KdmNpQklZVzVrYkdWeUp5d2dZWEpuZFcxbGJuUnpLVHRjYmlBZ0lDQWdJQ0FnSUNBZ0lIMGdaV3h6WlNCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ1kyOXVjMjlzWlM1c2IyY29KMHBUSUVWdVoybHVaU0JGY25KdmNpQklZVzVrYkdWeUp5d2dZWEpuZFcxbGJuUnpLVHRjYmlBZ0lDQWdJQ0FnSUNBZ0lIMWNibHh1SUNBZ0lDQWdJQ0FnSUNBZ0x5OGdWWEJrWVhSbElIUm9aU0J3WVdkbElIUnBkR3hsSUhkcGRHZ2dZVzRnWlhKeWIzSWdZMjkxYm5RdVhHNGdJQ0FnSUNBZ0lDQWdJQ0JqYjI1emRDQnlaV2RsZUNBOUlDOHVYRndnWEZ4YktDNHJLVnhjWFZ4Y0lDODdYRzRnSUNBZ0lDQWdJQ0FnSUNCc1pYUWdkR2wwYkdVZ1BTQjNhVzVrYjNjdVpHOWpkVzFsYm5RdWRHbDBiR1U3WEc0Z0lDQWdJQ0FnSUNBZ0lDQnNaWFFnWlhKeWIzSkRiM1Z1ZENBOUlERTdYRzVjYmlBZ0lDQWdJQ0FnSUNBZ0lDOHZJRWRsZEhNZ2RHaGxJR04xY25KbGJuUWdaWEp5YjNJZ1kyOTFiblFnWVc1a0lISmxZM0psWVhSbGN5QjBhR1VnWkdWbVlYVnNkQ0IwYVhSc1pTQnZaaUIwYUdVZ2NHRm5aUzVjYmlBZ0lDQWdJQ0FnSUNBZ0lHbG1JQ2gwYVhSc1pTNXRZWFJqYUNoeVpXZGxlQ2tnSVQwOUlHNTFiR3dwSUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCbGNuSnZja052ZFc1MElEMGdjR0Z5YzJWSmJuUW9kR2wwYkdVdWJXRjBZMmdvTDF4Y1pDc3ZLVnN3WFN3Z01UQXBJQ3NnTVR0Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCMGFYUnNaU0E5SUhScGRHeGxMbkpsY0d4aFkyVW9jbVZuWlhnc0lDY25LVHRjYmlBZ0lDQWdJQ0FnSUNBZ0lIMWNibHh1SUNBZ0lDQWdJQ0FnSUNBZ0x5OGdVbVV0WTNKbFlYUmxjeUIwYUdVZ1pYSnliM0lnWm14aFp5QmhkQ0IwYUdVZ2RHbDBiR1VnZDJsMGFDQjBhR1VnYm1WM0lHVnljbTl5SUdOdmRXNTBMbHh1SUNBZ0lDQWdJQ0FnSUNBZ2RHbDBiR1VnUFNBbjRweVdJRnNuSUNzZ1pYSnliM0pEYjNWdWRDQXJJQ2RkSUNjZ0t5QjBhWFJzWlR0Y2JpQWdJQ0FnSUNBZ0lDQWdJSGRwYm1SdmR5NWtiMk4xYldWdWRDNTBhWFJzWlNBOUlIUnBkR3hsTzF4dVhHNGdJQ0FnSUNBZ0lDQWdJQ0F2THlCVFpYUWdSbUYyYVdOdmJpQjBieUJGY25KdmNpQlRkR0YwWlM1Y2JpQWdJQ0FnSUNBZ0lDQWdJRjl6WlhSR1lYWnBZMjl1Vkc5RmNuSnZjbE4wWVhSbEtDazdYRzRnSUNBZ0lDQWdJSDFjYmx4dUlDQWdJQ0FnSUNCeVpYUjFjbTRnZEhKMVpUdGNiaUFnSUNCOVhHNWNiaUFnSUNBdktpcGNiaUFnSUNBZ0tpQkZlR1ZqZFhSbGN5QjBhR1VnWTI5eWNtVmpkQ0JqYjI1emIyeGxMMkZzWlhKMElITjBZWFJsYldWdWRDNWNiaUFnSUNBZ0tseHVJQ0FnSUNBcUlFQndZWEpoYlNCN1QySnFaV04wZlNCallXeHNaWElnS0c5d2RHbHZibUZzS1NCRGIyNTBZV2x1Y3lCMGFHVWdZMkZzYkdWeUlHbHVabTl5YldGMGFXOXVJSFJ2SUdKbElHUnBjM0JzWVhsbFpDNWNiaUFnSUNBZ0tpQkFjR0Z5WVcwZ2UwOWlhbVZqZEgwZ1pHRjBZU0FvYjNCMGFXOXVZV3dwSUVOdmJuUmhhVzV6SUdGdWVTQmhaR1JwZEdsdmJtRnNJR1JoZEdFZ2RHOGdZbVVnYVc1amJIVmtaV1FnYVc0Z2RHaGxJR1JsWW5WbklHOTFkSEIxZEM1Y2JpQWdJQ0FnS2x4dUlDQWdJQ0FxSUVCd2NtbDJZWFJsWEc0Z0lDQWdJQ292WEc0Z0lDQWdablZ1WTNScGIyNGdYMlY0WldOMWRHVW9ZMkZzYkdWeUxDQmtZWFJoS1NCN1hHNGdJQ0FnSUNBZ0lHTnZibk4wSUdOMWNuSmxiblJNYjJkSmJtUmxlQ0E5SUd4bGRtVnNjeTVwYm1SbGVFOW1LR05oYkd4bGNpazdYRzRnSUNBZ0lDQWdJR052Ym5OMElHRnNiRzkzWldSTWIyZEpibVJsZUNBOUlHeGxkbVZzY3k1cGJtUmxlRTltS0dwelpTNWpiM0psTG1OdmJtWnBaeTVuWlhRb0oyUmxZblZuSnlrcE8xeHVJQ0FnSUNBZ0lDQnNaWFFnWTI5dWMyOXNaVTFsZEdodlpDQTlJRzUxYkd3N1hHNWNiaUFnSUNBZ0lDQWdhV1lnS0dOMWNuSmxiblJNYjJkSmJtUmxlQ0ErUFNCaGJHeHZkMlZrVEc5blNXNWtaWGdwSUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJR052Ym5OdmJHVk5aWFJvYjJRZ1BTQmpZV3hzWlhJdWRHOU1iM2RsY2tOaGMyVW9LVHRjYmx4dUlDQWdJQ0FnSUNBZ0lDQWdjM2RwZEdOb0lDaGpiMjV6YjJ4bFRXVjBhRzlrS1NCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ1kyRnpaU0FuWVd4bGNuUW5PbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCaGJHVnlkQ2hLVTA5T0xuTjBjbWx1WjJsbWVTaGtZWFJoS1NrN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR0p5WldGck8xeHVYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdZMkZ6WlNBbmJXOWlhV3hsSnpwY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdZMjl1YzNRZ0pHMXZZbWxzWlVSbFluVm5UVzlrWVd3Z1BTQWtLQ2N1Ylc5aWFXeGxMV1JsWW5WbkxXMXZaR0ZzSnlrN1hHNWNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYVdZZ0tDRWtiVzlpYVd4bFJHVmlkV2ROYjJSaGJDNXNaVzVuZEdncElIdGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDUW9KenhrYVhZZ0x6NG5LVnh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM1aFpHUkRiR0Z6Y3lnbmJXOWlhV3hsTFdSbFluVm5MVzF2WkdGc0p5bGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F1WTNOektIdGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2NHOXphWFJwYjI0NklDZG1hWGhsWkNjc1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUhSdmNEb2dNQ3hjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdiR1ZtZERvZ01DeGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2JXRjRTR1ZwWjJoME9pQW5OVEFsSnl4Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYldsdVYybGtkR2c2SUNjeU1EQndlQ2NzWEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJRzFoZUZkcFpIUm9PaUFuTXpBd2NIZ25MRnh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQmlZV05yWjNKdmRXNWtRMjlzYjNJNklDZGpjbWx0YzI5dUp5eGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2VrbHVaR1Y0T2lBeE1EQXdNREFzWEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJRzkyWlhKbWJHOTNPaUFuYzJOeWIyeHNKMXh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUgwcFhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMbUZ3Y0dWdVpGUnZLQ1FvSjJKdlpIa25LU2s3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMWNibHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBa2JXOWlhV3hsUkdWaWRXZE5iMlJoYkM1aGNIQmxibVFvSnp4d1BpY2dLeUJLVTA5T0xuTjBjbWx1WjJsbWVTaGtZWFJoS1NBcklDYzhMM0ErSnlrN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR0p5WldGck8xeHVYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdaR1ZtWVhWc2REcGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYVdZZ0tHTnZibk52YkdVZ1BUMDlJSFZ1WkdWbWFXNWxaQ2tnZTF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnY21WMGRYSnVPeUF2THlCVWFHVnlaU0JwY3lCdWJ5QmpiMjV6YjJ4bElITjFjSEJ2Y25RZ2MyOGdaRzhnYm05MElIQnliMk5sWldRdVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSDFjYmx4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnBaaUFvZEhsd1pXOW1JR052Ym5OdmJHVmJZMjl1YzI5c1pVMWxkR2h2WkYwdVlYQndiSGtnUFQwOUlDZG1kVzVqZEdsdmJpY2dmSHdnZEhsd1pXOW1JR052Ym5OdmJHVXViRzluTG1Gd2NHeDVJRDA5UFNBblpuVnVZM1JwYjI0bktTQjdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnBaaUFvWTI5dWMyOXNaVnRqYjI1emIyeGxUV1YwYUc5a1hTQWhQVDBnZFc1a1pXWnBibVZrS1NCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdZMjl1YzI5c1pWdGpiMjV6YjJ4bFRXVjBhRzlrWFM1aGNIQnNlU2hqYjI1emIyeGxMQ0JrWVhSaEtUdGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMGdaV3h6WlNCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdZMjl1YzI5c1pTNXNiMmN1WVhCd2JIa29ZMjl1YzI5c1pTd2daR0YwWVNrN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCOVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSDBnWld4elpTQjdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQmpiMjV6YjJ4bExteHZaeWhrWVhSaEtUdGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlZ4dUlDQWdJQ0FnSUNBZ0lDQWdmVnh1SUNBZ0lDQWdJQ0I5WEc0Z0lDQWdmVnh1WEc0Z0lDQWdMeW9xWEc0Z0lDQWdJQ29nUW1sdVpDQkhiRzlpWVd3Z1JYSnliM0lnU0dGdVpHeGxjbHh1SUNBZ0lDQXFMMXh1SUNBZ0lHVjRjRzl5ZEhNdVltbHVaRWRzYjJKaGJFVnljbTl5U0dGdVpHeGxjaUE5SUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNBZ0lDQWdkMmx1Wkc5M0xtOXVaWEp5YjNJZ1BTQmZaMnh2WW1Gc1JYSnliM0pJWVc1a2JHVnlPMXh1SUNBZ0lIMDdYRzVjYmlBZ0lDQXZLaXBjYmlBZ0lDQWdLaUJTWlhCc1lXTmxjeUJqYjI1emIyeGxMbVJsWW5WblhHNGdJQ0FnSUNwY2JpQWdJQ0FnS2lCQWNHRnlZVzF6SUhzcWZTQmhjbWQxYldWdWRITWdRVzU1SUdSaGRHRWdkR2hoZENCemFHOTFiR1FnWW1VZ2MyaHZkMjRnYVc0Z2RHaGxJR052Ym5OdmJHVWdjM1JoZEdWdFpXNTBMbHh1SUNBZ0lDQXFMMXh1SUNBZ0lHVjRjRzl5ZEhNdVpHVmlkV2NnUFNCbWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ0lDQWdJRjlsZUdWamRYUmxLRlJaVUVWZlJFVkNWVWNzSUdGeVozVnRaVzUwY3lrN1hHNGdJQ0FnZlR0Y2JseHVJQ0FnSUM4cUtseHVJQ0FnSUNBcUlGSmxjR3hoWTJWeklHTnZibk52YkdVdWFXNW1iMXh1SUNBZ0lDQXFYRzRnSUNBZ0lDb2dRSEJoY21GdGN5QjdLbjBnWVhKbmRXMWxiblJ6SUVGdWVTQmtZWFJoSUhSb1lYUWdjMmh2ZFd4a0lHSmxJSE5vYjNkdUlHbHVJSFJvWlNCamIyNXpiMnhsSUhOMFlYUmxiV1Z1ZEM1Y2JpQWdJQ0FnS2k5Y2JpQWdJQ0JsZUhCdmNuUnpMbWx1Wm04Z1BTQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdJQ0FnSUY5bGVHVmpkWFJsS0ZSWlVFVmZTVTVHVHl3Z1lYSm5kVzFsYm5SektUdGNiaUFnSUNCOU8xeHVYRzRnSUNBZ0x5b3FYRzRnSUNBZ0lDb2dVbVZ3YkdGalpYTWdZMjl1YzI5c1pTNXNiMmRjYmlBZ0lDQWdLbHh1SUNBZ0lDQXFJRUJ3WVhKaGJYTWdleXA5SUdGeVozVnRaVzUwY3lCQmJua2daR0YwWVNCMGFHRjBJSE5vYjNWc1pDQmlaU0J6YUc5M2JpQnBiaUIwYUdVZ1kyOXVjMjlzWlNCemRHRjBaVzFsYm5RdVhHNGdJQ0FnSUNvdlhHNGdJQ0FnWlhod2IzSjBjeTVzYjJjZ1BTQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdJQ0FnSUY5bGVHVmpkWFJsS0ZSWlVFVmZURTlITENCaGNtZDFiV1Z1ZEhNcE8xeHVJQ0FnSUgwN1hHNWNiaUFnSUNBdktpcGNiaUFnSUNBZ0tpQlNaWEJzWVdObGN5QmpiMjV6YjJ4bExuZGhjbTVjYmlBZ0lDQWdLbHh1SUNBZ0lDQXFJRUJ3WVhKaGJYTWdleXA5SUdGeVozVnRaVzUwY3lCQmJua2daR0YwWVNCMGFHRjBJSE5vYjNWc1pDQmlaU0J6YUc5M2JpQnBiaUIwYUdVZ1kyOXVjMjlzWlNCemRHRjBaVzFsYm5RdVhHNGdJQ0FnSUNvdlhHNGdJQ0FnWlhod2IzSjBjeTUzWVhKdUlEMGdablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJQ0FnSUNCZlpYaGxZM1YwWlNoVVdWQkZYMWRCVWs0c0lHRnlaM1Z0Wlc1MGN5azdYRzRnSUNBZ2ZUdGNibHh1SUNBZ0lDOHFLbHh1SUNBZ0lDQXFJRkpsY0d4aFkyVnpJR052Ym5OdmJHVXVaWEp5YjNKY2JpQWdJQ0FnS2x4dUlDQWdJQ0FxSUVCd1lYSmhiU0I3S24wZ1lYSm5kVzFsYm5SeklFRnVlU0JrWVhSaElIUm9ZWFFnYzJodmRXeGtJR0psSUhOb2IzZHVJR2x1SUhSb1pTQmpiMjV6YjJ4bElITjBZWFJsYldWdWRDNWNiaUFnSUNBZ0tpOWNiaUFnSUNCbGVIQnZjblJ6TG1WeWNtOXlJRDBnWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUNBZ0lDQmZaWGhsWTNWMFpTaFVXVkJGWDBWU1VrOVNMQ0JoY21kMWJXVnVkSE1wTzF4dUlDQWdJSDA3WEc1Y2JpQWdJQ0F2S2lwY2JpQWdJQ0FnS2lCU1pYQnNZV05sY3lCaGJHVnlkRnh1SUNBZ0lDQXFYRzRnSUNBZ0lDb2dRSEJoY21GdElIc3FmU0JoY21kMWJXVnVkSE1nUVc1NUlHUmhkR0VnZEdoaGRDQnphRzkxYkdRZ1ltVWdjMmh2ZDI0Z2FXNGdkR2hsSUdOdmJuTnZiR1VnYzNSaGRHVnRaVzUwTGx4dUlDQWdJQ0FxTDF4dUlDQWdJR1Y0Y0c5eWRITXVZV3hsY25RZ1BTQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdJQ0FnSUY5bGVHVmpkWFJsS0ZSWlVFVmZRVXhGVWxRc0lHRnlaM1Z0Wlc1MGN5azdYRzRnSUNBZ2ZUdGNibHh1SUNBZ0lDOHFLbHh1SUNBZ0lDQXFJRVJsWW5WbklHbHVabThnWm05eUlHMXZZbWxzWlNCa1pYWnBZMlZ6TGx4dUlDQWdJQ0FxWEc0Z0lDQWdJQ29nUUhCaGNtRnRJSHNxZlNCaGNtZDFiV1Z1ZEhNZ1FXNTVJR1JoZEdFZ2RHaGhkQ0J6YUc5MWJHUWdZbVVnYzJodmQyNGdhVzRnZEdobElHTnZibk52YkdVZ2MzUmhkR1Z0Wlc1MExseHVJQ0FnSUNBcUwxeHVJQ0FnSUdWNGNHOXlkSE11Ylc5aWFXeGxJRDBnWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUNBZ0lDQmZaWGhsWTNWMFpTaFVXVkJGWDAxUFFrbE1SU3dnWVhKbmRXMWxiblJ6S1R0Y2JpQWdJQ0I5TzF4dVhHNTlLR3B6WlM1amIzSmxMbVJsWW5WbktTazdYRzRpTENJdktpQXRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExWeHVJR1Z1WjJsdVpTNXFjeUF5TURFMkxUQTVMVEE0WEc0Z1IyRnRZbWx2SUVkdFlraGNiaUJvZEhSd09pOHZkM2QzTG1kaGJXSnBieTVrWlZ4dUlFTnZjSGx5YVdkb2RDQW9ZeWtnTWpBeE5pQkhZVzFpYVc4Z1IyMWlTRnh1SUZKbGJHVmhjMlZrSUhWdVpHVnlJSFJvWlNCSFRsVWdSMlZ1WlhKaGJDQlFkV0pzYVdNZ1RHbGpaVzV6WlNBb1ZtVnljMmx2YmlBeUtWeHVJRnRvZEhSd09pOHZkM2QzTG1kdWRTNXZjbWN2YkdsalpXNXpaWE12WjNCc0xUSXVNQzVvZEcxc1hWeHVJQzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRYRzRnS2k5Y2JseHVhbk5sTG1OdmNtVXVaVzVuYVc1bElEMGdhbk5sTG1OdmNtVXVaVzVuYVc1bElIeDhJSHQ5TzF4dVhHNHZLaXBjYmlBcUlFcFRSU0JEYjNKbElFMXZaSFZzWlZ4dUlDcGNiaUFxSUZSb2FYTWdiMkpxWldOMElIZHBiR3dnYVc1cGRHbGhiR2w2WlNCMGFHVWdjR0ZuWlNCdVlXMWxjM0JoWTJWeklHRnVaQ0JqYjJ4c1pXTjBhVzl1Y3k1Y2JpQXFYRzRnS2lCQWJXOWtkV3hsSUVwVFJTOURiM0psTDJWdVoybHVaVnh1SUNvdlhHNG9ablZ1WTNScGIyNGdLR1Y0Y0c5eWRITXBJSHRjYmx4dUlDQWdJQ2QxYzJVZ2MzUnlhV04wSnp0Y2JseHVJQ0FnSUM4dklDMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExWeHVJQ0FnSUM4dklGQlNTVlpCVkVVZ1JsVk9RMVJKVDA1VFhHNGdJQ0FnTHk4Z0xTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdFhHNWNiaUFnSUNBdktpcGNiaUFnSUNBZ0tpQkpibWwwYVdGc2FYcGxJSFJvWlNCd1lXZGxJRzVoYldWemNHRmpaWE11WEc0Z0lDQWdJQ3BjYmlBZ0lDQWdLaUJVYUdseklHMWxkR2h2WkNCM2FXeHNJSE5sWVhKamFDQjBhR1VnY0dGblpTQklWRTFNSUdadmNpQmhkbUZwYkdGaWJHVWdibUZ0WlhOd1lXTmxjeTVjYmlBZ0lDQWdLbHh1SUNBZ0lDQXFJRUJ3WVhKaGJTQjdRWEp5WVhsOUlHTnZiR3hsWTNScGIyNXpJRU52Ym5SaGFXNXpJSFJvWlNCdGIyUjFiR1VnWTI5c2JHVmpkR2x2YmlCcGJuTjBZVzVqWlhNZ2RHOGdZbVVnYVc1amJIVmtaV1FnYVc0Z2RHaGxJRzVoYldWemNHRmpaWE11WEc0Z0lDQWdJQ3BjYmlBZ0lDQWdLaUJBY21WMGRYSnVJSHRCY25KaGVYMGdVbVYwZFhKdWN5QmhiaUJoY25KaGVTQjNhWFJvSUhSb1pTQndZV2RsSUc1aGJXVnpjR0ZqWlNCdVlXMWxjeTVjYmlBZ0lDQWdLbHh1SUNBZ0lDQXFJRUJ3Y21sMllYUmxYRzRnSUNBZ0lDb3ZYRzRnSUNBZ1puVnVZM1JwYjI0Z1gybHVhWFJPWVcxbGMzQmhZMlZ6S0dOdmJHeGxZM1JwYjI1ektTQjdYRzRnSUNBZ0lDQWdJR3hsZENCd1lXZGxUbUZ0WlhOd1lXTmxUbUZ0WlhNZ1BTQmJYVHRjYmx4dUlDQWdJQ0FnSUNBdkx5QlZjMlVnZEdobElHTjFjM1J2YlNCd2MyVjFaRzhnYzJWc1pXTjBiM0lnWkdWbWFXNWxaQ0JoZENCbGVIUmxibVF1YW5NZ2FXNGdiM0prWlhJZ2RHOGdabVYwWTJnZ2RHaGxJR0YyWVdsc1lXSnNaU0J1WVcxbGMzQmhZMlZ6TGx4dUlDQWdJQ0FnSUNCc1pYUWdibTlrWlhNZ1BTQkJjbkpoZVM1bWNtOXRLR1J2WTNWdFpXNTBMbWRsZEVWc1pXMWxiblJ6UW5sVVlXZE9ZVzFsS0NjcUp5a3BMRnh1SUNBZ0lDQWdJQ0FnSUNBZ2NtVm5aWGdnUFNBdlpHRjBZUzBvTGlvcExXNWhiV1Z6Y0dGalpTODdYRzVjYmlBZ0lDQWdJQ0FnWm05eUlDaHNaWFFnYm05a1pTQnZaaUJ1YjJSbGN5a2dlMXh1SUNBZ0lDQWdJQ0FnSUNBZ1ptOXlJQ2hzWlhRZ1lYUjBjbWxpZFhSbElHOW1JRUZ5Y21GNUxtWnliMjBvYm05a1pTNWhkSFJ5YVdKMWRHVnpLU2tnZTF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdsbUlDaGhkSFJ5YVdKMWRHVXVibUZ0WlM1elpXRnlZMmdvY21WblpYZ3BJQ0U5UFNBdE1Ta2dlMXh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBdkx5QlFZWEp6WlNCMGFHVWdibUZ0WlhOd1lXTmxJRzVoYldVZ1lXNWtJSE52ZFhKalpTQlZVa3d1WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHeGxkQ0J1WVcxbElEMGdZWFIwY21saWRYUmxMbTVoYldVdWNtVndiR0ZqWlNoeVpXZGxlQ3dnSnlReEp5a3NYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnpiM1Z5WTJVZ1BTQmhkSFJ5YVdKMWRHVXVkbUZzZFdVN1hHNWNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z1EyaGxZMnNnYVdZZ2RHaGxJRzVoYldWemNHRmpaU0JwY3lCaGJISmxZV1I1SUdSbFptbHVaV1F1WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHbG1JQ2h3WVdkbFRtRnRaWE53WVdObFRtRnRaWE11YVc1a1pYaFBaaWh1WVcxbEtTQStJQzB4S1NCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCcFppQW9kMmx1Wkc5M1cyNWhiV1ZkTG5OdmRYSmpaU0FoUFQwZ2MyOTFjbU5sS1NCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdhbk5sTG1OdmNtVXVaR1ZpZFdjdVpYSnliM0lvWUVWc1pXMWxiblFnZDJsMGFDQjBhR1VnWkhWd2JHbGpZWFJsSUc1aGJXVnpjR0ZqWlNCdVlXMWxPaUFrZTI1dlpHVjlZQ2s3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2RHaHliM2NnYm1WM0lFVnljbTl5S0dCVWFHVWdibUZ0WlhOd1lXTmxJRndpSkh0dVlXMWxmVndpSUdseklHRnNjbVZoWkhrZ1pHVm1hVzVsWkM0Z1VHeGxZWE5sSUhObGJHVmpkQ0JoYm05MGFHVnlJR0FnSzF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JnYm1GdFpTQm1iM0lnZVc5MWNpQnVZVzFsYzNCaFkyVXVZQ2s3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JqYjI1MGFXNTFaVHNnTHk4Z1ZHaGxJRzVoYldWemNHRmpaU0JwY3lCaGJISmxZV1I1SUdSbFptbHVaV1FzSUdOdmJuUnBiblZsSUd4dmIzQXVYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUgxY2JseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JwWmlBb2MyOTFjbU5sSUQwOVBTQW5KeWtnZTF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZEdoeWIzY2dibVYzSUZONWJuUmhlRVZ5Y205eUtHQk9ZVzFsYzNCaFkyVWdjMjkxY21ObElHbHpJR1Z0Y0hSNU9pQWtlMjVoYldWOVlDazdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUgxY2JseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCRGNtVmhkR1VnWVNCdVpYY2dibUZ0WlhOd1lXTmxjeUJwYm5OMFlXNWpaU0JwYmlCMGFHVWdaMnh2WW1Gc0lITmpiM0JsSUNoMGFHVWdaMnh2WW1Gc0lITmpiM0JsSUdseklIVnpaV1FnWm05eUlGeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCbVlXeHNZbUZqYXlCemRYQndiM0owSUc5bUlHOXNaQ0J0YjJSMWJHVWdaR1ZtYVc1cGRHbHZibk1wTGx4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnBaaUFvYm1GdFpTQTlQVDBnSjJwelpTY3BJSHNnTHk4Z1RXOWthV1o1SUhSb1pTQmxibWRwYm1VZ2IySnFaV04wSUhkcGRHZ2dUbUZ0WlhOd1lXTmxJR0YwZEhKcFluVjBaWE11WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JmWTI5dWRtVnlkRVZ1WjJsdVpWUnZUbUZ0WlhOd1lXTmxLSE52ZFhKalpTd2dZMjlzYkdWamRHbHZibk1wTzF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjlJR1ZzYzJVZ2UxeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2QybHVaRzkzVzI1aGJXVmRJRDBnYm1WM0lHcHpaUzVqYjI1emRISjFZM1J2Y25NdVRtRnRaWE53WVdObEtHNWhiV1VzSUhOdmRYSmpaU3dnWTI5c2JHVmpkR2x2Ym5NcE8xeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I5WEc1Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdjR0ZuWlU1aGJXVnpjR0ZqWlU1aGJXVnpMbkIxYzJnb2JtRnRaU2s3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHNXZaR1V1Y21WdGIzWmxRWFIwY21saWRYUmxLR0YwZEhKcFluVjBaUzV1WVcxbEtUdGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjlYRzRnSUNBZ0lDQWdJQ0FnSUNCOVhHNGdJQ0FnSUNBZ0lIMWNibHh1SUNBZ0lDQWdJQ0F2THlCVWFISnZkeUJoYmlCbGNuSnZjaUJwWmlCdWJ5QnVZVzFsYzNCaFkyVnpJSGRsY21VZ1ptOTFibVF1WEc0Z0lDQWdJQ0FnSUdsbUlDaHdZV2RsVG1GdFpYTndZV05sVG1GdFpYTXViR1Z1WjNSb0lEMDlQU0F3S1NCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0IwYUhKdmR5QnVaWGNnUlhKeWIzSW9KMDV2SUcxdlpIVnNaU0J1WVcxbGMzQmhZMlZ6SUhkbGNtVWdabTkxYm1Rc0lIZHBkR2h2ZFhRZ2JtRnRaWE53WVdObGN5QnBkQ0JwY3lCdWIzUWdjRzl6YzJsaWJHVWdkRzhnSnlBclhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0oyeHZZV1FnWVc1NUlHMXZaSFZzWlhNdUp5azdYRzRnSUNBZ0lDQWdJSDFjYmx4dUlDQWdJQ0FnSUNBdkx5QkpibWwwYVdGc2FYcGxJSFJvWlNCdVlXMWxjM0JoWTJVZ2FXNXpkR0Z1WTJWekxseHVJQ0FnSUNBZ0lDQnNaWFFnWkdWbVpYSnlaV1JEYjJ4c1pXTjBhVzl1SUQwZ1cxMDdYRzVjYmlBZ0lDQWdJQ0FnWm05eUlDaHNaWFFnYm1GdFpTQnZaaUJ3WVdkbFRtRnRaWE53WVdObFRtRnRaWE1wSUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJR3hsZENCa1pXWmxjbkpsWkNBOUlDUXVSR1ZtWlhKeVpXUW9LVHRjYmx4dUlDQWdJQ0FnSUNBZ0lDQWdaR1ZtWlhKeVpXUkRiMnhzWldOMGFXOXVMbkIxYzJnb1pHVm1aWEp5WldRcE8xeHVYRzRnSUNBZ0lDQWdJQ0FnSUNCM2FXNWtiM2RiYm1GdFpWMWNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQXVhVzVwZENncFhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0xtUnZibVVvWkdWbVpYSnlaV1F1Y21WemIyeDJaU2xjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F1Wm1GcGJDaGtaV1psY25KbFpDNXlaV3BsWTNRcFhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0xtRnNkMkY1Y3lnb0tTQTlQaUJxYzJVdVkyOXlaUzVrWldKMVp5NXBibVp2S0NkT1lXMWxjM0JoWTJVZ2NISnZiV2x6WlhNZ2QyVnlaU0J5WlhOdmJIWmxaRG9nSnl3Z2JtRnRaU2twTzF4dUlDQWdJQ0FnSUNCOVhHNWNiaUFnSUNBZ0lDQWdMeThnVkhKcFoyZGxjaUJoYmlCbGRtVnVkQ0JoWm5SbGNpQjBhR1VnWlc1bmFXNWxJR2hoY3lCcGJtbDBhV0ZzYVhwbFpDQmhiR3dnYm1WM0lHMXZaSFZzWlhNdVhHNGdJQ0FnSUNBZ0lDUXVkMmhsYmk1aGNIQnNlU2gxYm1SbFptbHVaV1FzSUdSbFptVnljbVZrUTI5c2JHVmpkR2x2YmlrdVlXeDNZWGx6S0daMWJtTjBhVzl1SUNncElIdGNiaUFnSUNBZ0lDQWdJQ0FnSUd4bGRDQmxkbVZ1ZENBOUlHUnZZM1Z0Wlc1MExtTnlaV0YwWlVWMlpXNTBLQ2RGZG1WdWRDY3BPMXh1SUNBZ0lDQWdJQ0FnSUNBZ1pYWmxiblF1YVc1cGRFVjJaVzUwS0NkS1UwVk9SMGxPUlY5SlRrbFVYMFpKVGtsVFNFVkVKeXdnZEhKMVpTd2dkSEoxWlNrN1hHNGdJQ0FnSUNBZ0lDQWdJQ0JrYjJOMWJXVnVkQzV4ZFdWeWVWTmxiR1ZqZEc5eUtDZGliMlI1SnlrdVpHbHpjR0YwWTJoRmRtVnVkQ2hsZG1WdWRDazdYRzRnSUNBZ0lDQWdJQ0FnSUNCcWMyVXVZMjl5WlM1eVpXZHBjM1J5ZVM1elpYUW9KMnB6WlVWdVpGUnBiV1VuTENCdVpYY2dSR0YwWlNncExtZGxkRlJwYldVb0tTazdYRzRnSUNBZ0lDQWdJQ0FnSUNCcWMyVXVZMjl5WlM1a1pXSjFaeTVwYm1adktDZEtVeUJGYm1kcGJtVWdURzloWkdsdVp5QlVhVzFsT2lBbkxDQnFjMlV1WTI5eVpTNXlaV2RwYzNSeWVTNW5aWFFvSjJwelpVVnVaRlJwYldVbktWeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDMGdhbk5sTG1OdmNtVXVjbVZuYVhOMGNua3VaMlYwS0NkcWMyVlRkR0Z5ZEZScGJXVW5LU3dnSjIxekp5azdYRzRnSUNBZ0lDQWdJQ0FnSUNCcFppQW9kMmx1Wkc5M0xrTjVjSEpsYzNNcElIdGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjNhVzVrYjNjdWFuTmxVbVZoWkhrZ1BTQjBjblZsTzF4dUlDQWdJQ0FnSUNBZ0lDQWdmVnh1SUNBZ0lDQWdJQ0I5S1R0Y2JseHVJQ0FnSUNBZ0lDQnlaWFIxY200Z2NHRm5aVTVoYldWemNHRmpaVTVoYldWek8xeHVJQ0FnSUgxY2JseHVJQ0FnSUM4cUtseHVJQ0FnSUNBcUlFTnZiblpsY25RZ2RHaGxJRndpYW5ObFhDSWdiMkpxWldOMElIUnZJR0VnVG1GdFpYTndZV05sSUdOdmJYQmhkR2xpYkdVZ2IySnFaV04wTGx4dUlDQWdJQ0FxWEc0Z0lDQWdJQ29nU1c0Z2IzSmtaWElnZEc4Z2MzVndjRzl5ZENCMGFHVWdYQ0pxYzJWY0lpQnVZVzFsYzNCaFkyVWdibUZ0WlNCbWIzSWdkR2hsSUdOdmNtVWdiVzlrZFd4bGN5QndiR0ZqWldRZ2FXNGdkR2hsSUZ3aVNsTkZibWRwYm1WY0lseHVJQ0FnSUNBcUlHUnBjbVZqZEc5eWVTd2dkMlVnZDJsc2JDQnVaV1ZrSUhSdklHMXZaR2xtZVNCMGFHVWdZV3h5WldGa2VTQmxlR2x6ZEdsdVp5QmNJbXB6WlZ3aUlHOWlhbVZqZENCemJ5QjBhR0YwSUdsMElHTmhiaUJ2Y0dWeVlYUmxYRzRnSUNBZ0lDb2dZWE1nWVNCdVlXMWxjM0JoWTJVZ2QybDBhRzkxZENCc2IzTnBibWNnYVhSeklHbHVhWFJwWVd3Z1lYUjBjbWxpZFhSbGN5NWNiaUFnSUNBZ0tseHVJQ0FnSUNBcUlFQndZWEpoYlNCN1UzUnlhVzVuZlNCemIzVnlZMlVnVG1GdFpYTndZV05sSUhOdmRYSmpaU0J3WVhSb0lHWnZjaUIwYUdVZ2JXOWtkV3hsSUdacGJHVnpMbHh1SUNBZ0lDQXFJRUJ3WVhKaGJTQjdRWEp5WVhsOUlHTnZiR3hsWTNScGIyNXpJRU52Ym5SaGFXNGdhVzV6ZEdGdVkyVnpJSFJ2SUhSb1pTQndjbTkwYjNSNWNHVWdZMjlzYkdWamRHbHZiaUJwYm5OMFlXNWpaWE11WEc0Z0lDQWdJQ3BjYmlBZ0lDQWdLaUJBY0hKcGRtRjBaVnh1SUNBZ0lDQXFMMXh1SUNBZ0lHWjFibU4wYVc5dUlGOWpiMjUyWlhKMFJXNW5hVzVsVkc5T1lXMWxjM0JoWTJVb2MyOTFjbU5sTENCamIyeHNaV04wYVc5dWN5a2dlMXh1SUNBZ0lDQWdJQ0JzWlhRZ2RHMXdUbUZ0WlhOd1lXTmxJRDBnYm1WM0lHcHpaUzVqYjI1emRISjFZM1J2Y25NdVRtRnRaWE53WVdObEtDZHFjMlVuTENCemIzVnlZMlVzSUdOdmJHeGxZM1JwYjI1ektUdGNiaUFnSUNBZ0lDQWdhbk5sTG01aGJXVWdQU0IwYlhCT1lXMWxjM0JoWTJVdWJtRnRaVHRjYmlBZ0lDQWdJQ0FnYW5ObExuTnZkWEpqWlNBOUlIUnRjRTVoYldWemNHRmpaUzV6YjNWeVkyVTdYRzRnSUNBZ0lDQWdJR3B6WlM1amIyeHNaV04wYVc5dWN5QTlJSFJ0Y0U1aGJXVnpjR0ZqWlM1amIyeHNaV04wYVc5dWN6dGNiaUFnSUNBZ0lDQWdhbk5sTG1sdWFYUWdQU0JxYzJVdVkyOXVjM1J5ZFdOMGIzSnpMazVoYldWemNHRmpaUzV3Y205MGIzUjVjR1V1YVc1cGREdGNiaUFnSUNCOVhHNWNiaUFnSUNBdkx5QXRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMWNiaUFnSUNBdkx5QlFWVUpNU1VNZ1JsVk9RMVJKVDA1VFhHNGdJQ0FnTHk4Z0xTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdFhHNWNiaUFnSUNBdktpcGNiaUFnSUNBZ0tpQkpibWwwYVdGc2FYcGxJSFJvWlNCbGJtZHBibVV1WEc0Z0lDQWdJQ3BjYmlBZ0lDQWdLaUJBY0dGeVlXMGdlMEZ5Y21GNWZTQmpiMnhzWldOMGFXOXVjeUJEYjI1MFlXbHVjeUIwYUdVZ2MzVndjRzl5ZEdWa0lHMXZaSFZzWlNCamIyeHNaV04wYVc5dUlHUmhkR0V1WEc0Z0lDQWdJQ292WEc0Z0lDQWdaWGh3YjNKMGN5NXBibWwwSUQwZ1puVnVZM1JwYjI0Z0tHTnZiR3hsWTNScGIyNXpLU0I3WEc0Z0lDQWdJQ0FnSUM4dklFZHNiMkpoYkNCbGNuSnZjaUJvWVc1a2JHVnlJSFJvWVhRZ1pYaGxZM1YwWlhNZ2FXWWdZVzRnZFc1allYVm5hSFFnU2xNZ1pYSnliM0lnYjJOamRYSnpJRzl1SUhCaFoyVXVYRzRnSUNBZ0lDQWdJR3B6WlM1amIzSmxMbVJsWW5WbkxtSnBibVJIYkc5aVlXeEZjbkp2Y2toaGJtUnNaWElvS1R0Y2JseHVJQ0FnSUNBZ0lDQXZMeUJKYm1sMGFXRnNhWHBsSUhSb1pTQndZV2RsSUc1aGJXVnpjR0ZqWlhNdVhHNGdJQ0FnSUNBZ0lHeGxkQ0J3WVdkbFRtRnRaWE53WVdObFRtRnRaWE1nUFNCZmFXNXBkRTVoYldWemNHRmpaWE1vWTI5c2JHVmpkR2x2Ym5NcE8xeHVYRzRnSUNBZ0lDQWdJQzh2SUV4dlp5QjBhR1VnY0dGblpTQnVZVzFsYzNCaFkyVnpJQ2htYjNJZ1pHVmlkV2RuYVc1bklHOXViSGtwTGx4dUlDQWdJQ0FnSUNCcWMyVXVZMjl5WlM1a1pXSjFaeTVwYm1adktDZFFZV2RsSUU1aGJXVnpjR0ZqWlhNNklDY2dLeUJ3WVdkbFRtRnRaWE53WVdObFRtRnRaWE11YW05cGJpZ3BLVHRjYmx4dUlDQWdJQ0FnSUNBdkx5QlZjR1JoZEdVZ2RHaGxJR1Z1WjJsdVpTQnlaV2RwYzNSeWVTNWNiaUFnSUNBZ0lDQWdhbk5sTG1OdmNtVXVjbVZuYVhOMGNua3VjMlYwS0NkdVlXMWxjM0JoWTJWekp5d2djR0ZuWlU1aGJXVnpjR0ZqWlU1aGJXVnpLVHRjYmlBZ0lDQjlPMXh1WEc1OUtTaHFjMlV1WTI5eVpTNWxibWRwYm1VcE8xeHVJaXdpTHlvZ0xTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMxY2JpQmxlSFJsYm5OcGIyNXpMbXB6SURJd01UY3RNRE10TUROY2JpQkhZVzFpYVc4Z1IyMWlTRnh1SUdoMGRIQTZMeTkzZDNjdVoyRnRZbWx2TG1SbFhHNGdRMjl3ZVhKcFoyaDBJQ2hqS1NBeU1ERTNJRWRoYldKcGJ5QkhiV0pJWEc0Z1VtVnNaV0Z6WldRZ2RXNWtaWElnZEdobElFZE9WU0JIWlc1bGNtRnNJRkIxWW14cFl5Qk1hV05sYm5ObElDaFdaWEp6YVc5dUlESXBYRzRnVzJoMGRIQTZMeTkzZDNjdVoyNTFMbTl5Wnk5c2FXTmxibk5sY3k5bmNHd3RNaTR3TG1oMGJXeGRYRzRnTFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzFjYmlBcUwxeHVYRzR2S2lwY2JpQXFJRXBUUlNCRmVIUmxibk5wYjI1elhHNGdLbHh1SUNvZ1JYaDBaVzVrSUhSb1pTQmtaV1poZFd4MElHSmxhR0YyYVc5MWNpQnZaaUJsYm1kcGJtVWdZMjl0Y0c5dVpXNTBjeUJ2Y2lCbGVIUmxjbTVoYkNCd2JIVm5hVzV6SUdKbFptOXlaU0IwYUdWNUlHRnlaU0JzYjJGa1pXUXVYRzRnS2x4dUlDb2dRRzF2WkhWc1pTQktVMFV2UTI5eVpTOWxlSFJsYm1SY2JpQXFMMXh1S0daMWJtTjBhVzl1SUNncElIdGNibHh1SUNBZ0lDZDFjMlVnYzNSeWFXTjBKenRjYmx4dUlDQWdJQzh2SUMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFZ4dUlDQWdJQzh2SUZCQlVsTkZJRTFQUkZWTVJTQkVRVlJCSUVwUlZVVlNXU0JGV0ZSRlRsTkpUMDVjYmlBZ0lDQXZMeUF0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzFjYmx4dUlDQWdJQ1F1Wm00dVpYaDBaVzVrS0h0Y2JpQWdJQ0FnSUNBZ2NHRnljMlZOYjJSMWJHVkVZWFJoT2lCbWRXNWpkR2x2YmlBb2JXOWtkV3hsVG1GdFpTa2dlMXh1SUNBZ0lDQWdJQ0FnSUNBZ2FXWWdLQ0Z0YjJSMWJHVk9ZVzFsSUh4OElHMXZaSFZzWlU1aGJXVWdQVDA5SUNjbktTQjdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdkR2h5YjNjZ2JtVjNJRVZ5Y205eUtDZE5iMlIxYkdVZ2JtRnRaU0IzWVhNZ2JtOTBJSEJ5YjNacFpHVmtJR0Z6SUdGdUlHRnlaM1Z0Wlc1MExpY3BYRzRnSUNBZ0lDQWdJQ0FnSUNCOVhHNWNiaUFnSUNBZ0lDQWdJQ0FnSUdOdmJuTjBJR2x1YVhScFlXeEVZWFJoSUQwZ0pDaDBhR2x6S1M1a1lYUmhLQ2s3WEc0Z0lDQWdJQ0FnSUNBZ0lDQmpiMjV6ZENCbWFXeDBaWEpsWkVSaGRHRWdQU0I3ZlR0Y2JseHVJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z1UyVmhjbU5vWlhNZ1ptOXlJRzF2WkhWc1pTQnlaV3hsZG1GdWRDQmtZWFJoSUdsdWMybGtaU0IwYUdVZ2JXRnBiaTFrWVhSaExXOWlhbVZqZEM0Z1JHRjBZU0JtYjNJZ2IzUm9aWElnZDJsa1oyVjBjeUIzYVd4c0lHNXZkQ0JuWlhRZ1hHNGdJQ0FnSUNBZ0lDQWdJQ0F2THlCd1lYTnpaV1FnZEc4Z2RHaHBjeUIzYVdSblpYUXVYRzRnSUNBZ0lDQWdJQ0FnSUNBa0xtVmhZMmdvYVc1cGRHbGhiRVJoZEdFc0lHWjFibU4wYVc5dUlDaHJaWGtzSUhaaGJIVmxLU0I3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYVdZZ0tHdGxlUzVwYm1SbGVFOW1LRzF2WkhWc1pVNWhiV1VwSUQwOVBTQXdJSHg4SUd0bGVTNXBibVJsZUU5bUtHMXZaSFZzWlU1aGJXVXVkRzlNYjNkbGNrTmhjMlVvS1NrZ1BUMDlJREFwSUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdiR1YwSUc1bGQwdGxlU0E5SUd0bGVTNXpkV0p6ZEhJb2JXOWtkV3hsVG1GdFpTNXNaVzVuZEdncE8xeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0J1WlhkTFpYa2dQU0J1WlhkTFpYa3VjM1ZpYzNSeUtEQXNJREVwTG5SdlRHOTNaWEpEWVhObEtDa2dLeUJ1WlhkTFpYa3VjM1ZpYzNSeUtERXBPMXh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCbWFXeDBaWEpsWkVSaGRHRmJibVYzUzJWNVhTQTlJSFpoYkhWbE8xeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMWNiaUFnSUNBZ0lDQWdJQ0FnSUgwcE8xeHVYRzRnSUNBZ0lDQWdJQ0FnSUNCeVpYUjFjbTRnWm1sc2RHVnlaV1JFWVhSaE8xeHVJQ0FnSUNBZ0lDQjlYRzRnSUNBZ2ZTazdYRzVjYmlBZ0lDQXZMeUF0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzFjYmlBZ0lDQXZMeUJFUVZSRlVFbERTMFZTSUZKRlIwbFBUa0ZNSUVsT1JrOWNiaUFnSUNBdkx5QXRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMWNibHh1SUNBZ0lHbG1JQ2drTG1SaGRHVndhV05yWlhJZ0lUMDlJSFZ1WkdWbWFXNWxaQ2tnZTF4dUlDQWdJQ0FnSUNBa0xtUmhkR1Z3YVdOclpYSXVjbVZuYVc5dVlXd3VaR1VnUFNCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0JrWVhSbFJtOXliV0YwT2lBblpHUXViVzB1ZVhrbkxGeHVJQ0FnSUNBZ0lDQWdJQ0FnWm1seWMzUkVZWGs2SURFc1hHNGdJQ0FnSUNBZ0lDQWdJQ0JwYzFKVVREb2dabUZzYzJWY2JpQWdJQ0FnSUNBZ2ZUdGNiaUFnSUNBZ0lDQWdKQzVrWVhSbGNHbGphMlZ5TG5ObGRFUmxabUYxYkhSektDUXVaR0YwWlhCcFkydGxjaTV5WldkcGIyNWhiQzVrWlNrN1hHNGdJQ0FnZlZ4dWZTZ3BLVHRjYmlJc0lpOHFJQzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRYRzRnYVc1cGRHbGhiR2w2WlM1cWN5QXlNREUyTFRBNUxUQTRYRzRnUjJGdFltbHZJRWR0WWtoY2JpQm9kSFJ3T2k4dmQzZDNMbWRoYldKcGJ5NWtaVnh1SUVOdmNIbHlhV2RvZENBb1l5a2dNakF4TmlCSFlXMWlhVzhnUjIxaVNGeHVJRkpsYkdWaGMyVmtJSFZ1WkdWeUlIUm9aU0JIVGxVZ1IyVnVaWEpoYkNCUWRXSnNhV01nVEdsalpXNXpaU0FvVm1WeWMybHZiaUF5S1Z4dUlGdG9kSFJ3T2k4dmQzZDNMbWR1ZFM1dmNtY3ZiR2xqWlc1elpYTXZaM0JzTFRJdU1DNW9kRzFzWFZ4dUlDMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdFhHNGdLaTljYmx4dUozVnpaU0J6ZEhKcFkzUW5PMXh1WEc0dktpcGNiaUFxSUVwVFJTQkpibWwwYVdGc2FYcGhkR2x2YmlCTmIyUjFiR1ZjYmlBcVhHNGdLaUJVYUdVZ1pHOWpkVzFsYm5RdGNtVmhaSGtnWlhabGJuUWdiMllnZEdobElIQmhaMlVnZDJsc2JDQjBjbWxuWjJWeUlIUm9aU0JLWVhaaFUyTnlhWEIwSUVWdVoybHVaU0JwYm1sMGFXRnNhWHBoZEdsdmJpNGdWR2hsWEc0Z0tpQmxibWRwYm1VZ2NtVnhkV2x5WlhNZ1lTQm5iRzlpWVd3Z1kyOXVabWxuZFhKaGRHbHZiaUJ2WW1wbFkzUWdYQ0ozYVc1a2IzY3VTbE5GYm1kcGJtVkRiMjVtYVdkMWNtRjBhVzl1WENJZ2RHOGdZbVVnY0hKbExXUmxabWx1WldSY2JpQXFJR2x1SUc5eVpHVnlJSFJ2SUhKbGRISnBaWFpsSUhSb1pTQmlZWE5wWXlCamIyNW1hV2QxY21GMGFXOXVJR2x1Wm04dUlFRm1kR1Z5SUdFZ2MzVmpZMlZ6YzJaMWJDQnBibWwwYVdGc2FYcGhkR2x2YmlCMGFHbHpJRzlpYW1WamRGeHVJQ29nYVhNZ2NtVnRiM1psWkNCbWNtOXRJSFJvWlNCM2FXNWtiM2NnYjJKcVpXTjBMbHh1SUNwY2JpQXFJQ01qSXlCRGIyNW1hV2QxY21GMGFXOXVJRk5oYlhCc1pWeHVJQ3BjYmlBcUlHQmdZR3B6WEc0Z0tpQjNhVzVrYjNjdVNsTkZibWRwYm1WRGIyNW1hV2QxY21GMGFXOXVJRDBnZTF4dUlDb2dJQ0JsYm5acGNtOXViV1Z1ZERvZ0ozQnliMlIxWTNScGIyNG5MRnh1SUNvZ0lDQmhjSEJWY213NklDZG9kSFJ3T2k4dllYQndMbU52YlNjc1hHNGdLaUFnSUdOdmJHeGxZM1JwYjI1ek9pQmJYRzRnS2lBZ0lDQWdlMjVoYldVNklDZGpiMjUwY205c2JHVnljeWNzSUdGMGRISnBZblYwWlRvZ0oyTnZiblJ5YjJ4c1pYSW5mVnh1SUNvZ0lDQmRMQ0FnWEc0Z0tpQWdJSFJ5WVc1emJHRjBhVzl1Y3pvZ2UxeHVJQ29nSUNBZ0lDZHpaV04wYVc5dVRtRnRaU2M2SUhzZ0ozUnlZVzV6YkdGMGFXOXVTMlY1SnpvZ0ozUnlZVzV6YkdGMGFXOXVWbUZzZFdVbklIMHNYRzRnS2lBZ0lDQWdKMkZ1YjNSb1pYSlRaV04wYVc5dUp6b2dleUF1TGk0Z2ZWeHVJQ29nSUNCOUxGeHVJQ29nSUNCc1lXNW5kV0ZuWlVOdlpHVTZJQ2RsYmljc1hHNGdLaUFnSUhCaFoyVlViMnRsYmpvZ0p6bGhjMlEzWmprNE56bHpaRGhtTnpsek9UaHpOMlE1T0dZblhHNGdLaUI5TzF4dUlDb2dZR0JnWEc0Z0tseHVJQ29nUUcxdlpIVnNaU0JLVTBVdlEyOXlaUzlwYm1sMGFXRnNhWHBsWEc0Z0tpOWNibHh1THk4Z1NXNXBkR2xoYkdsNlpTQmlZWE5sSUdWdVoybHVaU0J2WW1wbFkzUXVJRVYyWlhKNUlHOTBhR1Z5SUhCaGNuUWdiMllnZEdobElHVnVaMmx1WlNCM2FXeHNJSEpsWm1WeUlIUnZJSFJvYVhOY2JpOHZJR05sYm5SeVlXd2diMkpxWldOMElHWnZjaUIwYUdVZ1kyOXlaU0J2Y0dWeVlYUnBiMjV6TGx4dWQybHVaRzkzTG1welpTQTlJSHRjYmlBZ0lDQmpiM0psT2lCN2ZTeGNiaUFnSUNCc2FXSnpPaUI3ZlN4Y2JpQWdJQ0JqYjI1emRISjFZM1J2Y25NNklIdDlYRzU5TzF4dVhHNHZMeUJKYm1sMGFXRnNhWHBsSUhSb1pTQmxibWRwYm1VZ2IyNGdkMmx1Wkc5M0lHeHZZV1F1SUZ4dVpHOWpkVzFsYm5RdVlXUmtSWFpsYm5STWFYTjBaVzVsY2lnblJFOU5RMjl1ZEdWdWRFeHZZV1JsWkNjc0lHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQjBjbmtnZTF4dUlDQWdJQ0FnSUNBdkx5QkRhR1ZqYXlCcFppQm5iRzlpWVd3Z1NsTkZibWRwYm1WRGIyNW1hV2QxY21GMGFXOXVJRzlpYW1WamRDQnBjeUJrWldacGJtVmtMbHh1SUNBZ0lDQWdJQ0JwWmlBb2QybHVaRzkzTGtwVFJXNW5hVzVsUTI5dVptbG5kWEpoZEdsdmJpQTlQVDBnZFc1a1pXWnBibVZrS1NCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0IwYUhKdmR5QnVaWGNnUlhKeWIzSW9KMVJvWlNCY0luZHBibVJ2ZHk1S1UwVnVaMmx1WlVOdmJtWnBaM1Z5WVhScGIyNWNJaUJ2WW1wbFkzUWdhWE1nYm05MElHUmxabWx1WldRZ2FXNGdkR2hsSUdkc2IySmhiQ0J6WTI5d1pTNGdKeUFyWEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSjFSb2FYTWdiMkpxWldOMElHbHpJSEpsY1hWcGNtVmtJR0o1SUhSb1pTQmxibWRwYm1VZ2RYQnZiaUJwZEhNZ2FXNXBkR2xoYkdsNllYUnBiMjR1SnlrN1hHNGdJQ0FnSUNBZ0lIMWNibHh1SUNBZ0lDQWdJQ0F2THlCUVlYSnpaU0JLVTBWdVoybHVaVU52Ym1acFozVnlZWFJwYjI0Z2IySnFaV04wTGx4dUlDQWdJQ0FnSUNCcWMyVXVZMjl5WlM1amIyNW1hV2N1YVc1cGRDaDNhVzVrYjNjdVNsTkZibWRwYm1WRGIyNW1hV2QxY21GMGFXOXVLVHRjYmx4dUlDQWdJQ0FnSUNBdkx5QlRkRzl5WlNCMGFHVWdTbE5GSUhOMFlYSjBJSFJwYldVZ2FXNGdjbVZuYVhOMGNua2dLSEJ5YjJacGJHbHVaeWt1SUZ4dUlDQWdJQ0FnSUNCcWMyVXVZMjl5WlM1eVpXZHBjM1J5ZVM1elpYUW9KMnB6WlZOMFlYSjBWR2x0WlNjc0lFUmhkR1V1Ym05M0tDa3BPMXh1WEc0Z0lDQWdJQ0FnSUM4dklFbHVhWFJwWVd4cGVtVWdkR2hsSUcxdlpIVnNaU0JqYjJ4c1pXTjBhVzl1Y3k1Y2JpQWdJQ0FnSUNBZ2FuTmxMbU52Y21VdVpXNW5hVzVsTG1sdWFYUW9hbk5sTG1OdmNtVXVZMjl1Wm1sbkxtZGxkQ2duWTI5c2JHVmpkR2x2Ym5NbktTazdYRzRnSUNBZ2ZTQmpZWFJqYUNBb1pYaGpaWEIwYVc5dUtTQjdYRzRnSUNBZ0lDQWdJR3B6WlM1amIzSmxMbVJsWW5WbkxtVnljbTl5S0NkVmJtVjRjR1ZqZEdWa0lHVnljbTl5SUdSMWNtbHVaeUJLVXlCRmJtZHBibVVnYVc1cGRHbGhiR2w2WVhScGIyNGhKeXdnWlhoalpYQjBhVzl1S1R0Y2JpQWdJQ0FnSUNBZ0x5OGdTVzVtYjNKdElIUm9aU0JsYm1kcGJtVWdZV0p2ZFhRZ2RHaGxJR1Y0WTJWd2RHbHZiaTVjYmlBZ0lDQWdJQ0FnWTI5dWMzUWdaWFpsYm5RZ1BTQmtiMk4xYldWdWRDNWpjbVZoZEdWRmRtVnVkQ2duUTNWemRHOXRSWFpsYm5RbktUdGNiaUFnSUNBZ0lDQWdaWFpsYm5RdWFXNXBkRU4xYzNSdmJVVjJaVzUwS0NkbGNuSnZjaWNzSUhSeWRXVXNJSFJ5ZFdVc0lHVjRZMlZ3ZEdsdmJpazdYRzRnSUNBZ0lDQWdJSGRwYm1SdmR5NWthWE53WVhSamFFVjJaVzUwS0dWMlpXNTBLVHRjYmlBZ0lDQjlYRzVjYmlBZ0lDQlRWa2RKYm1wbFkzUXVjMlYwVDNCMGFXOXVjeWg3WEc0Z0lDQWdJQ0FnSUc5dVJtRnBiRG9nWm5WdVkzUnBiMjRnS0dsdFp5d2djM1puS1NCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0JwYldjdVkyeGhjM05NYVhOMExuSmxiVzkyWlNnbmMzWm5MUzFwYm1wbFkzUW5LVHNnTHk4Z2FXWWdhVzVxWldOMGFXOXVJR1poYVd4eklITm9iM2NnZEdobElHbHRaeUJsYkdWdFpXNTBYRzRnSUNBZ0lDQWdJSDFjYmlBZ0lDQjlLVHRjYmlBZ0lDQXZMeUJwYm1wbFkzUWdhVzFoWjJWeklIZHBkR2dnWVc0Z0xuTjJaeUJtYVd4bElHVnVaR2x1WjF4dUlDQWdJRk5XUjBsdWFtVmpkQ2hrYjJOMWJXVnVkQzV4ZFdWeWVWTmxiR1ZqZEc5eVFXeHNLQ2RwYldjdWMzWm5MUzFwYm1wbFkzUW5LU3dnZTF4dUlDQWdJQ0FnSUNCdmJrRnNiRVpwYm1semFEb2dablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJQ0FnSUNBZ0lDQWdMeThnZEdobElGTldSeUJwYm1wbFkzUnBiMjRnYUdGeklHWnBibWx6YUdWa0lHWnZjaUJoYkd3Z2RHaHlaV1VnYVcxaFoyVnpYRzVjYmlBZ0lDQWdJQ0FnZlZ4dUlDQWdJSDBwTzF4dWZTazdJRnh1SWl3aUx5b2dMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMWNiaUJzWVc1bkxtcHpJREl3TVRZdE1EZ3RNak5jYmlCSFlXMWlhVzhnUjIxaVNGeHVJR2gwZEhBNkx5OTNkM2N1WjJGdFltbHZMbVJsWEc0Z1EyOXdlWEpwWjJoMElDaGpLU0F5TURFMklFZGhiV0pwYnlCSGJXSklYRzRnVW1Wc1pXRnpaV1FnZFc1a1pYSWdkR2hsSUVkT1ZTQkhaVzVsY21Gc0lGQjFZbXhwWXlCTWFXTmxibk5sSUNoV1pYSnphVzl1SURJcFhHNGdXMmgwZEhBNkx5OTNkM2N1WjI1MUxtOXlaeTlzYVdObGJuTmxjeTluY0d3dE1pNHdMbWgwYld4ZFhHNGdMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMWNiaUFxTDF4dVhHNXFjMlV1WTI5eVpTNXNZVzVuSUQwZ2FuTmxMbU52Y21VdWJHRnVaeUI4ZkNCN2ZUdGNibHh1THlvcVhHNGdLaUJLVTBVZ1RHOWpZV3hwZW1GMGFXOXVJRXhwWW5KaGNubGNiaUFxWEc0Z0tpQlVhR1VnWjJ4dlltRnNJRXhoYm1jZ2IySnFaV04wSUdOdmJuUmhhVzV6SUd4aGJtZDFZV2RsSUdsdVptOXliV0YwYVc5dUlIUm9ZWFFnWTJGdUlHSmxJR1ZoYzJsc2VTQjFjMlZrSUdsdUlIbHZkWEpjYmlBcUlFcGhkbUZUWTNKcGNIUWdZMjlrWlM0Z1ZHaGxJRzlpYW1WamRDQmpiMjUwWVdsdWN5QmpiMjV6ZEdGdVkyVWdkSEpoYm5Oc1lYUnBiMjV6SUdGdVpDQmtlVzVoYldsaklITmxZM1JwYjI1eklIUm9ZWFJjYmlBcUlHTmhiaUJpWlNCc2IyRmtaV1FnWVc1a0lIVnpaV1FnYVc0Z1pHbG1abVZ5Wlc1MElIQmhaMlV1WEc0Z0tseHVJQ29nSXlNakl5QkpiWEJ2Y25SaGJuUmNiaUFxSUZSb1pTQmxibWRwYm1VZ2QybHNiQ0JoZFhSdmJXRjBhV05oYkd4NUlHeHZZV1FnZEhKaGJuTnNZWFJwYjI0Z2MyVmpkR2x2Ym5NZ2RHaGhkQ0JoY21VZ2NISmxjMlZ1ZENCcGJpQjBhR1ZjYmlBcUlHQjNhVzVrYjNjdVNsTkZibWRwYm1WRGIyNW1hV2QxY21GMGFXOXVMblJ5WVc1emJHRjBhVzl1YzJBZ2NISnZjR1Z5ZEhrZ2RYQnZiaUJwYm1sMGFXRnNhWHBoZEdsdmJpNGdSbTl5SUcxdmNtVmNiaUFxSUdsdVptOXliV0YwYVc5dUlHeHZiMnNnWVhRZ2RHaGxJRndpWTI5eVpTOXBibWwwYVdGc2FYcGxYQ0lnY0dGblpTQnZaaUJrYjJOMWJXVnVkR0YwYVc5dUlISmxabVZ5Wlc1alpTNWNiaUFxWEc0Z0tpQmdZR0JxWVhaaGMyTnlhWEIwWEc0Z0tpQnFjMlV1WTI5eVpTNXNZVzVuTG1Ga1pGTmxZM1JwYjI0b0ozTmxZM1JwYjI1T1lXMWxKeXdnZXlCMGNtRnVjMnhoZEdsdmJrdGxlVG9nSjNSeVlXNXpiR0YwYVc5dVZtRnNkV1VuSUgwcE95QXZMeUJCWkdRZ2RISmhibk5zWVhScGIyNGdjMlZqZEdsdmJpNWNiaUFxSUdwelpTNWpiM0psTG5SeVlXNXpiR0YwWlNnbmRISmhibk5zWVhScGIyNUxaWGtuTENBbmMyVmpkR2x2Yms1aGJXVW5LVHNnTHk4Z1IyVjBJSFJvWlNCMGNtRnVjMnhoZEdWa0lITjBjbWx1Wnk1Y2JpQXFJR3B6WlM1amIzSmxMbWRsZEZObFkzUnBiMjV6S0NrN0lDOHZJSEpsZEhWeWJuTWdZWEp5WVhrZ2QybDBhQ0J6WldOMGFXOXVjeUJsTG1jdUlGc25ZV1J0YVc1ZlluVjBkRzl1Y3ljc0lDZG5aVzVsY21Gc0oxMWNiaUFxSUdCZ1lGeHVJQ3BjYmlBcUlFQnRiMlIxYkdVZ1NsTkZMME52Y21VdmJHRnVaMXh1SUNvdlhHNG9ablZ1WTNScGIyNGdLR1Y0Y0c5eWRITXBJSHRjYmx4dUlDQWdJQ2QxYzJVZ2MzUnlhV04wSnp0Y2JseHVJQ0FnSUM4dklDMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExWeHVJQ0FnSUM4dklGWkJVa2xCUWt4RlUxeHVJQ0FnSUM4dklDMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExWeHVYRzRnSUNBZ0x5b3FYRzRnSUNBZ0lDb2dRMjl1ZEdGcGJuTWdkbUZ5YVc5MWN5QjBjbUZ1YzJ4aGRHbHZiaUJ6WldOMGFXOXVjeTVjYmlBZ0lDQWdLbHh1SUNBZ0lDQXFJRUIwZVhCbElIdFBZbXBsWTNSOVhHNGdJQ0FnSUNvdlhHNGdJQ0FnWTI5dWMzUWdjMlZqZEdsdmJuTWdQU0I3ZlR0Y2JseHVJQ0FnSUM4dklDMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExWeHVJQ0FnSUM4dklGQlZRa3hKUXlCTlJWUklUMFJUWEc0Z0lDQWdMeThnTFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0WEc1Y2JpQWdJQ0F2S2lwY2JpQWdJQ0FnS2lCQlpHUWdZU0IwY21GdWMyeGhkR2x2YmlCelpXTjBhVzl1TGx4dUlDQWdJQ0FxWEc0Z0lDQWdJQ29nUUhCaGNtRnRJSHRUZEhKcGJtZDlJRzVoYldVZ1RtRnRaU0J2WmlCMGFHVWdjMlZqZEdsdmJpd2dkWE5sWkNCc1lYUmxjaUJtYjNJZ1lXTmpaWE56YVc1bklIUnlZVzV6YkdGMGFXOXVJSE4wY21sdVozTXVYRzRnSUNBZ0lDb2dRSEJoY21GdElIdFBZbXBsWTNSOUlIUnlZVzV6YkdGMGFXOXVjeUJMWlhrZ0xTQjJZV3gxWlNCdlltcGxZM1FnWTI5dWRHRnBibWx1WnlCMGFHVWdkSEpoYm5Oc1lYUnBiMjV6TGx4dUlDQWdJQ0FxWEc0Z0lDQWdJQ29nUUhSb2NtOTNjeUI3UlhKeWIzSjlJRWxtSUZ3aWJtRnRaVndpSUc5eUlGd2lkSEpoYm5Oc1lYUnBiMjV6WENJZ1lYSm5kVzFsYm5SeklHRnlaU0JwYm5aaGJHbGtMbHh1SUNBZ0lDQXFMMXh1SUNBZ0lHVjRjRzl5ZEhNdVlXUmtVMlZqZEdsdmJpQTlJR1oxYm1OMGFXOXVJQ2h1WVcxbExDQjBjbUZ1YzJ4aGRHbHZibk1wSUh0Y2JpQWdJQ0FnSUNBZ2FXWWdLSFI1Y0dWdlppQnVZVzFsSUNFOVBTQW5jM1J5YVc1bkp5QjhmQ0IwZVhCbGIyWWdkSEpoYm5Oc1lYUnBiMjV6SUNFOVBTQW5iMkpxWldOMEp5QjhmQ0IwY21GdWMyeGhkR2x2Ym5NZ1BUMDlJRzUxYkd3cElIdGNiaUFnSUNBZ0lDQWdJQ0FnSUhSb2NtOTNJRzVsZHlCRmNuSnZjaWhnZDJsdVpHOTNMbWQ0TG1OdmNtVXViR0Z1Wnk1aFpHUlRaV04wYVc5dU9pQkpiblpoYkdsa0lHRnlaM1Z0Wlc1MGN5QndjbTkyYVdSbFpDQW9ibUZ0WlRvZ0pIdDBlWEJsYjJZZ2JtRnRaWDBzSUdCY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBcklHQjBjbUZ1YzJ4aGRHbHZibk02SUNSN2RIbHdaVzltSUhSeVlXNXpiR0YwYVc5dWMzMHBMbUFwTzF4dUlDQWdJQ0FnSUNCOVhHNGdJQ0FnSUNBZ0lITmxZM1JwYjI1elcyNWhiV1ZkSUQwZ2RISmhibk5zWVhScGIyNXpPMXh1SUNBZ0lIMDdYRzVjYmlBZ0lDQXZLaXBjYmlBZ0lDQWdLaUJIWlhRZ2JHOWhaR1ZrSUhSeVlXNXpiR0YwYVc5dUlITmxZM1JwYjI1ekxseHVJQ0FnSUNBcVhHNGdJQ0FnSUNvZ1ZYTmxablZzSUdadmNpQmhjM05sY25ScGJtY2djSEpsYzJWdWRDQjBjbUZ1YzJ4aGRHbHZiaUJ6WldOMGFXOXVjeTVjYmlBZ0lDQWdLbHh1SUNBZ0lDQXFJRUJ5WlhSMWNtNGdlMEZ5Y21GNWZTQlNaWFIxY201eklHRnljbUY1SUhkcGRHZ2dkR2hsSUdWNGFYTjBhVzVuSUhObFkzUnBiMjV6TGx4dUlDQWdJQ0FxTDF4dUlDQWdJR1Y0Y0c5eWRITXVaMlYwVTJWamRHbHZibk1nUFNCbWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ0lDQWdJR052Ym5OMElISmxjM1ZzZENBOUlGdGRPMXh1WEc0Z0lDQWdJQ0FnSUdadmNpQW9iR1YwSUhObFkzUnBiMjRnYVc0Z2MyVmpkR2x2Ym5NcElIdGNiaUFnSUNBZ0lDQWdJQ0FnSUhKbGMzVnNkQzV3ZFhOb0tITmxZM1JwYjI0cE8xeHVJQ0FnSUNBZ0lDQjlYRzVjYmlBZ0lDQWdJQ0FnY21WMGRYSnVJSEpsYzNWc2REdGNiaUFnSUNCOU8xeHVYRzRnSUNBZ0x5b3FYRzRnSUNBZ0lDb2dWSEpoYm5Oc1lYUmxJSE4wY21sdVp5QnBiaUJLWVhaaGMyTnlhWEIwSUdOdlpHVXVYRzRnSUNBZ0lDcGNiaUFnSUNBZ0tpQkFjR0Z5WVcwZ2UxTjBjbWx1WjMwZ2NHaHlZWE5sSUU1aGJXVWdiMllnZEdobElIQm9jbUZ6WlNCamIyNTBZV2x1YVc1bklIUm9aU0IwY21GdWMyeGhkR2x2Ymk1Y2JpQWdJQ0FnS2lCQWNHRnlZVzBnZTFOMGNtbHVaMzBnYzJWamRHbHZiaUJUWldOMGFXOXVJRzVoYldVZ1kyOXVkR0ZwYm1sdVp5QjBhR1VnZEhKaGJuTnNZWFJwYjI0Z2MzUnlhVzVuTGx4dUlDQWdJQ0FxWEc0Z0lDQWdJQ29nUUhKbGRIVnliaUI3VTNSeWFXNW5mU0JTWlhSMWNtNXpJSFJvWlNCMGNtRnVjMnhoZEdWa0lITjBjbWx1Wnk1Y2JpQWdJQ0FnS2x4dUlDQWdJQ0FxSUVCMGFISnZkM01nZTBWeWNtOXlmU0JKWmlCd2NtOTJhV1JsWkNCaGNtZDFiV1Z1ZEhNZ1lYSmxJR2x1ZG1Gc2FXUXVYRzRnSUNBZ0lDb2dRSFJvY205M2N5QjdSWEp5YjNKOUlFbG1JSEpsY1hWcGNtVmtJSE5sWTNScGIyNGdaRzlsY3lCdWIzUWdaWGhwYzNRZ2IzSWdkSEpoYm5Oc1lYUnBiMjRnWTI5MWJHUWdibTkwSUdKbElHWnZkVzVrTGx4dUlDQWdJQ0FxTDF4dUlDQWdJR1Y0Y0c5eWRITXVkSEpoYm5Oc1lYUmxJRDBnWm5WdVkzUnBiMjRnS0hCb2NtRnpaU3dnYzJWamRHbHZiaWtnZTF4dUlDQWdJQ0FnSUNBdkx5QldZV3hwWkdGMFpTQndjbTkyYVdSbFpDQmhjbWQxYldWdWRITXVYRzRnSUNBZ0lDQWdJR2xtSUNoMGVYQmxiMllnY0doeVlYTmxJQ0U5UFNBbmMzUnlhVzVuSnlCOGZDQjBlWEJsYjJZZ2MyVmpkR2x2YmlBaFBUMGdKM04wY21sdVp5Y3BJSHRjYmlBZ0lDQWdJQ0FnSUNBZ0lIUm9jbTkzSUc1bGR5QkZjbkp2Y2loZ1NXNTJZV3hwWkNCaGNtZDFiV1Z1ZEhNZ2NISnZkbWxrWldRZ2FXNGdkSEpoYm5Oc1lYUmxJRzFsZEdodlpDQW9jR2h5WVhObE9pQWtlM1I1Y0dWdlppQndhSEpoYzJWOUxDQmdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdLeUJnYzJWamRHbHZiam9nSkh0MGVYQmxiMllnYzJWamRHbHZibjBwTG1BcE8xeHVJQ0FnSUNBZ0lDQjlYRzVjYmlBZ0lDQWdJQ0FnTHk4Z1EyaGxZMnNnYVdZZ2RISmhibk5zWVhScGIyNGdaWGhwYzNSekxseHVJQ0FnSUNBZ0lDQnBaaUFvYzJWamRHbHZibk5iYzJWamRHbHZibDBnUFQwOUlIVnVaR1ZtYVc1bFpDQjhmQ0J6WldOMGFXOXVjMXR6WldOMGFXOXVYVnR3YUhKaGMyVmRJRDA5UFNCMWJtUmxabWx1WldRcElIdGNiaUFnSUNBZ0lDQWdJQ0FnSUdwelpTNWpiM0psTG1SbFluVm5MbmRoY200b1lFTnZkV3hrSUc1dmRDQm1iM1Z1WkNCeVpYRjFaWE4wWldRZ2RISmhibk5zWVhScGIyNGdLSEJvY21GelpUb2dKSHR3YUhKaGMyVjlMQ0J6WldOMGFXOXVPaUFrZTNObFkzUnBiMjU5S1M1Z0tUdGNiaUFnSUNBZ0lDQWdJQ0FnSUhKbGRIVnliaUFuZXljZ0t5QnpaV04wYVc5dUlDc2dKeTRuSUNzZ2NHaHlZWE5sSUNzZ0ozMG5PMXh1SUNBZ0lDQWdJQ0I5WEc1Y2JpQWdJQ0FnSUNBZ2NtVjBkWEp1SUhObFkzUnBiMjV6VzNObFkzUnBiMjVkVzNCb2NtRnpaVjA3WEc0Z0lDQWdmVHRjYmx4dWZTaHFjMlV1WTI5eVpTNXNZVzVuS1NrN1hHNGlMQ0l2S2lBdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFZ4eVhHNGdiV0ZwYmk1cWN5QXlNREU0TFRBMkxUQTNYSEpjYmlCSFlXMWlhVzhnUjIxaVNGeHlYRzRnYUhSMGNEb3ZMM2QzZHk1bllXMWlhVzh1WkdWY2NseHVJRU52Y0hseWFXZG9kQ0FvWXlrZ01qQXhPQ0JIWVcxaWFXOGdSMjFpU0Z4eVhHNGdVbVZzWldGelpXUWdkVzVrWlhJZ2RHaGxJRWRPVlNCSFpXNWxjbUZzSUZCMVlteHBZeUJNYVdObGJuTmxJQ2hXWlhKemFXOXVJRElwWEhKY2JpQmJhSFIwY0RvdkwzZDNkeTVuYm5VdWIzSm5MMnhwWTJWdWMyVnpMMmR3YkMweUxqQXVhSFJ0YkYxY2NseHVJQzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRYSEpjYmlBcUwxeHlYRzVjY2x4dUx5OGdTVzF3YjNKMElHbHVhWFJwWVd4cGVtRjBhVzl1SUhOamNtbHdkQzRnWEhKY2JtbHRjRzl5ZENBbkxpOXBibWwwYVdGc2FYcGxKenRjY2x4dVhISmNiaTh2SUVsdGNHOXlkQ0IwYUdVZ1kyOXVjM1J5ZFdOMGIzSWdabWxzWlhNdUlGeHlYRzVwYlhCdmNuUWdKeTR1TDJOdmJuTjBjblZqZEc5eWN5OWpiMnhzWldOMGFXOXVKenRjY2x4dWFXMXdiM0owSUNjdUxpOWpiMjV6ZEhKMVkzUnZjbk12WkdGMFlWOWlhVzVrYVc1bkp6dGNjbHh1YVcxd2IzSjBJQ2N1TGk5amIyNXpkSEoxWTNSdmNuTXZiVzlrZFd4bEp6dGNjbHh1YVcxd2IzSjBJQ2N1TGk5amIyNXpkSEoxWTNSdmNuTXZibUZ0WlhOd1lXTmxKenRjY2x4dVhISmNiaTh2SUVsdGNHOXlkQ0IwYUdVZ1kyOXlaU0JtYVd4bGN5NGdYSEpjYm1sdGNHOXlkQ0FuTGk5aFltOTFkQ2M3WEhKY2JtbHRjRzl5ZENBbkxpOWpiMjVtYVdjbk8xeHlYRzVwYlhCdmNuUWdKeTR2WkdWaWRXY25PMXh5WEc1cGJYQnZjblFnSnk0dlpXNW5hVzVsSnp0Y2NseHVhVzF3YjNKMElDY3VMMlY0ZEdWdVpDYzdYSEpjYm1sdGNHOXlkQ0FuTGk5c1lXNW5KenRjY2x4dWFXMXdiM0owSUNjdUwzSmxjWFZwY21Vbk8xeHlYRzVwYlhCdmNuUWdKeTR2Ylc5a2RXeGxYMnh2WVdSbGNpYzdYSEpjYm1sdGNHOXlkQ0FuTGk5d2IyeDVabWxzYkhNbk8xeHlYRzVwYlhCdmNuUWdKeTR2Y21WbmFYTjBjbmtuTzF4eVhHNXBiWEJ2Y25RZ0p5NHZkblZsSnpzaUxDSXZLaUF0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMVnh1SUcxdlpIVnNaVjlzYjJGa1pYSXVhbk1nTWpBeE9DMHdPUzB4TWx4dUlFZGhiV0pwYnlCSGJXSklYRzRnYUhSMGNEb3ZMM2QzZHk1bllXMWlhVzh1WkdWY2JpQkRiM0I1Y21sbmFIUWdLR01wSURJd01UWWdSMkZ0WW1sdklFZHRZa2hjYmlCU1pXeGxZWE5sWkNCMWJtUmxjaUIwYUdVZ1IwNVZJRWRsYm1WeVlXd2dVSFZpYkdsaklFeHBZMlZ1YzJVZ0tGWmxjbk5wYjI0Z01pbGNiaUJiYUhSMGNEb3ZMM2QzZHk1bmJuVXViM0puTDJ4cFkyVnVjMlZ6TDJkd2JDMHlMakF1YUhSdGJGMWNiaUF0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMVnh1SUNvdlhHNWNibXB6WlM1amIzSmxMbTF2WkhWc1pWOXNiMkZrWlhJZ1BTQnFjMlV1WTI5eVpTNXRiMlIxYkdWZmJHOWhaR1Z5SUh4OElIdDlPMXh1WEc0dktpcGNiaUFxSUVwVFJTQk5iMlIxYkdVZ1RHOWhaR1Z5WEc0Z0tseHVJQ29nVkdocGN5QnZZbXBsWTNRZ2FYTWdZVzRnWVdSaGNIUmxjaUJpWlhSM1pXVnVJSFJvWlNCbGJtZHBibVVnWVc1a0lGSmxjWFZwY21WS1V5QjNhR2xqYUNCcGN5QjFjMlZrSUhSdklHeHZZV1FnZEdobElISmxjWFZwY21Wa0lHWnBiR1Z6WEc0Z0tpQnBiblJ2SUhSb1pTQmpiR2xsYm5RdVhHNGdLbHh1SUNvZ1FHMXZaSFZzWlNCS1UwVXZRMjl5WlM5dGIyUjFiR1ZmYkc5aFpHVnlYRzRnS2k5Y2JpaG1kVzVqZEdsdmJpQW9aWGh3YjNKMGN5a2dlMXh1WEc0Z0lDQWdKM1Z6WlNCemRISnBZM1FuTzF4dVhHNGdJQ0FnTHk4Z0xTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdFhHNGdJQ0FnTHk4Z1VGSkpWa0ZVUlNCTlJWUklUMFJUWEc0Z0lDQWdMeThnTFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0WEc1Y2JpQWdJQ0F2S2lwY2JpQWdJQ0FnS2lCTWIyRmtJRU5UVXlCbWFXeGxMbHh1SUNBZ0lDQXFYRzRnSUNBZ0lDb2dRSEJoY21GdElIdFRkSEpwYm1kOUlIVnliQ0JCWW5OdmJIVjBaU0JWVWt3Z2IyWWdkR2hsSUVOVFV5Qm1hV3hsSUhSdklHSmxJR3h2WVdSbFpDNWNiaUFnSUNBZ0tseHVJQ0FnSUNBcUlFQndjbWwyWVhSbFhHNGdJQ0FnSUNvdlhHNGdJQ0FnWm5WdVkzUnBiMjRnWDJ4dllXUkRjM01vZFhKc0tTQjdYRzRnSUNBZ0lDQWdJR052Ym5OMElHeHBibXNnUFNCa2IyTjFiV1Z1ZEM1amNtVmhkR1ZGYkdWdFpXNTBLQ2RzYVc1ckp5azdYRzRnSUNBZ0lDQWdJR3hwYm1zdWRIbHdaU0E5SUNkMFpYaDBMMk56Y3ljN1hHNGdJQ0FnSUNBZ0lHeHBibXN1Y21Wc0lEMGdKM04wZVd4bGMyaGxaWFFuTzF4dUlDQWdJQ0FnSUNCc2FXNXJMbWh5WldZZ1BTQjFjbXc3WEc0Z0lDQWdJQ0FnSUdSdlkzVnRaVzUwTG1kbGRFVnNaVzFsYm5SelFubFVZV2RPWVcxbEtDZG9aV0ZrSnlsYk1GMHVZWEJ3Wlc1a1EyaHBiR1FvYkdsdWF5azdYRzRnSUNBZ2ZWeHVYRzRnSUNBZ0x5OGdMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRYRzRnSUNBZ0x5OGdVRlZDVEVsRElFMUZWRWhQUkZOY2JpQWdJQ0F2THlBdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMxY2JseHVJQ0FnSUM4cUtseHVJQ0FnSUNBcUlFbHVhWFJwWVd4cGVtVWdkR2hsSUcxdlpIVnNaU0JzYjJGa1pYSXVYRzRnSUNBZ0lDcGNiaUFnSUNBZ0tpQkZlR1ZqZFhSbElIUm9hWE1nYldWMGFHOWtJR0ZtZEdWeUlIUm9aU0JsYm1kcGJtVWdZMjl1Wm1sbklHbHpJR2x1YVhScFlXeHBlbVZrTGlCSmRDQjNhV3hzSUdOdmJtWnBaM1Z5WlNCeVpYRjFhWEpsTG1welhHNGdJQ0FnSUNvZ2MyOGdkR2hoZENCcGRDQjNhV3hzSUdKbElHRmliR1VnZEc4Z1ptbHVaQ0IwYUdVZ2NISnZhbVZqZENCbWFXeGxjeTVjYmlBZ0lDQWdLbHh1SUNBZ0lDQXFJRlJvWlNCallXTm9aU0JpZFhOMGFXNW5JRzFsZEdodlpDQjNhV3hzSUhSeWVTQjBieUJqY21WaGRHVWdZU0J1ZFcxaVpYSWdZbUZ6WldRZ2IyNGdkR2hsSUdOMWNuSmxiblFnYzJodmNDQjJaWEp6YVc5dUxseHVJQ0FnSUNBcUwxeHVJQ0FnSUdWNGNHOXlkSE11YVc1cGRDQTlJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0FnSUNBZ2JHVjBJR05oWTJobFFuVnpkQ0E5SUNjbk8xeHVYRzRnSUNBZ0lDQWdJR2xtSUNocWMyVXVZMjl5WlM1amIyNW1hV2N1WjJWMEtDZGxiblpwY205dWJXVnVkQ2NwSUQwOVBTQW5jSEp2WkhWamRHbHZiaWNnSmlaY2JpQWdJQ0FnSUNBZ0lDQWdJR3B6WlM1amIzSmxMbU52Ym1acFp5NW5aWFFvSjJKMWMzUkdhV3hsY3ljcElEMDlQU0JtWVd4elpTQW1KbHh1SUNBZ0lDQWdJQ0FnSUNBZ2FuTmxMbU52Y21VdVkyOXVabWxuTG1kbGRDZ25ZMkZqYUdWVWIydGxiaWNwS1NCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0JqWVdOb1pVSjFjM1FnUFNCZ1luVnpkRDBrZTJwelpTNWpiM0psTG1OdmJtWnBaeTVuWlhRb0oyTmhZMmhsVkc5clpXNG5LWDFnTzF4dUlDQWdJQ0FnSUNCOVhHNWNiaUFnSUNBZ0lDQWdZMjl1YzNRZ1kyOXVabWxuSUQwZ2UxeHVJQ0FnSUNBZ0lDQWdJQ0FnWW1GelpWVnliRG9nYW5ObExtTnZjbVV1WTI5dVptbG5MbWRsZENnbllYQndWWEpzSnlrc1hHNGdJQ0FnSUNBZ0lDQWdJQ0IxY214QmNtZHpPaUJqWVdOb1pVSjFjM1FzWEc0Z0lDQWdJQ0FnSUNBZ0lDQnZia1Z5Y205eU9pQm1kVzVqZEdsdmJpQW9aWEp5YjNJcElIdGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnFjMlV1WTI5eVpTNWtaV0oxWnk1bGNuSnZjaWduVW1WeGRXbHlaVXBUSUVWeWNtOXlPaWNzSUdWeWNtOXlLVHRjYmlBZ0lDQWdJQ0FnSUNBZ0lIMWNiaUFnSUNBZ0lDQWdmVHRjYmx4dUlDQWdJQ0FnSUNCM2FXNWtiM2N1Y21WeGRXbHlaUzVqYjI1bWFXY29ZMjl1Wm1sbktUdGNiaUFnSUNCOU8xeHVYRzRnSUNBZ0x5b3FYRzRnSUNBZ0lDb2dVbVZ4ZFdseVpTQktVeUJoYm1RZ1ExTlRJR1pwYkdWeklDNWNiaUFnSUNBZ0tseHVJQ0FnSUNBcUlFNXZkR2xqWlRvZ1ZHaGxjbVVuY3lCdWJ5QmpiMjVqY21WMFpTQjNZWGtnZEc4Z1pHVjBaWEp0YVc1bElIZG9aVzRnUTFOVElHUmxjR1Z1WkdWdVkybGxjeUJoY21VZ2JHOWhaR1ZrTGx4dUlDQWdJQ0FxWEc0Z0lDQWdJQ29nUUhCaGNtRnRJSHRUZEhKcGJtZGJYWDBnWkdWd1pXNWtaVzVqYVdWeklFUmxjR1Z1WkdWdVkza2dWVkpNY3k1Y2JpQWdJQ0FnS2lCQWNHRnlZVzBnZTBaMWJtTjBhVzl1ZlNCallXeHNZbUZqYXlCRFlXeHNZbUZqYXlCdFpYUm9iMlFnZEc4Z1ltVWdZMkZzYkdWa0lHOXVZMlVnZEdobElHUmxjR1Z1WkdWdVkybGxjeUJoY21VZ2JHOWhaR1ZrTGx4dUlDQWdJQ0FxTDF4dUlDQWdJR1Y0Y0c5eWRITXVjbVZ4ZFdseVpTQTlJR1oxYm1OMGFXOXVJQ2hrWlhCbGJtUmxibU5wWlhNc0lHTmhiR3hpWVdOcktTQjdYRzRnSUNBZ0lDQWdJR1p2Y2lBb2JHVjBJR1JsY0dWdVpHVnVZM2tnYjJZZ1pHVndaVzVrWlc1amFXVnpLU0I3WEc0Z0lDQWdJQ0FnSUNBZ0lDQnBaaUFvWkdWd1pXNWtaVzVqZVM1cGJtTnNkV1JsY3lnbkxtTnpjeWNwS1NCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ1gyeHZZV1JEYzNNb1pHVndaVzVrWlc1amVTazdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdZMjl1YzNRZ2FXNWtaWGdnUFNCa1pYQmxibVJsYm1OcFpYTXVhVzVrWlhoUFppaGtaWEJsYm1SbGJtTjVLVHRjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JrWlhCbGJtUmxibU5wWlhNdWMzQnNhV05sS0dsdVpHVjRMQ0F4S1R0Y2JpQWdJQ0FnSUNBZ0lDQWdJSDFjYmlBZ0lDQWdJQ0FnZlZ4dVhHNGdJQ0FnSUNBZ0lHbG1JQ2hrWlhCbGJtUmxibU5wWlhNdWJHVnVaM1JvSUQwOVBTQXdLU0I3WEc0Z0lDQWdJQ0FnSUNBZ0lDQmpZV3hzWW1GamF5Z3BPMXh1SUNBZ0lDQWdJQ0I5SUdWc2MyVWdlMXh1SUNBZ0lDQWdJQ0FnSUNBZ2QybHVaRzkzTG5KbGNYVnBjbVVvWkdWd1pXNWtaVzVqYVdWekxDQmpZV3hzWW1GamF5azdYRzRnSUNBZ0lDQWdJSDFjYmlBZ0lDQjlPMXh1WEc0Z0lDQWdMeW9xWEc0Z0lDQWdJQ29nVEc5aFpDQmhJRzF2WkhWc1pTQm1hV3hsSUhkcGRHZ2dkR2hsSUhWelpTQnZaaUJ5WlhGMWFYSmxhbk11WEc0Z0lDQWdJQ3BjYmlBZ0lDQWdLaUJBY0dGeVlXMGdlMDlpYW1WamRIMGdKR1ZzWlcxbGJuUWdVMlZzWldOMGIzSWdiMllnZEdobElHVnNaVzFsYm5RZ2QyaHBZMmdnYUdGeklIUm9aU0J0YjJSMWJHVWdaR1ZtYVc1cGRHbHZiaTVjYmlBZ0lDQWdLaUJBY0dGeVlXMGdlMU4wY21sdVozMGdibUZ0WlNCTmIyUjFiR1VnYm1GdFpTQjBieUJpWlNCc2IyRmtaV1F1SUUxdlpIVnNaWE1nYUdGMlpTQjBhR1VnYzJGdFpTQnVZVzFsY3lCaGN5QjBhR1ZwY2lCbWFXeGxjeTVjYmlBZ0lDQWdLaUJBY0dGeVlXMGdlMDlpYW1WamRIMGdZMjlzYkdWamRHbHZiaUJEZFhKeVpXNTBJR052Ykd4bFkzUnBiMjRnYVc1emRHRnVZMlV1WEc0Z0lDQWdJQ3BjYmlBZ0lDQWdLaUJBY21WMGRYSnVJSHRQWW1wbFkzUjlJRkpsZEhWeWJuTWdZU0J3Y205dGFYTmxJRzlpYW1WamRDQjBieUJpWlNCeVpYTnZiSFpsWkNCM2FYUm9JSFJvWlNCdGIyUjFiR1VnYVc1emRHRnVZMlVnWVhNZ1lTQndZWEpoYldWMFpYSXVYRzRnSUNBZ0lDb3ZYRzRnSUNBZ1pYaHdiM0owY3k1c2IyRmtJRDBnWm5WdVkzUnBiMjRnS0NSbGJHVnRaVzUwTENCdVlXMWxMQ0JqYjJ4c1pXTjBhVzl1S1NCN1hHNGdJQ0FnSUNBZ0lHTnZibk4wSUdSbFptVnljbVZrSUQwZ0pDNUVaV1psY25KbFpDZ3BPMXh1WEc0Z0lDQWdJQ0FnSUhSeWVTQjdYRzRnSUNBZ0lDQWdJQ0FnSUNCcFppQW9ibUZ0WlNBOVBUMGdKeWNwSUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCa1pXWmxjbkpsWkM1eVpXcGxZM1FvYm1WM0lFVnljbTl5S0NkTmIyUjFiR1VnYm1GdFpTQmpZVzV1YjNRZ1ltVWdaVzF3ZEhrdUp5a3BPMXh1SUNBZ0lDQWdJQ0FnSUNBZ2ZWeHVYRzRnSUNBZ0lDQWdJQ0FnSUNCamIyNXpkQ0JpWVhObFRXOWtkV3hsVG1GdFpTQTlJRzVoYldVdWNtVndiR0ZqWlNndkxpcGNYQzhvTGlvcEpDOHNJQ2NrTVNjcE95QXZMeUJPWVcxbElIZHBkR2h2ZFhRZ2RHaGxJSEJoY21WdWRDQmthWEpsWTNSdmNtbGxjeTVjYmx4dUlDQWdJQ0FnSUNBZ0lDQWdMeThnVkhKNUlIUnZJR3h2WVdRZ2RHaGxJR05oWTJobFpDQnBibk4wWVc1alpTQnZaaUIwYUdVZ2JXOWtkV3hsTGx4dUlDQWdJQ0FnSUNBZ0lDQWdZMjl1YzNRZ1kyRmphR1ZrSUQwZ1kyOXNiR1ZqZEdsdmJpNWpZV05vWlM1dGIyUjFiR1Z6VzJKaGMyVk5iMlIxYkdWT1lXMWxYVHRjYmlBZ0lDQWdJQ0FnSUNBZ0lHbG1JQ2hqWVdOb1pXUWdKaVlnWTJGamFHVmtMbU52WkdVZ1BUMDlJQ2RtZFc1amRHbHZiaWNwSUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCa1pXWmxjbkpsWkM1eVpYTnZiSFpsS0c1bGR5QnFjMlV1WTI5dWMzUnlkV04wYjNKekxrMXZaSFZzWlNna1pXeGxiV1Z1ZEN3Z1ltRnpaVTF2WkhWc1pVNWhiV1VzSUdOdmJHeGxZM1JwYjI0cEtUdGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnlaWFIxY200Z2RISjFaVHNnTHk4Z1kyOXVkR2x1ZFdVZ2JHOXZjRnh1SUNBZ0lDQWdJQ0FnSUNBZ2ZWeHVYRzRnSUNBZ0lDQWdJQ0FnSUNCc1pYUWdZblZ6ZEZOMVptWnBlQ0E5SUNjbk8xeHVJQ0FnSUNBZ0lDQWdJQ0FnYVdZZ0tHcHpaUzVqYjNKbExtTnZibVpwWnk1blpYUW9KMlZ1ZG1seWIyNXRaVzUwSnlrZ1BUMDlJQ2R3Y205a2RXTjBhVzl1SnlBbUpseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHcHpaUzVqYjNKbExtTnZibVpwWnk1blpYUW9KMkoxYzNSR2FXeGxjeWNwSUNZbVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2FuTmxMbU52Y21VdVkyOXVabWxuTG1kbGRDZ25ZMkZqYUdWVWIydGxiaWNwWEc0Z0lDQWdJQ0FnSUNBZ0lDQXBJSHRjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JpZFhOMFUzVm1abWw0SUQwZ0p5MWlkWE4wWHljZ0t5QnFjMlV1WTI5eVpTNWpiMjVtYVdjdVoyVjBLQ2RqWVdOb1pWUnZhMlZ1SnlrN1hHNGdJQ0FnSUNBZ0lDQWdJQ0I5WEc1Y2JpQWdJQ0FnSUNBZ0lDQWdJQzh2SUZSeWVTQjBieUJzYjJGa0lIUm9aU0J0YjJSMWJHVWdabWxzWlNCbWNtOXRJSFJvWlNCelpYSjJaWEl1WEc0Z0lDQWdJQ0FnSUNBZ0lDQmpiMjV6ZENCbWFXeGxSWGgwWlc1emFXOXVJRDBnYW5ObExtTnZjbVV1WTI5dVptbG5MbWRsZENnblpHVmlkV2NuS1NBaFBUMGdKMFJGUWxWSEp5QS9JQ2N1YldsdUxtcHpKeUE2SUNjdWFuTW5PMXh1SUNBZ0lDQWdJQ0FnSUNBZ1kyOXVjM1FnZFhKc0lEMGdZMjlzYkdWamRHbHZiaTV1WVcxbGMzQmhZMlV1YzI5MWNtTmxJQ3NnSnk4bklDc2dZMjlzYkdWamRHbHZiaTV1WVcxbElDc2dKeThuSUNzZ2JtRnRaU0FySUdKMWMzUlRkV1ptYVhnZ0t5Qm1hV3hsUlhoMFpXNXphVzl1TzF4dVhHNGdJQ0FnSUNBZ0lDQWdJQ0IzYVc1a2IzY3VjbVZ4ZFdseVpTaGJkWEpzWFN3Z0tDa2dQVDRnZTF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdsbUlDaGpiMnhzWldOMGFXOXVMbU5oWTJobExtMXZaSFZzWlhOYlltRnpaVTF2WkhWc1pVNWhiV1ZkSUQwOVBTQjFibVJsWm1sdVpXUXBJSHRjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2RHaHliM2NnYm1WM0lFVnljbTl5S0NkTmIyUjFiR1VnWENJbklDc2dibUZ0WlNBcklDZGNJaUIzWVhOdVhGd25kQ0JrWldacGJtVmtJR052Y25KbFkzUnNlUzRnUTJobFkyc2dkR2hsSUcxdlpIVnNaU0JqYjJSbElHWnZjaUFuWEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FySUNkbWRYSjBhR1Z5SUhSeWIzVmliR1Z6YUc5dmRHbHVaeTRuS1R0Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCOVhHNWNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQXZMeUJWYzJVZ2RHaGxJSE5zYVdObElHMWxkR2h2WkNCbWIzSWdZMjl3ZVdsdVp5QjBhR1VnWVhKeVlYa3VJRnh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR052Ym5OMElHUmxjR1Z1WkdWdVkybGxjeUE5SUdOdmJHeGxZM1JwYjI0dVkyRmphR1V1Ylc5a2RXeGxjMXRpWVhObFRXOWtkV3hsVG1GdFpWMHVaR1Z3Wlc1a1pXNWphV1Z6TG5Oc2FXTmxLQ2s3WEc1Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCcFppQW9aR1Z3Wlc1a1pXNWphV1Z6TG14bGJtZDBhQ0E5UFQwZ01Da2dleUF2THlCdWJ5QmtaWEJsYm1SbGJtTnBaWE5jYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ1pHVm1aWEp5WldRdWNtVnpiMngyWlNodVpYY2dhbk5sTG1OdmJuTjBjblZqZEc5eWN5NU5iMlIxYkdVb0pHVnNaVzFsYm5Rc0lHSmhjMlZOYjJSMWJHVk9ZVzFsTENCamIyeHNaV04wYVc5dUtTazdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUhKbGRIVnliaUIwY25WbE95QXZMeUJqYjI1MGFXNTFaU0JzYjI5d1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZWeHVYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnVEc5aFpDQjBhR1VnWkdWd1pXNWtaVzVqYVdWeklHWnBjbk4wTGx4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdadmNpQW9iR1YwSUdsdVpHVjRJR2x1SUdSbGNHVnVaR1Z1WTJsbGN5a2dlMXh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCamIyNXpkQ0JrWlhCbGJtUmxibU41SUQwZ1pHVndaVzVrWlc1amFXVnpXMmx1WkdWNFhUdGNibHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCcFppQW9aR1Z3Wlc1a1pXNWplUzVwYm1SbGVFOW1LQ2N1WTNOekp5a2dJVDA5SUMweEtTQjdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQmZiRzloWkVOemN5aGtaWEJsYm1SbGJtTjVLVHRjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR1JsY0dWdVpHVnVZMmxsY3k1emNHeHBZMlVvYVc1a1pYZ3NJREVwTzF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnWTI5dWRHbHVkV1U3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMWNibHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBdkx5QlVhR1Z1SUdOdmJuWmxjblFnZEdobElISmxiR0YwYVhabElIQmhkR2dnZEc4Z1NsTkZibWRwYm1VdmJHbGljeUJrYVhKbFkzUnZjbmt1WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHbG1JQ2hrWlhCbGJtUmxibU41TG1sdVpHVjRUMllvSjJoMGRIQW5LU0E5UFQwZ0xURXBJSHRjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR1JsY0dWdVpHVnVZMmxsYzF0cGJtUmxlRjBnUFNCcWMyVXVZMjl5WlM1amIyNW1hV2N1WjJWMEtDZGxibWRwYm1WVmNtd25LU0FySUNjdmJHbGljeThuSUNzZ1pHVndaVzVrWlc1amVTQXJJR0oxYzNSVGRXWm1hWGdnS3lCbWFXeGxSWGgwWlc1emFXOXVPMXh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCOUlHVnNjMlVnYVdZZ0tHUmxjR1Z1WkdWdVkza3VjM1ZpYzNSeUtDMHpLU0FoUFQwZ0p5NXFjeWNwSUhzZ0x5OGdWR2hsYmlCaFpHUWdkR2hsSUdSNWJtRnRhV01nWm1sc1pTQmxlSFJsYm5OcGIyNGdkRzhnZEdobElGVlNUQzVjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR1JsY0dWdVpHVnVZMmxsYzF0cGJtUmxlRjBnS3owZ1luVnpkRk4xWm1acGVDQXJJR1pwYkdWRmVIUmxibk5wYjI0N1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSDFjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I5WEc1Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCM2FXNWtiM2N1Y21WeGRXbHlaU2hrWlhCbGJtUmxibU5wWlhNc0lDZ3BJRDArSUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdaR1ZtWlhKeVpXUXVjbVZ6YjJ4MlpTaHVaWGNnYW5ObExtTnZibk4wY25WamRHOXljeTVOYjJSMWJHVW9KR1ZzWlcxbGJuUXNJR0poYzJWTmIyUjFiR1ZPWVcxbExDQmpiMnhzWldOMGFXOXVLU2s3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlNrN1hHNGdJQ0FnSUNBZ0lDQWdJQ0I5S1R0Y2JpQWdJQ0FnSUNBZ2ZTQmpZWFJqYUNBb1pYaGpaWEIwYVc5dUtTQjdYRzRnSUNBZ0lDQWdJQ0FnSUNCa1pXWmxjbkpsWkM1eVpXcGxZM1FvWlhoalpYQjBhVzl1S1R0Y2JpQWdJQ0FnSUNBZ2ZWeHVYRzRnSUNBZ0lDQWdJSEpsZEhWeWJpQmtaV1psY25KbFpDNXdjbTl0YVhObEtDazdYRzRnSUNBZ2ZUdGNibHh1ZlNrb2FuTmxMbU52Y21VdWJXOWtkV3hsWDJ4dllXUmxjaWs3WEc0aUxDSXZLaUF0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMVnh1SUhCdmJIbG1hV3hzY3k1cWN5QXlNREUyTFRBMUxURTNYRzRnUjJGdFltbHZJRWR0WWtoY2JpQm9kSFJ3T2k4dmQzZDNMbWRoYldKcGJ5NWtaVnh1SUVOdmNIbHlhV2RvZENBb1l5a2dNakF4TmlCSFlXMWlhVzhnUjIxaVNGeHVJRkpsYkdWaGMyVmtJSFZ1WkdWeUlIUm9aU0JIVGxVZ1IyVnVaWEpoYkNCUWRXSnNhV01nVEdsalpXNXpaU0FvVm1WeWMybHZiaUF5S1Z4dUlGdG9kSFJ3T2k4dmQzZDNMbWR1ZFM1dmNtY3ZiR2xqWlc1elpYTXZaM0JzTFRJdU1DNW9kRzFzWFZ4dUlDMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdFhHNGdLaTljYmx4dUx5b3FYRzRnS2lCS1UwVWdVRzlzZVdacGJHeHpYRzRnS2x4dUlDb2dVbVZ4ZFdseVpXUWdjRzlzZVdacGJHeHpJR1p2Y2lCamIyMXdZWFJwWW1sc2FYUjVJR0Z0YjI1bklHOXNaQ0JpY205M2MyVnljeTVjYmlBcVhHNGdLaUJBYlc5a2RXeGxJRXBUUlM5RGIzSmxMM0J2YkhsbWFXeHNjMXh1SUNvdlhHNG9ablZ1WTNScGIyNGdLQ2tnZTF4dVhHNGdJQ0FnSjNWelpTQnpkSEpwWTNRbk8xeHVYRzRnSUNBZ0x5OGdTVzUwWlhKdVpYUWdSWGh3Ykc5eVpYSWdaRzlsY3lCdWIzUWdjM1Z3Y0c5eWRDQjBhR1VnYjNKcFoybHVJSEJ5YjNCbGNuUjVJRzltSUhSb1pTQjNhVzVrYjNjdWJHOWpZWFJwYjI0Z2IySnFaV04wTGx4dUlDQWdJQzh2SUh0QWJHbHVheUJvZEhSd09pOHZkRzl6WW05MWNtNHVZMjl0TDJFdFptbDRMV1p2Y2kxM2FXNWtiM2N0Ykc5allYUnBiMjR0YjNKcFoybHVMV2x1TFdsdWRHVnlibVYwTFdWNGNHeHZjbVZ5ZlZ4dUlDQWdJR2xtSUNnaGQybHVaRzkzTG14dlkyRjBhVzl1TG05eWFXZHBiaWtnZTF4dUlDQWdJQ0FnSUNCM2FXNWtiM2N1Ykc5allYUnBiMjR1YjNKcFoybHVJRDBnZDJsdVpHOTNMbXh2WTJGMGFXOXVMbkJ5YjNSdlkyOXNJQ3NnSnk4dkp5QXJYRzRnSUNBZ0lDQWdJQ0FnSUNCM2FXNWtiM2N1Ykc5allYUnBiMjR1YUc5emRHNWhiV1VnS3lBb2QybHVaRzkzTG14dlkyRjBhVzl1TG5CdmNuUWdQeUFuT2ljZ0t5QjNhVzVrYjNjdWJHOWpZWFJwYjI0dWNHOXlkQ0E2SUNjbktUdGNiaUFnSUNCOVhHNWNiaUFnSUNBdkx5QkVZWFJsTG01dmR5QnRaWFJvYjJRZ2NHOXNlV1pwYkd4Y2JpQWdJQ0F2THlCN1FHeHBibXNnYUhSMGNITTZMeTlrWlhabGJHOXdaWEl1Ylc5NmFXeHNZUzV2Y21jdlpXNHRWVk12Wkc5amN5OVhaV0l2U21GMllWTmpjbWx3ZEM5U1pXWmxjbVZ1WTJVdlIyeHZZbUZzWDA5aWFtVmpkSE12UkdGMFpTOXViM2Q5WEc0Z0lDQWdhV1lnS0NGRVlYUmxMbTV2ZHlrZ2UxeHVJQ0FnSUNBZ0lDQkVZWFJsTG01dmR5QTlJR1oxYm1OMGFXOXVJRzV2ZHlncElIdGNiaUFnSUNBZ0lDQWdJQ0FnSUhKbGRIVnliaUJ1WlhjZ1JHRjBaU2dwTG1kbGRGUnBiV1VvS1R0Y2JpQWdJQ0FnSUNBZ2ZUdGNiaUFnSUNCOVhHNWNibjBwS0NrN1hHNWNibHh1SWl3aUx5b2dMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMWNiaUJ5WldkcGMzUnllUzVxY3lBeU1ERTJMVEE1TFRBNFhHNGdSMkZ0WW1sdklFZHRZa2hjYmlCb2RIUndPaTh2ZDNkM0xtZGhiV0pwYnk1a1pWeHVJRU52Y0hseWFXZG9kQ0FvWXlrZ01qQXhOaUJIWVcxaWFXOGdSMjFpU0Z4dUlGSmxiR1ZoYzJWa0lIVnVaR1Z5SUhSb1pTQkhUbFVnUjJWdVpYSmhiQ0JRZFdKc2FXTWdUR2xqWlc1elpTQW9WbVZ5YzJsdmJpQXlLVnh1SUZ0b2RIUndPaTh2ZDNkM0xtZHVkUzV2Y21jdmJHbGpaVzV6WlhNdlozQnNMVEl1TUM1b2RHMXNYVnh1SUMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0WEc0Z0tpOWNibHh1YW5ObExtTnZjbVV1Y21WbmFYTjBjbmtnUFNCcWMyVXVZMjl5WlM1eVpXZHBjM1J5ZVNCOGZDQjdmVHRjYmx4dUx5b3FYRzRnS2lCS1V5QkZibWRwYm1VZ1VtVm5hWE4wY25sY2JpQXFYRzRnS2lCVWFHbHpJRzlpYW1WamRDQmpiMjUwWVdsdWN5QnpkSEpwYm1jZ1pHRjBZU0IwYUdGMElHOTBhR1Z5SUhObFkzUnBiMjV6SUc5bUlIUm9aU0JsYm1kcGJtVWdibVZsWkNCcGJpQnZjbVJsY2lCMGJ5QnZjR1Z5WVhSbElHTnZjbkpsWTNSc2VTNWNiaUFxWEc0Z0tpQkFiVzlrZFd4bElFcFRSUzlEYjNKbEwzSmxaMmx6ZEhKNVhHNGdLaTljYmlobWRXNWpkR2x2YmlBb1pYaHdiM0owY3lrZ2UxeHVYRzRnSUNBZ0ozVnpaU0J6ZEhKcFkzUW5PMXh1WEc0Z0lDQWdMeW9xWEc0Z0lDQWdJQ29nUTI5dWRHRnBibk1nZEdobElISmxaMmx6ZEhKNUlIWmhiSFZsY3k1Y2JpQWdJQ0FnS2x4dUlDQWdJQ0FxSUVCMGVYQmxJSHRQWW1wbFkzUmJYWDFjYmlBZ0lDQWdLaTljYmlBZ0lDQmpiMjV6ZENCeVpXZHBjM1J5ZVNBOUlGdGRPMXh1WEc0Z0lDQWdMeW9xWEc0Z0lDQWdJQ29nVTJWMElHRWdkbUZzZFdVZ2FXNGdkR2hsSUhKbFoybHpkSEo1TGx4dUlDQWdJQ0FxWEc0Z0lDQWdJQ29nUUhCaGNtRnRJSHRUZEhKcGJtZDlJRzVoYldVZ1EyOXVkR0ZwYm5NZ2RHaGxJRzVoYldVZ2IyWWdkR2hsSUdWdWRISjVJSFJ2SUdKbElHRmtaR1ZrTGx4dUlDQWdJQ0FxSUVCd1lYSmhiU0I3S24wZ2RtRnNkV1VnVkdobElIWmhiSFZsSUhSdklHSmxJSGR5YVhSMFpXNGdhVzRnZEdobElISmxaMmx6ZEhKNUxseHVJQ0FnSUNBcUwxeHVJQ0FnSUdWNGNHOXlkSE11YzJWMElEMGdablZ1WTNScGIyNGdLRzVoYldVc0lIWmhiSFZsS1NCN1hHNGdJQ0FnSUNBZ0lDOHZJRWxtSUdFZ2NtVm5hWE4wY25rZ1pXNTBjbmtnZDJsMGFDQjBhR1VnYzJGdFpTQnVZVzFsSUdWNGFYTjBjeUJoYkhKbFlXUjVJSFJvWlNCbWIyeHNiM2RwYm1jZ1kyOXVjMjlzWlNCM1lYSnVhVzVuSUhkcGJHeGNiaUFnSUNBZ0lDQWdMeThnYVc1bWIzSnRJR1JsZG1Wc2IzQmxjbk1nZEdoaGRDQjBhR1Y1SUdGeVpTQnZkbVZ5ZDNKcGRHbHVaeUJoYmlCbGVHbHpkR2x1WnlCMllXeDFaU3dnYzI5dFpYUm9hVzVuSUhWelpXWjFiQ0IzYUdWdUlHUmxZblZuWjJsdVp5NWNiaUFnSUNBZ0lDQWdhV1lnS0hKbFoybHpkSEo1VzI1aGJXVmRJQ0U5UFNCMWJtUmxabWx1WldRcElIdGNiaUFnSUNBZ0lDQWdJQ0FnSUdwelpTNWpiM0psTG1SbFluVm5MbmRoY200b0oxUm9aU0J5WldkcGMzUnllU0IyWVd4MVpTQjNhWFJvSUhSb1pTQnVZVzFsSUZ3aUp5QXJJRzVoYldVZ0t5QW5YQ0lnZDJsc2JDQmlaU0J2ZG1WeWQzSnBkSFJsYmk0bktUdGNiaUFnSUNBZ0lDQWdmVnh1WEc0Z0lDQWdJQ0FnSUhKbFoybHpkSEo1VzI1aGJXVmRJRDBnZG1Gc2RXVTdYRzRnSUNBZ2ZUdGNibHh1SUNBZ0lDOHFLbHh1SUNBZ0lDQXFJRWRsZENCaElIWmhiSFZsSUdaeWIyMGdkR2hsSUhKbFoybHpkSEo1TGx4dUlDQWdJQ0FxWEc0Z0lDQWdJQ29nUUhCaGNtRnRJSHRUZEhKcGJtZDlJRzVoYldVZ1ZHaGxJRzVoYldVZ2IyWWdkR2hsSUdWdWRISjVJSFpoYkhWbElIUnZJR0psSUhKbGRIVnlibVZrTGx4dUlDQWdJQ0FxWEc0Z0lDQWdJQ29nUUhKbGRIVnlibk1nZXlwOUlGSmxkSFZ5Ym5NZ2RHaGxJSFpoYkhWbElIUm9ZWFFnYldGMFkyaGxjeUIwYUdVZ2JtRnRaUzVjYmlBZ0lDQWdLaTljYmlBZ0lDQmxlSEJ2Y25SekxtZGxkQ0E5SUdaMWJtTjBhVzl1SUNodVlXMWxLU0I3WEc0Z0lDQWdJQ0FnSUhKbGRIVnliaUJ5WldkcGMzUnllVnR1WVcxbFhUdGNiaUFnSUNCOU8xeHVYRzRnSUNBZ0x5b3FYRzRnSUNBZ0lDb2dRMmhsWTJzZ2RHaGxJR04xY25KbGJuUWdZMjl1ZEdWdWRDQnZaaUIwYUdVZ2NtVm5hWE4wY25rZ2IySnFaV04wTGx4dUlDQWdJQ0FxWEc0Z0lDQWdJQ29nVkdocGN5QnRaWFJvYjJRZ2FYTWdiMjVzZVNCaGRtRnBiR0ZpYkdVZ2QyaGxiaUIwYUdVZ1pXNW5hVzVsSUdWdWRtbHliMjV0Wlc1MElHbHpJSFIxY201bFpDQnBiblJ2SUdSbGRtVnNiM0J0Wlc1MExseHVJQ0FnSUNBcUwxeHVJQ0FnSUdWNGNHOXlkSE11WkdWaWRXY2dQU0JtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnSUNBZ0lHbG1JQ2hxYzJVdVkyOXlaUzVqYjI1bWFXY3VaMlYwS0NkbGJuWnBjbTl1YldWdWRDY3BJRDA5UFNBblpHVjJaV3h2Y0cxbGJuUW5LU0I3WEc0Z0lDQWdJQ0FnSUNBZ0lDQnFjMlV1WTI5eVpTNWtaV0oxWnk1c2IyY29KMUpsWjJsemRISjVJRTlpYW1WamREb25MQ0J5WldkcGMzUnllU2s3WEc0Z0lDQWdJQ0FnSUgwZ1pXeHpaU0I3WEc0Z0lDQWdJQ0FnSUNBZ0lDQjBhSEp2ZHlCdVpYY2dSWEp5YjNJb0oxUm9hWE1nWm5WdVkzUnBiMjRnYVhNZ2JtOTBJR0ZzYkc5M1pXUWdhVzRnWVNCd2NtOWtkV04wYVc5dUlHVnVkbWx5YjI1dFpXNTBMaWNwTzF4dUlDQWdJQ0FnSUNCOVhHNGdJQ0FnZlR0Y2JseHVmU2tvYW5ObExtTnZjbVV1Y21WbmFYTjBjbmtwTzF4dUlpd2lMeW9nTFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzFjY2x4dUlISmxjWFZwY21VdWFuTWdNakF4Tnkwd015MHlPRnh5WEc0Z1IyRnRZbWx2SUVkdFlraGNjbHh1SUdoMGRIQTZMeTkzZDNjdVoyRnRZbWx2TG1SbFhISmNiaUJEYjNCNWNtbG5hSFFnS0dNcElESXdNVGNnUjJGdFltbHZJRWR0WWtoY2NseHVJRkpsYkdWaGMyVmtJSFZ1WkdWeUlIUm9aU0JIVGxVZ1IyVnVaWEpoYkNCUWRXSnNhV01nVEdsalpXNXpaU0FvVm1WeWMybHZiaUF5S1Z4eVhHNGdXMmgwZEhBNkx5OTNkM2N1WjI1MUxtOXlaeTlzYVdObGJuTmxjeTluY0d3dE1pNHdMbWgwYld4ZFhISmNiaUF0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMVnh5WEc0Z0tpOWNjbHh1WEhKY2JpOHFLbHh5WEc0Z0tpQkJjM2x1WTJoeWIyNXZkWE1nVFc5a2RXeGxJRXh2WVdScGJtZGNjbHh1SUNwY2NseHVJQ29nVkdocGN5QnRiMlIxYkdVZ2FYTWdZU0JtYjNKcklHOW1JRkpsY1hWcGNtVktVeUIzYVhSb2IzVjBJSFJvWlNCQlRVUWdablZ1WTNScGIyNWhiR2wwZVM0Z1ZHaGxJR2RzYjJKaGJDQmNJbVJsWm1sdVpWd2lJRzFsZEdodlpDQnBjeUJ5WlcxdmRtVmtJR0Z6WEhKY2JpQXFJR2wwSjNNZ2JtOTBJRzVsWTJWemMyRnllU0JpZVNCS1V5QkZibWRwYm1VdVhISmNiaUFxWEhKY2JpQXFJSHRBYkdsdWF5Qm9kSFJ3Y3pvdkwyZHBkR2gxWWk1amIyMHZjbVZ4ZFdseVpXcHpMM0psY1hWcGNtVnFjMzFjY2x4dUlDcGNjbHh1SUNvZ1RtOTBJSFZ6YVc1bklITjBjbWxqZERvZ2RXNWxkbVZ1SUhOMGNtbGpkQ0J6ZFhCd2IzSjBJR2x1SUdKeWIzZHpaWEp6TENBak16a3lMQ0JoYm1RZ1kyRjFjMlZ6SUhCeWIySnNaVzF6SUhkcGRHZ2djbVZ4ZFdseVpXcHpMbVY0WldNb0tTOTBjbUZ1YzNCcGJHVnlYSEpjYmlBcUlIQnNkV2RwYm5NZ2RHaGhkQ0J0WVhrZ2JtOTBJR0psSUhOMGNtbGpkQzVjY2x4dUlDb3ZYSEpjYmlobWRXNWpkR2x2YmlBb0tTQjdYSEpjYmx4eVhHNGdJQ0FnTHk4Z0xTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdFhISmNiaUFnSUNBdkx5QldRVkpKUVVKTVJWTmNjbHh1SUNBZ0lDOHZJQzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMU0JjY2x4dVhISmNiaUFnSUNCM2FXNWtiM2N1Y21WeGRXbHlaV3B6SUQwZ2RXNWtaV1pwYm1Wa08xeHlYRzRnSUNBZ2QybHVaRzkzTG5KbGNYVnBjbVVnUFNCMWJtUmxabWx1WldRN1hISmNibHh5WEc0Z0lDQWdiR1YwSUhKbGNUdGNjbHh1SUNBZ0lHeGxkQ0J6TzF4eVhHNGdJQ0FnYkdWMElHaGxZV1E3WEhKY2JpQWdJQ0JzWlhRZ1ltRnpaVVZzWlcxbGJuUTdYSEpjYmlBZ0lDQnNaWFFnWkdGMFlVMWhhVzQ3WEhKY2JpQWdJQ0JzWlhRZ2MzSmpPMXh5WEc0Z0lDQWdiR1YwSUdsdWRHVnlZV04wYVhabFUyTnlhWEIwTzF4eVhHNGdJQ0FnYkdWMElHMWhhVzVUWTNKcGNIUTdYSEpjYmlBZ0lDQnNaWFFnYzNWaVVHRjBhRHRjY2x4dUlDQWdJR3hsZENCMlpYSnphVzl1SUQwZ0p6SXVNUzR5TWljN1hISmNiaUFnSUNCc1pYUWdhbk5UZFdabWFYaFNaV2RGZUhBZ1BTQXZYRnd1YW5Na0x6dGNjbHh1SUNBZ0lHeGxkQ0JqZFhKeVJHbHlVbVZuUlhod0lEMGdMMTVjWEM1Y1hDOHZPMXh5WEc0Z0lDQWdiR1YwSUc5d0lEMGdUMkpxWldOMExuQnliM1J2ZEhsd1pUdGNjbHh1SUNBZ0lHeGxkQ0J2YzNSeWFXNW5JRDBnYjNBdWRHOVRkSEpwYm1jN1hISmNiaUFnSUNCc1pYUWdhR0Z6VDNkdUlEMGdiM0F1YUdGelQzZHVVSEp2Y0dWeWRIazdYSEpjYmlBZ0lDQnNaWFFnYVhOQ2NtOTNjMlZ5SUQwZ0lTRW9kSGx3Wlc5bUlIZHBibVJ2ZHlBaFBUMGdKM1Z1WkdWbWFXNWxaQ2NnSmlZZ2RIbHdaVzltSUc1aGRtbG5ZWFJ2Y2lBaFBUMGdKM1Z1WkdWbWFXNWxaQ2NnSmlZZ2QybHVaRzkzTG1SdlkzVnRaVzUwS1R0Y2NseHVJQ0FnSUd4bGRDQnBjMWRsWWxkdmNtdGxjaUE5SUNGcGMwSnliM2R6WlhJZ0ppWWdkSGx3Wlc5bUlHbHRjRzl5ZEZOamNtbHdkSE1nSVQwOUlDZDFibVJsWm1sdVpXUW5PMXh5WEc0Z0lDQWdMeThnVUZNeklHbHVaR2xqWVhSbGN5QnNiMkZrWldRZ1lXNWtJR052YlhCc1pYUmxMQ0JpZFhRZ2JtVmxaQ0IwYnlCM1lXbDBJR1p2Y2lCamIyMXdiR1YwSUhOd1pXTnBabWxqWVd4c2VTNGdVMlZ4ZFdWdVkyVWdhWE1nSjJ4dllXUnBibWNuTENBbmJHOWhaR1ZrSnl3Z1hISmNiaUFnSUNBdkx5QmxlR1ZqZFhScGIyNGdkR2hsYmlBblkyOXRjR3hsZEdVbkxpQlVhR1VnVlVFZ1kyaGxZMnNnYVhNZ2RXNW1iM0owZFc1aGRHVXNJR0oxZENCdWIzUWdjM1Z5WlNCb2IzY2dkRzhnWm1WaGRIVnlaU0IwWlhOMElIY3ZieUJqWVhWemFXNW5JSEJsY21ZZ2FYTnpkV1Z6TGx4eVhHNGdJQ0FnYkdWMElISmxZV1I1VW1WblJYaHdJRDBnYVhOQ2NtOTNjMlZ5SUNZbUlHNWhkbWxuWVhSdmNpNXdiR0YwWm05eWJTQTlQVDBnSjFCTVFWbFRWRUZVU1U5T0lETW5JRDhnTDE1amIyMXdiR1YwWlNRdklEb2dMMTRvWTI5dGNHeGxkR1Y4Ykc5aFpHVmtLU1F2TzF4eVhHNGdJQ0FnYkdWMElHUmxaa052Ym5SbGVIUk9ZVzFsSUQwZ0oxOG5PMXh5WEc0Z0lDQWdMeThnVDJnZ2RHaGxJSFJ5WVdkbFpIa3NJR1JsZEdWamRHbHVaeUJ2Y0dWeVlTNGdVMlZsSUhSb1pTQjFjMkZuWlNCdlppQnBjMDl3WlhKaElHWnZjaUJ5WldGemIyNHVYSEpjYmlBZ0lDQnNaWFFnYVhOUGNHVnlZU0E5SUhSNWNHVnZaaUJ2Y0dWeVlTQWhQVDBnSjNWdVpHVm1hVzVsWkNjZ0ppWWdiM0JsY21FdWRHOVRkSEpwYm1jb0tTQTlQVDBnSjF0dlltcGxZM1FnVDNCbGNtRmRKenRjY2x4dUlDQWdJR3hsZENCamIyNTBaWGgwY3lBOUlIdDlPMXh5WEc0Z0lDQWdiR1YwSUdObVp5QTlJSHQ5TzF4eVhHNGdJQ0FnYkdWMElHZHNiMkpoYkVSbFpsRjFaWFZsSUQwZ1cxMDdYSEpjYmlBZ0lDQnNaWFFnZFhObFNXNTBaWEpoWTNScGRtVWdQU0JtWVd4elpUdGNjbHh1WEhKY2JpQWdJQ0F2THlBdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMxY2NseHVJQ0FnSUM4dklFWlZUa05VU1U5T1UxeHlYRzRnSUNBZ0x5OGdMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRJRnh5WEc1Y2NseHVJQ0FnSUM4cUtseHlYRzRnSUNBZ0lDb2dRMmhsWTJzZ2QyaGxkR2hsY2lCMllXeDFaU0JwY3lCaElHWjFibU4wYVc5dUxseHlYRzRnSUNBZ0lDcGNjbHh1SUNBZ0lDQXFJRUJ3WVhKaGJTQjdLbjBnYVhRZ1ZtRnNkV1VnZEc4Z1ltVWdZMmhsWTJ0bFpDNWNjbHh1SUNBZ0lDQXFYSEpjYmlBZ0lDQWdLaUJBY21WMGRYSnVJSHRpYjI5c1pXRnVmU0JTWlhSMWNtNXpJSFJvWlNCMllXeHBaR0YwYVc5dUlISmxjM1ZzZEM1Y2NseHVJQ0FnSUNBcUwxeHlYRzRnSUNBZ1puVnVZM1JwYjI0Z2FYTkdkVzVqZEdsdmJpaHBkQ2tnZTF4eVhHNGdJQ0FnSUNBZ0lISmxkSFZ5YmlCdmMzUnlhVzVuTG1OaGJHd29hWFFwSUQwOVBTQW5XMjlpYW1WamRDQkdkVzVqZEdsdmJsMG5PMXh5WEc0Z0lDQWdmVnh5WEc1Y2NseHVJQ0FnSUM4cUtseHlYRzRnSUNBZ0lDb2dRMmhsWTJzZ2QyaGxkR2hsY2lCMllXeDFaU0JwY3lCaGJpQmhjbkpoZVM1Y2NseHVJQ0FnSUNBcVhISmNiaUFnSUNBZ0tpQkFjR0Z5WVcwZ2V5cDlJR2wwSUZaaGJIVmxJSFJ2SUdKbElHTm9aV05yWldRdVhISmNiaUFnSUNBZ0tseHlYRzRnSUNBZ0lDb2dRSEpsZEhWeWJpQjdZbTl2YkdWaGJuMGdVbVYwZFhKdWN5QjBhR1VnZG1Gc2FXUmhkR2x2YmlCeVpYTjFiSFF1WEhKY2JpQWdJQ0FnS2k5Y2NseHVJQ0FnSUdaMWJtTjBhVzl1SUdselFYSnlZWGtvYVhRcElIdGNjbHh1SUNBZ0lDQWdJQ0J5WlhSMWNtNGdiM04wY21sdVp5NWpZV3hzS0dsMEtTQTlQVDBnSjF0dlltcGxZM1FnUVhKeVlYbGRKenRjY2x4dUlDQWdJSDFjY2x4dVhISmNiaUFnSUNBdktpcGNjbHh1SUNBZ0lDQXFJRWhsYkhCbGNpQm1kVzVqZEdsdmJpQm1iM0lnYVhSbGNtRjBhVzVuSUc5MlpYSWdZVzRnWVhKeVlYa3VYSEpjYmlBZ0lDQWdLbHh5WEc0Z0lDQWdJQ29nU1dZZ2RHaGxJR1oxYm1NZ2NtVjBkWEp1Y3lCaElIUnlkV1VnZG1Gc2RXVXNJR2wwSUhkcGJHd2dZbkpsWVdzZ2IzVjBJRzltSUhSb1pTQnNiMjl3TGx4eVhHNGdJQ0FnSUNvdlhISmNiaUFnSUNCbWRXNWpkR2x2YmlCbFlXTm9LR0Z5ZVN3Z1puVnVZeWtnZTF4eVhHNGdJQ0FnSUNBZ0lHbG1JQ2hoY25rcElIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ1ptOXlJQ2hzWlhRZ2FTQTlJREE3SUdrZ1BDQmhjbmt1YkdWdVozUm9PeUJwSUNzOUlERXBJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdsbUlDaGhjbmxiYVYwZ0ppWWdablZ1WXloaGNubGJhVjBzSUdrc0lHRnllU2twSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JpY21WaGF6dGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSDFjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdmVnh5WEc0Z0lDQWdJQ0FnSUgxY2NseHVJQ0FnSUgxY2NseHVYSEpjYmlBZ0lDQXZLaXBjY2x4dUlDQWdJQ0FxSUVobGJIQmxjaUJtZFc1amRHbHZiaUJtYjNJZ2FYUmxjbUYwYVc1bklHOTJaWElnWVc0Z1lYSnlZWGtnWW1GamEzZGhjbVJ6TGx4eVhHNGdJQ0FnSUNwY2NseHVJQ0FnSUNBcUlFbG1JSFJvWlNCbWRXNWpJSEpsZEhWeWJuTWdZU0IwY25WbElIWmhiSFZsTENCcGRDQjNhV3hzSUdKeVpXRnJJRzkxZENCdlppQjBhR1VnYkc5dmNDNWNjbHh1SUNBZ0lDQXFMMXh5WEc0Z0lDQWdablZ1WTNScGIyNGdaV0ZqYUZKbGRtVnljMlVvWVhKNUxDQm1kVzVqS1NCN1hISmNiaUFnSUNBZ0lDQWdhV1lnS0dGeWVTa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQnNaWFFnYVR0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnWm05eUlDaHBJRDBnWVhKNUxteGxibWQwYUNBdElERTdJR2tnUGlBdE1Uc2dhU0F0UFNBeEtTQjdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JwWmlBb1lYSjVXMmxkSUNZbUlHWjFibU1vWVhKNVcybGRMQ0JwTENCaGNua3BLU0I3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdZbkpsWVdzN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjlYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lIMWNjbHh1SUNBZ0lDQWdJQ0I5WEhKY2JpQWdJQ0I5WEhKY2JseHlYRzRnSUNBZ0x5b3FYSEpjYmlBZ0lDQWdLaUJEYUdWamF5QjNhR1YwYUdWeUlHRnVJRzlpYW1WamRDQm9ZWE1nWVNCemNHVmphV1pwWXlCd2NtOXdaWEowZVM1Y2NseHVJQ0FnSUNBcVhISmNiaUFnSUNBZ0tpQkFjR0Z5WVcwZ2UwOWlhbVZqZEgwZ2IySnFJRTlpYW1WamRDQjBieUJpWlNCamFHVmphMlZrTGx4eVhHNGdJQ0FnSUNvZ1FIQmhjbUZ0SUh0VGRISnBibWQ5SUhCeWIzQWdVSEp2Y0dWeWRIa2dibUZ0WlNCMGJ5QmlaU0JqYUdWamEyVmtMbHh5WEc0Z0lDQWdJQ3BjY2x4dUlDQWdJQ0FxSUVCeVpYUjFjbTRnZTBKdmIyeGxZVzU5SUZKbGRIVnlibk1nZEdobElIWmhiR2xrWVhScGIyNGdjbVZ6ZFd4MExseHlYRzRnSUNBZ0lDb3ZYSEpjYmlBZ0lDQm1kVzVqZEdsdmJpQm9ZWE5RY205d0tHOWlhaXdnY0hKdmNDa2dlMXh5WEc0Z0lDQWdJQ0FnSUhKbGRIVnliaUJvWVhOUGQyNHVZMkZzYkNodlltb3NJSEJ5YjNBcE8xeHlYRzRnSUNBZ2ZWeHlYRzVjY2x4dUlDQWdJQzhxS2x4eVhHNGdJQ0FnSUNvZ1EyaGxZMnNnYVdZZ1lXNGdiMkpxWldOMElHaGhjeUJoSUhCeWIzQmxjblI1SUdGdVpDQnBaaUIwYUdGMElIQnliM0JsY25SNUlHTnZiblJoYVc1eklHRWdkSEoxZEdoNUlIWmhiSFZsTGx4eVhHNGdJQ0FnSUNwY2NseHVJQ0FnSUNBcUlFQndZWEpoYlNCN1QySnFaV04wZlNCdlltb2dUMkpxWldOMElIUnZJR0psSUdOb1pXTnJaV1F1WEhKY2JpQWdJQ0FnS2lCQWNHRnlZVzBnZTFOMGNtbHVaMzBnY0hKdmNDQlFjbTl3WlhKMGVTQnVZVzFsSUhSdklHSmxJR05vWldOclpXUXVYSEpjYmlBZ0lDQWdLbHh5WEc0Z0lDQWdJQ29nUUhKbGRIVnliaUI3UW05dmJHVmhibjBnVW1WMGRYSnVjeUIwYUdVZ2RtRnNhV1JoZEdsdmJpQnlaWE4xYkhRdVhISmNiaUFnSUNBZ0tpOWNjbHh1SUNBZ0lHWjFibU4wYVc5dUlHZGxkRTkzYmlodlltb3NJSEJ5YjNBcElIdGNjbHh1SUNBZ0lDQWdJQ0J5WlhSMWNtNGdhR0Z6VUhKdmNDaHZZbW9zSUhCeWIzQXBJQ1ltSUc5aWFsdHdjbTl3WFR0Y2NseHVJQ0FnSUgxY2NseHVYSEpjYmlBZ0lDQXZLaXBjY2x4dUlDQWdJQ0FxSUVONVkyeGxjeUJ2ZG1WeUlIQnliM0JsY25ScFpYTWdhVzRnWVc0Z2IySnFaV04wSUdGdVpDQmpZV3hzY3lCaElHWjFibU4wYVc5dUlHWnZjaUJsWVdOb0lIQnliM0JsY25SNUlIWmhiSFZsTGx4eVhHNGdJQ0FnSUNwY2NseHVJQ0FnSUNBcUlFbG1JSFJvWlNCbWRXNWpkR2x2YmlCeVpYUjFjbTV6SUdFZ2RISjFkR2g1SUhaaGJIVmxMQ0IwYUdWdUlIUm9aU0JwZEdWeVlYUnBiMjRnYVhNZ2MzUnZjSEJsWkM1Y2NseHVJQ0FnSUNBcUwxeHlYRzRnSUNBZ1puVnVZM1JwYjI0Z1pXRmphRkJ5YjNBb2IySnFMQ0JtZFc1aktTQjdYSEpjYmlBZ0lDQWdJQ0FnYkdWMElIQnliM0E3WEhKY2JpQWdJQ0FnSUNBZ1ptOXlJQ2h3Y205d0lHbHVJRzlpYWlrZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNCcFppQW9hR0Z6VUhKdmNDaHZZbW9zSUhCeWIzQXBLU0I3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCcFppQW9ablZ1WXlodlltcGJjSEp2Y0Ywc0lIQnliM0FwS1NCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnWW5KbFlXczdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I5WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJSDFjY2x4dUlDQWdJQ0FnSUNCOVhISmNiaUFnSUNCOVhISmNibHh5WEc0Z0lDQWdMeW9xWEhKY2JpQWdJQ0FnS2lCVGFXMXdiR1VnWm5WdVkzUnBiMjRnZEc4Z2JXbDRJR2x1SUhCeWIzQmxjblJwWlhNZ1puSnZiU0J6YjNWeVkyVWdhVzUwYnlCMFlYSm5aWFFzSUdKMWRDQnZibXg1SUdsbUlIUmhjbWRsZENCa2IyVnpJRzV2ZENCaGJISmxZV1I1SUdoaGRtVWdZVnh5WEc0Z0lDQWdJQ29nY0hKdmNHVnlkSGtnYjJZZ2RHaGxJSE5oYldVZ2JtRnRaUzVjY2x4dUlDQWdJQ0FxTDF4eVhHNGdJQ0FnWm5WdVkzUnBiMjRnYldsNGFXNG9kR0Z5WjJWMExDQnpiM1Z5WTJVc0lHWnZjbU5sTENCa1pXVndVM1J5YVc1blRXbDRhVzRwSUh0Y2NseHVJQ0FnSUNBZ0lDQnBaaUFvYzI5MWNtTmxLU0I3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJR1ZoWTJoUWNtOXdLSE52ZFhKalpTd2dablZ1WTNScGIyNGdLSFpoYkhWbExDQndjbTl3S1NCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnBaaUFvWm05eVkyVWdmSHdnSVdoaGMxQnliM0FvZEdGeVoyVjBMQ0J3Y205d0tTa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHbG1JQ2hrWldWd1UzUnlhVzVuVFdsNGFXNGdKaVlnZEhsd1pXOW1JSFpoYkhWbElEMDlQU0FuYjJKcVpXTjBKeUFtSmlCMllXeDFaU0FtSmx4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBaGFYTkJjbkpoZVNoMllXeDFaU2tnSmlZZ0lXbHpSblZ1WTNScGIyNG9kbUZzZFdVcElDWW1YSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0VvZG1Gc2RXVWdhVzV6ZEdGdVkyVnZaaUJTWldkRmVIQXBLU0I3WEhKY2JseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnBaaUFvSVhSaGNtZGxkRnR3Y205d1hTa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2RHRnlaMlYwVzNCeWIzQmRJRDBnZTMwN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdiV2w0YVc0b2RHRnlaMlYwVzNCeWIzQmRMQ0IyWVd4MVpTd2dabTl5WTJVc0lHUmxaWEJUZEhKcGJtZE5hWGhwYmlrN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlNCbGJITmxJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZEdGeVoyVjBXM0J5YjNCZElEMGdkbUZzZFdVN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZWeHlYRzRnSUNBZ0lDQWdJQ0FnSUNCOUtUdGNjbHh1SUNBZ0lDQWdJQ0I5WEhKY2JpQWdJQ0FnSUNBZ2NtVjBkWEp1SUhSaGNtZGxkRHRjY2x4dUlDQWdJSDFjY2x4dVhISmNiaUFnSUNBdkx5QlRhVzFwYkdGeUlIUnZJRVoxYm1OMGFXOXVMbkJ5YjNSdmRIbHdaUzVpYVc1a0xDQmlkWFFnZEdobElDZDBhR2x6SnlCdlltcGxZM1FnYVhNZ2MzQmxZMmxtYVdWa0lHWnBjbk4wTENCemFXNWpaU0JwZENCcGN5QmxZWE5wWlhJZ2RHOGdjbVZoWkM5bWFXZDFjbVVnWEhKY2JpQWdJQ0F2THlCdmRYUWdkMmhoZENBbmRHaHBjeWNnZDJsc2JDQmlaUzVjY2x4dUlDQWdJR1oxYm1OMGFXOXVJR0pwYm1Rb2IySnFMQ0JtYmlrZ2UxeHlYRzRnSUNBZ0lDQWdJSEpsZEhWeWJpQm1kVzVqZEdsdmJpQW9LU0I3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJSEpsZEhWeWJpQm1iaTVoY0hCc2VTaHZZbW9zSUdGeVozVnRaVzUwY3lrN1hISmNiaUFnSUNBZ0lDQWdmVHRjY2x4dUlDQWdJSDFjY2x4dVhISmNiaUFnSUNCbWRXNWpkR2x2YmlCelkzSnBjSFJ6S0NrZ2UxeHlYRzRnSUNBZ0lDQWdJSEpsZEhWeWJpQmtiMk4xYldWdWRDNW5aWFJGYkdWdFpXNTBjMEo1VkdGblRtRnRaU2duYzJOeWFYQjBKeWs3WEhKY2JpQWdJQ0I5WEhKY2JseHlYRzRnSUNBZ1puVnVZM1JwYjI0Z1pHVm1ZWFZzZEU5dVJYSnliM0lvWlhKeUtTQjdYSEpjYmlBZ0lDQWdJQ0FnZEdoeWIzY2daWEp5TzF4eVhHNGdJQ0FnZlZ4eVhHNWNjbHh1SUNBZ0lDOHZJRUZzYkc5M0lHZGxkSFJwYm1jZ1lTQm5iRzlpWVd3Z2RHaGhkQ0JwY3lCbGVIQnlaWE56WldRZ2FXNGdaRzkwSUc1dmRHRjBhVzl1TENCc2FXdGxJQ2RoTG1JdVl5Y3VYSEpjYmlBZ0lDQm1kVzVqZEdsdmJpQm5aWFJIYkc5aVlXd29kbUZzZFdVcElIdGNjbHh1SUNBZ0lDQWdJQ0JwWmlBb0lYWmhiSFZsS1NCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUhKbGRIVnliaUIyWVd4MVpUdGNjbHh1SUNBZ0lDQWdJQ0I5WEhKY2JpQWdJQ0FnSUNBZ2JHVjBJR2NnUFNCbmJHOWlZV3c3WEhKY2JpQWdJQ0FnSUNBZ1pXRmphQ2gyWVd4MVpTNXpjR3hwZENnbkxpY3BMQ0JtZFc1amRHbHZiaUFvY0dGeWRDa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQm5JRDBnWjF0d1lYSjBYVHRjY2x4dUlDQWdJQ0FnSUNCOUtUdGNjbHh1SUNBZ0lDQWdJQ0J5WlhSMWNtNGdaenRjY2x4dUlDQWdJSDFjY2x4dVhISmNiaUFnSUNBdktpcGNjbHh1SUNBZ0lDQXFJRU52Ym5OMGNuVmpkSE1nWVc0Z1pYSnliM0lnZDJsMGFDQmhJSEJ2YVc1MFpYSWdkRzhnWVc0Z1ZWSk1JSGRwZEdnZ2JXOXlaU0JwYm1admNtMWhkR2x2Ymk1Y2NseHVJQ0FnSUNBcVhISmNiaUFnSUNBZ0tpQkFjR0Z5WVcwZ2UxTjBjbWx1WjMwZ2FXUWdWR2hsSUdWeWNtOXlJRWxFSUhSb1lYUWdiV0Z3Y3lCMGJ5QmhiaUJKUkNCdmJpQmhJSGRsWWlCd1lXZGxMbHh5WEc0Z0lDQWdJQ29nUUhCaGNtRnRJSHRUZEhKcGJtZDlJRzF6WnlCSWRXMWhiaUJ5WldGa1lXSnNaU0JsY25KdmNpNWNjbHh1SUNBZ0lDQXFJRUJ3WVhKaGJTQjdSWEp5YjNKOUlGdGxjbkpkSUZSb1pTQnZjbWxuYVc1aGJDQmxjbkp2Y2l3Z2FXWWdkR2hsY21VZ2FYTWdiMjVsTGx4eVhHNGdJQ0FnSUNwY2NseHVJQ0FnSUNBcUlFQnlaWFIxY200Z2UwVnljbTl5ZlZ4eVhHNGdJQ0FnSUNvdlhISmNiaUFnSUNCbWRXNWpkR2x2YmlCdFlXdGxSWEp5YjNJb2FXUXNJRzF6Wnl3Z1pYSnlMQ0J5WlhGMWFYSmxUVzlrZFd4bGN5a2dlMXh5WEc0Z0lDQWdJQ0FnSUdOdmJuTjBJR1Z5Y205eUlEMGdibVYzSUVWeWNtOXlLRzF6WnlBcklDZGNYRzVvZEhSd09pOHZjbVZ4ZFdseVpXcHpMbTl5Wnk5a2IyTnpMMlZ5Y205eWN5NW9kRzFzSXljZ0t5QnBaQ2s3WEhKY2JseHlYRzRnSUNBZ0lDQWdJR1Z5Y205eUxuSmxjWFZwY21WVWVYQmxJRDBnYVdRN1hISmNiaUFnSUNBZ0lDQWdaWEp5YjNJdWNtVnhkV2x5WlUxdlpIVnNaWE1nUFNCeVpYRjFhWEpsVFc5a2RXeGxjenRjY2x4dVhISmNiaUFnSUNBZ0lDQWdhV1lnS0dWeWNpa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQmxjbkp2Y2k1dmNtbG5hVzVoYkVWeWNtOXlJRDBnWlhKeU8xeHlYRzRnSUNBZ0lDQWdJSDFjY2x4dVhISmNiaUFnSUNBZ0lDQWdjbVYwZFhKdUlHVnljbTl5TzF4eVhHNGdJQ0FnZlZ4eVhHNWNjbHh1SUNBZ0lHbG1JQ2gwZVhCbGIyWWdkMmx1Wkc5M0xuSmxjWFZwY21WcWN5QWhQVDBnSjNWdVpHVm1hVzVsWkNjcElIdGNjbHh1SUNBZ0lDQWdJQ0JwWmlBb2FYTkdkVzVqZEdsdmJpaDNhVzVrYjNjdWNtVnhkV2x5WldwektTa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQXZMeUJFYnlCdWIzUWdiM1psY25keWFYUmxJR0Z1SUdWNGFYTjBhVzVuSUhKbGNYVnBjbVZxY3lCcGJuTjBZVzVqWlM1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnY21WMGRYSnVPMXh5WEc0Z0lDQWdJQ0FnSUgxY2NseHVJQ0FnSUNBZ0lDQmpabWNnUFNCM2FXNWtiM2N1Y21WeGRXbHlaV3B6TzF4eVhHNGdJQ0FnSUNBZ0lIZHBibVJ2ZHk1eVpYRjFhWEpsYW5NZ1BTQjFibVJsWm1sdVpXUTdYSEpjYmlBZ0lDQjlYSEpjYmx4eVhHNGdJQ0FnTHk4Z1FXeHNiM2NnWm05eUlHRWdjbVZ4ZFdseVpTQmpiMjVtYVdjZ2IySnFaV04wWEhKY2JpQWdJQ0JwWmlBb2RIbHdaVzltSUhkcGJtUnZkeTV5WlhGMWFYSmxJQ0U5UFNBbmRXNWtaV1pwYm1Wa0p5QW1KaUFoYVhOR2RXNWpkR2x2YmloM2FXNWtiM2N1Y21WeGRXbHlaU2twSUh0Y2NseHVJQ0FnSUNBZ0lDQXZMeUJoYzNOMWJXVWdhWFFnYVhNZ1lTQmpiMjVtYVdjZ2IySnFaV04wTGx4eVhHNGdJQ0FnSUNBZ0lHTm1aeUE5SUhkcGJtUnZkeTV5WlhGMWFYSmxPMXh5WEc0Z0lDQWdJQ0FnSUhkcGJtUnZkeTV5WlhGMWFYSmxJRDBnZFc1a1pXWnBibVZrTzF4eVhHNGdJQ0FnZlZ4eVhHNWNjbHh1SUNBZ0lHWjFibU4wYVc5dUlHNWxkME52Ym5SbGVIUW9ZMjl1ZEdWNGRFNWhiV1VwSUh0Y2NseHVJQ0FnSUNBZ0lDQnNaWFFnYVc1RGFHVmphMHh2WVdSbFpDd2dUVzlrZFd4bExDQmpiMjUwWlhoMExDQm9ZVzVrYkdWeWN5eGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ1kyaGxZMnRNYjJGa1pXUlVhVzFsYjNWMFNXUXNYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lHTnZibVpwWnlBOUlIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQzh2SUVSbFptRjFiSFJ6TGlCRWJ5QnViM1FnYzJWMElHRWdaR1ZtWVhWc2RDQm1iM0lnYldGd1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQXZMeUJqYjI1bWFXY2dkRzhnYzNCbFpXUWdkWEFnYm05eWJXRnNhWHBsS0Nrc0lIZG9hV05vWEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBdkx5QjNhV3hzSUhKMWJpQm1ZWE4wWlhJZ2FXWWdkR2hsY21VZ2FYTWdibThnWkdWbVlYVnNkQzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUhkaGFYUlRaV052Ym1Sek9pQTNMRnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnWW1GelpWVnliRG9nSnk0dkp5eGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSEJoZEdoek9pQjdmU3hjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdKMWJtUnNaWE02SUh0OUxGeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdjR3RuY3pvZ2UzMHNYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0J6YUdsdE9pQjdmU3hjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdOdmJtWnBaem9nZTMxY2NseHVJQ0FnSUNBZ0lDQWdJQ0FnZlN4Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnY21WbmFYTjBjbmtnUFNCN2ZTeGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0x5OGdjbVZuYVhOMGNua2diMllnYW5WemRDQmxibUZpYkdWa0lHMXZaSFZzWlhNc0lIUnZJSE53WldWa1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUM4dklHTjVZMnhsSUdKeVpXRnJhVzVuSUdOdlpHVWdkMmhsYmlCc2IzUnpJRzltSUcxdlpIVnNaWE5jY2x4dUlDQWdJQ0FnSUNBZ0lDQWdMeThnWVhKbElISmxaMmx6ZEdWeVpXUXNJR0oxZENCdWIzUWdZV04wYVhaaGRHVmtMbHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQmxibUZpYkdWa1VtVm5hWE4wY25rZ1BTQjdmU3hjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdkVzVrWldaRmRtVnVkSE1nUFNCN2ZTeGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ1pHVm1VWFZsZFdVZ1BTQmJYU3hjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdaR1ZtYVc1bFpDQTlJSHQ5TEZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0IxY214R1pYUmphR1ZrSUQwZ2UzMHNYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lHSjFibVJzWlhOTllYQWdQU0I3ZlN4Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnY21WeGRXbHlaVU52ZFc1MFpYSWdQU0F4TEZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0IxYm01dmNtMWhiR2w2WldSRGIzVnVkR1Z5SUQwZ01UdGNjbHh1WEhKY2JpQWdJQ0FnSUNBZ0x5b3FYSEpjYmlBZ0lDQWdJQ0FnSUNvZ1ZISnBiWE1nZEdobElDNGdZVzVrSUM0dUlHWnliMjBnWVc0Z1lYSnlZWGtnYjJZZ2NHRjBhQ0J6WldkdFpXNTBjeTVjY2x4dUlDQWdJQ0FnSUNBZ0tseHlYRzRnSUNBZ0lDQWdJQ0FxSUVsMElIZHBiR3dnYTJWbGNDQmhJR3hsWVdScGJtY2djR0YwYUNCelpXZHRaVzUwSUdsbUlHRWdMaTRnZDJsc2JDQmlaV052YldVZ2RHaGxJR1pwY25OMElIQmhkR2dnYzJWbmJXVnVkQ3dnZEc4Z2FHVnNjQ0IzYVhSb0lHMXZaSFZzWlNCdVlXMWxYSEpjYmlBZ0lDQWdJQ0FnSUNvZ2JHOXZhM1Z3Y3l3Z2QyaHBZMmdnWVdOMElHeHBhMlVnY0dGMGFITXNJR0oxZENCallXNGdZbVVnY21WdFlYQndaV1F1SUVKMWRDQjBhR1VnWlc1a0lISmxjM1ZzZEN3Z1lXeHNJSEJoZEdoeklIUm9ZWFFnZFhObElIUm9hWE1nWm5WdVkzUnBiMjVjY2x4dUlDQWdJQ0FnSUNBZ0tpQnphRzkxYkdRZ2JHOXZheUJ1YjNKdFlXeHBlbVZrTGx4eVhHNGdJQ0FnSUNBZ0lDQXFYSEpjYmlBZ0lDQWdJQ0FnSUNvZ1RrOVVSVG9nZEdocGN5QnRaWFJvYjJRZ1RVOUVTVVpKUlZNZ2RHaGxJR2x1Y0hWMElHRnljbUY1TGx4eVhHNGdJQ0FnSUNBZ0lDQXFYSEpjYmlBZ0lDQWdJQ0FnSUNvZ1FIQmhjbUZ0SUh0QmNuSmhlWDBnWVhKNUlIUm9aU0JoY25KaGVTQnZaaUJ3WVhSb0lITmxaMjFsYm5SekxseHlYRzRnSUNBZ0lDQWdJQ0FxTDF4eVhHNGdJQ0FnSUNBZ0lHWjFibU4wYVc5dUlIUnlhVzFFYjNSektHRnllU2tnZTF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0JzWlhRZ2FTd2djR0Z5ZER0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnWm05eUlDaHBJRDBnTURzZ2FTQThJR0Z5ZVM1c1pXNW5kR2c3SUdrckt5a2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnY0dGeWRDQTlJR0Z5ZVZ0cFhUdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR2xtSUNod1lYSjBJRDA5UFNBbkxpY3BJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQmhjbmt1YzNCc2FXTmxLR2tzSURFcE8xeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdrZ0xUMGdNVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUgwZ1pXeHpaU0JwWmlBb2NHRnlkQ0E5UFQwZ0p5NHVKeWtnZTF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQzh2SUVsbUlHRjBJSFJvWlNCemRHRnlkQ3dnYjNJZ2NISmxkbWx2ZFhNZ2RtRnNkV1VnYVhNZ2MzUnBiR3dnTGk0c0lDQnJaV1Z3SUhSb1pXMGdjMjhnZEdoaGRDQjNhR1Z1SUdOdmJuWmxjblJsWkNCMGJ5QmhJSEJoZEdnZ2FYUWdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0x5OGdiV0Y1SUhOMGFXeHNJSGR2Y21zZ2QyaGxiaUJqYjI1MlpYSjBaV1FnZEc4Z1lTQndZWFJvTENCbGRtVnVJSFJvYjNWbmFDQmhjeUJoYmlCSlJDQnBkQ0JwY3lCc1pYTnpJSFJvWVc0Z2FXUmxZV3d1SUVsdUlHeGhjbWRsY2lCY2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCd2IybHVkQ0J5Wld4bFlYTmxjeXdnYldGNUlHSmxJR0psZEhSbGNpQjBieUJxZFhOMElHdHBZMnNnYjNWMElHRnVJR1Z5Y205eUxseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdsbUlDaHBJRDA5UFNBd0lIeDhJQ2hwSUQwOVBTQXhJQ1ltSUdGeWVWc3lYU0E5UFQwZ0p5NHVKeWtnZkh3Z1lYSjVXMmtnTFNBeFhTQTlQVDBnSnk0dUp5a2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JqYjI1MGFXNTFaVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjlJR1ZzYzJVZ2FXWWdLR2tnUGlBd0tTQjdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR0Z5ZVM1emNHeHBZMlVvYVNBdElERXNJRElwTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCcElDMDlJREk3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdmVnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0I5WEhKY2JpQWdJQ0FnSUNBZ2ZWeHlYRzVjY2x4dUlDQWdJQ0FnSUNBdktpcGNjbHh1SUNBZ0lDQWdJQ0FnS2lCSGFYWmxiaUJoSUhKbGJHRjBhWFpsSUcxdlpIVnNaU0J1WVcxbExDQnNhV3RsSUM0dmMyOXRaWFJvYVc1bkxDQnViM0p0WVd4cGVtVWdhWFFnZEc4Z1lTQnlaV0ZzSUc1aGJXVWdkR2hoZENCallXNGdZbVVnYldGd2NHVmtJSFJ2SUdFZ2NHRjBhQzVjY2x4dUlDQWdJQ0FnSUNBZ0tseHlYRzRnSUNBZ0lDQWdJQ0FxSUVCd1lYSmhiU0I3VTNSeWFXNW5mU0J1WVcxbElIUm9aU0J5Wld4aGRHbDJaU0J1WVcxbFhISmNiaUFnSUNBZ0lDQWdJQ29nUUhCaGNtRnRJSHRUZEhKcGJtZDlJR0poYzJWT1lXMWxJR0VnY21WaGJDQnVZVzFsSUhSb1lYUWdkR2hsSUc1aGJXVWdZWEpuSUdseklISmxiR0YwYVhabElIUnZMbHh5WEc0Z0lDQWdJQ0FnSUNBcUlFQndZWEpoYlNCN1FtOXZiR1ZoYm4wZ1lYQndiSGxOWVhBZ1lYQndiSGtnZEdobElHMWhjQ0JqYjI1bWFXY2dkRzhnZEdobElIWmhiSFZsTGlCVGFHOTFiR1FnYjI1c2VTQmlaU0JrYjI1bElHbG1JSFJvYVhNZ2JtOXliV0ZzYVhwaGRHbHZiaUJwYzF4eVhHNGdJQ0FnSUNBZ0lDQXFJR1p2Y2lCaElHUmxjR1Z1WkdWdVkza2dTVVF1WEhKY2JpQWdJQ0FnSUNBZ0lDcGNjbHh1SUNBZ0lDQWdJQ0FnS2lCQWNtVjBkWEp1SUh0VGRISnBibWQ5SUc1dmNtMWhiR2w2WldRZ2JtRnRaVnh5WEc0Z0lDQWdJQ0FnSUNBcUwxeHlYRzRnSUNBZ0lDQWdJR1oxYm1OMGFXOXVJRzV2Y20xaGJHbDZaU2h1WVcxbExDQmlZWE5sVG1GdFpTd2dZWEJ3YkhsTllYQXBJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdiR1YwSUhCclowMWhhVzRzSUcxaGNGWmhiSFZsTENCdVlXMWxVR0Z5ZEhNc0lHa3NJR29zSUc1aGJXVlRaV2R0Wlc1MExDQnNZWE4wU1c1a1pYZ3NYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JtYjNWdVpFMWhjQ3dnWm05MWJtUkpMQ0JtYjNWdVpGTjBZWEpOWVhBc0lITjBZWEpKTENCdWIzSnRZV3hwZW1Wa1FtRnpaVkJoY25SekxGeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdZbUZ6WlZCaGNuUnpJRDBnS0dKaGMyVk9ZVzFsSUNZbUlHSmhjMlZPWVcxbExuTndiR2wwS0Njdkp5a3BMRnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYldGd0lEMGdZMjl1Wm1sbkxtMWhjQ3hjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUhOMFlYSk5ZWEFnUFNCdFlYQWdKaVlnYldGd1d5Y3FKMTA3WEhKY2JseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBdkx5QkJaR3AxYzNRZ1lXNTVJSEpsYkdGMGFYWmxJSEJoZEdoekxseHlYRzRnSUNBZ0lDQWdJQ0FnSUNCcFppQW9ibUZ0WlNrZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdibUZ0WlNBOUlHNWhiV1V1YzNCc2FYUW9KeThuS1R0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHeGhjM1JKYm1SbGVDQTlJRzVoYldVdWJHVnVaM1JvSUMwZ01UdGNjbHh1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBdkx5QkpaaUIzWVc1MGFXNW5JRzV2WkdVZ1NVUWdZMjl0Y0dGMGFXSnBiR2wwZVN3Z2MzUnlhWEFnTG1weklHWnliMjBnWlc1a0lHOW1JRWxFY3k0Z1NHRjJaU0IwYnlCa2J5QjBhR2x6SUdobGNtVXNJR0Z1WkNCdWIzUWdhVzRnWEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBdkx5QnVZVzFsVkc5VmNtd2dZbVZqWVhWelpTQnViMlJsSUdGc2JHOTNjeUJsYVhSb1pYSWdMbXB6SUc5eUlHNXZiaUF1YW5NZ2RHOGdiV0Z3SUhSdklITmhiV1VnWm1sc1pTNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR2xtSUNoamIyNW1hV2N1Ym05a1pVbGtRMjl0Y0dGMElDWW1JR3B6VTNWbVptbDRVbVZuUlhod0xuUmxjM1FvYm1GdFpWdHNZWE4wU1c1a1pYaGRLU2tnZTF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJRzVoYldWYmJHRnpkRWx1WkdWNFhTQTlJRzVoYldWYmJHRnpkRWx1WkdWNFhTNXlaWEJzWVdObEtHcHpVM1ZtWm1sNFVtVm5SWGh3TENBbkp5azdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I5WEhKY2JseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnVTNSaGNuUnpJSGRwZEdnZ1lTQW5MaWNnYzI4Z2JtVmxaQ0IwYUdVZ1ltRnpaVTVoYldWY2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHbG1JQ2h1WVcxbFd6QmRMbU5vWVhKQmRDZ3dLU0E5UFQwZ0p5NG5JQ1ltSUdKaGMyVlFZWEowY3lrZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklFTnZiblpsY25RZ1ltRnpaVTVoYldVZ2RHOGdZWEp5WVhrc0lHRnVaQ0JzYjNBZ2IyWm1JSFJvWlNCc1lYTjBJSEJoY25Rc0lITnZJSFJvWVhRZ0xpQnRZWFJqYUdWeklIUm9ZWFFnSjJScGNtVmpkRzl5ZVNjZ1lXNWtJRzV2ZENCY2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCdVlXMWxJRzltSUhSb1pTQmlZWE5sVG1GdFpTZHpJRzF2WkhWc1pTNGdSbTl5SUdsdWMzUmhibU5sTENCaVlYTmxUbUZ0WlNCdlppQW5iMjVsTDNSM2J5OTBhSEpsWlNjc0lHMWhjSE1nZEc4Z1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z0oyOXVaUzkwZDI4dmRHaHlaV1V1YW5NbkxDQmlkWFFnZDJVZ2QyRnVkQ0IwYUdVZ1pHbHlaV04wYjNKNUxDQW5iMjVsTDNSM2J5Y2dabTl5SUhSb2FYTWdibTl5YldGc2FYcGhkR2x2Ymk1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0J1YjNKdFlXeHBlbVZrUW1GelpWQmhjblJ6SUQwZ1ltRnpaVkJoY25SekxuTnNhV05sS0RBc0lHSmhjMlZRWVhKMGN5NXNaVzVuZEdnZ0xTQXhLVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnVZVzFsSUQwZ2JtOXliV0ZzYVhwbFpFSmhjMlZRWVhKMGN5NWpiMjVqWVhRb2JtRnRaU2s3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCOVhISmNibHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZEhKcGJVUnZkSE1vYm1GdFpTazdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0J1WVcxbElEMGdibUZ0WlM1cWIybHVLQ2N2SnlrN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUgxY2NseHVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDOHZJRUZ3Y0d4NUlHMWhjQ0JqYjI1bWFXY2dhV1lnWVhaaGFXeGhZbXhsTGx4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0JwWmlBb1lYQndiSGxOWVhBZ0ppWWdiV0Z3SUNZbUlDaGlZWE5sVUdGeWRITWdmSHdnYzNSaGNrMWhjQ2twSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHNWhiV1ZRWVhKMGN5QTlJRzVoYldVdWMzQnNhWFFvSnk4bktUdGNjbHh1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCdmRYUmxja3h2YjNBNklHWnZjaUFvYVNBOUlHNWhiV1ZRWVhKMGN5NXNaVzVuZEdnN0lHa2dQaUF3T3lCcElDMDlJREVwSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0J1WVcxbFUyVm5iV1Z1ZENBOUlHNWhiV1ZRWVhKMGN5NXpiR2xqWlNnd0xDQnBLUzVxYjJsdUtDY3ZKeWs3WEhKY2JseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdsbUlDaGlZWE5sVUdGeWRITXBJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z1JtbHVaQ0IwYUdVZ2JHOXVaMlZ6ZENCaVlYTmxUbUZ0WlNCelpXZHRaVzUwSUcxaGRHTm9JR2x1SUhSb1pTQmpiMjVtYVdjdUlGTnZMQ0JrYnlCcWIybHVjeUJ2YmlCMGFHVWdZbWxuWjJWemRDQjBieUJjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z2MyMWhiR3hsYzNRZ2JHVnVaM1JvY3lCdlppQmlZWE5sVUdGeWRITXVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR1p2Y2lBb2FpQTlJR0poYzJWUVlYSjBjeTVzWlc1bmRHZzdJR29nUGlBd095QnFJQzA5SURFcElIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUcxaGNGWmhiSFZsSUQwZ1oyVjBUM2R1S0cxaGNDd2dZbUZ6WlZCaGNuUnpMbk5zYVdObEtEQXNJR29wTG1wdmFXNG9KeThuS1NrN1hISmNibHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0x5OGdZbUZ6WlU1aGJXVWdjMlZuYldWdWRDQm9ZWE1nWTI5dVptbG5MQ0JtYVc1a0lHbG1JR2wwSUdoaGN5QnZibVVnWm05eUlIUm9hWE1nYm1GdFpTNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdsbUlDaHRZWEJXWVd4MVpTa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJRzFoY0ZaaGJIVmxJRDBnWjJWMFQzZHVLRzFoY0ZaaGJIVmxMQ0J1WVcxbFUyVm5iV1Z1ZENrN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2FXWWdLRzFoY0ZaaGJIVmxLU0I3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDOHZJRTFoZEdOb0xDQjFjR1JoZEdVZ2JtRnRaU0IwYnlCMGFHVWdibVYzSUhaaGJIVmxMbHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCbWIzVnVaRTFoY0NBOUlHMWhjRlpoYkhWbE8xeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JtYjNWdVpFa2dQU0JwTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQmljbVZoYXlCdmRYUmxja3h2YjNBN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZWeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCOVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlZ4eVhHNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBdkx5QkRhR1ZqYXlCbWIzSWdZU0J6ZEdGeUlHMWhjQ0J0WVhSamFDd2dZblYwSUdwMWMzUWdhRzlzWkNCdmJpQjBieUJwZEN3Z2FXWWdkR2hsY21VZ2FYTWdZU0J6YUc5eWRHVnlJSE5sWjIxbGJuUWdiV0YwWTJnZ2JHRjBaWElnYVc0Z1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z1lTQnRZWFJqYUdsdVp5QmpiMjVtYVdjc0lIUm9aVzRnWm1GMmIzSWdiM1psY2lCMGFHbHpJSE4wWVhJZ2JXRndMbHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHbG1JQ2doWm05MWJtUlRkR0Z5VFdGd0lDWW1JSE4wWVhKTllYQWdKaVlnWjJWMFQzZHVLSE4wWVhKTllYQXNJRzVoYldWVFpXZHRaVzUwS1NrZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQm1iM1Z1WkZOMFlYSk5ZWEFnUFNCblpYUlBkMjRvYzNSaGNrMWhjQ3dnYm1GdFpWTmxaMjFsYm5RcE8xeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnpkR0Z5U1NBOUlHazdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZWeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdmVnh5WEc1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHbG1JQ2doWm05MWJtUk5ZWEFnSmlZZ1ptOTFibVJUZEdGeVRXRndLU0I3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdabTkxYm1STllYQWdQU0JtYjNWdVpGTjBZWEpOWVhBN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnWm05MWJtUkpJRDBnYzNSaGNrazdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I5WEhKY2JseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdhV1lnS0dadmRXNWtUV0Z3S1NCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYm1GdFpWQmhjblJ6TG5Od2JHbGpaU2d3TENCbWIzVnVaRWtzSUdadmRXNWtUV0Z3S1R0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0J1WVcxbElEMGdibUZ0WlZCaGNuUnpMbXB2YVc0b0p5OG5LVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUgxY2NseHVJQ0FnSUNBZ0lDQWdJQ0FnZlZ4eVhHNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0x5OGdTV1lnZEdobElHNWhiV1VnY0c5cGJuUnpJSFJ2SUdFZ2NHRmphMkZuWlNkeklHNWhiV1VzSUhWelpTQjBhR1VnY0dGamEyRm5aU0J0WVdsdUlHbHVjM1JsWVdRdVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUhCclowMWhhVzRnUFNCblpYUlBkMjRvWTI5dVptbG5MbkJyWjNNc0lHNWhiV1VwTzF4eVhHNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ2NtVjBkWEp1SUhCclowMWhhVzRnUHlCd2EyZE5ZV2x1SURvZ2JtRnRaVHRjY2x4dUlDQWdJQ0FnSUNCOVhISmNibHh5WEc0Z0lDQWdJQ0FnSUdaMWJtTjBhVzl1SUhKbGJXOTJaVk5qY21sd2RDaHVZVzFsS1NCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUdsbUlDaHBjMEp5YjNkelpYSXBJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdWaFkyZ29jMk55YVhCMGN5Z3BMQ0JtZFc1amRHbHZiaUFvYzJOeWFYQjBUbTlrWlNrZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdsbUlDaHpZM0pwY0hST2IyUmxMbWRsZEVGMGRISnBZblYwWlNnblpHRjBZUzF5WlhGMWFYSmxiVzlrZFd4bEp5a2dQVDA5SUc1aGJXVWdKaVpjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYzJOeWFYQjBUbTlrWlM1blpYUkJkSFJ5YVdKMWRHVW9KMlJoZEdFdGNtVnhkV2x5WldOdmJuUmxlSFFuS1NBOVBUMGdZMjl1ZEdWNGRDNWpiMjUwWlhoMFRtRnRaU2tnZTF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCelkzSnBjSFJPYjJSbExuQmhjbVZ1ZEU1dlpHVXVjbVZ0YjNabFEyaHBiR1FvYzJOeWFYQjBUbTlrWlNrN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lISmxkSFZ5YmlCMGNuVmxPMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSDBwTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0I5WEhKY2JpQWdJQ0FnSUNBZ2ZWeHlYRzVjY2x4dUlDQWdJQ0FnSUNCbWRXNWpkR2x2YmlCb1lYTlFZWFJvUm1Gc2JHSmhZMnNvYVdRcElIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ2JHVjBJSEJoZEdoRGIyNW1hV2NnUFNCblpYUlBkMjRvWTI5dVptbG5MbkJoZEdoekxDQnBaQ2s3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJR2xtSUNod1lYUm9RMjl1Wm1sbklDWW1JR2x6UVhKeVlYa29jR0YwYUVOdmJtWnBaeWtnSmlZZ2NHRjBhRU52Ym1acFp5NXNaVzVuZEdnZ1BpQXhLU0I3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBdkx5QlFiM0FnYjJabUlIUm9aU0JtYVhKemRDQmhjbkpoZVNCMllXeDFaU3dnYzJsdVkyVWdhWFFnWm1GcGJHVmtMQ0JoYm1RZ2NtVjBjbmt1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCd1lYUm9RMjl1Wm1sbkxuTm9hV1owS0NrN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQmpiMjUwWlhoMExuSmxjWFZwY21VdWRXNWtaV1lvYVdRcE8xeHlYRzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklFTjFjM1J2YlNCeVpYRjFhWEpsSUhSb1lYUWdaRzlsY3lCdWIzUWdaRzhnYldGd0lIUnlZVzV6YkdGMGFXOXVMQ0J6YVc1alpTQkpSQ0JwY3lCY0ltRmljMjlzZFhSbFhDSXNJR0ZzY21WaFpIa2diV0Z3Y0dWa0wzSmxjMjlzZG1Wa0xseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdZMjl1ZEdWNGRDNXRZV3RsVW1WeGRXbHlaU2h1ZFd4c0xDQjdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2MydHBjRTFoY0RvZ2RISjFaVnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlNrb1cybGtYU2s3WEhKY2JseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdjbVYwZFhKdUlIUnlkV1U3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJSDFjY2x4dUlDQWdJQ0FnSUNCOVhISmNibHh5WEc0Z0lDQWdJQ0FnSUM4dklGUjFjbTV6SUdFZ2NHeDFaMmx1SVhKbGMyOTFjbU5sSUhSdklGdHdiSFZuYVc0c0lISmxjMjkxY21ObFhTQjNhWFJvSUhSb1pTQndiSFZuYVc0Z1ltVnBibWNnZFc1a1pXWnBibVZrSUdsbUlIUm9aU0J1WVcxbElHUnBaQ0J1YjNRZ2FHRjJaU0JoSUZ4eVhHNGdJQ0FnSUNBZ0lDOHZJSEJzZFdkcGJpQndjbVZtYVhndVhISmNiaUFnSUNBZ0lDQWdablZ1WTNScGIyNGdjM0JzYVhSUWNtVm1hWGdvYm1GdFpTa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQnNaWFFnY0hKbFptbDRMRnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYVc1a1pYZ2dQU0J1WVcxbElEOGdibUZ0WlM1cGJtUmxlRTltS0NjaEp5a2dPaUF0TVR0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnYVdZZ0tHbHVaR1Y0SUQ0Z0xURXBJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUhCeVpXWnBlQ0E5SUc1aGJXVXVjM1ZpYzNSeWFXNW5LREFzSUdsdVpHVjRLVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUc1aGJXVWdQU0J1WVcxbExuTjFZbk4wY21sdVp5aHBibVJsZUNBcklERXNJRzVoYldVdWJHVnVaM1JvS1R0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnZlZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0J5WlhSMWNtNGdXM0J5WldacGVDd2dibUZ0WlYwN1hISmNiaUFnSUNBZ0lDQWdmVnh5WEc1Y2NseHVJQ0FnSUNBZ0lDQXZLaXBjY2x4dUlDQWdJQ0FnSUNBZ0tpQkRjbVZoZEdWeklHRWdiVzlrZFd4bElHMWhjSEJwYm1jZ2RHaGhkQ0JwYm1Oc2RXUmxjeUJ3YkhWbmFXNGdjSEpsWm1sNExDQnRiMlIxYkdVZ2JtRnRaU3dnWVc1a0lIQmhkR2d1SUVsbUlIQmhjbVZ1ZEUxdlpIVnNaVTFoY0NCcGN5QndjbTkyYVdSbFpGeHlYRzRnSUNBZ0lDQWdJQ0FxSUdsMElIZHBiR3dnWVd4emJ5QnViM0p0WVd4cGVtVWdkR2hsSUc1aGJXVWdkbWxoSUhKbGNYVnBjbVV1Ym05eWJXRnNhWHBsS0NsY2NseHVJQ0FnSUNBZ0lDQWdLbHh5WEc0Z0lDQWdJQ0FnSUNBcUlFQndZWEpoYlNCN1UzUnlhVzVuZlNCdVlXMWxJRlJvWlNCdGIyUjFiR1VnYm1GdFpTNWNjbHh1SUNBZ0lDQWdJQ0FnS2lCQWNHRnlZVzBnZTFOMGNtbHVaMzBnVzNCaGNtVnVkRTF2WkhWc1pVMWhjRjBnVUdGeVpXNTBJRzF2WkhWc1pTQnRZWEFnWm05eUlIUm9aU0J0YjJSMWJHVWdibUZ0WlN3Z2RYTmxaQ0IwYnlCeVpYTnZiSFpsSUhKbGJHRjBhWFpsSUc1aGJXVnpMbHh5WEc0Z0lDQWdJQ0FnSUNBcUlFQndZWEpoYlNCN1FtOXZiR1ZoYm4wZ2FYTk9iM0p0WVd4cGVtVmtJRWx6SUhSb1pTQkpSQ0JoYkhKbFlXUjVJRzV2Y20xaGJHbDZaV1EvSUZSb2FYTWdhWE1nZEhKMVpTQnBaaUIwYUdseklHTmhiR3dnYVhNZ1pHOXVaU0JtYjNJZ1lTQmtaV1pwYm1Vb0tWeHlYRzRnSUNBZ0lDQWdJQ0FxSUcxdlpIVnNaU0JKUkM1Y2NseHVJQ0FnSUNBZ0lDQWdLaUJBY0dGeVlXMGdlMEp2YjJ4bFlXNTlJR0Z3Y0d4NVRXRndPaUJoY0hCc2VTQjBhR1VnYldGd0lHTnZibVpwWnlCMGJ5QjBhR1VnU1VRdUlGTm9iM1ZzWkNCdmJteDVJR0psSUhSeWRXVWdhV1lnZEdocGN5QnRZWEFnYVhNZ1ptOXlJR0VnWkdWd1pXNWtaVzVqZVM1Y2NseHVJQ0FnSUNBZ0lDQWdLbHh5WEc0Z0lDQWdJQ0FnSUNBcUlFQnlaWFIxY200Z2UwOWlhbVZqZEgxY2NseHVJQ0FnSUNBZ0lDQWdLaTljY2x4dUlDQWdJQ0FnSUNCbWRXNWpkR2x2YmlCdFlXdGxUVzlrZFd4bFRXRndLRzVoYldVc0lIQmhjbVZ1ZEUxdlpIVnNaVTFoY0N3Z2FYTk9iM0p0WVd4cGVtVmtMQ0JoY0hCc2VVMWhjQ2tnZTF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0JzWlhRZ2RYSnNMQ0J3YkhWbmFXNU5iMlIxYkdVc0lITjFabVpwZUN3Z2JtRnRaVkJoY25SekxGeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdjSEpsWm1sNElEMGdiblZzYkN4Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIQmhjbVZ1ZEU1aGJXVWdQU0J3WVhKbGJuUk5iMlIxYkdWTllYQWdQeUJ3WVhKbGJuUk5iMlIxYkdWTllYQXVibUZ0WlNBNklHNTFiR3dzWEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCdmNtbG5hVzVoYkU1aGJXVWdQU0J1WVcxbExGeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdhWE5FWldacGJtVWdQU0IwY25WbExGeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdibTl5YldGc2FYcGxaRTVoYldVZ1BTQW5KenRjY2x4dVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUM4dklFbG1JRzV2SUc1aGJXVXNJSFJvWlc0Z2FYUWdiV1ZoYm5NZ2FYUWdhWE1nWVNCeVpYRjFhWEpsSUdOaGJHd3NJR2RsYm1WeVlYUmxJR0Z1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQzh2SUdsdWRHVnlibUZzSUc1aGJXVXVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lHbG1JQ2doYm1GdFpTa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYVhORVpXWnBibVVnUFNCbVlXeHpaVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUc1aGJXVWdQU0FuWDBCeUp5QXJJQ2h5WlhGMWFYSmxRMjkxYm5SbGNpQXJQU0F4S1R0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnZlZ4eVhHNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ2JtRnRaVkJoY25SeklEMGdjM0JzYVhSUWNtVm1hWGdvYm1GdFpTazdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lIQnlaV1pwZUNBOUlHNWhiV1ZRWVhKMGMxc3dYVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdibUZ0WlNBOUlHNWhiV1ZRWVhKMGMxc3hYVHRjY2x4dVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUdsbUlDaHdjbVZtYVhncElIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSEJ5WldacGVDQTlJRzV2Y20xaGJHbDZaU2h3Y21WbWFYZ3NJSEJoY21WdWRFNWhiV1VzSUdGd2NHeDVUV0Z3S1R0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIQnNkV2RwYmsxdlpIVnNaU0E5SUdkbGRFOTNiaWhrWldacGJtVmtMQ0J3Y21WbWFYZ3BPMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQjlYSEpjYmx4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0F2THlCQlkyTnZkVzUwSUdadmNpQnlaV3hoZEdsMlpTQndZWFJvY3lCcFppQjBhR1Z5WlNCcGN5QmhJR0poYzJVZ2JtRnRaUzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdhV1lnS0c1aGJXVXBJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdsbUlDaHdjbVZtYVhncElIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCcFppQW9jR3gxWjJsdVRXOWtkV3hsSUNZbUlIQnNkV2RwYmsxdlpIVnNaUzV1YjNKdFlXeHBlbVVwSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0x5OGdVR3gxWjJsdUlHbHpJR3h2WVdSbFpDd2dkWE5sSUdsMGN5QnViM0p0WVd4cGVtVWdiV1YwYUc5a0xseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnViM0p0WVd4cGVtVmtUbUZ0WlNBOUlIQnNkV2RwYmsxdlpIVnNaUzV1YjNKdFlXeHBlbVVvYm1GdFpTd2dablZ1WTNScGIyNGdLRzVoYldVcElIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUhKbGRIVnliaUJ1YjNKdFlXeHBlbVVvYm1GdFpTd2djR0Z5Wlc1MFRtRnRaU3dnWVhCd2JIbE5ZWEFwTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCOUtUdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCOUlHVnNjMlVnZTF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBdkx5QkpaaUJ1WlhOMFpXUWdjR3gxWjJsdUlISmxabVZ5Wlc1alpYTXNJSFJvWlc0Z1pHOGdibTkwSUhSeWVTQjBiMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCdWIzSnRZV3hwZW1Vc0lHRnpJR2wwSUhkcGJHd2dibTkwSUc1dmNtMWhiR2w2WlNCamIzSnlaV04wYkhrdUlGUm9hWE5jY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z2NHeGhZMlZ6SUdFZ2NtVnpkSEpwWTNScGIyNGdiMjRnY21WemIzVnlZMlZKWkhNc0lHRnVaQ0IwYUdVZ2JHOXVaMlZ5WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklIUmxjbTBnYzI5c2RYUnBiMjRnYVhNZ2JtOTBJSFJ2SUc1dmNtMWhiR2w2WlNCMWJuUnBiQ0J3YkhWbmFXNXpJR0Z5WlZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBdkx5QnNiMkZrWldRZ1lXNWtJR0ZzYkNCdWIzSnRZV3hwZW1GMGFXOXVjeUIwYnlCaGJHeHZkeUJtYjNJZ1lYTjVibU5jY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z2JHOWhaR2x1WnlCdlppQmhJR3h2WVdSbGNpQndiSFZuYVc0dUlFSjFkQ0JtYjNJZ2JtOTNMQ0JtYVhobGN5QjBhR1ZjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z1kyOXRiVzl1SUhWelpYTXVJRVJsZEdGcGJITWdhVzRnSXpFeE16RmNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdibTl5YldGc2FYcGxaRTVoYldVZ1BTQnVZVzFsTG1sdVpHVjRUMllvSnlFbktTQTlQVDBnTFRFZ1AxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYm05eWJXRnNhWHBsS0c1aGJXVXNJSEJoY21WdWRFNWhiV1VzSUdGd2NHeDVUV0Z3S1NBNlhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0J1WVcxbE8xeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUgxY2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMGdaV3h6WlNCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z1FTQnlaV2QxYkdGeUlHMXZaSFZzWlM1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0J1YjNKdFlXeHBlbVZrVG1GdFpTQTlJRzV2Y20xaGJHbDZaU2h1WVcxbExDQndZWEpsYm5ST1lXMWxMQ0JoY0hCc2VVMWhjQ2s3WEhKY2JseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklFNXZjbTFoYkdsNlpXUWdibUZ0WlNCdFlYa2dZbVVnWVNCd2JIVm5hVzRnU1VRZ1pIVmxJSFJ2SUcxaGNDQmpiMjVtYVdkY2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCaGNIQnNhV05oZEdsdmJpQnBiaUJ1YjNKdFlXeHBlbVV1SUZSb1pTQnRZWEFnWTI5dVptbG5JSFpoYkhWbGN5QnRkWE4wWEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnWVd4eVpXRmtlU0JpWlNCdWIzSnRZV3hwZW1Wa0xDQnpieUJrYnlCdWIzUWdibVZsWkNCMGJ5QnlaV1J2SUhSb1lYUWdjR0Z5ZEM1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0J1WVcxbFVHRnlkSE1nUFNCemNHeHBkRkJ5WldacGVDaHViM0p0WVd4cGVtVmtUbUZ0WlNrN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnY0hKbFptbDRJRDBnYm1GdFpWQmhjblJ6V3pCZE8xeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUc1dmNtMWhiR2w2WldST1lXMWxJRDBnYm1GdFpWQmhjblJ6V3pGZE8xeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdselRtOXliV0ZzYVhwbFpDQTlJSFJ5ZFdVN1hISmNibHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIVnliQ0E5SUdOdmJuUmxlSFF1Ym1GdFpWUnZWWEpzS0c1dmNtMWhiR2w2WldST1lXMWxLVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUgxY2NseHVJQ0FnSUNBZ0lDQWdJQ0FnZlZ4eVhHNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0x5OGdTV1lnZEdobElHbGtJR2x6SUdFZ2NHeDFaMmx1SUdsa0lIUm9ZWFFnWTJGdWJtOTBJR0psSUdSbGRHVnliV2x1WldRZ2FXWWdhWFFnYm1WbFpITmNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0x5OGdibTl5YldGc2FYcGhkR2x2Yml3Z2MzUmhiWEFnYVhRZ2QybDBhQ0JoSUhWdWFYRjFaU0JKUkNCemJ5QjBkMjhnYldGMFkyaHBibWNnY21Wc1lYUnBkbVZjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdMeThnYVdSeklIUm9ZWFFnYldGNUlHTnZibVpzYVdOMElHTmhiaUJpWlNCelpYQmhjbUYwWlM1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnYzNWbVptbDRJRDBnY0hKbFptbDRJQ1ltSUNGd2JIVm5hVzVOYjJSMWJHVWdKaVlnSVdselRtOXliV0ZzYVhwbFpDQS9YSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FuWDNWdWJtOXliV0ZzYVhwbFpDY2dLeUFvZFc1dWIzSnRZV3hwZW1Wa1EyOTFiblJsY2lBclBTQXhLU0E2WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBbkp6dGNjbHh1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJSEpsZEhWeWJpQjdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0J3Y21WbWFYZzZJSEJ5WldacGVDeGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJRzVoYldVNklHNXZjbTFoYkdsNlpXUk9ZVzFsTEZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2NHRnlaVzUwVFdGd09pQndZWEpsYm5STmIyUjFiR1ZOWVhBc1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjFibTV2Y20xaGJHbDZaV1E2SUNFaGMzVm1abWw0TEZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2RYSnNPaUIxY213c1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnZjbWxuYVc1aGJFNWhiV1U2SUc5eWFXZHBibUZzVG1GdFpTeGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR2x6UkdWbWFXNWxPaUJwYzBSbFptbHVaU3hjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdsa09pQW9jSEpsWm1sNElEOWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCd2NtVm1hWGdnS3lBbklTY2dLeUJ1YjNKdFlXeHBlbVZrVG1GdFpTQTZYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2JtOXliV0ZzYVhwbFpFNWhiV1VwSUNzZ2MzVm1abWw0WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJSDA3WEhKY2JpQWdJQ0FnSUNBZ2ZWeHlYRzVjY2x4dUlDQWdJQ0FnSUNCbWRXNWpkR2x2YmlCblpYUk5iMlIxYkdVb1pHVndUV0Z3S1NCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUd4bGRDQnBaQ0E5SUdSbGNFMWhjQzVwWkN4Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHMXZaQ0E5SUdkbGRFOTNiaWh5WldkcGMzUnllU3dnYVdRcE8xeHlYRzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdhV1lnS0NGdGIyUXBJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUcxdlpDQTlJSEpsWjJsemRISjVXMmxrWFNBOUlHNWxkeUJqYjI1MFpYaDBMazF2WkhWc1pTaGtaWEJOWVhBcE8xeHlYRzRnSUNBZ0lDQWdJQ0FnSUNCOVhISmNibHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQnlaWFIxY200Z2JXOWtPMXh5WEc0Z0lDQWdJQ0FnSUgxY2NseHVYSEpjYmlBZ0lDQWdJQ0FnWm5WdVkzUnBiMjRnYjI0b1pHVndUV0Z3TENCdVlXMWxMQ0JtYmlrZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNCc1pYUWdhV1FnUFNCa1pYQk5ZWEF1YVdRc1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnRiMlFnUFNCblpYUlBkMjRvY21WbmFYTjBjbmtzSUdsa0tUdGNjbHh1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJR2xtSUNob1lYTlFjbTl3S0dSbFptbHVaV1FzSUdsa0tTQW1KbHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnS0NGdGIyUWdmSHdnYlc5a0xtUmxabWx1WlVWdGFYUkRiMjF3YkdWMFpTa3BJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdsbUlDaHVZVzFsSUQwOVBTQW5aR1ZtYVc1bFpDY3BJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQm1iaWhrWldacGJtVmtXMmxrWFNrN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjlYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lIMGdaV3h6WlNCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnRiMlFnUFNCblpYUk5iMlIxYkdVb1pHVndUV0Z3S1R0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHbG1JQ2h0YjJRdVpYSnliM0lnSmlZZ2JtRnRaU0E5UFQwZ0oyVnljbTl5SnlrZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdadUtHMXZaQzVsY25KdmNpazdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I5SUdWc2MyVWdlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHMXZaQzV2YmlodVlXMWxMQ0JtYmlrN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjlYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lIMWNjbHh1SUNBZ0lDQWdJQ0I5WEhKY2JseHlYRzRnSUNBZ0lDQWdJR1oxYm1OMGFXOXVJRzl1UlhKeWIzSW9aWEp5TENCbGNuSmlZV05yS1NCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUd4bGRDQnBaSE1nUFNCbGNuSXVjbVZ4ZFdseVpVMXZaSFZzWlhNc1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnViM1JwWm1sbFpDQTlJR1poYkhObE8xeHlYRzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdhV1lnS0dWeWNtSmhZMnNwSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHVnljbUpoWTJzb1pYSnlLVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdmU0JsYkhObElIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR1ZoWTJnb2FXUnpMQ0JtZFc1amRHbHZiaUFvYVdRcElIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCc1pYUWdiVzlrSUQwZ1oyVjBUM2R1S0hKbFoybHpkSEo1TENCcFpDazdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2FXWWdLRzF2WkNrZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQXZMeUJUWlhRZ1pYSnliM0lnYjI0Z2JXOWtkV3hsTENCemJ5QnBkQ0J6YTJsd2N5QjBhVzFsYjNWMElHTm9aV05yY3k1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2JXOWtMbVZ5Y205eUlEMGdaWEp5TzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCcFppQW9iVzlrTG1WMlpXNTBjeTVsY25KdmNpa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2JtOTBhV1pwWldRZ1BTQjBjblZsTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdiVzlrTG1WdGFYUW9KMlZ5Y205eUp5d2daWEp5S1R0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZWeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUgxY2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMHBPMXh5WEc1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHbG1JQ2doYm05MGFXWnBaV1FwSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0J5WlhFdWIyNUZjbkp2Y2lobGNuSXBPMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0I5WEhKY2JpQWdJQ0FnSUNBZ2ZWeHlYRzVjY2x4dUlDQWdJQ0FnSUNBdktpcGNjbHh1SUNBZ0lDQWdJQ0FnS2lCSmJuUmxjbTVoYkNCdFpYUm9iMlFnZEc4Z2RISmhibk5tWlhJZ1oyeHZZbUZzVVhWbGRXVWdhWFJsYlhNZ2RHOGdkR2hwY3lCamIyNTBaWGgwSjNOY2NseHVJQ0FnSUNBZ0lDQWdLaUJrWldaUmRXVjFaUzVjY2x4dUlDQWdJQ0FnSUNBZ0tpOWNjbHh1SUNBZ0lDQWdJQ0JtZFc1amRHbHZiaUIwWVd0bFIyeHZZbUZzVVhWbGRXVW9LU0I3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQzh2SUZCMWMyZ2dZV3hzSUhSb1pTQm5iRzlpWVd4RVpXWlJkV1YxWlNCcGRHVnRjeUJwYm5SdklIUm9aU0JqYjI1MFpYaDBKM01nWkdWbVVYVmxkV1ZjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdhV1lnS0dkc2IySmhiRVJsWmxGMVpYVmxMbXhsYm1kMGFDa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnWldGamFDaG5iRzlpWVd4RVpXWlJkV1YxWlN3Z1puVnVZM1JwYjI0Z0tIRjFaWFZsU1hSbGJTa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHeGxkQ0JwWkNBOUlIRjFaWFZsU1hSbGJWc3dYVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnBaaUFvZEhsd1pXOW1JR2xrSUQwOVBTQW5jM1J5YVc1bkp5a2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JqYjI1MFpYaDBMbVJsWmxGMVpYVmxUV0Z3VzJsa1hTQTlJSFJ5ZFdVN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR1JsWmxGMVpYVmxMbkIxYzJnb2NYVmxkV1ZKZEdWdEtUdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSDBwTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ1oyeHZZbUZzUkdWbVVYVmxkV1VnUFNCYlhUdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ2ZWeHlYRzRnSUNBZ0lDQWdJSDFjY2x4dVhISmNiaUFnSUNBZ0lDQWdhR0Z1Wkd4bGNuTWdQU0I3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ2R5WlhGMWFYSmxKem9nWm5WdVkzUnBiMjRnS0cxdlpDa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYVdZZ0tHMXZaQzV5WlhGMWFYSmxLU0I3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdjbVYwZFhKdUlHMXZaQzV5WlhGMWFYSmxPMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlNCbGJITmxJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnlaWFIxY200Z0tHMXZaQzV5WlhGMWFYSmxJRDBnWTI5dWRHVjRkQzV0WVd0bFVtVnhkV2x5WlNodGIyUXViV0Z3S1NrN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjlYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lIMHNYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDZGxlSEJ2Y25Sekp6b2dablZ1WTNScGIyNGdLRzF2WkNrZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdiVzlrTG5WemFXNW5SWGh3YjNKMGN5QTlJSFJ5ZFdVN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnBaaUFvYlc5a0xtMWhjQzVwYzBSbFptbHVaU2tnZTF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR2xtSUNodGIyUXVaWGh3YjNKMGN5a2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0J5WlhSMWNtNGdLR1JsWm1sdVpXUmJiVzlrTG0xaGNDNXBaRjBnUFNCdGIyUXVaWGh3YjNKMGN5azdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZTQmxiSE5sSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2NtVjBkWEp1SUNodGIyUXVaWGh3YjNKMGN5QTlJR1JsWm1sdVpXUmJiVzlrTG0xaGNDNXBaRjBnUFNCN2ZTazdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZWeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdmVnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQjlMRnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQW5iVzlrZFd4bEp6b2dablZ1WTNScGIyNGdLRzF2WkNrZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdhV1lnS0cxdlpDNXRiMlIxYkdVcElIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCeVpYUjFjbTRnYlc5a0xtMXZaSFZzWlR0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMGdaV3h6WlNCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnY21WMGRYSnVJQ2h0YjJRdWJXOWtkV3hsSUQwZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnBaRG9nYlc5a0xtMWhjQzVwWkN4Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2RYSnBPaUJ0YjJRdWJXRndMblZ5YkN4Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ1kyOXVabWxuT2lCbWRXNWpkR2x2YmlBb0tTQjdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCeVpYUjFjbTRnWjJWMFQzZHVLR052Ym1acFp5NWpiMjVtYVdjc0lHMXZaQzV0WVhBdWFXUXBJSHg4SUh0OU8xeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjlMRnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JsZUhCdmNuUnpPaUJ0YjJRdVpYaHdiM0owY3lCOGZDQW9iVzlrTG1WNGNHOXlkSE1nUFNCN2ZTbGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCOUtUdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSDFjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdmVnh5WEc0Z0lDQWdJQ0FnSUgwN1hISmNibHh5WEc0Z0lDQWdJQ0FnSUdaMWJtTjBhVzl1SUdOc1pXRnVVbVZuYVhOMGNua29hV1FwSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z1EyeGxZVzRnZFhBZ2JXRmphR2x1WlhKNUlIVnpaV1FnWm05eUlIZGhhWFJwYm1jZ2JXOWtkV3hsY3k1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnWkdWc1pYUmxJSEpsWjJsemRISjVXMmxrWFR0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnWkdWc1pYUmxJR1Z1WVdKc1pXUlNaV2RwYzNSeWVWdHBaRjA3WEhKY2JpQWdJQ0FnSUNBZ2ZWeHlYRzVjY2x4dUlDQWdJQ0FnSUNCbWRXNWpkR2x2YmlCaWNtVmhhME41WTJ4bEtHMXZaQ3dnZEhKaFkyVmtMQ0J3Y205alpYTnpaV1FwSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnYkdWMElHbGtJRDBnYlc5a0xtMWhjQzVwWkR0Y2NseHVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lHbG1JQ2h0YjJRdVpYSnliM0lwSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHMXZaQzVsYldsMEtDZGxjbkp2Y2ljc0lHMXZaQzVsY25KdmNpazdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lIMGdaV3h6WlNCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjBjbUZqWldSYmFXUmRJRDBnZEhKMVpUdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR1ZoWTJnb2JXOWtMbVJsY0UxaGNITXNJR1oxYm1OMGFXOXVJQ2hrWlhCTllYQXNJR2twSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JzWlhRZ1pHVndTV1FnUFNCa1pYQk5ZWEF1YVdRc1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHUmxjQ0E5SUdkbGRFOTNiaWh5WldkcGMzUnllU3dnWkdWd1NXUXBPMXh5WEc1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCUGJteDVJR1p2Y21ObElIUm9hVzVuY3lCMGFHRjBJR2hoZG1VZ2JtOTBJR052YlhCc1pYUmxaRnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDOHZJR0psYVc1bklHUmxabWx1WldRc0lITnZJSE4wYVd4c0lHbHVJSFJvWlNCeVpXZHBjM1J5ZVN4Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCaGJtUWdiMjVzZVNCcFppQnBkQ0JvWVhNZ2JtOTBJR0psWlc0Z2JXRjBZMmhsWkNCMWNGeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklHbHVJSFJvWlNCdGIyUjFiR1VnWVd4eVpXRmtlUzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnBaaUFvWkdWd0lDWW1JQ0Z0YjJRdVpHVndUV0YwWTJobFpGdHBYU0FtSmlBaGNISnZZMlZ6YzJWa1cyUmxjRWxrWFNrZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnBaaUFvWjJWMFQzZHVLSFJ5WVdObFpDd2daR1Z3U1dRcEtTQjdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCdGIyUXVaR1ZtYVc1bFJHVndLR2tzSUdSbFptbHVaV1JiWkdWd1NXUmRLVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHMXZaQzVqYUdWamF5Z3BPeUF2THlCd1lYTnpJR1poYkhObFAxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjlJR1ZzYzJVZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnWW5KbFlXdERlV05zWlNoa1pYQXNJSFJ5WVdObFpDd2djSEp2WTJWemMyVmtLVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSDFjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUgwcE8xeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdjSEp2WTJWemMyVmtXMmxrWFNBOUlIUnlkV1U3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJSDFjY2x4dUlDQWdJQ0FnSUNCOVhISmNibHh5WEc0Z0lDQWdJQ0FnSUdaMWJtTjBhVzl1SUdOb1pXTnJURzloWkdWa0tDa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQnNaWFFnWlhKeUxDQjFjMmx1WjFCaGRHaEdZV3hzWW1GamF5eGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSGRoYVhSSmJuUmxjblpoYkNBOUlHTnZibVpwWnk1M1lXbDBVMlZqYjI1a2N5QXFJREV3TURBc1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQXZMeUJKZENCcGN5QndiM056YVdKc1pTQjBieUJrYVhOaFlteGxJSFJvWlNCM1lXbDBJR2x1ZEdWeWRtRnNJR0o1SUhWemFXNW5JSGRoYVhSVFpXTnZibVJ6SUc5bUlEQXVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JsZUhCcGNtVmtJRDBnZDJGcGRFbHVkR1Z5ZG1Gc0lDWW1JQ2hqYjI1MFpYaDBMbk4wWVhKMFZHbHRaU0FySUhkaGFYUkpiblJsY25aaGJDa2dQQ0J1WlhjZ1JHRjBaU2dwTG1kbGRGUnBiV1VvS1N4Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHNXZURzloWkhNZ1BTQmJYU3hjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUhKbGNVTmhiR3h6SUQwZ1cxMHNYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0J6ZEdsc2JFeHZZV1JwYm1jZ1BTQm1ZV3h6WlN4Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHNWxaV1JEZVdOc1pVTm9aV05ySUQwZ2RISjFaVHRjY2x4dVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUM4dklFUnZJRzV2ZENCaWIzUm9aWElnYVdZZ2RHaHBjeUJqWVd4c0lIZGhjeUJoSUhKbGMzVnNkQ0J2WmlCaElHTjVZMnhsSUdKeVpXRnJMbHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQnBaaUFvYVc1RGFHVmphMHh2WVdSbFpDa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnY21WMGRYSnVPMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQjlYSEpjYmx4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0JwYmtOb1pXTnJURzloWkdWa0lEMGdkSEoxWlR0Y2NseHVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDOHZJRVpwWjNWeVpTQnZkWFFnZEdobElITjBZWFJsSUc5bUlHRnNiQ0IwYUdVZ2JXOWtkV3hsY3k1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnWldGamFGQnliM0FvWlc1aFlteGxaRkpsWjJsemRISjVMQ0JtZFc1amRHbHZiaUFvYlc5a0tTQjdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JzWlhRZ2JXRndJRDBnYlc5a0xtMWhjQ3hjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnRiMlJKWkNBOUlHMWhjQzVwWkR0Y2NseHVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCVGEybHdJSFJvYVc1bmN5QjBhR0YwSUdGeVpTQnViM1FnWlc1aFlteGxaQ0J2Y2lCcGJpQmxjbkp2Y2lCemRHRjBaUzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdsbUlDZ2hiVzlrTG1WdVlXSnNaV1FwSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0J5WlhSMWNtNDdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I5WEhKY2JseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdhV1lnS0NGdFlYQXVhWE5FWldacGJtVXBJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnlaWEZEWVd4c2N5NXdkWE5vS0cxdlpDazdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I5WEhKY2JseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdhV1lnS0NGdGIyUXVaWEp5YjNJcElIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBdkx5QkpaaUIwYUdVZ2JXOWtkV3hsSUhOb2IzVnNaQ0JpWlNCbGVHVmpkWFJsWkN3Z1lXNWtJR2wwSUdoaGN5QnViM1JjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQXZMeUJpWldWdUlHbHVhWFJsWkNCaGJtUWdkR2x0WlNCcGN5QjFjQ3dnY21WdFpXMWlaWElnYVhRdVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYVdZZ0tDRnRiMlF1YVc1cGRHVmtJQ1ltSUdWNGNHbHlaV1FwSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2FXWWdLR2hoYzFCaGRHaEdZV3hzWW1GamF5aHRiMlJKWkNrcElIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUhWemFXNW5VR0YwYUVaaGJHeGlZV05ySUQwZ2RISjFaVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lITjBhV3hzVEc5aFpHbHVaeUE5SUhSeWRXVTdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSDBnWld4elpTQjdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCdWIweHZZV1J6TG5CMWMyZ29iVzlrU1dRcE8xeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnY21WdGIzWmxVMk55YVhCMEtHMXZaRWxrS1R0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZWeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUgwZ1pXeHpaU0JwWmlBb0lXMXZaQzVwYm1sMFpXUWdKaVlnYlc5a0xtWmxkR05vWldRZ0ppWWdiV0Z3TG1selJHVm1hVzVsS1NCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lITjBhV3hzVEc5aFpHbHVaeUE5SUhSeWRXVTdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR2xtSUNnaGJXRndMbkJ5WldacGVDa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0x5OGdUbThnY21WaGMyOXVJSFJ2SUd0bFpYQWdiRzl2YTJsdVp5Qm1iM0lnZFc1bWFXNXBjMmhsWkZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnYkc5aFpHbHVaeTRnU1dZZ2RHaGxJRzl1YkhrZ2MzUnBiR3hNYjJGa2FXNW5JR2x6SUdGY2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQzh2SUhCc2RXZHBiaUJ5WlhOdmRYSmpaU0IwYUc5MVoyZ3NJR3RsWlhBZ1oyOXBibWNzWEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQXZMeUJpWldOaGRYTmxJR2wwSUcxaGVTQmlaU0IwYUdGMElHRWdjR3gxWjJsdUlISmxjMjkxY21ObFhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCcGN5QjNZV2wwYVc1bklHOXVJR0VnYm05dUxYQnNkV2RwYmlCamVXTnNaUzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lISmxkSFZ5YmlBb2JtVmxaRU41WTJ4bFEyaGxZMnNnUFNCbVlXeHpaU2s3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUgxY2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I5WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCOVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUgwcE8xeHlYRzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdhV1lnS0dWNGNHbHlaV1FnSmlZZ2JtOU1iMkZrY3k1c1pXNW5kR2dwSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDOHZJRWxtSUhkaGFYUWdkR2x0WlNCbGVIQnBjbVZrTENCMGFISnZkeUJsY25KdmNpQnZaaUIxYm14dllXUmxaQ0J0YjJSMWJHVnpMbHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnWlhKeUlEMGdiV0ZyWlVWeWNtOXlLQ2QwYVcxbGIzVjBKeXdnSjB4dllXUWdkR2x0Wlc5MWRDQm1iM0lnYlc5a2RXeGxjem9nSnlBcklHNXZURzloWkhNc0lHNTFiR3dzSUc1dlRHOWhaSE1wTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ1pYSnlMbU52Ym5SbGVIUk9ZVzFsSUQwZ1kyOXVkR1Y0ZEM1amIyNTBaWGgwVG1GdFpUdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSEpsZEhWeWJpQnZia1Z5Y205eUtHVnljaWs3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJSDFjY2x4dVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUM4dklFNXZkQ0JsZUhCcGNtVmtMQ0JqYUdWamF5Qm1iM0lnWVNCamVXTnNaUzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdhV1lnS0c1bFpXUkRlV05zWlVOb1pXTnJLU0I3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCbFlXTm9LSEpsY1VOaGJHeHpMQ0JtZFc1amRHbHZiaUFvYlc5a0tTQjdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ1luSmxZV3REZVdOc1pTaHRiMlFzSUh0OUxDQjdmU2s3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCOUtUdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ2ZWeHlYRzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdMeThnU1dZZ2MzUnBiR3dnZDJGcGRHbHVaeUJ2YmlCc2IyRmtjeXdnWVc1a0lIUm9aU0IzWVdsMGFXNW5JR3h2WVdRZ2FYTWdjMjl0WlhSb2FXNW5YSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDOHZJRzkwYUdWeUlIUm9ZVzRnWVNCd2JIVm5hVzRnY21WemIzVnlZMlVzSUc5eUlIUm9aWEpsSUdGeVpTQnpkR2xzYkNCdmRYUnpkR0Z1WkdsdVoxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBdkx5QnpZM0pwY0hSekxDQjBhR1Z1SUdwMWMzUWdkSEo1SUdKaFkyc2diR0YwWlhJdVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUdsbUlDZ29JV1Y0Y0dseVpXUWdmSHdnZFhOcGJtZFFZWFJvUm1Gc2JHSmhZMnNwSUNZbUlITjBhV3hzVEc5aFpHbHVaeWtnZTF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0x5OGdVMjl0WlhSb2FXNW5JR2x6SUhOMGFXeHNJSGRoYVhScGJtY2dkRzhnYkc5aFpDNGdWMkZwZENCbWIzSWdhWFFzSUdKMWRDQnZibXg1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBdkx5QnBaaUJoSUhScGJXVnZkWFFnYVhNZ2JtOTBJR0ZzY21WaFpIa2dhVzRnWldabVpXTjBMbHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYVdZZ0tDaHBjMEp5YjNkelpYSWdmSHdnYVhOWFpXSlhiM0pyWlhJcElDWW1JQ0ZqYUdWamEweHZZV1JsWkZScGJXVnZkWFJKWkNrZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdOb1pXTnJURzloWkdWa1ZHbHRaVzkxZEVsa0lEMGdjMlYwVkdsdFpXOTFkQ2htZFc1amRHbHZiaUFvS1NCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHTm9aV05yVEc5aFpHVmtWR2x0Wlc5MWRFbGtJRDBnTUR0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ1kyaGxZMnRNYjJGa1pXUW9LVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjlMQ0ExTUNrN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjlYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lIMWNjbHh1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJR2x1UTJobFkydE1iMkZrWldRZ1BTQm1ZV3h6WlR0Y2NseHVJQ0FnSUNBZ0lDQjlYSEpjYmx4eVhHNGdJQ0FnSUNBZ0lFMXZaSFZzWlNBOUlHWjFibU4wYVc5dUlDaHRZWEFwSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnZEdocGN5NWxkbVZ1ZEhNZ1BTQm5aWFJQZDI0b2RXNWtaV1pGZG1WdWRITXNJRzFoY0M1cFpDa2dmSHdnZTMwN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUhSb2FYTXViV0Z3SUQwZ2JXRndPMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQjBhR2x6TG5Ob2FXMGdQU0JuWlhSUGQyNG9ZMjl1Wm1sbkxuTm9hVzBzSUcxaGNDNXBaQ2s3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJSFJvYVhNdVpHVndSWGh3YjNKMGN5QTlJRnRkTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0IwYUdsekxtUmxjRTFoY0hNZ1BTQmJYVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdkR2hwY3k1a1pYQk5ZWFJqYUdWa0lEMGdXMTA3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJSFJvYVhNdWNHeDFaMmx1VFdGd2N5QTlJSHQ5TzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0IwYUdsekxtUmxjRU52ZFc1MElEMGdNRHRjY2x4dVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUM4cUlIUm9hWE11Wlhod2IzSjBjeUIwYUdsekxtWmhZM1J2Y25sY2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUhSb2FYTXVaR1Z3VFdGd2N5QTlJRnRkTEZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnZEdocGN5NWxibUZpYkdWa0xDQjBhR2x6TG1abGRHTm9aV1JjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ292WEhKY2JpQWdJQ0FnSUNBZ2ZUdGNjbHh1WEhKY2JpQWdJQ0FnSUNBZ1RXOWtkV3hsTG5CeWIzUnZkSGx3WlNBOUlIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ2FXNXBkRG9nWm5WdVkzUnBiMjRnS0dSbGNFMWhjSE1zSUdaaFkzUnZjbmtzSUdWeWNtSmhZMnNzSUc5d2RHbHZibk1wSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHOXdkR2x2Ym5NZ1BTQnZjSFJwYjI1eklIeDhJSHQ5TzF4eVhHNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQzh2SUVSdklHNXZkQ0JrYnlCdGIzSmxJR2x1YVhSeklHbG1JR0ZzY21WaFpIa2daRzl1WlM0Z1EyRnVJR2hoY0hCbGJpQnBaaUIwYUdWeVpWeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnWVhKbElHMTFiSFJwY0d4bElHUmxabWx1WlNCallXeHNjeUJtYjNJZ2RHaGxJSE5oYldVZ2JXOWtkV3hsTGlCVWFHRjBJR2x6SUc1dmRGeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnWVNCdWIzSnRZV3dzSUdOdmJXMXZiaUJqWVhObExDQmlkWFFnYVhRZ2FYTWdZV3h6YnlCdWIzUWdkVzVsZUhCbFkzUmxaQzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdsbUlDaDBhR2x6TG1sdWFYUmxaQ2tnZTF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSEpsZEhWeWJqdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSDFjY2x4dVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjBhR2x6TG1aaFkzUnZjbmtnUFNCbVlXTjBiM0o1TzF4eVhHNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR2xtSUNobGNuSmlZV05yS1NCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z1VtVm5hWE4wWlhJZ1ptOXlJR1Z5Y205eWN5QnZiaUIwYUdseklHMXZaSFZzWlM1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0IwYUdsekxtOXVLQ2RsY25KdmNpY3NJR1Z5Y21KaFkyc3BPMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlNCbGJITmxJR2xtSUNoMGFHbHpMbVYyWlc1MGN5NWxjbkp2Y2lrZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklFbG1JRzV2SUdWeWNtSmhZMnNnWVd4eVpXRmtlU3dnWW5WMElIUm9aWEpsSUdGeVpTQmxjbkp2Y2lCc2FYTjBaVzVsY25OY2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCdmJpQjBhR2x6SUcxdlpIVnNaU3dnYzJWMElIVndJR0Z1SUdWeWNtSmhZMnNnZEc4Z2NHRnpjeUIwYnlCMGFHVWdaR1Z3Y3k1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JsY25KaVlXTnJJRDBnWW1sdVpDaDBhR2x6TENCbWRXNWpkR2x2YmlBb1pYSnlLU0I3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUhSb2FYTXVaVzFwZENnblpYSnliM0luTENCbGNuSXBPMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMHBPMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlZ4eVhHNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQzh2SUVSdklHRWdZMjl3ZVNCdlppQjBhR1VnWkdWd1pXNWtaVzVqZVNCaGNuSmhlU3dnYzI4Z2RHaGhkRnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z2MyOTFjbU5sSUdsdWNIVjBjeUJoY21VZ2JtOTBJRzF2WkdsbWFXVmtMaUJHYjNJZ1pYaGhiWEJzWlZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0x5OGdYQ0p6YUdsdFhDSWdaR1Z3Y3lCaGNtVWdjR0Z6YzJWa0lHbHVJR2hsY21VZ1pHbHlaV04wYkhrc0lHRnVaRnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z1pHOXBibWNnWVNCa2FYSmxZM1FnYlc5a2FXWnBZMkYwYVc5dUlHOW1JSFJvWlNCa1pYQk5ZWEJ6SUdGeWNtRjVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCM2IzVnNaQ0JoWm1abFkzUWdkR2hoZENCamIyNW1hV2N1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCMGFHbHpMbVJsY0UxaGNITWdQU0JrWlhCTllYQnpJQ1ltSUdSbGNFMWhjSE11YzJ4cFkyVW9NQ2s3WEhKY2JseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdkR2hwY3k1bGNuSmlZV05ySUQwZ1pYSnlZbUZqYXp0Y2NseHVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCSmJtUnBZMkYwWlNCMGFHbHpJRzF2WkhWc1pTQm9ZWE1nWW1VZ2FXNXBkR2xoYkdsNlpXUmNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSFJvYVhNdWFXNXBkR1ZrSUQwZ2RISjFaVHRjY2x4dVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjBhR2x6TG1sbmJtOXlaU0E5SUc5d2RHbHZibk11YVdkdWIzSmxPMXh5WEc1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDOHZJRU52ZFd4a0lHaGhkbVVnYjNCMGFXOXVJSFJ2SUdsdWFYUWdkR2hwY3lCdGIyUjFiR1VnYVc0Z1pXNWhZbXhsWkNCdGIyUmxMRnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z2IzSWdZMjkxYkdRZ2FHRjJaU0JpWldWdUlIQnlaWFpwYjNWemJIa2diV0Z5YTJWa0lHRnpJR1Z1WVdKc1pXUXVJRWh2ZDJWMlpYSXNYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCMGFHVWdaR1Z3Wlc1a1pXNWphV1Z6SUdGeVpTQnViM1FnYTI1dmQyNGdkVzUwYVd3Z2FXNXBkQ0JwY3lCallXeHNaV1F1SUZOdlhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQXZMeUJwWmlCbGJtRmliR1ZrSUhCeVpYWnBiM1Z6Ykhrc0lHNXZkeUIwY21sbloyVnlJR1JsY0dWdVpHVnVZMmxsY3lCaGN5QmxibUZpYkdWa0xseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdhV1lnS0c5d2RHbHZibk11Wlc1aFlteGxaQ0I4ZkNCMGFHbHpMbVZ1WVdKc1pXUXBJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQXZMeUJGYm1GaWJHVWdkR2hwY3lCdGIyUjFiR1VnWVc1a0lHUmxjR1Z1WkdWdVkybGxjeTVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQXZMeUJYYVd4c0lHTmhiR3dnZEdocGN5NWphR1ZqYXlncFhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZEdocGN5NWxibUZpYkdVb0tUdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSDBnWld4elpTQjdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2RHaHBjeTVqYUdWamF5Z3BPMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0I5TEZ4eVhHNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ1pHVm1hVzVsUkdWd09pQm1kVzVqZEdsdmJpQW9hU3dnWkdWd1JYaHdiM0owY3lrZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnUW1WallYVnpaU0J2WmlCamVXTnNaWE1zSUdSbFptbHVaV1FnWTJGc2JHSmhZMnNnWm05eUlHRWdaMmwyWlc1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDOHZJR1Y0Y0c5eWRDQmpZVzRnWW1VZ1kyRnNiR1ZrSUcxdmNtVWdkR2hoYmlCdmJtTmxMbHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYVdZZ0tDRjBhR2x6TG1SbGNFMWhkR05vWldSYmFWMHBJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjBhR2x6TG1SbGNFMWhkR05vWldSYmFWMGdQU0IwY25WbE8xeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUhSb2FYTXVaR1Z3UTI5MWJuUWdMVDBnTVR0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0IwYUdsekxtUmxjRVY0Y0c5eWRITmJhVjBnUFNCa1pYQkZlSEJ2Y25Sek8xeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdmVnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQjlMRnh5WEc1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnWm1WMFkyZzZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHbG1JQ2gwYUdsekxtWmxkR05vWldRcElIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCeVpYUjFjbTQ3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCOVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjBhR2x6TG1abGRHTm9aV1FnUFNCMGNuVmxPMXh5WEc1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHTnZiblJsZUhRdWMzUmhjblJVYVcxbElEMGdLRzVsZHlCRVlYUmxLQ2twTG1kbGRGUnBiV1VvS1R0Y2NseHVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JzWlhRZ2JXRndJRDBnZEdocGN5NXRZWEE3WEhKY2JseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnU1dZZ2RHaGxJRzFoYm1GblpYSWdhWE1nWm05eUlHRWdjR3gxWjJsdUlHMWhibUZuWldRZ2NtVnpiM1Z5WTJVc1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQXZMeUJoYzJzZ2RHaGxJSEJzZFdkcGJpQjBieUJzYjJGa0lHbDBJRzV2ZHk1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHbG1JQ2gwYUdsekxuTm9hVzBwSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JqYjI1MFpYaDBMbTFoYTJWU1pYRjFhWEpsS0hSb2FYTXViV0Z3TENCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHVnVZV0pzWlVKMWFXeGtRMkZzYkdKaFkyczZJSFJ5ZFdWY2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I5S1NoMGFHbHpMbk5vYVcwdVpHVndjeUI4ZkNCYlhTd2dZbWx1WkNoMGFHbHpMQ0JtZFc1amRHbHZiaUFvS1NCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lISmxkSFZ5YmlCdFlYQXVjSEpsWm1sNElEOGdkR2hwY3k1allXeHNVR3gxWjJsdUtDa2dPaUIwYUdsekxteHZZV1FvS1R0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I5S1NrN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjlJR1ZzYzJVZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklGSmxaM1ZzWVhJZ1pHVndaVzVrWlc1amVTNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCeVpYUjFjbTRnYldGd0xuQnlaV1pwZUNBL0lIUm9hWE11WTJGc2JGQnNkV2RwYmlncElEb2dkR2hwY3k1c2IyRmtLQ2s3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCOVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUgwc1hISmNibHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQnNiMkZrT2lCbWRXNWpkR2x2YmlBb0tTQjdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JzWlhRZ2RYSnNJRDBnZEdocGN5NXRZWEF1ZFhKc08xeHlYRzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklGSmxaM1ZzWVhJZ1pHVndaVzVrWlc1amVTNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR2xtSUNnaGRYSnNSbVYwWTJobFpGdDFjbXhkS1NCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZFhKc1JtVjBZMmhsWkZ0MWNteGRJRDBnZEhKMVpUdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCamIyNTBaWGgwTG14dllXUW9kR2hwY3k1dFlYQXVhV1FzSUhWeWJDazdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I5WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJSDBzWEhKY2JseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBdktpcGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDb2dRMmhsWTJ0eklHbG1JSFJvWlNCdGIyUjFiR1VnYVhNZ2NtVmhaSGtnZEc4Z1pHVm1hVzVsSUdsMGMyVnNaaXdnWVc1a0lHbG1JSE52TEZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnS2lCa1pXWnBibVVnYVhRdVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBcUwxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNCamFHVmphem9nWm5WdVkzUnBiMjRnS0NrZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdhV1lnS0NGMGFHbHpMbVZ1WVdKc1pXUWdmSHdnZEdocGN5NWxibUZpYkdsdVp5a2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lISmxkSFZ5Ymp0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMWNjbHh1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCc1pYUWdaWEp5TENCamFuTk5iMlIxYkdVc1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYVdRZ1BTQjBhR2x6TG0xaGNDNXBaQ3hjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQmtaWEJGZUhCdmNuUnpJRDBnZEdocGN5NWtaWEJGZUhCdmNuUnpMRnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHVjRjRzl5ZEhNZ1BTQjBhR2x6TG1WNGNHOXlkSE1zWEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdabUZqZEc5eWVTQTlJSFJvYVhNdVptRmpkRzl5ZVR0Y2NseHVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JwWmlBb0lYUm9hWE11YVc1cGRHVmtLU0I3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnVDI1c2VTQm1aWFJqYUNCcFppQnViM1FnWVd4eVpXRmtlU0JwYmlCMGFHVWdaR1ZtVVhWbGRXVXVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2FXWWdLQ0ZvWVhOUWNtOXdLR052Ym5SbGVIUXVaR1ZtVVhWbGRXVk5ZWEFzSUdsa0tTa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0IwYUdsekxtWmxkR05vS0NrN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZTQmxiSE5sSUdsbUlDaDBhR2x6TG1WeWNtOXlLU0I3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdkR2hwY3k1bGJXbDBLQ2RsY25KdmNpY3NJSFJvYVhNdVpYSnliM0lwTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZTQmxiSE5sSUdsbUlDZ2hkR2hwY3k1a1pXWnBibWx1WnlrZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklGUm9aU0JtWVdOMGIzSjVJR052ZFd4a0lIUnlhV2RuWlhJZ1lXNXZkR2hsY2lCeVpYRjFhWEpsSUdOaGJHeGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBdkx5QjBhR0YwSUhkdmRXeGtJSEpsYzNWc2RDQnBiaUJqYUdWamEybHVaeUIwYUdseklHMXZaSFZzWlNCMGIxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklHUmxabWx1WlNCcGRITmxiR1lnWVdkaGFXNHVJRWxtSUdGc2NtVmhaSGtnYVc0Z2RHaGxJSEJ5YjJObGMzTmNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBdkx5QnZaaUJrYjJsdVp5QjBhR0YwTENCemEybHdJSFJvYVhNZ2QyOXlheTVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjBhR2x6TG1SbFptbHVhVzVuSUQwZ2RISjFaVHRjY2x4dVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYVdZZ0tIUm9hWE11WkdWd1EyOTFiblFnUENBeElDWW1JQ0YwYUdsekxtUmxabWx1WldRcElIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdhV1lnS0dselJuVnVZM1JwYjI0b1ptRmpkRzl5ZVNrcElIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUhSeWVTQjdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdaWGh3YjNKMGN5QTlJR052Ym5SbGVIUXVaWGhsWTBOaUtHbGtMQ0JtWVdOMGIzSjVMQ0JrWlhCRmVIQnZjblJ6TENCbGVIQnZjblJ6S1R0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSDBnWTJGMFkyZ2dLR1VwSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCbGNuSWdQU0JsTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdmVnh5WEc1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQzh2SUVaaGRtOXlJSEpsZEhWeWJpQjJZV3gxWlNCdmRtVnlJR1Y0Y0c5eWRITXVJRWxtSUc1dlpHVXZZMnB6SUdsdUlIQnNZWGtzWEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQXZMeUIwYUdWdUlIZHBiR3dnYm05MElHaGhkbVVnWVNCeVpYUjFjbTRnZG1Gc2RXVWdZVzU1ZDJGNUxpQkdZWFp2Y2x4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnYlc5a2RXeGxMbVY0Y0c5eWRITWdZWE56YVdkdWJXVnVkQ0J2ZG1WeUlHVjRjRzl5ZEhNZ2IySnFaV04wTGx4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdhV1lnS0hSb2FYTXViV0Z3TG1selJHVm1hVzVsSUNZbUlHVjRjRzl5ZEhNZ1BUMDlJSFZ1WkdWbWFXNWxaQ2tnZTF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdOcWMwMXZaSFZzWlNBOUlIUm9hWE11Ylc5a2RXeGxPMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR2xtSUNoamFuTk5iMlIxYkdVcElIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnWlhod2IzSjBjeUE5SUdOcWMwMXZaSFZzWlM1bGVIQnZjblJ6TzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUgwZ1pXeHpaU0JwWmlBb2RHaHBjeTUxYzJsdVowVjRjRzl5ZEhNcElIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z1pYaHdiM0owY3lCaGJISmxZV1I1SUhObGRDQjBhR1VnWkdWbWFXNWxaQ0IyWVd4MVpTNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnWlhod2IzSjBjeUE5SUhSb2FYTXVaWGh3YjNKMGN6dGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjlYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCOVhISmNibHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2FXWWdLR1Z5Y2lrZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDOHZJRWxtSUhSb1pYSmxJR2x6SUdGdUlHVnljbTl5SUd4cGMzUmxibVZ5TENCbVlYWnZjaUJ3WVhOemFXNW5YSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnZEc4Z2RHaGhkQ0JwYm5OMFpXRmtJRzltSUhSb2NtOTNhVzVuSUdGdUlHVnljbTl5TGlCSWIzZGxkbVZ5TEZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklHOXViSGtnWkc4Z2FYUWdabTl5SUdSbFptbHVaU2dwSjJRZ0lHMXZaSFZzWlhNdUlISmxjWFZwY21WY2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBdkx5QmxjbkppWVdOcmN5QnphRzkxYkdRZ2JtOTBJR0psSUdOaGJHeGxaQ0JtYjNJZ1ptRnBiSFZ5WlhNZ2FXNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQXZMeUIwYUdWcGNpQmpZV3hzWW1GamEzTWdLQ00yT1RrcExpQkliM2RsZG1WeUlHbG1JR0VnWjJ4dlltRnNYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnYjI1RmNuSnZjaUJwY3lCelpYUXNJSFZ6WlNCMGFHRjBMbHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR2xtSUNnb2RHaHBjeTVsZG1WdWRITXVaWEp5YjNJZ0ppWWdkR2hwY3k1dFlYQXVhWE5FWldacGJtVXBJSHg4WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lISmxjUzV2YmtWeWNtOXlJQ0U5UFNCa1pXWmhkV3gwVDI1RmNuSnZjaWtnZTF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQmxjbkl1Y21WeGRXbHlaVTFoY0NBOUlIUm9hWE11YldGd08xeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JsY25JdWNtVnhkV2x5WlUxdlpIVnNaWE1nUFNCMGFHbHpMbTFoY0M1cGMwUmxabWx1WlNBL0lGdDBhR2x6TG0xaGNDNXBaRjBnT2lCdWRXeHNPMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCbGNuSXVjbVZ4ZFdseVpWUjVjR1VnUFNCMGFHbHpMbTFoY0M1cGMwUmxabWx1WlNBL0lDZGtaV1pwYm1VbklEb2dKM0psY1hWcGNtVW5PMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCeVpYUjFjbTRnYjI1RmNuSnZjaWdvZEdocGN5NWxjbkp2Y2lBOUlHVnljaWtwTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUgwZ1pXeHpaU0JwWmlBb2RIbHdaVzltSUdOdmJuTnZiR1VnSVQwOUlDZDFibVJsWm1sdVpXUW5JQ1ltWEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHTnZibk52YkdVdVpYSnliM0lwSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnVEc5bklIUm9aU0JsY25KdmNpQm1iM0lnWkdWaWRXZG5hVzVuTGlCSlppQndjbTl0YVhObGN5QmpiM1ZzWkNCaVpWeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCMWMyVmtMQ0IwYUdseklIZHZkV3hrSUdKbElHUnBabVpsY21WdWRDd2dZblYwSUcxaGEybHVaeUJrYnk1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdZMjl1YzI5c1pTNWxjbkp2Y2lobGNuSXBPMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSDBnWld4elpTQjdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklFUnZJRzV2ZENCM1lXNTBJSFJ2SUdOdmJYQnNaWFJsYkhrZ2JHOXpaU0IwYUdVZ1pYSnliM0l1SUZkb2FXeGxJSFJvYVhOY2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnZDJsc2JDQnRaWE56SUhWd0lIQnliMk5sYzNOcGJtY2dZVzVrSUd4bFlXUWdkRzhnYzJsdGFXeGhjaUJ5WlhOMWJIUnpYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklHRnpJR0oxWnlBeE5EUXdMQ0JwZENCaGRDQnNaV0Z6ZENCemRYSm1ZV05sY3lCMGFHVWdaWEp5YjNJdVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSEpsY1M1dmJrVnljbTl5S0dWeWNpazdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdmVnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZWeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjlJR1ZzYzJVZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z1NuVnpkQ0JoSUd4cGRHVnlZV3dnZG1Gc2RXVmNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdWNGNHOXlkSE1nUFNCbVlXTjBiM0o1TzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCOVhISmNibHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0IwYUdsekxtVjRjRzl5ZEhNZ1BTQmxlSEJ2Y25Sek8xeHlYRzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYVdZZ0tIUm9hWE11YldGd0xtbHpSR1ZtYVc1bElDWW1JQ0YwYUdsekxtbG5ibTl5WlNrZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnWkdWbWFXNWxaRnRwWkYwZ1BTQmxlSEJ2Y25Sek8xeHlYRzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHbG1JQ2h5WlhFdWIyNVNaWE52ZFhKalpVeHZZV1FwSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCc1pYUWdjbVZ6VEc5aFpFMWhjSE1nUFNCYlhUdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQmxZV05vS0hSb2FYTXVaR1Z3VFdGd2N5d2dablZ1WTNScGIyNGdLR1JsY0UxaGNDa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCeVpYTk1iMkZrVFdGd2N5NXdkWE5vS0dSbGNFMWhjQzV1YjNKdFlXeHBlbVZrVFdGd0lIeDhJR1JsY0UxaGNDazdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdmU2s3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnY21WeExtOXVVbVZ6YjNWeVkyVk1iMkZrS0dOdmJuUmxlSFFzSUhSb2FYTXViV0Z3TENCeVpYTk1iMkZrVFdGd2N5azdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCOVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMWNjbHh1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklFTnNaV0Z1SUhWd1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHTnNaV0Z1VW1WbmFYTjBjbmtvYVdRcE8xeHlYRzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZEdocGN5NWtaV1pwYm1Wa0lEMGdkSEoxWlR0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I5WEhKY2JseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklFWnBibWx6YUdWa0lIUm9aU0JrWldacGJtVWdjM1JoWjJVdUlFRnNiRzkzSUdOaGJHeHBibWNnWTJobFkyc2dZV2RoYVc1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCMGJ5QmhiR3h2ZHlCa1pXWnBibVVnYm05MGFXWnBZMkYwYVc5dWN5QmlaV3h2ZHlCcGJpQjBhR1VnWTJGelpTQnZaaUJoWEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnWTNsamJHVXVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2RHaHBjeTVrWldacGJtbHVaeUE5SUdaaGJITmxPMXh5WEc1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JwWmlBb2RHaHBjeTVrWldacGJtVmtJQ1ltSUNGMGFHbHpMbVJsWm1sdVpVVnRhWFIwWldRcElIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdkR2hwY3k1a1pXWnBibVZGYldsMGRHVmtJRDBnZEhKMVpUdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdkR2hwY3k1bGJXbDBLQ2RrWldacGJtVmtKeXdnZEdocGN5NWxlSEJ2Y25SektUdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdkR2hwY3k1a1pXWnBibVZGYldsMFEyOXRjR3hsZEdVZ1BTQjBjblZsTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSDFjY2x4dVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjlYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lIMHNYSEpjYmx4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0JqWVd4c1VHeDFaMmx1T2lCbWRXNWpkR2x2YmlBb0tTQjdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JzWlhRZ2JXRndJRDBnZEdocGN5NXRZWEE3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCc1pYUWdhV1FnUFNCdFlYQXVhV1E3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBdkx5Qk5ZWEFnWVd4eVpXRmtlU0J1YjNKdFlXeHBlbVZrSUhSb1pTQndjbVZtYVhndVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnNaWFFnY0d4MVoybHVUV0Z3SUQwZ2JXRnJaVTF2WkhWc1pVMWhjQ2h0WVhBdWNISmxabWw0S1R0Y2NseHVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCTllYSnJJSFJvYVhNZ1lYTWdZU0JrWlhCbGJtUmxibU41SUdadmNpQjBhR2x6SUhCc2RXZHBiaXdnYzI4Z2FYUmNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQzh2SUdOaGJpQmlaU0IwY21GalpXUWdabTl5SUdONVkyeGxjeTVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUhSb2FYTXVaR1Z3VFdGd2N5NXdkWE5vS0hCc2RXZHBiazFoY0NrN1hISmNibHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYjI0b2NHeDFaMmx1VFdGd0xDQW5aR1ZtYVc1bFpDY3NJR0pwYm1Rb2RHaHBjeXdnWm5WdVkzUnBiMjRnS0hCc2RXZHBiaWtnZTF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR3hsZENCc2IyRmtMQ0J1YjNKdFlXeHBlbVZrVFdGd0xDQnViM0p0WVd4cGVtVmtUVzlrTEZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCaWRXNWtiR1ZKWkNBOUlHZGxkRTkzYmloaWRXNWtiR1Z6VFdGd0xDQjBhR2x6TG0xaGNDNXBaQ2tzWEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUc1aGJXVWdQU0IwYUdsekxtMWhjQzV1WVcxbExGeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQndZWEpsYm5ST1lXMWxJRDBnZEdocGN5NXRZWEF1Y0dGeVpXNTBUV0Z3SUQ4Z2RHaHBjeTV0WVhBdWNHRnlaVzUwVFdGd0xtNWhiV1VnT2lCdWRXeHNMRnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JzYjJOaGJGSmxjWFZwY21VZ1BTQmpiMjUwWlhoMExtMWhhMlZTWlhGMWFYSmxLRzFoY0M1d1lYSmxiblJOWVhBc0lIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdWdVlXSnNaVUoxYVd4a1EyRnNiR0poWTJzNklIUnlkV1ZjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlNrN1hISmNibHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDOHZJRWxtSUdOMWNuSmxiblFnYldGd0lHbHpJRzV2ZENCdWIzSnRZV3hwZW1Wa0xDQjNZV2wwSUdadmNpQjBhR0YwWEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnYm05eWJXRnNhWHBsWkNCdVlXMWxJSFJ2SUd4dllXUWdhVzV6ZEdWaFpDQnZaaUJqYjI1MGFXNTFhVzVuTGx4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR2xtSUNoMGFHbHpMbTFoY0M1MWJtNXZjbTFoYkdsNlpXUXBJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z1RtOXliV0ZzYVhwbElIUm9aU0JKUkNCcFppQjBhR1VnY0d4MVoybHVJR0ZzYkc5M2N5QnBkQzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYVdZZ0tIQnNkV2RwYmk1dWIzSnRZV3hwZW1VcElIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUc1aGJXVWdQU0J3YkhWbmFXNHVibTl5YldGc2FYcGxLRzVoYldVc0lHWjFibU4wYVc5dUlDaHVZVzFsS1NCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2NtVjBkWEp1SUc1dmNtMWhiR2w2WlNodVlXMWxMQ0J3WVhKbGJuUk9ZVzFsTENCMGNuVmxLVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMHBJSHg4SUNjbk8xeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjlYSEpjYmx4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBdkx5QndjbVZtYVhnZ1lXNWtJRzVoYldVZ2MyaHZkV3hrSUdGc2NtVmhaSGtnWW1VZ2JtOXliV0ZzYVhwbFpDd2dibThnYm1WbFpGeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQXZMeUJtYjNJZ1lYQndiSGxwYm1jZ2JXRndJR052Ym1acFp5QmhaMkZwYmlCbGFYUm9aWEl1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUc1dmNtMWhiR2w2WldSTllYQWdQU0J0WVd0bFRXOWtkV3hsVFdGd0tHMWhjQzV3Y21WbWFYZ2dLeUFuSVNjZ0t5QnVZVzFsTEZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdkR2hwY3k1dFlYQXVjR0Z5Wlc1MFRXRndLVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYjI0b2JtOXliV0ZzYVhwbFpFMWhjQ3hjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDZGtaV1pwYm1Wa0p5d2dZbWx1WkNoMGFHbHpMQ0JtZFc1amRHbHZiaUFvZG1Gc2RXVXBJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0IwYUdsekxtMWhjQzV1YjNKdFlXeHBlbVZrVFdGd0lEMGdibTl5YldGc2FYcGxaRTFoY0R0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCMGFHbHpMbWx1YVhRb1cxMHNJR1oxYm1OMGFXOXVJQ2dwSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdjbVYwZFhKdUlIWmhiSFZsTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUgwc0lHNTFiR3dzSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdaVzVoWW14bFpEb2dkSEoxWlN4Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdhV2R1YjNKbE9pQjBjblZsWEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlNrN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I5S1NrN1hISmNibHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0J1YjNKdFlXeHBlbVZrVFc5a0lEMGdaMlYwVDNkdUtISmxaMmx6ZEhKNUxDQnViM0p0WVd4cGVtVmtUV0Z3TG1sa0tUdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdhV1lnS0c1dmNtMWhiR2w2WldSTmIyUXBJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDOHZJRTFoY21zZ2RHaHBjeUJoY3lCaElHUmxjR1Z1WkdWdVkza2dabTl5SUhSb2FYTWdjR3gxWjJsdUxDQnpieUJwZEZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnWTJGdUlHSmxJSFJ5WVdObFpDQm1iM0lnWTNsamJHVnpMbHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2RHaHBjeTVrWlhCTllYQnpMbkIxYzJnb2JtOXliV0ZzYVhwbFpFMWhjQ2s3WEhKY2JseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYVdZZ0tIUm9hWE11WlhabGJuUnpMbVZ5Y205eUtTQjdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdibTl5YldGc2FYcGxaRTF2WkM1dmJpZ25aWEp5YjNJbkxDQmlhVzVrS0hSb2FYTXNJR1oxYm1OMGFXOXVJQ2hsY25JcElIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZEdocGN5NWxiV2wwS0NkbGNuSnZjaWNzSUdWeWNpazdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdmU2twTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdmVnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2JtOXliV0ZzYVhwbFpFMXZaQzVsYm1GaWJHVW9LVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlZ4eVhHNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdjbVYwZFhKdU8xeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUgxY2NseHVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0x5OGdTV1lnWVNCd1lYUm9jeUJqYjI1bWFXY3NJSFJvWlc0Z2FuVnpkQ0JzYjJGa0lIUm9ZWFFnWm1sc1pTQnBibk4wWldGa0lIUnZYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0x5OGdjbVZ6YjJ4MlpTQjBhR1VnY0d4MVoybHVMQ0JoY3lCcGRDQnBjeUJpZFdsc2RDQnBiblJ2SUhSb1lYUWdjR0YwYUhNZ2JHRjVaWEl1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdhV1lnS0dKMWJtUnNaVWxrS1NCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIUm9hWE11YldGd0xuVnliQ0E5SUdOdmJuUmxlSFF1Ym1GdFpWUnZWWEpzS0dKMWJtUnNaVWxrS1R0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2RHaHBjeTVzYjJGa0tDazdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSEpsZEhWeWJqdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCOVhISmNibHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHeHZZV1FnUFNCaWFXNWtLSFJvYVhNc0lHWjFibU4wYVc5dUlDaDJZV3gxWlNrZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjBhR2x6TG1sdWFYUW9XMTBzSUdaMWJtTjBhVzl1SUNncElIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUhKbGRIVnliaUIyWVd4MVpUdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdmU3dnYm5Wc2JDd2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ1pXNWhZbXhsWkRvZ2RISjFaVnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I5S1R0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I5S1R0Y2NseHVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2JHOWhaQzVsY25KdmNpQTlJR0pwYm1Rb2RHaHBjeXdnWm5WdVkzUnBiMjRnS0dWeWNpa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0IwYUdsekxtbHVhWFJsWkNBOUlIUnlkV1U3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUhSb2FYTXVaWEp5YjNJZ1BTQmxjbkk3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdWeWNpNXlaWEYxYVhKbFRXOWtkV3hsY3lBOUlGdHBaRjA3WEhKY2JseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQXZMeUJTWlcxdmRtVWdkR1Z0Y0NCMWJtNXZjbTFoYkdsNlpXUWdiVzlrZFd4bGN5Qm1iM0lnZEdocGN5QnRiMlIxYkdVc0lITnBibU5sSUhSb1pYa2dkMmxzYkNCdVpYWmxjaUJpWlNCeVpYTnZiSFpsWkNCdmRHaGxjbmRwYzJVZ1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDOHZJRzV2ZHk1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ1pXRmphRkJ5YjNBb2NtVm5hWE4wY25rc0lHWjFibU4wYVc5dUlDaHRiMlFwSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR2xtSUNodGIyUXViV0Z3TG1sa0xtbHVaR1Y0VDJZb2FXUWdLeUFuWDNWdWJtOXliV0ZzYVhwbFpDY3BJRDA5UFNBd0tTQjdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdZMnhsWVc1U1pXZHBjM1J5ZVNodGIyUXViV0Z3TG1sa0tUdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUgxY2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZTazdYSEpjYmx4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCdmJrVnljbTl5S0dWeWNpazdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZTazdYSEpjYmx4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQzh2SUVGc2JHOTNJSEJzZFdkcGJuTWdkRzhnYkc5aFpDQnZkR2hsY2lCamIyUmxJSGRwZEdodmRYUWdhR0YyYVc1bklIUnZJR3R1YjNjZ2RHaGxJR052Ym5SbGVIUWdiM0lnYUc5M0lIUnZJQ2RqYjIxd2JHVjBaU2NnZEdobElGeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklHeHZZV1F1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdiRzloWkM1bWNtOXRWR1Y0ZENBOUlHSnBibVFvZEdocGN5d2dablZ1WTNScGIyNGdLSFJsZUhRc0lIUmxlSFJCYkhRcElIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMeXBxYzJ4cGJuUWdaWFpwYkRvZ2RISjFaU0FxTDF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCc1pYUWdiVzlrZFd4bFRtRnRaU0E5SUcxaGNDNXVZVzFsTEZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdiVzlrZFd4bFRXRndJRDBnYldGclpVMXZaSFZzWlUxaGNDaHRiMlIxYkdWT1lXMWxLU3hjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHaGhjMGx1ZEdWeVlXTjBhWFpsSUQwZ2RYTmxTVzUwWlhKaFkzUnBkbVU3WEhKY2JseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQXZMeUJCY3lCdlppQXlMakV1TUN3Z2MzVndjRzl5ZENCcWRYTjBJSEJoYzNOcGJtY2dkR2hsSUhSbGVIUXNJSFJ2SUhKbGFXNW1iM0pqWlNCbWNtOXRWR1Y0ZENCdmJteDVJR0psYVc1bklHTmhiR3hsWkNCdmJtTmxJSEJsY2lCY2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0x5OGdjbVZ6YjNWeVkyVXVJRk4wYVd4c0lITjFjSEJ2Y25RZ2IyeGtJSE4wZVd4bElHOW1JSEJoYzNOcGJtY2diVzlrZFd4bFRtRnRaU0JpZFhRZ1pHbHpZMkZ5WkNCMGFHRjBJRzF2WkhWc1pVNWhiV1VnYVc0Z1ptRjJiM0lnWEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklHOW1JSFJvWlNCcGJuUmxjbTVoYkNCeVpXWXVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR2xtSUNoMFpYaDBRV3gwS1NCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0IwWlhoMElEMGdkR1Y0ZEVGc2REdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdmVnh5WEc1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0x5OGdWSFZ5YmlCdlptWWdhVzUwWlhKaFkzUnBkbVVnYzJOeWFYQjBJRzFoZEdOb2FXNW5JR1p2Y2lCSlJTQm1iM0lnWVc1NUlHUmxabWx1WlNCallXeHNjeUJwYmlCMGFHVWdkR1Y0ZEN3Z2RHaGxiaUIwZFhKdUlHbDBJRnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCaVlXTnJJRzl1SUdGMElIUm9aU0JsYm1RdVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHbG1JQ2hvWVhOSmJuUmxjbUZqZEdsMlpTa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2RYTmxTVzUwWlhKaFkzUnBkbVVnUFNCbVlXeHpaVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlZ4eVhHNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnVUhKcGJXVWdkR2hsSUhONWMzUmxiU0JpZVNCamNtVmhkR2x1WnlCaElHMXZaSFZzWlNCcGJuTjBZVzVqWlNCbWIzSWdhWFF1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdkbGRFMXZaSFZzWlNodGIyUjFiR1ZOWVhBcE8xeHlYRzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z1ZISmhibk5tWlhJZ1lXNTVJR052Ym1acFp5QjBieUIwYUdseklHOTBhR1Z5SUcxdlpIVnNaUzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYVdZZ0tHaGhjMUJ5YjNBb1kyOXVabWxuTG1OdmJtWnBaeXdnYVdRcEtTQjdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCamIyNW1hV2N1WTI5dVptbG5XMjF2WkhWc1pVNWhiV1ZkSUQwZ1kyOXVabWxuTG1OdmJtWnBaMXRwWkYwN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMWNjbHh1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUhSeWVTQjdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCeVpYRXVaWGhsWXloMFpYaDBLVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlNCallYUmphQ0FvWlNrZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnY21WMGRYSnVJRzl1UlhKeWIzSW9iV0ZyWlVWeWNtOXlLQ2RtY205dGRHVjRkR1YyWVd3bkxGeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDZG1jbTl0VkdWNGRDQmxkbUZzSUdadmNpQW5JQ3NnYVdRZ0sxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDY2dabUZwYkdWa09pQW5JQ3NnWlN4Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCbExGeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lGdHBaRjBwS1R0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZWeHlYRzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYVdZZ0tHaGhjMGx1ZEdWeVlXTjBhWFpsS1NCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0IxYzJWSmJuUmxjbUZqZEdsMlpTQTlJSFJ5ZFdVN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMWNjbHh1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklFMWhjbXNnZEdocGN5QmhjeUJoSUdSbGNHVnVaR1Z1WTNrZ1ptOXlJSFJvWlNCd2JIVm5hVzRnY21WemIzVnlZMlV1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUhSb2FYTXVaR1Z3VFdGd2N5NXdkWE5vS0cxdlpIVnNaVTFoY0NrN1hISmNibHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCVGRYQndiM0owSUdGdWIyNTViVzkxY3lCdGIyUjFiR1Z6TGx4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCamIyNTBaWGgwTG1OdmJYQnNaWFJsVEc5aFpDaHRiMlIxYkdWT1lXMWxLVHRjY2x4dVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDOHZJRUpwYm1RZ2RHaGxJSFpoYkhWbElHOW1JSFJvWVhRZ2JXOWtkV3hsSUhSdklIUm9aU0IyWVd4MVpTQm1iM0lnZEdocGN5QnlaWE52ZFhKalpTQkpSQzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYkc5allXeFNaWEYxYVhKbEtGdHRiMlIxYkdWT1lXMWxYU3dnYkc5aFpDazdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZTazdYSEpjYmx4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQzh2SUZWelpTQndZWEpsYm5ST1lXMWxJR2hsY21VZ2MybHVZMlVnZEdobElIQnNkV2RwYmlkeklHNWhiV1VnYVhNZ2JtOTBJSEpsYkdsaFlteGxMQ0JqYjNWc1pDQmlaU0J6YjIxbElIZGxhWEprSUhOMGNtbHVaeUIzYVhSb0lHNXZJRnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDOHZJSEJoZEdnZ2RHaGhkQ0JoWTNSMVlXeHNlU0IzWVc1MGN5QjBieUJ5WldabGNtVnVZMlVnZEdobElIQmhjbVZ1ZEU1aGJXVW5jeUJ3WVhSb0xseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUhCc2RXZHBiaTVzYjJGa0tHMWhjQzV1WVcxbExDQnNiMk5oYkZKbGNYVnBjbVVzSUd4dllXUXNJR052Ym1acFp5azdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I5S1NrN1hISmNibHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnWTI5dWRHVjRkQzVsYm1GaWJHVW9jR3gxWjJsdVRXRndMQ0IwYUdsektUdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSFJvYVhNdWNHeDFaMmx1VFdGd2MxdHdiSFZuYVc1TllYQXVhV1JkSUQwZ2NHeDFaMmx1VFdGd08xeHlYRzRnSUNBZ0lDQWdJQ0FnSUNCOUxGeHlYRzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdaVzVoWW14bE9pQm1kVzVqZEdsdmJpQW9LU0I3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCbGJtRmliR1ZrVW1WbmFYTjBjbmxiZEdocGN5NXRZWEF1YVdSZElEMGdkR2hwY3p0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIUm9hWE11Wlc1aFlteGxaQ0E5SUhSeWRXVTdYSEpjYmx4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0x5OGdVMlYwSUdac1lXY2diV1Z1ZEdsdmJtbHVaeUIwYUdGMElIUm9aU0J0YjJSMWJHVWdhWE1nWlc1aFlteHBibWNzSUhOdklIUm9ZWFFnYVcxdFpXUnBZWFJsSUdOaGJHeHpJSFJ2SUhSb1pTQmtaV1pwYm1Wa0lHTmhiR3hpWVdOcmN5Qm1iM0lnWEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBdkx5QmtaWEJsYm1SbGJtTnBaWE1nWkc4Z2JtOTBJSFJ5YVdkblpYSWdhVzVoWkhabGNuUmxiblFnYkc5aFpDQjNhWFJvSUhSb1pTQmtaWEJEYjNWdWRDQnpkR2xzYkNCaVpXbHVaeUI2WlhKdkxseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdkR2hwY3k1bGJtRmliR2x1WnlBOUlIUnlkV1U3WEhKY2JseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnUlc1aFlteGxJR1ZoWTJnZ1pHVndaVzVrWlc1amVTNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR1ZoWTJnb2RHaHBjeTVrWlhCTllYQnpMQ0JpYVc1a0tIUm9hWE1zSUdaMWJtTjBhVzl1SUNoa1pYQk5ZWEFzSUdrcElIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCc1pYUWdhV1E3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdiR1YwSUcxdlpEdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCc1pYUWdhR0Z1Wkd4bGNqdGNjbHh1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdhV1lnS0hSNWNHVnZaaUJrWlhCTllYQWdQVDA5SUNkemRISnBibWNuS1NCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDOHZJRVJsY0dWdVpHVnVZM2tnYm1WbFpITWdkRzhnWW1VZ1kyOXVkbVZ5ZEdWa0lIUnZJR0VnWkdWd1RXRndJR0Z1WkNCM2FYSmxaQ0IxY0NCMGJ5QjBhR2x6SUcxdlpIVnNaUzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnWkdWd1RXRndJRDBnYldGclpVMXZaSFZzWlUxaGNDaGtaWEJOWVhBc1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FvZEdocGN5NXRZWEF1YVhORVpXWnBibVVnUHlCMGFHbHpMbTFoY0NBNklIUm9hWE11YldGd0xuQmhjbVZ1ZEUxaGNDa3NYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCbVlXeHpaU3hjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDRjBhR2x6TG5OcmFYQk5ZWEFwTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCMGFHbHpMbVJsY0UxaGNITmJhVjBnUFNCa1pYQk5ZWEE3WEhKY2JseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQm9ZVzVrYkdWeUlEMGdaMlYwVDNkdUtHaGhibVJzWlhKekxDQmtaWEJOWVhBdWFXUXBPMXh5WEc1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2FXWWdLR2hoYm1Sc1pYSXBJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIUm9hWE11WkdWd1JYaHdiM0owYzF0cFhTQTlJR2hoYm1Sc1pYSW9kR2hwY3lrN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0J5WlhSMWNtNDdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSDFjY2x4dVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIUm9hWE11WkdWd1EyOTFiblFnS3owZ01UdGNjbHh1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUc5dUtHUmxjRTFoY0N3Z0oyUmxabWx1WldRbkxDQmlhVzVrS0hSb2FYTXNJR1oxYm1OMGFXOXVJQ2hrWlhCRmVIQnZjblJ6S1NCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JwWmlBb2RHaHBjeTUxYm1SbFptVmtLU0I3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnY21WMGRYSnVPMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZWeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZEdocGN5NWtaV1pwYm1WRVpYQW9hU3dnWkdWd1JYaHdiM0owY3lrN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0IwYUdsekxtTm9aV05yS0NrN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMHBLVHRjY2x4dVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHbG1JQ2gwYUdsekxtVnljbUpoWTJzcElIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUc5dUtHUmxjRTFoY0N3Z0oyVnljbTl5Snl3Z1ltbHVaQ2gwYUdsekxDQjBhR2x6TG1WeWNtSmhZMnNwS1R0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZTQmxiSE5sSUdsbUlDaDBhR2x6TG1WMlpXNTBjeTVsY25KdmNpa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0x5OGdUbThnWkdseVpXTjBJR1Z5Y21KaFkyc2diMjRnZEdocGN5QnRiMlIxYkdVc0lHSjFkQ0J6YjIxbGRHaHBibWNnWld4elpTQnBjeUJzYVhOMFpXNXBibWNnWm05eUlHVnljbTl5Y3l3Z2MyOGdZbVVnYzNWeVpTQmNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklIUnZJSEJ5YjNCaFoyRjBaU0IwYUdVZ1pYSnliM0lnWTI5eWNtVmpkR3g1TGx4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdiMjRvWkdWd1RXRndMQ0FuWlhKeWIzSW5MQ0JpYVc1a0tIUm9hWE1zSUdaMWJtTjBhVzl1SUNobGNuSXBJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0IwYUdsekxtVnRhWFFvSjJWeWNtOXlKeXdnWlhKeUtUdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUgwcEtUdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdmVnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMWNjbHh1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdhV1FnUFNCa1pYQk5ZWEF1YVdRN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYlc5a0lEMGdjbVZuYVhOMGNubGJhV1JkTzF4eVhHNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBdkx5QlRhMmx3SUhOd1pXTnBZV3dnYlc5a2RXeGxjeUJzYVd0bElDZHlaWEYxYVhKbEp5d2dKMlY0Y0c5eWRITW5MQ0FuYlc5a2RXeGxKeTRnUVd4emJ5d2daRzl1SjNRZ1kyRnNiQ0JsYm1GaWJHVWdhV1lnYVhRZ2FYTWdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0x5OGdZV3h5WldGa2VTQmxibUZpYkdWa0xDQnBiWEJ2Y25SaGJuUWdhVzRnWTJseVkzVnNZWElnWkdWd1pXNWtaVzVqZVNCallYTmxjeTVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnBaaUFvSVdoaGMxQnliM0FvYUdGdVpHeGxjbk1zSUdsa0tTQW1KaUJ0YjJRZ0ppWWdJVzF2WkM1bGJtRmliR1ZrS1NCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHTnZiblJsZUhRdVpXNWhZbXhsS0dSbGNFMWhjQ3dnZEdocGN5azdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZWeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdmU2twTzF4eVhHNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQzh2SUVWdVlXSnNaU0JsWVdOb0lIQnNkV2RwYmlCMGFHRjBJR2x6SUhWelpXUWdhVzRnSUdFZ1pHVndaVzVrWlc1amVTNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR1ZoWTJoUWNtOXdLSFJvYVhNdWNHeDFaMmx1VFdGd2N5d2dZbWx1WkNoMGFHbHpMQ0JtZFc1amRHbHZiaUFvY0d4MVoybHVUV0Z3S1NCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYkdWMElHMXZaQ0E5SUdkbGRFOTNiaWh5WldkcGMzUnllU3dnY0d4MVoybHVUV0Z3TG1sa0tUdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCcFppQW9iVzlrSUNZbUlDRnRiMlF1Wlc1aFlteGxaQ2tnZTF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCamIyNTBaWGgwTG1WdVlXSnNaU2h3YkhWbmFXNU5ZWEFzSUhSb2FYTXBPMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSDBwS1R0Y2NseHVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0IwYUdsekxtVnVZV0pzYVc1bklEMGdabUZzYzJVN1hISmNibHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZEdocGN5NWphR1ZqYXlncE8xeHlYRzRnSUNBZ0lDQWdJQ0FnSUNCOUxGeHlYRzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdiMjQ2SUdaMWJtTjBhVzl1SUNodVlXMWxMQ0JqWWlrZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdiR1YwSUdOaWN5QTlJSFJvYVhNdVpYWmxiblJ6VzI1aGJXVmRPMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYVdZZ0tDRmpZbk1wSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JqWW5NZ1BTQjBhR2x6TG1WMlpXNTBjMXR1WVcxbFhTQTlJRnRkTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZWeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdZMkp6TG5CMWMyZ29ZMklwTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0I5TEZ4eVhHNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ1pXMXBkRG9nWm5WdVkzUnBiMjRnS0c1aGJXVXNJR1YyZENrZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdaV0ZqYUNoMGFHbHpMbVYyWlc1MGMxdHVZVzFsWFN3Z1puVnVZM1JwYjI0Z0tHTmlLU0I3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdZMklvWlhaMEtUdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSDBwTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2FXWWdLRzVoYldVZ1BUMDlJQ2RsY25KdmNpY3BJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQXZMeUJPYjNjZ2RHaGhkQ0IwYUdVZ1pYSnliM0lnYUdGdVpHeGxjaUIzWVhNZ2RISnBaMmRsY21Wa0xDQnlaVzF2ZG1VZ2RHaGxJR3hwYzNSbGJtVnljeXdnYzJsdVkyVWdkR2hwY3lCaWNtOXJaVzRnVFc5a2RXeGxJR2x1YzNSaGJtTmxYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0x5OGdZMkZ1SUhOMFlYa2dZWEp2ZFc1a0lHWnZjaUJoSUhkb2FXeGxJR2x1SUhSb1pTQnlaV2RwYzNSeWVTNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCa1pXeGxkR1VnZEdocGN5NWxkbVZ1ZEhOYmJtRnRaVjA3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCOVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUgxY2NseHVJQ0FnSUNBZ0lDQjlPMXh5WEc1Y2NseHVJQ0FnSUNBZ0lDQm1kVzVqZEdsdmJpQmpZV3hzUjJWMFRXOWtkV3hsS0dGeVozTXBJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdMeThnVTJ0cGNDQnRiMlIxYkdWeklHRnNjbVZoWkhrZ1pHVm1hVzVsWkM1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnYVdZZ0tDRm9ZWE5RY205d0tHUmxabWx1WldRc0lHRnlaM05iTUYwcEtTQjdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JuWlhSTmIyUjFiR1VvYldGclpVMXZaSFZzWlUxaGNDaGhjbWR6V3pCZExDQnVkV3hzTENCMGNuVmxLU2t1YVc1cGRDaGhjbWR6V3pGZExDQmhjbWR6V3pKZEtUdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ2ZWeHlYRzRnSUNBZ0lDQWdJSDFjY2x4dVhISmNiaUFnSUNBZ0lDQWdablZ1WTNScGIyNGdjbVZ0YjNabFRHbHpkR1Z1WlhJb2JtOWtaU3dnWm5WdVl5d2dibUZ0WlN3Z2FXVk9ZVzFsS1NCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUM4dklFWmhkbTl5SUdSbGRHRmphRVYyWlc1MElHSmxZMkYxYzJVZ2IyWWdTVVU1SUdsemMzVmxMQ0J6WldVZ1lYUjBZV05vUlhabGJuUXZZV1JrUlhabGJuUk1hWE4wWlc1bGNpQmpiMjF0Wlc1MElHVnNjMlYzYUdWeVpTQnBiaUIwYUdseklHWnBiR1V1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJR2xtSUNodWIyUmxMbVJsZEdGamFFVjJaVzUwSUNZbUlDRnBjMDl3WlhKaEtTQjdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCUWNtOWlZV0pzZVNCSlJTNGdTV1lnYm05MElHbDBJSGRwYkd3Z2RHaHliM2NnWVc0Z1pYSnliM0lzSUhkb2FXTm9JSGRwYkd3Z1ltVWdkWE5sWm5Wc0lIUnZJR3R1YjNjdVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnBaaUFvYVdWT1lXMWxLU0I3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdibTlrWlM1a1pYUmhZMmhGZG1WdWRDaHBaVTVoYldVc0lHWjFibU1wTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZWeHlYRzRnSUNBZ0lDQWdJQ0FnSUNCOUlHVnNjMlVnZTF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2JtOWtaUzV5WlcxdmRtVkZkbVZ1ZEV4cGMzUmxibVZ5S0c1aGJXVXNJR1oxYm1Nc0lHWmhiSE5sS1R0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnZlZ4eVhHNGdJQ0FnSUNBZ0lIMWNjbHh1WEhKY2JpQWdJQ0FnSUNBZ0x5b3FYSEpjYmlBZ0lDQWdJQ0FnSUNvZ1IybDJaVzRnWVc0Z1pYWmxiblFnWm5KdmJTQmhJSE5qY21sd2RDQnViMlJsTENCblpYUWdkR2hsSUhKbGNYVnBjbVZxY3lCcGJtWnZJR1p5YjIwZ2FYUXNJR0Z1WkNCMGFHVnVJSEpsYlc5MlpYTWdkR2hsSUdWMlpXNTBJR3hwYzNSbGJtVnljeUJ2Ymx4eVhHNGdJQ0FnSUNBZ0lDQXFJSFJvWlNCdWIyUmxMbHh5WEc0Z0lDQWdJQ0FnSUNBcVhISmNiaUFnSUNBZ0lDQWdJQ29nUUhCaGNtRnRJSHRGZG1WdWRIMGdaWFowWEhKY2JpQWdJQ0FnSUNBZ0lDcGNjbHh1SUNBZ0lDQWdJQ0FnS2lCQWNtVjBkWEp1SUh0UFltcGxZM1I5WEhKY2JpQWdJQ0FnSUNBZ0lDb3ZYSEpjYmlBZ0lDQWdJQ0FnWm5WdVkzUnBiMjRnWjJWMFUyTnlhWEIwUkdGMFlTaGxkblFwSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z1ZYTnBibWNnWTNWeWNtVnVkRlJoY21kbGRDQnBibk4wWldGa0lHOW1JSFJoY21kbGRDQm1iM0lnUm1seVpXWnZlQ0F5TGpBbmN5QnpZV3RsTGlCT2IzUWdZV3hzSUc5c1pDQmljbTkzYzJWeWN5QjNhV3hzSUdKbElITjFjSEJ2Y25SbFpDd2dZblYwSUZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0F2THlCMGFHbHpJRzl1WlNCM1lYTWdaV0Z6ZVNCbGJtOTFaMmdnZEc4Z2MzVndjRzl5ZENCaGJtUWdjM1JwYkd3Z2JXRnJaWE1nYzJWdWMyVXVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lHeGxkQ0J1YjJSbElEMGdaWFowTG1OMWNuSmxiblJVWVhKblpYUWdmSHdnWlhaMExuTnlZMFZzWlcxbGJuUTdYSEpjYmx4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0F2THlCU1pXMXZkbVVnZEdobElHeHBjM1JsYm1WeWN5QnZibU5sSUdobGNtVXVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lISmxiVzkyWlV4cGMzUmxibVZ5S0c1dlpHVXNJR052Ym5SbGVIUXViMjVUWTNKcGNIUk1iMkZrTENBbmJHOWhaQ2NzSUNkdmJuSmxZV1I1YzNSaGRHVmphR0Z1WjJVbktUdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ2NtVnRiM1psVEdsemRHVnVaWElvYm05a1pTd2dZMjl1ZEdWNGRDNXZibE5qY21sd2RFVnljbTl5TENBblpYSnliM0luS1R0Y2NseHVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lISmxkSFZ5YmlCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnViMlJsT2lCdWIyUmxMRnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYVdRNklHNXZaR1VnSmlZZ2JtOWtaUzVuWlhSQmRIUnlhV0oxZEdVb0oyUmhkR0V0Y21WeGRXbHlaVzF2WkhWc1pTY3BYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lIMDdYSEpjYmlBZ0lDQWdJQ0FnZlZ4eVhHNWNjbHh1SUNBZ0lDQWdJQ0JtZFc1amRHbHZiaUJwYm5SaGEyVkVaV1pwYm1WektDa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQnNaWFFnWVhKbmN6dGNjbHh1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQzh2SUVGdWVTQmtaV1pwYm1Wa0lHMXZaSFZzWlhNZ2FXNGdkR2hsSUdkc2IySmhiQ0J4ZFdWMVpTd2dhVzUwWVd0bElIUm9aVzBnYm05M0xseHlYRzRnSUNBZ0lDQWdJQ0FnSUNCMFlXdGxSMnh2WW1Gc1VYVmxkV1VvS1R0Y2NseHVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDOHZJRTFoYTJVZ2MzVnlaU0JoYm5rZ2NtVnRZV2x1YVc1bklHUmxabEYxWlhWbElHbDBaVzF6SUdkbGRDQndjbTl3WlhKc2VTQndjbTlqWlhOelpXUXVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lIZG9hV3hsSUNoa1pXWlJkV1YxWlM1c1pXNW5kR2dwSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHRnlaM01nUFNCa1pXWlJkV1YxWlM1emFHbG1kQ2dwTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2FXWWdLR0Z5WjNOYk1GMGdQVDA5SUc1MWJHd3BJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnlaWFIxY200Z2IyNUZjbkp2Y2lodFlXdGxSWEp5YjNJb0oyMXBjMjFoZEdOb0p5d2dKMDFwYzIxaGRHTm9aV1FnWVc1dmJubHRiM1Z6SUdSbFptbHVaU2dwSUcxdlpIVnNaVG9nSnlBclhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHRnlaM05iWVhKbmN5NXNaVzVuZEdnZ0xTQXhYU2twTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZTQmxiSE5sSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCaGNtZHpJR0Z5WlNCcFpDd2daR1Z3Y3l3Z1ptRmpkRzl5ZVM0Z1UyaHZkV3hrSUdKbElHNXZjbTFoYkdsNlpXUWdZbmtnZEdobFhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z1pHVm1hVzVsS0NrZ1puVnVZM1JwYjI0dVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnWTJGc2JFZGxkRTF2WkhWc1pTaGhjbWR6S1R0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ2ZWeHlYRzRnSUNBZ0lDQWdJQ0FnSUNCamIyNTBaWGgwTG1SbFpsRjFaWFZsVFdGd0lEMGdlMzA3WEhKY2JpQWdJQ0FnSUNBZ2ZWeHlYRzVjY2x4dUlDQWdJQ0FnSUNCamIyNTBaWGgwSUQwZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNCamIyNW1hV2M2SUdOdmJtWnBaeXhjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdZMjl1ZEdWNGRFNWhiV1U2SUdOdmJuUmxlSFJPWVcxbExGeHlYRzRnSUNBZ0lDQWdJQ0FnSUNCeVpXZHBjM1J5ZVRvZ2NtVm5hWE4wY25rc1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUdSbFptbHVaV1E2SUdSbFptbHVaV1FzWEhKY2JpQWdJQ0FnSUNBZ0lDQWdJSFZ5YkVabGRHTm9aV1E2SUhWeWJFWmxkR05vWldRc1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUdSbFpsRjFaWFZsT2lCa1pXWlJkV1YxWlN4Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnWkdWbVVYVmxkV1ZOWVhBNklIdDlMRnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQk5iMlIxYkdVNklFMXZaSFZzWlN4Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnYldGclpVMXZaSFZzWlUxaGNEb2diV0ZyWlUxdlpIVnNaVTFoY0N4Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnYm1WNGRGUnBZMnM2SUhKbGNTNXVaWGgwVkdsamF5eGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ2IyNUZjbkp2Y2pvZ2IyNUZjbkp2Y2l4Y2NseHVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDOHFLbHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdLaUJUWlhRZ1lTQmpiMjVtYVdkMWNtRjBhVzl1SUdadmNpQjBhR1VnWTI5dWRHVjRkQzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ3BjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ29nUUhCaGNtRnRJSHRQWW1wbFkzUjlJR05tWnlCamIyNW1hV2NnYjJKcVpXTjBJSFJ2SUdsdWRHVm5jbUYwWlM1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNvdlhISmNiaUFnSUNBZ0lDQWdJQ0FnSUdOdmJtWnBaM1Z5WlRvZ1puVnVZM1JwYjI0Z0tHTm1aeWtnZTF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0x5OGdUV0ZyWlNCemRYSmxJSFJvWlNCaVlYTmxWWEpzSUdWdVpITWdhVzRnWVNCemJHRnphQzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdsbUlDaGpabWN1WW1GelpWVnliQ2tnZTF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR2xtSUNoalptY3VZbUZ6WlZWeWJDNWphR0Z5UVhRb1kyWm5MbUpoYzJWVmNtd3ViR1Z1WjNSb0lDMGdNU2tnSVQwOUlDY3ZKeWtnZTF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCalptY3VZbUZ6WlZWeWJDQXJQU0FuTHljN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZWeHlYRzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklGTmhkbVVnYjJabUlIUm9aU0J3WVhSb2N5QnphVzVqWlNCMGFHVjVJSEpsY1hWcGNtVWdjM0JsWTJsaGJDQndjbTlqWlhOemFXNW5MQ0IwYUdWNUlHRnlaU0JoWkdScGRHbDJaUzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUd4bGRDQnphR2x0SUQwZ1kyOXVabWxuTG5Ob2FXMHNYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2IySnFjeUE5SUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2NHRjBhSE02SUhSeWRXVXNYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR0oxYm1Sc1pYTTZJSFJ5ZFdVc1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHTnZibVpwWnpvZ2RISjFaU3hjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYldGd09pQjBjblZsWEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdmVHRjY2x4dVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQmxZV05vVUhKdmNDaGpabWNzSUdaMWJtTjBhVzl1SUNoMllXeDFaU3dnY0hKdmNDa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHbG1JQ2h2WW1welczQnliM0JkS1NCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHbG1JQ2doWTI5dVptbG5XM0J5YjNCZEtTQjdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCamIyNW1hV2RiY0hKdmNGMGdQU0I3ZlR0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZWeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnRhWGhwYmloamIyNW1hV2RiY0hKdmNGMHNJSFpoYkhWbExDQjBjblZsTENCMGNuVmxLVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjlJR1ZzYzJVZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQmpiMjVtYVdkYmNISnZjRjBnUFNCMllXeDFaVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjlYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I5S1R0Y2NseHVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCU1pYWmxjbk5sSUcxaGNDQjBhR1VnWW5WdVpHeGxjMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYVdZZ0tHTm1aeTVpZFc1a2JHVnpLU0I3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdaV0ZqYUZCeWIzQW9ZMlpuTG1KMWJtUnNaWE1zSUdaMWJtTjBhVzl1SUNoMllXeDFaU3dnY0hKdmNDa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JsWVdOb0tIWmhiSFZsTENCbWRXNWpkR2x2YmlBb2Rpa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2FXWWdLSFlnSVQwOUlIQnliM0FwSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCaWRXNWtiR1Z6VFdGd1czWmRJRDBnY0hKdmNEdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUgxY2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZTazdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZTazdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I5WEhKY2JseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnVFdWeVoyVWdjMmhwYlZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2FXWWdLR05tWnk1emFHbHRLU0I3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdaV0ZqYUZCeWIzQW9ZMlpuTG5Ob2FXMHNJR1oxYm1OMGFXOXVJQ2gyWVd4MVpTd2dhV1FwSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0x5OGdUbTl5YldGc2FYcGxJSFJvWlNCemRISjFZM1IxY21WY2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2FXWWdLR2x6UVhKeVlYa29kbUZzZFdVcEtTQjdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCMllXeDFaU0E5SUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCa1pYQnpPaUIyWVd4MVpWeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlR0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZWeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnBaaUFvS0haaGJIVmxMbVY0Y0c5eWRITWdmSHdnZG1Gc2RXVXVhVzVwZENrZ0ppWWdJWFpoYkhWbExtVjRjRzl5ZEhOR2Jpa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2RtRnNkV1V1Wlhod2IzSjBjMFp1SUQwZ1kyOXVkR1Y0ZEM1dFlXdGxVMmhwYlVWNGNHOXlkSE1vZG1Gc2RXVXBPMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I5WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUhOb2FXMWJhV1JkSUQwZ2RtRnNkV1U3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdmU2s3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdZMjl1Wm1sbkxuTm9hVzBnUFNCemFHbHRPMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlZ4eVhHNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQzh2SUVGa2FuVnpkQ0J3WVdOcllXZGxjeUJwWmlCdVpXTmxjM05oY25rdVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnBaaUFvWTJabkxuQmhZMnRoWjJWektTQjdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ1pXRmphQ2hqWm1jdWNHRmphMkZuWlhNc0lHWjFibU4wYVc5dUlDaHdhMmRQWW1vcElIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdiR1YwSUd4dlkyRjBhVzl1TENCdVlXMWxPMXh5WEc1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2NHdG5UMkpxSUQwZ2RIbHdaVzltSUhCclowOWlhaUE5UFQwZ0ozTjBjbWx1WnljZ1B5QjdibUZ0WlRvZ2NHdG5UMkpxZlNBNklIQnJaMDlpYWp0Y2NseHVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJRzVoYldVZ1BTQndhMmRQWW1vdWJtRnRaVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYkc5allYUnBiMjRnUFNCd2EyZFBZbW91Ykc5allYUnBiMjQ3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdsbUlDaHNiMk5oZEdsdmJpa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ1kyOXVabWxuTG5CaGRHaHpXMjVoYldWZElEMGdjR3RuVDJKcUxteHZZMkYwYVc5dU8xeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjlYSEpjYmx4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBdkx5QlRZWFpsSUhCdmFXNTBaWElnZEc4Z2JXRnBiaUJ0YjJSMWJHVWdTVVFnWm05eUlIQnJaeUJ1WVcxbExpQlNaVzF2ZG1VZ2JHVmhaR2x1WnlCa2IzUWdhVzRnYldGcGJpd2djMjhnYldGcGJpQndZWFJvY3lCaGNtVWdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQzh2SUc1dmNtMWhiR2w2WldRc0lHRnVaQ0J5WlcxdmRtVWdZVzU1SUhSeVlXbHNhVzVuSUM1cWN5d2djMmx1WTJVZ1pHbG1abVZ5Wlc1MElIQmhZMnRoWjJVZ1pXNTJjeUJvWVhabElHUnBabVpsY21WdWRDQmNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnWTI5dWRtVnVkR2x2Ym5NNklITnZiV1VnZFhObElHRWdiVzlrZFd4bElHNWhiV1VzSUhOdmJXVWdkWE5sSUdFZ1ptbHNaU0J1WVcxbExseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQmpiMjVtYVdjdWNHdG5jMXR1WVcxbFhTQTlJSEJyWjA5aWFpNXVZVzFsSUNzZ0p5OG5JQ3NnS0hCclowOWlhaTV0WVdsdUlIeDhJQ2R0WVdsdUp5bGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM1eVpYQnNZV05sS0dOMWNuSkVhWEpTWldkRmVIQXNJQ2NuS1Z4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMbkpsY0d4aFkyVW9hbk5UZFdabWFYaFNaV2RGZUhBc0lDY25LVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjlLVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUgxY2NseHVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCSlppQjBhR1Z5WlNCaGNtVWdZVzU1SUZ3aWQyRnBkR2x1WnlCMGJ5QmxlR1ZqZFhSbFhDSWdiVzlrZFd4bGN5QnBiaUIwYUdVZ2NtVm5hWE4wY25rc0lIVndaR0YwWlNCMGFHVWdiV0Z3Y3lCbWIzSWdkR2hsYlN3Z2MybHVZMlVnZEdobGFYSWdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCcGJtWnZMQ0JzYVd0bElGVlNUSE1nZEc4Z2JHOWhaQ3dnYldGNUlHaGhkbVVnWTJoaGJtZGxaQzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdWaFkyaFFjbTl3S0hKbFoybHpkSEo1TENCbWRXNWpkR2x2YmlBb2JXOWtMQ0JwWkNrZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklFbG1JRzF2WkhWc1pTQmhiSEpsWVdSNUlHaGhjeUJwYm1sMElHTmhiR3hsWkN3Z2MybHVZMlVnYVhRZ2FYTWdkRzl2SUd4aGRHVWdkRzhnYlc5a2FXWjVJSFJvWlcwc0lHRnVaQ0JwWjI1dmNtVWdkVzV1YjNKdFlXeHBlbVZrSUZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQzh2SUc5dVpYTWdjMmx1WTJVZ2RHaGxlU0JoY21VZ2RISmhibk5wWlc1MExseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdsbUlDZ2hiVzlrTG1sdWFYUmxaQ0FtSmlBaGJXOWtMbTFoY0M1MWJtNXZjbTFoYkdsNlpXUXBJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYlc5a0xtMWhjQ0E5SUcxaGEyVk5iMlIxYkdWTllYQW9hV1FzSUc1MWJHd3NJSFJ5ZFdVcE8xeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUgxY2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMHBPMXh5WEc1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDOHZJRWxtSUdFZ1pHVndjeUJoY25KaGVTQnZjaUJoSUdOdmJtWnBaeUJqWVd4c1ltRmpheUJwY3lCemNHVmphV1pwWldRc0lIUm9aVzRnWTJGc2JDQnlaWEYxYVhKbElIZHBkR2dnZEdodmMyVWdZWEpuY3k0Z1ZHaHBjeUJwY3lCMWMyVm1kV3dnWEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBdkx5QjNhR1Z1SUhKbGNYVnBjbVVnYVhNZ1pHVm1hVzVsWkNCaGN5QmhJR052Ym1acFp5QnZZbXBsWTNRZ1ltVm1iM0psSUhKbGNYVnBjbVV1YW5NZ2FYTWdiRzloWkdWa0xseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdhV1lnS0dObVp5NWtaWEJ6SUh4OElHTm1aeTVqWVd4c1ltRmpheWtnZTF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR052Ym5SbGVIUXVjbVZ4ZFdseVpTaGpabWN1WkdWd2N5QjhmQ0JiWFN3Z1kyWm5MbU5oYkd4aVlXTnJLVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUgxY2NseHVJQ0FnSUNBZ0lDQWdJQ0FnZlN4Y2NseHVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lHMWhhMlZUYUdsdFJYaHdiM0owY3pvZ1puVnVZM1JwYjI0Z0tIWmhiSFZsS1NCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQm1kVzVqZEdsdmJpQm1iaWdwSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JzWlhRZ2NtVjBPMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHbG1JQ2gyWVd4MVpTNXBibWwwS1NCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lISmxkQ0E5SUhaaGJIVmxMbWx1YVhRdVlYQndiSGtvWjJ4dlltRnNMQ0JoY21kMWJXVnVkSE1wTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSDFjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnlaWFIxY200Z2NtVjBJSHg4SUNoMllXeDFaUzVsZUhCdmNuUnpJQ1ltSUdkbGRFZHNiMkpoYkNoMllXeDFaUzVsZUhCdmNuUnpLU2s3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCOVhISmNibHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnY21WMGRYSnVJR1p1TzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0I5TEZ4eVhHNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ2JXRnJaVkpsY1hWcGNtVTZJR1oxYm1OMGFXOXVJQ2h5Wld4TllYQXNJRzl3ZEdsdmJuTXBJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUc5d2RHbHZibk1nUFNCdmNIUnBiMjV6SUh4OElIdDlPMXh5WEc1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHWjFibU4wYVc5dUlHeHZZMkZzVW1WeGRXbHlaU2hrWlhCekxDQmpZV3hzWW1GamF5d2daWEp5WW1GamF5a2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHeGxkQ0JwWkN3Z2JXRndMQ0J5WlhGMWFYSmxUVzlrTzF4eVhHNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCcFppQW9iM0IwYVc5dWN5NWxibUZpYkdWQ2RXbHNaRU5oYkd4aVlXTnJJQ1ltSUdOaGJHeGlZV05ySUNZbUlHbHpSblZ1WTNScGIyNG9ZMkZzYkdKaFkyc3BLU0I3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdOaGJHeGlZV05yTGw5ZmNtVnhkV2x5WlVwelFuVnBiR1FnUFNCMGNuVmxPMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMWNjbHh1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdhV1lnS0hSNWNHVnZaaUJrWlhCeklEMDlQU0FuYzNSeWFXNW5KeWtnZTF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCcFppQW9hWE5HZFc1amRHbHZiaWhqWVd4c1ltRmpheWtwSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQzh2SUVsdWRtRnNhV1FnWTJGc2JGeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnY21WMGRYSnVJRzl1UlhKeWIzSW9iV0ZyWlVWeWNtOXlLQ2R5WlhGMWFYSmxZWEpuY3ljc0lDZEpiblpoYkdsa0lISmxjWFZwY21VZ1kyRnNiQ2NwTENCbGNuSmlZV05yS1R0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZWeHlYRzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z1NXWWdjbVZ4ZFdseVpYeGxlSEJ2Y25SemZHMXZaSFZzWlNCaGNtVWdjbVZ4ZFdWemRHVmtMQ0JuWlhRZ2RHaGxJSFpoYkhWbElHWnZjaUIwYUdWdElHWnliMjBnZEdobElITndaV05wWVd3Z2FHRnVaR3hsY25NdUlGeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQXZMeUJEWVhabFlYUTZJSFJvYVhNZ2IyNXNlU0IzYjNKcmN5QjNhR2xzWlNCdGIyUjFiR1VnYVhNZ1ltVnBibWNnWkdWbWFXNWxaQzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYVdZZ0tISmxiRTFoY0NBbUppQm9ZWE5RY205d0tHaGhibVJzWlhKekxDQmtaWEJ6S1NrZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnY21WMGRYSnVJR2hoYm1Sc1pYSnpXMlJsY0hOZEtISmxaMmx6ZEhKNVczSmxiRTFoY0M1cFpGMHBPMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I5WEhKY2JseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQXZMeUJUZVc1amFISnZibTkxY3lCaFkyTmxjM01nZEc4Z2IyNWxJRzF2WkhWc1pTNGdTV1lnY21WeGRXbHlaUzVuWlhRZ2FYTWdZWFpoYVd4aFlteGxJQ2hoY3lCcGJpQjBhR1VnVG05a1pTQmhaR0Z3ZEdWeUtTd2dYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQzh2SUhCeVpXWmxjaUIwYUdGMExseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnBaaUFvY21WeExtZGxkQ2tnZTF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdjbVYwZFhKdUlISmxjUzVuWlhRb1kyOXVkR1Y0ZEN3Z1pHVndjeXdnY21Wc1RXRndMQ0JzYjJOaGJGSmxjWFZwY21VcE8xeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjlYSEpjYmx4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBdkx5Qk9iM0p0WVd4cGVtVWdiVzlrZFd4bElHNWhiV1VzSUdsbUlHbDBJR052Ym5SaGFXNXpJQzRnYjNJZ0xpNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdiV0Z3SUQwZ2JXRnJaVTF2WkhWc1pVMWhjQ2hrWlhCekxDQnlaV3hOWVhBc0lHWmhiSE5sTENCMGNuVmxLVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYVdRZ1BTQnRZWEF1YVdRN1hISmNibHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JwWmlBb0lXaGhjMUJ5YjNBb1pHVm1hVzVsWkN3Z2FXUXBLU0I3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnlaWFIxY200Z2IyNUZjbkp2Y2lodFlXdGxSWEp5YjNJb0oyNXZkR3h2WVdSbFpDY3NJQ2ROYjJSMWJHVWdibUZ0WlNCY0lpY2dLMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR2xrSUN0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBblhDSWdhR0Z6SUc1dmRDQmlaV1Z1SUd4dllXUmxaQ0I1WlhRZ1ptOXlJR052Ym5SbGVIUTZJQ2NnSzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdOdmJuUmxlSFJPWVcxbElDdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQW9jbVZzVFdGd0lEOGdKeWNnT2lBbkxpQlZjMlVnY21WeGRXbHlaU2hiWFNrbktTa3BPMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I5WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUhKbGRIVnliaUJrWldacGJtVmtXMmxrWFR0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I5WEhKY2JseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklFZHlZV0lnWkdWbWFXNWxjeUIzWVdsMGFXNW5JR2x1SUhSb1pTQm5iRzlpWVd3Z2NYVmxkV1V1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdhVzUwWVd0bFJHVm1hVzVsY3lncE8xeHlYRzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQXZMeUJOWVhKcklHRnNiQ0IwYUdVZ1pHVndaVzVrWlc1amFXVnpJR0Z6SUc1bFpXUnBibWNnZEc4Z1ltVWdiRzloWkdWa0xseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdOdmJuUmxlSFF1Ym1WNGRGUnBZMnNvWm5WdVkzUnBiMjRnS0NrZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQXZMeUJUYjIxbElHUmxabWx1WlhNZ1kyOTFiR1FnYUdGMlpTQmlaV1Z1SUdGa1pHVmtJSE5wYm1ObElIUm9aVnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCeVpYRjFhWEpsSUdOaGJHd3NJR052Ykd4bFkzUWdkR2hsYlM1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2FXNTBZV3RsUkdWbWFXNWxjeWdwTzF4eVhHNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdjbVZ4ZFdseVpVMXZaQ0E5SUdkbGRFMXZaSFZzWlNodFlXdGxUVzlrZFd4bFRXRndLRzUxYkd3c0lISmxiRTFoY0NrcE8xeHlYRzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z1UzUnZjbVVnYVdZZ2JXRndJR052Ym1acFp5QnphRzkxYkdRZ1ltVWdZWEJ3YkdsbFpDQjBieUIwYUdseklISmxjWFZwY21WY2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0x5OGdZMkZzYkNCbWIzSWdaR1Z3Wlc1a1pXNWphV1Z6TGx4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCeVpYRjFhWEpsVFc5a0xuTnJhWEJOWVhBZ1BTQnZjSFJwYjI1ekxuTnJhWEJOWVhBN1hISmNibHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0J5WlhGMWFYSmxUVzlrTG1sdWFYUW9aR1Z3Y3l3Z1kyRnNiR0poWTJzc0lHVnljbUpoWTJzc0lIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdWdVlXSnNaV1E2SUhSeWRXVmNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdmU2s3WEhKY2JseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQmphR1ZqYTB4dllXUmxaQ2dwTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSDBwTzF4eVhHNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCeVpYUjFjbTRnYkc5allXeFNaWEYxYVhKbE8xeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdmVnh5WEc1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHMXBlR2x1S0d4dlkyRnNVbVZ4ZFdseVpTd2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHbHpRbkp2ZDNObGNqb2dhWE5DY205M2MyVnlMRnh5WEc1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2S2lwY2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnS2lCRGIyNTJaWEowY3lCaElHMXZaSFZzWlNCdVlXMWxJQ3NnTG1WNGRHVnVjMmx2YmlCcGJuUnZJR0Z1SUZWU1RDQndZWFJvTGx4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FxWEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ29nS2xKbGNYVnBjbVZ6S2lCMGFHVWdkWE5sSUc5bUlHRWdiVzlrZFd4bElHNWhiV1V1SUVsMElHUnZaWE1nYm05MElITjFjSEJ2Y25RZ2RYTnBibWNnY0d4aGFXNGdWVkpNY3lCc2FXdGxJRzVoYldWVWIxVnliQzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdLaTljY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjBiMVZ5YkRvZ1puVnVZM1JwYjI0Z0tHMXZaSFZzWlU1aGJXVlFiSFZ6UlhoMEtTQjdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR3hsZENCbGVIUXNYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCcGJtUmxlQ0E5SUcxdlpIVnNaVTVoYldWUWJIVnpSWGgwTG14aGMzUkpibVJsZUU5bUtDY3VKeWtzWEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnpaV2R0Wlc1MElEMGdiVzlrZFd4bFRtRnRaVkJzZFhORmVIUXVjM0JzYVhRb0p5OG5LVnN3WFN4Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR2x6VW1Wc1lYUnBkbVVnUFNCelpXZHRaVzUwSUQwOVBTQW5MaWNnZkh3Z2MyVm5iV1Z1ZENBOVBUMGdKeTR1Snp0Y2NseHVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQzh2SUVoaGRtVWdZU0JtYVd4bElHVjRkR1Z1YzJsdmJpQmhiR2xoY3l3Z1lXNWtJR2wwSUdseklHNXZkQ0IwYUdWY2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0x5OGdaRzkwY3lCbWNtOXRJR0VnY21Wc1lYUnBkbVVnY0dGMGFDNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdhV1lnS0dsdVpHVjRJQ0U5UFNBdE1TQW1KaUFvSVdselVtVnNZWFJwZG1VZ2ZId2dhVzVrWlhnZ1BpQXhLU2tnZTF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdaWGgwSUQwZ2JXOWtkV3hsVG1GdFpWQnNkWE5GZUhRdWMzVmljM1J5YVc1bktHbHVaR1Y0TENCdGIyUjFiR1ZPWVcxbFVHeDFjMFY0ZEM1c1pXNW5kR2dwTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdiVzlrZFd4bFRtRnRaVkJzZFhORmVIUWdQU0J0YjJSMWJHVk9ZVzFsVUd4MWMwVjRkQzV6ZFdKemRISnBibWNvTUN3Z2FXNWtaWGdwTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCOVhISmNibHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0J5WlhSMWNtNGdZMjl1ZEdWNGRDNXVZVzFsVkc5VmNtd29ibTl5YldGc2FYcGxLRzF2WkhWc1pVNWhiV1ZRYkhWelJYaDBMRnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2NtVnNUV0Z3SUNZbUlISmxiRTFoY0M1cFpDd2dkSEoxWlNrc0lHVjRkQ3dnZEhKMVpTazdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZTeGNjbHh1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdaR1ZtYVc1bFpEb2dablZ1WTNScGIyNGdLR2xrS1NCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lISmxkSFZ5YmlCb1lYTlFjbTl3S0dSbFptbHVaV1FzSUcxaGEyVk5iMlIxYkdWTllYQW9hV1FzSUhKbGJFMWhjQ3dnWm1Gc2MyVXNJSFJ5ZFdVcExtbGtLVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjlMRnh5WEc1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0J6Y0dWamFXWnBaV1E2SUdaMWJtTjBhVzl1SUNocFpDa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JwWkNBOUlHMWhhMlZOYjJSMWJHVk5ZWEFvYVdRc0lISmxiRTFoY0N3Z1ptRnNjMlVzSUhSeWRXVXBMbWxrTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCeVpYUjFjbTRnYUdGelVISnZjQ2hrWldacGJtVmtMQ0JwWkNrZ2ZId2dhR0Z6VUhKdmNDaHlaV2RwYzNSeWVTd2dhV1FwTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSDFjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUgwcE8xeHlYRzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklFOXViSGtnWVd4c2IzY2dkVzVrWldZZ2IyNGdkRzl3SUd4bGRtVnNJSEpsY1hWcGNtVWdZMkZzYkhNdVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnBaaUFvSVhKbGJFMWhjQ2tnZTF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR3h2WTJGc1VtVnhkV2x5WlM1MWJtUmxaaUE5SUdaMWJtTjBhVzl1SUNocFpDa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCQ2FXNWtJR0Z1ZVNCM1lXbDBhVzVuSUdSbFptbHVaU2dwSUdOaGJHeHpJSFJ2SUhSb2FYTWdZMjl1ZEdWNGRDd2dabWw0SUdadmNpQWpOREE0TGx4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCMFlXdGxSMnh2WW1Gc1VYVmxkV1VvS1R0Y2NseHVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR3hsZENCdFlYQWdQU0J0WVd0bFRXOWtkV3hsVFdGd0tHbGtMQ0J5Wld4TllYQXNJSFJ5ZFdVcE8xeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnNaWFFnYlc5a0lEMGdaMlYwVDNkdUtISmxaMmx6ZEhKNUxDQnBaQ2s3WEhKY2JseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnRiMlF1ZFc1a1pXWmxaQ0E5SUhSeWRXVTdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSEpsYlc5MlpWTmpjbWx3ZENocFpDazdYSEpjYmx4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCa1pXeGxkR1VnWkdWbWFXNWxaRnRwWkYwN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHUmxiR1YwWlNCMWNteEdaWFJqYUdWa1cyMWhjQzUxY214ZE8xeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQmtaV3hsZEdVZ2RXNWtaV1pGZG1WdWRITmJhV1JkTzF4eVhHNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnUTJ4bFlXNGdjWFZsZFdWa0lHUmxabWx1WlhNZ2RHOXZMaUJIYnlCaVlXTnJkMkZ5WkhNZ2FXNGdZWEp5WVhrZ2MyOGdkR2hoZENCMGFHVWdjM0JzYVdObGN5QmtieUJ1YjNRZ2JXVnpjeUIxY0NCMGFHVWdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQzh2SUdsMFpYSmhkR2x2Ymk1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ1pXRmphRkpsZG1WeWMyVW9aR1ZtVVhWbGRXVXNJR1oxYm1OMGFXOXVJQ2hoY21kekxDQnBLU0I3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnBaaUFvWVhKbmMxc3dYU0E5UFQwZ2FXUXBJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JrWldaUmRXVjFaUzV6Y0d4cFkyVW9hU3dnTVNrN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I5WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUgwcE8xeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQmtaV3hsZEdVZ1kyOXVkR1Y0ZEM1a1pXWlJkV1YxWlUxaGNGdHBaRjA3WEhKY2JseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnBaaUFvYlc5a0tTQjdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBdkx5QkliMnhrSUc5dUlIUnZJR3hwYzNSbGJtVnljeUJwYmlCallYTmxJSFJvWlNCdGIyUjFiR1VnZDJsc2JDQmlaU0JoZEhSbGJYQjBaV1FnZEc4Z1ltVWdjbVZzYjJGa1pXUWdkWE5wYm1jZ1lTQmNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklHUnBabVpsY21WdWRDQmpiMjVtYVdjdVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JwWmlBb2JXOWtMbVYyWlc1MGN5NWtaV1pwYm1Wa0tTQjdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdkVzVrWldaRmRtVnVkSE5iYVdSZElEMGdiVzlrTG1WMlpXNTBjenRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMWNjbHh1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQmpiR1ZoYmxKbFoybHpkSEo1S0dsa0tUdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdmVnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMDdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I5WEhKY2JseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdjbVYwZFhKdUlHeHZZMkZzVW1WeGRXbHlaVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdmU3hjY2x4dVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUM4cUtseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0tpQkRZV3hzWldRZ2RHOGdaVzVoWW14bElHRWdiVzlrZFd4bElHbG1JR2wwSUdseklITjBhV3hzSUdsdUlIUm9aU0J5WldkcGMzUnllU0JoZDJGcGRHbHVaeUJsYm1GaWJHVnRaVzUwTGlCQklITmxZMjl1WkNCaGNtY3NJSEJoY21WdWRDd2dkR2hsWEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FxSUhCaGNtVnVkQ0J0YjJSMWJHVXNJR2x6SUhCaGMzTmxaQ0JwYmlCbWIzSWdZMjl1ZEdWNGRDd2dkMmhsYmlCMGFHbHpJRzFsZEdodlpDQnBjeUJ2ZG1WeWNtbGtaR1Z1SUdKNUlIUm9aU0J2Y0hScGJXbDZaWEl1SUU1dmRDQnphRzkzYmlCb1pYSmxYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQXFJSFJ2SUd0bFpYQWdZMjlrWlNCamIyMXdZV04wTGx4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnS2k5Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnWlc1aFlteGxPaUJtZFc1amRHbHZiaUFvWkdWd1RXRndLU0I3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCc1pYUWdiVzlrSUQwZ1oyVjBUM2R1S0hKbFoybHpkSEo1TENCa1pYQk5ZWEF1YVdRcE8xeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdhV1lnS0cxdlpDa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHZGxkRTF2WkhWc1pTaGtaWEJOWVhBcExtVnVZV0pzWlNncE8xeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdmVnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQjlMRnh5WEc1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnTHlvcVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBcUlFbHVkR1Z5Ym1Gc0lHMWxkR2h2WkNCMWMyVmtJR0o1SUdWdWRtbHliMjV0Wlc1MElHRmtZWEIwWlhKeklIUnZJR052YlhCc1pYUmxJR0VnYkc5aFpDQmxkbVZ1ZEM1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNwY2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNvZ1FTQnNiMkZrSUdWMlpXNTBJR052ZFd4a0lHSmxJR0VnYzJOeWFYQjBJR3h2WVdRZ2IzSWdhblZ6ZENCaElHeHZZV1FnY0dGemN5Qm1jbTl0SUdFZ2MzbHVZMmh5YjI1dmRYTWdiRzloWkNCallXeHNMbHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdLbHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdLaUJBY0dGeVlXMGdlMU4wY21sdVozMGdiVzlrZFd4bFRtRnRaU0JVYUdVZ2JtRnRaU0J2WmlCMGFHVWdiVzlrZFd4bElIUnZJSEJ2ZEdWdWRHbGhiR3g1SUdOdmJYQnNaWFJsTGx4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnS2k5Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnWTI5dGNHeGxkR1ZNYjJGa09pQm1kVzVqZEdsdmJpQW9iVzlrZFd4bFRtRnRaU2tnZTF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2JHVjBJR1p2ZFc1a08xeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdiR1YwSUdGeVozTTdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JzWlhRZ2JXOWtPMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYkdWMElITm9hVzBnUFNCblpYUlBkMjRvWTI5dVptbG5Mbk5vYVcwc0lHMXZaSFZzWlU1aGJXVXBJSHg4SUh0OU8xeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdiR1YwSUhOb1JYaHdiM0owY3lBOUlITm9hVzB1Wlhod2IzSjBjenRjY2x4dVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjBZV3RsUjJ4dlltRnNVWFZsZFdVb0tUdGNjbHh1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCM2FHbHNaU0FvWkdWbVVYVmxkV1V1YkdWdVozUm9LU0I3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdZWEpuY3lBOUlHUmxabEYxWlhWbExuTm9hV1owS0NrN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYVdZZ0tHRnlaM05iTUYwZ1BUMDlJRzUxYkd3cElIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdZWEpuYzFzd1hTQTlJRzF2WkhWc1pVNWhiV1U3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklFbG1JR0ZzY21WaFpIa2dabTkxYm1RZ1lXNGdZVzV2Ym5sdGIzVnpJRzF2WkhWc1pTQmhibVFnWW05MWJtUWdhWFFnZEc4Z2RHaHBjeUJ1WVcxbExDQjBhR1Z1SUhSb2FYTWdhWE1nYzI5dFpTQnZkR2hsY2lCaGJtOXVJRnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCdGIyUjFiR1VnZDJGcGRHbHVaeUJtYjNJZ2FYUnpJR052YlhCc1pYUmxURzloWkNCMGJ5Qm1hWEpsTGx4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCcFppQW9abTkxYm1RcElIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdKeVpXRnJPMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I5WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdadmRXNWtJRDBnZEhKMVpUdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCOUlHVnNjMlVnYVdZZ0tHRnlaM05iTUYwZ1BUMDlJRzF2WkhWc1pVNWhiV1VwSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0x5OGdSbTkxYm1RZ2JXRjBZMmhwYm1jZ1pHVm1hVzVsSUdOaGJHd2dabTl5SUhSb2FYTWdjMk55YVhCMElWeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQm1iM1Z1WkNBOUlIUnlkV1U3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdmVnh5WEc1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JqWVd4c1IyVjBUVzlrZFd4bEtHRnlaM01wTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZWeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdZMjl1ZEdWNGRDNWtaV1pSZFdWMVpVMWhjQ0E5SUh0OU8xeHlYRzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklFUnZJSFJvYVhNZ1lXWjBaWElnZEdobElHTjVZMnhsSUc5bUlHTmhiR3hIWlhSTmIyUjFiR1VnYVc0Z1kyRnpaU0IwYUdVZ2NtVnpkV3gwWEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBdkx5QnZaaUIwYUc5elpTQmpZV3hzY3k5cGJtbDBJR05oYkd4eklHTm9ZVzVuWlhNZ2RHaGxJSEpsWjJsemRISjVMbHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYlc5a0lEMGdaMlYwVDNkdUtISmxaMmx6ZEhKNUxDQnRiMlIxYkdWT1lXMWxLVHRjY2x4dVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnBaaUFvSVdadmRXNWtJQ1ltSUNGb1lYTlFjbTl3S0dSbFptbHVaV1FzSUcxdlpIVnNaVTVoYldVcElDWW1JRzF2WkNBbUppQWhiVzlrTG1sdWFYUmxaQ2tnZTF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR2xtSUNoamIyNW1hV2N1Wlc1bWIzSmpaVVJsWm1sdVpTQW1KaUFvSVhOb1JYaHdiM0owY3lCOGZDQWhaMlYwUjJ4dlltRnNLSE5vUlhod2IzSjBjeWtwS1NCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHbG1JQ2hvWVhOUVlYUm9SbUZzYkdKaFkyc29iVzlrZFd4bFRtRnRaU2twSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSEpsZEhWeWJqdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdmU0JsYkhObElIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUhKbGRIVnliaUJ2YmtWeWNtOXlLRzFoYTJWRmNuSnZjaWduYm05a1pXWnBibVVuTEZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNkT2J5QmtaV1pwYm1VZ1kyRnNiQ0JtYjNJZ0p5QXJJRzF2WkhWc1pVNWhiV1VzWEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYm5Wc2JDeGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQmJiVzlrZFd4bFRtRnRaVjBwS1R0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZWeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUgwZ1pXeHpaU0I3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklFRWdjMk55YVhCMElIUm9ZWFFnWkc5bGN5QnViM1FnWTJGc2JDQmtaV1pwYm1Vb0tTd2djMjhnYW5WemRDQnphVzExYkdGMFpTQjBhR1VnWTJGc2JDQm1iM0lnYVhRdVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHTmhiR3hIWlhSTmIyUjFiR1VvVzIxdlpIVnNaVTVoYldVc0lDaHphR2x0TG1SbGNITWdmSHdnVzEwcExDQnphR2x0TG1WNGNHOXlkSE5HYmwwcE8xeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUgxY2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMWNjbHh1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCamFHVmphMHh2WVdSbFpDZ3BPMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQjlMRnh5WEc1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnTHlvcVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBcUlFTnZiblpsY25SeklHRWdiVzlrZFd4bElHNWhiV1VnZEc4Z1lTQm1hV3hsSUhCaGRHZ3VYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQXFYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQXFJRk4xY0hCdmNuUnpJR05oYzJWeklIZG9aWEpsSUcxdlpIVnNaVTVoYldVZ2JXRjVJR0ZqZEhWaGJHeDVJR0psSUdwMWMzUWdZVzRnVlZKTUxseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0tseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0tpQk9iM1JsSUhSb1lYUWdhWFFnS2lwa2IyVnpJRzV2ZENvcUlHTmhiR3dnYm05eWJXRnNhWHBsSUc5dUlIUm9aU0J0YjJSMWJHVk9ZVzFsTENCcGRDQnBjeUJoYzNOMWJXVmtJSFJ2SUdoaGRtVWdZV3h5WldGa2VTQmlaV1Z1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FxSUc1dmNtMWhiR2w2WldRdUlGUm9hWE1nYVhNZ1lXNGdhVzUwWlhKdVlXd2dRVkJKTENCdWIzUWdZU0J3ZFdKc2FXTWdiMjVsTGlCVmMyVWdkRzlWY213Z1ptOXlJSFJvWlNCd2RXSnNhV01nUVZCSkxseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0tpOWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ2JtRnRaVlJ2VlhKc09pQm1kVzVqZEdsdmJpQW9iVzlrZFd4bFRtRnRaU3dnWlhoMExDQnphMmx3UlhoMEtTQjdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JzWlhRZ2NHRjBhSE03WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCc1pYUWdjM2x0Y3p0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHeGxkQ0JwTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2JHVjBJSEJoY21WdWRFMXZaSFZzWlR0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHeGxkQ0IxY213N1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnNaWFFnY0dGeVpXNTBVR0YwYUN3Z1luVnVaR3hsU1dRN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnNaWFFnY0d0blRXRnBiaUE5SUdkbGRFOTNiaWhqYjI1bWFXY3VjR3RuY3l3Z2JXOWtkV3hsVG1GdFpTazdYSEpjYmx4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2FXWWdLSEJyWjAxaGFXNHBJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnRiMlIxYkdWT1lXMWxJRDBnY0d0blRXRnBianRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUgxY2NseHVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JpZFc1a2JHVkpaQ0E5SUdkbGRFOTNiaWhpZFc1a2JHVnpUV0Z3TENCdGIyUjFiR1ZPWVcxbEtUdGNjbHh1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCcFppQW9ZblZ1Wkd4bFNXUXBJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnlaWFIxY200Z1kyOXVkR1Y0ZEM1dVlXMWxWRzlWY213b1luVnVaR3hsU1dRc0lHVjRkQ3dnYzJ0cGNFVjRkQ2s3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCOVhISmNibHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z1NXWWdZU0JqYjJ4dmJpQnBjeUJwYmlCMGFHVWdWVkpNTENCcGRDQnBibVJwWTJGMFpYTWdZU0J3Y205MGIyTnZiQ0JwY3lCMWMyVmtJR0Z1WkNCcGRDQnBjeUJxZFhOMElHRnVJRlZTVENCMGJ5QmhJR1pwYkdVc0lHOXlJR2xtSUdsMElGeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnYzNSaGNuUnpJSGRwZEdnZ1lTQnpiR0Z6YUN3Z1kyOXVkR0ZwYm5NZ1lTQnhkV1Z5ZVNCaGNtY2dLR2t1WlM0Z1B5a2diM0lnWlc1a2N5QjNhWFJvSUM1cWN5d2dkR2hsYmlCaGMzTjFiV1VnZEdobElIVnpaWElnYldWaGJuUWdkRzhnWEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBdkx5QjFjMlVnWVc0Z2RYSnNJR0Z1WkNCdWIzUWdZU0J0YjJSMWJHVWdhV1F1SUZSb1pTQnpiR0Z6YUNCcGN5QnBiWEJ2Y25SaGJuUWdabTl5SUhCeWIzUnZZMjlzTFd4bGMzTWdWVkpNY3lCaGN5QjNaV3hzSUdGeklHWjFiR3dnY0dGMGFITXVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JwWmlBb2NtVnhMbXB6UlhoMFVtVm5SWGh3TG5SbGMzUW9iVzlrZFd4bFRtRnRaU2twSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCS2RYTjBJR0VnY0d4aGFXNGdjR0YwYUN3Z2JtOTBJRzF2WkhWc1pTQnVZVzFsSUd4dmIydDFjQ3dnYzI4Z2FuVnpkQ0J5WlhSMWNtNGdhWFF1SUVGa1pDQmxlSFJsYm5OcGIyNGdhV1lnYVhRZ2FYTWdhVzVqYkhWa1pXUXVJRnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDOHZJRlJvYVhNZ2FYTWdZU0JpYVhRZ2QyOXVhM2tzSUc5dWJIa2dibTl1TFM1cWN5QjBhR2x1WjNNZ2NHRnpjeUJoYmlCbGVIUmxibk5wYjI0c0lIUm9hWE1nYldWMGFHOWtJSEJ5YjJKaFlteDVJRzVsWldSeklIUnZJR0psSUZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQzh2SUhKbGQyOXlhMlZrTGx4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSFZ5YkNBOUlHMXZaSFZzWlU1aGJXVWdLeUFvWlhoMElIeDhJQ2NuS1R0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMGdaV3h6WlNCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z1FTQnRiMlIxYkdVZ2RHaGhkQ0J1WldWa2N5QjBieUJpWlNCamIyNTJaWEowWldRZ2RHOGdZU0J3WVhSb0xseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUhCaGRHaHpJRDBnWTI5dVptbG5MbkJoZEdoek8xeHlYRzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnplVzF6SUQwZ2JXOWtkV3hsVG1GdFpTNXpjR3hwZENnbkx5Y3BPMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDOHZJRVp2Y2lCbFlXTm9JRzF2WkhWc1pTQnVZVzFsSUhObFoyMWxiblFzSUhObFpTQnBaaUIwYUdWeVpTQnBjeUJoSUhCaGRHZ2djbVZuYVhOMFpYSmxaQ0JtYjNJZ2FYUXVJRk4wWVhKMElIZHBkR2dnYlc5emRDQnpjR1ZqYVdacFl5QmNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBdkx5QnVZVzFsSUdGdVpDQjNiM0pySUhWd0lHWnliMjBnYVhRdVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnWm05eUlDaHBJRDBnYzNsdGN5NXNaVzVuZEdnN0lHa2dQaUF3T3lCcElDMDlJREVwSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2NHRnlaVzUwVFc5a2RXeGxJRDBnYzNsdGN5NXpiR2xqWlNnd0xDQnBLUzVxYjJsdUtDY3ZKeWs3WEhKY2JseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQndZWEpsYm5SUVlYUm9JRDBnWjJWMFQzZHVLSEJoZEdoekxDQndZWEpsYm5STmIyUjFiR1VwTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCcFppQW9jR0Z5Wlc1MFVHRjBhQ2tnZTF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnU1dZZ1lXNGdZWEp5WVhrc0lHbDBJRzFsWVc1eklIUm9aWEpsSUdGeVpTQmhJR1psZHlCamFHOXBZMlZ6TENCRGFHOXZjMlVnZEdobElHOXVaU0IwYUdGMElHbHpJR1JsYzJseVpXUXVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCcFppQW9hWE5CY25KaGVTaHdZWEpsYm5SUVlYUm9LU2tnZTF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUhCaGNtVnVkRkJoZEdnZ1BTQndZWEpsYm5SUVlYUm9XekJkTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdmVnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2MzbHRjeTV6Y0d4cFkyVW9NQ3dnYVN3Z2NHRnlaVzUwVUdGMGFDazdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCaWNtVmhhenRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSDFjY2x4dVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z1NtOXBiaUIwYUdVZ2NHRjBhQ0J3WVhKMGN5QjBiMmRsZEdobGNpd2dkR2hsYmlCbWFXZDFjbVVnYjNWMElHbG1JR0poYzJWVmNtd2dhWE1nYm1WbFpHVmtMbHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIVnliQ0E5SUhONWJYTXVhbTlwYmlnbkx5Y3BPMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIVnliQ0FyUFNBb1pYaDBJSHg4SUNndlhtUmhkR0ZjWERwOFhGdy9MeTUwWlhOMEtIVnliQ2tnZkh3Z2MydHBjRVY0ZENBL0lDY25JRG9nSnk1cWN5Y3BLVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjFjbXdnUFNBb2RYSnNMbU5vWVhKQmRDZ3dLU0E5UFQwZ0p5OG5JSHg4SUhWeWJDNXRZWFJqYUNndlhsdGNYSGRjWEN0Y1hDNWNYQzFkS3pvdktTQS9JQ2NuSURvZ1kyOXVabWxuTG1KaGMyVlZjbXdwSUNzZ2RYSnNPMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlZ4eVhHNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSEpsZEhWeWJpQmpiMjVtYVdjdWRYSnNRWEpuY3lBL0lIVnliQ0FyWEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdLQ2gxY213dWFXNWtaWGhQWmlnblB5Y3BJRDA5UFNBdE1TQS9JQ2MvSnlBNklDY21KeWtnSzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCamIyNW1hV2N1ZFhKc1FYSm5jeWtnT2lCMWNtdzdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lIMHNYSEpjYmx4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0F2THlCRVpXeGxaMkYwWlhNZ2RHOGdjbVZ4TG14dllXUXVJRUp5YjJ0bGJpQnZkWFFnWVhNZ1lTQnpaWEJoY21GMFpTQm1kVzVqZEdsdmJpQjBieUJoYkd4dmR5QnZkbVZ5Y21sa2FXNW5JR2x1SUhSb1pTQnZjSFJwYldsNlpYSXVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lHeHZZV1E2SUdaMWJtTjBhVzl1SUNocFpDd2dkWEpzS1NCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnlaWEV1Ykc5aFpDaGpiMjUwWlhoMExDQnBaQ3dnZFhKc0tUdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ2ZTeGNjbHh1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQzhxS2x4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnS2lCRmVHVmpkWFJsY3lCaElHMXZaSFZzWlNCallXeHNZbUZqYXlCbWRXNWpkR2x2Ymk1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNwY2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNvZ1FuSnZhMlZ1SUc5MWRDQmhjeUJoSUhObGNHRnlZWFJsSUdaMWJtTjBhVzl1SUhOdmJHVnNlU0IwYnlCaGJHeHZkeUIwYUdVZ1luVnBiR1FnYzNsemRHVnRJSFJ2SUhObGNYVmxibU5sSUhSb1pTQm1hV3hsY3lCcGJpQjBhR1VnWW5WcGJIUmNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDb2diR0Y1WlhJZ2FXNGdkR2hsSUhKcFoyaDBJSE5sY1hWbGJtTmxMbHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdLbHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdLaUJBY0hKcGRtRjBaVnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdLaTljY2x4dUlDQWdJQ0FnSUNBZ0lDQWdaWGhsWTBOaU9pQm1kVzVqZEdsdmJpQW9ibUZ0WlN3Z1kyRnNiR0poWTJzc0lHRnlaM01zSUdWNGNHOXlkSE1wSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lISmxkSFZ5YmlCallXeHNZbUZqYXk1aGNIQnNlU2hsZUhCdmNuUnpMQ0JoY21kektUdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ2ZTeGNjbHh1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQzhxS2x4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnS2lCRFlXeHNZbUZqYXlCbWIzSWdjMk55YVhCMElHeHZZV1J6TENCMWMyVmtJSFJ2SUdOb1pXTnJJSE4wWVhSMWN5QnZaaUJzYjJGa2FXNW5MbHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdLbHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdLaUJBY0dGeVlXMGdlMFYyWlc1MGZTQmxkblFnZEdobElHVjJaVzUwSUdaeWIyMGdkR2hsSUdKeWIzZHpaWElnWm05eUlIUm9aU0J6WTNKcGNIUWdkR2hoZENCM1lYTWdiRzloWkdWa0xseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0tpOWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ2IyNVRZM0pwY0hSTWIyRmtPaUJtZFc1amRHbHZiaUFvWlhaMEtTQjdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCVmMybHVaeUJqZFhKeVpXNTBWR0Z5WjJWMElHbHVjM1JsWVdRZ2IyWWdkR0Z5WjJWMElHWnZjaUJHYVhKbFptOTRJREl1TUNkeklITmhhMlV1SUU1dmRGeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnWVd4c0lHOXNaQ0JpY205M2MyVnljeUIzYVd4c0lHSmxJSE4xY0hCdmNuUmxaQ3dnWW5WMElIUm9hWE1nYjI1bElIZGhjeUJsWVhONUlHVnViM1ZuYUZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0x5OGdkRzhnYzNWd2NHOXlkQ0JoYm1RZ2MzUnBiR3dnYldGclpYTWdjMlZ1YzJVdVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnBaaUFvWlhaMExuUjVjR1VnUFQwOUlDZHNiMkZrSnlCOGZGeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNoeVpXRmtlVkpsWjBWNGNDNTBaWE4wS0NobGRuUXVZM1Z5Y21WdWRGUmhjbWRsZENCOGZDQmxkblF1YzNKalJXeGxiV1Z1ZENrdWNtVmhaSGxUZEdGMFpTa3BLU0I3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnVW1WelpYUWdhVzUwWlhKaFkzUnBkbVVnYzJOeWFYQjBJSE52SUdFZ2MyTnlhWEIwSUc1dlpHVWdhWE1nYm05MElHaGxiR1FnYjI1MGJ5Qm1iM0pjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQXZMeUIwYnlCc2IyNW5MbHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHbHVkR1Z5WVdOMGFYWmxVMk55YVhCMElEMGdiblZzYkR0Y2NseHVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0x5OGdVSFZzYkNCdmRYUWdkR2hsSUc1aGJXVWdiMllnZEdobElHMXZaSFZzWlNCaGJtUWdkR2hsSUdOdmJuUmxlSFF1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdiR1YwSUdSaGRHRWdQU0JuWlhSVFkzSnBjSFJFWVhSaEtHVjJkQ2s3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdZMjl1ZEdWNGRDNWpiMjF3YkdWMFpVeHZZV1FvWkdGMFlTNXBaQ2s3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCOVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUgwc1hISmNibHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQXZLaXBjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ29nUTJGc2JHSmhZMnNnWm05eUlITmpjbWx3ZENCbGNuSnZjbk11WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FxTDF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0J2YmxOamNtbHdkRVZ5Y205eU9pQm1kVzVqZEdsdmJpQW9aWFowS1NCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnNaWFFnWkdGMFlTQTlJR2RsZEZOamNtbHdkRVJoZEdFb1pYWjBLVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdsbUlDZ2hhR0Z6VUdGMGFFWmhiR3hpWVdOcktHUmhkR0V1YVdRcEtTQjdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2JHVjBJSEJoY21WdWRITWdQU0JiWFR0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JsWVdOb1VISnZjQ2h5WldkcGMzUnllU3dnWm5WdVkzUnBiMjRnS0haaGJIVmxMQ0JyWlhrcElIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdhV1lnS0d0bGVTNXBibVJsZUU5bUtDZGZRSEluS1NBaFBUMGdNQ2tnZTF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdaV0ZqYUNoMllXeDFaUzVrWlhCTllYQnpMQ0JtZFc1amRHbHZiaUFvWkdWd1RXRndLU0I3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYVdZZ0tHUmxjRTFoY0M1cFpDQTlQVDBnWkdGMFlTNXBaQ2tnZTF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQndZWEpsYm5SekxuQjFjMmdvYTJWNUtUdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjlYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdjbVYwZFhKdUlIUnlkV1U3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjlLVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSDBwTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSEpsZEhWeWJpQnZia1Z5Y205eUtHMWhhMlZGY25KdmNpZ25jMk55YVhCMFpYSnliM0luTENBblUyTnlhWEIwSUdWeWNtOXlJR1p2Y2lCY0lpY2dLeUJrWVhSaExtbGtJQ3RjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnS0hCaGNtVnVkSE11YkdWdVozUm9JRDljY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDZGNJaXdnYm1WbFpHVmtJR0o1T2lBbklDc2djR0Z5Wlc1MGN5NXFiMmx1S0Njc0lDY3BJRHBjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDZGNJaWNwTENCbGRuUXNJRnRrWVhSaExtbGtYU2twTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZWeHlYRzRnSUNBZ0lDQWdJQ0FnSUNCOVhISmNiaUFnSUNBZ0lDQWdmVHRjY2x4dVhISmNiaUFnSUNBZ0lDQWdZMjl1ZEdWNGRDNXlaWEYxYVhKbElEMGdZMjl1ZEdWNGRDNXRZV3RsVW1WeGRXbHlaU2dwTzF4eVhHNGdJQ0FnSUNBZ0lISmxkSFZ5YmlCamIyNTBaWGgwTzF4eVhHNGdJQ0FnZlZ4eVhHNWNjbHh1SUNBZ0lDOHFLbHh5WEc0Z0lDQWdJQ29nVFdGcGJpQmxiblJ5ZVNCd2IybHVkQzVjY2x4dUlDQWdJQ0FxWEhKY2JpQWdJQ0FnS2lCSlppQjBhR1VnYjI1c2VTQmhjbWQxYldWdWRDQjBieUJ5WlhGMWFYSmxJR2x6SUdFZ2MzUnlhVzVuTENCMGFHVnVJSFJvWlNCdGIyUjFiR1VnZEdoaGRDQnBjeUJ5WlhCeVpYTmxiblJsWkNCaWVTQjBhR0YwSUhOMGNtbHVaeUJwY3lCbVpYUmphR1ZrSUdadmNseHlYRzRnSUNBZ0lDb2dkR2hsSUdGd2NISnZjSEpwWVhSbElHTnZiblJsZUhRdVhISmNiaUFnSUNBZ0tseHlYRzRnSUNBZ0lDb2dTV1lnZEdobElHWnBjbk4wSUdGeVozVnRaVzUwSUdseklHRnVJR0Z5Y21GNUxDQjBhR1Z1SUdsMElIZHBiR3dnWW1VZ2RISmxZWFJsWkNCaGN5QmhiaUJoY25KaGVTQnZaaUJrWlhCbGJtUmxibU41SUhOMGNtbHVaeUJ1WVcxbGN5QjBieUJtWlhSamFDNGdRVzVjY2x4dUlDQWdJQ0FxSUc5d2RHbHZibUZzSUdaMWJtTjBhVzl1SUdOaGJHeGlZV05ySUdOaGJpQmlaU0J6Y0dWamFXWnBaV1FnZEc4Z1pYaGxZM1YwWlNCM2FHVnVJR0ZzYkNCdlppQjBhRzl6WlNCa1pYQmxibVJsYm1OcFpYTWdZWEpsSUdGMllXbHNZV0pzWlM1Y2NseHVJQ0FnSUNBcVhISmNiaUFnSUNBZ0tpQk5ZV3RsSUdFZ2JHOWpZV3dnY21WeElIWmhjbWxoWW14bElIUnZJR2hsYkhBZ1EyRnFZU0JqYjIxd2JHbGhibU5sSUNocGRDQmhjM04xYldWeklIUm9hVzVuY3lCdmJpQmhJSEpsY1hWcGNtVWdkR2hoZENCaGNtVWdibTkwSUhOMFlXNWtZWEprYVhwbFpDa3NYSEpjYmlBZ0lDQWdLaUJoYm1RZ2RHOGdaMmwyWlNCaElITm9iM0owSUc1aGJXVWdabTl5SUcxcGJtbG1hV05oZEdsdmJpOXNiMk5oYkNCelkyOXdaU0IxYzJVdVhISmNiaUFnSUNBZ0tpOWNjbHh1SUNBZ0lISmxjU0E5SUhkcGJtUnZkeTV5WlhGMWFYSmxhbk1nUFNCbWRXNWpkR2x2YmlBb1pHVndjeXdnWTJGc2JHSmhZMnNzSUdWeWNtSmhZMnNzSUc5d2RHbHZibUZzS1NCN1hISmNiaUFnSUNBZ0lDQWdMeThnUm1sdVpDQjBhR1VnY21sbmFIUWdZMjl1ZEdWNGRDd2dkWE5sSUdSbFptRjFiSFJjY2x4dUlDQWdJQ0FnSUNCc1pYUWdZMjl1ZEdWNGREdGNjbHh1SUNBZ0lDQWdJQ0JzWlhRZ1kyOXVabWxuTzF4eVhHNGdJQ0FnSUNBZ0lHeGxkQ0JqYjI1MFpYaDBUbUZ0WlNBOUlHUmxaa052Ym5SbGVIUk9ZVzFsTzF4eVhHNWNjbHh1SUNBZ0lDQWdJQ0F2THlCRVpYUmxjbTFwYm1VZ2FXWWdhR0YyWlNCamIyNW1hV2NnYjJKcVpXTjBJR2x1SUhSb1pTQmpZV3hzTGx4eVhHNGdJQ0FnSUNBZ0lHbG1JQ2doYVhOQmNuSmhlU2hrWlhCektTQW1KaUIwZVhCbGIyWWdaR1Z3Y3lBaFBUMGdKM04wY21sdVp5Y3BJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdMeThnWkdWd2N5QnBjeUJoSUdOdmJtWnBaeUJ2WW1wbFkzUmNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ1kyOXVabWxuSUQwZ1pHVndjenRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdhV1lnS0dselFYSnlZWGtvWTJGc2JHSmhZMnNwS1NCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQXZMeUJCWkdwMWMzUWdZWEpuY3lCcFppQjBhR1Z5WlNCaGNtVWdaR1Z3Wlc1a1pXNWphV1Z6WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCa1pYQnpJRDBnWTJGc2JHSmhZMnM3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCallXeHNZbUZqYXlBOUlHVnljbUpoWTJzN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQmxjbkppWVdOcklEMGdiM0IwYVc5dVlXdzdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lIMGdaV3h6WlNCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQmtaWEJ6SUQwZ1cxMDdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lIMWNjbHh1SUNBZ0lDQWdJQ0I5WEhKY2JseHlYRzRnSUNBZ0lDQWdJR2xtSUNoamIyNW1hV2NnSmlZZ1kyOXVabWxuTG1OdmJuUmxlSFFwSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnWTI5dWRHVjRkRTVoYldVZ1BTQmpiMjVtYVdjdVkyOXVkR1Y0ZER0Y2NseHVJQ0FnSUNBZ0lDQjlYSEpjYmx4eVhHNGdJQ0FnSUNBZ0lHTnZiblJsZUhRZ1BTQm5aWFJQZDI0b1kyOXVkR1Y0ZEhNc0lHTnZiblJsZUhST1lXMWxLVHRjY2x4dUlDQWdJQ0FnSUNCcFppQW9JV052Ym5SbGVIUXBJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdZMjl1ZEdWNGRDQTlJR052Ym5SbGVIUnpXMk52Ym5SbGVIUk9ZVzFsWFNBOUlISmxjUzV6TG01bGQwTnZiblJsZUhRb1kyOXVkR1Y0ZEU1aGJXVXBPMXh5WEc0Z0lDQWdJQ0FnSUgxY2NseHVYSEpjYmlBZ0lDQWdJQ0FnYVdZZ0tHTnZibVpwWnlrZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNCamIyNTBaWGgwTG1OdmJtWnBaM1Z5WlNoamIyNW1hV2NwTzF4eVhHNGdJQ0FnSUNBZ0lIMWNjbHh1WEhKY2JpQWdJQ0FnSUNBZ2NtVjBkWEp1SUdOdmJuUmxlSFF1Y21WeGRXbHlaU2hrWlhCekxDQmpZV3hzWW1GamF5d2daWEp5WW1GamF5azdYSEpjYmlBZ0lDQjlPMXh5WEc1Y2NseHVJQ0FnSUM4cUtseHlYRzRnSUNBZ0lDb2dVM1Z3Y0c5eWRDQnlaWEYxYVhKbExtTnZibVpwWnlncElIUnZJRzFoYTJVZ2FYUWdaV0Z6YVdWeUlIUnZJR052YjNCbGNtRjBaU0IzYVhSb0lHOTBhR1Z5SUVGTlJDQnNiMkZrWlhKeklHOXVJR2RzYjJKaGJHeDVJR0ZuY21WbFpDQnVZVzFsY3k1Y2NseHVJQ0FnSUNBcUwxeHlYRzRnSUNBZ2NtVnhMbU52Ym1acFp5QTlJR1oxYm1OMGFXOXVJQ2hqYjI1bWFXY3BJSHRjY2x4dUlDQWdJQ0FnSUNCeVpYUjFjbTRnY21WeEtHTnZibVpwWnlrN1hISmNiaUFnSUNCOU8xeHlYRzVjY2x4dUlDQWdJQzhxS2x4eVhHNGdJQ0FnSUNvZ1JYaGxZM1YwWlNCemIyMWxkR2hwYm1jZ1lXWjBaWElnZEdobElHTjFjbkpsYm5RZ2RHbGpheUJ2WmlCMGFHVWdaWFpsYm5RZ2JHOXZjQzVjY2x4dUlDQWdJQ0FxWEhKY2JpQWdJQ0FnS2lCUGRtVnljbWxrWlNCbWIzSWdiM1JvWlhJZ1pXNTJjeUIwYUdGMElHaGhkbVVnWVNCaVpYUjBaWElnYzI5c2RYUnBiMjRnZEdoaGJpQnpaWFJVYVcxbGIzVjBMbHh5WEc0Z0lDQWdJQ3BjY2x4dUlDQWdJQ0FxSUVCd1lYSmhiU0FnZTBaMWJtTjBhVzl1ZlNCbWJpQm1kVzVqZEdsdmJpQjBieUJsZUdWamRYUmxJR3hoZEdWeUxseHlYRzRnSUNBZ0lDb3ZYSEpjYmlBZ0lDQnlaWEV1Ym1WNGRGUnBZMnNnUFNCMGVYQmxiMllnYzJWMFZHbHRaVzkxZENBaFBUMGdKM1Z1WkdWbWFXNWxaQ2NnUHlCbWRXNWpkR2x2YmlBb1ptNHBJSHRjY2x4dUlDQWdJQ0FnSUNCelpYUlVhVzFsYjNWMEtHWnVMQ0EwS1R0Y2NseHVJQ0FnSUgwZ09pQm1kVzVqZEdsdmJpQW9abTRwSUh0Y2NseHVJQ0FnSUNBZ0lDQm1iaWdwTzF4eVhHNGdJQ0FnZlR0Y2NseHVYSEpjYmlBZ0lDQXZLaXBjY2x4dUlDQWdJQ0FxSUVWNGNHOXlkQ0J5WlhGMWFYSmxJR0Z6SUdFZ1oyeHZZbUZzTENCaWRYUWdiMjVzZVNCcFppQnBkQ0JrYjJWeklHNXZkQ0JoYkhKbFlXUjVJR1Y0YVhOMExseHlYRzRnSUNBZ0lDb3ZYSEpjYmlBZ0lDQnBaaUFvSVhkcGJtUnZkeTV5WlhGMWFYSmxLU0I3WEhKY2JpQWdJQ0FnSUNBZ2QybHVaRzkzTG5KbGNYVnBjbVVnUFNCeVpYRTdYSEpjYmlBZ0lDQjlYSEpjYmx4eVhHNGdJQ0FnY21WeExuWmxjbk5wYjI0Z1BTQjJaWEp6YVc5dU8xeHlYRzVjY2x4dUlDQWdJQzh2SUZWelpXUWdkRzhnWm1sc2RHVnlJRzkxZENCa1pYQmxibVJsYm1OcFpYTWdkR2hoZENCaGNtVWdZV3h5WldGa2VTQndZWFJvY3k1Y2NseHVJQ0FnSUhKbGNTNXFjMFY0ZEZKbFowVjRjQ0E5SUM5ZVhGd3ZmRHA4WEZ3L2ZGeGNMbXB6SkM4N1hISmNiaUFnSUNCeVpYRXVhWE5DY205M2MyVnlJRDBnYVhOQ2NtOTNjMlZ5TzF4eVhHNGdJQ0FnY3lBOUlISmxjUzV6SUQwZ2UxeHlYRzRnSUNBZ0lDQWdJR052Ym5SbGVIUnpPaUJqYjI1MFpYaDBjeXhjY2x4dUlDQWdJQ0FnSUNCdVpYZERiMjUwWlhoME9pQnVaWGREYjI1MFpYaDBYSEpjYmlBZ0lDQjlPMXh5WEc1Y2NseHVJQ0FnSUM4dklFTnlaV0YwWlNCa1pXWmhkV3gwSUdOdmJuUmxlSFF1WEhKY2JpQWdJQ0J5WlhFb2UzMHBPMXh5WEc1Y2NseHVJQ0FnSUM4dklFVjRjRzl5ZEhNZ2MyOXRaU0JqYjI1MFpYaDBMWE5sYm5OcGRHbDJaU0J0WlhSb2IyUnpJRzl1SUdkc2IySmhiQ0J5WlhGMWFYSmxMbHh5WEc0Z0lDQWdaV0ZqYUNoYlhISmNiaUFnSUNBZ0lDQWdKM1J2VlhKc0p5eGNjbHh1SUNBZ0lDQWdJQ0FuZFc1a1pXWW5MRnh5WEc0Z0lDQWdJQ0FnSUNka1pXWnBibVZrSnl4Y2NseHVJQ0FnSUNBZ0lDQW5jM0JsWTJsbWFXVmtKMXh5WEc0Z0lDQWdYU3dnWm5WdVkzUnBiMjRnS0hCeWIzQXBJSHRjY2x4dUlDQWdJQ0FnSUNBdkx5QWdVbVZtWlhKbGJtTmxJR1p5YjIwZ1kyOXVkR1Y0ZEhNZ2FXNXpkR1ZoWkNCdlppQmxZWEpzZVNCaWFXNWthVzVuSUhSdklHUmxabUYxYkhRZ1kyOXVkR1Y0ZEN4Y2NseHVJQ0FnSUNBZ0lDQXZMeUJ6YnlCMGFHRjBJR1IxY21sdVp5QmlkV2xzWkhNc0lIUm9aU0JzWVhSbGMzUWdhVzV6ZEdGdVkyVWdiMllnZEdobElHUmxabUYxYkhRZ1kyOXVkR1Y0ZEZ4eVhHNGdJQ0FnSUNBZ0lDOHZJSGRwZEdnZ2FYUnpJR052Ym1acFp5Qm5aWFJ6SUhWelpXUXVYSEpjYmlBZ0lDQWdJQ0FnY21WeFczQnliM0JkSUQwZ1puVnVZM1JwYjI0Z0tDa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQnNaWFFnWTNSNElEMGdZMjl1ZEdWNGRITmJaR1ZtUTI5dWRHVjRkRTVoYldWZE8xeHlYRzRnSUNBZ0lDQWdJQ0FnSUNCeVpYUjFjbTRnWTNSNExuSmxjWFZwY21WYmNISnZjRjB1WVhCd2JIa29ZM1I0TENCaGNtZDFiV1Z1ZEhNcE8xeHlYRzRnSUNBZ0lDQWdJSDA3WEhKY2JpQWdJQ0I5S1R0Y2NseHVYSEpjYmlBZ0lDQnBaaUFvYVhOQ2NtOTNjMlZ5S1NCN1hISmNiaUFnSUNBZ0lDQWdhR1ZoWkNBOUlITXVhR1ZoWkNBOUlHUnZZM1Z0Wlc1MExtZGxkRVZzWlcxbGJuUnpRbmxVWVdkT1lXMWxLQ2RvWldGa0p5bGJNRjA3WEhKY2JpQWdJQ0FnSUNBZ0x5OGdTV1lnUWtGVFJTQjBZV2NnYVhNZ2FXNGdjR3hoZVN3Z2RYTnBibWNnWVhCd1pXNWtRMmhwYkdRZ2FYTWdZU0J3Y205aWJHVnRJR1p2Y2lCSlJUWXVYSEpjYmlBZ0lDQWdJQ0FnTHk4Z1YyaGxiaUIwYUdGMElHSnliM2R6WlhJZ1pHbGxjeXdnZEdocGN5QmpZVzRnWW1VZ2NtVnRiM1psWkM0Z1JHVjBZV2xzY3lCcGJpQjBhR2x6SUdwUmRXVnllU0JpZFdjNlhISmNiaUFnSUNBZ0lDQWdMeThnYUhSMGNEb3ZMMlJsZGk1cWNYVmxjbmt1WTI5dEwzUnBZMnRsZEM4eU56QTVYSEpjYmlBZ0lDQWdJQ0FnWW1GelpVVnNaVzFsYm5RZ1BTQmtiMk4xYldWdWRDNW5aWFJGYkdWdFpXNTBjMEo1VkdGblRtRnRaU2duWW1GelpTY3BXekJkTzF4eVhHNGdJQ0FnSUNBZ0lHbG1JQ2hpWVhObFJXeGxiV1Z1ZENrZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNCb1pXRmtJRDBnY3k1b1pXRmtJRDBnWW1GelpVVnNaVzFsYm5RdWNHRnlaVzUwVG05a1pUdGNjbHh1SUNBZ0lDQWdJQ0I5WEhKY2JpQWdJQ0I5WEhKY2JseHlYRzRnSUNBZ0x5b3FYSEpjYmlBZ0lDQWdLaUJCYm5rZ1pYSnliM0p6SUhSb1lYUWdjbVZ4ZFdseVpTQmxlSEJzYVdOcGRHeDVJR2RsYm1WeVlYUmxjeUIzYVd4c0lHSmxJSEJoYzNObFpDQjBieUIwYUdseklHWjFibU4wYVc5dUxseHlYRzRnSUNBZ0lDcGNjbHh1SUNBZ0lDQXFJRWx1ZEdWeVkyVndkQzl2ZG1WeWNtbGtaU0JwZENCcFppQjViM1VnZDJGdWRDQmpkWE4wYjIwZ1pYSnliM0lnYUdGdVpHeHBibWN1WEhKY2JpQWdJQ0FnS2x4eVhHNGdJQ0FnSUNvZ1FIQmhjbUZ0SUh0RmNuSnZjbjBnWlhKeUlIUm9aU0JsY25KdmNpQnZZbXBsWTNRdVhISmNiaUFnSUNBZ0tpOWNjbHh1SUNBZ0lISmxjUzV2YmtWeWNtOXlJRDBnWkdWbVlYVnNkRTl1UlhKeWIzSTdYSEpjYmx4eVhHNGdJQ0FnTHlvcVhISmNiaUFnSUNBZ0tpQkRjbVZoZEdWeklIUm9aU0J1YjJSbElHWnZjaUIwYUdVZ2JHOWhaQ0JqYjIxdFlXNWtMaUJQYm14NUlIVnpaV1FnYVc0Z1luSnZkM05sY2lCbGJuWnpMbHh5WEc0Z0lDQWdJQ292WEhKY2JpQWdJQ0J5WlhFdVkzSmxZWFJsVG05a1pTQTlJR1oxYm1OMGFXOXVJQ2hqYjI1bWFXY3NJRzF2WkhWc1pVNWhiV1VzSUhWeWJDa2dlMXh5WEc0Z0lDQWdJQ0FnSUdOdmJuTjBJRzV2WkdVZ1BTQmpiMjVtYVdjdWVHaDBiV3dnUDF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0JrYjJOMWJXVnVkQzVqY21WaGRHVkZiR1Z0Wlc1MFRsTW9KMmgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5MekU1T1RrdmVHaDBiV3duTENBbmFIUnRiRHB6WTNKcGNIUW5LU0E2WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJR1J2WTNWdFpXNTBMbU55WldGMFpVVnNaVzFsYm5Rb0ozTmpjbWx3ZENjcE8xeHlYRzRnSUNBZ0lDQWdJRzV2WkdVdWRIbHdaU0E5SUdOdmJtWnBaeTV6WTNKcGNIUlVlWEJsSUh4OElDZDBaWGgwTDJwaGRtRnpZM0pwY0hRbk8xeHlYRzRnSUNBZ0lDQWdJRzV2WkdVdVkyaGhjbk5sZENBOUlDZDFkR1l0T0NjN1hISmNiaUFnSUNBZ0lDQWdibTlrWlM1aGMzbHVZeUE5SUhSeWRXVTdYSEpjYmlBZ0lDQWdJQ0FnY21WMGRYSnVJRzV2WkdVN1hISmNiaUFnSUNCOU8xeHlYRzVjY2x4dUlDQWdJQzhxS2x4eVhHNGdJQ0FnSUNvZ1JHOWxjeUIwYUdVZ2NtVnhkV1Z6ZENCMGJ5QnNiMkZrSUdFZ2JXOWtkV3hsSUdadmNpQjBhR1VnWW5KdmQzTmxjaUJqWVhObExseHlYRzRnSUNBZ0lDcGNjbHh1SUNBZ0lDQXFJRTFoYTJVZ2RHaHBjeUJoSUhObGNHRnlZWFJsSUdaMWJtTjBhVzl1SUhSdklHRnNiRzkzSUc5MGFHVnlJR1Z1ZG1seWIyNXRaVzUwY3lCMGJ5QnZkbVZ5Y21sa1pTQnBkQzVjY2x4dUlDQWdJQ0FxWEhKY2JpQWdJQ0FnS2lCQWNHRnlZVzBnZTA5aWFtVmpkSDBnWTI5dWRHVjRkQ0IwYUdVZ2NtVnhkV2x5WlNCamIyNTBaWGgwSUhSdklHWnBibVFnYzNSaGRHVXVYSEpjYmlBZ0lDQWdLaUJBY0dGeVlXMGdlMU4wY21sdVozMGdiVzlrZFd4bFRtRnRaU0IwYUdVZ2JtRnRaU0J2WmlCMGFHVWdiVzlrZFd4bExseHlYRzRnSUNBZ0lDb2dRSEJoY21GdElIdFBZbXBsWTNSOUlIVnliQ0IwYUdVZ1ZWSk1JSFJ2SUhSb1pTQnRiMlIxYkdVdVhISmNiaUFnSUNBZ0tpOWNjbHh1SUNBZ0lISmxjUzVzYjJGa0lEMGdablZ1WTNScGIyNGdLR052Ym5SbGVIUXNJRzF2WkhWc1pVNWhiV1VzSUhWeWJDa2dlMXh5WEc0Z0lDQWdJQ0FnSUd4bGRDQmpiMjVtYVdjZ1BTQW9ZMjl1ZEdWNGRDQW1KaUJqYjI1MFpYaDBMbU52Ym1acFp5a2dmSHdnZTMwN1hISmNiaUFnSUNBZ0lDQWdiR1YwSUc1dlpHVTdYSEpjYmx4eVhHNGdJQ0FnSUNBZ0lHbG1JQ2hwYzBKeWIzZHpaWElwSUh0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z1NXNGdkR2hsSUdKeWIzZHpaWElnYzI4Z2RYTmxJR0VnYzJOeWFYQjBJSFJoWjF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0J1YjJSbElEMGdjbVZ4TG1OeVpXRjBaVTV2WkdVb1kyOXVabWxuTENCdGIyUjFiR1ZPWVcxbExDQjFjbXdwTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0JwWmlBb1kyOXVabWxuTG05dVRtOWtaVU55WldGMFpXUXBJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdOdmJtWnBaeTV2Yms1dlpHVkRjbVZoZEdWa0tHNXZaR1VzSUdOdmJtWnBaeXdnYlc5a2RXeGxUbUZ0WlN3Z2RYSnNLVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdmVnh5WEc1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnYm05a1pTNXpaWFJCZEhSeWFXSjFkR1VvSjJSaGRHRXRjbVZ4ZFdseVpXTnZiblJsZUhRbkxDQmpiMjUwWlhoMExtTnZiblJsZUhST1lXMWxLVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdibTlrWlM1elpYUkJkSFJ5YVdKMWRHVW9KMlJoZEdFdGNtVnhkV2x5WlcxdlpIVnNaU2NzSUcxdlpIVnNaVTVoYldVcE8xeHlYRzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdMeThnVTJWMElIVndJR3h2WVdRZ2JHbHpkR1Z1WlhJdUlGUmxjM1FnWVhSMFlXTm9SWFpsYm5RZ1ptbHljM1FnWW1WallYVnpaU0JKUlRrZ2FHRnpJR0VnYzNWaWRHeGxJR2x6YzNWbElHbHVJR2wwY3lCaFpHUkZkbVZ1ZEV4cGMzUmxibVZ5SUdGdVpDQmNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0x5OGdjMk55YVhCMElHOXViRzloWkNCbWFYSnBibWR6SUhSb1lYUWdaRzhnYm05MElHMWhkR05vSUhSb1pTQmlaV2hoZG1sdmNpQnZaaUJoYkd3Z2IzUm9aWElnWW5KdmQzTmxjbk1nZDJsMGFDQmhaR1JGZG1WdWRFeHBjM1JsYm1WeUlITjFjSEJ2Y25Rc0lGeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBdkx5QjNhR2xqYUNCbWFYSmxJSFJvWlNCdmJteHZZV1FnWlhabGJuUWdabTl5SUdFZ2MyTnlhWEIwSUhKcFoyaDBJR0ZtZEdWeUlIUm9aU0J6WTNKcGNIUWdaWGhsWTNWMGFXOXVMaUJUWldVNlhISmNiaUFnSUNBZ0lDQWdJQ0FnSUM4dklHaDBkSEJ6T2k4dlkyOXVibVZqZEM1dGFXTnliM052Wm5RdVkyOXRMMGxGTDJabFpXUmlZV05yTDJSbGRHRnBiSE12TmpRNE1EVTNMM05qY21sd2RDMXZibXh2WVdRdFpYWmxiblF0YVhNdGJtOTBMV1pwY21Wa0xXbHRiV1ZrYVdGMFpXeDVMV0ZtZEdWeUxYTmpjbWx3ZEMxbGVHVmpkWFJwYjI1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z1ZVNUdUMUpVVlU1QlZFVk1XU0JQY0dWeVlTQnBiWEJzWlcxbGJuUnpJR0YwZEdGamFFVjJaVzUwSUdKMWRDQmtiMlZ6SUc1dmRDQm1iMnhzYjNjZ2RHaGxJSE5qY21sd2RDQnpZM0pwY0hRZ1pYaGxZM1YwYVc5dUlHMXZaR1V1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJR2xtSUNodWIyUmxMbUYwZEdGamFFVjJaVzUwSUNZbVhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQXZMeUJEYUdWamF5QnBaaUJ1YjJSbExtRjBkR0ZqYUVWMlpXNTBJR2x6SUdGeWRHbG1hV05wWVd4c2VTQmhaR1JsWkNCaWVTQmpkWE4wYjIwZ2MyTnlhWEIwSUc5eUlHNWhkR2wyWld4NUlITjFjSEJ2Y25SbFpDQmllU0JpY205M2MyVnlYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCeVpXRmtJR2gwZEhCek9pOHZaMmwwYUhWaUxtTnZiUzlxY21KMWNtdGxMM0psY1hWcGNtVnFjeTlwYzNOMVpYTXZNVGczWEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBdkx5QnBaaUIzWlNCallXNGdUazlVSUdacGJtUWdXMjVoZEdsMlpTQmpiMlJsWFNCMGFHVnVJR2wwSUcxMWMzUWdUazlVSUc1aGRHbDJaV3g1SUhOMWNIQnZjblJsWkM0Z2FXNGdTVVU0TENCdWIyUmxMbUYwZEdGamFFVjJaVzUwSUdSdlpYTWdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCdWIzUWdhR0YyWlNCMGIxTjBjbWx1WnlncExpQk9iM1JsSUhSb1pTQjBaWE4wSUdadmNpQmNJbHR1WVhScGRtVWdZMjlrWlZ3aUlIZHBkR2dnYm04Z1kyeHZjMmx1WnlCaWNtRmpaU3dnYzJWbE9seHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnYUhSMGNITTZMeTluYVhSb2RXSXVZMjl0TDJweVluVnlhMlV2Y21WeGRXbHlaV3B6TDJsemMzVmxjeTh5TnpOY2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDRW9ibTlrWlM1aGRIUmhZMmhGZG1WdWRDNTBiMU4wY21sdVp5QW1KaUJ1YjJSbExtRjBkR0ZqYUVWMlpXNTBMblJ2VTNSeWFXNW5LQ2t1YVc1a1pYaFBaaWduVzI1aGRHbDJaU0JqYjJSbEp5a2dQQ0F3S1NBbUpseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJV2x6VDNCbGNtRXBJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklGQnliMkpoWW14NUlFbEZMaUJKUlNBb1lYUWdiR1ZoYzNRZ05pMDRLU0JrYnlCdWIzUWdabWx5WlNCelkzSnBjSFFnYjI1c2IyRmtJSEpwWjJoMElHRm1kR1Z5SUdWNFpXTjFkR2x1WnlCMGFHVWdjMk55YVhCMExDQnpiMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z2QyVWdZMkZ1Ym05MElIUnBaU0IwYUdVZ1lXNXZibmx0YjNWeklHUmxabWx1WlNCallXeHNJSFJ2SUdFZ2JtRnRaUzRnU0c5M1pYWmxjaXdnU1VVZ2NtVndiM0owY3lCMGFHVWdjMk55YVhCMElHRnpJR0psYVc1bklHbHVJRnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z0oybHVkR1Z5WVdOMGFYWmxKeUJ5WldGa2VWTjBZWFJsSUdGMElIUm9aU0IwYVcxbElHOW1JSFJvWlNCa1pXWnBibVVnWTJGc2JDNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSFZ6WlVsdWRHVnlZV04wYVhabElEMGdkSEoxWlR0Y2NseHVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0J1YjJSbExtRjBkR0ZqYUVWMlpXNTBLQ2R2Ym5KbFlXUjVjM1JoZEdWamFHRnVaMlVuTENCamIyNTBaWGgwTG05dVUyTnlhWEIwVEc5aFpDazdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCSmRDQjNiM1ZzWkNCaVpTQm5jbVZoZENCMGJ5QmhaR1FnWVc0Z1pYSnliM0lnYUdGdVpHeGxjaUJvWlhKbElIUnZJR05oZEdOb0lEUXdOSE1nYVc0Z1NVVTVLeTRnU0c5M1pYWmxjaXdnYjI1eVpXRmtlWE4wWVhSbFkyaGhibWRsSUZ4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0x5OGdkMmxzYkNCbWFYSmxJR0psWm05eVpTQjBhR1VnWlhKeWIzSWdhR0Z1Wkd4bGNpd2djMjhnZEdoaGRDQmtiMlZ6SUc1dmRDQm9aV3h3TGlCSlppQmhaR1JGZG1WdWRFeHBjM1JsYm1WeUlHbHpJSFZ6WldRc0lIUm9aVzRnU1VVZ2QybHNiQ0JjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklHWnBjbVVnWlhKeWIzSWdZbVZtYjNKbElHeHZZV1FzSUdKMWRDQjNaU0JqWVc1dWIzUWdkWE5sSUhSb1lYUWdjR0YwYUhkaGVTQm5hWFpsYmlCMGFHVWdZMjl1Ym1WamRDNXRhV055YjNOdlpuUXVZMjl0SUdsemMzVmxJRnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z2JXVnVkR2x2Ym1Wa0lHRmliM1psSUdGaWIzVjBJRzV2ZENCa2IybHVaeUIwYUdVZ0ozTmpjbWx3ZENCbGVHVmpkWFJsTENCMGFHVnVJR1pwY21VZ2RHaGxJSE5qY21sd2RDQnNiMkZrSUdWMlpXNTBJR3hwYzNSbGJtVnlJR0psWm05eVpTQmNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQzh2SUdWNFpXTjFkR1VnYm1WNGRDQnpZM0pwY0hRbklIUm9ZWFFnYjNSb1pYSWdZbkp2ZDNObGNuTWdaRzh1SUVKbGMzUWdhRzl3WlRvZ1NVVXhNQ0JtYVhobGN5QjBhR1VnYVhOemRXVnpMQ0JoYm1RZ2RHaGxiaUJrWlhOMGNtOTVjeUJoYkd3Z1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQXZMeUJwYm5OMFlXeHNjeUJ2WmlCSlJTQTJMVGt1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBdkx5QnViMlJsTG1GMGRHRmphRVYyWlc1MEtDZHZibVZ5Y205eUp5d2dZMjl1ZEdWNGRDNXZibE5qY21sd2RFVnljbTl5S1R0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnZlNCbGJITmxJSHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUc1dlpHVXVZV1JrUlhabGJuUk1hWE4wWlc1bGNpZ25iRzloWkNjc0lHTnZiblJsZUhRdWIyNVRZM0pwY0hSTWIyRmtMQ0JtWVd4elpTazdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0J1YjJSbExtRmtaRVYyWlc1MFRHbHpkR1Z1WlhJb0oyVnljbTl5Snl3Z1kyOXVkR1Y0ZEM1dmJsTmpjbWx3ZEVWeWNtOXlMQ0JtWVd4elpTazdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lIMWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ2JtOWtaUzV6Y21NZ1BTQjFjbXc3WEhKY2JseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBdkx5QkdiM0lnYzI5dFpTQmpZV05vWlNCallYTmxjeUJwYmlCSlJTQTJMVGdzSUhSb1pTQnpZM0pwY0hRZ1pYaGxZM1YwWlhNZ1ltVm1iM0psSUhSb1pTQmxibVFnYjJZZ2RHaGxJR0Z3Y0dWdVpFTm9hV3hrSUdWNFpXTjFkR2x2Yml3Z2MyOGdkRzhnWEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQzh2SUhScFpTQmhiaUJoYm05dWVXMXZkWE1nWkdWbWFXNWxJR05oYkd3Z2RHOGdkR2hsSUcxdlpIVnNaU0J1WVcxbElDaDNhR2xqYUNCcGN5QnpkRzl5WldRZ2IyNGdkR2hsSUc1dlpHVXBMQ0JvYjJ4a0lHOXVJSFJ2SUdFZ2NtVm1aWEpsYm1ObElIUnZJRnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQXZMeUIwYUdseklHNXZaR1VzSUdKMWRDQmpiR1ZoY2lCaFpuUmxjaUIwYUdVZ1JFOU5JR2x1YzJWeWRHbHZiaTVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdhV1lnS0dKaGMyVkZiR1Z0Wlc1MEtTQjdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JvWldGa0xtbHVjMlZ5ZEVKbFptOXlaU2h1YjJSbExDQmlZWE5sUld4bGJXVnVkQ2s3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJSDBnWld4elpTQjdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JvWldGa0xtRndjR1Z1WkVOb2FXeGtLRzV2WkdVcE8xeHlYRzRnSUNBZ0lDQWdJQ0FnSUNCOVhISmNibHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQnlaWFIxY200Z2JtOWtaVHRjY2x4dUlDQWdJQ0FnSUNCOUlHVnNjMlVnYVdZZ0tHbHpWMlZpVjI5eWEyVnlLU0I3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJSFJ5ZVNCN1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQXZMeUJKYmlCaElIZGxZaUIzYjNKclpYSXNJSFZ6WlNCcGJYQnZjblJUWTNKcGNIUnpMaUJVYUdseklHbHpJRzV2ZENCaElIWmxjbmxjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklHVm1abWxqYVdWdWRDQjFjMlVnYjJZZ2FXMXdiM0owVTJOeWFYQjBjeXdnYVcxd2IzSjBVMk55YVhCMGN5QjNhV3hzSUdKc2IyTnJJSFZ1ZEdsc1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQXZMeUJwZEhNZ2MyTnlhWEIwSUdseklHUnZkMjVzYjJGa1pXUWdZVzVrSUdWMllXeDFZWFJsWkM0Z1NHOTNaWFpsY2l3Z2FXWWdkMlZpSUhkdmNtdGxjbk5jY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklHRnlaU0JwYmlCd2JHRjVMQ0IwYUdVZ1pYaHdaV04wWVhScGIyNGdhWE1nZEdoaGRDQmhJR0oxYVd4a0lHaGhjeUJpWldWdUlHUnZibVVnYzI5Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDOHZJSFJvWVhRZ2IyNXNlU0J2Ym1VZ2MyTnlhWEIwSUc1bFpXUnpJSFJ2SUdKbElHeHZZV1JsWkNCaGJubDNZWGt1SUZSb2FYTWdiV0Y1SUc1bFpXUmNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQzh2SUhSdklHSmxJSEpsWlhaaGJIVmhkR1ZrSUdsbUlHOTBhR1Z5SUhWelpTQmpZWE5sY3lCaVpXTnZiV1VnWTI5dGJXOXVMbHh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYVcxd2IzSjBVMk55YVhCMGN5aDFjbXdwTzF4eVhHNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQzh2SUVGalkyOTFiblFnWm05eUlHRnViMjU1Ylc5MWN5QnRiMlIxYkdWelhISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQmpiMjUwWlhoMExtTnZiWEJzWlhSbFRHOWhaQ2h0YjJSMWJHVk9ZVzFsS1R0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnZlNCallYUmphQ0FvWlNrZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdZMjl1ZEdWNGRDNXZia1Z5Y205eUtHMWhhMlZGY25KdmNpZ25hVzF3YjNKMGMyTnlhWEIwY3ljc1hISmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSjJsdGNHOXlkRk5qY21sd2RITWdabUZwYkdWa0lHWnZjaUFuSUN0Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0J0YjJSMWJHVk9ZVzFsSUNzZ0p5QmhkQ0FuSUNzZ2RYSnNMRnh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHVXNYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ1cyMXZaSFZzWlU1aGJXVmRLU2s3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJSDFjY2x4dUlDQWdJQ0FnSUNCOVhISmNiaUFnSUNCOU8xeHlYRzVjY2x4dUlDQWdJQzh2SUV4dmIyc2dabTl5SUdFZ1pHRjBZUzF0WVdsdUlITmpjbWx3ZENCaGRIUnlhV0oxZEdVc0lIZG9hV05vSUdOdmRXeGtJR0ZzYzI4Z1lXUnFkWE4wSUhSb1pTQmlZWE5sVlhKc0xseHlYRzRnSUNBZ2FXWWdLR2x6UW5KdmQzTmxjaUFtSmlBaFkyWm5Mbk5yYVhCRVlYUmhUV0ZwYmlrZ2UxeHlYRzRnSUNBZ0lDQWdJQzh2SUVacFozVnlaU0J2ZFhRZ1ltRnpaVlZ5YkM0Z1IyVjBJR2wwSUdaeWIyMGdkR2hsSUhOamNtbHdkQ0IwWVdjZ2QybDBhQ0J5WlhGMWFYSmxMbXB6SUdsdUlHbDBMbHh5WEc0Z0lDQWdJQ0FnSUdWaFkyaFNaWFpsY25ObEtITmpjbWx3ZEhNb0tTd2dablZ1WTNScGIyNGdLSE5qY21sd2RDa2dlMXh5WEc0Z0lDQWdJQ0FnSUNBZ0lDQXZMeUJUWlhRZ2RHaGxJQ2RvWldGa0p5QjNhR1Z5WlNCM1pTQmpZVzRnWVhCd1pXNWtJR05vYVd4a2NtVnVJR0o1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQzh2SUhWemFXNW5JSFJvWlNCelkzSnBjSFFuY3lCd1lYSmxiblF1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJR2xtSUNnaGFHVmhaQ2tnZTF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2FHVmhaQ0E5SUhOamNtbHdkQzV3WVhKbGJuUk9iMlJsTzF4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0I5WEhKY2JseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBdkx5Qk1iMjlySUdadmNpQmhJR1JoZEdFdGJXRnBiaUJoZEhSeWFXSjFkR1VnZEc4Z2MyVjBJRzFoYVc0Z2MyTnlhWEIwSUdadmNpQjBhR1VnY0dGblpWeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBdkx5QjBieUJzYjJGa0xpQkpaaUJwZENCcGN5QjBhR1Z5WlN3Z2RHaGxJSEJoZEdnZ2RHOGdaR0YwWVNCdFlXbHVJR0psWTI5dFpYTWdkR2hsWEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQzh2SUdKaGMyVlZjbXdzSUdsbUlHbDBJR2x6SUc1dmRDQmhiSEpsWVdSNUlITmxkQzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdaR0YwWVUxaGFXNGdQU0J6WTNKcGNIUXVaMlYwUVhSMGNtbGlkWFJsS0Nka1lYUmhMVzFoYVc0bktUdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ2FXWWdLR1JoZEdGTllXbHVLU0I3WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBdkx5QlFjbVZ6WlhKMlpTQmtZWFJoVFdGcGJpQnBiaUJqWVhObElHbDBJR2x6SUdFZ2NHRjBhQ0FvYVM1bExpQmpiMjUwWVdsdWN5QW5QeWNwWEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCdFlXbHVVMk55YVhCMElEMGdaR0YwWVUxaGFXNDdYSEpjYmx4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0x5OGdVMlYwSUdacGJtRnNJR0poYzJWVmNtd2dhV1lnZEdobGNtVWdhWE1nYm05MElHRnNjbVZoWkhrZ1lXNGdaWGh3YkdsamFYUWdiMjVsTGx4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2FXWWdLQ0ZqWm1jdVltRnpaVlZ5YkNrZ2UxeHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklGQjFiR3dnYjJabUlIUm9aU0JrYVhKbFkzUnZjbmtnYjJZZ1pHRjBZUzF0WVdsdUlHWnZjaUIxYzJVZ1lYTWdkR2hsWEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnWW1GelpWVnliQzVjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnpjbU1nUFNCdFlXbHVVMk55YVhCMExuTndiR2wwS0Njdkp5azdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2JXRnBibE5qY21sd2RDQTlJSE55WXk1d2IzQW9LVHRjY2x4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnpkV0pRWVhSb0lEMGdjM0pqTG14bGJtZDBhQ0EvSUhOeVl5NXFiMmx1S0Njdkp5a2dLeUFuTHljZ09pQW5MaThuTzF4eVhHNWNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCalptY3VZbUZ6WlZWeWJDQTlJSE4xWWxCaGRHZzdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I5WEhKY2JseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnVTNSeWFYQWdiMlptSUdGdWVTQjBjbUZwYkdsdVp5QXVhbk1nYzJsdVkyVWdiV0ZwYmxOamNtbHdkQ0JwY3lCdWIzZGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQzh2SUd4cGEyVWdZU0J0YjJSMWJHVWdibUZ0WlM1Y2NseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHMWhhVzVUWTNKcGNIUWdQU0J0WVdsdVUyTnlhWEIwTG5KbGNHeGhZMlVvYW5OVGRXWm1hWGhTWldkRmVIQXNJQ2NuS1R0Y2NseHVYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlCSlppQnRZV2x1VTJOeWFYQjBJR2x6SUhOMGFXeHNJR0VnY0dGMGFDd2dabUZzYkNCaVlXTnJJSFJ2SUdSaGRHRk5ZV2x1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCcFppQW9jbVZ4TG1welJYaDBVbVZuUlhod0xuUmxjM1FvYldGcGJsTmpjbWx3ZENrcElIdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCdFlXbHVVMk55YVhCMElEMGdaR0YwWVUxaGFXNDdYSEpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I5WEhKY2JseHlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnVUhWMElIUm9aU0JrWVhSaExXMWhhVzRnYzJOeWFYQjBJR2x1SUhSb1pTQm1hV3hsY3lCMGJ5QnNiMkZrTGx4eVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ1kyWm5MbVJsY0hNZ1BTQmpabWN1WkdWd2N5QS9JR05tWnk1a1pYQnpMbU52Ym1OaGRDaHRZV2x1VTJOeWFYQjBLU0E2SUZ0dFlXbHVVMk55YVhCMFhUdGNjbHh1WEhKY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCeVpYUjFjbTRnZEhKMVpUdGNjbHh1SUNBZ0lDQWdJQ0FnSUNBZ2ZWeHlYRzRnSUNBZ0lDQWdJSDBwTzF4eVhHNGdJQ0FnZlZ4eVhHNWNjbHh1SUNBZ0lDOHFLbHh5WEc0Z0lDQWdJQ29nUlhobFkzVjBaWE1nZEdobElIUmxlSFF1SUU1dmNtMWhiR3g1SUdwMWMzUWdkWE5sY3lCbGRtRnNMQ0JpZFhRZ1kyRnVJR0psSUcxdlpHbG1hV1ZrSUhSdklIVnpaU0JoSUdKbGRIUmxjaXdnWlc1MmFYSnZibTFsYm5RdGMzQmxZMmxtYVdNZ1kyRnNiQzVjY2x4dUlDQWdJQ0FxSUU5dWJIa2dkWE5sWkNCbWIzSWdkSEpoYm5Od2FXeHBibWNnYkc5aFpHVnlJSEJzZFdkcGJuTXNJRzV2ZENCbWIzSWdjR3hoYVc0Z1NsTWdiVzlrZFd4bGN5NWNjbHh1SUNBZ0lDQXFYSEpjYmlBZ0lDQWdLaUJBY0dGeVlXMGdlMU4wY21sdVozMGdkR1Y0ZENCVWFHVWdkR1Y0ZENCMGJ5QmxlR1ZqZFhSbEwyVjJZV3gxWVhSbExseHlYRzRnSUNBZ0lDb3ZYSEpjYmlBZ0lDQnlaWEV1WlhobFl5QTlJR1oxYm1OMGFXOXVJQ2gwWlhoMEtTQjdYSEpjYmlBZ0lDQWdJQ0FnTHlwcWMyeHBiblFnWlhacGJEb2dkSEoxWlNBcUwxeHlYRzRnSUNBZ0lDQWdJSEpsZEhWeWJpQmxkbUZzS0hSbGVIUXBPMXh5WEc0Z0lDQWdmVHRjY2x4dVhISmNiaUFnSUNBdkx5QlRaWFFnZFhBZ2QybDBhQ0JqYjI1bWFXY2dhVzVtYnk1Y2NseHVJQ0FnSUhKbGNTaGpabWNwTzF4eVhHNTlLU2dwTzF4eVhHNGlMQ0l2S2lBdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFZ4dUlIWjFaUzVxY3lBeU1ERTRMVEEyTFRBM1hHNGdSMkZ0WW1sdklFZHRZa2hjYmlCb2RIUndPaTh2ZDNkM0xtZGhiV0pwYnk1a1pWeHVJRU52Y0hseWFXZG9kQ0FvWXlrZ01qQXhPQ0JIWVcxaWFXOGdSMjFpU0Z4dUlGSmxiR1ZoYzJWa0lIVnVaR1Z5SUhSb1pTQkhUbFVnUjJWdVpYSmhiQ0JRZFdKc2FXTWdUR2xqWlc1elpTQW9WbVZ5YzJsdmJpQXlLVnh1SUZ0b2RIUndPaTh2ZDNkM0xtZHVkUzV2Y21jdmJHbGpaVzV6WlhNdlozQnNMVEl1TUM1b2RHMXNYVnh1SUMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0WEc0Z0tpOWNibHh1YW5ObExtTnZjbVV1ZG5WbElEMGdhbk5sTG1OdmNtVXVkblZsSUh4OElIdDlPMXh1WEc0dktpcGNiaUFxSUVwVFJTQldkV1VnU1c1MFpXZHlZWFJwYjI1Y2JpQXFYRzRnS2lCSmJtbDBhV0ZzYVhwbGN5QjBhR1VnVm5WbElHRndjR3hwWTJGMGFXOXVJR1p2Y2lCMGFHVWdZM1Z5Y21WdWRDQndZV2RsTGx4dUlDcGNiaUFxSUZaMVpTQnpkWEJ3YjNKMElHbHpJR0ZqZEdsMllYUmxaQ0JwWmlCMGFHVWdaMnh2WW1Gc0lFcFRSVzVuYVc1bFEyOXVabWxuZFhKaGRHbHZiaUJ2WW1wbFkzUWdZMjl1ZEdGcGJuTWdjMlYwY3lCMGFHVWdjbVZ4ZFdWemRHVmtJSFpoYkhWbGN5Qm1iM0pjYmlBcUlIUm9aU0JwYm5SbFozSmhkR2x2Ymk1Y2JpQXFYRzRnS2lCZ1lHQmNiaUFxSUhkcGJtUnZkeTVLVTBWdVoybHVaVU52Ym1acFozVnlZWFJwYjI0Z1BTQjdYRzRnS2x4MElHVnVkbWx5YjI1dFpXNTBPaUFuWkdWMlpXeHZjRzFsYm5RbkxGeHVJQ3BjZENCaGNIQlZjbXc2SUNkb2RIUndPaTh2WlhoaGJYQnNaUzV2Y21jbkxGeHVJQ3BjZENCaGNIQldaWEp6YVc5dU9pQW5kakV1TUM0d0p5eGNiaUFxWEhRZ2RISmhibk5zWVhScGIyNXpPaUI3ZlN4Y2JpQXFYSFFnYkdGdVozVmhaMlZEYjJSbE9pQW5aVzRuTEZ4dUlDcGNkQ0J3WVdkbFZHOXJaVzQ2SUNkamMzSm1MWEJ5YjNSbFkzUnBiMjR0ZEc5clpXNG5MRnh1SUNwY2RDQmpZV05vWlZSdmEyVnVPaUFuWTJGamFHVXRZblZ6ZEdsdVp5MTBiMnRsYmljZ0xGeHVJQ3BjZENCMmRXVTZJSHRjYmlBcVhIUWdYSFJsYkRvZ0p5NTJkV1V0YVc1emRHRnVZMlVuWEc0Z0tseDBJSDBzSUZ4dUlDcGNkQ0JqYjJ4c1pXTjBhVzl1Y3pvZ1cxeHVJQ3BjZENCY2RIdHVZVzFsT2lBblkyOXVkSEp2Ykd4bGNuTW5MQ0JoZEhSeWFXSjFkR1U2SUNkamIyNTBjbTlzYkdWeUozMHNYRzRnS2x4MElGeDBlMjVoYldVNklDZGxlSFJsYm5OcGIyNXpKeXdnWVhSMGNtbGlkWFJsT2lBblpYaDBaVzV6YVc5dUozMHNYRzRnS2x4MElGeDBlMjVoYldVNklDZDNhV1JuWlhSekp5d2dZWFIwY21saWRYUmxPaUFuZDJsa1oyVjBKMzBzWEc0Z0tseDBJRngwZTI1aGJXVTZJQ2RqYjIxd1lYUnBZbWxzYVhSNUp5d2dZWFIwY21saWRYUmxPaUFuWTI5dGNHRjBhV0pwYkdsMGVTZDlYRzRnS2x4MElGMHNYRzRnS2x4MElISmxaMmx6ZEhKNU9pQjdmU0JjYmlBcUlIMDdYRzRnS2lCZ1lHQmNiaUFxWEc0Z0tpQkFiVzlrZFd4bElFcFRSUzlEYjNKbEwzQnZiSGxtYVd4c2MxeHVJQ292WEc0b1puVnVZM1JwYjI0Z0tHVjRjRzl5ZEhNcElIdGNibHh1SUNBZ0lDZDFjMlVnYzNSeWFXTjBKenRjYmx4dUlDQWdJQzhxS2x4dUlDQWdJQ0FxSUVodmJHUnpJSFoxWlNCcGJuTjBZVzVqWlhOY2JpQWdJQ0FnS2x4dUlDQWdJQ0FxSUVCMGVYQmxJSHRQWW1wbFkzUjlYRzRnSUNBZ0lDb3ZYRzRnSUNBZ1kyOXVjM1FnYVc1emRHRnVZMlZ6SUQwZ2UzMDdYRzVjYmlBZ0lDQXZLaXBjYmlBZ0lDQWdLaUJJYjJ4a2N5Qm5jbTkxY0dWa0lHTnZiWEJ2Ym1WdWRITXVYRzRnSUNBZ0lDcGNiaUFnSUNBZ0tpQkhjbTkxY0dWa0lHTnZiWEJ2Ym1WdWRITWdZWEpsSUdKbGFXNW5JSFZ6WldRZ1ptOXlJR0Z6YzJsbmJtMWxiblJ6SUdKbGRIZGxaVzRnWVNCd1lYSmxiblFnWVc1a0lHTm9hV3hrSUZaMVpTQmpiMjF3YjI1bGJuUnpMbHh1SUNBZ0lDQXFYRzRnSUNBZ0lDb2dRSFI1Y0dVZ2UwOWlhbVZqZEgxY2JpQWdJQ0FnS2k5Y2JpQWdJQ0JqYjI1emRDQmpiMjF3YjI1bGJuUnpJRDBnZTMwN1hHNWNiaUFnSUNBdktpcGNiaUFnSUNBZ0tpQkliMnhrY3lCbmNtOTFjR1ZrSUdOb2FXeGtJR052YlhCdmJtVnVkSE11WEc0Z0lDQWdJQ3BjYmlBZ0lDQWdLaUJIY205MWNHVmtJR052YlhCdmJtVnVkSE1nWVhKbElHSmxhVzVuSUhWelpXUWdabTl5SUdGemMybG5ibTFsYm5SeklHSmxkSGRsWlc0Z1lTQndZWEpsYm5RZ1lXNWtJR05vYVd4a0lGWjFaU0JqYjIxd2IyNWxiblJ6TGx4dUlDQWdJQ0FxWEc0Z0lDQWdJQ29nUUhSNWNHVWdlMDlpYW1WamRIMWNiaUFnSUNBZ0tpOWNiaUFnSUNCamIyNXpkQ0JqYUdsc1pFTnZiWEJ2Ym1WdWRITWdQU0I3ZlR0Y2JseHVJQ0FnSUM4cUtseHVJQ0FnSUNBcUlFbHVhWFJwWVd4cGVtVWdkR2hsSUZaMVpTQmhjSEJzYVdOaGRHbHZiaUJ2Ym1ObElIUm9aU0JLVXlCRmJtZHBibVVnYUdGeklHWnBibWx6YUdWa0lHeHZZV1JwYm1jZ1lXeHNJSFJvWlNCdGIyUjFiR1Z6TGx4dUlDQWdJQ0FxTDF4dUlDQWdJR1J2WTNWdFpXNTBMbUZrWkVWMlpXNTBUR2x6ZEdWdVpYSW9KMHBUUlU1SFNVNUZYMGxPU1ZSZlJrbE9TVk5JUlVRbkxDQW9LU0E5UGlCN1hHNGdJQ0FnSUNBZ0lHTnZibk4wSUdkc2IySmhiRU52Ym1acFp5QTlJR3B6WlM1amIzSmxMbU52Ym1acFp5NW5aWFFvSjNaMVpTY3BPMXh1WEc0Z0lDQWdJQ0FnSUM4dklFTm9aV05ySUdadmNpQldkV1VnU2xORklHTnZibVpwWjNWeVlYUnBiMjR1SUZ4dUlDQWdJQ0FnSUNCcFppQW9JV2RzYjJKaGJFTnZibVpwWnlrZ2UxeHVJQ0FnSUNBZ0lDQWdJQ0FnY21WMGRYSnVPMXh1SUNBZ0lDQWdJQ0I5WEc1Y2JpQWdJQ0FnSUNBZ1kyOXVjM1FnY205dmRITWdQU0JrYjJOMWJXVnVkQzV4ZFdWeWVWTmxiR1ZqZEc5eVFXeHNLR2RzYjJKaGJFTnZibVpwWnk1bGJDazdYRzVjYmlBZ0lDQWdJQ0FnUVhKeVlYa3Vabkp2YlNoeWIyOTBjeWt1Wm05eVJXRmphQ2dvY205dmRDd2dhVzVrWlhncElEMCtJSHRjYmlBZ0lDQWdJQ0FnSUNBZ0lHTnZibk4wSUc1aGJXVWdQU0J5YjI5MExtZGxkRUYwZEhKcFluVjBaU2duWkdGMFlTMTJkV1V0YVc1emRHRnVZMlV0Ym1GdFpTY3BJSHg4SUdCMmRXVXRhVzV6ZEdGdVkyVXRKSHRwYm1SbGVIMWdPMXh1SUNBZ0lDQWdJQ0FnSUNBZ1kyOXVjM1FnWTI5dVptbG5JRDBnVDJKcVpXTjBMbUZ6YzJsbmJpaDdmU3dnWjJ4dlltRnNRMjl1Wm1sbkxDQjdaV3c2SUhKdmIzUjlLVHRjYmlBZ0lDQWdJQ0FnSUNBZ0lHcHpaUzVqYjNKbExuWjFaUzVqY21WaGRHVW9ibUZ0WlN3Z1kyOXVabWxuS1R0Y2JpQWdJQ0FnSUNBZ2ZTazdYRzRnSUNBZ2ZTazdYRzVjYmlBZ0lDQXZLaXBjYmlBZ0lDQWdLaUJTWldkcGMzUmxjaUJoSUVwVElFVnVaMmx1WlNCMmRXVWdiVzlrZFd4bExseHVJQ0FnSUNBcVhHNGdJQ0FnSUNvZ1FIQmhjbUZ0SUh0UFltcGxZM1I5SUcxdlpIVnNaVnh1SUNBZ0lDQXFMMXh1SUNBZ0lHVjRjRzl5ZEhNdWNtVm5hWE4wWlhKTmIyUjFiR1VnUFNCbWRXNWpkR2x2YmlBb2JXOWtkV3hsS1NCN1hHNGdJQ0FnSUNBZ0lHbG1JQ2doYlc5a2RXeGxJSHg4SUNGdGIyUjFiR1V1ZG5WbEtTQjdYRzRnSUNBZ0lDQWdJQ0FnSUNCeVpYUjFjbTQ3WEc0Z0lDQWdJQ0FnSUgxY2JseHVJQ0FnSUNBZ0lDQnBaaUFvSVcxdlpIVnNaUzV3WVhKbGJuUXBJSHRjYmlBZ0lDQWdJQ0FnSUNBZ0lHcHpaUzVqYjNKbExuWjFaUzV5WldkcGMzUmxja052YlhCdmJtVnVkQ2h0YjJSMWJHVXVibUZ0WlN3Z2JXOWtkV3hsS1R0Y2JpQWdJQ0FnSUNBZ2ZTQmxiSE5sSUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJR3B6WlM1amIzSmxMbloxWlM1eVpXZHBjM1JsY2tOb2FXeGtRMjl0Y0c5dVpXNTBLRzF2WkhWc1pTNXdZWEpsYm5Rc0lHMXZaSFZzWlM1dVlXMWxMQ0J0YjJSMWJHVXBPMXh1SUNBZ0lDQWdJQ0I5WEc0Z0lDQWdmVHRjYmx4dUlDQWdJQzhxS2x4dUlDQWdJQ0FxSUZKbFoybHpkR1Z5SUdFZ1kyaHBiR1FnWTI5dGNHOXVaVzUwTGx4dUlDQWdJQ0FxWEc0Z0lDQWdJQ29nUUhCaGNtRnRJSHRUZEhKcGJtZDlJSEJoY21WdWRDQlFZWEpsYm5RZ1kyOXRjRzl1Wlc1MElISmxabVZ5Wlc1alpTNWNiaUFnSUNBZ0tpQkFjR0Z5WVcwZ2UxTjBjbWx1WjMwZ2JtRnRaU0JPWVcxbElHTnZiWEJ2Ym1WdWRDQnlaV1psY21WdVkyVXVYRzRnSUNBZ0lDb2dRSEJoY21GdElIdFBZbXBsWTNSOUlHTm9hV3hrUTI5dGNHOXVaVzUwSUVOb2FXeGtJR052YlhCdmJtVnVkQ0JrWldacGJtbDBhVzl1TGx4dUlDQWdJQ0FxTDF4dUlDQWdJR1Y0Y0c5eWRITXVjbVZuYVhOMFpYSkRhR2xzWkVOdmJYQnZibVZ1ZENBOUlHWjFibU4wYVc5dUlDaHdZWEpsYm5Rc0lHNWhiV1VzSUdOb2FXeGtRMjl0Y0c5dVpXNTBLU0I3WEc0Z0lDQWdJQ0FnSUdOb2FXeGtRMjl0Y0c5dVpXNTBjMXR3WVhKbGJuUmRJRDBnWTJocGJHUkRiMjF3YjI1bGJuUnpXM0JoY21WdWRGMGdmSHdnZTMwN1hHNWNiaUFnSUNBZ0lDQWdhV1lnS0dOb2FXeGtRMjl0Y0c5dVpXNTBjMXR3WVhKbGJuUmRXMjVoYldWZEtTQjdYRzRnSUNBZ0lDQWdJQ0FnSUNCeVpYUjFjbTQ3WEc0Z0lDQWdJQ0FnSUgxY2JseHVJQ0FnSUNBZ0lDQmphR2xzWkVOdmJYQnZibVZ1ZEhOYmNHRnlaVzUwWFZ0dVlXMWxYU0E5SUdOb2FXeGtRMjl0Y0c5dVpXNTBPMXh1SUNBZ0lIMDdYRzVjYmlBZ0lDQXZLaXBjYmlBZ0lDQWdLaUJTWldkcGMzUmxjaUJoSUdOdmJYQnZibVZ1ZEM1Y2JpQWdJQ0FnS2x4dUlDQWdJQ0FxSUVCd1lYSmhiU0I3VTNSeWFXNW5mU0J1WVcxbElFNWhiV1VnWTI5dGNHOXVaVzUwSUhKbFptVnlaVzVqWlM1Y2JpQWdJQ0FnS2lCQWNHRnlZVzBnZTA5aWFtVmpkSDBnWTI5dGNHOXVaVzUwSUVOdmJYQnZibVZ1ZENCa1pXWnBibWwwYVc5dUxseHVJQ0FnSUNBcUwxeHVJQ0FnSUdWNGNHOXlkSE11Y21WbmFYTjBaWEpEYjIxd2IyNWxiblFnUFNCbWRXNWpkR2x2YmlBb2JtRnRaU3dnWTI5dGNHOXVaVzUwS1NCN1hHNGdJQ0FnSUNBZ0lHbG1JQ2hqYjIxd2IyNWxiblJ6VzI1aGJXVmRLU0I3WEc0Z0lDQWdJQ0FnSUNBZ0lDQnlaWFIxY200N1hHNGdJQ0FnSUNBZ0lIMWNibHh1SUNBZ0lDQWdJQ0JqYjIxd2IyNWxiblJ6VzI1aGJXVmRJRDBnWTI5dGNHOXVaVzUwTzF4dUlDQWdJSDA3WEc1Y2JpQWdJQ0F2S2lwY2JpQWdJQ0FnS2lCRGNtVmhkR1VnWVNCdVpYY2dWblZsSUdsdWMzUmhibU5sTGx4dUlDQWdJQ0FxWEc0Z0lDQWdJQ29nUUhCaGNtRnRJSHRUZEhKcGJtZDlJRzVoYldVZ1ZXNXBjWFZsSUc1aGJXVWdabTl5SUdsdWMzUmhibU5sTGx4dUlDQWdJQ0FxSUVCd1lYSmhiU0I3VDJKcVpXTjBmU0JqYjI1bWFXY2dWblZsSUdOdmJtWnBaM1Z5WVhScGIyNGdabTl5SUhSb1pTQnVaWGNnYVc1emRHRnVZMlV1WEc0Z0lDQWdJQ292WEc0Z0lDQWdaWGh3YjNKMGN5NWpjbVZoZEdVZ1BTQm1kVzVqZEdsdmJpQW9ibUZ0WlN3Z1kyOXVabWxuS1NCN1hHNGdJQ0FnSUNBZ0lHbG1JQ2hwYm5OMFlXNWpaWE5iYm1GdFpWMHBJSHRjYmlBZ0lDQWdJQ0FnSUNBZ0lIUm9jbTkzSUc1bGR5QkZjbkp2Y2loZ1NXNXpkR0Z1WTJVZ2QybDBhQ0J1WVcxbElDUjdibUZ0WlgwZ1lXeHlaV0ZrZVNCbGVHbHpkSE1zSUhCc1pXRnpaU0IxYzJVZ1lTQmthV1ptWlhKbGJuUWdibUZ0WlM1Z0tUdGNiaUFnSUNBZ0lDQWdmVnh1WEc0Z0lDQWdJQ0FnSUdadmNpQW9iR1YwSUc1aGJXVWdhVzRnWTI5dGNHOXVaVzUwY3lrZ2UxeHVJQ0FnSUNBZ0lDQWdJQ0FnWTI5dGNHOXVaVzUwYzF0dVlXMWxYUzVqYjIxd2IyNWxiblJ6SUQwZ1kyaHBiR1JEYjIxd2IyNWxiblJ6VzI1aGJXVmRJSHg4SUh0OU8xeHVYRzRnSUNBZ0lDQWdJQ0FnSUNCV2RXVXVZMjl0Y0c5dVpXNTBLRzVoYldVc0lHTnZiWEJ2Ym1WdWRITmJibUZ0WlYwcE8xeHVJQ0FnSUNBZ0lDQjlYRzVjYmlBZ0lDQWdJQ0FnYVc1emRHRnVZMlZ6VzI1aGJXVmRJRDBnYm1WM0lGWjFaU2hqYjI1bWFXY3BPMXh1SUNBZ0lIMDdYRzVjYmlBZ0lDQXZLaXBjYmlBZ0lDQWdLaUJFWlhOMGNtOTVJR0VnZG5WbElHbHVjM1JoYm1ObExseHVJQ0FnSUNBcVhHNGdJQ0FnSUNvZ1FIQmhjbUZ0SUh0VGRISnBibWQ5SUc1aGJXVWdTVzV6ZEdGdVkyVWdibUZ0WlNCMGJ5QmlaU0JrWlhOMGNtOTVaV1F1WEc0Z0lDQWdJQ292WEc0Z0lDQWdaWGh3YjNKMGN5NWtaWE4wY205NUlEMGdablZ1WTNScGIyNGdLRzVoYldVcElIdGNiaUFnSUNBZ0lDQWdhV1lnS0NGcGJuTjBZVzVqWlhOYmJtRnRaVjBwSUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJSFJvY205M0lHNWxkeUJGY25KdmNpaGdTVzV6ZEdGdVkyVWdkMmwwYUNCdVlXMWxJQ1I3Ym1GdFpYMGdaRzlsY3lCdWIzUWdaWGhwYzNRc0lHMWhhMlVnYzNWeVpTQjBhR1VnYVc1emRHRnVZMlVnZDJGeklHbHVhWFJwWVd4cGVtVmtJR052Y25KbFkzUnNlUzVnS1R0Y2JpQWdJQ0FnSUNBZ2ZWeHVYRzRnSUNBZ0lDQWdJR2x1YzNSaGJtTmxjMXR1WVcxbFhTNGtaR1Z6ZEhKdmVTZ3BPMXh1WEc0Z0lDQWdJQ0FnSUdSbGJHVjBaU0JwYm5OMFlXNWpaWE5iYm1GdFpWMDdYRzRnSUNBZ2ZUdGNibHh1SUNBZ0lDOHFLbHh1SUNBZ0lDQXFJRWRsZENCaGJHd2dZV04wYVhabElHbHVjM1JoYm1ObGN5NWNiaUFnSUNBZ0tseHVJQ0FnSUNBcUlFQnlaWFIxY200Z2UwOWlhbVZqZEgwZ1RtRnRaU0F0SUdsdWMzUmhibU5sSUhCaGFYSnpMbHh1SUNBZ0lDQXFMMXh1SUNBZ0lHVjRjRzl5ZEhNdWFXNXpkR0Z1WTJWeklEMGdablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJQ0FnSUNCeVpYUjFjbTRnYVc1emRHRnVZMlZ6TzF4dUlDQWdJSDA3WEc1OUtTaHFjMlV1WTI5eVpTNTJkV1VwT3lKZGZRPT0ifQ==

Youez - 2016 - github.com/yon3zu
LinuXploit