kepler.gl
Version:
kepler.gl is a webgl based application to visualize large scale location data in the browser
75 lines (73 loc) • 13.4 kB
JavaScript
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getApplicationConfig = void 0;
exports.initApplicationConfig = initApplicationConfig;
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
var _constants = require("@kepler.gl/constants");
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != (0, _typeof2["default"])(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; } // SPDX-License-Identifier: MIT
// Copyright contributors to the kepler.gl project
/**
* A mechanism to override default Kepler values/settings so that we
* without having to make application-specific changes to the kepler repo.
*/
var DEFAULT_APPLICATION_CONFIG = {
defaultHtmlName: 'kepler.gl.html',
defaultImageName: 'kepler.gl.png',
defaultJsonName: 'kepler.gl.json',
defaultDataName: 'kepler.gl',
defaultExportJsonSettings: {
hasData: true
},
baseMapLibraryConfig: {
maplibre: {
getMapLib: function getMapLib() {
return Promise.resolve().then(function () {
return _interopRequireWildcard(require('maplibre-gl'));
});
},
mapLibCssClass: 'maplibregl',
mapLibAttributionCssClass: 'maplibre-attribution-container',
mapLibName: 'MapLibre',
mapLibUrl: 'https://www.maplibre.org/'
},
mapbox: {
getMapLib: function getMapLib() {
return Promise.resolve().then(function () {
return _interopRequireWildcard(require('mapbox-gl'));
});
},
mapLibCssClass: 'mapboxgl',
mapLibAttributionCssClass: 'mapbox-attribution-container',
mapLibName: 'Mapbox',
mapLibUrl: 'https://www.mapbox.com/'
}
},
cdnUrl: _constants.KEPLER_UNFOLDED_BUCKET,
plugins: [],
// The default table class is KeplerTable.
// TODO include KeplerTable here when the circular dependency with @kepler.gl/table and @kepler.gl/utils are resolved.
table: null,
database: null,
useArrowProgressiveLoading: true,
showReleaseBanner: true,
useOnFilteredItemsChange: false,
// Raster Tile layer config
enableRasterTileLayer: false,
rasterServerUseLatestTitiler: true,
// TODO: provide a default free server or leave blank
rasterServerUrls: ['http://localhost:8000'],
rasterServerSupportsElevation: true
};
var applicationConfig = DEFAULT_APPLICATION_CONFIG;
var getApplicationConfig = exports.getApplicationConfig = function getApplicationConfig() {
return applicationConfig;
};
function initApplicationConfig() {
var appConfig = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
Object.assign(applicationConfig, appConfig);
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY29uc3RhbnRzIiwicmVxdWlyZSIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsImUiLCJXZWFrTWFwIiwiciIsInQiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mMiIsImhhcyIsImdldCIsIm4iLCJfX3Byb3RvX18iLCJhIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJ1IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiaSIsInNldCIsIkRFRkFVTFRfQVBQTElDQVRJT05fQ09ORklHIiwiZGVmYXVsdEh0bWxOYW1lIiwiZGVmYXVsdEltYWdlTmFtZSIsImRlZmF1bHRKc29uTmFtZSIsImRlZmF1bHREYXRhTmFtZSIsImRlZmF1bHRFeHBvcnRKc29uU2V0dGluZ3MiLCJoYXNEYXRhIiwiYmFzZU1hcExpYnJhcnlDb25maWciLCJtYXBsaWJyZSIsImdldE1hcExpYiIsIlByb21pc2UiLCJyZXNvbHZlIiwidGhlbiIsIm1hcExpYkNzc0NsYXNzIiwibWFwTGliQXR0cmlidXRpb25Dc3NDbGFzcyIsIm1hcExpYk5hbWUiLCJtYXBMaWJVcmwiLCJtYXBib3giLCJjZG5VcmwiLCJLRVBMRVJfVU5GT0xERURfQlVDS0VUIiwicGx1Z2lucyIsInRhYmxlIiwiZGF0YWJhc2UiLCJ1c2VBcnJvd1Byb2dyZXNzaXZlTG9hZGluZyIsInNob3dSZWxlYXNlQmFubmVyIiwidXNlT25GaWx0ZXJlZEl0ZW1zQ2hhbmdlIiwiZW5hYmxlUmFzdGVyVGlsZUxheWVyIiwicmFzdGVyU2VydmVyVXNlTGF0ZXN0VGl0aWxlciIsInJhc3RlclNlcnZlclVybHMiLCJyYXN0ZXJTZXJ2ZXJTdXBwb3J0c0VsZXZhdGlvbiIsImFwcGxpY2F0aW9uQ29uZmlnIiwiZ2V0QXBwbGljYXRpb25Db25maWciLCJleHBvcnRzIiwiaW5pdEFwcGxpY2F0aW9uQ29uZmlnIiwiYXBwQ29uZmlnIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwidW5kZWZpbmVkIiwiYXNzaWduIl0sInNvdXJjZXMiOlsiLi4vc3JjL2FwcGxpY2F0aW9uLWNvbmZpZy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQge01hcExpYiwgTWFwUmVmfSBmcm9tICdyZWFjdC1tYXAtZ2wnO1xuXG5pbXBvcnQge0tFUExFUl9VTkZPTERFRF9CVUNLRVR9IGZyb20gJ0BrZXBsZXIuZ2wvY29uc3RhbnRzJztcbmltcG9ydCB0eXBlIHtCYXNlTWFwTGlicmFyeVR5cGV9IGZyb20gJ0BrZXBsZXIuZ2wvY29uc3RhbnRzJztcblxuaW1wb3J0IHR5cGUge0RhdGFiYXNlQWRhcHRlcn0gZnJvbSAnLi9hcHBsaWNhdGlvbi1jb25maWctdHlwZXMnO1xuXG5leHBvcnQgdHlwZSBNYXBMaWJJbnN0YW5jZSA9IE1hcExpYjxhbnk+O1xuZXhwb3J0IHR5cGUgR2V0TWFwUmVmID0gUmV0dXJuVHlwZTxNYXBSZWZbJ2dldE1hcCddPjtcblxuZXhwb3J0IHR5cGUgQmFzZU1hcExpYnJhcnlDb25maWcgPSB7XG4gIGdldE1hcExpYjogKCkgPT4gUHJvbWlzZTxNYXBMaWJJbnN0YW5jZT47XG4gIG1hcExpYkF0dHJpYnV0aW9uQ3NzQ2xhc3M6IHN0cmluZztcbiAgbWFwTGliQ3NzQ2xhc3M6IHN0cmluZztcbiAgbWFwTGliTmFtZTogc3RyaW5nO1xuICBtYXBMaWJVcmw6IHN0cmluZztcbn07XG5cbi8qKlxuICogQSBtZWNoYW5pc20gdG8gb3ZlcnJpZGUgZGVmYXVsdCBLZXBsZXIgdmFsdWVzL3NldHRpbmdzIHNvIHRoYXQgd2VcbiAqIHdpdGhvdXQgaGF2aW5nIHRvIG1ha2UgYXBwbGljYXRpb24tc3BlY2lmaWMgY2hhbmdlcyB0byB0aGUga2VwbGVyIHJlcG8uXG4gKi9cbmV4cG9ydCB0eXBlIEtlcGxlckFwcGxpY2F0aW9uQ29uZmlnID0ge1xuICAvKiogRGVmYXVsdCBuYW1lIG9mIGV4cG9ydCBIVE1MIGZpbGUsIGNhbiBiZSBvdmVycmlkZGVuIGJ5IHVzZXIgKi9cbiAgZGVmYXVsdEh0bWxOYW1lPzogc3RyaW5nO1xuICBkZWZhdWx0SW1hZ2VOYW1lPzogc3RyaW5nO1xuICBkZWZhdWx0SnNvbk5hbWU/OiBzdHJpbmc7XG4gIGRlZmF1bHREYXRhTmFtZT86IHN0cmluZztcbiAgZGVmYXVsdEV4cG9ydEpzb25TZXR0aW5ncz86IHtcbiAgICBoYXNEYXRhPzogYm9vbGVhbjtcbiAgfTtcbiAgYmFzZU1hcExpYnJhcnlDb25maWc/OiBSZWNvcmQ8QmFzZU1hcExpYnJhcnlUeXBlLCBCYXNlTWFwTGlicmFyeUNvbmZpZz47XG4gIHBsdWdpbnM/OiBhbnlbXTtcbiAgLy8gS2VwbGVyVGFibGUgYWx0ZXJuYXRpdmVcbiAgLy8gVE9ETyBpbXByb3ZlIHR5cGluZyBieSBleHBvcnRpbmcgS2VwbGVyVGFibGUgaW50ZXJmYWNlIHRvIEBrZXBsZXIuZ2wvdHlwZXNcbiAgdGFibGU/OiBhbnk7XG4gIGRhdGFiYXNlPzogRGF0YWJhc2VBZGFwdGVyIHwgbnVsbDtcblxuICAvLyBEaXNhYmxlIHByb2dyZXNzaXZlIGxvYWRpbmcgZm9yIGFycm93IGZpbGVzXG4gIHVzZUFycm93UHJvZ3Jlc3NpdmVMb2FkaW5nPzogYm9vbGVhbjtcbiAgLy8gU2hvdyBidWlsdC1pbiBiYW5uZXIgYXNzb2NpYXRlZCB3aXRoIHRoZSBjdXJyZW50IHZlcnNpb24gb2YgS2VwbGVyLmdsXG4gIHNob3dSZWxlYXNlQmFubmVyPzogYm9vbGVhbjtcbiAgLy8gVXNlIHRoZSBvbkZpbHRlcmVkSXRlbXNDaGFuZ2UgY2FsbGJhY2sgZm9yIERhdGFGaWx0ZXJFeHRlbnNpb24uXG4gIC8vIEVuYWJsaW5nIHRoaXMgb3B0aW9uIG1heSBjYXVzZSBwZXJmb3JtYW5jZSBpc3N1ZXMgd2hlbiBkZWFsaW5nIHdpdGggYSBsYXJnZSBudW1iZXIgb2YgbGF5ZXJzIG9yIHN1YmxheWVycyxcbiAgLy8gZXNwZWNpYWxseSBpZiBsYXJnZSBBcnJvdyBmaWxlcyBhcmUgc3BsaXQgaW50byByZWxhdGl2ZWx5IHNtYWxsIGJhdGNoZXMgKHNob3VsZCBiZSBmaXhlZCBpbiB0aGUgZnV0dXJlKS5cbiAgdXNlT25GaWx0ZXJlZEl0ZW1zQ2hhbmdlPzogYm9vbGVhbjtcblxuICAvLyBBIFVSTCB0byB0aGUgQ0ROIHdoZXJlIHRoZSBrZXBsZXIuZ2wgYXNzZXRzIGFyZSBob3N0ZWQuXG4gIGNkblVybD86IHN0cmluZztcblxuICAvLyBSYXN0ZXIgVGlsZSBsYXllciBjb25maWdcbiAgLy8gUmFzdGVyIFRpbGUgbGF5ZXIgaXMgdW5kZXIgZGV2ZWxvcG1lbnQgYW5kIG5vdCByZWFkeSBmb3IgcHJvZHVjdGlvbiB1c2UuIERpc2FibGVkIGJ5IGRlZmF1bHQuXG4gIGVuYWJsZVJhc3RlclRpbGVMYXllcj86IGJvb2xlYW47XG4gIC8qKiBUaXRpbGVyIHYwLjExIHZzIHYwLjIxICovXG4gIHJhc3RlclNlcnZlclVzZUxhdGVzdFRpdGlsZXI/OiBib29sZWFuO1xuICAvKiogQW4gYXJyYXkgb2YgVVJMcyB0byBzaGFyZHMgb2YgdGhlIHJhc3RlciB0aWxlIHNlcnZlciB0byBiZSB1c2VkIGJ5IHRoZSByYXN0ZXIgdGlsZSBsYXllci4gKi9cbiAgcmFzdGVyU2VydmVyVXJscz86IHN0cmluZ1tdO1xuICAvKiogSWYgdHJ1ZSB0aGVuIHRyeSB0byBmZXRjaCBxdWFudGl6ZWQgZWxldmF0aW9uIG1lc2hlcyBmcm9tIHJhc3RlciBzZXJ2ZXJzICovXG4gIHJhc3RlclNlcnZlclN1cHBvcnRzRWxldmF0aW9uPzogYm9vbGVhbjtcbn07XG5cbmNvbnN0IERFRkFVTFRfQVBQTElDQVRJT05fQ09ORklHOiBSZXF1aXJlZDxLZXBsZXJBcHBsaWNhdGlvbkNvbmZpZz4gPSB7XG4gIGRlZmF1bHRIdG1sTmFtZTogJ2tlcGxlci5nbC5odG1sJyxcbiAgZGVmYXVsdEltYWdlTmFtZTogJ2tlcGxlci5nbC5wbmcnLFxuICBkZWZhdWx0SnNvbk5hbWU6ICdrZXBsZXIuZ2wuanNvbicsXG4gIGRlZmF1bHREYXRhTmFtZTogJ2tlcGxlci5nbCcsXG4gIGRlZmF1bHRFeHBvcnRKc29uU2V0dGluZ3M6IHtcbiAgICBoYXNEYXRhOiB0cnVlXG4gIH0sXG5cbiAgYmFzZU1hcExpYnJhcnlDb25maWc6IHtcbiAgICBtYXBsaWJyZToge1xuICAgICAgZ2V0TWFwTGliOiAoKSA9PiBpbXBvcnQoJ21hcGxpYnJlLWdsJyksXG4gICAgICBtYXBMaWJDc3NDbGFzczogJ21hcGxpYnJlZ2wnLFxuICAgICAgbWFwTGliQXR0cmlidXRpb25Dc3NDbGFzczogJ21hcGxpYnJlLWF0dHJpYnV0aW9uLWNvbnRhaW5lcicsXG4gICAgICBtYXBMaWJOYW1lOiAnTWFwTGlicmUnLFxuICAgICAgbWFwTGliVXJsOiAnaHR0cHM6Ly93d3cubWFwbGlicmUub3JnLydcbiAgICB9LFxuICAgIG1hcGJveDoge1xuICAgICAgZ2V0TWFwTGliOiAoKSA9PiBpbXBvcnQoJ21hcGJveC1nbCcpLFxuICAgICAgbWFwTGliQ3NzQ2xhc3M6ICdtYXBib3hnbCcsXG4gICAgICBtYXBMaWJBdHRyaWJ1dGlvbkNzc0NsYXNzOiAnbWFwYm94LWF0dHJpYnV0aW9uLWNvbnRhaW5lcicsXG4gICAgICBtYXBMaWJOYW1lOiAnTWFwYm94JyxcbiAgICAgIG1hcExpYlVybDogJ2h0dHBzOi8vd3d3Lm1hcGJveC5jb20vJ1xuICAgIH1cbiAgfSxcblxuICBjZG5Vcmw6IEtFUExFUl9VTkZPTERFRF9CVUNLRVQsXG5cbiAgcGx1Z2luczogW10sXG4gIC8vIFRoZSBkZWZhdWx0IHRhYmxlIGNsYXNzIGlzIEtlcGxlclRhYmxlLlxuICAvLyBUT0RPIGluY2x1ZGUgS2VwbGVyVGFibGUgaGVyZSB3aGVuIHRoZSBjaXJjdWxhciBkZXBlbmRlbmN5IHdpdGggQGtlcGxlci5nbC90YWJsZSBhbmQgQGtlcGxlci5nbC91dGlscyBhcmUgcmVzb2x2ZWQuXG4gIHRhYmxlOiBudWxsLFxuICBkYXRhYmFzZTogbnVsbCxcblxuICB1c2VBcnJvd1Byb2dyZXNzaXZlTG9hZGluZzogdHJ1ZSxcbiAgc2hvd1JlbGVhc2VCYW5uZXI6IHRydWUsXG4gIHVzZU9uRmlsdGVyZWRJdGVtc0NoYW5nZTogZmFsc2UsXG5cbiAgLy8gUmFzdGVyIFRpbGUgbGF5ZXIgY29uZmlnXG4gIGVuYWJsZVJhc3RlclRpbGVMYXllcjogZmFsc2UsXG4gIHJhc3RlclNlcnZlclVzZUxhdGVzdFRpdGlsZXI6IHRydWUsXG4gIC8vIFRPRE86IHByb3ZpZGUgYSBkZWZhdWx0IGZyZWUgc2VydmVyIG9yIGxlYXZlIGJsYW5rXG4gIHJhc3RlclNlcnZlclVybHM6IFsnaHR0cDovL2xvY2FsaG9zdDo4MDAwJ10sXG4gIHJhc3RlclNlcnZlclN1cHBvcnRzRWxldmF0aW9uOiB0cnVlXG59O1xuXG5jb25zdCBhcHBsaWNhdGlvbkNvbmZpZzogUmVxdWlyZWQ8S2VwbGVyQXBwbGljYXRpb25Db25maWc+ID0gREVGQVVMVF9BUFBMSUNBVElPTl9DT05GSUc7XG5cbmV4cG9ydCBjb25zdCBnZXRBcHBsaWNhdGlvbkNvbmZpZyA9ICgpOiBSZXF1aXJlZDxLZXBsZXJBcHBsaWNhdGlvbkNvbmZpZz4gPT4gYXBwbGljYXRpb25Db25maWc7XG5cbmV4cG9ydCBmdW5jdGlvbiBpbml0QXBwbGljYXRpb25Db25maWcoYXBwQ29uZmlnOiBLZXBsZXJBcHBsaWNhdGlvbkNvbmZpZyA9IHt9KSB7XG4gIE9iamVjdC5hc3NpZ24oYXBwbGljYXRpb25Db25maWcsIGFwcENvbmZpZyk7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUtBLElBQUFBLFVBQUEsR0FBQUMsT0FBQTtBQUE0RCxTQUFBQyx5QkFBQUMsQ0FBQSw2QkFBQUMsT0FBQSxtQkFBQUMsQ0FBQSxPQUFBRCxPQUFBLElBQUFFLENBQUEsT0FBQUYsT0FBQSxZQUFBRix3QkFBQSxZQUFBQSx5QkFBQUMsQ0FBQSxXQUFBQSxDQUFBLEdBQUFHLENBQUEsR0FBQUQsQ0FBQSxLQUFBRixDQUFBO0FBQUEsU0FBQUksd0JBQUFKLENBQUEsRUFBQUUsQ0FBQSxTQUFBQSxDQUFBLElBQUFGLENBQUEsSUFBQUEsQ0FBQSxDQUFBSyxVQUFBLFNBQUFMLENBQUEsZUFBQUEsQ0FBQSxvQkFBQU0sUUFBQSxhQUFBTixDQUFBLDBCQUFBQSxDQUFBLHNCQUFBQSxDQUFBLFFBQUFHLENBQUEsR0FBQUosd0JBQUEsQ0FBQUcsQ0FBQSxPQUFBQyxDQUFBLElBQUFBLENBQUEsQ0FBQUksR0FBQSxDQUFBUCxDQUFBLFVBQUFHLENBQUEsQ0FBQUssR0FBQSxDQUFBUixDQUFBLE9BQUFTLENBQUEsS0FBQUMsU0FBQSxVQUFBQyxDQUFBLEdBQUFDLE1BQUEsQ0FBQUMsY0FBQSxJQUFBRCxNQUFBLENBQUFFLHdCQUFBLFdBQUFDLENBQUEsSUFBQWYsQ0FBQSxvQkFBQWUsQ0FBQSxPQUFBQyxjQUFBLENBQUFDLElBQUEsQ0FBQWpCLENBQUEsRUFBQWUsQ0FBQSxTQUFBRyxDQUFBLEdBQUFQLENBQUEsR0FBQUMsTUFBQSxDQUFBRSx3QkFBQSxDQUFBZCxDQUFBLEVBQUFlLENBQUEsVUFBQUcsQ0FBQSxLQUFBQSxDQUFBLENBQUFWLEdBQUEsSUFBQVUsQ0FBQSxDQUFBQyxHQUFBLElBQUFQLE1BQUEsQ0FBQUMsY0FBQSxDQUFBSixDQUFBLEVBQUFNLENBQUEsRUFBQUcsQ0FBQSxJQUFBVCxDQUFBLENBQUFNLENBQUEsSUFBQWYsQ0FBQSxDQUFBZSxDQUFBLFlBQUFOLENBQUEsY0FBQVQsQ0FBQSxFQUFBRyxDQUFBLElBQUFBLENBQUEsQ0FBQWdCLEdBQUEsQ0FBQW5CLENBQUEsRUFBQVMsQ0FBQSxHQUFBQSxDQUFBLElBTDVEO0FBQ0E7QUFvQkE7QUFDQTtBQUNBO0FBQ0E7O0FBd0NBLElBQU1XLDBCQUE2RCxHQUFHO0VBQ3BFQyxlQUFlLEVBQUUsZ0JBQWdCO0VBQ2pDQyxnQkFBZ0IsRUFBRSxlQUFlO0VBQ2pDQyxlQUFlLEVBQUUsZ0JBQWdCO0VBQ2pDQyxlQUFlLEVBQUUsV0FBVztFQUM1QkMseUJBQXlCLEVBQUU7SUFDekJDLE9BQU8sRUFBRTtFQUNYLENBQUM7RUFFREMsb0JBQW9CLEVBQUU7SUFDcEJDLFFBQVEsRUFBRTtNQUNSQyxTQUFTLEVBQUUsU0FBWEEsU0FBU0EsQ0FBQTtRQUFBLE9BQUFDLE9BQUEsQ0FBQUMsT0FBQSxHQUFBQyxJQUFBO1VBQUEsT0FBQTVCLHVCQUFBLENBQUFOLE9BQUEsQ0FBZSxhQUFhO1FBQUE7TUFBQSxDQUFDO01BQ3RDbUMsY0FBYyxFQUFFLFlBQVk7TUFDNUJDLHlCQUF5QixFQUFFLGdDQUFnQztNQUMzREMsVUFBVSxFQUFFLFVBQVU7TUFDdEJDLFNBQVMsRUFBRTtJQUNiLENBQUM7SUFDREMsTUFBTSxFQUFFO01BQ05SLFNBQVMsRUFBRSxTQUFYQSxTQUFTQSxDQUFBO1FBQUEsT0FBQUMsT0FBQSxDQUFBQyxPQUFBLEdBQUFDLElBQUE7VUFBQSxPQUFBNUIsdUJBQUEsQ0FBQU4sT0FBQSxDQUFlLFdBQVc7UUFBQTtNQUFBLENBQUM7TUFDcENtQyxjQUFjLEVBQUUsVUFBVTtNQUMxQkMseUJBQXlCLEVBQUUsOEJBQThCO01BQ3pEQyxVQUFVLEVBQUUsUUFBUTtNQUNwQkMsU0FBUyxFQUFFO0lBQ2I7RUFDRixDQUFDO0VBRURFLE1BQU0sRUFBRUMsaUNBQXNCO0VBRTlCQyxPQUFPLEVBQUUsRUFBRTtFQUNYO0VBQ0E7RUFDQUMsS0FBSyxFQUFFLElBQUk7RUFDWEMsUUFBUSxFQUFFLElBQUk7RUFFZEMsMEJBQTBCLEVBQUUsSUFBSTtFQUNoQ0MsaUJBQWlCLEVBQUUsSUFBSTtFQUN2QkMsd0JBQXdCLEVBQUUsS0FBSztFQUUvQjtFQUNBQyxxQkFBcUIsRUFBRSxLQUFLO0VBQzVCQyw0QkFBNEIsRUFBRSxJQUFJO0VBQ2xDO0VBQ0FDLGdCQUFnQixFQUFFLENBQUMsdUJBQXVCLENBQUM7RUFDM0NDLDZCQUE2QixFQUFFO0FBQ2pDLENBQUM7QUFFRCxJQUFNQyxpQkFBb0QsR0FBRzlCLDBCQUEwQjtBQUVoRixJQUFNK0Isb0JBQW9CLEdBQUFDLE9BQUEsQ0FBQUQsb0JBQUEsR0FBRyxTQUF2QkEsb0JBQW9CQSxDQUFBO0VBQUEsT0FBNENELGlCQUFpQjtBQUFBO0FBRXZGLFNBQVNHLHFCQUFxQkEsQ0FBQSxFQUEwQztFQUFBLElBQXpDQyxTQUFrQyxHQUFBQyxTQUFBLENBQUFDLE1BQUEsUUFBQUQsU0FBQSxRQUFBRSxTQUFBLEdBQUFGLFNBQUEsTUFBRyxDQUFDLENBQUM7RUFDM0UzQyxNQUFNLENBQUM4QyxNQUFNLENBQUNSLGlCQUFpQixFQUFFSSxTQUFTLENBQUM7QUFDN0MiLCJpZ25vcmVMaXN0IjpbXX0=
;