@bigbinary/neeto-media-recorder 2.7.12 → 2.7.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/constants.js +2 -1
- package/constants.js.map +1 -1
- package/core.js +17 -12
- package/core.js.map +1 -1
- package/index.js.map +1 -1
- package/package.json +1 -1
package/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["node_modules/rollup-plugin-styles/dist/runtime/inject-css.js","node_modules/@babel/runtime/helpers/esm/typeof.js","node_modules/@babel/runtime/helpers/esm/toPrimitive.js","node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","node_modules/@babel/runtime/helpers/esm/defineProperty.js","node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","node_modules/@babel/runtime/helpers/esm/slicedToArray.js","node_modules/@babel/runtime/helpers/typeof.js","node_modules/@babel/runtime/helpers/regeneratorRuntime.js","node_modules/@babel/runtime/regenerator/index.js","src/constants.js","src/core/screenRecorder/utils.js","src/components/MediaRecorder/utils.js","src/apis/recordings.js","src/hooks/reactQuery/useRecordingApi.js","src/components/MediaRecorder/AbortUpload.jsx","node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","src/components/commons/Icons.jsx","src/components/MediaRecorder/hooks/useRecorderStatus.js","src/components/MediaRecorder/Controls.jsx","src/components/MediaRecorder/hooks/useAudioIsCapturing.js","src/components/MediaRecorder/hooks/useHandleErrors.js","src/components/MediaRecorder/Timer.jsx","src/components/MediaRecorder/UnSupportedBrowser.jsx","src/utils/index.js","src/components/MediaRecorder/UseDesktopAppCallout.jsx","src/components/MediaRecorder/UploadingInProgress.jsx","src/components/commons/AllowMicAccess.jsx","src/components/MediaRecorder/index.jsx"],"sourcesContent":["var e=[],t=[];function n(n,r){if(n&&\"undefined\"!=typeof document){var a,s=!0===r.prepend?\"prepend\":\"append\",d=!0===r.singleTag,i=\"string\"==typeof r.container?document.querySelector(r.container):document.getElementsByTagName(\"head\")[0];if(d){var u=e.indexOf(i);-1===u&&(u=e.push(i)-1,t[u]={}),a=t[u]&&t[u][s]?t[u][s]:t[u][s]=c()}else a=c();65279===n.charCodeAt(0)&&(n=n.substring(1)),a.styleSheet?a.styleSheet.cssText+=n:a.appendChild(document.createTextNode(n))}function c(){var e=document.createElement(\"style\");if(e.setAttribute(\"type\",\"text/css\"),r.attributes)for(var t=Object.keys(r.attributes),n=0;n<t.length;n++)e.setAttribute(t[n],r.attributes[t[n]]);var a=\"prepend\"===s?\"afterbegin\":\"beforeend\";return i.insertAdjacentElement(a,e),e}}export{n as default};\n","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}\nexport { _typeof as default };","import _typeof from \"./typeof.js\";\nfunction toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nexport { toPrimitive as default };","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nfunction toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : i + \"\";\n}\nexport { toPropertyKey as default };","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperty(e, r, t) {\n return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {\n value: t,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : e[r] = t, e;\n}\nexport { _defineProperty as default };","function asyncGeneratorStep(n, t, e, r, o, a, c) {\n try {\n var i = n[a](c),\n u = i.value;\n } catch (n) {\n return void e(n);\n }\n i.done ? t(u) : Promise.resolve(u).then(r, o);\n}\nfunction _asyncToGenerator(n) {\n return function () {\n var t = this,\n e = arguments;\n return new Promise(function (r, o) {\n var a = n.apply(t, e);\n function _next(n) {\n asyncGeneratorStep(a, r, o, _next, _throw, \"next\", n);\n }\n function _throw(n) {\n asyncGeneratorStep(a, r, o, _next, _throw, \"throw\", n);\n }\n _next(void 0);\n });\n };\n}\nexport { _asyncToGenerator as default };","function _arrayWithHoles(r) {\n if (Array.isArray(r)) return r;\n}\nexport { _arrayWithHoles as default };","function _iterableToArrayLimit(r, l) {\n var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"];\n if (null != t) {\n var e,\n n,\n i,\n u,\n a = [],\n f = !0,\n o = !1;\n try {\n if (i = (t = t.call(r)).next, 0 === l) {\n if (Object(t) !== t) return;\n f = !1;\n } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);\n } catch (r) {\n o = !0, n = r;\n } finally {\n try {\n if (!f && null != t[\"return\"] && (u = t[\"return\"](), Object(u) !== u)) return;\n } finally {\n if (o) throw n;\n }\n }\n return a;\n }\n}\nexport { _iterableToArrayLimit as default };","function _arrayLikeToArray(r, a) {\n (null == a || a > r.length) && (a = r.length);\n for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];\n return n;\n}\nexport { _arrayLikeToArray as default };","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nfunction _unsupportedIterableToArray(r, a) {\n if (r) {\n if (\"string\" == typeof r) return arrayLikeToArray(r, a);\n var t = {}.toString.call(r).slice(8, -1);\n return \"Object\" === t && r.constructor && (t = r.constructor.name), \"Map\" === t || \"Set\" === t ? Array.from(r) : \"Arguments\" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? arrayLikeToArray(r, a) : void 0;\n }\n}\nexport { _unsupportedIterableToArray as default };","function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nexport { _nonIterableRest as default };","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nfunction _slicedToArray(r, e) {\n return arrayWithHoles(r) || iterableToArrayLimit(r, e) || unsupportedIterableToArray(r, e) || nonIterableRest();\n}\nexport { _slicedToArray as default };","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return module.exports = _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports, _typeof(o);\n}\nmodule.exports = _typeof, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction _regeneratorRuntime() {\n \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */\n module.exports = _regeneratorRuntime = function _regeneratorRuntime() {\n return e;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n var t,\n e = {},\n r = Object.prototype,\n n = r.hasOwnProperty,\n o = Object.defineProperty || function (t, e, r) {\n t[e] = r.value;\n },\n i = \"function\" == typeof Symbol ? Symbol : {},\n a = i.iterator || \"@@iterator\",\n c = i.asyncIterator || \"@@asyncIterator\",\n u = i.toStringTag || \"@@toStringTag\";\n function define(t, e, r) {\n return Object.defineProperty(t, e, {\n value: r,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }), t[e];\n }\n try {\n define({}, \"\");\n } catch (t) {\n define = function define(t, e, r) {\n return t[e] = r;\n };\n }\n function wrap(t, e, r, n) {\n var i = e && e.prototype instanceof Generator ? e : Generator,\n a = Object.create(i.prototype),\n c = new Context(n || []);\n return o(a, \"_invoke\", {\n value: makeInvokeMethod(t, r, c)\n }), a;\n }\n function tryCatch(t, e, r) {\n try {\n return {\n type: \"normal\",\n arg: t.call(e, r)\n };\n } catch (t) {\n return {\n type: \"throw\",\n arg: t\n };\n }\n }\n e.wrap = wrap;\n var h = \"suspendedStart\",\n l = \"suspendedYield\",\n f = \"executing\",\n s = \"completed\",\n y = {};\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n var p = {};\n define(p, a, function () {\n return this;\n });\n var d = Object.getPrototypeOf,\n v = d && d(d(values([])));\n v && v !== r && n.call(v, a) && (p = v);\n var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p);\n function defineIteratorMethods(t) {\n [\"next\", \"throw\", \"return\"].forEach(function (e) {\n define(t, e, function (t) {\n return this._invoke(e, t);\n });\n });\n }\n function AsyncIterator(t, e) {\n function invoke(r, o, i, a) {\n var c = tryCatch(t[r], t, o);\n if (\"throw\" !== c.type) {\n var u = c.arg,\n h = u.value;\n return h && \"object\" == _typeof(h) && n.call(h, \"__await\") ? e.resolve(h.__await).then(function (t) {\n invoke(\"next\", t, i, a);\n }, function (t) {\n invoke(\"throw\", t, i, a);\n }) : e.resolve(h).then(function (t) {\n u.value = t, i(u);\n }, function (t) {\n return invoke(\"throw\", t, i, a);\n });\n }\n a(c.arg);\n }\n var r;\n o(this, \"_invoke\", {\n value: function value(t, n) {\n function callInvokeWithMethodAndArg() {\n return new e(function (e, r) {\n invoke(t, n, e, r);\n });\n }\n return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n }\n });\n }\n function makeInvokeMethod(e, r, n) {\n var o = h;\n return function (i, a) {\n if (o === f) throw Error(\"Generator is already running\");\n if (o === s) {\n if (\"throw\" === i) throw a;\n return {\n value: t,\n done: !0\n };\n }\n for (n.method = i, n.arg = a;;) {\n var c = n.delegate;\n if (c) {\n var u = maybeInvokeDelegate(c, n);\n if (u) {\n if (u === y) continue;\n return u;\n }\n }\n if (\"next\" === n.method) n.sent = n._sent = n.arg;else if (\"throw\" === n.method) {\n if (o === h) throw o = s, n.arg;\n n.dispatchException(n.arg);\n } else \"return\" === n.method && n.abrupt(\"return\", n.arg);\n o = f;\n var p = tryCatch(e, r, n);\n if (\"normal\" === p.type) {\n if (o = n.done ? s : l, p.arg === y) continue;\n return {\n value: p.arg,\n done: n.done\n };\n }\n \"throw\" === p.type && (o = s, n.method = \"throw\", n.arg = p.arg);\n }\n };\n }\n function maybeInvokeDelegate(e, r) {\n var n = r.method,\n o = e.iterator[n];\n if (o === t) return r.delegate = null, \"throw\" === n && e.iterator[\"return\"] && (r.method = \"return\", r.arg = t, maybeInvokeDelegate(e, r), \"throw\" === r.method) || \"return\" !== n && (r.method = \"throw\", r.arg = new TypeError(\"The iterator does not provide a '\" + n + \"' method\")), y;\n var i = tryCatch(o, e.iterator, r.arg);\n if (\"throw\" === i.type) return r.method = \"throw\", r.arg = i.arg, r.delegate = null, y;\n var a = i.arg;\n return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, \"return\" !== r.method && (r.method = \"next\", r.arg = t), r.delegate = null, y) : a : (r.method = \"throw\", r.arg = new TypeError(\"iterator result is not an object\"), r.delegate = null, y);\n }\n function pushTryEntry(t) {\n var e = {\n tryLoc: t[0]\n };\n 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e);\n }\n function resetTryEntry(t) {\n var e = t.completion || {};\n e.type = \"normal\", delete e.arg, t.completion = e;\n }\n function Context(t) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }], t.forEach(pushTryEntry, this), this.reset(!0);\n }\n function values(e) {\n if (e || \"\" === e) {\n var r = e[a];\n if (r) return r.call(e);\n if (\"function\" == typeof e.next) return e;\n if (!isNaN(e.length)) {\n var o = -1,\n i = function next() {\n for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next;\n return next.value = t, next.done = !0, next;\n };\n return i.next = i;\n }\n }\n throw new TypeError(_typeof(e) + \" is not iterable\");\n }\n return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, \"constructor\", {\n value: GeneratorFunctionPrototype,\n configurable: !0\n }), o(GeneratorFunctionPrototype, \"constructor\", {\n value: GeneratorFunction,\n configurable: !0\n }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, \"GeneratorFunction\"), e.isGeneratorFunction = function (t) {\n var e = \"function\" == typeof t && t.constructor;\n return !!e && (e === GeneratorFunction || \"GeneratorFunction\" === (e.displayName || e.name));\n }, e.mark = function (t) {\n return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, \"GeneratorFunction\")), t.prototype = Object.create(g), t;\n }, e.awrap = function (t) {\n return {\n __await: t\n };\n }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () {\n return this;\n }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) {\n void 0 === i && (i = Promise);\n var a = new AsyncIterator(wrap(t, r, n, o), i);\n return e.isGeneratorFunction(r) ? a : a.next().then(function (t) {\n return t.done ? t.value : a.next();\n });\n }, defineIteratorMethods(g), define(g, u, \"Generator\"), define(g, a, function () {\n return this;\n }), define(g, \"toString\", function () {\n return \"[object Generator]\";\n }), e.keys = function (t) {\n var e = Object(t),\n r = [];\n for (var n in e) r.push(n);\n return r.reverse(), function next() {\n for (; r.length;) {\n var t = r.pop();\n if (t in e) return next.value = t, next.done = !1, next;\n }\n return next.done = !0, next;\n };\n }, e.values = values, Context.prototype = {\n constructor: Context,\n reset: function reset(e) {\n if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) \"t\" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t);\n },\n stop: function stop() {\n this.done = !0;\n var t = this.tryEntries[0].completion;\n if (\"throw\" === t.type) throw t.arg;\n return this.rval;\n },\n dispatchException: function dispatchException(e) {\n if (this.done) throw e;\n var r = this;\n function handle(n, o) {\n return a.type = \"throw\", a.arg = e, r.next = n, o && (r.method = \"next\", r.arg = t), !!o;\n }\n for (var o = this.tryEntries.length - 1; o >= 0; --o) {\n var i = this.tryEntries[o],\n a = i.completion;\n if (\"root\" === i.tryLoc) return handle(\"end\");\n if (i.tryLoc <= this.prev) {\n var c = n.call(i, \"catchLoc\"),\n u = n.call(i, \"finallyLoc\");\n if (c && u) {\n if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n } else if (c) {\n if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n } else {\n if (!u) throw Error(\"try statement without catch or finally\");\n if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n }\n }\n }\n },\n abrupt: function abrupt(t, e) {\n for (var r = this.tryEntries.length - 1; r >= 0; --r) {\n var o = this.tryEntries[r];\n if (o.tryLoc <= this.prev && n.call(o, \"finallyLoc\") && this.prev < o.finallyLoc) {\n var i = o;\n break;\n }\n }\n i && (\"break\" === t || \"continue\" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null);\n var a = i ? i.completion : {};\n return a.type = t, a.arg = e, i ? (this.method = \"next\", this.next = i.finallyLoc, y) : this.complete(a);\n },\n complete: function complete(t, e) {\n if (\"throw\" === t.type) throw t.arg;\n return \"break\" === t.type || \"continue\" === t.type ? this.next = t.arg : \"return\" === t.type ? (this.rval = this.arg = t.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === t.type && e && (this.next = e), y;\n },\n finish: function finish(t) {\n for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n var r = this.tryEntries[e];\n if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y;\n }\n },\n \"catch\": function _catch(t) {\n for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n var r = this.tryEntries[e];\n if (r.tryLoc === t) {\n var n = r.completion;\n if (\"throw\" === n.type) {\n var o = n.arg;\n resetTryEntry(r);\n }\n return o;\n }\n }\n throw Error(\"illegal catch attempt\");\n },\n delegateYield: function delegateYield(e, r, n) {\n return this.delegate = {\n iterator: values(e),\n resultName: r,\n nextLoc: n\n }, \"next\" === this.method && (this.arg = t), y;\n }\n }, e;\n}\nmodule.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","// TODO(Babel 8): Remove this file.\n\nvar runtime = require(\"../helpers/regeneratorRuntime\")();\nmodule.exports = runtime;\n\n// Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736=\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n if (typeof globalThis === \"object\") {\n globalThis.regeneratorRuntime = runtime;\n } else {\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n }\n}\n","import platform from \"platform\";\nimport { isNotNil } from \"ramda\";\n\n// https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList\nexport const RETRYABLE_ERRORS = [500, 503];\n\nexport const ONE_SECOND_IN_MILLISECONDS = 1000;\nexport const HALF_A_SECOND_IN_MILLISECONDS = 500;\nexport const TWO_HUNDRED_MILLISECONDS = 200;\n\nexport const ONE_MINUTE_IN_MILLISECONDS = 60 * ONE_SECOND_IN_MILLISECONDS;\nexport const ONE_HOUR_IN_MILLISECONDS = 60 * ONE_MINUTE_IN_MILLISECONDS;\n\nexport const ONE_SECOND = 1;\n\nexport const COUNTDOWN_TIME = 3;\n\nexport const UPLOAD_EVENT = {\n onComplete: \"onComplete\",\n onError: \"onError\",\n onProgress: \"onProgress\",\n};\n\nexport const UPLOAD_STATUS = {\n uploading: \"uploading\",\n completed: \"completed\",\n aborting: \"aborting\",\n insufficient_data: \"insufficient_data\",\n error: \"error\",\n};\n\nexport const SCREEN_RECORDER_STATUS = {\n media_aborted: \"media_aborted\",\n permission_denied: \"permission_denied\",\n no_specified_media_found: \"no_specified_media_found\",\n media_in_use: \"media_in_use\",\n invalid_media_constraints: \"invalid_media_constraints\",\n no_chrome_flags_set: \"no_chrome_flags_set\",\n recorder_error: \"recorder_error\",\n idle: \"idle\",\n acquiring_media: \"acquiring_media\",\n media_acquired: \"media_acquired\",\n restarting: \"restarting\",\n recording: \"recording\",\n stopping: \"stopping\",\n stopped: \"stopped\",\n paused: \"paused\",\n};\n\nexport const SCREEN_RECORDER_ERROR = {\n MicPermissionDenied: \"mic_permission_denied\",\n AbortError: \"media_aborted\",\n NotAllowedError: \"permission_denied\",\n NotFoundError: \"no_specified_media_found\",\n NotReadableError: \"media_in_use\",\n OverconstrainedError: \"invalid_media_constraints\",\n TypeError: \"no_chrome_flags_set\",\n None: \"\",\n NoRecorder: \"recorder_error\",\n UnSupportedBrowser: \"unsupported_browser\",\n FailedToStart: \"failed_to_start\",\n InsufficientData: \"insufficient_data\",\n};\n\nexport const SCREEN_RECORDER_EVENT = {\n onStart: \"onStart\",\n onStop: \"onStop\",\n onDiscard: \"onDiscard\",\n onDataAvailable: \"onDataAvailable\",\n onDiscardDuringCountdown: \"onDiscardDuringCountdown\",\n onRestart: \"onRestart\",\n onReUpload: \"onReUpload\",\n onReUploadFromDisk: \"onReUploadFromDisk\",\n onPause: \"onPause\",\n onResume: \"onResume\",\n onCountdownStart: \"onCountdownStart\",\n onCountdown: \"onCountDown\",\n onCountdownEnd: \"onCountdownEnd\",\n};\n\nexport const TOTAL_RETRIES = 15;\nexport const INITIAL_RETRY_DELAY = 4000;\nexport const MAX_RETRY_DELAY = 16000;\n\nexport const DEFAULT_RETRY_CONFIG = {\n retries: TOTAL_RETRIES,\n retryDelay: INITIAL_RETRY_DELAY,\n retryableStatuses: [],\n};\n\n// No need to localize this since it will only be used in the code\n// eslint-disable-next-line @bigbinary/neeto/hard-coded-strings-should-be-localized\nexport const NETWORK_ERROR = \"Network Error\";\nexport const TIMEOUT_ERROR = \"ECONNABORTED\";\n\nexport const HAS_CHROME_NAMESPACE = typeof chrome === \"object\";\n\nexport const IS_EXTENSION = HAS_CHROME_NAMESPACE && isNotNil(chrome.extension);\n\nexport const IS_SAFARI = platform.name === \"Safari\";\n\nexport const IS_SAFARI_EXTENSION = IS_SAFARI && IS_EXTENSION;\n\nexport const PERMISSIONS_HELP_DOC =\n \"https://neetorecordhelp.neetokb.com/p/a-10efcfd7\";\n\nexport const MIME_TYPE = {\n mp4: \"video/mp4\",\n webmH264: \"video/webm;codecs=h264\",\n};\n\nexport const START_RECORDING_SOUND =\n \"https://neeto-record-static-assets.s3.amazonaws.com/recording-start-sound-2.mp3\";\n\nexport const COUNTDOWN_TICK_SOUND =\n \"https://neeto-record-static-assets.s3.us-east-1.amazonaws.com/recording-tick-sound.mp3\";\n\nexport const STOP_RECORDING_DUE_TO_LIMIT_REACHED_SOUND =\n \"https://neeto-record-static-assets.s3.amazonaws.com/recording-end-sound.mp3\";\n\nexport const RECORDING_LIMIT_REACHED_WARNING_SOUND =\n \"https://neeto-record-static-assets.s3.amazonaws.com/recording-warning-sound.mp3\";\n\nexport const RECORDING_TIME_LIMIT_FREE_PLAN = 15 * ONE_MINUTE_IN_MILLISECONDS; // 15 minutes\nexport const RECORDING_TIME_LIMIT_PRO_PLAN = 2 * ONE_HOUR_IN_MILLISECONDS; // 2 hours\n\nexport const MIC_NOT_WORKING_ALERT_TIME = 15;\nexport const MIC_NOT_WORKING_SILENCE_TIMEOUT =\n MIC_NOT_WORKING_ALERT_TIME * 1000;\n","import { existsBy, isNotEmpty } from \"neetocist\";\nimport { isNil } from \"ramda\";\n\nimport { MIME_TYPE } from \"src/constants\";\n\nconst getUnSupportedConstraints = mediaType => {\n const supportedMediaConstraints =\n navigator.mediaDevices.getSupportedConstraints();\n\n return Object.keys(mediaType).filter(\n constraint => !supportedMediaConstraints[constraint]\n );\n};\n\nexport const checkConstraints = (...mediaTypes) => {\n if (isNil(navigator.mediaDevices)) {\n return;\n }\n\n const unSupportedConstraints = mediaTypes\n .filter(mediaType => typeof mediaType === \"object\")\n .map(getUnSupportedConstraints)\n .flat();\n\n if (isNotEmpty(unSupportedConstraints)) {\n logger.error(\n `The constraints ${unSupportedConstraints.join(\n \",\"\n )} doesn't support on this browser.`\n );\n }\n};\n\nexport const isStreamEnded = mediaStream =>\n existsBy({ readyState: \"ended\" }, mediaStream.getTracks());\n\nexport function getChromiumVersion() {\n const userAgent = navigator.userAgent;\n const match = userAgent.match(/Chrom(e|ium)\\/(([0-9][.]?)+)/);\n if (match) {\n return match[2];\n }\n\n return null;\n}\n\nexport function compareChromiumVersions(version1, version2) {\n const v1Parts = version1.split(\".\").map(Number);\n const v2Parts = version2.split(\".\").map(Number);\n\n for (let i = 0; i < Math.max(v1Parts.length, v2Parts.length); i++) {\n const v1Part = v1Parts[i] || 0;\n const v2Part = v2Parts[i] || 0;\n\n if (v1Part > v2Part) return 1;\n\n if (v1Part < v2Part) return -1;\n }\n\n return 0;\n}\n\nexport const getSupportedMimeType = () => MIME_TYPE.webmH264;\n\n// TODO: Uncomment this when mp4 is stable\n// export const getSupportedMimeType = fallback => {\n// const isWindows = platform.os?.family?.includes(\"Windows\");\n\n// if (MediaRecorder.isTypeSupported(MIME_TYPE.mp4) && !isWindows) {\n// if (platform.name === \"Safari\") {\n// return MIME_TYPE.mp4;\n// }\n\n// const chromiumVersion = getChromiumVersion();\n\n// if (isNil(chromiumVersion)) {\n// return MIME_TYPE.webmH264;\n// }\n\n// const isChromiumVersionSupported =\n// compareChromiumVersions(\n// chromiumVersion,\n// MINIMUM_CHROMIUM_VERSION_FOR_MP4\n// ) >= 0;\n\n// if (isChromiumVersionSupported) {\n// return MIME_TYPE.mp4;\n// }\n\n// return MIME_TYPE.webmH264;\n// } else if (MediaRecorder.isTypeSupported(MIME_TYPE.webmH264)) {\n// return MIME_TYPE.webmH264;\n// }\n\n// return fallback;\n// };\n\nexport const getMediaRecorderOptions = () => {\n const mimeType = getSupportedMimeType();\n\n if (!mimeType) return {};\n\n return { mimeType };\n};\n\nexport const addGainNode = (audioStream, gain = 1.5) => {\n const audioContext = new AudioContext();\n const audioStreamSource = audioContext.createMediaStreamSource(audioStream);\n\n const destinationStream = audioContext.createMediaStreamDestination();\n\n const gainNode = audioContext.createGain();\n gainNode.gain.value = gain;\n\n audioStreamSource.connect(gainNode);\n gainNode.connect(destinationStream);\n\n return destinationStream.stream;\n};\n","import {\n IS_EXTENSION,\n MIME_TYPE,\n ONE_MINUTE_IN_MILLISECONDS,\n ONE_SECOND_IN_MILLISECONDS,\n SCREEN_RECORDER_STATUS,\n UPLOAD_STATUS,\n} from \"neetomediarecorder/constants\";\nimport { screenRecorder } from \"neetomediarecorder/core\";\nimport platform from \"platform\";\n\nimport { ONE_HOUR_IN_MILLISECONDS } from \"src/constants\";\nimport { getSupportedMimeType } from \"src/core/screenRecorder/utils\";\n\nconst formatTime = time => Math.floor(time).toString().padStart(2, \"0\");\n\nexport const getTimeString = date => {\n const hours = formatTime(Math.floor(date / ONE_HOUR_IN_MILLISECONDS));\n const minutes = formatTime(\n (date % ONE_HOUR_IN_MILLISECONDS) / ONE_MINUTE_IN_MILLISECONDS\n );\n\n const seconds = formatTime(\n (date % ONE_MINUTE_IN_MILLISECONDS) / ONE_SECOND_IN_MILLISECONDS\n );\n\n if (hours > 0) {\n return `${hours}:${minutes}:${seconds}`;\n }\n\n return `${minutes}:${seconds}`;\n};\n\nexport const downloadRecordingBlob = (blob, name) => {\n const blobUrl = URL.createObjectURL(blob);\n\n const linkElement = document.createElement(\"a\");\n\n linkElement.href = blobUrl;\n linkElement.download = name;\n\n document.body.appendChild(linkElement);\n\n // Dispatch click event on the link\n // This is necessary as link.click() does not work on the latest firefox\n linkElement.dispatchEvent(\n new MouseEvent(\"click\", {\n bubbles: true,\n cancelable: true,\n view: window,\n })\n );\n\n document.body.removeChild(linkElement);\n URL.revokeObjectURL(blobUrl);\n};\n\nexport const hasRecordingDiscarded = ({ recorderStatus, uploadStatus }) =>\n recorderStatus === SCREEN_RECORDER_STATUS.stopped &&\n uploadStatus === UPLOAD_STATUS.aborting;\n\nexport const getRecorderTimeLimitInHumanFormat = timeInMs => {\n const minutes = Math.floor(timeInMs / (1000 * 60));\n const hours = Math.floor(minutes / 60);\n\n if (hours < 1) {\n if (minutes < 1) {\n return `${Math.floor(timeInMs / ONE_SECOND_IN_MILLISECONDS)} seconds`;\n }\n\n return `${minutes} minutes`;\n }\n\n return `${hours} hours`;\n};\n\nexport const getDeviceInfo = async (mimeType = getSupportedMimeType()) => {\n const isCameraEnabled = IS_EXTENSION\n ? (await chrome.storage.local.get(\"isCameraOn\"))?.isCameraOn\n : false;\n\n return {\n os: platform.os?.toString(),\n app: IS_EXTENSION\n ? `chrome extension v${chrome.runtime.getManifest().version}`\n : \"web\",\n browser: `${platform.name} v${platform.version}`,\n isCameraEnabled,\n isMicEnabled: !!screenRecorder.audioConfiguration,\n displaySurface: screenRecorder.displaySurface,\n mimeType,\n };\n};\n\nexport const isMp4Supported = (mimeType = getSupportedMimeType()) =>\n mimeType.includes(MIME_TYPE.mp4);\n","import axios from \"axios\";\n\nimport { isMp4Supported } from \"src/components/MediaRecorder/utils\";\n\nconst baseUrl = \"/api/v1/recordings\";\n\nconst create = payload =>\n axios.post(baseUrl, {\n recording: {\n ...payload,\n isMp4: isMp4Supported(payload.deviceInfo.mimeType),\n },\n });\n\nconst recordingsApi = { create };\n\nexport default recordingsApi;\n","import { useMutation } from \"@tanstack/react-query\";\n\nimport recordingsApi from \"src/apis/recordings\";\n\nexport const useCreateRecording = options =>\n useMutation({ mutationFn: recordingsApi.create, ...options });\n","import withT from \"neetocommons/react-utils/withT\";\nimport { Typography, Spinner } from \"neetoui\";\n\nconst AbortUpload = withT(({ t }) => (\n <div className=\"flex h-screen w-full flex-col items-center justify-center\">\n <div className=\"flex h-full w-full flex-col items-center justify-start py-10 xl:py-14 2xl:py-20\">\n <div className=\"w-full space-y-2 text-center\">\n <Typography\n className=\"select-none\"\n data-cy=\"recorder-discarding-recording-message\"\n style=\"h2\"\n >\n {t(\"neetoMediaRecorder.record.discardingVideo\")}\n <Spinner className=\"ml-3\" />\n </Typography>\n <Typography\n className=\"select-none\"\n data-cy=\"recorder-do-not-leave-page-message\"\n >\n {t(\"neetoMediaRecorder.record.doNotLeaveThePage\")}\n </Typography>\n </div>\n </div>\n </div>\n));\n\nexport default AbortUpload;\n","function _objectWithoutPropertiesLoose(r, e) {\n if (null == r) return {};\n var t = {};\n for (var n in r) if ({}.hasOwnProperty.call(r, n)) {\n if (-1 !== e.indexOf(n)) continue;\n t[n] = r[n];\n }\n return t;\n}\nexport { _objectWithoutPropertiesLoose as default };","import objectWithoutPropertiesLoose from \"./objectWithoutPropertiesLoose.js\";\nfunction _objectWithoutProperties(e, t) {\n if (null == e) return {};\n var o,\n r,\n i = objectWithoutPropertiesLoose(e, t);\n if (Object.getOwnPropertySymbols) {\n var n = Object.getOwnPropertySymbols(e);\n for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]);\n }\n return i;\n}\nexport { _objectWithoutProperties as default };","const PlayIcon = ({ size = 24, ...other }) => (\n <svg\n height={size}\n viewBox=\"0 0 20 20\"\n width={size}\n xmlns=\"http://www.w3.org/2000/svg\"\n {...other}\n >\n <path\n d=\"M4 18a1 1 0 01-1-1V3a1 1 0 011.5-.86l12 7a1 1 0 010 1.72l-12 7A1 1 0 014 18zM5 4.74v10.52L14 10z\"\n fill=\"currentColor\"\n />\n </svg>\n);\n\nconst StopIcon = ({ size = 24, ...other }) => (\n <svg\n height={size}\n viewBox=\"0 0 64 64\"\n width={size}\n xmlns=\"http://www.w3.org/2000/svg\"\n {...other}\n >\n <path\n d=\"M10.667 16A5.333 5.333 0 0116 10.667h32A5.333 5.333 0 0153.333 16v32A5.333 5.333 0 0148 53.333H16A5.333 5.333 0 0110.667 48V16z\"\n fill=\"rgb(var(--neeto-ui-error-500))\"\n />\n </svg>\n);\n\nconst RestartIcon = ({ size = 24, ...other }) => (\n <svg\n height={size}\n viewBox=\"0 0 64 64\"\n width={size}\n xmlns=\"http://www.w3.org/2000/svg\"\n {...other}\n >\n <path\n clipRule=\"evenodd\"\n d=\"M21.333 21.333H10.667A2.667 2.667 0 018 18.667V8a2.667 2.667 0 015.333 0v4.956A26.58 26.58 0 0132 5.333c14.727 0 26.666 11.94 26.666 26.667 0 14.728-11.939 26.667-26.666 26.667-13.83 0-25.2-10.527-26.536-24.004C5.32 33.197 6.527 32 8 32c1.472 0 2.649 1.2 2.83 2.661C12.14 45.188 21.12 53.334 32 53.334c11.782 0 21.333-9.55 21.333-21.333 0-11.782-9.551-21.333-21.333-21.333-5.41 0-10.35 2.014-14.111 5.333h3.444a2.667 2.667 0 010 5.333z\"\n fill=\"currentColor\"\n fillRule=\"evenodd\"\n />\n </svg>\n);\n\nexport { PlayIcon, StopIcon, RestartIcon };\n","import { screenRecorder } from \"neetomediarecorder/core\";\n\nconst useRecorderStatus = () => {\n const { useRecorderStore } = screenRecorder;\n\n const { status } = useRecorderStore.pick();\n const isStatus = (...statuses) => statuses.includes(status);\n\n return { isStatus, status };\n};\n\nexport default useRecorderStatus;\n","import classNames from \"classnames\";\nimport { isNotEmpty } from \"neetocist\";\nimport { Computer, Pause, Unlock, Delete } from \"neetoicons\";\nimport {\n SCREEN_RECORDER_ERROR,\n SCREEN_RECORDER_STATUS,\n IS_SAFARI_EXTENSION,\n} from \"neetomediarecorder/constants\";\nimport { screenRecorder } from \"neetomediarecorder/core\";\nimport { Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { PlayIcon, StopIcon, RestartIcon } from \"components/commons/Icons\";\n\nimport useRecorderStatus from \"./hooks/useRecorderStatus\";\n\nconst Controls = ({\n className = \"\",\n setIsRestartAlertOpen,\n setIsDiscardAlertOpen,\n onDiscard,\n}) => {\n const { t } = useTranslation();\n\n const {\n startRecording,\n pauseRecording,\n stopRecording,\n resumeRecording,\n useRecorderStore,\n setAudioConfiguration,\n } = screenRecorder;\n\n const { error } = useRecorderStore.pick();\n const { isStatus } = useRecorderStatus();\n\n const hasRecordingStarted = isStatus(\n SCREEN_RECORDER_STATUS.recording,\n SCREEN_RECORDER_STATUS.paused\n );\n\n const shouldShowSelectScreenButton =\n error === SCREEN_RECORDER_ERROR.NotAllowedError ||\n (IS_SAFARI_EXTENSION && isStatus(SCREEN_RECORDER_STATUS.idle));\n\n const shouldShowGrantMicPermissionButton =\n error === SCREEN_RECORDER_ERROR.MicPermissionDenied;\n\n return (\n <div\n className={classNames(\"flex flex-row items-center gap-3 p-2\", {\n \"neeto-ui-rounded-lg neeto-ui-border-gray-200 border-2\":\n hasRecordingStarted,\n [className]: isNotEmpty(classNames),\n })}\n >\n {shouldShowSelectScreenButton && (\n <div className=\"mt-4 flex gap-4\">\n <Button\n className=\"flex-shrink-0\"\n data-cy=\"media-recorder-record-button\"\n icon={() => <Computer size={28} />}\n label={t(\"neetoMediaRecorder.record.selectScreen\")}\n loading={isStatus(SCREEN_RECORDER_STATUS.acquiring_media)}\n size=\"large\"\n onClick={startRecording}\n />\n <Button\n className=\"flex-shrink-0\"\n data-cy=\"media-recorder-discard-button\"\n icon={() => <Delete size={28} />}\n label={t(\"neetoMediaRecorder.record.discard\")}\n size=\"large\"\n style=\"danger\"\n onClick={onDiscard}\n />\n </div>\n )}\n {shouldShowGrantMicPermissionButton && (\n <div className=\"mt-4 flex gap-4\">\n <Button\n className=\"flex-shrink-0\"\n data-cy=\"media-recorder-no-audio-button\"\n label={t(\"neetoMediaRecorder.record.iDontNeedAudio\")}\n size=\"large\"\n style=\"danger\"\n onClick={() => {\n setAudioConfiguration(false);\n useRecorderStore.setState({ error: \"\" });\n }}\n />\n <Button\n className=\"flex-shrink-0\"\n data-cy=\"media-recorder-grant-microphone-permission-button\"\n icon={Unlock}\n iconSize={28}\n label={t(\"neetoMediaRecorder.record.grantMicPermission\")}\n size=\"large\"\n onClick={startRecording}\n />\n </div>\n )}\n {hasRecordingStarted && (\n <div className=\"flex items-center gap-3\">\n <Button\n className=\"nrec-done-button flex-shrink-0\"\n data-cy=\"media-recorder-stop-button\"\n icon={() => <StopIcon size={28} />}\n label={t(\"neetoMediaRecorder.record.done\")}\n size=\"large\"\n style=\"danger-text\"\n onClick={stopRecording}\n />\n <div className=\"neeto-ui-bg-gray-200 h-10 w-0.5\" />\n </div>\n )}\n {isStatus(SCREEN_RECORDER_STATUS.recording) && (\n <Button\n className=\"flex-shrink-0\"\n data-cy=\"media-recorder-pause-button\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMediaRecorder.record.pause\"),\n position: \"top\",\n }}\n onClick={pauseRecording}\n >\n <Pause className=\"nr-control-button__icon--neeto\" size={28} />\n </Button>\n )}\n {isStatus(SCREEN_RECORDER_STATUS.paused) && (\n <Button\n className=\"flex-shrink-0\"\n data-cy=\"media-recorder-play-button\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMediaRecorder.record.resume\"),\n position: \"top\",\n }}\n onClick={resumeRecording}\n >\n <PlayIcon size={28} />\n </Button>\n )}\n {hasRecordingStarted && (\n <div className=\"flex items-center gap-3\">\n <Button\n className=\"flex-shrink-0\"\n data-cy=\"media-recorder-restart-button\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMediaRecorder.record.restart\"),\n position: \"top\",\n }}\n onClick={() => setIsRestartAlertOpen(true)}\n >\n <RestartIcon size={28} />\n </Button>\n <Button\n className=\"flex-shrink-0\"\n data-cy=\"media-recorder-discard-button\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMediaRecorder.record.discard\"),\n position: \"top\",\n }}\n onClick={() => setIsDiscardAlertOpen(true)}\n >\n <Delete className=\"nr-control-button__icon--neeto\" size={28} />\n </Button>\n </div>\n )}\n </div>\n );\n};\n\nexport default Controls;\n","import { useState, useEffect, useRef, useCallback } from \"react\";\n\nimport { noop } from \"neetocist\";\nimport {\n SCREEN_RECORDER_EVENT,\n MIC_NOT_WORKING_SILENCE_TIMEOUT,\n} from \"neetomediarecorder/constants\";\nimport { screenRecorder } from \"neetomediarecorder/core\";\n\nconst getAnalyser = () => {\n const stream = screenRecorder.getAudioStream?.();\n if (!stream) return null;\n\n const ctx = new (window.AudioContext || window.webkitAudioContext)();\n const source = ctx.createMediaStreamSource(stream);\n const analyser = ctx.createAnalyser();\n analyser.fftSize = 2048;\n source.connect(analyser);\n\n const data = new Uint8Array(analyser.fftSize);\n\n return { ctx, source, analyser, data };\n};\n\nconst hasChrome =\n typeof chrome !== \"undefined\" && chrome.runtime && chrome.runtime.onMessage;\n\nconst useAudioIsCapturing = ({ isMicOn }) => {\n const [hasAudio, setHasAudio] = useState(true);\n const [disable, setDisable] = useState(false);\n const [timerStarted, setTimerStarted] = useState(false);\n\n const timerRef = useRef(null);\n const remainingRef = useRef(MIC_NOT_WORKING_SILENCE_TIMEOUT);\n const startedAtRef = useRef(null);\n\n const clearTimer = () => {\n if (timerRef.current) clearTimeout(timerRef.current);\n timerRef.current = null;\n };\n\n const armTimer = () => {\n if (timerRef.current || !timerStarted) return;\n logger.info(\"useAudioIsCapturing new timer\");\n startedAtRef.current = Date.now();\n timerRef.current = setTimeout(\n () => setHasAudio(false),\n remainingRef.current\n );\n };\n\n const pauseTimer = () => {\n if (!timerRef.current) return;\n const elapsed = Date.now() - startedAtRef.current;\n remainingRef.current = Math.max(0, remainingRef.current - elapsed);\n clearTimer();\n };\n\n const resumeTimer = () => {\n if (timerRef.current || !timerStarted || disable) return;\n logger.info(\"useAudioIsCapturing resumeTimer\");\n startedAtRef.current = Date.now();\n timerRef.current = setTimeout(\n () => setHasAudio(false),\n remainingRef.current\n );\n };\n\n const reset = useCallback(() => {\n logger.info(\"useAudioIsCapturing reset\");\n clearTimer();\n remainingRef.current = MIC_NOT_WORKING_SILENCE_TIMEOUT;\n setTimerStarted(false);\n setHasAudio(true);\n }, []);\n\n // Listen for Chrome extension messages\n useEffect(() => {\n const handleMessage = message => {\n if (!(message.type === \"IGNORE_AUDIO_NOT_CAPTURING\")) return;\n logger.info(\"useAudioIsCapturing -> IGNORE_AUDIO_NOT_CAPTURING received\");\n setDisable(true);\n };\n\n // Check if we're in a Chrome extension context\n if (hasChrome) {\n chrome.runtime.onMessage.addListener(handleMessage);\n }\n\n return () => {\n if (hasChrome) {\n chrome?.runtime?.onMessage?.removeListener(handleMessage);\n }\n };\n }, []);\n\n useEffect(() => {\n if (!isMicOn || !timerStarted || disable) return noop;\n\n let analyserObj = null;\n let rafId;\n\n const loop = () => {\n if (!analyserObj) analyserObj = getAnalyser();\n // if no stream yet or analyser failed, treat as silence\n const isSilent = !analyserObj\n ? true\n : (() => {\n analyserObj.analyser.getByteTimeDomainData(analyserObj.data);\n\n return analyserObj.data.every(v => v === 128); // absolute silence\n })();\n\n if (isSilent) {\n armTimer();\n } else {\n clearTimer();\n remainingRef.current = MIC_NOT_WORKING_SILENCE_TIMEOUT;\n if (!hasAudio) setHasAudio(true);\n }\n\n rafId = requestAnimationFrame(loop);\n };\n\n loop();\n\n return () => {\n cancelAnimationFrame(rafId);\n clearTimer();\n if (analyserObj) {\n analyserObj.source.disconnect();\n analyserObj.ctx.close();\n }\n };\n }, [timerStarted, hasAudio, isMicOn, disable]);\n\n useEffect(() => {\n if (!isMicOn) return noop;\n\n const callbacks = {\n [SCREEN_RECORDER_EVENT.onStart]: () => {\n reset();\n setTimerStarted(true);\n armTimer();\n },\n [SCREEN_RECORDER_EVENT.onRestart]: () => {\n reset();\n setTimerStarted(true);\n armTimer();\n },\n [SCREEN_RECORDER_EVENT.onResume]: () => {\n setTimerStarted(true);\n resumeTimer();\n },\n [SCREEN_RECORDER_EVENT.onPause]: () => {\n pauseTimer();\n },\n [SCREEN_RECORDER_EVENT.onStop]: () => {\n clearTimer();\n reset();\n },\n \"disable-mic-not-working-warning\": () => {\n logger.info(\"useAudioIsCapturing -> disable-mic-not-working-warning\");\n setDisable(true);\n setTimeout(() => {\n clearTimer();\n reset();\n }, 500);\n },\n };\n // start straight a way.\n callbacks[SCREEN_RECORDER_EVENT.onStart]();\n\n Object.entries(callbacks).forEach(([ev, fn]) =>\n screenRecorder.addCallback(ev, fn)\n );\n\n return () => {\n Object.entries(callbacks).forEach(([ev, fn]) =>\n screenRecorder.removeCallback(ev, fn)\n );\n };\n }, [isMicOn, reset]);\n\n return { hasAudio, reset };\n};\n\nexport default useAudioIsCapturing;\n","import { useEffect } from \"react\";\n\nimport { noop } from \"neetocist\";\nimport {\n SCREEN_RECORDER_ERROR,\n SCREEN_RECORDER_STATUS,\n IS_SAFARI_EXTENSION,\n} from \"neetomediarecorder/constants\";\nimport { screenRecorder } from \"neetomediarecorder/core\";\n\nimport useRecorderStatus from \"./useRecorderStatus\";\n\nconst useHandleErrors = ({ error, recorderStatus }) => {\n const { isStatus: isRecorderStatus } = useRecorderStatus();\n\n useEffect(() => {\n if (error === SCREEN_RECORDER_ERROR.UnSupportedBrowser) return noop;\n\n if (error === SCREEN_RECORDER_ERROR.FailedToStart) return noop;\n\n if (\n !isRecorderStatus(SCREEN_RECORDER_STATUS.idle) ||\n error === SCREEN_RECORDER_ERROR.NotAllowedError ||\n error === SCREEN_RECORDER_ERROR.MicPermissionDenied ||\n IS_SAFARI_EXTENSION\n ) {\n if (error !== SCREEN_RECORDER_ERROR.MicPermissionDenied) return noop;\n\n let cleanupFunction = noop;\n\n window.navigator.permissions\n .query({ name: \"microphone\" })\n // eslint-disable-next-line promise/prefer-await-to-then\n .then(micPermission => {\n const handleChange = () => {\n if (micPermission.state === \"granted\") {\n screenRecorder.startRecording();\n }\n };\n micPermission.addEventListener(\"change\", handleChange);\n\n cleanupFunction = () =>\n micPermission.removeEventListener(\"change\", handleChange);\n });\n\n return () => {\n cleanupFunction();\n };\n }\n screenRecorder.startRecording();\n\n return noop;\n }, [recorderStatus, error]);\n};\n\nexport default useHandleErrors;\n","import { screenRecorder } from \"neetomediarecorder/core\";\nimport { Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { getTimeString } from \"./utils\";\n\nconst Timer = () => {\n const { t } = useTranslation();\n const { useRecorderStore } = screenRecorder;\n const { elapsedTime } = useRecorderStore.pick();\n\n return (\n <div\n className=\"mb-4 flex flex-col items-center justify-center\"\n data-cy=\"recorder-timer-wrapper\"\n >\n <Typography\n className=\"neeto-ui-text-4xl mb-3 flex justify-center\"\n data-cy=\"recorder-timer-elapsed-time\"\n weight=\"semibold\"\n >\n {getTimeString(elapsedTime)}\n </Typography>\n <Typography\n className=\"mb-2\"\n data-cy=\"recorder-recording-in-progress-message\"\n style=\"h3\"\n >\n {t(\"neetoMediaRecorder.record.inProgress\")}\n </Typography>\n <Typography data-cy=\"recorder-do-not-leave-page-message\" style=\"body2\">\n {t(\"neetoMediaRecorder.record.doNotLeaveThePage\")}\n </Typography>\n </div>\n );\n};\n\nexport default Timer;\n","import withT from \"neetocommons/react-utils/withT\";\nimport { Callout } from \"neetoui\";\n\nconst UnSupportedBrowser = withT(({ t }) => (\n <div className=\"flex h-screen w-full items-center justify-center\">\n <Callout\n className=\"p-5\"\n data-cy=\"recorder-unsupported-browser-callout\"\n style=\"danger\"\n >\n {t(\"neetoMediaRecorder.unsupportedBrowser\")}\n </Callout>\n </div>\n));\n\nexport default UnSupportedBrowser;\n","export const sleep = delay =>\n new Promise(resolve => setTimeout(resolve, delay));\n\nexport const generatePublicUrl = (\n recordingId,\n baseURL = window.location.origin\n) => `${baseURL}/watch/${recordingId}`;\n","import { IS_EXTENSION } from \"neetomediarecorder/constants\";\nimport { Button, Callout, Typography } from \"neetoui\";\nimport { Trans } from \"react-i18next\";\n\nconst UseDesktopAppCallout = () => (\n <Callout className=\"mb-3\" style=\"info\">\n <Typography component=\"span\" style=\"h4\">\n <Trans\n i18nKey=\"neetoMediaRecorder.useDesktopAppCallOut\"\n values={{ appName: IS_EXTENSION ? \"chrome extension\" : \"web\" }}\n components={{\n Download: (\n <Button\n href=\"https://neeto.com/neetorecord/download\"\n size=\"large\"\n style=\"link\"\n />\n ),\n }}\n />\n </Typography>\n </Callout>\n);\n\nexport default UseDesktopAppCallout;\n","import { useEffect, useState } from \"react\";\n\nimport { copyToClipboard } from \"neetocommons/utils/general\";\nimport { Close, Download, Copy, Refresh } from \"neetoicons\";\nimport { screenRecorder } from \"neetomediarecorder/core\";\nimport CopyToClipboardButton from \"neetomolecules/CopyToClipboardButton\";\nimport { Alert, Button, Typography, ProgressBar } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { IS_EXTENSION, UPLOAD_STATUS } from \"src/constants\";\nimport { generatePublicUrl } from \"utils\";\n\nimport UseDesktopAppCallout from \"./UseDesktopAppCallout\";\nimport { downloadRecordingBlob, isMp4Supported } from \"./utils\";\n\nconst UploadingInProgress = ({\n recording,\n uploadProgress,\n uploadStatus,\n onDiscard,\n onRetryUpload,\n isRetryUpload,\n}) => {\n const [baseURL, setBaseURL] = useState(\"\");\n const [isDiscardAlertOpen, setIsDiscardAlertOpen] = useState(false);\n\n const { t } = useTranslation();\n\n useEffect(() => {\n const fetchBaseURL = async () => {\n if (!IS_EXTENSION) {\n setBaseURL(window.location.origin);\n\n return;\n }\n\n // eslint-disable-next-line no-undef\n const { baseURL } = await chrome.storage.local.get(\"baseURL\");\n setBaseURL(baseURL);\n };\n\n fetchBaseURL();\n }, []);\n\n useEffect(() => {\n if (!window.document.hasFocus() || !recording.id || isEmpty(baseURL)) {\n return;\n }\n\n copyToClipboard(generatePublicUrl(recording.id, baseURL), {\n message: t(\"neetoMediaRecorder.record.copyToClipboardToastrMessage\"),\n });\n }, [recording.id, baseURL]);\n\n const handleRecordingBlobDownload = () => {\n downloadRecordingBlob(\n screenRecorder.getWebmMediaBlob(),\n recording.title ?? \"NeetoRecord-recording\"\n );\n };\n\n return (\n <div className=\"flex h-screen w-full flex-col items-center justify-center\">\n <div className=\"flex h-full w-full flex-col items-center justify-start py-14 lg:py-20 xl:py-28 2xl:py-36\">\n <UseDesktopAppCallout />\n <div className=\"w-full pb-6 text-center\">\n <Typography\n className=\"select-none pb-6\"\n data-cy=\"please-dont-close-this-tab\"\n style=\"h1\"\n >\n {t(\"neetoMediaRecorder.record.pleaseDontCloseThisTab\")}\n </Typography>\n <Typography\n className=\"select-none pb-3\"\n data-cy=\"recorder-uploading-recording-message\"\n style=\"h2\"\n weight=\"normal\"\n >\n {t(\"neetoMediaRecorder.record.uploadingRecording\")}\n </Typography>\n <div className=\"nrec-media-upload-progress pb-3\">\n {uploadStatus === UPLOAD_STATUS.error ? (\n <div className=\"nrec-media-upload-error\">\n {t(\"neetoMediaRecorder.common.uploadError\")}\n </div>\n ) : (\n <ProgressBar progressPercentage={uploadProgress} />\n )}\n </div>\n <Typography\n className=\"select-none\"\n data-cy=\"recorder-do-not-leave-page-message\"\n style=\"body2\"\n >\n {t(\"neetoMediaRecorder.record.copyLinkDescription\")}\n </Typography>\n </div>\n <div className=\"flex flex-wrap items-center justify-center gap-3\">\n <CopyToClipboardButton\n data-cy=\"recorder-copy-link-button\"\n icon={Copy}\n label={t(\"neetoMediaRecorder.record.copyToClipboard\")}\n style=\"tertiary\"\n value={generatePublicUrl(recording.id, baseURL)}\n />\n <Button\n data-cy=\"recorder-download-webm-button\"\n icon={Download}\n style=\"tertiary\"\n label={\n isMp4Supported()\n ? t(\"neetoMediaRecorder.record.downloadMp4\")\n : t(\"neetoMediaRecorder.record.downloadWebm\")\n }\n onClick={handleRecordingBlobDownload}\n />\n <Button\n data-cy=\"recorder-retry-upload-button\"\n disabled={isRetryUpload}\n icon={Refresh}\n label={t(\"neetoMediaRecorder.record.retry\")}\n style=\"tertiary\"\n onClick={onRetryUpload}\n />\n <Button\n data-cy=\"recorder-discard-recording-button\"\n icon={Close}\n label={t(\"neetoMediaRecorder.record.discardRecording\")}\n style=\"tertiary\"\n onClick={() => setIsDiscardAlertOpen(true)}\n />\n </div>\n </div>\n <Alert\n isOpen={isDiscardAlertOpen}\n message={t(\"neetoMediaRecorder.record.discardConfirmation.message\")}\n submitButtonLabel={t(\"neetoMediaRecorder.record.discard\")}\n title={t(\"neetoMediaRecorder.record.discardConfirmation.title\")}\n onClose={() => setIsDiscardAlertOpen(false)}\n onSubmit={onDiscard}\n />\n </div>\n );\n};\n\nexport default UploadingInProgress;\n","const AllowMicAccess = () => (\n <svg\n fill=\"none\"\n height=\"255\"\n viewBox=\"0 0 400 255\"\n width=\"400\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlnsXlink=\"http://www.w3.org/1999/xlink\"\n >\n <g clipPath=\"url(#clip0_5_55)\">\n <rect fill=\"#FBFBFB\" height=\"253.968\" rx=\"15.873\" width=\"400\" y=\"0.286\" />\n <g clipPath=\"url(#clip1_5_55)\">\n <mask fill=\"#fff\" id=\"path-2-inside-1_5_55\">\n <path d=\"M0 28.857h346.032c14.026 0 25.397 11.37 25.397 25.397v200H0V28.857z\" />\n </mask>\n <path\n d=\"M0 28.857h346.032c14.026 0 25.397 11.37 25.397 25.397v200H0V28.857z\"\n fill=\"#FBFBFB\"\n />\n <path d=\"M0 28.857H371.429V92.34899999999999H0z\" fill=\"#DFE1E6\" />\n <path\n d=\"M0 0H371.429V115.873H0z\"\n fill=\"#F1F3F4\"\n transform=\"translate(0 92.35)\"\n />\n <path\n d=\"M0 108.222h202.381c23.231 0 42.063 18.833 42.063 42.064s-18.832 42.063-42.063 42.063H0v-84.127z\"\n fill=\"#fff\"\n />\n <path\n d=\"M180.714 157.151l5-3.016 5 3.055-1.309-5.714 4.405-3.809-5.794-.516-2.302-5.397-2.301 5.357-5.794.516 4.405 3.849-1.31 5.675zm-4.801 6.627l2.579-11.151-8.651-7.5 11.429-.992 4.444-10.516 4.445 10.516 11.428.992-8.65 7.5 2.579 11.151-9.802-5.913-9.801 5.913z\"\n fill=\"#626365\"\n />\n <path\n d=\"M279.365 124.095H330.159V174.889H279.365z\"\n fill=\"url(#pattern0_5_55)\"\n opacity=\"0.5\"\n />\n <path\n d=\"M122.047 115.246L122.047 82.963\"\n stroke=\"#4558F9\"\n strokeWidth=\"1.575\"\n />\n <circle cx=\"122.047\" cy=\"121.546\" fill=\"#4558F9\" r=\"6.299\" />\n <circle\n cx=\"122.047\"\n cy=\"121.546\"\n r=\"7.48\"\n stroke=\"#4558F9\"\n strokeOpacity=\"0.27\"\n strokeWidth=\"2.362\"\n />\n <path\n d=\"M44.403 67.892h-2.2l4.945-13.744h2.396l4.946 13.744h-2.202l-3.885-11.247h-.108l-3.892 11.247zm.37-5.382h7.14v1.745h-7.14V62.51zm13.547-8.362v13.744h-2.007V54.148h2.007zm4.706 0v13.744h-2.007V54.148h2.007zM70.067 68.1c-.966 0-1.81-.221-2.53-.664-.72-.443-1.28-1.063-1.678-1.86-.398-.796-.597-1.726-.597-2.79 0-1.07.2-2.005.597-2.806.398-.8.958-1.423 1.678-1.866.72-.442 1.564-.664 2.53-.664.966 0 1.81.221 2.53.664.72.443 1.28 1.065 1.678 1.866.398.8.597 1.736.597 2.805 0 1.065-.2 1.995-.597 2.792-.399.796-.958 1.416-1.678 1.859-.72.443-1.564.664-2.53.664zm.007-1.684c.626 0 1.145-.166 1.557-.497.411-.331.715-.772.912-1.322.202-.55.302-1.156.302-1.819 0-.657-.1-1.261-.302-1.811-.197-.555-.5-1-.912-1.336-.412-.336-.93-.503-1.557-.503-.631 0-1.154.167-1.57.503-.412.336-.719.78-.92 1.336a5.346 5.346 0 00-.295 1.811c0 .663.098 1.269.295 1.819.201.55.508.991.92 1.322.415.331.939.497 1.57.497zm8.959 1.476l-3.034-10.308h2.074l2.02 7.57h.1l2.027-7.57h2.074l2.013 7.536h.1l2.007-7.536h2.074l-3.027 10.308h-2.046L83.32 60.45h-.154l-2.094 7.442h-2.04zm21.36.228c-.653 0-1.244-.12-1.772-.362a2.985 2.985 0 01-1.254-1.067c-.305-.466-.457-1.036-.457-1.712 0-.581.112-1.06.336-1.436.224-.375.526-.673.906-.892a4.73 4.73 0 011.275-.497c.47-.112.948-.197 1.436-.255l1.503-.174c.385-.05.665-.128.839-.235.174-.108.262-.282.262-.523v-.047c0-.587-.166-1.04-.497-1.363-.326-.322-.814-.483-1.463-.483-.675 0-1.208.15-1.597.45-.385.295-.651.624-.799.986l-1.885-.43c.223-.626.55-1.131.98-1.516.433-.39.932-.671 1.496-.846a5.843 5.843 0 011.778-.268c.412 0 .848.05 1.309.148.465.094.899.268 1.302.523.407.255.74.62 1 1.094.259.47.389 1.08.389 1.832v6.845h-1.96v-1.41h-.08c-.13.26-.324.515-.584.766a3.1 3.1 0 01-1 .624c-.407.165-.895.248-1.463.248zm.436-1.61c.555 0 1.029-.11 1.423-.33.398-.219.7-.505.906-.858.21-.358.315-.74.315-1.148v-1.329c-.071.072-.21.14-.416.202-.201.058-.431.11-.691.154-.259.04-.512.078-.758.114a90.22 90.22 0 00-.618.08c-.389.05-.744.133-1.067.25a1.832 1.832 0 00-.765.502c-.188.215-.282.501-.282.86 0 .496.184.872.55 1.127.368.25.835.376 1.403.376zm11.665 1.59c-.997 0-1.856-.226-2.577-.678a4.486 4.486 0 01-1.65-1.885c-.385-.801-.578-1.718-.578-2.752 0-1.047.197-1.97.591-2.771.394-.806.948-1.434 1.664-1.886.716-.452 1.559-.678 2.53-.678.783 0 1.481.145 2.094.436a3.756 3.756 0 011.483 1.208c.38.52.606 1.125.678 1.819h-1.953a2.335 2.335 0 00-.738-1.248c-.38-.35-.89-.524-1.53-.524-.559 0-1.049.148-1.47.443-.416.29-.74.707-.973 1.248-.233.537-.349 1.172-.349 1.906 0 .752.114 1.4.342 1.946.229.546.551.969.967 1.269.42.3.915.45 1.483.45.38 0 .725-.07 1.033-.209.313-.143.575-.347.785-.61.215-.264.365-.582.45-.953h1.953a3.802 3.802 0 01-.651 1.785 3.745 3.745 0 01-1.456 1.234c-.604.3-1.313.45-2.128.45zm10.723 0c-.998 0-1.857-.226-2.577-.678a4.489 4.489 0 01-1.651-1.885c-.385-.801-.577-1.718-.577-2.752 0-1.047.197-1.97.59-2.771.394-.806.949-1.434 1.665-1.886.715-.452 1.559-.678 2.529-.678.783 0 1.481.145 2.094.436a3.75 3.75 0 011.483 1.208c.381.52.607 1.125.678 1.819h-1.953a2.335 2.335 0 00-.738-1.248c-.38-.35-.89-.524-1.53-.524-.559 0-1.049.148-1.47.443-.416.29-.74.707-.973 1.248-.232.537-.349 1.172-.349 1.906 0 .752.114 1.4.343 1.946.228.546.55.969.966 1.269.42.3.915.45 1.483.45.38 0 .725-.07 1.034-.209.313-.143.574-.347.785-.61.214-.264.364-.582.449-.953h1.953a3.781 3.781 0 01-.651 1.785 3.745 3.745 0 01-1.456 1.234c-.604.3-1.313.45-2.127.45zm10.822 0c-1.015 0-1.89-.217-2.623-.65a4.417 4.417 0 01-1.692-1.846c-.393-.797-.59-1.73-.59-2.799 0-1.056.197-1.986.59-2.791.399-.806.953-1.434 1.665-1.886.716-.452 1.552-.678 2.51-.678.581 0 1.145.096 1.691.289a4.1 4.1 0 011.469.906c.434.411.777.946 1.027 1.603.251.654.376 1.448.376 2.383v.711h-8.194V61.84h6.228c0-.528-.108-.996-.322-1.403a2.44 2.44 0 00-.906-.973c-.385-.237-.837-.355-1.356-.355-.564 0-1.056.138-1.476.416-.416.273-.739.63-.967 1.073a3.108 3.108 0 00-.335 1.43V63.2c0 .69.12 1.275.362 1.758.246.484.588.853 1.027 1.108.438.25.951.376 1.537.376.38 0 .727-.054 1.04-.162.313-.111.584-.277.812-.496.228-.22.402-.49.523-.812l1.899.342a3.444 3.444 0 01-.818 1.47c-.39.416-.879.74-1.47.973-.586.228-1.255.342-2.007.342zm14.373-8l-1.818.323a2.145 2.145 0 00-.363-.665 1.793 1.793 0 00-.657-.516c-.278-.134-.624-.201-1.041-.201-.568 0-1.042.127-1.422.382-.38.25-.571.575-.571.973 0 .344.128.622.383.832.255.21.667.383 1.235.517l1.637.376c.949.219 1.655.557 2.121 1.013.465.456.698 1.05.698 1.778 0 .618-.179 1.168-.537 1.651-.354.479-.848.855-1.483 1.128-.631.273-1.363.409-2.195.409-1.154 0-2.096-.246-2.825-.738-.729-.497-1.177-1.201-1.342-2.114l1.939-.295c.121.505.369.888.745 1.147.376.255.866.383 1.47.383.658 0 1.183-.137 1.577-.41.394-.277.59-.615.59-1.013 0-.322-.12-.593-.362-.812-.237-.22-.602-.385-1.094-.497l-1.745-.382c-.961-.22-1.673-.568-2.134-1.047-.456-.479-.684-1.085-.684-1.819 0-.608.17-1.14.51-1.597.34-.456.81-.812 1.409-1.067.6-.26 1.286-.389 2.06-.389 1.114 0 1.991.242 2.631.725.64.479 1.063 1.12 1.268 1.926zm10.132 0l-1.819.323a2.142 2.142 0 00-.362-.665 1.788 1.788 0 00-.658-.516c-.277-.134-.624-.201-1.04-.201-.568 0-1.042.127-1.423.382-.38.25-.57.575-.57.973 0 .344.128.622.383.832.255.21.666.383 1.234.517l1.638.376c.948.219 1.655.557 2.12 1.013.466.456.698 1.05.698 1.778 0 .618-.179 1.168-.537 1.651-.353.479-.847.855-1.483 1.128-.63.273-1.362.409-2.194.409-1.154 0-2.096-.246-2.825-.738-.73-.497-1.177-1.201-1.342-2.114l1.939-.295c.121.505.369.888.745 1.147.376.255.866.383 1.469.383.658 0 1.184-.137 1.578-.41.393-.277.59-.615.59-1.013 0-.322-.121-.593-.362-.812-.237-.22-.602-.385-1.094-.497l-1.745-.382c-.962-.22-1.673-.568-2.134-1.047-.456-.479-.685-1.085-.685-1.819 0-.608.171-1.14.511-1.597.34-.456.809-.812 1.409-1.067.599-.26 1.286-.389 2.06-.389 1.114 0 1.991.242 2.631.725.639.479 1.062 1.12 1.268 1.926zm9.415 1.672v6.12h-2.006V54.148h1.979v5.114h.128a2.962 2.962 0 011.107-1.322c.497-.327 1.146-.49 1.946-.49.707 0 1.325.145 1.853.436.532.291.943.725 1.234 1.302.296.573.443 1.289.443 2.148v6.556h-2.006v-6.315c0-.756-.195-1.342-.584-1.758-.389-.42-.931-.63-1.624-.63-.474 0-.899.1-1.275.301a2.169 2.169 0 00-.879.886c-.211.385-.316.85-.316 1.396zm13.804 6.328c-1.015 0-1.89-.217-2.624-.65a4.422 4.422 0 01-1.691-1.846c-.393-.797-.59-1.73-.59-2.799 0-1.056.197-1.986.59-2.791.399-.806.953-1.434 1.665-1.886.715-.452 1.552-.678 2.509-.678.582 0 1.146.096 1.692.289a4.1 4.1 0 011.469.906c.434.411.776.946 1.027 1.603.251.654.376 1.448.376 2.383v.711h-8.194V61.84h6.228c0-.528-.108-.996-.323-1.403a2.426 2.426 0 00-.906-.973c-.384-.237-.836-.355-1.355-.355-.564 0-1.056.138-1.477.416-.416.273-.738.63-.966 1.073a3.095 3.095 0 00-.335 1.43V63.2c0 .69.12 1.275.362 1.758.246.484.588.853 1.027 1.108.438.25.95.376 1.537.376.38 0 .727-.054 1.04-.162.313-.111.584-.277.812-.496.228-.22.402-.49.523-.812l1.899.342a3.444 3.444 0 01-.818 1.47c-.39.416-.88.74-1.47.973-.586.228-1.255.342-2.007.342zm6.649-.208V57.584h1.94v1.638h.107c.188-.555.519-.991.993-1.309a2.843 2.843 0 011.624-.483 8.527 8.527 0 01.852.047v1.92a3.583 3.583 0 00-.429-.075 4.105 4.105 0 00-.617-.047c-.475 0-.897.101-1.269.302a2.243 2.243 0 00-1.194 2.02v6.295h-2.007zm11.326.208c-1.015 0-1.89-.217-2.624-.65a4.415 4.415 0 01-1.691-1.846c-.393-.797-.59-1.73-.59-2.799 0-1.056.197-1.986.59-2.791.398-.806.953-1.434 1.665-1.886.715-.452 1.552-.678 2.509-.678.582 0 1.146.096 1.691.289a4.095 4.095 0 011.47.906c.434.411.776.946 1.027 1.603.25.654.376 1.448.376 2.383v.711h-8.194V61.84h6.227c0-.528-.107-.996-.322-1.403a2.426 2.426 0 00-.906-.973c-.384-.237-.836-.355-1.355-.355-.564 0-1.056.138-1.477.416-.416.273-.738.63-.966 1.073a3.095 3.095 0 00-.335 1.43V63.2c0 .69.12 1.275.362 1.758.246.484.588.853 1.027 1.108.438.25.95.376 1.536.376.381 0 .727-.054 1.041-.162.313-.111.583-.277.812-.496.228-.22.402-.49.523-.812l1.899.342a3.435 3.435 0 01-.819 1.47c-.389.416-.879.74-1.469.973-.586.228-1.255.342-2.007.342z\"\n fill=\"#000\"\n />\n </g>\n <path\n d=\"M0 27.27h346.032c14.903 0 26.984 12.081 26.984 26.984h-3.175c0-13.15-10.66-23.81-23.809-23.81H0V27.27zm371.429 226.984H0h371.429zM0 254.254V28.857v225.397zM346.032 27.27c14.903 0 26.984 12.081 26.984 26.984v200h-3.175v-200c0-13.15-10.66-23.81-23.809-23.81V27.27z\"\n fill=\"#C2C8CC\"\n mask=\"url(#path-2-inside-1_5_55)\"\n />\n <path\n d=\"M132.178 157.733l-2.302-2.302a7.542 7.542 0 00.834-1.905 7.62 7.62 0 00.278-2.063h3.175c0 1.164-.172 2.268-.516 3.313a11.632 11.632 0 01-1.469 2.957zm-4.683-4.762l-2.857-2.858v-8.175c0-.45-.153-.827-.457-1.132a1.536 1.536 0 00-1.131-.456c-.45 0-.827.152-1.131.456a1.54 1.54 0 00-.456 1.132v5l-3.175-3.175v-1.825c0-1.323.463-2.448 1.389-3.374.926-.926 2.05-1.389 3.373-1.389 1.323 0 2.447.463 3.373 1.389.927.926 1.39 2.051 1.39 3.374v9.525c0 .291-.034.555-.1.793a14.98 14.98 0 01-.218.715zm-6.032 14.367v-4.882c-2.752-.37-5.028-1.601-6.827-3.691-1.799-2.09-2.698-4.524-2.698-7.302h3.175c0 2.196.76 4.067 2.282 5.615 1.521 1.548 3.406 2.322 5.655 2.322a7.803 7.803 0 004.763-1.587l2.262 2.262a12.602 12.602 0 01-2.52 1.548 9.883 9.883 0 01-2.917.833v4.882h-3.175zm13.97 2.54l-29.21-29.21 2.222-2.223 29.21 29.21-2.222 2.223z\"\n fill=\"#626365\"\n />\n </g>\n <defs>\n <pattern\n height=\"1\"\n id=\"pattern0_5_55\"\n patternContentUnits=\"objectBoundingBox\"\n width=\"1\"\n >\n <use transform=\"scale(.00292)\" xlinkHref=\"#image0_5_55\" />\n </pattern>\n <clipPath id=\"clip0_5_55\">\n <rect fill=\"#fff\" height=\"253.968\" rx=\"15.873\" width=\"400\" y=\"0.286\" />\n </clipPath>\n <clipPath id=\"clip1_5_55\">\n <path\n d=\"M0 28.857h346.032c14.026 0 25.397 11.37 25.397 25.397v200H0V28.857z\"\n fill=\"#fff\"\n />\n </clipPath>\n <image\n height=\"342\"\n id=\"image0_5_55\"\n width=\"342\"\n xlinkHref=\"data:image/png;base64,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\"\n />\n </defs>\n </svg>\n);\n\nexport default AllowMicAccess;\n","import {\n forwardRef,\n useEffect,\n useImperativeHandle,\n useRef,\n useState,\n} from \"react\";\n\nimport classNames from \"classnames\";\nimport { noop } from \"neetocist\";\nimport {\n SCREEN_RECORDER_ERROR,\n SCREEN_RECORDER_EVENT,\n SCREEN_RECORDER_STATUS,\n UPLOAD_EVENT,\n UPLOAD_STATUS,\n IS_SAFARI_EXTENSION,\n COUNTDOWN_TIME,\n} from \"neetomediarecorder/constants\";\nimport {\n getMultipartS3Uploader,\n screenRecorder,\n useMultipartS3UploadStatus,\n} from \"neetomediarecorder/core\";\nimport PageLoader from \"neetomolecules/PageLoader\";\nimport { Alert, Button, Callout, Typography } from \"neetoui\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { useCreateRecording } from \"hooks/reactQuery/useRecordingApi\";\nimport { getSupportedMimeType } from \"src/core/screenRecorder/utils\";\n\nimport AbortUpload from \"./AbortUpload\";\nimport Controls from \"./Controls\";\nimport useAudioIsCapturing from \"./hooks/useAudioIsCapturing\";\nimport useHandleErrors from \"./hooks/useHandleErrors\";\nimport useRecorderStatus from \"./hooks/useRecorderStatus\";\nimport Timer from \"./Timer\";\nimport UnSupportedBrowser from \"./UnSupportedBrowser\";\nimport UploadingInProgress from \"./UploadingInProgress\";\nimport UseDesktopAppCallout from \"./UseDesktopAppCallout\";\nimport {\n getDeviceInfo,\n getRecorderTimeLimitInHumanFormat,\n hasRecordingDiscarded,\n} from \"./utils\";\n\nimport AllowMicAccess from \"../commons/AllowMicAccess\";\n\nconst { useRecorderStore, restartRecording, discardRecording } = screenRecorder;\nconst globalProps = window?.globalProps || {};\n\nconst MediaRecorder = (\n {\n onUploadComplete = noop,\n onDiscard = noop,\n appName = globalProps.appName,\n mimeType = getSupportedMimeType(),\n folderId,\n isMicOn = false,\n onAudioNotCapturing = () => {},\n onError = () => {},\n },\n ref\n) => {\n const { t } = useTranslation();\n\n const [isDiscardAlertOpen, setIsDiscardAlertOpen] = useState(false);\n const [isRestartAlertOpen, setIsRestartAlertOpen] = useState(false);\n const [uploadProgress, setUploadProgress] = useState(0);\n const [isRetryUpload, setIsRetryUpload] = useState(false);\n const recordingRef = useRef({});\n\n const { hasAudio, reset } = useAudioIsCapturing({ isMicOn });\n\n useEffect(() => {\n if (hasAudio) return;\n onAudioNotCapturing();\n setTimeout(() => {\n reset();\n }, 1000);\n }, [hasAudio]);\n\n /**\n * @type {React.RefObject<Promise<unknown> | null>}\n */\n const createRecordingPromise = useRef(null);\n\n const {\n status: recorderStatus,\n error,\n countdownTimeLeft,\n showTimeLimitWarning,\n elapsedTime,\n } = useRecorderStore.pick();\n\n const { isStatus: isRecorderStatus } = useRecorderStatus();\n const { isStatus: isUploadStatus, status: uploadStatus } =\n useMultipartS3UploadStatus();\n\n const shouldShowTimeLimitWarning =\n showTimeLimitWarning &&\n isRecorderStatus(\n SCREEN_RECORDER_STATUS.recording,\n SCREEN_RECORDER_STATUS.paused\n );\n\n const {\n mutateAsync: createRecording,\n isPending: isCreatingRecording,\n data: { recording = {} } = {},\n } = useCreateRecording({\n onSuccess: ({ recording, uploadId }) => {\n const multipartS3Uploader = getMultipartS3Uploader();\n multipartS3Uploader.setRecording(recording.id, uploadId);\n multipartS3Uploader.setMimeType(mimeType);\n\n const uploadStatus = multipartS3Uploader.status;\n const recorderStatus = useRecorderStore.getState().status;\n\n if (uploadStatus === UPLOAD_STATUS.uploading || isRetryUpload) {\n setIsRetryUpload(false);\n multipartS3Uploader.completeUpload();\n } else if (hasRecordingDiscarded({ recorderStatus, uploadStatus })) {\n handleDiscardRecording({ forceAbort: true });\n }\n },\n });\n\n useEffect(() => {\n const elapsedTimeInSec = Math.round(elapsedTime / 1000);\n const checkDelay = 7; // we get data every 5 sec, 7 for safety\n // If data is insufficient after n secs, there is some issue with media recorder, discard.\n if (elapsedTimeInSec < checkDelay) return;\n\n if (\n !screenRecorder.hasData() &&\n recorderStatus === SCREEN_RECORDER_STATUS.recording\n ) {\n screenRecorder.setError(SCREEN_RECORDER_ERROR.InsufficientData);\n onError(SCREEN_RECORDER_ERROR.InsufficientData);\n }\n }, [elapsedTime]);\n\n recordingRef.current = recording;\n\n const handleCreateRecording = async () => {\n const payload = { folderId };\n payload.deviceInfo = await getDeviceInfo(mimeType);\n createRecordingPromise.current = createRecording(payload);\n };\n\n const handleUploadComplete = () => onUploadComplete(recordingRef.current?.id);\n\n const handleDiscardRecording = async ({ forceAbort = false } = {}) => {\n const multipartS3Uploader = getMultipartS3Uploader();\n await multipartS3Uploader.abortUpload(forceAbort);\n\n if (multipartS3Uploader.status === UPLOAD_STATUS.aborting) return;\n\n onDiscard();\n };\n\n const handleRestartRecording = () => {\n getMultipartS3Uploader().abortUpload();\n };\n\n const onDiscardAlertClose = () => setIsDiscardAlertOpen(false);\n const onRestartAlertClose = () => setIsRestartAlertOpen(false);\n\n const handleConfirmDiscard = () => {\n discardRecording();\n onDiscardAlertClose();\n };\n\n const handleConfirmRestart = () => {\n restartRecording();\n onRestartAlertClose();\n };\n\n const handleUploadError = () => {\n setUploadProgress(0);\n };\n\n const handleUploadProgress = progress => {\n setUploadProgress(progress);\n };\n\n const handleReUpload = () => {\n const multipartS3Uploader = getMultipartS3Uploader();\n setIsRetryUpload(true);\n setUploadProgress(0);\n multipartS3Uploader.abortUpload();\n\n // Create a new multipartS3Uploader instance to push the blob\n const newMultipartS3Uploader = getMultipartS3Uploader({ initialize: true });\n newMultipartS3Uploader.push(screenRecorder.getWebmMediaBlob());\n\n // Attach callbacks to the new multipartS3Uploader instance\n const uploaderCallbacks = {\n [UPLOAD_EVENT.onComplete]: handleUploadComplete,\n [UPLOAD_EVENT.onError]: handleUploadError,\n [UPLOAD_EVENT.onProgress]: handleUploadProgress,\n [UPLOAD_EVENT.onAbort]: () => {\n Object.keys(uploaderCallbacks).forEach(key => {\n multipartS3Uploader.removeCallback(key, uploaderCallbacks[key]);\n });\n\n multipartS3Uploader.removeCallback(\n UPLOAD_EVENT.onAbort,\n uploaderCallbacks[UPLOAD_EVENT.onAbort]\n );\n },\n };\n\n Object.keys(uploaderCallbacks).forEach(key => {\n newMultipartS3Uploader.addCallback(key, uploaderCallbacks[key]);\n });\n\n handleCreateRecording();\n };\n\n useImperativeHandle(ref, () => ({\n handleDiscardRecording: () => setIsDiscardAlertOpen(true),\n handleRestartRecording: () => setIsRestartAlertOpen(true),\n }));\n\n useHandleErrors({ error, recorderStatus });\n\n useEffect(() => {\n let cleanupFunction = noop;\n\n const handleOnScreenRecorderStart = () => {\n const multipartS3Uploader = getMultipartS3Uploader({ initialize: true });\n\n const recorderCallbacks = {\n [SCREEN_RECORDER_EVENT.onDataAvailable]: multipartS3Uploader.push,\n [SCREEN_RECORDER_EVENT.onStop]: async () => {\n if (createRecordingPromise.current) {\n await createRecordingPromise.current;\n createRecordingPromise.current = null;\n }\n\n multipartS3Uploader.completeUpload();\n },\n [SCREEN_RECORDER_EVENT.onDiscard]: handleDiscardRecording,\n [SCREEN_RECORDER_EVENT.onRestart]: handleRestartRecording,\n };\n\n const uploaderCallbacks = {\n [UPLOAD_EVENT.onComplete]: handleUploadComplete,\n [UPLOAD_EVENT.onError]: handleUploadError,\n [UPLOAD_EVENT.onProgress]: handleUploadProgress,\n };\n\n Object.keys(recorderCallbacks).forEach(key => {\n screenRecorder.addCallback(key, recorderCallbacks[key]);\n });\n\n Object.keys(uploaderCallbacks).forEach(key => {\n multipartS3Uploader.addCallback(key, uploaderCallbacks[key]);\n });\n\n cleanupFunction = () => {\n Object.keys(recorderCallbacks).forEach(key => {\n screenRecorder.removeCallback(key, recorderCallbacks[key]);\n });\n\n Object.keys(uploaderCallbacks).forEach(key => {\n multipartS3Uploader.removeCallback(key, uploaderCallbacks[key]);\n });\n\n multipartS3Uploader.removeCallback(\n UPLOAD_EVENT.onAbort,\n cleanupFunction\n );\n };\n\n multipartS3Uploader.addCallback(UPLOAD_EVENT.onAbort, cleanupFunction);\n\n handleCreateRecording();\n };\n\n screenRecorder.addCallback(\n SCREEN_RECORDER_EVENT.onStart,\n handleOnScreenRecorderStart\n );\n\n screenRecorder.addCallback(\n SCREEN_RECORDER_EVENT.onDiscardDuringCountdown,\n onDiscard\n );\n\n return () => {\n screenRecorder.revokePermissions();\n screenRecorder.resetState();\n cleanupFunction();\n };\n }, []);\n\n useEffect(() => {\n if (!isUploadStatus(UPLOAD_STATUS.insufficient_data)) return;\n\n handleDiscardRecording();\n }, [uploadStatus]);\n\n const shouldShowSafariExtensionCalloutToStartRecording =\n isRecorderStatus(SCREEN_RECORDER_STATUS.idle) &&\n IS_SAFARI_EXTENSION &&\n error === SCREEN_RECORDER_ERROR.None;\n\n if (error === SCREEN_RECORDER_ERROR.UnSupportedBrowser) {\n return <UnSupportedBrowser />;\n }\n\n if (error === SCREEN_RECORDER_ERROR.FailedToStart) {\n return (\n <div className=\"flex h-screen w-full flex-col items-center justify-center gap-4\">\n <Callout\n className=\"p-5\"\n data-cy=\"recorder-unsupported-browser-callout\"\n style=\"danger\"\n >\n {t(\"neetoMediaRecorder.notSupportedError\")}\n </Callout>\n <Button\n label={t(\"neetoMediaRecorder.record.retry\")}\n size=\"large\"\n onClick={() => window.location.reload()}\n />\n </div>\n );\n }\n\n const isBeingUploadedOrHasErrorUploading = isUploadStatus(\n UPLOAD_STATUS.uploading,\n UPLOAD_STATUS.error\n );\n\n if (hasRecordingDiscarded({ recorderStatus, uploadStatus })) {\n return <AbortUpload />;\n }\n\n if (\n isRetryUpload ||\n (isRecorderStatus(SCREEN_RECORDER_STATUS.stopped) &&\n (isCreatingRecording || isBeingUploadedOrHasErrorUploading))\n ) {\n return (\n <UploadingInProgress\n {...{ isRetryUpload, recording, uploadProgress, uploadStatus }}\n onDiscard={handleDiscardRecording}\n onRetryUpload={handleReUpload}\n />\n );\n }\n\n if (\n isRecorderStatus(SCREEN_RECORDER_STATUS.stopped) &&\n isUploadStatus(UPLOAD_STATUS.completed)\n ) {\n return (\n <div className=\"h-screen w-full\">\n <UseDesktopAppCallout />\n <PageLoader />\n </div>\n );\n }\n\n return (\n <div className=\"flex h-screen w-full flex-col items-center justify-start py-10 xl:py-14 2xl:py-20\">\n <div className={classNames(\"w-full max-w-3xl\")}>\n <UseDesktopAppCallout />\n {error === SCREEN_RECORDER_ERROR.InsufficientData && (\n <Callout\n className=\"mb-2 p-3\"\n data-cy=\"recorder-insufficient-data-error-callout\"\n style=\"danger\"\n >\n {t(\"neetoMediaRecorder.insufficientDataError\")}\n </Callout>\n )}\n {error === SCREEN_RECORDER_ERROR.NotAllowedError && (\n <div className=\"flex flex-col items-center\">\n <Typography className=\"mb-2\" style=\"h3\">\n {t(\"neetoMediaRecorder.record.screenSharePermissionDeniedTitle\", {\n appName,\n })}\n </Typography>\n <Typography>\n <Trans\n i18nKey=\"neetoMediaRecorder.record.screenSharePermissionDenied\"\n components={{\n Bold: <Typography component=\"span\" weight=\"bold\" />,\n }}\n />\n </Typography>\n </div>\n )}\n {error === SCREEN_RECORDER_ERROR.MicPermissionDenied && (\n <div className=\"flex flex-col items-center\">\n <Typography className=\"mb-2\" style=\"h3\">\n {t(\"neetoMediaRecorder.record.micPermissionDeniedTitle\", {\n appName,\n })}\n </Typography>\n <Typography>\n {t(\"neetoMediaRecorder.record.micPermissionDeniedMessage\")}\n </Typography>\n <AllowMicAccess />\n </div>\n )}\n {isRecorderStatus(SCREEN_RECORDER_STATUS.acquiring_media) && (\n <Callout\n className=\"mb-2 p-3\"\n data-cy=\"recorder-grant-permission-info-callout\"\n style=\"info\"\n >\n {t(\"neetoMediaRecorder.record.grantPermissionMessage\")}\n </Callout>\n )}\n {shouldShowSafariExtensionCalloutToStartRecording && (\n <Callout\n className=\"mx-auto mb-2 w-1/2 p-3\"\n data-cy=\"recorder-start-recording-info-callout\"\n style=\"info\"\n >\n {t(\"neetoMediaRecorder.record.clickToStartRecording\")}\n </Callout>\n )}\n {shouldShowTimeLimitWarning && (\n <Callout\n className=\"mx-auto mb-2 w-1/2 p-3\"\n data-cy=\"recorder-time-limit-warning-callout\"\n style=\"warning\"\n >\n <Typography component=\"span\" style=\"body2\">\n <Trans\n i18nKey=\"neetoMediaRecorder.record.timeLimitWarning\"\n components={{\n Bold: <Typography component=\"span\" weight=\"bold\" />,\n }}\n values={{\n duration: getRecorderTimeLimitInHumanFormat(\n screenRecorder.timeLimit\n ),\n endsIn: getRecorderTimeLimitInHumanFormat(\n screenRecorder.timeLimit - elapsedTime\n ),\n }}\n />\n </Typography>\n </Callout>\n )}\n {isRecorderStatus(\n SCREEN_RECORDER_STATUS.media_acquired,\n SCREEN_RECORDER_STATUS.restarting\n ) && (\n <div\n className=\"neeto-ui-rounded-lg mx-auto mb-8 flex w-full max-w-4xl flex-col items-center justify-center p-12\"\n data-cy=\"recorder-countdown-wrapper\"\n >\n <div className=\"relative mb-8\">\n <div className=\"relative flex h-32 w-32 items-center justify-center\">\n <svg\n className=\"absolute h-32 w-32 -rotate-90 transform\"\n viewBox=\"0 0 120 120\"\n >\n <circle\n cx=\"60\"\n cy=\"60\"\n fill=\"transparent\"\n r=\"50\"\n stroke=\"rgba(2, 128, 105, 0.2)\"\n strokeWidth=\"4\"\n />\n <circle\n className=\"transition-all duration-1000 ease-linear\"\n cx=\"60\"\n cy=\"60\"\n fill=\"transparent\"\n r=\"50\"\n stroke=\"rgb(2, 128, 105)\"\n strokeDasharray={2 * Math.PI * 50}\n strokeLinecap=\"round\"\n strokeWidth=\"4\"\n strokeDashoffset={\n 2 * Math.PI * 50 * (countdownTimeLeft / COUNTDOWN_TIME)\n }\n />\n </svg>\n <Typography className=\" text-6xl font-bold\" weight=\"semibold\">\n {countdownTimeLeft}\n </Typography>\n </div>\n </div>\n <Typography className=\"mb-4\" style=\"h3\">\n {t(\"neetoMediaRecorder.record.startsIn\")}\n </Typography>\n </div>\n )}\n {isRecorderStatus(\n SCREEN_RECORDER_STATUS.recording,\n SCREEN_RECORDER_STATUS.paused\n ) && <Timer />}\n </div>\n <Controls\n {...{ onDiscard, setIsDiscardAlertOpen, setIsRestartAlertOpen }}\n className=\"mt-5\"\n />\n <Alert\n isOpen={isDiscardAlertOpen}\n message={t(\"neetoMediaRecorder.record.discardConfirmation.message\")}\n submitButtonLabel={t(\"neetoMediaRecorder.record.discard\")}\n title={t(\"neetoMediaRecorder.record.discardConfirmation.title\")}\n onClose={onDiscardAlertClose}\n onSubmit={handleConfirmDiscard}\n />\n <Alert\n isOpen={isRestartAlertOpen}\n message={t(\"neetoMediaRecorder.record.restartConfirmation.message\")}\n submitButtonLabel={t(\"neetoMediaRecorder.record.restart\")}\n title={t(\"neetoMediaRecorder.record.restartConfirmation.title\")}\n onClose={onRestartAlertClose}\n onSubmit={handleConfirmRestart}\n />\n </div>\n );\n};\n\nexport default forwardRef(MediaRecorder);\n"],"names":["_typeof","arrayLikeToArray","arrayWithHoles","iterableToArrayLimit","unsupportedIterableToArray","nonIterableRest","require$$0","ONE_SECOND_IN_MILLISECONDS","ONE_MINUTE_IN_MILLISECONDS","ONE_HOUR_IN_MILLISECONDS","UPLOAD_STATUS","uploading","completed","aborting","insufficient_data","error","HAS_CHROME_NAMESPACE","chrome","IS_EXTENSION","isNotNil","extension","platform","name","MIME_TYPE","mp4","webmH264","getSupportedMimeType","formatTime","time","Math","floor","toString","padStart","getTimeString","date","hours","minutes","seconds","concat","downloadRecordingBlob","blob","blobUrl","URL","createObjectURL","linkElement","document","createElement","href","download","body","appendChild","dispatchEvent","MouseEvent","bubbles","cancelable","view","window","removeChild","revokeObjectURL","hasRecordingDiscarded","_ref","recorderStatus","uploadStatus","SCREEN_RECORDER_STATUS","stopped","getRecorderTimeLimitInHumanFormat","timeInMs","getDeviceInfo","_ref2","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_yield$chrome$storage","_platform$os","mimeType","isCameraEnabled","_args","arguments","wrap","_callee$","_context","prev","next","length","undefined","storage","local","get","t2","sent","t1","t3","isCameraOn","t0","abrupt","os","app","runtime","getManifest","version","browser","isMicEnabled","screenRecorder","audioConfiguration","displaySurface","stop","apply","isMp4Supported","includes","baseUrl","create","payload","axios","post","recording","_objectSpread","isMp4","deviceInfo","recordingsApi","useCreateRecording","options","useMutation","mutationFn","AbortUpload","withT","t","_jsx","className","children","_jsxs","Typography","style","Spinner","objectWithoutPropertiesLoose","PlayIcon","_ref$size","size","other","_objectWithoutProperties","_excluded","height","viewBox","width","xmlns","d","fill","StopIcon","_ref2$size","_excluded2","RestartIcon","_ref3","_ref3$size","_excluded3","clipRule","fillRule","useRecorderStatus","useRecorderStore","_useRecorderStore","store","status","shallow","isStatus","_len","statuses","Array","_key","Controls","_ref$className","setIsRestartAlertOpen","setIsDiscardAlertOpen","onDiscard","_useTranslation","useTranslation","startRecording","pauseRecording","stopRecording","resumeRecording","setAudioConfiguration","_useRecorderStatus","hasRecordingStarted","paused","shouldShowSelectScreenButton","SCREEN_RECORDER_ERROR","NotAllowedError","IS_SAFARI_EXTENSION","idle","shouldShowGrantMicPermissionButton","MicPermissionDenied","classNames","_defineProperty","isNotEmpty","Button","icon","Computer","label","loading","acquiring_media","onClick","Delete","setState","Unlock","iconSize","tooltipProps","content","position","Pause","getAnalyser","_screenRecorder$getAu","stream","getAudioStream","call","ctx","AudioContext","webkitAudioContext","source","createMediaStreamSource","analyser","createAnalyser","fftSize","connect","data","Uint8Array","hasChrome","onMessage","useAudioIsCapturing","isMicOn","_useState","useState","_useState2","_slicedToArray","hasAudio","setHasAudio","_useState3","_useState4","disable","setDisable","_useState5","_useState6","timerStarted","setTimerStarted","timerRef","useRef","remainingRef","MIC_NOT_WORKING_SILENCE_TIMEOUT","startedAtRef","clearTimer","current","clearTimeout","armTimer","logger","info","Date","now","setTimeout","pauseTimer","elapsed","max","resumeTimer","reset","useCallback","useEffect","handleMessage","message","type","addListener","_chrome","_chrome$runtime","_chrome$runtime$onMes","removeListener","noop","analyserObj","rafId","loop","isSilent","getByteTimeDomainData","every","v","requestAnimationFrame","cancelAnimationFrame","disconnect","close","_callbacks","callbacks","SCREEN_RECORDER_EVENT","onStart","onRestart","onResume","onPause","onStop","disableMicNotWorkingWarning","Object","entries","forEach","ev","fn","addCallback","_ref4","_ref5","removeCallback","useHandleErrors","isRecorderStatus","UnSupportedBrowser","FailedToStart","cleanupFunction","navigator","permissions","query","then","micPermission","handleChange","state","addEventListener","removeEventListener","Timer","elapsedTime","weight","Callout","generatePublicUrl","recordingId","baseURL","location","origin","UseDesktopAppCallout","component","Trans","i18nKey","values","appName","components","Download","UploadingInProgress","uploadProgress","onRetryUpload","isRetryUpload","setBaseURL","isDiscardAlertOpen","fetchBaseURL","hasFocus","id","isEmpty","copyToClipboard","handleRecordingBlobDownload","_recording$title","getWebmMediaBlob","title","ProgressBar","progressPercentage","CopyToClipboardButton","Copy","value","disabled","Refresh","Close","Alert","isOpen","submitButtonLabel","onClose","onSubmit","AllowMicAccess","xmlnsXlink","clipPath","rx","y","transform","opacity","stroke","strokeWidth","cx","cy","r","strokeOpacity","mask","patternContentUnits","xlinkHref","restartRecording","discardRecording","globalProps","_window","MediaRecorder","ref","_ref$onUploadComplete","onUploadComplete","_ref$onDiscard","_ref$appName","_ref$mimeType","folderId","_ref$isMicOn","_ref$onAudioNotCaptur","onAudioNotCapturing","_ref$onError","onError","isRestartAlertOpen","setUploadProgress","_useState7","_useState8","setIsRetryUpload","recordingRef","_useAudioIsCapturing","createRecordingPromise","countdownTimeLeft","showTimeLimitWarning","_useMultipartS3Upload","useMultipartS3UploadStatus","isUploadStatus","shouldShowTimeLimitWarning","_useCreateRecording","onSuccess","uploadId","multipartS3Uploader","getMultipartS3Uploader","setRecording","setMimeType","getState","completeUpload","handleDiscardRecording","forceAbort","createRecording","mutateAsync","isCreatingRecording","isPending","_useCreateRecording$d","_useCreateRecording$d2","_useCreateRecording$d3","elapsedTimeInSec","round","checkDelay","hasData","setError","InsufficientData","handleCreateRecording","handleUploadComplete","_recordingRef$current","_callee2","_ref5$forceAbort","_args2","_callee2$","_context2","abortUpload","handleRestartRecording","onDiscardAlertClose","onRestartAlertClose","handleConfirmDiscard","handleConfirmRestart","handleUploadError","handleUploadProgress","progress","handleReUpload","_uploaderCallbacks","newMultipartS3Uploader","initialize","push","uploaderCallbacks","UPLOAD_EVENT","onComplete","onProgress","onAbort","keys","key","useImperativeHandle","handleOnScreenRecorderStart","_recorderCallbacks","_uploaderCallbacks2","recorderCallbacks","onDataAvailable","_callee3","_callee3$","_context3","onDiscardDuringCountdown","revokePermissions","resetState","shouldShowSafariExtensionCalloutToStartRecording","None","reload","isBeingUploadedOrHasErrorUploading","PageLoader","Bold","duration","timeLimit","endsIn","media_acquired","restarting","strokeDasharray","PI","strokeLinecap","strokeDashoffset","COUNTDOWN_TIME","forwardRef"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,21,22]}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["node_modules/rollup-plugin-styles/dist/runtime/inject-css.js","node_modules/@babel/runtime/helpers/esm/typeof.js","node_modules/@babel/runtime/helpers/esm/toPrimitive.js","node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","node_modules/@babel/runtime/helpers/esm/defineProperty.js","node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","node_modules/@babel/runtime/helpers/esm/slicedToArray.js","node_modules/@babel/runtime/helpers/typeof.js","node_modules/@babel/runtime/helpers/regeneratorRuntime.js","node_modules/@babel/runtime/regenerator/index.js","src/constants.js","src/core/screenRecorder/utils.js","src/components/MediaRecorder/utils.js","src/apis/recordings.js","src/hooks/reactQuery/useRecordingApi.js","src/components/MediaRecorder/AbortUpload.jsx","node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","src/components/commons/Icons.jsx","src/components/MediaRecorder/hooks/useRecorderStatus.js","src/components/MediaRecorder/Controls.jsx","src/components/MediaRecorder/hooks/useAudioIsCapturing.js","src/components/MediaRecorder/hooks/useHandleErrors.js","src/components/MediaRecorder/Timer.jsx","src/components/MediaRecorder/UnSupportedBrowser.jsx","src/utils/index.js","src/components/MediaRecorder/UseDesktopAppCallout.jsx","src/components/MediaRecorder/UploadingInProgress.jsx","src/components/commons/AllowMicAccess.jsx","src/components/MediaRecorder/index.jsx"],"sourcesContent":["var e=[],t=[];function n(n,r){if(n&&\"undefined\"!=typeof document){var a,s=!0===r.prepend?\"prepend\":\"append\",d=!0===r.singleTag,i=\"string\"==typeof r.container?document.querySelector(r.container):document.getElementsByTagName(\"head\")[0];if(d){var u=e.indexOf(i);-1===u&&(u=e.push(i)-1,t[u]={}),a=t[u]&&t[u][s]?t[u][s]:t[u][s]=c()}else a=c();65279===n.charCodeAt(0)&&(n=n.substring(1)),a.styleSheet?a.styleSheet.cssText+=n:a.appendChild(document.createTextNode(n))}function c(){var e=document.createElement(\"style\");if(e.setAttribute(\"type\",\"text/css\"),r.attributes)for(var t=Object.keys(r.attributes),n=0;n<t.length;n++)e.setAttribute(t[n],r.attributes[t[n]]);var a=\"prepend\"===s?\"afterbegin\":\"beforeend\";return i.insertAdjacentElement(a,e),e}}export{n as default};\n","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}\nexport { _typeof as default };","import _typeof from \"./typeof.js\";\nfunction toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nexport { toPrimitive as default };","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nfunction toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : i + \"\";\n}\nexport { toPropertyKey as default };","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperty(e, r, t) {\n return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {\n value: t,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : e[r] = t, e;\n}\nexport { _defineProperty as default };","function asyncGeneratorStep(n, t, e, r, o, a, c) {\n try {\n var i = n[a](c),\n u = i.value;\n } catch (n) {\n return void e(n);\n }\n i.done ? t(u) : Promise.resolve(u).then(r, o);\n}\nfunction _asyncToGenerator(n) {\n return function () {\n var t = this,\n e = arguments;\n return new Promise(function (r, o) {\n var a = n.apply(t, e);\n function _next(n) {\n asyncGeneratorStep(a, r, o, _next, _throw, \"next\", n);\n }\n function _throw(n) {\n asyncGeneratorStep(a, r, o, _next, _throw, \"throw\", n);\n }\n _next(void 0);\n });\n };\n}\nexport { _asyncToGenerator as default };","function _arrayWithHoles(r) {\n if (Array.isArray(r)) return r;\n}\nexport { _arrayWithHoles as default };","function _iterableToArrayLimit(r, l) {\n var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"];\n if (null != t) {\n var e,\n n,\n i,\n u,\n a = [],\n f = !0,\n o = !1;\n try {\n if (i = (t = t.call(r)).next, 0 === l) {\n if (Object(t) !== t) return;\n f = !1;\n } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);\n } catch (r) {\n o = !0, n = r;\n } finally {\n try {\n if (!f && null != t[\"return\"] && (u = t[\"return\"](), Object(u) !== u)) return;\n } finally {\n if (o) throw n;\n }\n }\n return a;\n }\n}\nexport { _iterableToArrayLimit as default };","function _arrayLikeToArray(r, a) {\n (null == a || a > r.length) && (a = r.length);\n for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];\n return n;\n}\nexport { _arrayLikeToArray as default };","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nfunction _unsupportedIterableToArray(r, a) {\n if (r) {\n if (\"string\" == typeof r) return arrayLikeToArray(r, a);\n var t = {}.toString.call(r).slice(8, -1);\n return \"Object\" === t && r.constructor && (t = r.constructor.name), \"Map\" === t || \"Set\" === t ? Array.from(r) : \"Arguments\" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? arrayLikeToArray(r, a) : void 0;\n }\n}\nexport { _unsupportedIterableToArray as default };","function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nexport { _nonIterableRest as default };","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nfunction _slicedToArray(r, e) {\n return arrayWithHoles(r) || iterableToArrayLimit(r, e) || unsupportedIterableToArray(r, e) || nonIterableRest();\n}\nexport { _slicedToArray as default };","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return module.exports = _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports, _typeof(o);\n}\nmodule.exports = _typeof, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction _regeneratorRuntime() {\n \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */\n module.exports = _regeneratorRuntime = function _regeneratorRuntime() {\n return e;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n var t,\n e = {},\n r = Object.prototype,\n n = r.hasOwnProperty,\n o = Object.defineProperty || function (t, e, r) {\n t[e] = r.value;\n },\n i = \"function\" == typeof Symbol ? Symbol : {},\n a = i.iterator || \"@@iterator\",\n c = i.asyncIterator || \"@@asyncIterator\",\n u = i.toStringTag || \"@@toStringTag\";\n function define(t, e, r) {\n return Object.defineProperty(t, e, {\n value: r,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }), t[e];\n }\n try {\n define({}, \"\");\n } catch (t) {\n define = function define(t, e, r) {\n return t[e] = r;\n };\n }\n function wrap(t, e, r, n) {\n var i = e && e.prototype instanceof Generator ? e : Generator,\n a = Object.create(i.prototype),\n c = new Context(n || []);\n return o(a, \"_invoke\", {\n value: makeInvokeMethod(t, r, c)\n }), a;\n }\n function tryCatch(t, e, r) {\n try {\n return {\n type: \"normal\",\n arg: t.call(e, r)\n };\n } catch (t) {\n return {\n type: \"throw\",\n arg: t\n };\n }\n }\n e.wrap = wrap;\n var h = \"suspendedStart\",\n l = \"suspendedYield\",\n f = \"executing\",\n s = \"completed\",\n y = {};\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n var p = {};\n define(p, a, function () {\n return this;\n });\n var d = Object.getPrototypeOf,\n v = d && d(d(values([])));\n v && v !== r && n.call(v, a) && (p = v);\n var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p);\n function defineIteratorMethods(t) {\n [\"next\", \"throw\", \"return\"].forEach(function (e) {\n define(t, e, function (t) {\n return this._invoke(e, t);\n });\n });\n }\n function AsyncIterator(t, e) {\n function invoke(r, o, i, a) {\n var c = tryCatch(t[r], t, o);\n if (\"throw\" !== c.type) {\n var u = c.arg,\n h = u.value;\n return h && \"object\" == _typeof(h) && n.call(h, \"__await\") ? e.resolve(h.__await).then(function (t) {\n invoke(\"next\", t, i, a);\n }, function (t) {\n invoke(\"throw\", t, i, a);\n }) : e.resolve(h).then(function (t) {\n u.value = t, i(u);\n }, function (t) {\n return invoke(\"throw\", t, i, a);\n });\n }\n a(c.arg);\n }\n var r;\n o(this, \"_invoke\", {\n value: function value(t, n) {\n function callInvokeWithMethodAndArg() {\n return new e(function (e, r) {\n invoke(t, n, e, r);\n });\n }\n return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n }\n });\n }\n function makeInvokeMethod(e, r, n) {\n var o = h;\n return function (i, a) {\n if (o === f) throw Error(\"Generator is already running\");\n if (o === s) {\n if (\"throw\" === i) throw a;\n return {\n value: t,\n done: !0\n };\n }\n for (n.method = i, n.arg = a;;) {\n var c = n.delegate;\n if (c) {\n var u = maybeInvokeDelegate(c, n);\n if (u) {\n if (u === y) continue;\n return u;\n }\n }\n if (\"next\" === n.method) n.sent = n._sent = n.arg;else if (\"throw\" === n.method) {\n if (o === h) throw o = s, n.arg;\n n.dispatchException(n.arg);\n } else \"return\" === n.method && n.abrupt(\"return\", n.arg);\n o = f;\n var p = tryCatch(e, r, n);\n if (\"normal\" === p.type) {\n if (o = n.done ? s : l, p.arg === y) continue;\n return {\n value: p.arg,\n done: n.done\n };\n }\n \"throw\" === p.type && (o = s, n.method = \"throw\", n.arg = p.arg);\n }\n };\n }\n function maybeInvokeDelegate(e, r) {\n var n = r.method,\n o = e.iterator[n];\n if (o === t) return r.delegate = null, \"throw\" === n && e.iterator[\"return\"] && (r.method = \"return\", r.arg = t, maybeInvokeDelegate(e, r), \"throw\" === r.method) || \"return\" !== n && (r.method = \"throw\", r.arg = new TypeError(\"The iterator does not provide a '\" + n + \"' method\")), y;\n var i = tryCatch(o, e.iterator, r.arg);\n if (\"throw\" === i.type) return r.method = \"throw\", r.arg = i.arg, r.delegate = null, y;\n var a = i.arg;\n return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, \"return\" !== r.method && (r.method = \"next\", r.arg = t), r.delegate = null, y) : a : (r.method = \"throw\", r.arg = new TypeError(\"iterator result is not an object\"), r.delegate = null, y);\n }\n function pushTryEntry(t) {\n var e = {\n tryLoc: t[0]\n };\n 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e);\n }\n function resetTryEntry(t) {\n var e = t.completion || {};\n e.type = \"normal\", delete e.arg, t.completion = e;\n }\n function Context(t) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }], t.forEach(pushTryEntry, this), this.reset(!0);\n }\n function values(e) {\n if (e || \"\" === e) {\n var r = e[a];\n if (r) return r.call(e);\n if (\"function\" == typeof e.next) return e;\n if (!isNaN(e.length)) {\n var o = -1,\n i = function next() {\n for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next;\n return next.value = t, next.done = !0, next;\n };\n return i.next = i;\n }\n }\n throw new TypeError(_typeof(e) + \" is not iterable\");\n }\n return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, \"constructor\", {\n value: GeneratorFunctionPrototype,\n configurable: !0\n }), o(GeneratorFunctionPrototype, \"constructor\", {\n value: GeneratorFunction,\n configurable: !0\n }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, \"GeneratorFunction\"), e.isGeneratorFunction = function (t) {\n var e = \"function\" == typeof t && t.constructor;\n return !!e && (e === GeneratorFunction || \"GeneratorFunction\" === (e.displayName || e.name));\n }, e.mark = function (t) {\n return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, \"GeneratorFunction\")), t.prototype = Object.create(g), t;\n }, e.awrap = function (t) {\n return {\n __await: t\n };\n }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () {\n return this;\n }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) {\n void 0 === i && (i = Promise);\n var a = new AsyncIterator(wrap(t, r, n, o), i);\n return e.isGeneratorFunction(r) ? a : a.next().then(function (t) {\n return t.done ? t.value : a.next();\n });\n }, defineIteratorMethods(g), define(g, u, \"Generator\"), define(g, a, function () {\n return this;\n }), define(g, \"toString\", function () {\n return \"[object Generator]\";\n }), e.keys = function (t) {\n var e = Object(t),\n r = [];\n for (var n in e) r.push(n);\n return r.reverse(), function next() {\n for (; r.length;) {\n var t = r.pop();\n if (t in e) return next.value = t, next.done = !1, next;\n }\n return next.done = !0, next;\n };\n }, e.values = values, Context.prototype = {\n constructor: Context,\n reset: function reset(e) {\n if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) \"t\" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t);\n },\n stop: function stop() {\n this.done = !0;\n var t = this.tryEntries[0].completion;\n if (\"throw\" === t.type) throw t.arg;\n return this.rval;\n },\n dispatchException: function dispatchException(e) {\n if (this.done) throw e;\n var r = this;\n function handle(n, o) {\n return a.type = \"throw\", a.arg = e, r.next = n, o && (r.method = \"next\", r.arg = t), !!o;\n }\n for (var o = this.tryEntries.length - 1; o >= 0; --o) {\n var i = this.tryEntries[o],\n a = i.completion;\n if (\"root\" === i.tryLoc) return handle(\"end\");\n if (i.tryLoc <= this.prev) {\n var c = n.call(i, \"catchLoc\"),\n u = n.call(i, \"finallyLoc\");\n if (c && u) {\n if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n } else if (c) {\n if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n } else {\n if (!u) throw Error(\"try statement without catch or finally\");\n if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n }\n }\n }\n },\n abrupt: function abrupt(t, e) {\n for (var r = this.tryEntries.length - 1; r >= 0; --r) {\n var o = this.tryEntries[r];\n if (o.tryLoc <= this.prev && n.call(o, \"finallyLoc\") && this.prev < o.finallyLoc) {\n var i = o;\n break;\n }\n }\n i && (\"break\" === t || \"continue\" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null);\n var a = i ? i.completion : {};\n return a.type = t, a.arg = e, i ? (this.method = \"next\", this.next = i.finallyLoc, y) : this.complete(a);\n },\n complete: function complete(t, e) {\n if (\"throw\" === t.type) throw t.arg;\n return \"break\" === t.type || \"continue\" === t.type ? this.next = t.arg : \"return\" === t.type ? (this.rval = this.arg = t.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === t.type && e && (this.next = e), y;\n },\n finish: function finish(t) {\n for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n var r = this.tryEntries[e];\n if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y;\n }\n },\n \"catch\": function _catch(t) {\n for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n var r = this.tryEntries[e];\n if (r.tryLoc === t) {\n var n = r.completion;\n if (\"throw\" === n.type) {\n var o = n.arg;\n resetTryEntry(r);\n }\n return o;\n }\n }\n throw Error(\"illegal catch attempt\");\n },\n delegateYield: function delegateYield(e, r, n) {\n return this.delegate = {\n iterator: values(e),\n resultName: r,\n nextLoc: n\n }, \"next\" === this.method && (this.arg = t), y;\n }\n }, e;\n}\nmodule.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","// TODO(Babel 8): Remove this file.\n\nvar runtime = require(\"../helpers/regeneratorRuntime\")();\nmodule.exports = runtime;\n\n// Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736=\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n if (typeof globalThis === \"object\") {\n globalThis.regeneratorRuntime = runtime;\n } else {\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n }\n}\n","import platform from \"platform\";\nimport { isNotNil } from \"ramda\";\n\n// https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList\nexport const RETRYABLE_ERRORS = [500, 503];\n\nexport const ONE_SECOND_IN_MILLISECONDS = 1000;\nexport const HALF_A_SECOND_IN_MILLISECONDS = 500;\nexport const TWO_HUNDRED_MILLISECONDS = 200;\n\nexport const ONE_MINUTE_IN_MILLISECONDS = 60 * ONE_SECOND_IN_MILLISECONDS;\nexport const ONE_HOUR_IN_MILLISECONDS = 60 * ONE_MINUTE_IN_MILLISECONDS;\n\nexport const ONE_SECOND = 1;\n\nexport const COUNTDOWN_TIME = 3;\n\nexport const UPLOAD_EVENT = {\n onComplete: \"onComplete\",\n onError: \"onError\",\n onProgress: \"onProgress\",\n};\n\nexport const UPLOAD_STATUS = {\n uploading: \"uploading\",\n completed: \"completed\",\n aborting: \"aborting\",\n insufficient_data: \"insufficient_data\",\n error: \"error\",\n};\n\nexport const SCREEN_RECORDER_STATUS = {\n media_aborted: \"media_aborted\",\n permission_denied: \"permission_denied\",\n no_specified_media_found: \"no_specified_media_found\",\n media_in_use: \"media_in_use\",\n invalid_media_constraints: \"invalid_media_constraints\",\n no_chrome_flags_set: \"no_chrome_flags_set\",\n recorder_error: \"recorder_error\",\n idle: \"idle\",\n acquiring_media: \"acquiring_media\",\n media_acquired: \"media_acquired\",\n restarting: \"restarting\",\n recording: \"recording\",\n stopping: \"stopping\",\n stopped: \"stopped\",\n paused: \"paused\",\n};\n\nexport const SCREEN_RECORDER_ERROR = {\n MicPermissionDenied: \"mic_permission_denied\",\n AbortError: \"media_aborted\",\n NotAllowedError: \"permission_denied\",\n NotFoundError: \"no_specified_media_found\",\n NotReadableError: \"media_in_use\",\n OverconstrainedError: \"invalid_media_constraints\",\n TypeError: \"no_chrome_flags_set\",\n None: \"\",\n NoRecorder: \"recorder_error\",\n UnSupportedBrowser: \"unsupported_browser\",\n FailedToStart: \"failed_to_start\",\n InsufficientData: \"insufficient_data\",\n};\n\nexport const SCREEN_RECORDER_EVENT = {\n onStart: \"onStart\",\n onStop: \"onStop\",\n onDiscard: \"onDiscard\",\n onDataAvailable: \"onDataAvailable\",\n onDiscardDuringCountdown: \"onDiscardDuringCountdown\",\n onRestart: \"onRestart\",\n onReUpload: \"onReUpload\",\n onReUploadFromDisk: \"onReUploadFromDisk\",\n onPause: \"onPause\",\n onResume: \"onResume\",\n onCountdownStart: \"onCountdownStart\",\n onCountdown: \"onCountDown\",\n onCountdownEnd: \"onCountdownEnd\",\n onShareSelected: \"onShareSelected\",\n};\n\nexport const TOTAL_RETRIES = 15;\nexport const INITIAL_RETRY_DELAY = 4000;\nexport const MAX_RETRY_DELAY = 16000;\n\nexport const DEFAULT_RETRY_CONFIG = {\n retries: TOTAL_RETRIES,\n retryDelay: INITIAL_RETRY_DELAY,\n retryableStatuses: [],\n};\n\n// No need to localize this since it will only be used in the code\n// eslint-disable-next-line @bigbinary/neeto/hard-coded-strings-should-be-localized\nexport const NETWORK_ERROR = \"Network Error\";\nexport const TIMEOUT_ERROR = \"ECONNABORTED\";\n\nexport const HAS_CHROME_NAMESPACE = typeof chrome === \"object\";\n\nexport const IS_EXTENSION = HAS_CHROME_NAMESPACE && isNotNil(chrome.extension);\n\nexport const IS_SAFARI = platform.name === \"Safari\";\n\nexport const IS_SAFARI_EXTENSION = IS_SAFARI && IS_EXTENSION;\n\nexport const PERMISSIONS_HELP_DOC =\n \"https://neetorecordhelp.neetokb.com/p/a-10efcfd7\";\n\nexport const MIME_TYPE = {\n mp4: \"video/mp4\",\n webmH264: \"video/webm;codecs=h264\",\n};\n\nexport const START_RECORDING_SOUND =\n \"https://neeto-record-static-assets.s3.amazonaws.com/recording-start-sound-2.mp3\";\n\nexport const COUNTDOWN_TICK_SOUND =\n \"https://neeto-record-static-assets.s3.us-east-1.amazonaws.com/recording-tick-sound.mp3\";\n\nexport const STOP_RECORDING_DUE_TO_LIMIT_REACHED_SOUND =\n \"https://neeto-record-static-assets.s3.amazonaws.com/recording-end-sound.mp3\";\n\nexport const RECORDING_LIMIT_REACHED_WARNING_SOUND =\n \"https://neeto-record-static-assets.s3.amazonaws.com/recording-warning-sound.mp3\";\n\nexport const RECORDING_TIME_LIMIT_FREE_PLAN = 15 * ONE_MINUTE_IN_MILLISECONDS; // 15 minutes\nexport const RECORDING_TIME_LIMIT_PRO_PLAN = 2 * ONE_HOUR_IN_MILLISECONDS; // 2 hours\n\nexport const MIC_NOT_WORKING_ALERT_TIME = 15;\nexport const MIC_NOT_WORKING_SILENCE_TIMEOUT =\n MIC_NOT_WORKING_ALERT_TIME * 1000;\n","import { existsBy, isNotEmpty } from \"neetocist\";\nimport { isNil } from \"ramda\";\n\nimport { MIME_TYPE } from \"src/constants\";\n\nconst getUnSupportedConstraints = mediaType => {\n const supportedMediaConstraints =\n navigator.mediaDevices.getSupportedConstraints();\n\n return Object.keys(mediaType).filter(\n constraint => !supportedMediaConstraints[constraint]\n );\n};\n\nexport const checkConstraints = (...mediaTypes) => {\n if (isNil(navigator.mediaDevices)) {\n return;\n }\n\n const unSupportedConstraints = mediaTypes\n .filter(mediaType => typeof mediaType === \"object\")\n .map(getUnSupportedConstraints)\n .flat();\n\n if (isNotEmpty(unSupportedConstraints)) {\n logger.error(\n `The constraints ${unSupportedConstraints.join(\n \",\"\n )} doesn't support on this browser.`\n );\n }\n};\n\nexport const isStreamEnded = mediaStream =>\n existsBy({ readyState: \"ended\" }, mediaStream.getTracks());\n\nexport function getChromiumVersion() {\n const userAgent = navigator.userAgent;\n const match = userAgent.match(/Chrom(e|ium)\\/(([0-9][.]?)+)/);\n if (match) {\n return match[2];\n }\n\n return null;\n}\n\nexport function compareChromiumVersions(version1, version2) {\n const v1Parts = version1.split(\".\").map(Number);\n const v2Parts = version2.split(\".\").map(Number);\n\n for (let i = 0; i < Math.max(v1Parts.length, v2Parts.length); i++) {\n const v1Part = v1Parts[i] || 0;\n const v2Part = v2Parts[i] || 0;\n\n if (v1Part > v2Part) return 1;\n\n if (v1Part < v2Part) return -1;\n }\n\n return 0;\n}\n\nexport const getSupportedMimeType = () => MIME_TYPE.webmH264;\n\n// TODO: Uncomment this when mp4 is stable\n// export const getSupportedMimeType = fallback => {\n// const isWindows = platform.os?.family?.includes(\"Windows\");\n\n// if (MediaRecorder.isTypeSupported(MIME_TYPE.mp4) && !isWindows) {\n// if (platform.name === \"Safari\") {\n// return MIME_TYPE.mp4;\n// }\n\n// const chromiumVersion = getChromiumVersion();\n\n// if (isNil(chromiumVersion)) {\n// return MIME_TYPE.webmH264;\n// }\n\n// const isChromiumVersionSupported =\n// compareChromiumVersions(\n// chromiumVersion,\n// MINIMUM_CHROMIUM_VERSION_FOR_MP4\n// ) >= 0;\n\n// if (isChromiumVersionSupported) {\n// return MIME_TYPE.mp4;\n// }\n\n// return MIME_TYPE.webmH264;\n// } else if (MediaRecorder.isTypeSupported(MIME_TYPE.webmH264)) {\n// return MIME_TYPE.webmH264;\n// }\n\n// return fallback;\n// };\n\nexport const getMediaRecorderOptions = () => {\n const mimeType = getSupportedMimeType();\n\n if (!mimeType) return {};\n\n return { mimeType };\n};\n\nexport const addGainNode = (audioStream, gain = 1.5) => {\n const audioContext = new AudioContext();\n const audioStreamSource = audioContext.createMediaStreamSource(audioStream);\n\n const destinationStream = audioContext.createMediaStreamDestination();\n\n const gainNode = audioContext.createGain();\n gainNode.gain.value = gain;\n\n audioStreamSource.connect(gainNode);\n gainNode.connect(destinationStream);\n\n return destinationStream.stream;\n};\n","import {\n IS_EXTENSION,\n MIME_TYPE,\n ONE_MINUTE_IN_MILLISECONDS,\n ONE_SECOND_IN_MILLISECONDS,\n SCREEN_RECORDER_STATUS,\n UPLOAD_STATUS,\n} from \"neetomediarecorder/constants\";\nimport { screenRecorder } from \"neetomediarecorder/core\";\nimport platform from \"platform\";\n\nimport { ONE_HOUR_IN_MILLISECONDS } from \"src/constants\";\nimport { getSupportedMimeType } from \"src/core/screenRecorder/utils\";\n\nconst formatTime = time => Math.floor(time).toString().padStart(2, \"0\");\n\nexport const getTimeString = date => {\n const hours = formatTime(Math.floor(date / ONE_HOUR_IN_MILLISECONDS));\n const minutes = formatTime(\n (date % ONE_HOUR_IN_MILLISECONDS) / ONE_MINUTE_IN_MILLISECONDS\n );\n\n const seconds = formatTime(\n (date % ONE_MINUTE_IN_MILLISECONDS) / ONE_SECOND_IN_MILLISECONDS\n );\n\n if (hours > 0) {\n return `${hours}:${minutes}:${seconds}`;\n }\n\n return `${minutes}:${seconds}`;\n};\n\nexport const downloadRecordingBlob = (blob, name) => {\n const blobUrl = URL.createObjectURL(blob);\n\n const linkElement = document.createElement(\"a\");\n\n linkElement.href = blobUrl;\n linkElement.download = name;\n\n document.body.appendChild(linkElement);\n\n // Dispatch click event on the link\n // This is necessary as link.click() does not work on the latest firefox\n linkElement.dispatchEvent(\n new MouseEvent(\"click\", {\n bubbles: true,\n cancelable: true,\n view: window,\n })\n );\n\n document.body.removeChild(linkElement);\n URL.revokeObjectURL(blobUrl);\n};\n\nexport const hasRecordingDiscarded = ({ recorderStatus, uploadStatus }) =>\n recorderStatus === SCREEN_RECORDER_STATUS.stopped &&\n uploadStatus === UPLOAD_STATUS.aborting;\n\nexport const getRecorderTimeLimitInHumanFormat = timeInMs => {\n const minutes = Math.floor(timeInMs / (1000 * 60));\n const hours = Math.floor(minutes / 60);\n\n if (hours < 1) {\n if (minutes < 1) {\n return `${Math.floor(timeInMs / ONE_SECOND_IN_MILLISECONDS)} seconds`;\n }\n\n return `${minutes} minutes`;\n }\n\n return `${hours} hours`;\n};\n\nexport const getDeviceInfo = async (mimeType = getSupportedMimeType()) => {\n const isCameraEnabled = IS_EXTENSION\n ? (await chrome.storage.local.get(\"isCameraOn\"))?.isCameraOn\n : false;\n\n return {\n os: platform.os?.toString(),\n app: IS_EXTENSION\n ? `chrome extension v${chrome.runtime.getManifest().version}`\n : \"web\",\n browser: `${platform.name} v${platform.version}`,\n isCameraEnabled,\n isMicEnabled: !!screenRecorder.audioConfiguration,\n displaySurface: screenRecorder.displaySurface,\n mimeType,\n };\n};\n\nexport const isMp4Supported = (mimeType = getSupportedMimeType()) =>\n mimeType.includes(MIME_TYPE.mp4);\n","import axios from \"axios\";\n\nimport { isMp4Supported } from \"src/components/MediaRecorder/utils\";\n\nconst baseUrl = \"/api/v1/recordings\";\n\nconst create = payload =>\n axios.post(baseUrl, {\n recording: {\n ...payload,\n isMp4: isMp4Supported(payload.deviceInfo.mimeType),\n },\n });\n\nconst recordingsApi = { create };\n\nexport default recordingsApi;\n","import { useMutation } from \"@tanstack/react-query\";\n\nimport recordingsApi from \"src/apis/recordings\";\n\nexport const useCreateRecording = options =>\n useMutation({ mutationFn: recordingsApi.create, ...options });\n","import withT from \"neetocommons/react-utils/withT\";\nimport { Typography, Spinner } from \"neetoui\";\n\nconst AbortUpload = withT(({ t }) => (\n <div className=\"flex h-screen w-full flex-col items-center justify-center\">\n <div className=\"flex h-full w-full flex-col items-center justify-start py-10 xl:py-14 2xl:py-20\">\n <div className=\"w-full space-y-2 text-center\">\n <Typography\n className=\"select-none\"\n data-cy=\"recorder-discarding-recording-message\"\n style=\"h2\"\n >\n {t(\"neetoMediaRecorder.record.discardingVideo\")}\n <Spinner className=\"ml-3\" />\n </Typography>\n <Typography\n className=\"select-none\"\n data-cy=\"recorder-do-not-leave-page-message\"\n >\n {t(\"neetoMediaRecorder.record.doNotLeaveThePage\")}\n </Typography>\n </div>\n </div>\n </div>\n));\n\nexport default AbortUpload;\n","function _objectWithoutPropertiesLoose(r, e) {\n if (null == r) return {};\n var t = {};\n for (var n in r) if ({}.hasOwnProperty.call(r, n)) {\n if (-1 !== e.indexOf(n)) continue;\n t[n] = r[n];\n }\n return t;\n}\nexport { _objectWithoutPropertiesLoose as default };","import objectWithoutPropertiesLoose from \"./objectWithoutPropertiesLoose.js\";\nfunction _objectWithoutProperties(e, t) {\n if (null == e) return {};\n var o,\n r,\n i = objectWithoutPropertiesLoose(e, t);\n if (Object.getOwnPropertySymbols) {\n var n = Object.getOwnPropertySymbols(e);\n for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]);\n }\n return i;\n}\nexport { _objectWithoutProperties as default };","const PlayIcon = ({ size = 24, ...other }) => (\n <svg\n height={size}\n viewBox=\"0 0 20 20\"\n width={size}\n xmlns=\"http://www.w3.org/2000/svg\"\n {...other}\n >\n <path\n d=\"M4 18a1 1 0 01-1-1V3a1 1 0 011.5-.86l12 7a1 1 0 010 1.72l-12 7A1 1 0 014 18zM5 4.74v10.52L14 10z\"\n fill=\"currentColor\"\n />\n </svg>\n);\n\nconst StopIcon = ({ size = 24, ...other }) => (\n <svg\n height={size}\n viewBox=\"0 0 64 64\"\n width={size}\n xmlns=\"http://www.w3.org/2000/svg\"\n {...other}\n >\n <path\n d=\"M10.667 16A5.333 5.333 0 0116 10.667h32A5.333 5.333 0 0153.333 16v32A5.333 5.333 0 0148 53.333H16A5.333 5.333 0 0110.667 48V16z\"\n fill=\"rgb(var(--neeto-ui-error-500))\"\n />\n </svg>\n);\n\nconst RestartIcon = ({ size = 24, ...other }) => (\n <svg\n height={size}\n viewBox=\"0 0 64 64\"\n width={size}\n xmlns=\"http://www.w3.org/2000/svg\"\n {...other}\n >\n <path\n clipRule=\"evenodd\"\n d=\"M21.333 21.333H10.667A2.667 2.667 0 018 18.667V8a2.667 2.667 0 015.333 0v4.956A26.58 26.58 0 0132 5.333c14.727 0 26.666 11.94 26.666 26.667 0 14.728-11.939 26.667-26.666 26.667-13.83 0-25.2-10.527-26.536-24.004C5.32 33.197 6.527 32 8 32c1.472 0 2.649 1.2 2.83 2.661C12.14 45.188 21.12 53.334 32 53.334c11.782 0 21.333-9.55 21.333-21.333 0-11.782-9.551-21.333-21.333-21.333-5.41 0-10.35 2.014-14.111 5.333h3.444a2.667 2.667 0 010 5.333z\"\n fill=\"currentColor\"\n fillRule=\"evenodd\"\n />\n </svg>\n);\n\nexport { PlayIcon, StopIcon, RestartIcon };\n","import { screenRecorder } from \"neetomediarecorder/core\";\n\nconst useRecorderStatus = () => {\n const { useRecorderStore } = screenRecorder;\n\n const { status } = useRecorderStore.pick();\n const isStatus = (...statuses) => statuses.includes(status);\n\n return { isStatus, status };\n};\n\nexport default useRecorderStatus;\n","import classNames from \"classnames\";\nimport { isNotEmpty } from \"neetocist\";\nimport { Computer, Pause, Unlock, Delete } from \"neetoicons\";\nimport {\n SCREEN_RECORDER_ERROR,\n SCREEN_RECORDER_STATUS,\n IS_SAFARI_EXTENSION,\n} from \"neetomediarecorder/constants\";\nimport { screenRecorder } from \"neetomediarecorder/core\";\nimport { Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { PlayIcon, StopIcon, RestartIcon } from \"components/commons/Icons\";\n\nimport useRecorderStatus from \"./hooks/useRecorderStatus\";\n\nconst Controls = ({\n className = \"\",\n setIsRestartAlertOpen,\n setIsDiscardAlertOpen,\n onDiscard,\n}) => {\n const { t } = useTranslation();\n\n const {\n startRecording,\n pauseRecording,\n stopRecording,\n resumeRecording,\n useRecorderStore,\n setAudioConfiguration,\n } = screenRecorder;\n\n const { error } = useRecorderStore.pick();\n const { isStatus } = useRecorderStatus();\n\n const hasRecordingStarted = isStatus(\n SCREEN_RECORDER_STATUS.recording,\n SCREEN_RECORDER_STATUS.paused\n );\n\n const shouldShowSelectScreenButton =\n error === SCREEN_RECORDER_ERROR.NotAllowedError ||\n (IS_SAFARI_EXTENSION && isStatus(SCREEN_RECORDER_STATUS.idle));\n\n const shouldShowGrantMicPermissionButton =\n error === SCREEN_RECORDER_ERROR.MicPermissionDenied;\n\n return (\n <div\n className={classNames(\"flex flex-row items-center gap-3 p-2\", {\n \"neeto-ui-rounded-lg neeto-ui-border-gray-200 border-2\":\n hasRecordingStarted,\n [className]: isNotEmpty(classNames),\n })}\n >\n {shouldShowSelectScreenButton && (\n <div className=\"mt-4 flex gap-4\">\n <Button\n className=\"flex-shrink-0\"\n data-cy=\"media-recorder-record-button\"\n icon={() => <Computer size={28} />}\n label={t(\"neetoMediaRecorder.record.selectScreen\")}\n loading={isStatus(SCREEN_RECORDER_STATUS.acquiring_media)}\n size=\"large\"\n onClick={startRecording}\n />\n <Button\n className=\"flex-shrink-0\"\n data-cy=\"media-recorder-discard-button\"\n icon={() => <Delete size={28} />}\n label={t(\"neetoMediaRecorder.record.discard\")}\n size=\"large\"\n style=\"danger\"\n onClick={onDiscard}\n />\n </div>\n )}\n {shouldShowGrantMicPermissionButton && (\n <div className=\"mt-4 flex gap-4\">\n <Button\n className=\"flex-shrink-0\"\n data-cy=\"media-recorder-no-audio-button\"\n label={t(\"neetoMediaRecorder.record.iDontNeedAudio\")}\n size=\"large\"\n style=\"danger\"\n onClick={() => {\n setAudioConfiguration(false);\n useRecorderStore.setState({ error: \"\" });\n }}\n />\n <Button\n className=\"flex-shrink-0\"\n data-cy=\"media-recorder-grant-microphone-permission-button\"\n icon={Unlock}\n iconSize={28}\n label={t(\"neetoMediaRecorder.record.grantMicPermission\")}\n size=\"large\"\n onClick={startRecording}\n />\n </div>\n )}\n {hasRecordingStarted && (\n <div className=\"flex items-center gap-3\">\n <Button\n className=\"nrec-done-button flex-shrink-0\"\n data-cy=\"media-recorder-stop-button\"\n icon={() => <StopIcon size={28} />}\n label={t(\"neetoMediaRecorder.record.done\")}\n size=\"large\"\n style=\"danger-text\"\n onClick={stopRecording}\n />\n <div className=\"neeto-ui-bg-gray-200 h-10 w-0.5\" />\n </div>\n )}\n {isStatus(SCREEN_RECORDER_STATUS.recording) && (\n <Button\n className=\"flex-shrink-0\"\n data-cy=\"media-recorder-pause-button\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMediaRecorder.record.pause\"),\n position: \"top\",\n }}\n onClick={pauseRecording}\n >\n <Pause className=\"nr-control-button__icon--neeto\" size={28} />\n </Button>\n )}\n {isStatus(SCREEN_RECORDER_STATUS.paused) && (\n <Button\n className=\"flex-shrink-0\"\n data-cy=\"media-recorder-play-button\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMediaRecorder.record.resume\"),\n position: \"top\",\n }}\n onClick={resumeRecording}\n >\n <PlayIcon size={28} />\n </Button>\n )}\n {hasRecordingStarted && (\n <div className=\"flex items-center gap-3\">\n <Button\n className=\"flex-shrink-0\"\n data-cy=\"media-recorder-restart-button\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMediaRecorder.record.restart\"),\n position: \"top\",\n }}\n onClick={() => setIsRestartAlertOpen(true)}\n >\n <RestartIcon size={28} />\n </Button>\n <Button\n className=\"flex-shrink-0\"\n data-cy=\"media-recorder-discard-button\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMediaRecorder.record.discard\"),\n position: \"top\",\n }}\n onClick={() => setIsDiscardAlertOpen(true)}\n >\n <Delete className=\"nr-control-button__icon--neeto\" size={28} />\n </Button>\n </div>\n )}\n </div>\n );\n};\n\nexport default Controls;\n","import { useState, useEffect, useRef, useCallback } from \"react\";\n\nimport { noop } from \"neetocist\";\nimport {\n SCREEN_RECORDER_EVENT,\n MIC_NOT_WORKING_SILENCE_TIMEOUT,\n} from \"neetomediarecorder/constants\";\nimport { screenRecorder } from \"neetomediarecorder/core\";\n\nconst getAnalyser = () => {\n const stream = screenRecorder.getAudioStream?.();\n if (!stream) return null;\n\n const ctx = new (window.AudioContext || window.webkitAudioContext)();\n const source = ctx.createMediaStreamSource(stream);\n const analyser = ctx.createAnalyser();\n analyser.fftSize = 2048;\n source.connect(analyser);\n\n const data = new Uint8Array(analyser.fftSize);\n\n return { ctx, source, analyser, data };\n};\n\nconst hasChrome =\n typeof chrome !== \"undefined\" && chrome.runtime && chrome.runtime.onMessage;\n\nconst useAudioIsCapturing = ({ isMicOn }) => {\n const [hasAudio, setHasAudio] = useState(true);\n const [disable, setDisable] = useState(false);\n const [timerStarted, setTimerStarted] = useState(false);\n\n const timerRef = useRef(null);\n const remainingRef = useRef(MIC_NOT_WORKING_SILENCE_TIMEOUT);\n const startedAtRef = useRef(null);\n\n const clearTimer = () => {\n if (timerRef.current) clearTimeout(timerRef.current);\n timerRef.current = null;\n };\n\n const armTimer = () => {\n if (timerRef.current || !timerStarted) return;\n logger.info(\"useAudioIsCapturing new timer\");\n startedAtRef.current = Date.now();\n timerRef.current = setTimeout(\n () => setHasAudio(false),\n remainingRef.current\n );\n };\n\n const pauseTimer = () => {\n if (!timerRef.current) return;\n const elapsed = Date.now() - startedAtRef.current;\n remainingRef.current = Math.max(0, remainingRef.current - elapsed);\n clearTimer();\n };\n\n const resumeTimer = () => {\n if (timerRef.current || !timerStarted || disable) return;\n logger.info(\"useAudioIsCapturing resumeTimer\");\n startedAtRef.current = Date.now();\n timerRef.current = setTimeout(\n () => setHasAudio(false),\n remainingRef.current\n );\n };\n\n const reset = useCallback(() => {\n logger.info(\"useAudioIsCapturing reset\");\n clearTimer();\n remainingRef.current = MIC_NOT_WORKING_SILENCE_TIMEOUT;\n setTimerStarted(false);\n setHasAudio(true);\n }, []);\n\n // Listen for Chrome extension messages\n useEffect(() => {\n const handleMessage = message => {\n if (!(message.type === \"IGNORE_AUDIO_NOT_CAPTURING\")) return;\n logger.info(\"useAudioIsCapturing -> IGNORE_AUDIO_NOT_CAPTURING received\");\n setDisable(true);\n };\n\n // Check if we're in a Chrome extension context\n if (hasChrome) {\n chrome.runtime.onMessage.addListener(handleMessage);\n }\n\n return () => {\n if (hasChrome) {\n chrome?.runtime?.onMessage?.removeListener(handleMessage);\n }\n };\n }, []);\n\n useEffect(() => {\n if (!isMicOn || !timerStarted || disable) return noop;\n\n let analyserObj = null;\n let rafId;\n\n const loop = () => {\n if (!analyserObj) analyserObj = getAnalyser();\n // if no stream yet or analyser failed, treat as silence\n const isSilent = !analyserObj\n ? true\n : (() => {\n analyserObj.analyser.getByteTimeDomainData(analyserObj.data);\n\n return analyserObj.data.every(v => v === 128); // absolute silence\n })();\n\n if (isSilent) {\n armTimer();\n } else {\n clearTimer();\n remainingRef.current = MIC_NOT_WORKING_SILENCE_TIMEOUT;\n if (!hasAudio) setHasAudio(true);\n }\n\n rafId = requestAnimationFrame(loop);\n };\n\n loop();\n\n return () => {\n cancelAnimationFrame(rafId);\n clearTimer();\n if (analyserObj) {\n analyserObj.source.disconnect();\n analyserObj.ctx.close();\n }\n };\n }, [timerStarted, hasAudio, isMicOn, disable]);\n\n useEffect(() => {\n if (!isMicOn) return noop;\n\n const callbacks = {\n [SCREEN_RECORDER_EVENT.onStart]: () => {\n reset();\n setTimerStarted(true);\n armTimer();\n },\n [SCREEN_RECORDER_EVENT.onRestart]: () => {\n reset();\n setTimerStarted(true);\n armTimer();\n },\n [SCREEN_RECORDER_EVENT.onResume]: () => {\n setTimerStarted(true);\n resumeTimer();\n },\n [SCREEN_RECORDER_EVENT.onPause]: () => {\n pauseTimer();\n },\n [SCREEN_RECORDER_EVENT.onStop]: () => {\n clearTimer();\n reset();\n },\n \"disable-mic-not-working-warning\": () => {\n logger.info(\"useAudioIsCapturing -> disable-mic-not-working-warning\");\n setDisable(true);\n setTimeout(() => {\n clearTimer();\n reset();\n }, 500);\n },\n };\n // start straight a way.\n callbacks[SCREEN_RECORDER_EVENT.onStart]();\n\n Object.entries(callbacks).forEach(([ev, fn]) =>\n screenRecorder.addCallback(ev, fn)\n );\n\n return () => {\n Object.entries(callbacks).forEach(([ev, fn]) =>\n screenRecorder.removeCallback(ev, fn)\n );\n };\n }, [isMicOn, reset]);\n\n return { hasAudio, reset };\n};\n\nexport default useAudioIsCapturing;\n","import { useEffect } from \"react\";\n\nimport { noop } from \"neetocist\";\nimport {\n SCREEN_RECORDER_ERROR,\n SCREEN_RECORDER_STATUS,\n IS_SAFARI_EXTENSION,\n} from \"neetomediarecorder/constants\";\nimport { screenRecorder } from \"neetomediarecorder/core\";\n\nimport useRecorderStatus from \"./useRecorderStatus\";\n\nconst useHandleErrors = ({ error, recorderStatus }) => {\n const { isStatus: isRecorderStatus } = useRecorderStatus();\n\n useEffect(() => {\n if (error === SCREEN_RECORDER_ERROR.UnSupportedBrowser) return noop;\n\n if (error === SCREEN_RECORDER_ERROR.FailedToStart) return noop;\n\n if (\n !isRecorderStatus(SCREEN_RECORDER_STATUS.idle) ||\n error === SCREEN_RECORDER_ERROR.NotAllowedError ||\n error === SCREEN_RECORDER_ERROR.MicPermissionDenied ||\n IS_SAFARI_EXTENSION\n ) {\n if (error !== SCREEN_RECORDER_ERROR.MicPermissionDenied) return noop;\n\n let cleanupFunction = noop;\n\n window.navigator.permissions\n .query({ name: \"microphone\" })\n // eslint-disable-next-line promise/prefer-await-to-then\n .then(micPermission => {\n const handleChange = () => {\n if (micPermission.state === \"granted\") {\n screenRecorder.startRecording();\n }\n };\n micPermission.addEventListener(\"change\", handleChange);\n\n cleanupFunction = () =>\n micPermission.removeEventListener(\"change\", handleChange);\n });\n\n return () => {\n cleanupFunction();\n };\n }\n screenRecorder.startRecording();\n\n return noop;\n }, [recorderStatus, error]);\n};\n\nexport default useHandleErrors;\n","import { screenRecorder } from \"neetomediarecorder/core\";\nimport { Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { getTimeString } from \"./utils\";\n\nconst Timer = () => {\n const { t } = useTranslation();\n const { useRecorderStore } = screenRecorder;\n const { elapsedTime } = useRecorderStore.pick();\n\n return (\n <div\n className=\"mb-4 flex flex-col items-center justify-center\"\n data-cy=\"recorder-timer-wrapper\"\n >\n <Typography\n className=\"neeto-ui-text-4xl mb-3 flex justify-center\"\n data-cy=\"recorder-timer-elapsed-time\"\n weight=\"semibold\"\n >\n {getTimeString(elapsedTime)}\n </Typography>\n <Typography\n className=\"mb-2\"\n data-cy=\"recorder-recording-in-progress-message\"\n style=\"h3\"\n >\n {t(\"neetoMediaRecorder.record.inProgress\")}\n </Typography>\n <Typography data-cy=\"recorder-do-not-leave-page-message\" style=\"body2\">\n {t(\"neetoMediaRecorder.record.doNotLeaveThePage\")}\n </Typography>\n </div>\n );\n};\n\nexport default Timer;\n","import withT from \"neetocommons/react-utils/withT\";\nimport { Callout } from \"neetoui\";\n\nconst UnSupportedBrowser = withT(({ t }) => (\n <div className=\"flex h-screen w-full items-center justify-center\">\n <Callout\n className=\"p-5\"\n data-cy=\"recorder-unsupported-browser-callout\"\n style=\"danger\"\n >\n {t(\"neetoMediaRecorder.unsupportedBrowser\")}\n </Callout>\n </div>\n));\n\nexport default UnSupportedBrowser;\n","export const sleep = delay =>\n new Promise(resolve => setTimeout(resolve, delay));\n\nexport const generatePublicUrl = (\n recordingId,\n baseURL = window.location.origin\n) => `${baseURL}/watch/${recordingId}`;\n","import { IS_EXTENSION } from \"neetomediarecorder/constants\";\nimport { Button, Callout, Typography } from \"neetoui\";\nimport { Trans } from \"react-i18next\";\n\nconst UseDesktopAppCallout = () => (\n <Callout className=\"mb-3\" style=\"info\">\n <Typography component=\"span\" style=\"h4\">\n <Trans\n i18nKey=\"neetoMediaRecorder.useDesktopAppCallOut\"\n values={{ appName: IS_EXTENSION ? \"chrome extension\" : \"web\" }}\n components={{\n Download: (\n <Button\n href=\"https://neeto.com/neetorecord/download\"\n size=\"large\"\n style=\"link\"\n />\n ),\n }}\n />\n </Typography>\n </Callout>\n);\n\nexport default UseDesktopAppCallout;\n","import { useEffect, useState } from \"react\";\n\nimport { copyToClipboard } from \"neetocommons/utils/general\";\nimport { Close, Download, Copy, Refresh } from \"neetoicons\";\nimport { screenRecorder } from \"neetomediarecorder/core\";\nimport CopyToClipboardButton from \"neetomolecules/CopyToClipboardButton\";\nimport { Alert, Button, Typography, ProgressBar } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { IS_EXTENSION, UPLOAD_STATUS } from \"src/constants\";\nimport { generatePublicUrl } from \"utils\";\n\nimport UseDesktopAppCallout from \"./UseDesktopAppCallout\";\nimport { downloadRecordingBlob, isMp4Supported } from \"./utils\";\n\nconst UploadingInProgress = ({\n recording,\n uploadProgress,\n uploadStatus,\n onDiscard,\n onRetryUpload,\n isRetryUpload,\n}) => {\n const [baseURL, setBaseURL] = useState(\"\");\n const [isDiscardAlertOpen, setIsDiscardAlertOpen] = useState(false);\n\n const { t } = useTranslation();\n\n useEffect(() => {\n const fetchBaseURL = async () => {\n if (!IS_EXTENSION) {\n setBaseURL(window.location.origin);\n\n return;\n }\n\n // eslint-disable-next-line no-undef\n const { baseURL } = await chrome.storage.local.get(\"baseURL\");\n setBaseURL(baseURL);\n };\n\n fetchBaseURL();\n }, []);\n\n useEffect(() => {\n if (!window.document.hasFocus() || !recording.id || isEmpty(baseURL)) {\n return;\n }\n\n copyToClipboard(generatePublicUrl(recording.id, baseURL), {\n message: t(\"neetoMediaRecorder.record.copyToClipboardToastrMessage\"),\n });\n }, [recording.id, baseURL]);\n\n const handleRecordingBlobDownload = () => {\n downloadRecordingBlob(\n screenRecorder.getWebmMediaBlob(),\n recording.title ?? \"NeetoRecord-recording\"\n );\n };\n\n return (\n <div className=\"flex h-screen w-full flex-col items-center justify-center\">\n <div className=\"flex h-full w-full flex-col items-center justify-start py-14 lg:py-20 xl:py-28 2xl:py-36\">\n <UseDesktopAppCallout />\n <div className=\"w-full pb-6 text-center\">\n <Typography\n className=\"select-none pb-6\"\n data-cy=\"please-dont-close-this-tab\"\n style=\"h1\"\n >\n {t(\"neetoMediaRecorder.record.pleaseDontCloseThisTab\")}\n </Typography>\n <Typography\n className=\"select-none pb-3\"\n data-cy=\"recorder-uploading-recording-message\"\n style=\"h2\"\n weight=\"normal\"\n >\n {t(\"neetoMediaRecorder.record.uploadingRecording\")}\n </Typography>\n <div className=\"nrec-media-upload-progress pb-3\">\n {uploadStatus === UPLOAD_STATUS.error ? (\n <div className=\"nrec-media-upload-error\">\n {t(\"neetoMediaRecorder.common.uploadError\")}\n </div>\n ) : (\n <ProgressBar progressPercentage={uploadProgress} />\n )}\n </div>\n <Typography\n className=\"select-none\"\n data-cy=\"recorder-do-not-leave-page-message\"\n style=\"body2\"\n >\n {t(\"neetoMediaRecorder.record.copyLinkDescription\")}\n </Typography>\n </div>\n <div className=\"flex flex-wrap items-center justify-center gap-3\">\n <CopyToClipboardButton\n data-cy=\"recorder-copy-link-button\"\n icon={Copy}\n label={t(\"neetoMediaRecorder.record.copyToClipboard\")}\n style=\"tertiary\"\n value={generatePublicUrl(recording.id, baseURL)}\n />\n <Button\n data-cy=\"recorder-download-webm-button\"\n icon={Download}\n style=\"tertiary\"\n label={\n isMp4Supported()\n ? t(\"neetoMediaRecorder.record.downloadMp4\")\n : t(\"neetoMediaRecorder.record.downloadWebm\")\n }\n onClick={handleRecordingBlobDownload}\n />\n <Button\n data-cy=\"recorder-retry-upload-button\"\n disabled={isRetryUpload}\n icon={Refresh}\n label={t(\"neetoMediaRecorder.record.retry\")}\n style=\"tertiary\"\n onClick={onRetryUpload}\n />\n <Button\n data-cy=\"recorder-discard-recording-button\"\n icon={Close}\n label={t(\"neetoMediaRecorder.record.discardRecording\")}\n style=\"tertiary\"\n onClick={() => setIsDiscardAlertOpen(true)}\n />\n </div>\n </div>\n <Alert\n isOpen={isDiscardAlertOpen}\n message={t(\"neetoMediaRecorder.record.discardConfirmation.message\")}\n submitButtonLabel={t(\"neetoMediaRecorder.record.discard\")}\n title={t(\"neetoMediaRecorder.record.discardConfirmation.title\")}\n onClose={() => setIsDiscardAlertOpen(false)}\n onSubmit={onDiscard}\n />\n </div>\n );\n};\n\nexport default UploadingInProgress;\n","const AllowMicAccess = () => (\n <svg\n fill=\"none\"\n height=\"255\"\n viewBox=\"0 0 400 255\"\n width=\"400\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlnsXlink=\"http://www.w3.org/1999/xlink\"\n >\n <g clipPath=\"url(#clip0_5_55)\">\n <rect fill=\"#FBFBFB\" height=\"253.968\" rx=\"15.873\" width=\"400\" y=\"0.286\" />\n <g clipPath=\"url(#clip1_5_55)\">\n <mask fill=\"#fff\" id=\"path-2-inside-1_5_55\">\n <path d=\"M0 28.857h346.032c14.026 0 25.397 11.37 25.397 25.397v200H0V28.857z\" />\n </mask>\n <path\n d=\"M0 28.857h346.032c14.026 0 25.397 11.37 25.397 25.397v200H0V28.857z\"\n fill=\"#FBFBFB\"\n />\n <path d=\"M0 28.857H371.429V92.34899999999999H0z\" fill=\"#DFE1E6\" />\n <path\n d=\"M0 0H371.429V115.873H0z\"\n fill=\"#F1F3F4\"\n transform=\"translate(0 92.35)\"\n />\n <path\n d=\"M0 108.222h202.381c23.231 0 42.063 18.833 42.063 42.064s-18.832 42.063-42.063 42.063H0v-84.127z\"\n fill=\"#fff\"\n />\n <path\n d=\"M180.714 157.151l5-3.016 5 3.055-1.309-5.714 4.405-3.809-5.794-.516-2.302-5.397-2.301 5.357-5.794.516 4.405 3.849-1.31 5.675zm-4.801 6.627l2.579-11.151-8.651-7.5 11.429-.992 4.444-10.516 4.445 10.516 11.428.992-8.65 7.5 2.579 11.151-9.802-5.913-9.801 5.913z\"\n fill=\"#626365\"\n />\n <path\n d=\"M279.365 124.095H330.159V174.889H279.365z\"\n fill=\"url(#pattern0_5_55)\"\n opacity=\"0.5\"\n />\n <path\n d=\"M122.047 115.246L122.047 82.963\"\n stroke=\"#4558F9\"\n strokeWidth=\"1.575\"\n />\n <circle cx=\"122.047\" cy=\"121.546\" fill=\"#4558F9\" r=\"6.299\" />\n <circle\n cx=\"122.047\"\n cy=\"121.546\"\n r=\"7.48\"\n stroke=\"#4558F9\"\n strokeOpacity=\"0.27\"\n strokeWidth=\"2.362\"\n />\n <path\n d=\"M44.403 67.892h-2.2l4.945-13.744h2.396l4.946 13.744h-2.202l-3.885-11.247h-.108l-3.892 11.247zm.37-5.382h7.14v1.745h-7.14V62.51zm13.547-8.362v13.744h-2.007V54.148h2.007zm4.706 0v13.744h-2.007V54.148h2.007zM70.067 68.1c-.966 0-1.81-.221-2.53-.664-.72-.443-1.28-1.063-1.678-1.86-.398-.796-.597-1.726-.597-2.79 0-1.07.2-2.005.597-2.806.398-.8.958-1.423 1.678-1.866.72-.442 1.564-.664 2.53-.664.966 0 1.81.221 2.53.664.72.443 1.28 1.065 1.678 1.866.398.8.597 1.736.597 2.805 0 1.065-.2 1.995-.597 2.792-.399.796-.958 1.416-1.678 1.859-.72.443-1.564.664-2.53.664zm.007-1.684c.626 0 1.145-.166 1.557-.497.411-.331.715-.772.912-1.322.202-.55.302-1.156.302-1.819 0-.657-.1-1.261-.302-1.811-.197-.555-.5-1-.912-1.336-.412-.336-.93-.503-1.557-.503-.631 0-1.154.167-1.57.503-.412.336-.719.78-.92 1.336a5.346 5.346 0 00-.295 1.811c0 .663.098 1.269.295 1.819.201.55.508.991.92 1.322.415.331.939.497 1.57.497zm8.959 1.476l-3.034-10.308h2.074l2.02 7.57h.1l2.027-7.57h2.074l2.013 7.536h.1l2.007-7.536h2.074l-3.027 10.308h-2.046L83.32 60.45h-.154l-2.094 7.442h-2.04zm21.36.228c-.653 0-1.244-.12-1.772-.362a2.985 2.985 0 01-1.254-1.067c-.305-.466-.457-1.036-.457-1.712 0-.581.112-1.06.336-1.436.224-.375.526-.673.906-.892a4.73 4.73 0 011.275-.497c.47-.112.948-.197 1.436-.255l1.503-.174c.385-.05.665-.128.839-.235.174-.108.262-.282.262-.523v-.047c0-.587-.166-1.04-.497-1.363-.326-.322-.814-.483-1.463-.483-.675 0-1.208.15-1.597.45-.385.295-.651.624-.799.986l-1.885-.43c.223-.626.55-1.131.98-1.516.433-.39.932-.671 1.496-.846a5.843 5.843 0 011.778-.268c.412 0 .848.05 1.309.148.465.094.899.268 1.302.523.407.255.74.62 1 1.094.259.47.389 1.08.389 1.832v6.845h-1.96v-1.41h-.08c-.13.26-.324.515-.584.766a3.1 3.1 0 01-1 .624c-.407.165-.895.248-1.463.248zm.436-1.61c.555 0 1.029-.11 1.423-.33.398-.219.7-.505.906-.858.21-.358.315-.74.315-1.148v-1.329c-.071.072-.21.14-.416.202-.201.058-.431.11-.691.154-.259.04-.512.078-.758.114a90.22 90.22 0 00-.618.08c-.389.05-.744.133-1.067.25a1.832 1.832 0 00-.765.502c-.188.215-.282.501-.282.86 0 .496.184.872.55 1.127.368.25.835.376 1.403.376zm11.665 1.59c-.997 0-1.856-.226-2.577-.678a4.486 4.486 0 01-1.65-1.885c-.385-.801-.578-1.718-.578-2.752 0-1.047.197-1.97.591-2.771.394-.806.948-1.434 1.664-1.886.716-.452 1.559-.678 2.53-.678.783 0 1.481.145 2.094.436a3.756 3.756 0 011.483 1.208c.38.52.606 1.125.678 1.819h-1.953a2.335 2.335 0 00-.738-1.248c-.38-.35-.89-.524-1.53-.524-.559 0-1.049.148-1.47.443-.416.29-.74.707-.973 1.248-.233.537-.349 1.172-.349 1.906 0 .752.114 1.4.342 1.946.229.546.551.969.967 1.269.42.3.915.45 1.483.45.38 0 .725-.07 1.033-.209.313-.143.575-.347.785-.61.215-.264.365-.582.45-.953h1.953a3.802 3.802 0 01-.651 1.785 3.745 3.745 0 01-1.456 1.234c-.604.3-1.313.45-2.128.45zm10.723 0c-.998 0-1.857-.226-2.577-.678a4.489 4.489 0 01-1.651-1.885c-.385-.801-.577-1.718-.577-2.752 0-1.047.197-1.97.59-2.771.394-.806.949-1.434 1.665-1.886.715-.452 1.559-.678 2.529-.678.783 0 1.481.145 2.094.436a3.75 3.75 0 011.483 1.208c.381.52.607 1.125.678 1.819h-1.953a2.335 2.335 0 00-.738-1.248c-.38-.35-.89-.524-1.53-.524-.559 0-1.049.148-1.47.443-.416.29-.74.707-.973 1.248-.232.537-.349 1.172-.349 1.906 0 .752.114 1.4.343 1.946.228.546.55.969.966 1.269.42.3.915.45 1.483.45.38 0 .725-.07 1.034-.209.313-.143.574-.347.785-.61.214-.264.364-.582.449-.953h1.953a3.781 3.781 0 01-.651 1.785 3.745 3.745 0 01-1.456 1.234c-.604.3-1.313.45-2.127.45zm10.822 0c-1.015 0-1.89-.217-2.623-.65a4.417 4.417 0 01-1.692-1.846c-.393-.797-.59-1.73-.59-2.799 0-1.056.197-1.986.59-2.791.399-.806.953-1.434 1.665-1.886.716-.452 1.552-.678 2.51-.678.581 0 1.145.096 1.691.289a4.1 4.1 0 011.469.906c.434.411.777.946 1.027 1.603.251.654.376 1.448.376 2.383v.711h-8.194V61.84h6.228c0-.528-.108-.996-.322-1.403a2.44 2.44 0 00-.906-.973c-.385-.237-.837-.355-1.356-.355-.564 0-1.056.138-1.476.416-.416.273-.739.63-.967 1.073a3.108 3.108 0 00-.335 1.43V63.2c0 .69.12 1.275.362 1.758.246.484.588.853 1.027 1.108.438.25.951.376 1.537.376.38 0 .727-.054 1.04-.162.313-.111.584-.277.812-.496.228-.22.402-.49.523-.812l1.899.342a3.444 3.444 0 01-.818 1.47c-.39.416-.879.74-1.47.973-.586.228-1.255.342-2.007.342zm14.373-8l-1.818.323a2.145 2.145 0 00-.363-.665 1.793 1.793 0 00-.657-.516c-.278-.134-.624-.201-1.041-.201-.568 0-1.042.127-1.422.382-.38.25-.571.575-.571.973 0 .344.128.622.383.832.255.21.667.383 1.235.517l1.637.376c.949.219 1.655.557 2.121 1.013.465.456.698 1.05.698 1.778 0 .618-.179 1.168-.537 1.651-.354.479-.848.855-1.483 1.128-.631.273-1.363.409-2.195.409-1.154 0-2.096-.246-2.825-.738-.729-.497-1.177-1.201-1.342-2.114l1.939-.295c.121.505.369.888.745 1.147.376.255.866.383 1.47.383.658 0 1.183-.137 1.577-.41.394-.277.59-.615.59-1.013 0-.322-.12-.593-.362-.812-.237-.22-.602-.385-1.094-.497l-1.745-.382c-.961-.22-1.673-.568-2.134-1.047-.456-.479-.684-1.085-.684-1.819 0-.608.17-1.14.51-1.597.34-.456.81-.812 1.409-1.067.6-.26 1.286-.389 2.06-.389 1.114 0 1.991.242 2.631.725.64.479 1.063 1.12 1.268 1.926zm10.132 0l-1.819.323a2.142 2.142 0 00-.362-.665 1.788 1.788 0 00-.658-.516c-.277-.134-.624-.201-1.04-.201-.568 0-1.042.127-1.423.382-.38.25-.57.575-.57.973 0 .344.128.622.383.832.255.21.666.383 1.234.517l1.638.376c.948.219 1.655.557 2.12 1.013.466.456.698 1.05.698 1.778 0 .618-.179 1.168-.537 1.651-.353.479-.847.855-1.483 1.128-.63.273-1.362.409-2.194.409-1.154 0-2.096-.246-2.825-.738-.73-.497-1.177-1.201-1.342-2.114l1.939-.295c.121.505.369.888.745 1.147.376.255.866.383 1.469.383.658 0 1.184-.137 1.578-.41.393-.277.59-.615.59-1.013 0-.322-.121-.593-.362-.812-.237-.22-.602-.385-1.094-.497l-1.745-.382c-.962-.22-1.673-.568-2.134-1.047-.456-.479-.685-1.085-.685-1.819 0-.608.171-1.14.511-1.597.34-.456.809-.812 1.409-1.067.599-.26 1.286-.389 2.06-.389 1.114 0 1.991.242 2.631.725.639.479 1.062 1.12 1.268 1.926zm9.415 1.672v6.12h-2.006V54.148h1.979v5.114h.128a2.962 2.962 0 011.107-1.322c.497-.327 1.146-.49 1.946-.49.707 0 1.325.145 1.853.436.532.291.943.725 1.234 1.302.296.573.443 1.289.443 2.148v6.556h-2.006v-6.315c0-.756-.195-1.342-.584-1.758-.389-.42-.931-.63-1.624-.63-.474 0-.899.1-1.275.301a2.169 2.169 0 00-.879.886c-.211.385-.316.85-.316 1.396zm13.804 6.328c-1.015 0-1.89-.217-2.624-.65a4.422 4.422 0 01-1.691-1.846c-.393-.797-.59-1.73-.59-2.799 0-1.056.197-1.986.59-2.791.399-.806.953-1.434 1.665-1.886.715-.452 1.552-.678 2.509-.678.582 0 1.146.096 1.692.289a4.1 4.1 0 011.469.906c.434.411.776.946 1.027 1.603.251.654.376 1.448.376 2.383v.711h-8.194V61.84h6.228c0-.528-.108-.996-.323-1.403a2.426 2.426 0 00-.906-.973c-.384-.237-.836-.355-1.355-.355-.564 0-1.056.138-1.477.416-.416.273-.738.63-.966 1.073a3.095 3.095 0 00-.335 1.43V63.2c0 .69.12 1.275.362 1.758.246.484.588.853 1.027 1.108.438.25.95.376 1.537.376.38 0 .727-.054 1.04-.162.313-.111.584-.277.812-.496.228-.22.402-.49.523-.812l1.899.342a3.444 3.444 0 01-.818 1.47c-.39.416-.88.74-1.47.973-.586.228-1.255.342-2.007.342zm6.649-.208V57.584h1.94v1.638h.107c.188-.555.519-.991.993-1.309a2.843 2.843 0 011.624-.483 8.527 8.527 0 01.852.047v1.92a3.583 3.583 0 00-.429-.075 4.105 4.105 0 00-.617-.047c-.475 0-.897.101-1.269.302a2.243 2.243 0 00-1.194 2.02v6.295h-2.007zm11.326.208c-1.015 0-1.89-.217-2.624-.65a4.415 4.415 0 01-1.691-1.846c-.393-.797-.59-1.73-.59-2.799 0-1.056.197-1.986.59-2.791.398-.806.953-1.434 1.665-1.886.715-.452 1.552-.678 2.509-.678.582 0 1.146.096 1.691.289a4.095 4.095 0 011.47.906c.434.411.776.946 1.027 1.603.25.654.376 1.448.376 2.383v.711h-8.194V61.84h6.227c0-.528-.107-.996-.322-1.403a2.426 2.426 0 00-.906-.973c-.384-.237-.836-.355-1.355-.355-.564 0-1.056.138-1.477.416-.416.273-.738.63-.966 1.073a3.095 3.095 0 00-.335 1.43V63.2c0 .69.12 1.275.362 1.758.246.484.588.853 1.027 1.108.438.25.95.376 1.536.376.381 0 .727-.054 1.041-.162.313-.111.583-.277.812-.496.228-.22.402-.49.523-.812l1.899.342a3.435 3.435 0 01-.819 1.47c-.389.416-.879.74-1.469.973-.586.228-1.255.342-2.007.342z\"\n fill=\"#000\"\n />\n </g>\n <path\n d=\"M0 27.27h346.032c14.903 0 26.984 12.081 26.984 26.984h-3.175c0-13.15-10.66-23.81-23.809-23.81H0V27.27zm371.429 226.984H0h371.429zM0 254.254V28.857v225.397zM346.032 27.27c14.903 0 26.984 12.081 26.984 26.984v200h-3.175v-200c0-13.15-10.66-23.81-23.809-23.81V27.27z\"\n fill=\"#C2C8CC\"\n mask=\"url(#path-2-inside-1_5_55)\"\n />\n <path\n d=\"M132.178 157.733l-2.302-2.302a7.542 7.542 0 00.834-1.905 7.62 7.62 0 00.278-2.063h3.175c0 1.164-.172 2.268-.516 3.313a11.632 11.632 0 01-1.469 2.957zm-4.683-4.762l-2.857-2.858v-8.175c0-.45-.153-.827-.457-1.132a1.536 1.536 0 00-1.131-.456c-.45 0-.827.152-1.131.456a1.54 1.54 0 00-.456 1.132v5l-3.175-3.175v-1.825c0-1.323.463-2.448 1.389-3.374.926-.926 2.05-1.389 3.373-1.389 1.323 0 2.447.463 3.373 1.389.927.926 1.39 2.051 1.39 3.374v9.525c0 .291-.034.555-.1.793a14.98 14.98 0 01-.218.715zm-6.032 14.367v-4.882c-2.752-.37-5.028-1.601-6.827-3.691-1.799-2.09-2.698-4.524-2.698-7.302h3.175c0 2.196.76 4.067 2.282 5.615 1.521 1.548 3.406 2.322 5.655 2.322a7.803 7.803 0 004.763-1.587l2.262 2.262a12.602 12.602 0 01-2.52 1.548 9.883 9.883 0 01-2.917.833v4.882h-3.175zm13.97 2.54l-29.21-29.21 2.222-2.223 29.21 29.21-2.222 2.223z\"\n fill=\"#626365\"\n />\n </g>\n <defs>\n <pattern\n height=\"1\"\n id=\"pattern0_5_55\"\n patternContentUnits=\"objectBoundingBox\"\n width=\"1\"\n >\n <use transform=\"scale(.00292)\" xlinkHref=\"#image0_5_55\" />\n </pattern>\n <clipPath id=\"clip0_5_55\">\n <rect fill=\"#fff\" height=\"253.968\" rx=\"15.873\" width=\"400\" y=\"0.286\" />\n </clipPath>\n <clipPath id=\"clip1_5_55\">\n <path\n d=\"M0 28.857h346.032c14.026 0 25.397 11.37 25.397 25.397v200H0V28.857z\"\n fill=\"#fff\"\n />\n </clipPath>\n <image\n height=\"342\"\n id=\"image0_5_55\"\n width=\"342\"\n xlinkHref=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAVYAAAFWCAYAAAAyr7WDAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAUJUSURBVHgB7L0J8G/ZcRb29X1vFo2WGRlLAmKsMV7KwTIWYBKQVXgcHCCQhMVhS0jkbIRKqMhZi1QFJAeyViqQEBtCKhhXFkIVYFyVEAIGCzDGVSwWlkNVMN6pwhZUPLK1e97t3HtPf91fn3v/b0bySO8/M+/M/N/v97v3LH36dH/dp8+55xoepk86feEf8KftObx1cTzlhqdheLNv37dbT5lvv7dkhie3e09h3e4afLtu228/7m1/Hp972soav8cNj1/jukvjUdjj6rLVvpX3KGt7gf0e29s/pert0qjTveozIcaj/aty+TPukehsr+er/khnSHfWwSxe9UWDvvHXVjvqHPkt2h6fWu2pvazXkt76l21d8FX6y6us1fivtRESfkiV0/cjj4scnPoUbWTbMZZk2CwzE00QNu6V2ImgMbQf2G48u8nks1sjzy7Yvm+f2/Uf8BU/eGfBDyx38Oy3/4f2XjxMn1QyPEzPmwiguIMvxw6Yvn0H3pygY4FDAkKzvkIURYFOQKhhLE74Evkn4GkNSL4EYlHKBPYZIIOuRoRFW72JXigym0+kzDRe0WuJHglImAH5PqB1ATAFPgK80YfiCapNGha52c1ZJ3dUb8WrUz7ti5cBmVmUYDrXLd0ibQq+JzDV8mzPL4RJDWTndxovE3C3nu+9278/sNX73juGv7Xlfe93/Ef2A3iY7pseAutF+sLf78/Ygi/ZBOvLN2v+FSsOL7QBifw8PhcgwSiEcmRVkME1WElqim03uT7Iaw2UIlsCdlPGQVvzwBRz1WsKBc3uKdjRK528xisj4EQIWw9jAvVKw+MjP6x5qz71bQYDNAS6vjd7rL0c2zabAfWCzwrArp7qRKsUHWBK2m4yhkI7+cY24EJJ8FlmH4CALwE162QZPI+CS5l5ZkMaljAOnHFFiR/c/t676cV77qz4W9/xO+09eJhaegisW3r6G/ypV30Y79i+PrNNO5/ZpOcpVy9x/q4KL0AoyQmqVA8rjb7Rc10UYDB5Gmyvg4gLzhdQiiLOZUMRmSdaC+VH95zsWj4KfAG/UYHLZerfej/KGFyADAEwyjYP7bgkgDXnTe+tf+q4uHV6L4Ebws92P/hHeUhw6xBdQO4XsjSNkRondA8V5cbinMTgZ5jJy/6fjKl4041XuE5iTLO80rwB7LNbHe/Zvn/z5mG856FH+woG1n16v0nEOzaBeWb7+cxJsQt4MHsiV8JNYNy/r+hKmzJ/c7yyew9Ufv6eykU8VdzCUqYg8tKLvEEvqVw9/ocmHB5euakyxo2zAYrCJyOkACRYgQte0vhMNKshuQbJyZvOUEDl63iqgHKD95sGkWB15bUK8erJTmM3jBqyjEmfmqcJExn0mT1dBm+KWUsnig8xmzoq6bHdgzb3c6xajVerVsqLPO95/uL2zzfbHfypVyrIvqKAdfdMX/0hfPW64FdvAvTlDfAuvEFQ8AVkjxuljBP+YK5AY1ZNLK9ArpUV9bNTtZHde13zYDpDEt07rbLXMbUTQB7fVsWf3kYAXIvbVtGoU2m9iEXOpF+OxQT6k2fb5w/XMVnXMU+g87MeqGdHYD2uz3mDx9GAzeVxnjmMPk900RAYej1TO6cxEMOS4HxhGM9lgBZCmMG0tTkRq2M4tdHkKxYe/9bWxn+LR15ZnuwrAlg37/QZ3MO7bHimI83exoVVV0Btyosqc6EEzeNMIcRZKaX5m+KVENBjkWpDyrKdm5SqKYZJf4AXNg3s9CYNN+aXzFdhA20ffkPjk5d49HNMDQYArZNBnEB14lWNwdl7rlJsw5T9UDmBGqWUFXSv88ZpO9vSqbUCq58wrvGZ1R5sYDjCpZ4Cv+5FFo9OwDmNB42iXdCbOhB9Nbt//1xDEtvvb9z+/cZXQkz2ZQusu3f6+Efxzm3h5Kv3n6AO+Xn1G8BJCVTgRarbdHmWQvUEWOcEjl0Rr8BumjrjnLqQA5fT2RPACU1dt3q5OW/y4lohy0e84mMpee9AlcJJ8XvR/H4AyIqO8AXLavAUSE9g1Xjc+wLJk+M5LTye45VhkBed1XhnefZwFjm/MDoiBzOoHvcJ+lMfTiEHfp2n+5KnSCtDc5KD2Xut7yQXl+N/E42j5h/c/nk37uAvvly92JcdsO6A+sQGqJuH+jX7an7EtKxtq+nKX96ggiREO28AX2ASP5n26zTyxnThOUy3h2JNNFKhcZ/p7lzv5X26EhR67c0Syu0Tjhk0rjrD2xm42MXU4AnM17MhuRH4h4faPDTD9eaJI17IvcMKvEX1ZbjBOu/pA17yFRNPL8d89qK17cnwNN6cU/eyrcuci2mx3lYaCR31BsSzYdd8E+8ux7f3N2nFfcIXx/cFP7B9fc/jd/C173mZAezLBljpoS5rACrEEjOTSPAJK9V7wDQ96sqgwpIid2rvPqDagMA7aDVaXBSQrS2oLTwQUOwNNK+jGQqbFOY8fe7K0IGs6LeTV3WabradEFdTXD+v3l/ULwggdZ15daZR6gOq7wuawSiAOiPc9axhQkCra0dd7jdMka2MFSafcN7uVCTXrg/pXE3Jbw4fAA1Kz3Rob077oxWo2y/0pkInQr6GGMtYorjVt3RN+mEL/si6AezLxYN9yQNrTvk3DxX7E04yFRaQK/C4jq8xtXyp+DcpGM4MdBUgpMKXnzRln4H7SrkwC+LshTGjn1yuFlqQLT9xSbMyV+vcCwlNsEqbwczr3gAuMQpqvTL/hdE6+imG4lgQgeyaEFon2suAXox7tsf7k4d2abCCLsM0mXH0xZyZVzryMoZKKtRTJL3hoYvH2bzUK9ow19XsW7VM+YwSZ0i15oUfuwUgxqvtNxa5nmXgBiL9hvUG32TkGx99GXiwL1lgVUB1iw38uJhumPyep3DqAeIiZqnCcy0IR/YE4mulnOQwL5ZiFXB28GUDJntccaPCa7G2Qo8bYoiZV8GzIOpEP5X14I8o72DjtGVoAnLRvA6eMh7K1EbuRUy0fuKEp+iMuD+/CCLRnyle3b2q/rOPd/R7WqgctIpB0X+tW5+zh7ig78ZQWZ6JcnR5bdAN9SLPYZzOC+ACxF36fAp5dAOcnbkf+KuHS4kTmd0fsf193/477WvxEk0vSWD9wq/zr94G9l3bWLxZQWNebMjUNe8MpPMUbZ4WZlH0xaq4f7n/T9vWuhYRQsfzpl1GCaq1tB2COIiYMZM5LtO8SDaBMGaVvDEfW1k76IXiuan/BamjgzhmQxf0wdDL4YK/ydbJkDWlZVsK4NJV/ZmgIWWu9t3mMEiowq9mESJXGhtNPvqZvta3YDqkPQX/2YDu39se6os+9x5rY9IGhPkzcM81zDHeq1CGT3Wh8+dMSvbtB7evX/vtv8v+CF5iyfASSsemfsc32Hg66kjzYsExIPu1mEYdeYDz3r0a1MQs6z5bf9rGqzlIobxtZ+WfwBcKjq0eNEG+9Ogw59N22CcFfTUSypuq6kRAQ43WtRMeFdf9vHi0ljGoLTw3GCvYjSvavdILwJ/ivOT1dTsX/Sk7FS1oyKCqUEDtgFY3y96qxMxjV2B9FVapHtp1eeBadlobUz9w5Ui41Dnx6qZ4NSQcA/0NXHWk7RdW4oTYpAvV9Nwn5nnvo4/i176UwgOGl0DitH8b8HeFRpysov6+8FiACWj8uuyofVIwzStAqTiJGxcdVGCvBO6cUsHmMhgCrws6DZcnj9ZuAuLL9jABinruohAEbRqKK2VJ8BHvlB69AkzzWPg9qNHyanToJQrtCWg5Ja+72b4utHk3ojMX2rRZVP+8QClM2b3044k4TIDhbYGuy6YCqALXVTw4hwXW5Fme4dc+zTLW+ixjJXRADfK0MDlx/KIOoe9kUAFMIZJefrR3LPolOcUJTe/+9ne9NMIDhluejs39K75h+/o0FCckLuOMCuIGQK3fzRtsFvxC2ZkPmMINUfe8FYm4pvHQqBPwiRwRtJnMifyTkLI8F8ZEIa76i1k5WGcDyU5Ai6Wlkjb/AuqbnSYOkxJnw9IvLZRKFNfnvuJGo2GnmC8UnNDYMaVCq7a1aspB+BOtR4tz7sSs3upv3TNpC1eDvf9ehF7HOZ56AWJZo1JJcLLrx1NPYyG/ZQYwM+K8+i9g7hXuaTOiGdxxZRjVcHmRqDt0RHf23z/4qOMr3vPu2+29LrjFaQPVd22g+q0bV998XBguzzF4zZspgeyKNIMFhc7FuocnQYBToUHq8vgyxXA9vSjxnBQDjmtGsoX2qFm9tSu6KZguuHnQFp6KFRj5hGxn72AoRwc3tjMrOlI54Vde0qjN8s9aFbrfs6gJ3h11Bh+8uDx4ZqiQiUlf96z8LqpIMExlLZBGGsnGgIuuzl6uta8FFtFvCbk4x/l4QEAaad/a4LX7yrB5sTOLGmnq4SFeTVA9ya5ClvZNxkL7ozScwFhosLpOvstwpah7aznGzlD1M3/onQnQH99WgnnxmunNP2n4/rf97g0bbnEy3MLEWOr29ctxH6/DcREv63GlVs67J3H2qmh5p/KSPxUW5Rns3kpNgfarsuk9LDrMLqx+dgO1vSYatAsFZJ1Qj42EhQDed3uUJbh23kTemZ+m7HatBshZguG04JGeiknJ2ePVukTRtTX1jm7wpKYSUJ63scY0cwBOgFZjfNFvEQbvbKitX8IzhVd7XiWL/uuWqiabki/lJ+ousjRLCrpO93uMFGgt2PPJinWDBQFh4Vuv1UoOOAaih6PPa+kRpnHC8886vv8Rxz9xG73XW+exfsHX+6/Zlja/E/upU33KcaQwsIhrKcQWFjQyNeGeBqOfeIShYDKdOQFPTsdq0FMY3MUSm+SZBZkCNrybsx547YGkxDppu/DYiDw3hUH2aeC0SVuVBEmveAM0DsJbCPXJeq+6DF42wMhOVQ7mG2VcvJVMpu3QG+vjmTFPOliuggDh9DT1DIDRR4m1szOosk9Fl4WxNFRsuLhhq8sIQ+RkBqSr5NkGC3vrN7NZa5WymzKX3mfQqnUlnyT/iVcxhj5zlG1rny48W/KtdbSMdYJqqw/oJ5ORRpFnzLOTc/qc5wx/4W3v9q/GLUu3Clj/0a/337sR9CcdtS91VhQOQpvTXYmuuB4CFhnTTOVJbQI9EPUa3MqLsBPaeFYBlACfhGACET2gJQXbilhj/0gv+DkbDut9mIwOYkN+9chbWz3+akIfMMFFtt0UClNoQ9MBVIbTlgENP+RYAk35D7qs88wWFIeogALeTRw4Lp2XBaLibQv/qm+l3OWROiBT36RYcM0EaErW/CZMQFuB71YMjZ9Hu6vIire8JzAEZPGJldMwObpOJUsmHpWx73mlDe+jXt767GkqQHrZAnshxkfFTcIxaWGBp7cM3/C2r71doQHDLUj7qv9jH8E32XnqrzhBhWvWNjySvsJJS8g8qqgOFbRTEiAm0B6f3sEPrTbvhW2qbGrgtGqcnsqUNXVfp+r0BhVgfFoo6XVchwd6ucvVX6+pXLWFUPT9Wyy4GPMWDZeqYqfqdbRwv0TD5rbeB6ggQGOluDcuAFWBeXsYpk34c7kmg9qDq76fxsXPdeoioeKm4bQ6HyKP0+Lp3N59Fr4aC66JPNPXFIPX/VRZ2gXrHuh5MU8uRB9xk/5nf+6j/9vne+86fu1tCA08cGCNA6e/FTY2++uoyWr1BF1nAZ7GnantTc3B7nU3QQnw7op1UyIFk7I3YbYKPZwArMdV76eY9ZAAr4lyXtDZ+EChzN8q4X6/ku1Ke6gAOO8qmJigiyxHMbtiaY1seodzf9WgOPCCjta7sX+dPgXGa5C6GWCrhdnoSF6NrU+g0XY66Lh7AWp0+SzrwdAEmQsaz4bbcuyUTzb15synuD/LML/P8oXmE6C6NfGp1S+0NPFUo+Wwm3ZwGPnh+MFH8OB3DTzQUMC+lWrzQP7m9vVpVPymUgGfznZLcfIHNHZzXDr+xKphinu1Zewx6GeBNWSMM3/X96HgulA1CB2zlDISOZ1a1Kbzj+W8pq6NLnTAibpHk+Kpei9Tl73ALzjg7JAuumgftSzCIyVg+ARIsnOAzHcBfJtCLZpqvIJPGiJp25kmRdYxMuHrWdPku7V7fXeB3GvuYkJKUWy9FhCwdNpP2TsB11yPFS1OCZX+SnnXOblWJTLgpDnk2RpohxwzpCShJR33+jrRwvsE17znOBttnAFS+tTGD+wj9R9T/yz0P0AVU9L4cvD16eeA73z7u/0ZPMD0wID1C7/e37ENyF/wODiFwiBZCkRRnkoI7xgkBToC2ZRS6U2UX6c4SODW7T+cXpRQDEDKGK9Y3E6kI8NaCU2ktRS9IPRqigkBETEG0f/jNrctMXvShVabKZiqopNG8t1wxb3kcZHluDlz1M8poLMj6IYs+01g96taMpTWdx+IUYnqpVB+DONhsejXAVK9/AJXF3CqfroCCcTAgZyk7KqCV7dc2q0YrBUAUvbgTZKu5bXuttlXygqGkUkQU9nqeZVvBhSPcrubhFHQZyoNqElr9v88ltVW8GahMTApr/rvp39V/l+I/u9rNN/69q/1d+IBpQcCrMf+VOCPpNX0422QbfCA9pvgxuQJVOdBqLj2bBVnNAjFC2lxicOa5J+ncZySjh8ef2iKnZ+KlJgBKTwG9TKKtFImgoDsAU1lD7pL8SYPyahoVnFiiVONek8crHq8a2Dbc+jqBSmvy2PNbhPEEywNPo+HaV/1pyqQtpFszHINxI4/mTmwrsioQ5hgopvkUUaojJulh9wWqwKxXLlgzX41wajpbI2T7nzIWYXs3KBxOsa7RFXoC+aKEPXwSxjQkDU0blrxQuqF8rEZWS/emjenv9eMMhAJ1hZdE/031X+bZiaUR+t15iKWyLPyafvv9779dz2YRa1PO7DGpv93o1s7nYq3aX+mEqoxlnF3EcC1UkgmgkrW4WieQIKb6dSw3z8pWAgaBxVNCatxoyBTCOTTpD2CQIuTebUO/Y4KmaRQokF5/5aCNnsJwtn0frsnl7TYTBMziULpNFgBQsYCLW83e1quIRDzncBbZgYE7QQrJOgnIdVI/OttZpHNaT/iWuM9+Wl1b4R9Jn7MtLKyQPEWL4eQh5CNnOKHvOS4q2EryjrSSzq2EfpFW13DXHupedl/kSFrUhCMT4ATaxJ0dY1QneM1nPVfwd8UUAPISbqGgVL/TdhiePfbH8COAcOnMQmoKgV9ddqQL6Zzvw+B6lkUMBcmehtcqCDrggvOVr3RBfFWT9rgvV6K2q5oC5q+ChwV7dpOyGfrbl50JeuaF3nojChagH5b4JraYR/rO4DTwp53fliHDaB79FL5Bb0+k97utJOgmlsm+ZPtlIFSQB72cuMquFLS+hFe1Gn8pz4KiOcuDRe6GC/OoZCbUrh7+Q49aDrpuFpglSEWYa8LRBzX8WJoRsDryDPaaLMLlc1sT2gXfows3klRaiZ9u+kEuNNiWNR7aXyk/fmtuQ3sW1Y7Kn73t30azxn4tHmsO6hujH1XXrBpwUMVC6XgAQ7w2ccRxpvLtNHjf041LR3L4zqF/1JxdUAupoHOOjyVO1Ux/3ERfpvipEgJSoFw4CxtXXNc+eXzlJvCPXmiw83AORZprb9NEHOBK9RdQAz0BNLT1vjYtcKkUqZndaEpYnxqzP0CNPpP0m0T/+jl3Q9Usz8OGRlHh46LMQMqVizj3/orjdS4sAyJL76bGLM+k7JqS0E1fu+7JsrIyJxF4sp0BjKsYTP3LwyQgBxSDiz7wr80CJSLqXwOPVCgZ11G3ZRXaFJs/Z/n13/MRlD1f5enzaH7dIYFPi3Aeniq42Sq6rz3OFbiUQGVLh7lFAo1CMlzVV7GIM0TdtTYZlWjIDKu5oUg1T4AidcUUEKE3PtvlMU9tmHp6jVC6EWBLEMKaGZb2868k+o3xSTnTPqgikglzJij5ktGoi/KoQBVWuyA4KlEmadwe7S7TIhzkazdtcu8jY/6WzyiQgZIH8tQ1WIRs17xeEou4ACRL5a34mPtElHvHiXHV5WTnNloXI1l5g25sbmMn8FT61EdWjD5FsErAlZKQnnX6hk65Zn8UQMgzk7V0o2V8gmY9f8sw8lTzDqV0oAiX/Xf4uLmtf6STxO4Gj7F6fBUN2uhDeVqnpfnkJ+i2O33SMEf5Ci6fNXFhxmDdNC1rjbNIRGaJwY+0cOknVkxtQmvfp76pgRRDOrfVhZn4B65uqAOQXOdCUJwGmdoU6A+C/3I4p1vonDnvZkCajI1h1q0Nh4Gxv9MgZ38xTk1fT+FcRzXqThbqns1FsLD+oFx2I2Oo1/K0txigQBErFwA5YaSLUTlMoZn0O+hG8kzLTjiBp5ADY7c67OPm/h6kWwuY0HlRMYL0n+gQiYQOif63Hv/U/8NuCmUuN1/91/6Tz61YQHDpzD9o3/Q37mB6u+bNHOOT2VchTEYF/Ba4hMTWGoczVMPALwQpZQB9LMit7BmApSCXbQzN2SdFlPgjwztyacpDtxPmofIvqGdRH/Rs96mKmUv4w1QtZGbAK2rRYGG9PegXcureZkVA8ANwNmNgAK+yAO8YKABys0pjfFp7Owcd5zb7gW7EKFzZzaRmOT8/srmF1fsRl5lbgHtJE0Ju5CZG2PHmeEmedCQgIzLiSq7/p7yUs9j3Vf/ddznuC9EFuZZ4ExCSVEZ9OUO/uW/9C77RnyKkuFTlI5zVB1/4UbAmIS3MRiTUOhgdsJFjCfF1PuYOhpXj0Wyqd69jgWnbTdtMGcloTBATupxTF5A9b8t0Ck/DkOC7jRfKVaz8KwfEDZkvaP0tLAF6QurTJomfuBaEce3+g7rHnCVkyloeqmsCejaMoOLYZ5BZN6UD1zzZqIVAqbMdB0bVlntAqmLQH3135XikX2ZQBWTbKZBsGoTaHqBBFbhqRfP2jS+ex1RYk3Qsda3KoYT6M/mQRvBGbhP7Ou6gpCrSTROPL2//hdtNl3v+n8G+iHXuNB/HIr+Fd/2bnsPPgXpUwKs+2Oqdg/f6fGSv7NOd4t6XKPg+BGTa++fwgXRPg20pivlUqEW1MvNzldgokJoZ0/TTm1NyjLRdBIuVRgBShMa+wr+lYLcwIdL71bBTg3a5A2kIhjOZxMA82zh0mhBjQNy5Z79bGDC7gqPW78uY6eegJLAjSsxk34yX46DTTDiUc8U6rgEk+LBbDjyvk0Ge+4C27WgwSfP/FI5RS9ah2dHwCbwRhuzjDUXuac2Zm663A/xmGZ2NwBcq2oed5Vfu9b/rpileDelwyM12TG0DoDXSqKeH7uz4Od/Kh5/fdGB9a37s/938K0b5U9DhV6YfQIByCuNTd5IKoMQg3Nc1tcf52LVVOGEYhUPVaVdUB5UDCiknVO8t1/LOnfH4I5NL3KLfttEVbtv4d3crCQdtNHpS15o/9AB8VCwNaoVH2Qeg+YJTGjJ8eG5s5im9DOgKE0zL2eQSi9dDWl8rmsN1xqG5t69UcVzW479xKe93L0t33PruR83fUJARnubF1T576PA6DFYtTT6r9ZRY+haTYyphRFC1TvTkNVN4Hr12VDTZ9Kz6qhu1hhcguv9wi7irYq5Qeq/zui0/gbEF87UJa0ib7gPTVGQ4Yfep/H9+wNcn8WLmO7iRU52F98UoFrTAAqMNcFPbyLu1XPMkY8Cu29dWIMpFBirt50m2FgNzUjLNN1a0GOl2727y1DgI+9eRqzbsjQFYPynPDaC+qDL78wDvNRUHRNAsv19xfwAFzuAC2lHlhFfZo8SaEe72k4Bma73Z0Voez8cZYhuQpaDT2uM2wCko/5HtH50AFfNpJGaZVgZKYazBN6SjoOn61Kgm+D1SBGcehljsfPvuXuDj9vn/ts+fm9M3fdPUchLRZxmT9fg0iGDj3YOsZ4ciKO4y/Q95FxedKmxUR7OPbpmvW8I2pkBczhi/1hlGA3z3OkcE612IbDWZ0Ma+vHJYA5d9einTaBadcf9K/3nvQTIydPtTK8fihfKg6gjY6nNUxXayNvt/udsxvqbtktfgRcxGV7E9Nb/0d+1r7ipQToUZIonHulCOXzk7xv/EYNmJ8EnI0FwO9rZ8y5NKDOnE1AKWMmEJNl8ulDdSxCdvOUm5BS8rI/9UOFBWdAWkxKdbgPjOE+bhRbr7abghgKoEJXQSwdj+gWdMRz8DM8JMpbztFzrnncDuHxfiufnBxmk49PUkP1qPNapfYKlyBL5pH3ex+on72192vrzseeA/ftz9w5PNxVS+dmADYDf5K0VbJ1DKgCaPM1A3UMt55hxwmnIjJ/jhfNvuX7yAvu06FSFGozLPK1d72Pn53qbjEB0K2usjG1RF37KZTaVoe6FA8DY62jnClT9FB1z6f1O2+/7S7/b/h28SMnwIqWf/4f8qzcav0FGyTWA3yy0xJIWtX69XCNwFnbl/BRPmleWc9Fo6YH0tLwLurWdxv8UalAQ4yAO89ytrbZx5L9BOQlsp0RadboMtM5nOIMKHLxWGqmgVmxsSp8K7OdQBVAAta60THUd4rHsbd6J2JZOuxmTTu214Y2nZyS0zN7MzEuh90T3adov7e0fd1DhDOXPDrTb3w68O+genq/EOkm4XfEUZLvw2GU5S8g1XIwf6bvPFNtNxp51oniSl1RWTyAu5Y4xm8NUOrMbjfpsbFSdst3e70Y3RB/buMbnrP+tv9EhHdNWrySdgUIB1VEf+/WlxgAiRRzTZcWvfc/vsT+FFyEZXoTEuOrGpKf332t5KIpSClAilknJ7PlcLizZDZ2YQGxct8OimZ0LjRp1j+LUdr7KuNOcALECbT9rSoU3xemDbNVPzRfWNbuSgF/TRKxsx9Naj243KcfslJxWhNcBwraIV+8KoMq7rlDD6IkX0Ba52L7JzKH6dxorBGEElF1e6CGzbYZJ4M0gtEUgm7wdK/CEGJqDgsXLYGOCZxWR3ZvdQwcff24D2p+s+O3Ea7EKKJC78Lxs4oHch12J9Kwdk2xWFbCpDDRHysKV0USN//F9inNeLaJpfm1rBr+T3HjVmX2/0H94k9+m/ydvvhUFnZsKXOzXjxhin00V1UIJZcDw7KYXP+/FWMx6UWKstoHqRtmbV46jxFYFeMYAijinMrkoXKBZxBzbZn+GCj08Hh04s9NiD2brJANzbEWhQtBDFq/IqJRaf5RsR+DRk8wGyionH4CGeMcily6UmYpaCaipUixRDojvUa964cGbAdRTeeh4IQWRjB/4GKDYFgfjw4dyWxB8udMCBcbZN9J20KPxOEfTq3UCnqWUoYcw4rdz/Poiz1hAjOtxXkPSei+AIWYHjGlnTJ+y+cid489e8+iodg8XfHTzaj+yg+wGts/dCx7gNL0+hTmcLBG5OOgJ4JoAw7MOwabJE0+wvkqNHP7whnMtb9KDZgToMRqkoBVt6XGqQyBhIp0MUSd7xHeGtrjqQo+LoZ0I121spf8murSnNe83PqJX56mnjie3eOs34EWIt/6UH2nd46rbx9NgIJkIheiEDI6u/FoIFaeE4uFkPEXAwktGRp3xyYHDpKfHXVeBx2S0BATU2lJRdoBxr0Wz43sMNMEhQTZ67iIs7jidQZpK7mVkIgCfAihgXGdjWr23XpVMLbFLI2pkyFfy+/jO90dxCi39Vhm2+pyPjGvLZ2GAcuwhxiHGOs+AUJfRlOZo53jdC/tTgNmZWBDhejvljWMSdfIEpDgJzUmmzWWX9LyVCb4vcG4ga294AvYzXge88bXAk49v62iPwOFTd0qp59lM+lPW+ValvM24hp5I38VI9c57543yFajZhFNOR7a2XSzAp1UF5UUfAyP9pCuznmkxJdglHGBSF2XKLmanJ93WmUfM9g761ylXpQR+m/pEh0n0/5lf8rv83fgpJsNPIR0hgAXf38yhSKtOdflz/zs8NvQVxvbqEW9lM6yQYCH1mLYYgI0+5UAqvRXC6lQXlnXDZnWepqH0EOltG4VqipMxL4WprW7XkDe6Lbz0ZWJlG6RpiimpxQ5FMawB2DIpX6u6Pl3GwaX+o/0VOb1WZZCh7w9BBA8yn/U2luJ/92q03Xal6Jp5pPLCe1feg0PCPyg6J++wzU2nsTtK7GGCLVxgH/448NGfTDoK2hVI/Lx2cEWY0nQRjtGy2Y5PQEV5nWSiYtmo/HO/WnvavkmLfnVZCPPL/Mm3xhPhjbFXQchN9QRtKmdiurSb2aX+BWgLpcmPkOz1zk/t4YGfmsdqRwjAxUg1y6ceowq+MDG3W43qUFaN5a0cFA0LRAghxd7U8kEso+NkRVm3F7CNk9dr6j+mIOLR0fvIvZXRD44UQUFpJS8QU1TyxweVNUWKKtLCR6l1YmMqTlKtQ9FDIcLbSgv0LNEaM6Be1wJxCC8MTs4swksVY+JSYQNVFt4Bj1vYGvGjk9b4UwQm7wThVeZGizGeZpWXtE99HVUIoASAZRPWkctTHpFTXxoHe2T3Zh87vFj/ma+H/7TXAI/fbTKXfAMKeCf6Z14g4/BAgSYwA3K2Y9KG6EzTCUVnydtitwJsrrywhKzIV5LrCsIA9G0VbK+TPenqxBtkiMGl3civeWCiYzXTU3kUKtGYHdMWXY/JvHudyxYSeObd/hQ+yfRJA+seAtioerPdYA2WQeBYLJE4Ss2LkHOSPYnwtgcAENOjtVz+yB5eHgI8rYQw2lcLGVUloB2l6BkApew6faEiqrcViz6tXBqEUOS1FNCojFOs2CCLNklH0UZWWRMmdmeRPlmCSvWRac3YMQKsmoArL7O4D+OxzkbIczw1/JBsG10svprqaBCwUh7k2hHmIAAGKB91iUIF7539MAk5YUyXK75GEYvQh3eFco3ttnaFB+nJWNVP1lMOcUZr2/f5PrHFZd+4hQt+xqaSn7GB7aN3kUCX44ViztSXSpQLkb0kfc5fHiDEYIvSkVOYoWd46dLd4/KSYaQcI2f94ay49FvAqQzTpHPSrZZOcutp6IrGCK1lfk8ZcAXEGMuh/9ZxyRq8BmDbxFNkf/fcT6/P4ZN+tYvhk0h7CGDj/PezN17E5iocByRopTD1vZxpP+NTQERlVxhTigW0qRlB1VziiwYNqKV/a2pHpZH0UC0WcWgRY8GjuwFN6NlCbptKKahOMk97kIGgSiYsaiRmRZN28rLypWWNy/QwhZ7kD+o6AS76kIKqAyjT46pX+oCKnRnH6TR9JusmHqggHrtKgtzlonwDtvGbYGjLJBOhlBm6OLZcUR41ZDSBBOY2pvad/V7RPFwIEJLX+4LXT3x0hAr20IHEAxoIzmM+DVuOm15I+iGZ0WSAly9Pjpq6OXi5omKgc3ulvxA2afsnHW5hiklHxSgc7drEY20HSOBs+m/VWKM0+9ahEymf6PyFVEX93xbmP+eT2SXwyXmsd/BNOpi7B7bUAIy+6HTeS3fmOCRELHQgXOrfv6wratoW9/1CsLhae4AVGWohaGt4QwQ8T8w2E4JWsV6wBJ1sIgVp7UpxxF1t7IOcRZ0r4RF3TU/2ABYf/GNoYS3r7Orhw4V29tvZ7c5n8jZAWycHtWDmBeoEG24zSw9BeUx+hiIonWBdeh4pmuA761hMPB56lpF3fiw4y/drzfd2hiVE0Q5aAlRNvETuUaVSu5ZvjRTf+w3kgiXBFRDjMtG5A/kjd7cQwauBCBX444+AnRphDq+BEkDD3H/SaIWyKltjdmMi4+R75FGdMj+xNWWMM6zOZYg2jW8TXTlTiJuzvA3axegQVCkLgtZ+wUuipcUiY39FTte3o+YQztH/8GzNJJZbw2vSw8Zzf+7YJfAJp08YWDdv9as3At6q08TVpxgY0BccCIIuFiQYKgrAuAn3eVo+rbNfWwogjGpqfbB1gGiVQN5TsRGc9JpuHnVOnp2F0OeTR6RP2xIByDjgmgIWXW98SE/HOr+aovDx1qxlnkoVatZeQ+8eenrSEseSsloftx9pnHr0P2hSPpzqYx8t4tQCNJx+kVbupOCiY85wIEmEmuEkutek2xpHCrgjPlse6yQXaRBKHglUPpGQO01ybKbmWJYymyGONQHbU4YY9kHEY0eowF/z+OajmBhnQzoO1hoTwlC06Bgwh3vvC8KIw4ofMVXPPqLs2syHVs+JniqU4SjyZArFudbppCu01wjCZXxpJBAzRj92i4ydNvR4QySQZE0zPIu6qQcenwqq9YJGkd3gkYU8PfPM79ww7xNM9gnmx1v/oH//1tjT0XjaMSuYo5C4MKe77ZEpY0jB+mQkIn7qMWtynCSIpmatHQfHJ88VoCLaNG2JLyyT12VMcprs6FZXV6/3G4v1x3X3e4sohsZr4Z1H5B8BOng1rwTndEnjbIYexFdApCdg3Ss2na4rK23qfIZBJtnI/vSWjpbnPcVZr/ZBeHuqN+7NbabRQEsNJCBTyWjfpjGsxuV7428YkBaGmfNc8Ro6EKgXnc08nerbr3Ff8r3t18c+DvvAR4B79/J+VevTGAlPZv6obJ7KJOeQ46DyBc5iIr+u1mNO2nfvOiydLjpxDchNlirTaaeAMm/q14EXOmSN196btt6Ddl2rRAE1L//AcvcTO6jlE/JYf+7/EHtWEaATVsAn7zMQoPZ5AjVFIxuV0571pVw7rbw17yfHPjzlqiEKruP7WMmmFzpNryhE4WW6HH6SXI1FmkEDBWTYPJv6ZMLMoz0uTuU95vPOzwxV0HOCgAXktC1Hegap5KS1PJJajFsbfpS+eOum0sD6nGDMGYRqeYYuFCvW9MqQq7lSr/IgP7z+GDYx1Oo/PyNEkvQzn8n0MXvC8bLet5QXO2Jml8mkQ2SCjFUpoErt3s5SXl6SEbMgXaTT8AbDENxyeHejePdc/5F9ses1wN07HZZnw4eSae5K8av+zGXQDRQBi2NjXgDZV+lNOBx6Qp2ivlOfXGaFqf8s7DJchRFo/KR+ycyQ7fGzhYFKb3XM6Z0OVhiHpbNI8yaSQvTBK99Wx+dsC1lfg08g2QvNuC9YbcLwN7dGXn8qWNaHP4N/XZHtjF+FAFYFHfX8Pn/zx/zM/FqLQboTIL1lCvWVh4NJMC3E6ESkJJNPCSWMRavr6VLzVKVcfG1WedAqXocK++Elx8lT+6ce4xdxQk/LjgyFVEwTk8foUK+5BNXOgkba9b7ORDj94zCyfcaNkxdBr4B/GxObgFgYmgpLHubTeVT/LmCeRXUKTJ6Q7yiDrIuXKmNTP9LWJEjEaVWcxbAcz1Zw5WsRpsZu1Bm92Be5fvwjY7FLhDB5Cp0J6jjwHmo8ISA1tZl8MtUHNJlID1jH7+QRa3to+nrZruNinIXnqNV+Wi2v7kzQI7uF8gzWzqObsKc+SxA0XJZjFguUz9rdYyHrBXmtL9hj3Xr2LgSo1sWgxwoAvStvBy1Lq5f31/iDy6p0DMUBWEDG5ziotIxk5kKj5iVcFHQZTL2nU+9Tf4rg9rOEGDngtXCHzO+ZFwmSzF5bgMaFnEIzvsZqTOiveEQtnISnZ8FEs6kPOg5r2XATTzLHjQXoCSmd6fGbMMJrsYtKxAc++MQaLMccOS7BPwVVTiPVMEPBh0ztXtTg64pciFPQPEjWWYZ4XSRt1a57H+t0Q1mgh5NGtSFQk+GoNYdo10dpT69YDTnLGtqTba96ZDzd9aYtFvs4j0ksL13BqehE8dGTtSN/Tp2C9w4Vk+JndQIJyDHV5s3iteqKllHjeO5rgRxlwiQubPmp/OYV7UaWsWlRCl6gGrQ2Bw2YQHXqgxpUXovvT+ET8FrthWTS7VUp8FeHm3hZTn2SKj/FCmp+9kkFIb0g9WQKYJJweiwCFPUKDaDCATMr+Tt+HYpqaFtQ2I/MrbFLiHem8Shpw7qojr4B85Cqdc44YcZb2Z/qetZLb33uHh8TBlAhBG6hioziRbU442T46jAdjhfqYG81Mgka3kIY6a2rFwSN9dXiQntm31FbrWwaMuZpYE/RDGOV8e8qXJ4u0E6jIijwDAYVa84ScshmQKmpLzhei/i2c5ySNLQtR9qNpCaubRc/+nHgAx9pT3bdmK7kRccvrxvK+PoNlUmcdG7Gr6+nHTXR/yo06ryM21rXEYKkpTt2LnPI4lnGmqab3dC/jgen1yUFvU0+t/9+bPNaf/YL8VpfkMe6e6s7s+b9fytajMl5YtINpuFY/SNwUXzSQoRCwOJhAMSezpHX1IuonksMtphRAlHe6QBKF2dEmMoql161yyr3AG4voHP2/exJNc8vvuaqfSYVbGkPmAR2EkKu0qcCewDx6LVxISk8p/KQGA/nGEr96cZ54lbGqiXemM72IsqYnquAcnq7BGygn5ugno2j7UbQGDkmZiw6xAad/kap88Khx3U1tNmGzgY8DmlprC9wj78zJHgbeu1/GfbsdnxKGbnJoACBJNNjjwzvdX+q685S+YX28a/yst0a+dvsw2dE78lwqsuT15DFs/IynaErrSNjltR/VIwYJrIoYYP0kk1Zdk4pB+hyYkjHpx3hiEF/6n8UKTm01s4BqtT/yPz6F/rQgD1fhiO2yocBIBZRrRk7h460ZGAzXX6ioGzMKkz3SxPVLeieh6fdj+0YpmCGAhELQDiDMzrApRs65RGLCCq+giLCy4ThNLVkWmraWAI65U+Alba4giznK6QCNy/9qm9qzCTvVZ+V7zyBK98kgAueSHs0ilfeUgJdH4AaSwJ7FUxQYj0m/cnxwAXMiY6lB40y2piArnmPhhY6WqY2qYDS8Rvfa2Xsh6caJEM4lmi4J32JcQe6npGmn/g4/AMfPnYRmI5bKz1dbjMVE3qv4p5VD8tWSMfOMdnsrxaSdlq60n+mdapPOkDyMfEpdRLldUbR1n3g4gKrqbWKaxo7fj1rjzx/rPV5PdbNir8rvZ+wiCmAoQBw2ctq5UWSKK/PTnIJzYhT1qtMUhlZH9AXR47iJW0Kqjo4h0x7+AHK1PTExl+WWdcUsuH1saxl/BiQeG/QQIA4oNXEgwSQMWKvdlPXJBZXwj2Ehb6L5dmvzOSyC4N9EAE9PFrL8vXbG1jpPmAdq3JgyVtJ3r8727PxJUc9QxDkefTJyXFPQfe54hlUHU1hjfxn5mSmGCqChoakmvdoKZdj+j6BJo0Lx8y83wfQDlUhTwuzoPH49kCL8J6OdweURVRZgJl2aT9p67Oegj35qs2DvQudzCENiOU4JpNFfqtPajQstcGVrpRbQENrfQeGeJ+GC1A9jTJK/zm7XCq0FTqQTLUAziCo9J/NX0zlk5y+U6D0v36nLPlMZ+kh69hjrc/rtdr9bu7e6gas37pletoWnI7B29P+nqfVGiBaeCftbabJgKnNHLklu3AwjFZdkJSCmOWCnCRrGXUZM05bdc6x2iLCpd5UxFwppgDcYNGs13NaNdW4XmNGAU/WnAdse7NNMPEQLmTW5zCGoeg+eiwvvYN4sRoDnHl81RYw9Q395C5A4ms+nkRL0Iox1ul1Mvzc8CBVPEgr7xIJYI5aqCTBIX+RI4HzIMFytd6V78yrW7K8qutrBrJqbcJvFtL4NoFile/Kqxar7PzzBJvyGMnWfKBlPxv22Y/AP/QxFNjNAQtPw5ZjJ57eeUzVSy6+Ojrt4PjMC3JN/5WWC9psuudFW4UNgudKpnzOuDTrSOl/AbDiR3T5XN51qRtN/5/F83it9/VYtzF7ZgfVo6447eloNGJ5y/CmaM3L2IRFy5gO0pK1VWlaiMOarxK3gSiUZ2eMYJeepJdBy72jVh4uGcUBotdxig15rijyEynY0RckGWi+C/HBUYLnGt5AVyaXclYWNfmz1lSmDRKFocUcLe93DzaacBRvJQ4ytgcV4elJN6PjMj6Q+Jojg7zGttM3H0DBbDbv+F9z58C4PwEpY8fp1QuoAqF4VnlWGYRWlVXfKCPH9QLzNLCLlQyZjhcmY9tByHK85b4X29pDKunRs9AidiUaDznM9heVWfa++pHT1rt3gM98Dewf2TzYO3fQwivKvKA7uXJykrw+bK4DNR6p2/Gb+fMa0Gdx6sa44qjQRhkVSjhmQid/ewikxnv1r4xuleOZxLntUMY3HQFg0vOivhy80eqTz7dD4L7AansYgEBn/V5sk6oeiBKScqxNOQYQkkBIsNuh52I23Z4+01JbZ4DrfIggoacXuQCNKAzUWLTGINM6qz6HRVYBsWBkeyNl1qVWugb15kSBFUFvWCdbt+4lEo12LGG6FCR2CNT2FAylTAn0DtgcBzdRfKAtvvGVKbqRP3kmIRNXwqOMzWDHHrONSdTUy+f488DqxSf9tFLYGCfPghADKAOwXkwR+WaBlOdZECFGSGR5BrEMnalX5zXGuQjqZznkdWnbJF7kNBKkfwfYz3r98ZCB3xmnnznpMiKHOBAiwEm1d155u3+h/1nOU5TQ9F+MI6Z5ooe8HuGhOrjJZ2MgdQXlmLfmJa1TMdP63KGPr0IwwPSzlQ+tpaEOfpqPut+B+6QbgXULAzyzfTytrnw+YYO08iQOBMmUbREk9Yxw0SFhlEDDKE0ljboqpwji7M1RMHIFmPlrWjp7Q6NbbF0UBpJpKQURGUw6oQBKYFpd6q/+tp0FJnHMi2m2HuitCmZLl4qcNejYtP2uaPypdrxf38vTY5I+Qj1KGiVDk4sM57DeNhVECueVEhz/tgNwtEwBUQFf8Yy8dgWGY9eEqDaBNx+YGAqTuxgcEziPTtvl2Cg8e8b3i/aQt6NqhohqNlaKPenXEQa7mLWQthxrGjmIr7LV9drHYT/9SWD/NAV/nQmaGPdpfOglq7xlVp3yY+JLZqmx1HpTX6d+X+q/lsI0TfdskzPiujaVAxezmE+BcQZSNZ/nb1SqirZu2PjMf3xg5GW6EVi3ku+ATBlkv2hztws3K9FTXK0sJonzuYwoAoUAJiDkMPXIKERp8apeVHWVrINxend5H2UQNK5jliQ3fZmBgl3Leh0Vz0JONRMIGgAjlTiVGwXwx23dDUBQQnjdefBL8VTVXeOeGQtL/hAIm9RCwkgFaLNLwD6kVwsxakY2JV1lpwiIg1iCdPE3vGv5ndNKyCCkNyjldkHOXRN2vCyxH5DtBT5ryUBbXNuvCE8HIfWqmJzxBA0xQhOAQAQwRjJkpr0NmCClcnwneLPEZvgJyHoDvf+1VdCPfbf+Ga+W7VnBw5SfmZ9Sq8rH1Lc0bimehG3JZaMSN+lbu2fwLqXgtN6nHrKIBRhwC1bLrzKe7OgjMmZIbVAxg36YG9H/KGsmxsmTJpZ7F25IdnVxX7R6zvH9MJxfKQ3KRU619X3h47q3rU0E5MYt+Ln1y7M35fNg4rRlh1PUe57blFLZ4WXN0xJPbdgFQziQg/qwziVoCj75cjqGCaLDUUVUFwSRBgWFqyQCpHTkAwpsOw98kXvZd46H1+KiybSMHjOK920BCjruN4yJT/SSLiq6LIy1xR3WqyKQCkNZkbbLJUN7jYsLzzORqADEK0N40W4Z2JKZBI/GV8nn0q8sE6Eft3zhJYv27Vw1bs37NfDlopd1JyE+yVtZpz5ue7jo2Q8DH/zo6As6ONChOPElcmVf5kWoDG/MYQVHW7z1WOib9Z957qsL1Bv+9K58yRY7FiRrM3/nBcCQgDy4cVOSttwuSEAn17dFrM+4WsS69Fi3wXiG09V8Bl6I8RI08wkLG6NKgVwkRz2ypJpeiBfDOgNYhmgdyr//XL28laP9FfNiAy32CbiP8sBlMN9IrYCqtD/uW53xyT7xMdcgeZyRud9fzzLUhFIqJj30EqZCaayCm948Eotj7KgUc5tUeCu8z2571hlZy1NTo6/Aw3I8Im8CVfJ+5LPyYhWoeEyiNKy8Ls886GOYgXUJbygnXWaRytW8KHX5Ewum+2t86pg04Jf+eB0zGcOTJFks2gUj8r4b5LFsNGVu6wE0LjpGCdaOFtsnrbvHunuu+9/+UkSgPLIE1WikzToImgZcGC/t4ykGLZYpn5xy3p+2SmkYobUg35Lvek1EKPpQZsNhpzKU1FnPETR5B/AoYaObvT1onR/DV1/UeA2sG5HvpHe3FoNSKryY6aZ9vfAeJO5Ktlq+ljbqCWE5OsBXnwgrqrNWU15D97jWiWV53kAJocuAzF5CKlU+XQYZKKEmrazw4gAGglnQGM+L1zm0Nk5Xmqcuzpo5GampkuhgECBARYbyVc5kUfR5GESrmnwCGdaTRIgguowN20pPrniaAMGvOf+P/ASrUGSCUPP4D9a4OjgncoEJ6KUfx0du5FfF8aQt2F9yJnLAsU4CDvqmMVrIZ9VSGslCviGiBo1ZN4PfFjjJJwAtpDLxPvslPOOswvu9Gz3Pvcx+gtb+9NarHwv+Fni40D+M7eBRjjfOxtknWsZPn8BrRQNXW9CPFz0FBcSyIMs28A29VUzJurKYRTiFYyqe7JX+tzo8Qw6mgGvKUpWxBb8aF2lG4LF3dQsDcDq7zJbX+nmdVmBxAlZ6CBTYqylUlk0Zi1in7BNMYQ2BZ3lVMiu3PwuqoDpKuSFTmQUNGFqf4rtDBl1BSTtbMYecAmahnOIGTXoqlQTxa9xEsU1+e4U+ykMVhUIZwOzTMgX3E2jCcM7XF4gnZcJbTd4GmbwEw3mreN98aizBU0Ib057RNvVXjN4/ub/XvM8GbeKZxkoFC7tSyDS8roi8ii5feD6ntwbDgdkLppwqmMI6f4Hq0zKXh8iSyThL51Mmgp/Vk9C3AsXUrf3eBz4K/8CHoI8eD/JE7rOeSf9zrCqsVBz0M560eiSWiUnkWYNZ139NQuvgXU3xcdW28KrrP4oOq33jrGkOUZz1X/IeacXnvOe/6K9vOXmsm9L/GgXV4nNVnMdzWT3XD28u81CwYWGOos7uVF4uArjUb6xfeOm52mt5ElbWozFHKLFBDKeY+mQNBcxqylCLBXbyfmsaG21n7FM8al0oWYM3LsMSAFn1lnJ75mUb6mkGwKUwj5CJnfTdimHsI/vnvT8FOHGP+0p1kQxUTG9x/+pSgd/wEIoPsMaZmD10BcuHFRpABeGU5OjDkIs4yYr05m4LR2deIVaMZsma8t+LQg2hjDZN6rEYywAyUx6fwxWcTeUYOPp4ew3GMBjIMR28EA9SDHQqPHIAGg16//idDySIrpCU1z0G+5lPHaEBVGmgybWjhVpM+1Fj5aLvbCf1GRGOsul8YKA5RaX/E6h6zfpyhuwCyjZ2fYgZj8onIwVIuGuMJ7+X/hfQHnRLFTRK9LBzFIhdm4C/A1M6Ays215YPA5hqblFOMPXhPeSWJlaWizkkAGIBOHhkgHP8sxfHQwfUYhNWML8MU1sQQEy3LYo7JybeDx5OsAmLz/s5fRUh1KPpvLzLAh2bFoaQ/SwdLKWs6bCfwB1S3oTpuqfVJ6DM6Wf0sx0CLfFVa1Ic/MwwjeUMoLWHZGVWUtPN+KTytRX46n/Gr2m4iB8OURjlt/QxtdYbEKZnahCNIUBE33nN0WYFCTIZZ4YAXvzNb5I96lvQZg46ZtHR3gZkBMlXzS95CebZlpHdaLM1KMo1RkINTD0WOo2gzPp8f5jgsz4DeOpVKONAn9KVrecOIaU75a3e/7VAFyKH42Sdbv7Lfjb9t74WYrFDAjXeSdcgua6x79ECp/UefZeWx/0sM3inYYoyiPE7ybNqL/BgL/cMptR4FrsBvo8d5fjFwPusAPSgZhDewe2et2lSls1/CiySSUk8+jjMx8dNPRgLJuHJwaArpJVc3u1EYbWex6KOqZ0h3xMN5MvRXzShrEUA4R0B28dA9DCCNlRfauIkKVfv5/xTfQK4qqzVazFGMk5oAhVl5lDA9EOn1VR4V0Oi+Xz6zGqCmeGJuvbzpmk2AV4fNx2SHkYGnUdX/TPtB9K7NdO+Co94OA1kDPYyc2gMOjGvEFjrj4aESIZum/KbQkVVR9KlejIn1WP5nX374EdhP/ah8agvJj0H+SGPnMNK/30K26WAqWfJy5O+iWwk0JldxKHnckCTT3jqWOakbAAF4MqPOYWs+el2aCHrk3CJN5x8FK/X3QHNY913AwBlyQfUj0qn98wfghTnVKZg0NM4nsVmf6rDQWfoHkGumrcAoXadbTcFYOWMOSKshzXvI6dRrFcP1XASo7xVUO3Ma2+ETEWKazn9jX616ThEh8eFhoVka/LFW35VBnrNN8pnruZmh7JxTqnydd4Esmn6r26VcxoO6+MB/R4geTyG1wVZ+dCAgv2E0EuvJ/sq/GnTfu36MJam2hDjq5vOnZXKLCobEeOTsxWb64u2V0yHtRjgOjUGymBD5IFjgxwLjmPKLKf0eW8I3jDEKILyd9DKgTOTFxqi+GSWJKX88GAh9ntb2PKf+eR4egvN7x+/m9csgJ7em4k6ec6ibDLmmnJMZJxMPE8Repz0VMbNUZhhSVfVR30rCBZZ4idB1f2CTu5qEOwDJlDd/pZpd0AHVsOvNggYoS9gEFgINvFK6gIdWv2YXs/WU7dxTMzSHlUxSxAD2eMez9Pvmfr2pZrSF5OLjBIk6LPb8q+xjuBMs/Ckhcp8XLIUJshbVV218mB+bf9qZ2FK2GGAmHcFHV2shQuSEuWqczHdyqm6iR4yXkYlth5DFDBJzweMZ1pxJwKzpUCIB0BIlD49VtNJ0dDzmEP6TEFldvX6WE8ink+aag1QkreMmVet9cGhW9eJIqtZNZtLGtW6WIWPUGKQRiL75lVH0GU+tajtsd8n3UkmlozJDhaS10JqwTiTeutsBBfM8uOcAexx1333AOsymf1NaxmjyjG4jrV0xBSIpnHyXDkovUo+1zjpjLMMvvTTvTt9oQcVBwVOMVwImEvesI1QcrJ1AWmWJ5Cf6N9k4Rkp24HVhsfaAFEIoPQT/SlsR0PcS5pKXOUtrWZYZgO6N4MCXS/QoS6ZdstQK83kKduhdYXnlKoAY00LVjsdTARTjUL0j8B2ULZW/bt3Fsck+gxgqb+h2N6FHxQKX3NgmvXTvDzoRq+1geHXbqjsnlhYihP7IbxvICksPg5PCQVSsASmmQdEFpp3jDYu2i/LYQ+lFx52e1RT0uyJi6L62ox7ZKjcOg0gvYulIgbWieMAkSGU8LSFTJf4n2d/FCgYvlDF7r/9NJYeQMc22wHc8zk2LiEG6oYqAmUKNQgElOQGmSrGK/v7ma854q6VGvqd9R+h/+IkqLdaI42kN/VZdB1KEsEPov8qp1Y7C0Y+q7plPA0n8StwJhWurJV6mXV17T3aaXuU3QOoF/wSIbGA9Qt/vz/j+1mDJZjuU8slQggRDGaEBdCpSBbx3lAe3FEEjpoJfiKEoYXlhkcROc4vlbq9zcDSomUDywBEnh7flLAT3CwzTKaVp9ipKBIFYAlvLRksHgq9lSPmvJRA7HW0N4jahAuqvToGkTfqzh5YEZQHxiwQp8DLQ8pqQtAujCMNRh5GwWs8dSufOjuEIJVrHNRTETuXFzueFntohEj6yZNdJ4W02m2QeTD4uBgmu1MKkAZ5kuvVRWYwHAWGtNwFrIqHrNyifNJFOVw5hIQ2GS/UABtlOtpPwDdcLgpC+YV+uYyMNb1hLNZaFSY/5MZTrwbe8Dr008e0EfZjeKhOcHNvRqjzyfodWi8XHfeaOfncqhWNuTNAZJwz5wLbiQ6qMLEqZBxzF1HAn+/UO+m/l5zG9Z3m13/l76izAxJYt5tvJR05hfDy8g4ZMBEYT2hNT45TZH3XEBcSKEdqgVey0M/WhgxD9qWINW+riAkiwRBOY6p95KLDUXYt8Mm4FhxXW5MIcjkYLgsOVKS6VQBPsFm7knFAczU1edG1JJ+Zp/0xoWe/tK6KfEUHD5lxyR+gMkDQj4cwTBeHksG00iiQw+SVJq8nmVjK4B43+MpwvoVgv7MUiKZiygyhgbnGVY1lKCscU69ZUhico9y9kD9WkU+CQWRDY6Psk4zBIszVRaEZKGjEF5ED1MyMY9GME1Lia5Ev5T0pOoWsxo0eC068IUhofezaIvmg9ZmEmSgL8f1Vj8C2uKs9cgdV2mS67ak7bJbxzPQiyxRCF6RM6OhqXGVavBVnR0C+Zr9TAq1mJtmKFybV7MEatqaKa91euwvG76tHZ+PWcwu+hD8Woe7Lc6QmxPcavOFdFSOJePV2TtR9xkJ1O1azovRytB0qyQne6qSmAMX0qE/ep4cHQqtt/aBpWeCSprPsAXi5yqse6ATgBFfSbWFE9rJ3Kg5TU8v4vVZcmh5s9X0erRCBg1y/UGwvuXcCkrUYUmPn8TtCGbDedw7FQpFThbYiJw1ejAdX5bMPVsb3ILkMaHpxqtAEo2xsrfgeebPg3G/MsUgaeNThNfqAQrZXwICJPTmTklBTxu1TXHqIx+aQgeU/2UItRArkmIzrnmtZcNK3qNBV/RUA2Y+JD0WnyyPXwTdH0XIQswhVhjSW+z7X/Wmtu4vo/+BRYeCQMd1rmvcPEALojBBbagyAdgQo/EIHxjhrH2tR7EJf4A3DUlKNOzm6DgOVN9kbIDzGSLZ78XdlTU7z8xnWswhBbxWQSsRX0NLBI38OS72WxU2+RSco3FR6nX6cTIR6WktdI7OmwcnrrJFP54hHnXXEpnKfAv7Cz2jWSoAkefZJSZY2DsVdA2yRHqhi4ShntaJKtubJYYbSWH1kkq1Yb5dGjpISdcyHhpRyxgHLaSDIxySupp2xeJXT06iIwnY0kLMZBUfrQA/vcbLD6HqFUKTuVApUfBVigOpcTC9eZAjBhMk++McwRRvIiFGKMrfQTaCOC0hD+Jt8090NLvxCj8NqvW13iehW8pbhCK5mJR8dXZhysNHXCSBQK23b6Ddy7FCORTgrg9Wz/mOcNfAzXr95sI9e6L+VF5g6M8q7S1sxO2ozPBZCYYZ0o/0oQLQqY4rHAWzLEvCQ5j3rob64X4cJCiusnlYUfDogX2Ytldtbd57hj0NuvvAP+NNbhqfNoFuZ+qqqEJLf4x3l0OlyEHo67i6UvllWEiGCq/V7AcqpeVS7mYOP2t5BGoaa5hiatZJzUvlKlxTkbN9JRilfrtKHUiVsGcaz0BDPGGLZo44EXwHkFOzI1VZE9q9rTStTCgXUUBbzqCEP+EbNGhRInEKG8iSi82X3Aix4r60ReVd41hudqBg4sq/ODkocniDP0EpdpPyxwRUJTCQ1dx64TKNFQDKsNAGnedPny0SesJ8moCjjX6AYtS/CSqmsZgZj3HyedewfurgIgCc20dNMs6GgnMaJPXTo47M6I8u+6NbFjEWTRxWaYGPOfG/cPNfXvQqda3wTReKs9HotPRFxvuR581qBBmiJRwAusMOj/Ciyjl6YoZ6tQgmN6r+LgsF6u+h8o/dqJr/TQx+jw749+czv2LAUgSnLPXxJSFv1qcChEN1arO/cWUsgOuqSQ5bpQeUjnHC0VxVHf7wxuN7a6tIkkleTVabA30Mot1Xcd7+Q53WiDaa3youp3JJj6nJS+GV1lEqoIYN0PN1zRZ6EqjdBOhM0rXhFbytjiioYHEkrhXKhMceFp/0fP2IlXV9HQmW7Mng6Jm3rEG7UEk9ZIW+8HA3OYIpL1e+TJ8HeqAKId6fozMSno7T/vXjajNwB4ujtutSZCs2fVmemQut1UUrrM5Q07BCPLu7pIeg8WDyY6EGk4uTx4XOfeliDuloe17iYIm5SPj1/K51lu5lfZO71r4HvC1vsqykTKvHxYDU+tYe7puh1CHUf+SbX2ce6Bimh/U7JCp7UOkpWWq3JDCd/dzXPOtQrhchy03+y6k6sVS1x8+flgHsxMsCx3Hq1iOyWlXdCJWT+fFtrMCPKJnDE4o52poQxenFcPB+3l3hs0YncjkhlduXdoIOPV+rCCKQcN04nkChTxZt3Eb6relieUx8TpYksjW9gPqvORd/T84520gi0KSVkzOp76bHjBEpKMpB00qNMxWITpBllfM/JJQYfgE7w4tiuBaIJB9SN41bFIkc/QhK9yhEYx62lqyXbjeMuk/asN9rjFFjkxGX8+rRdmKChhTbsltP4UmT1pmtccryKxGhvzXw1ptSdygvVVXiGldSYM6UeA513qWeTTjdZ8j6F3/u2vxn2qSeSxgE+HbOzYQJz1KVazfvWmdjyFWLJMKRRFqkmGGQdrH4WdC9DNyeZ+VV4Y2khwazZe3+a/nvEWTkL/pITUFifKnpJQwq5EVqtpuEH/9ciPoKaPnUA02rw8S33nlpKSYtrTF5Z6tZawtdY1rbAhBLdkRXDtIol+Np/AmBPfQBLcMiXcc9kW4+L1OeKMbwbojURABqCyKlz/DbVTB0T3ECmTiVZZ/Td0cc85SPfFAsRfvIKY+xScVixi+FBbVVSPsmWr4zMJE2d3hJglGGyin3Vos+0DYvjTOK5S0Kn8yDtUxzZS6mONnQ3gBUqNpq9eJC8AboRtkmGrKmB4Ki1PmXogP3NrXBVAhIOsqijGWgaB12MXcXIsK/6VBodB5GBms9vhux1Twzv1WRV3bkYBehBMwlYygMr1mmiK2Mm5QQw/Zjqe6um/DZDeamoBhxQFdYwARF+Hp7EpMC43iArzgrzHp2eN+8fIxRgW3w1rJppN7X9ojandavEzo7BESEkKPki08OoY7ECFipQCE9rVJSMTwzZCdB6x0+PxAbN42Mrfa+AqgC5QJ50HRna44sOc3lKR08lQtAaAnz0nZvRzTr/eAI+pj4z5GF1I5+UIo+pjDFVdAHh3lfPtT+dEQeZcYEPPCRrBLRGJpPxreE3nN4+QJKjIdf+eozhvbXCM+wOjbPuFFBqvYzT2SD3lKdT8b4aZgVLndpmXzw70Pas3mtBG6gzYGr8lBeusysFwajT2nCXuBOcc4U+CEbqP9qxgZQbmd0NeahguGce1CztuLBmnxU8Tbd3mVJh3bDsn3u89ae9pvpt1lWOEGjImGSlAuSK/9eMKhnSZIr6L93ITsZf4gwEBHtqi1cC3skDEx2xWf8damg7/TU0FQrYMr8VjHtmj0vZah7HNpIRqmDHZxzkMARhbQNEYvWEpgINMqja70oyK5vkK7ZVvrVfSoWwElTcCcG1mt6Whz4vMjjGOzOkswl+QkduMyJaeILIUe89b0F9GK4IJaMwT2e8Goe+5xzkk0hUQHUKDIVv9DMAnnHwEN7k6WEkDO01G0NDUU/ZeFfsaDT5G3Ue/NDdAHGV3g0fCy3BtRoL6BiEwWleZHicjGPTW+We5WSc15/wvKZ6IkhULp3W87egIrfwqTOSSnb8nIALOkNI6EnVGmMScXCcx57yBO1TOjGQQ4biowlYzajOzlNdN63TBEyaDsYYvuYx2E97bdf/5G+B6WwKvUux9GnqW5OBarvpf0MXMTrCaAXTAmfKtWiMjFVRY1MTVvRRjyHtbdfffOT7oq/zt26D+Z30JKxiNuP30BCdDrYGOJj3VujWiyKNCuc1xefA6Uk+2cUQqhO/htDp1Dstdpty6aAVD45Fh/3+PZc+uhJbU21ySoRWF744HE56qDReW6TmdwTVYEXohO0lj4KmkKZ2EDXzUtj1hKVswhovXN9EihJ2cofLCMOGWE17OS4ivTMtqjw4yQWgROeiSI5htHrsLxVQMmB+H1n3YJfkkeQQIE8kPysCp7Yqb0Jy5d/rHrs20rguHaA4frXYQ37ozGxuX6QyeVs0E2DqHVgo+WnjYs1Q+DyDSy/UEy1KZpfom/TXRU6t9y8N43Fdtv7ZxLTd19jfp/X+HxesEN1kD3MKXiBaszE0ZXXgckJ6Sqr/kwGqeHotTjHEMItI9RWNvzU+qdWdVHRwzkOcNv38nGXT0qdYESLmJA3aqVohZP/n2Bu6JhHGoG0qZdRBD9DoCXq+RZPRIW/M6dZ9CGV4jAQPDUUkR1GCGtfSU+KBGzdMJ7uymdBfhNRgeYYmcvUzlKueLivuuZYH5IEFk3pDkJcSimw3t/nYFKKwrrxH+yZPlwUdp1giCuwQvHEBKo6hiVfnBQMuvcpvpgtVVFoXh9eT3ARwcsQKdL3VTBrXmi4ju1VyhakQ21vFUJGnOVu2zDb6thawJd8dp8p1C9fB46UMH9j3kB/K+uSwDFLW7F2OS84Gop72RB5qDAyyqo4uK8Hj3Iljwj8TlpImq/61d6RlP0U/Z1nYdfCJR4HPfO0oMtXnAaiEKGkpF8ZcAC8Hd+p2Xs8+iCfavHi0uDUBtc+u0DDuMqWhqbh+ZY9Zp421iGSXhVTsOwOWrbGntbKLvXgVG7IS63mKv1/NA64L09vTTiFo+Zhsgm5X6NMLzCbFBOlhnFPp1Xp4ga/SYL3aR8olBZFqndMf1BQJvI+aWiMAgYqpnoPwr01f95R7TQsR2yOwbcphdXBMC25a0Uq+xfP5ubVKgcEEVE+SO/X94AkPYymAaDymJ0iPxkM6crwR4BA152OiPEg9aDr6XYtdOW5FEZCGgQqeKDbUdu0r6ulNiLykkZHrFeMWUElZEJAB20IHFxe+KnPyIZVgiFe9nrbEJu57AcLe9iJmOZQ4+531edGCs8PQxJYGb86gF9qhLwkj2a3qoyePjr/XPA57w2vRpurACZQcvX5DhZusIFfGQAoqnVYx1xmArVGP0iWd+lvP1R0oQHWhxYgtKSw8ooGAp1f81LLV+HSrrxSVDVi2oXE16wK2f+hz8RTeQ6iMOphvfSVgZW9W2ceiIKTj3oACp03VyuGsKoUcfZtVCOLJ2rUtVyhrRw+EdGn9x0KVl+BDjEYAnuuz51QBjxz6tJfGEEnHLPxdAuQ36waGF+XdyyvSUALlaIdM2CRoIvCCcgX4ude4C156N20RhIJUKjT4tYzHOdeSCb7Rdvx1j/P4VAAwYULS2EHVeIbAtKm9G3BDO4qvjWmxOIGvAa0Pmvkwg4AtDynx06OxaPLdY7BrGdnodwGcdzqoW5C+qHeWU/Kpv8o/R4JE6X/IkxedRiXRFLrkTzwOf/1rE4yanhCgRFab/iuP2esIg/SdAToWLjOvE0kjP/PNbfBx26ZYQL2s0JDebs4sRTa0nfSKq42nl62Bp6WxtOgKclTOxETvROYq/zotUkQVoeDNg8rFD+TAKLUpdOzYIVQMKdS97BzDDCGcqboutFtxhl6ka5sB/F1Ag8n0CnmHx4l5Dl/UH6CyKoS6rLDnP3USFvfXqoTklNAK6CeZ98k7UJ6kQojg5PP2Mn5jaGPcj36tgUV2fPd1vTl2WDWAYEmfS+PINFBjCk4j4l228mxTr/qTt+Ktl8CgGR5+HqdbSXvs7mHAMMI1EYaxQGjhUHnS6qFMHs8YHsd8mHZ/SghinEInMmf0yJEGtWK2nopcToN1PeDCHGUkZ27WwSrIOfpDnrBreigQGcA3CJCXQB8jGWeIp5xOxK7/+6teXv/qMqLMYjX1J3GKh566WdWmtyj5TO8p+WI8giSoqaKTUO1Zn/yFpNmi4b3K2/QlaSOSKHWjzjcv26g8SWJt7BXqR2tN5sDIEk9y9LFRP22g1mnSZC05NpPQwYrE8kaDRXdCUAjWjfErdCpJC5+eYTA3F4paO9Fv3fngQVsKF0rQUmlmsPeaCqdgR/70eoPCPJxG+h+AmW05wdfR9zcqDVm0ACjDEaJljryuY9De7BrhII5n8deymnzQgnTmIR+G2rc8+KQGJeWCYyJyoX3Q+WvyhTMfnTlQARKEQwG8xilfAZOPVzv4SvewJMitUwQ4BQ+lKfWCOK4x1MQfYn6NkSgEVd0EsBJcgyYexmKm/QjYDTmrBpX/XRcTbLLfIjNQnkW/2W7KhHaEtIpzgUl3LbzyfZ/rk6+W/vdV+RrvQasaIEytdg93KFSC5Uk+naqJ1JLgwxCJ4IfqZLYXy7kiewmes9MT9TL2HD3KNvesr990+li8yukFFZQDqFIS1DiKqhTWzOM4vbMGaMIODRkkaVFAOg9HLTTo7+YZrNlRXC1KHV6MWKCcUq5oRIb2m1nvS68smlyrmEs1Ut2YwvDTi5aChBgESz7nk2k0CtrIQdeSvG7KS+VLYmu8qjuyY4HYQwMhbnBkhcu1AsrgY4vDzULHaTtpKDG3iKdCT55S0Al5UtDwVHIFmJLC41fGM8XAJXB4BzzyHOiykrFeCTtIK+W18ioNaDCR4ychAMtGvMArgcvRNtIHnU5jFAPkJ4FGMUZ5nNvNqAfkEp0IQx27Kf2daMkDTKivrFP62ha3HCWr1KH9y/501g6wQqZyXBey7NQvVBuus0qv35aKVn1yKcfaD/1fCrhN4qOaT1jTxxoykH7SZ1capOyTy+b6PmVFWZ7dSIVslQbjBHuG8goAKLrLyTmjTkObts0LVFaEHY+6mjdwSE9QpiGeQOEl9FQoClQOeHKpWMF9t3GvLdKIJwpR8FwkSkWXQ5vJJpumIQBqWhvxuMPC14bbtH1tW5DJQwUuU5UaD4nRlCd59HtNASjFR04PLYfMRFiDlnbwtjfd8PY5GQE42iJg9tf6Yc55sLS0n2041FjYyQtNGAq6K1RwfEY4qtHNflD2ODDpBUfKuDTT2iSmneCWoQsCbQhqPmGmShd8yS1mNiEK+WwiTx6TSOmL0g9pw8obVnBv/Gx/USMfPz7qXeskKuoi5ajNIlyUEiW3lAMycAfX1zwWrPbOZxmClqj/OUaWeqzvtpp6XzoX8nVQkvRTD6tkOw2tuwlAwxek7Hmjw0X/BUEC+J/ex+0pyooCLC6S4CdIAIEyMwhhzXpSkSV2NAtfq0t7BXTNQwoHlaWfYuV9sENIXMGFgq2vy96zzYBi1XxNO73uLdUNBU7yY/BVeMo66E1Ub5G2Wb3ymMLVFhL2UQFmtFWKKSwkm6LPngAcwMAp5NGu13kJ+hTdUVd5yTaNE2c3fmq/puw5Thz3xSR06Tg/744SAeElhG72mtnLgKBLeyiGaZ4D3FGxaw1hyePI5RmhPuMtBbUqHrd4kpirkiSXaqGTBVLsi9j83gWjAJN06afKU045UY7/rMxmJU8RGnEJs2jznZFAmxWqEwI25J2up14Lf/Tu+Om1vao5Z9kHTFji53YUH6Soqa4D5exJOU8Pc+JLKKaoZv5xrHqs16sNuZ5av3/ZQ/dPYWKUoHyzkIEu6RWyxnz/U1lt5329RkVW6pt3i9xPmTJLhUvqZRpsNf3zyTpNWglCkGk/9ehALbOKxYYwmHJzAj0BTmhGgrj3/qpFNMsBPUrRMDSjVZ6RqQJn3SDqTzGvG5SL8V8Ib0liLj6ivPfmaUi8rIaklJ5QupfPBRODTv0GkHnDK/Wmm0IozZHZBDxdx+egVQybbJ8aNNUCz+EJhmxb8qr4Ya3eKbXzL+Lf2O3S9tWiCDUdK4j3yT57+f0lw9YX/7JNa20P/Vu77rV6AA0vOXl4ko1DuCb9N+RjjBLqSFo8aL/S//3+vibyxv0NsHeRez/RGi2eJs0+TenJsdbrrGW0JbpVF6GDaE1HHWcDJf3JC2jgOe7FoJBWoYW49NS+j/WpHHjIM8VCnOqVJYafhGNMkcsizY9DZjzNRTNGpZ08SzyJfJYrynkmZhYPjyuZaV0tvckpTrDAgUivKWjOOCPQwUc9UmmAe2V9tHHkkvNoeZ0SGTmGYnvxVfOPP/HUgu4Mc4T1n72jJrPTboR2bil5S9oO3kpoYl/M8Aq1nBSCY5/88X4rxmrksTYOzTPYP1bVAzmxXnktZQr4NBRkXeu8K1I7/IayRcNGsNf+tKRAM8AmF2U86MzZkhC8WOd1kda8c5d28+WbvorOCJ3ULS2b/Pe+T1v7H50zEajCTxpt9tVFT4vhnNW2WSf1fb/F3R1WBotvIjB9JLzxU4dtVNixAwl27ZSz7Jf2X/ga9/O71ey5y/Es2aITF3WceYuiNYzMk4sIN4X5pKgq2+pZTNnAswFmq+FSjU/FuKKZdAiq0FPiCUX8u0OSvZRtAus2hTcICLOTaB43dJVaBYP9Ve9WO2Kxnrh6U/rAamRz077LdAIJ6i6AZtK3UIj0LlDT5mFwGpL0sdt/5vuOPMkvwTk6H1vkBtWuh8RQUVlderCAXEwwagoHw+mNCzRYpE9Cd8nSPCRbGKRDO3tzSaMlyGTfjbetOQQwkWOo91aKZErXKlyYFFvZkPlF+Oq35wXySD0oKqtFZUbO5ziVjsTkJOsdZaTNVXlVkX4XeWbf5UUd5d279ox9hui2n/U/ZZYOl8jo/rl7rD/tteigiGScGkDIOCDqoj7RgauZjbV6WBl55a1uwAowio4ZkNVQZCnBJUxtsTaGBva/sbOm4n25kOA9pjVajtXw9cx7bWkII6cUq9JQwoNJGGETc0QjV1FQlVFDU7SWFABLNFETSi8B5TROhPSkIJ3T0mQHH1WEdi9GLS2+eiDqFbBPOv0+nUcrA8zHfFmFlmsrz9FHAW1D0MPXZdPDRohSAqnMCghKpHtuD7KAkt8pFWvfCZDXUQZGwyDZsaK5JN5hkwPgwWefaVbw9KUrdtIqtcwhoMU7/xXhYtYw40yfNgfARWiiDnjH5HsI8EENKhVlCgG0tuK7Lpw14I0OTUBL+koW0e6XPANtNsfq9B7Lqc7Kk3/26kePN8Cm/rfPiYPlaSHHHqJpOSX3G3BIaULKBflH1ScYsmaFHaXOrxohyQoNNBzjlT5iOecV1hjgI+WjoVNfXMFRyRFKQ2jac90naRRTo9usmImeFb0a9LwZnxTwKCWYFVrS2gcnp71rxXqPVWx6tuh0Ez4zb879xUvIe+RpPAGk3hkBhbE+WlIBk7JOLLPKIExgxHERwBzEyvSefEOs2i/1XHejix6IR1+Th7MyFJirQnKqq9bUWSbqHW/trTHK0I6GafKR3ehH8CPB3AzWBzP45vUmB9VZCGNMLwk/sx0FPdJW8m0M6zRl59iL5y8AOvTaa3yg4722xaijjXlhEwbdwC6DkYv5nnRERRx7UmSykLiIEUxjXPlu1H91EYFpHOP7Ts+TTxyPvyovczzY7xj7ybdtu2WSeobEhG+Gi2TWPH1rxHu1LYYyQdLSzIwSKZtBixd3R91+GGNpfGKWCoihBCyV3okfaKtyFgBYzSXheT0PIfFelu1C6xegOeov0E+9SEBj0ai7KbJM72HzsJ35oOBhDaMxs+0AyrTkC+owlQhgtEUNSPulFDVbcOEV6q2uXvfYqXy9yNEegdBkkNmceJB7at4pvfW1XqeTprvT1BbWYBmrbN4NeS2AQXvgyk8duwZ25dEnvWI00nDq4c3ZOKSUjJQrH4qXHo2TtTl7o8wln12AxaQuwErokV4gx4F6Ex0eT3yJoiUrPXk0Vs8hyfJ4x8ynMenUERkAoIcbjHSufVaQ+lH6NgYqoES89/Ykm6BJxXxFRkyZPl1//WuO0AD5pLCjJMilIjE6k9LhEpaZjcsEoPnMfzosOKc2A+t7Xo2grDRaPfaqD0K0R9hHmzp9k3R4ExFMVy9LF3MkpDAYJNoSlbaxnzuWca8AFPWA2LO2kh/CqjQwiXedAmnFsFJQnAbRqoHoOybLj8bwrtP7j7W8s3zvl0+DFuKhygsFPy/a87QqbQO1G0FPw5Inx3KY5zDE4b359crr7PUqH5ruGTQ2PvoSK9NNdrx+pJhYVpYLKdn/zovqC1KpKFft6S/e1gdGIHLTkiX/LNsGEh+h4iWjfvxzFRimd+WQVguM1MDDexuY4pVeMlh7SWdZlfapMzR8qtzM32QBKUiudYa+cibTwyPSjyO/5zhf679lfVX/6NVR/66bb3qyXt3kBZIqO/UpoE2e02u3+nrCkyl1/S+cgejVWf/jF/kqMw01Sn1fLPgQK6RD3itmpwmqMfL1GhJNZJ63K1m5kUk5ko34FBS1ovTEdJocyuWTUWh0EExYZ7ulQoZrQVzpCaJe4T2RexrJRXV4FK6XxPm1ZT6qiT4t6KCkwN3aZ33Kb8fZ2AiZ+ooSFPhJGLkOyGEbrlP+uLWoFTfxYtY401W2IkkcuZK0gUnhMYUCjCETJNK4LvRxVkCRyozoPM57AeR5GErOYY7+mCqthIGQfSi1a32kYWEbed/ZjRLrfTazet7LrkNDSYUfyU8yRh+yIHAraFntkzUFImkpNxM5m1AgFYN2/AzZgvDH1ajNaKb631fTG1jvOwViMets+OYqLXU12e+6+KQSJRfRl2xrZii/1RAJONLA0LiZPr2ldOW10Y+8PXTZM0MJxVUHIQApU1m5bzqlgVgb6IBerAxOINewVzbID+asMpVBXzzIQV3kutV1AYoS5BK0UZ9nrCl7p5vGCdYm1zH5zDEwBPLuXJXg6bSsvTW0bbNSULbaN0xBi3IzO8kbGYKiq34gV/L1EI589bKlYh/AvyvhIlOxnI5T+CsMoZ6WjyGp8MAkYC7A58oiZVkq5mC8zXLDMWEBjrU6mWZNXoyHk9si8uw5vRuZJsU3E3wNoCHtOYUGameBeMQJvDXW4x7j3ewnZzm19ewoNhtYGvNDZuuxmGIamsy375B2SlOgryhvA8CCNs2sXMfnSv8LsscYR6hjP8f1ta8CroBYexAeoWqYSdtlJNEEi1TOdaZMEjS9cImjRV5WO1P96q1C6iOTDo/VCsWaUPgEFmoByVxGyJsGoaYU2k1OZ9vgWl7DMgEkhZsKmtbTjsNk+zmuKKWLfBV3C/q8YpUN43RqGgpSwBn5p4Ops8FlUgwC0bAyZYvmE/+1fRFSg8SnlAeZf+vDHdlLp96GFXtSlGmlhUnKezWSBW6lDOyAUSaizaPW3E+sPBX6p37Os4cEOJ1BRDsctusHJqikAuJen+fZlCr7OslL8XUUXjvZVjQnTWstcFiryPOkKSo8SN8i4zg5H0kqecy+tRiB0GxKczYdhrHCM3D59CudDFiVnSXH/aWMiuNEAkpXxKBPpJZx98qfD94UXOAz6smsFr+E9rcW1xJrzBoP63d1vOlbyGTJlTZSsm4s17xaVBzZul609g8DELJyVwYzxxSCN+exBd/f3l4lkftRB4CZiXJmhcjBIwgeh/km4A5w0iezuIJquQJrqLMqOS3FtErNKaO2X8HrtsosXOqeod7yApW9/m9/J66yXX3eL9kN3+937YW09YnU9ULvPx8NN37/0MeAD34Mtv3xO370x2Hv/3HgR7a/9/8E7Pv/QcnHkQR4jml5TC+XWtk1vhX4+E3k4LgvOZaeQM0xVCM2GqHHPj/zXmVJlpcCC+Kkp5lGlSEAQzuQBuiyenynnO517bOsFfSzTGKWubUtbZDUOy+4eXyH6DHpFFraLJBGrNUHWr4aVNJx7CCRsAfHJcffcXK4Uv/LQBz9/8wn4T/y/w09h85KCggThoKGtKXo1bMBbwf8IPtn6f2i38w6JrATHJ1nLuN8avLWtSrYXQpCCta4azNDIb+ny/U+qOKcNzpYILzM400Dg1v1wIHAP9veDfDCmGA59nw/k6XpW0WIo5rUtRKy5olxqKSf+khjE0GfPh+mF55e/dj4e9Pz5Pvef3C8Nwnf9feAHWi/7x8CP/HR1I6UR1cgRGmcaXyW0+oCH2uzksyIvthCb5vOQUGvEIGGEEC9ljqu1wMcXsClSUA5L2TcvGCFvxM0IY7ApORNjrVfhwG6ni2lQxU6YpA95xFnjv2YQaZ4cQpOVm2yO6544rP+L0Xr3uTm3dlTrwZ+7IPSrwIRg6dOH71S/aQjB2+ArYuOZVgE6JWd2meZ2huA8w875W91IPp+N4cwYh/JJEDfXiou28iTcU9ysQS05o1RRrZpkZlpLUmcTPMGoDZSk9la7fEln3hSL1QFFZeCXa8T0SZEOTClAG5i/8P0IqfPfcP4+8WfW9d2kP2+DWS/43uB9/09yRy+RQyXydinOpkIvn6qNrnX68qPC4Z8S0YA1XgpI422S/sobyYI4WvBRw6Rx9C2Am4IUETKJ84ir4RACCQIYCld89QDeuOijqMNeWPHKRmn8hIjNpJrxdfGM2uPaqdxS53x0n/nzQ7rIx5KxyguvvZx4KMfBz7y8aQNOQ7CswRc0rNmG4rJHL9mf2Q8FG7KUHobG6gdhZe8yexXm6uy+/0v+u/2lxSkpZ6nw4r4ncFggDb45+W1ckDyIGe0QcvBTyB1ebFcSub4lrFU6+UU7NvbW2VQZECKW+jKBqsFAVYnjGrtscK/+jV4mD7NaQ8j/NXvHSC7/6W3FbJ1egEjVFAScC/f8qqLT0uA0f402iLTdN0jTAVXSaHIydtxPXdKUCMhymrpzOTWQAj4tgcjgPbW39CzQ4E55Z2OlhyvoUEtNBp5s7SZXeLUpf7bcEAWWh/HaWqPSf+j3rYP2IZuuzhq5VhBjuDcbvz9LSTw3L1sIj3WILaBmI4jBFXtwpg0UHNV6lOdyQ+lsyiSX8P4EBtaiOFuxHhoqU2gtx/Gq0joYu04NUdZlD2tspIXgtWZat1CTL+zudXbK4DZ/PFVQwUJulVPCUx0PMBYB90Ub2Nw+wbuWdivBvZh+pSnPZzwlT9n/BFk//zfhu2ebI7hBBwJfvv4cYFm8mJYzkTxYwp86EUeD1gFFHj4ObLI/mUFQgGjVGJx92pNiwBYawQZr83mSy8LxNGeRjx0eT7TN50JPlHV6Rm3J1ClB66Aiqqr6VPcyvJ65gP5wf2z8HKiiBuM7WyLWXj/s8VdBUGhwzW8oKB7k/7HbByoUAJRySaA1a62esSgAZgmQNY92btRtGHJYCv4KmyTRtr0gwOwumyIrVqaACoRifCoOlzjurNVjIISkD4ou2Np8QqI5f1NEk7wFtaAgDny3ugvKYo83o5dwunpjofp058UZPe47P/2HSNssH+n3OZ4MwxVDy8clxFeVAKXy43ykNokh2BGOqhIGQIwqRdNnnMmx7J0Qkx2eFiBIRflcqaXjkPUkbtUoqG13hCs9EGAZqQF9aCP1Yw79RvpkXMGSpr69FxmuQdvJwAw1eeLpCBkov+PP7KFBZ7Y4usfPpfJ/Mi2IW10UNVOTf3g2Er4yCAQJUVLLkaOeYdOZEreWdCJu67FvfJRGDkQnaZkcll5tJirxxSKG6fL6pfHmKAawp1C6d7jY2rdgo6sk9MbSJwJIYhZXo5fg1hagqWYKIO8UcCvBqQG62G6BemNrwO+5peN79/ytw+Q9R1gZyCajHUtbhF8or7mQBTqJBBp29ZlYX5QQO4I2ImWEXzW5vjASkNRYItTOC076dHC2mePGgrJvNLJoQYB/K7to8AzgTgIbd5v8DB3CRVtVZ1hfqddURGgiim++9QTsI9ss5LnnsPkFhbusJ4b45xaag5vBh3qeZLaFnzVvRciJxKrbUn5vaAC82fYsHOFaCPbOyPHq/WYTQfuNsbHs8to3T5iOiEYTvCUNv0OmmsOjd04rZXX2wCYb3CzALhuR1l5GJpsjRBECp73nYAP0y1Kuwf7h/8V2Aa0tp//uV9zlb3ytlLY1VXLPFbAkca7SXDKY20roqKuyAN2cOHdtNe2kJYBsPnCQ1gDp95elE3ZR5ZvZwLn5wKN5ikfrHpQ7FBakz7BgXIX5auL/g+eVvSjZr5Zn/bNzye32T4T/czXBujOiSFGy+9KR3JdjaADpwCOVT9KtVd0OA7wP1ahpP1gbqPNx/VsZzE/AW8RMypQy9Koc0yzDO8ClbSvaFtWok03WksOtAziSmvip8FoMa+MMcVKo026AhH6Q1ksFiWq3lSMgyZ2DmQr2rTGcM2vh+n2pB1g/6d/BXjnPwm86bXQmGJOzb3ih94OFwHydSWQ2Dq3+Im8KcCMz8k1UWFUoK4MqtVoZ+u2mRLJDl2BiTMhukaHhbp5OCl+ehxb9+vWuoqjlvoV2F28WjUG5JfSTCxZiUrZh5xdLgsYlx26JYeae/EJj24hgVc9NnmaI2NGakiLI3lrJ/304qUAqR7GInCF+Zn/MhSWsmNhkJtXbGw7QHfBybZeWAm9KMRkRXJBClhRVq37GP1j0NepFJmvbnaUv5pmpMdxDNgQmHzDgElepd3KuYdNAmplsR3lxTu6B3PJn4fp9qWv/KINYP9V4Df/ohGXzSQa6CIDGRKwfBghDes9L5fO4wkbTkNFQdX5qBdTDrmsEAGlKu6xwIQipzVw5+JUyGTOpsQRCZrz1TP6JozUdJVgE5km8ChYxj/kiz6ZZrVw3Dxb3qPyWRB23F6THzzGkU2k7ocXf5wlQDBU0GJejlmMS2KfzCq9A0kUEf1Pw4IAYMdl3DVr8Q6mnVGFN0vET+uyl7yJ8J22e/CLCViqgJl0xsMSRPA/g/JLbFdAMKMIqYa0Hu7Ja9ZKfjOssHCqsOY0pJ9ZKQJZ7AimGE5vkww3/2DkMsXZHqbbn/75DVj/298ygHZPhwiuY0uSrQJzKm/etWrSz+YFHzFG1Kp83EhHgFP9nHlxoUlX3icQMP01gXDb2qgOh5e8Jsky1XaJpbrsZECfadZDCcWKvo/X+jvLmj6ZvHFBDY4VDvCu7lyIs4AbOO+/9wcHICCKJCHqFtgjtou3b8G/pv+cyus2Tfc0ZG3WqsbzIG+50H/vPw+cgHBPMppUWhad1KNZ+BSkmAqld7kGc7hta2fkPXmyQV6BrGIFn0kN63YvAuQyqOk4eNBzHIS8or/WGjG16wNjMzMY7wqrfFDaDmOxOJnoYXrJpS3mindui1xf88uPBS+eX1tPOg2wi0kMKCBq19U7SuANuXGUc2GT/BbAit7QiYlZm3pkOaXHKEiwrndJ1ZYrRD+S1mUy/jo3nkNa3AWjRsPYJhpwqr4DEtPlXTpidJgQ7eRLFgetpf9eC8yubQYfSdDrHgceewT5hlegrcwnDJP2BMjuNKkXS770t20IGGsMlYexJM5GvLWBtBgD8mmZGjsJDuxEY6YgoJ00r4NiAUQstz/zvZQAdHCbQM9dfsTgmHSQeRfZrhL15vvE1QorisrB0YcdpsAsSwG2sEHmGM2TeJhegumX/pzDe7V/9ucB0Lcv1OcASbnHf1NmMJRfVvPT+BJssVyrDR2D/B2gRAcBsouGQCVT7gQllj+IWHGaxaF7cuo/lXe+igNlk5IUvdmwLu44RP/lNz1bTvnXhs+l/+K5ZjsSJC0eWXitCMNn2U3yr+l/LmzZuRvSH30pYY6whAhONdAAWG0RgxjX3o3x4EYDF4+tUjnIPtzofvo9xsjTQ20NcLoCzGCIXDQKeUjwFrmmYOfVyE/G0+JxwG864iwK1ZNTMeC6+Ts9AGncmipJ+yZW/mF6Sac93vqvPbN5sL9i815fO66ljNfMKxe6UMCXTwhRdlJeiS5IURr1IvMo8FYq+c58sQZR58bitGWpSmtlIpt0Ho5MdG68nBm6YdR5q3y5gJfAuCDDDFb9ysVgDcflk5iWbRWoMexxnvmVsRL9JjHbQpbve1t9AEfpP9BX7LU2Jzl9jZHgCMQeZKHP20e/lvo/x8oBTNgojqPX4B2EeK4UGjciL8rRbgLPUcdqSKf6uerJ7V0S98hp0EG/JWg3onP6Jr8tyjKbesi6DYvS1N4sIETSAu335lecQEDZcOrtw/QSTbv3+p/9BuAtnwWFKF10OgyyecqZPl59pAQLF9Dd/19r2p1g7QUW6SyQGO9HUMZSvlUzte7RkguOuOIbcjFXIZmeVy7yioGwcoTycHZ9ECFf6ewFfKGz0D9da1GYarO+ySQc2dZaWW8e2Zb2d2UtC2rKjgT3bqc6YFf8Gh3lT0osgyHtesvuU3uSf6ovNjsYxwXN6vKnseOo2I9zGKdtWKhpS6M3vVsUYMkbHHElMO2618BQwEVI836Ab3Y4aZI6G83smIA+BX/RFUuIyXuYXjZpf8BgB9ff/ItLpgkOtK+cXaX8TjIQCmvxI5VY9nWm+M5Jt0JRvsMzG1+9Fny8QNQTCMUdU/0wWeugw6J5I5jcaFaQd/nJMxPyeE9rDzVIs9l2T+SlTVrn1WhDWXGo2N6u0/tBLcQj4NyG5mc9MxREXpd+FtZAuOHl7abem/DGej/Sk41sS4BMn+D2QSkgctgMQBCvcGKWz16APo6nQKsW4sLK5VTLinJHmtbOTHgagTbip8FHCWrSPaWsx2Qx4WF6WaYdWP/1Z45XNOeKuyBmAlQWsC46AYKUPweBywoE0cG1bedqiBOhuNxNsIL7p6hZh5c5vb2idCkW0aK+4x6dEKv2BrnMqzonu4Ai/jFOdhOHBqr/pfndI+fM12RVfdDX9b/ztCjxejX7nud1T4xXuuBCWzPQi3KGJhzR+Mzxn895kNg5p+ZfCxTlmMri11F8YYfEUHc8Nkzr6UVEdMgbEFtSlwNDy+pi8dXiriKUhgmoARmC8evIuyaznPEkegbM6xPfaHCSx1bxJFpJaca0s37J74fp5ZT+2Z+/LWz9i8cOgjGFrNfTuBrwkDFTD0W2WnVHZQAQlb0WXwucyg+wHh4g6hwyukLBLNcP3HOHwFF3vk8rwCycGF0MS+dCHJvS/7UZktT/5phoijUZzM5ZzFzzQR8TJ6mAWA/nJma0px0tnevhtb7+tSiHKTi5x1kznEcjAnQrhoyN8j8oO0x4HoPV9B/TvFzaK58u+nosXqVVxJSp87Dc3DNcM15y/XpnaTS3ewjAri6BeZmi6+p7syKMZUVeMj/bANq5rIcMiteRTi7z+nj0lXvvUvCFlZH/4QEsr4C0hwb+098wtmcdaR/5Nbf4NRk/sC5XB1JmU24p54v+VickWiDo5bZGxi1NvEOBkpaX5aW+AJB04vLNvSXPyFPbZPaGgBMCW9VYe8xn/Wdc1MX7TG/UJy/JGn4ddOkTbuhhRct/BEhf9Sh8+xtdK9Ay6V8/nc5zfYVr/bnJzriVypTENAA61uxRA1N60iSxAtRjgqHxgfTkLdiQoKJTHy+wM61XEVAs4sEX+c6AuQqI560SVFQ7LgxO4dPPsPzt7ZEtsCJgGxVmYH//yVPgWdR7fNVToB6C68s+EVw/5w0AN/PTEB8ZBFhO03j0WBvULfJwRBDy1yCjdh5QyXPqDmlbsOb0OTzr6ciLKDSFLszLX1kZxy16NL5ofNCGFXBthI/1ujhHbNjEGBCsTLGB+o/iByqM4tpJfZHnfndfyMLEDygv45vqfwPoyOVKv9gmBVyhGKSBnj+k4XlQFoKnFzONe9FmEGHhNJWnZkEA88wSNelAkkBlvPnEB4dEjiciRk8K7Ox4IVoG6D2smcZ1WSaVwrPP1f/RJ1+7V5LTHPeHsPpKSQmubxKgEsVx1Y4y8jTKdb1LTClveWmIulP/cjsgmxLoCJDSS+UUyRpG0hhy7/L7qMM6eFLO05HSDgYhi9Cwz/IW6/1nuldxRpJbbx0QHkL0vx3G5OlRNqZR3/dzBB57BPqEZG6dsvrNMoqpc5TcA2ds4mNVLMuW7h24eb8GtfLkNuYGQGj8dO1stShfCZ5VLl3lZunJQ0/vj8F9EpV5yRi+eVI7o6uk2cE1Bd/FGma9WXe0raeWt2B8yp3wxZqheJheIWnf7/qf/nrY574B+lQhEoAQwBaKwmTW/YHTd8KtAof3Rdc2bRdlFy9r3Fe5HeWshbUouz49kaUepv72TrPsNzW1EfpIq3jfA3TRwEy6Lbgw6T+9QFHb7C90IS36/+SrcXk2qmc1koIQffeXDy89F7Csj4pPs5TRN5NJa9wwa3HyBPJ68kpiRfE3OjwBqrc1wOS4oQjTAHy62Gqp+EYAE/dfrFXNkTyJJ3K7DEw+MVVDjxa4z3onmiWonwOl9wx9/xumac3D9MpJO7j+HoYFvL3Cuc9mrDu0upVQPMwhlo4KS/Gs4Fh5VyEbt5t3W8+8DxlPLVRvSnTWqMN81LuI6ADOB4MgZAcpzesm/bP+WzqecKG/Hm+fDA95BpnJWrXRmmCfqc/7991jffzR7rFJe06epP6rMQJ0FT95AgVTF/2fnK0o18FUxnv/d5GeWFbA3xKQRjBeFpqqehGK0xSip6P0inTVx+svAH19bL2GV0BPzescOwkgrCC4BPYhv3XRjJ+HQGlQquyWS/3FN8fD9ApLBNc3PXn8TEdhCl/ljgF5wCZTrtZ7xO+tbfivlXfvTsbiDXjzCD+4gAOgU94EWMY+4+Wc5S1i8pxD380rBAHIglnQmMAVSnE0UTU0RGxTfi/gY7mdmND75nx5glKUM/kUPu8pYq2DVo2ThrFbrP8GyhmT6i7DE0Dt2dWrLGvz3FVBArF4lW5tMDgLS3SHC07oKQPQ7FUKi4IwxlMTkAUnfeROgLZAsKyyCsMoF9tgOBAuHUvDEzfWVTmYg5ss5EsMbSkP/VCatazWfl1eiPgwvQJTA1fVyvikV0hjHfcSmJpeVFndZnTkzSedPBezKM95Uhs8t1C50pi6GG0uMXXVA0FsEb9H9FNcXNM+CdgkRADImR1XwSE6KrsC2hGdV/ovakumWDKnZp4DXMnj2BKWsdaqP4kII3VyhFz87XDciGHEkWKFZ/6rOGzWkRySZuJFq2Vskgk97N7xZLJMIQjQ+U7bQiWEkGEG8SorTsRtJ3liDzsjf321Tqw/JFSQlSfH+uLcfj8VoYT1ILIdxuI1Zgewzyx8mF4xaV/Q2sH1iW0KigpFeUx/jyf1KM97fp4RPHtcewrQ0qspk7yQbxuwchagdeq6SBAS2csjsKau7cR+0j27S9T/JCQA1kTnIW2o7u5f+eg3QfM4A0DALPfgVm+a/vNTPWizuqb6/7onMsZZ0OpiKBQrpBpeE/DMWYYsmhF28rdzL24AL8tMyZbcFjEYXIex+JmHHNDGAN7nYEOHAjp0adcWAV2xAumhHvEgL+vsAY46Y1/LkhxnanqPeZQprE63wPM++MertU2mboAKJGWxBcaX2cg8TK+otIPrfnjLIY8x/Qwv02ZPZD2DkE8wJtIZuuDliUroimJb3txMWMisnS+nHAdIK/hwFpqHL6UHGbka+eJsLVND9C7Ft6o1GgkzIK6lSvnEA69nf3TWS36zq/z+2KNHrNWER52u9JC6U3tcGx69i+etZVyzD+8QfC0My42uXzB9cUXnYDKD0dLW6a2Q0QuXyhqyt4YIyOX9FdO0HK2RWP473LNhtbfN0J6xNpZFGVVcMZoG9+iPURYlk2ffmGc0aeDTGnYS6IfpFZf+8c8DftMvrleepLsUzghBVWT5SKpPvMT8DAlwOh8V115yqR9TPbKgfHpMW3S58lceD13JveWyoHR//Z+A3HXaL8igOKEzRSB35VQYoTxw41+CnWCN6v9exx5rDXC09NLnrZGWXpliVlXIr6RgjF8hQ4/hstTR6xi7coVNtluJl1a/hYCM+1gJTwt2i4dHEMVNKUjKpgvxvJmILd+9MF/56msTwZAphLSbDGqHsbDzYgHdK4brnTyLONDwUilohlPM5mF6Zabf/DbgH/u8AJq4ZgKCCSbor0ehN8hPimaGDSJTlPE8jGV4Rm12RbFtax8GurxtJTxDdqiXbEIMg9bXfkh5o+OyCpAjQ3U+gZkpoWg3UPrPkINLfyQvddMEuGf932Otd+6gudc651eHzOzka6FbmRhDefY/q+JgWc8Pol1gygH80XCzFGISC5uDCUqES1nxGB12JjstT+VNQTRTjz2Y3UMLuDdP9SFMs/oTENWN2o2VEovimzHTG1gnoE3euXDoYXqYtvRvbyGBz3xS9NlzGlugk35NOiT1FKNAcABtKn3oRYE1vTgrRwQXsclsRPCpxUBLvlO/1PtjDNYKESa4RXp/XPyht73fWUXraRSyqxNIWn1v3ZhUMKvDRV8DLPGax6d7OGtqxifqupk+Duvz7dY+KVA6TMYnr+2fi4KGmK+cuud3k4EX6PSJ6dYNToG1IKesblY5E+Z5xn50YCxW7AvcTWLBnn8QD7oF15PWyeQn5muowgW4D04ht8vgYXqYMHYK/Nu/HPnetgOkPBecDnxbqTt7moAz5cwawKRTIbIdxUtcnWsiqHtWYFUegZV+aZpmbtwOVo6XAxrvTf331MVjfSPftBA0z2sQGWJoiobyV2RxivoLr1m1AKyRZ6rjnHm++lXIA/mrma7/TZ9nTAjzF43OgQTakkGqZQ1+MmxRp55f3Z3kRoUwz9oqfRkP9VMV9mXwafxyQ3GBn5WhDcDslGRZvqfoyM8217K41bv0BxK0be6TgVOcQZf1smngKGTar4fpYdrSF/8s4J/+BXHAuvVtg5Sp3MJn3WvimgI93b2YzTFZRxNbD3hrMdEopyikcdcEbMelVxBhs9wVUzfYlfztBNDSLlCBrIGjlsHJ/UyQTF5pDBMtJFj677VTYhW82Pu+A9nrXtUNl3YjwxQKRvpVcACoviQxgo57KMTKWT5BwmFgW3/7mmXavBY7QrmQXuVOoJSNcPDLMT/REVbWaGHTmsqCVXC6zpXscSWH932tMmjQlrU+xpUlhsuuDWELURJJP68APkyv+PSvfgX2MwWOlFPtIcctyU4WClq+ikQPAVIPleLr1MUK1zmdFKDK0eOExD+hC0G6jmJt4awOY/HqygFauNB/oE7Nihd3Mg6rYNP038vBSU/PJ6coUYAkCiOs+KH6z/7uT2KxaT/jTFQ/dyKq7vtUEeNUHqpLqXgUdsZonREvE3IfVUyrcxoUNgUnKwJmcjNG47X6jyA8p0ANbiFt8JvGe4LtSry4+IxHOZ8HNo1xWXkHQaRLnFYBdfTfcstXCiqfnPHL4XqYXunpnb8iAe9IIX/wbtSHPNeBIzrlPX6nXqDkkTdj07lnXV0WHVY6VmI/Kb5M75fZCUKfOVLeVxIonjfiM//G7xZtcwHn1H+vOKwJv1gGEkpxvR86rPon0/BDtx8dj7k23skPkxmDC3bJylHpP/QBhggzJokSKGB9EL7Aa1eAt+HReCoAdYtRoIv5k1bYilQTi1SCJWOtbWiagDA9VgFE9ZIrX98k3YSP3oRuHdkBk79dhIcnDPH13SJ0D9PDdEr7WQL/zC9oKEljDX6mf0C5zg2bTbVdHQCXwnlwEGOJzOflphlq5kbaZl9AwZw6OxmEA9RI6w7oCoZauXjXfMpRqh2UM+9SCzuj/do3e0rUfzUKbpNHqTQEs173uGQYWFY/BYiJks69qUUofeYE2QBl037ZVB8UI61CAaYDq0SH5eClGnTBeVNmDGDSZ445DpbfPdqpOGi+FdKKJU04YoTG+8UpR6yHFlQGw6Uv0mGf+7dY9yzY4PE2V5cDjqPQQ4/1Ybop/aa3AW94XSlfAFR7sMVFqHXWFJ/0KLuHm4XPMzYXZXeTxZTJG2Xy+acXWMb94xv3eSPVrPTfpSwdFDpOVj+1qVzIWwUHxWNll+sBBUyeZfSJ29A0nKJ8fPwx9Bm0Q9/k6kFL/mi7AlS/HbXjoZlK4KZwYELPlu8uBPRijlDWJEDSCgQLs8QaJHBqfEQ4ZorT4hHv5RY+0oYKQeQgilGCod6AKR1070F3eqDZFmSjvyxKkU41ILRwLh1NQQu6Vit+vZLTj/448Hd/dHzufx/6GPATH4V/6KM43jB6PM+9cenVW9zrpz81HgP93DeOF8L93J+Fl2Xadwls4Gq//8+EDLmsT1iGwQggNiEX5Y9PGzKPbjo4riwBUsebLzxCBJ7tHA3ki//KeQEKwEqnZ3kOmld6ct70ui+WhYLyba/M5wpAdGkKcVO39zbuLOBTa/pUY/ZfgO3gwyI9Oehch7yRj/v/r90WsX78w9XrZZn0P3o+KXF56cWL8W+0BR4RWFikCEXQOK7czUrEgzQhgt9pSVIgrDWeT0xlGREE11PYBQzheQxbAp4w01qj3rmwSqzpnudOhbQ+5BAFb+bXgZ91MEw+1kYGs38hxE6JXOyVCarv/SHgu/4e/L0/DHzf+2E7kB6KYcOLWAbPTHkPoM1KIIL7szeQ/ZLPhn/xZ8He+tkDlF4O6Z94C/Ct3w2874cPPpSjAYl3en1PVum6hjoZfXH1SHqW8OH8LOEEEXRNToy71lPIuKTnh+ZnhOOhzssN9YrukGZwrF0Wlve0qP6H7hIsV9SbPOjkNP0XzeObcwnQ1P892+OPAD9OasKrbmlcd+739WlHQm9J1oRG38zL6KR8J/JHujtzE808DobnIGvMwnsZn8sVVVXCmtUY1reErKZArVvAtAPgSIt2aJjNOoJQhKQ90+xgnMY4kilYCAGubSeHN91ermZ4RYUCdjD9K38X+LP/z+aRfjTGbuzn9dj2YuopZThlzTHMuDQtPNn3vZu3+73/APimvzHk64s3kP1lXwR72+dtIPs4XtLpN34Z8N1/DAVeklR8xCttyYpvyd90iJwfOQU2TqlNdclS+Xvb6h1Xe2jfC0Rqdsf67dwR1zK8VvcLYHEYY13jSSBdLGPDN+r/fNkgxIlheWRbxHrsLuxjP9nyt5nByV0tzzS7YDpLFroSXKusGsgj3938KW4+B4cMMuS0oQ2Mgi/OK4xo7SooV3kdBxPulSWYYig6NSBDQpoOBb1ncp6jUiB0ZTfiy8Ij2KwAwMT74rQKN8StXk7pgxuA/om/AXzb98J3z3RWenDxIjhBL2MNMG0aIIIqfOcCTDOY3/VDsO/evLz/YfNcd3D9F96W55++5NJbftb4e98PyQysZLjSihZOS4DYP5eUxQyTxfGaFrd1kcpUsd3yMexs1GsrlaxKgAtRtVuHRazFc2uaPLdpgg8oxTSbyoqXzjAjd/D4PFsG9B1aeoZqnkdLkE++mew42C68apMjBVaXys0EcCijJwRDhgq9u5FHb60/8sqbpAl3GRsRsLEJPNNbq6GQn14N9tanRDKQA5uLSrPwNWvqzRhoM9kZhGDs3xbPt67SSjULpYNDsNfQg8ZrXbxYpwBob15G6YPb1P5P/HXgT/7NI1aK4GcuXChgiveUr7vgWyHSC5P8LECnJvm7C+6SIn1sb9vb/r/fB/sz74P/8i+G/ZaXKMD+xo3u7/6hkmvyq0mOjeloHma9X9n5seJ09rEpMPuY7ic4RRLAs2nXQE7hD/keytFXv3EGL9AeupBdIbiu/zMyC1H5ISC7/8wpvIJu9A9CD+WL7XcWlv6rrD6xAesHPpgYUwfEtBMZIGv9AezWaHYB3uOX0oSJjqD9AN27MeCmq/y5oj/FRzF1uvpeVk+Yn7GlmXh+idG0kIa0iveZImkdAvMlaHs9q8SPzNBewSKf8+IbFGgNCS6YN3G/3NLuoX7jtw9vNRJjyqbMhiirvgUiY3roW9kO0DhyZB0uSn+ASoRwYDgBiX3LFqvc//7Jt7z0PFh6rbsXjmadIonC8vzSuG5q9CejlB6cecl17hWf4JKyrrxVoLelnIrcTrX/s6S2Dv1H3bQ1Q2VN5xPAUB6oNUhDylMithWoAs2J9FkeVCeJF5C4tG5FQzhXjz1yeK2KP2Xd+7Idt6+1fbJWfHSWsbP+T5SMixpjbQwQAvogT0kU7rJ8ZpLwgfPSOoGu5CGDIbR5deOkiEvRaJwKtdXJrKAsuw5W0hUQS+A1Rxnjlxmo7jHUr/9W4Hven4KsY51KokaOoAgxXhIno+LrNKoAmTwdGyPHynTc95oJ2ewp/Lnvhn/734H9mi8FfsuX4SWTdq/1ff97GXTYNWCg87NPSnsBnTP5WtPzzKKvOTq1I3X6hGZvfBL2K38B8KWff8TT7QffD/zxvwL8w5+A8xXgGQMV0HAFqkELVDaoY1ga/CB1Nb+Oj4Oc0le1A03/IYaFsiK8OPi8P4n10Z8ETk8heA9t7FeXGiNqensrivsJ0ZBcqHBXzlDuwqCvhwCJYieswJD2R+Mh3dtUtk1ghu7esyF6xmRGG/RGfMGznSqK9km7WMEhgJPVxdqFm52GCn+ABPtVt1vLL8m0T/t3D3Wf+k+LIyaLTiN5xt4ZDkjwFbko/fdmYEey1Ed9CqdhhnsJNz2PlINtvHZv+n/5K/DNg7X/8je9NLzXt3z28Fr/9t8rAyUx/IMNy9hVoaB7tR81F7NGoRMQj2+ImLc1vpangq5Me1VveB3s12/G6su/uOjeruHpNwI/Z6P9d3wj7CMfo+0rjzAMaeJEApXKiiRf+8zRIGsXpV5jC9na6KW6j/6HMzYZir5FLeT3iW0R9NkPJTZo/8/0FRUZP3Wf1n4EdIVoR/FZDJwAh0lHbG50SnYToRo/9dYDXUUb/eiBdFowj4NW/KrNxiFHi+lZgUDlp2UT74ixVO30RCs9LTUWUAF+qaYf+QDw72xe1J/4a+K1WIrL8SZP9fSTh5EvFxUiXz4UUjOJQtoacH2P02ivACFIQHKZAOzAPPfZ98z6b/9G4Jv/xqVY3rr0i74gvSqdBY5OKniWwaGUEThZxlSb9385c6iz4BOI05Mjn7nQxbNh37AZpn/zn4L997+tg6qmPc8OuiknOAs/Qw2q/4YAJZcHDSowSHLo4elRg/siKA3D6IJ3EKXuirc3gHz8zocy9nTHjq1XqcM3KS5l7+J+7hAiTxlajN8J5KZ7Wz1CYEL45F8GQ8Rz5WLXYVU74LR6su+6QDWu9xXIArwCR8/fJvUlk7Ojhv4qC9bjnRmsn0ySay05ujUq7oIPSsBfEup8nfap/7/+jWNjfzP4O8/CC1rkWTyOXY61xxkK+/eIw8lrnum9jJ8KHNlQtWcFHbPimshKjtveHqe5u/f6B78F9r/+Fdz69BVvGWeFDu3D0Ul9kR7fO5XskukywZFGSwBq8I+6OJpK20TFzNdzW+3zfPVjm4f6duC/escGqG/B86Zf8pYgoUJ0fGyA52fcqEdH/2KBSg45Kp3debB0g7B/XUP/Tbzypv8ilwFs+rpxS/Zt/8TBLKRb2NjoRXjBLVSTIGmC5SXX9Sgs8wti3QVaZfpJ78RHv+sGGcNOwZrFagRTSfg9+0HX3c+GwqpsIb232Iuh6uPv6seS+2NJ+3EvX3JmSV/FDwM0s21Lxh1eXDMGuDJutzv98c3D+7o/38cxPRorIabQxL+5KMAO0wOJleWx1w8dNFQ428APiz+Ee3poBEUPEigkv3sZUl7fgfX7tvjwv7t5Xrd17+v+4MMzGzj9H1vYpTpWRoWAFdebc8B8qoeZr3jRlBvI9QF1bg7+/KotRv0rf/6YIr/QtK+uG3qYEjKzTNA1iHfDbKI3XudvsN/Hdw3TQTt45gmNk7vsokgEkoU01H72jX77wAdT0mHdADVwdCU8a0U90t+CLqpCODkRCzozhq1wqRb5ycbpvRSoeVlX4eg4eBZlYd0b36EWSS63ATIqthVtfhEmQAx+MCynXzJFyE7zPmNRVtZKiTDtZy6+vARB9Y9sAPR1f6EEiONI7guueUhegpfEl72Ns8m/47o3YxuX7QJUczpVg8JfeTp+QwuGG9j2UtPEv/o9sN+xhTZ+9AO4tWl/R9aeZiEn6PCtFfS6PLWqfqtO8BFS73rZQjh8mulVj8P36fzX/Vbgn3vbJwaqmSztI+IpxNr1sw7dWkX/XfQfJRO2Vn30eCrEBLXGma28Us6SWfdMYsiH/sFzd8ClzvL14CGffu41yQQzGhSIvX+qx7oIQHI427mNAcu1gstWo4IW07RU3DyMBdXW8AJ9gtG5XlZLzwbleULCBaRYzL2j4nxGQrxbUJe+uYBCxookL+TYwtqMfQXptzh9w7cNYFWjlgDopSz7devGN2Ooec9KaFneDbnxnLG+ZnRRlhVS7vi51Nt4DSK0DEN4KSnrG/PLBuv43m0FewfXD30UtzLti1hf9LMwL7jwcJbUN0ulLD2UsFgiaK78C5BxeDmbfNU2Bf71G5B+/W8di1NP/FQ8etF/0eVxyyo+XqqY2jgvyDsm/Q9ZhHQn9TQNCPeii1w5Um6SDta8pCSNtL8TK/jkpmiHk0EypYPdldPvGmb0rFlr0FBBZRcPAcIYHkybCmbo8RJlEv8w2Yh0p2fbIVM7Qf9xbZ7iz5AsnpVuqm4gWNatVmU9Lahrf3Vw0gLxfgyizfTf4rQD6rb6X4YPNVXPcaWw0xtYodNQ5XcTonaMHICcCgK6XSoVjjLBZ7yPoVkHGHNcUDRZG3NpYxXVFCPtu8d628E1FKjkqxZ6Eiy8pp7NAxWNMvHaTk917QD6G78M9vXbotQeS33iRQiRHNWvBWqUHy/gyzHO60I/+8IxFQBF6uSk//kJWaUXIDWyUPSfkhELq4lrjw1gbY+oRhsuhoJYczrMnsNB/c+8te81R4d9XiBTCgKRK0PjujLKkR6PzRSQaJaxPpUu7RNhQFilkLh0rpwk00pIU4YczLREobynKT0kpCEksA334bfr+3ZSSKYmJ3i5vWmPqe7AyrEg3RoX23+nYVxhEMNyJG9bf4YyRZ5YxBxFXQwqUvAycRHFtb0zZOv0MgdYPOZ6KME76Hso9xZvxX/zp3Er0344C40EGXV01StcYmpQgHQKAjw4BdeUenssSm2e6df/G9uU/8teHEDNRgToM5xzEd/ds+2GMk+Xm8Yvlc/jSSov/eeCXtP/0EdFYgVrtruK/vuMStuvxx7NU/QSVwi8Aa6HL5rOX8lj4eLAj5qxRX3EocS1GOUjxjpvKla6ZKDrmf2ais9pdqVF+iND+JnTtMghwhWKk3nrxkWDEPAY7dSimCXzxrgOD0mJHQaIIZCR95ieciUwrWR5Fbc+7Vuq/rtvCUdDrIMrj+I39xKWxGW5AZLBl0MJ9um+F/xqCIHjpkI2txfGUZqq78DZSMMLTKnMLsqoMUaLvn7H9wB/6M/j1qU3PnnsvTVVxLIdojLChbiXoNQWeoOn+0v0dkD9A//Gi+ehnhL1UNu2s2encjVdr6qiLp4tEQPYPVFxxmwpbIBd19tuc5bbHcb9YYEDEaxXMw6wjsBhOlRc1CrPNPs3AylmHBwZ7LzdquIXaJ+W97MRTIJtEoRO74VNF8glgXkrVqW9bINj9mIEHwgEbapBWhRUu+2yiNsUk9Q8ePZpDDjfREBQiP7PsebblnZQfecfLaDZU0oNk8m0Brny32yXjI8qfc48MyZttZC0p3WtsUCigsgIGiBaaMRRhXhnSYQB+tRLHXAsRoB0cji/eVuB/5b34dalX/h5aS+KqTYM/v6VcbxQ7gxpyTCqtOI3vG2b8m8x1N/wqQJUNib8z4Ual1AaB5ZrHDbJDUom6BUqACzlTGX4jhJ08GZtDkBtvar6kkbjrMDaFrFjP2s0l+GGpv8IuuIfn0ydZTMnIC2sFQ93QRfydEq7HsIyhlEXswH5QvhFW6SaQc66UaMw5VaauT5+D9/VqYgybUjai4b5aDC+0ncMDjk1AeUxGNLuFOy+9e+8+oZt+v/3P1Bxrj1xUzin9TZ7pZFPPwNkuZ3qKNEMGT/XkMMYt2VJY1RlTFAh2qeUD6aeZGP8ralIFiCO9FhZZ4ynGus97V7r+2/ZToF//PPjyyTjtpTBAkKWF+Q5rGYdVZ95C+wPbDHUHVA/HdvMDJB5Y15MuJX4msnv1BXdVkl9UlnKuPk8I6RcWH5v8V30NZFRv+o/SnEffQwufK+YKOAnqBQwDRkrLxYptmoC6Bgw6LiFOnTKjAQaxWsKepdcAtDMYFIUZXGRDGfPKK8RhK2BXq/HM/hcU08OZg2xq6lPC4X0gtqiAdtrVtjFunXZvpXpz3z3+MsQB8Z+Or4yeJGxbq8PRgrMkfhAwBFCoYu/FmBmwB7pnSTIrZORnKSpezOWLG4x34P28jZyemmiLFDl9HgcNn8CH/w4/Pfesnjr/ibXAwip1D71y0s2wzFIz3VPX/GWsSj123/VeCrq05UIPvTk4q/Wmzgg60W5ua6pv3sa3tKk/1KeDxnIAJuAfbu+TvpPQ3x3k/xH7kR7VrI56bWLd15+4dgeyN0JKBgp8lGOyMEt7mM17WCWGIplJoM8MQ6YwHVKpvVrwZPHktqJ9nik1FPsKwBPEJaMzWKlV+MXNdWCQO4W4BMiEtzOJ2Vuc9pDAJu36voq4qC9fbYDwYXHIWcCmYdA+WptV0ZjdTOKyWzUI65p0VJWILqEBpykw9IbSdCVbtJL6OI2zYBCtuy7fgj4U38dtybtDws8/Qak/Bcy0bqgXhIYsr1/388bIKC+8UGckRA6Hoe+81pBGEEMaM4XTzyzSf9PyMV8lnnHeFph0trtZtomu0H/2SZfW7P/PfaY0B0o4foLEXN15MIVwzOiE1qg0aL13FVinYQxRoGML7pu5hUwlfUscOWSipaCcQVKR754jFL2wkUTXRkhyl2mZdZzqLXzpAlVXulge4aK3UQNB/UWAh500FOaogu3J/3hb9tCAD+G3AExE9ym5BHTW0oiOJbzO41cDSBQBk/kq+RhSz/9Se5+gX34Y+NdWEwC6GN8gsZ87UjRyJBQLh766MMYznkm5GUsVi/A2v/+t28bxw7eliez9m1Xf/uHcVofWMp4jfHb+vRztry/cZvuf9Fn48GmAZzU5dqwP4xoHsayj8u9GM+8P9flotvUf2TcNN2e4wC0cAgg/KFiByAc7S6eCOe5u0XxIvDrkUV8qjAK1h02jkHRHc4CCvSLyOpSyipC9+6KB9G2KVlVVhWIQM8MC0r0vMKMiWUPvNWfTLLaPENwc55M7xex3JwPpsaN/zM0sSaDMliuDBGmlbcazAwPbf/M912ZCL3w69ak3Vv9v95X1p3X3ZqwpHef0/ESlPIaZ2UoMDt9/9nb1Patnw37ks2j+rw3wa5OnNr3le4b+P/u9vdX/w7sb/0QUlA9TWkowTnO5rJ4qFNEiPHNzeOrGND9//19XDuw74++/tZfiluRdmD9Y982vp+EUnj/H/y6LSb7BbgdqQy0ayzGmkcSl6QvRwHNC6RFTkut+i/z1nv7+CFf3pl502JGXcSR1P84KDyAfhSOE7Eee/SkuAoHaTikT/nywFybqbKmFKezEI7H3Yk3uion7Mlr6fWgpgcGCU7jgnAjA+tiHtYL9YBZAhI7hXi90g77gzIKzUuWgaCycRGkaFCgQBw4bGVB9794ewAD17dy8eo//z9xaegSlFyGbTJ8IS05+/A+0zAxJkeG/dnxX7HF+t7+BcfLAJ837Z7iz/3s8ffrvnQ8erqD6//ybcf3TrZ3m4nyfCpEFTKwVvip5ENedXIcxxcy981/DfjVX3o7jhrc46zUh5wSUjGD57uXemtANZKCCp2o7IKnl52ZRw7oEXxqsQtdRP/FzVQ5uNR/0gTR/9wJMOk/927vb4Td/nAvHiCgM5VklxOW3xq4NgibsCY+mOcuBEwajAq4imGwZqFqupidtcki6aCIwSniORVQcC3m16AAORUMCpu1kd7VdaHNptqVZgqIKUvHtCa3Ibmf2rwV6Tt/aPxlij6sPCSFglm3KqzCvYTrsPTcEUHFzxRy8Ot+IewdXzZOa/pk0w5uv+yLx9+f3bzs//kvb6v3P96NYCugsfIA07bKjCoLPxmP7PQf3bzWr/mVeOBpj7PucdJ9x8KhnWLoCExf8cW4VWnGB9Xj/TpDOelFRSavzIyZj/ou9B9cx2EcdykPsJBPnAG0dYJ23UpT2wLtEWd9BNhDVFYr/MBppSYm2Gs4gNYA1VAhC5fwRePNElZSkLF4or8NaPtWHbXwoxSREdJKexkgmZUVob8rHJ35COAH47BHgN9y1XmuKhUr6KiV6fukpsyDXudClhgVQCzUbUl/pu/XrIW9ZRqbIQ4ZqzoGosYWOhPQ13TsfNzipvhv/nnYv/VLf2qgOqcdXP/rf2GLgX7xiPceoReM8QUa6HgowNDnNcMF7TBsU1n2jtDf/v/ensddn35T0Rlu0MHq3cN+4rEHtEB1n3R4d+VdnvR/ZBIj1w2bjGKu5o9blp81q11AxFadJEiOheQATMoKXWl1Cigv/E6BfuTuuX9s3wqFho3QJdmihN8sdguAzovYji3u6ygvMxinh0A0AiYQzVbDixBCidx8qqnz2tAOY8kPtXZenoh6tOFVsX2CH5yg4mgHd2udENtndbU2YwuRKyY8HlOK3Pt5G9IeW/3T75Oeee3x45SIUuJ1X8VELXopuwzr2z8f9of+5SOW+ilJuwf77/+qEQNlXN3KWnbl5bhZgmcfXSDdW4m/HmkH1duyQ2A/oX/SrUPSd/naPdrblpLUSaZ47/itISN+enp3p1AgQY/3DpnNymIXyxq3fYQcEwdm/feEDMy4RSPLpgNYuShbj7KK/k+wx+tcYHP5Xp32KBq/xyEsLkzoFiatTBoB70yLbTU9xurCL9Yhlg1+oj2JSssRniPbGtjdy3k2UrqWyhh0KYiovUngD088gThKnmyKTy99uwXpD//l1u+MfWlPBSyhnoI8v58nCUWWPDPhq74U9ru/6sX1Um9KW5gB7/6q4yBmdgd2ITcxboPOHjqCbMlpN0Ie9ieyHLcg7Yt+fvI1+O120NhS6R/XIbg3esS6ZdEQs1GM8jorbTrkpXcZhx2ynIepi472+Kl3/Tdtl/qPxOrjewDryGrplTqJEi8VCuD8aRWeHNV6jzzxDIRFwdTRPr2FCMgEkwxTrEvrSW91mYB6EhwJE5TH5ZLdZevX84icmbTrE5Qqq3VQpK2ZD9rz9NZvkdi/94fHZxPoKdEJCOPIbufeQF6XEMFR5Kv+MeDf+kp8WtPbPh/4bV+JVDKvTjisPBqPhxUWUTggjX0llz758Frf90N44Gl/n5TKcxjtBCHctiRgdgxBvJZHjvUjKB3U02gTEHVMZjHl4R0xtrbKntH45LVL9VOPMXfByF/IPnjGxX5hf2WLhAthVY+Hgrj2G7K4GxhoAfJ2WgCLcosOYx787Ino2ng+Skoht0L2thG4WaQVbctUCk50nU9rENhoLtRbmXYchOGoRK/7kvkSF75M1kAz+420HdGo4flw/dOa9tes/P1nwdVkikUKytq3jWDlosBahpBvsk0lwfj+uW8a8dQHkfZ462+bAN1l2khzmeMhXvfszYwfqfTH9e/4O3jgSffUavjFb5XZrsRdGa6QhW6MXfRvmfVfnCUauXTeVhkvGk9FCMSB1BzbAHN58SS91NwieqX/CnyPPdq7h8m/C6Qcj7EqG8QQxqd65dJkPZhQTTjS43TUgpFQVqtiJRTZoH6Pm/V0xAyw53hIWhmw3XMyQCxM7FurhtNyjhzzqx9mOrJG+Rn0qsBQIG7L4tWffl8pJNDH4bCYln0ATxLa0/FOqxgbOXxleAvbv/tC1e/5KjzQ9Gu3sMDbvqAeYFD6mhhTqiWOt056Rb2ld/7nbsHhLPvilIJJql1tbr9tqSYPov85dXfJJOATKOsERgVYXccpxzD0X1CCxp5/dLJW1fO1vMlot+m/dmSXqbt3nkf/LQE2l3NkoYoerifN6Mi807BIvU5AFWVN5UymStxTeu8z6AS/dRM6EpDRiRiVxP/WdhHclOoorzoZyKXhAu2lWxTS1PoUAh7lR+yOllYF3fLE+weevudH0OLd4V4P2aa36hJv8vNhLNwmo7sA3vH2sQvgQad/b1vQetVj5RFI2GnIp3jeKVWW8puDtNAghhx+8CO3IxzAlX+d5bUHOm5Toj56bdgnn6m3jrODdejKKrHTSf8RXidtTC4M1Xj22Qfrh3iSoctxkAsYWUiwLZ040i7r+35WwSrrCAE+zj5GQ0ITHl5s6JTaBJr8pFTPCkirL8zK6SRqMaheHIaajrVYKkAob8Fmjo8pg4KJJKDFyWpqn7zndVqvZu2ANgiXq329jGTO8hYjRyE3Wa20xR684P/Is+NJpj15GUTtWyrr/kePIaduYSDJnvAUjhDAr/i5uBVpXzD7l95ewnsHkFki0KQkBCS328R1GsY2jdx+f++P4nYkVQSfptC3KanT411/48vp1U2cNSXvY9ZEzy880OZExSp51tQeCjGRc+TuFsXghl8JykGo9MWOV7VMjiDUcS6gTU81MGo/dUy634yEiqcvpjFPZEfKIlVnx5+hnSqU9a6yKigd0sAkYzQUfPNpQYoLVaIIgGjUFJ/FRWJ8tCxFDLoyehbfbrPIhzwDpwIpuBX+6ve8vxmlZjmVzoyfMo7tIgnhPaRHt/367Z/mxarnS7/mF47tRw60UJxfjIEAan7hdJP9D+Cy7/5hPPB0nE5FADGh/xbI15wOLFD9R9Jar4apvcUjUfZ8uuQ1azqgZdZ/dP13AUCD7F++4lTk5Z739JKtQgr7592l8l98Gz2K3QIuaxX8HiBLmmZn7ii/kC+mACRegHdU9hncEsAk8Gx26nKBXMVn0/dLmA/QdhG47OoKPRTEFNTb2MQKovfOJniQEZMQGGY2e9Erpshug9znk1YlZV6oE3ZRpgdp1a3bFJcwzT79/1TtVf2ppD3eaig6j89QGBEVfZeW6yyJ+WXK6d/1g7gNqaSOSriP3YJbl5R3onel/4N+v1D77sOEE3AAn8RFq0LR/wSmuLbWmg/o3BZdmbiDYD0DdlvcXJaJTJ/o94SyDIdq7DXK6BOZWibXBxrT1FNtOOnCUDKp+mWZZ+4toCtpQE27G+NZpxIa/DWCPxtq5TAx6UKx8rdOIVH9geptsq1irKrEDzr93X0qGxTrOaQyG0AKYfWZnncdSm21uLPHVm9j2r3WowtqLK8GgoKCODiHcefGnlHPhz/64A/B3l/TwkFKAUPtkrlNSQ1yYpmAJLMxwxXAttmsvDFBKyWQ+eTqWOikTbjRwgioOhZWIrw87sdj3vvvR+42HAgRQ4Yqgjyf1it4gxvAEhEtHDd2cZGGraHHGHQXyUwbklsvHBUT6VLsUamrN5uAbRPzrTocXnHeScukQej7hAJIPS2CBt0kgA5xXksYIm8Df+GP4XakfZsV+bJb5oz7MubkwPTARrFcYuSa761vxq1Me6z1OOzF0qCPZGiHaetsxNKJqve5UQx2Q7Lz7PtuQZy1BYSRdDtuWTrkjM4U12PCk1SwK9Q9Oy+qjzkFTFem8rYnOL28QtYZqEXQK4dN6OVC1mQQjtkAj8y8u2irNRZSp+V1BOCivsPQ3iyshmBHsKXxr9x5y45pRwMA6UFUTiQwmnh/9Bqsx2YrPkJAVSBba2sTlHBx572HAvzCex0CmrYI7biz6nH2wy7Gp4AKQs0tSPujrMlvlDW9T+yxPezBhQNe2BatbsVOgJvSL/r8MISyJ1rjdJFNDbBzuH1SnLuhIB98wOcGNIOOGiebfI7bkNJgWTlbSWdQ65P+k+3U7QRC8QJZzr0chXQCCBIVbii+BEYQj/JGNloGikCvfdg/j7cJDGxo+DthPj3rrv/hsZre96TgWPBaJDaXK3AQr0C+jwrWkAHC58k2tVXDyuK5unZ6TLEZLiN14Ogl3+hqq3GBgigq1khQJ02XsKgiHIMrFtWjn2T8rRD4H4kprILoTt9Cuo+bdW+9UFaz2gmw3/j8N+FWp8/76eWp8NoSQJvKRDle51FFOgN7WiPfjz6LB5oU+FPpu0bdmkR9zCetDKc9rApqpjBUo0Gdz7gl9TRX3S/kN5wycX3jEWynbY3DWMKBOvJEvRJn7bpbOp4VR38UowmXehgLy3Nxi55sQhjDCAvBjCDmc6cgAy8LTtm6xlgqHsmCdcCBeE10tZyYK+UQMKgxGTLNkXsZfd5qFb0zmwbg+VIukE1tar+1u3jAgv/3P5DEpFXf+7p6F3GyzqaQRoyDFbOPQ6pvdfrZb6xFCajB3JNYWVh/ItBKmVuMf5un+Yc/jgeafJakRNrbYcA1pR7MshT6H/quXmk6shJaFD8HiQn711UcIqC7QTI1H82N3UctDMSDmCB4tdOlC0hNc7fPY8sVwBmwN1qjjhN+yAEsqDI+5TmKL16eGWgBoua5gGBWCLf6ywDmPW5pjSw9v8rvTfB1SalW8KOscZpBUAXak1a0/BxhWG7luvJVlTlKdzsWUbaXtHx40KnMmHuFUVSoKtDvnU9x/2Qbb3MYYE97nPVOxZFzzE2Mcy5Q1u2ehG/79wcdCshptcqn4fahKtDWHIZdqhi2hpiU/PD4KnTpl6HVo/eLiw/jsoVrZEpIPMTauv5T9xu9gT2rTOFZwRE2M1nzAbhgJZpO8krmTKmpvjZVUjqWOUN6cN4Afvb+XL1YXTmvIhXnkK1cPjGserHk9cFc2oSqjPXZSWsENHAe6EY5rzUPpvrCAfDopFfFSAOBB5lCOKxfykWrVQxMy1NGsC0G7nx9zS08qm5O+75Ph8hQ9FMedqjwhtf4xrS0pptUYscDT/SyXBUNty/5tEbBt6ZSzESFXPBO1Gnof+bzBF7Kc59+emial8OU7Xg+HFD06U8SZfoBxYjaQmlVP3FDIAcuT3N6q72+NHweFRxZFzsTma9TOFkiA9oDBd2TjK+RX+J4UfH5NHCph2cvznviZCUy6dDBE8CAeGcnT83VcgE3oeNpSgGk0iLpfZCpDEKaqXnRpmWnEqxoYRVTX+nBmooXlgIgd/rbFkTGT102l1ttCG+YZVrswaYL2zfSLRyL3FkRTg+Q+sTFHhOQBQKjaMRR1/KbdW3NhW0rWc6sWY+XvtPJ0fMkEhhVL6gvhtOblg0ndnc4CaCcHBm/AGFZjhuULexQemOcQkvHaF1ETmuqCZ2Bo3sSEIi3OMQ4BH+uxwS0A5BtMkr5LacmAhRTLjb8/7f3vrHfbdld0Gd977WASJgmBoovmCliJFHbqYnWhsLcGpDyBhgioCJphzeAUakgCZJC74yYaEjsTFstmIhT2+Ag0E55gaiJc6ctCRCTzhiMYGp65xVtNZk7odCiPGf5Peesz1qftfb5PXPvnXvn+d2ZZ9/7e77f7zn7z9prr/VZa6+9zz6tnYn+CuBXgClAXgP7CDxWyLSKl2hMaKJlNbzCNr5Y2TM9W1PxulMMoD0pI3l6B+XF6BAvq8WUYfOLWc8XO3l/Kmk6AI8pMX6v52TcSke9uXH1t9h40SeNxZYodwcqnTnI1N1H/fFUnec/kHx1nmvTf6YX+mP4y5qMFcDmK2BUdxo9JvRCJuBza5UyhotWIqj1mmT0uOpscJ8CyKHKyhQfwIC8PbxWsW29QdmKkbpz0QcCuxIZxqIid95aAejwcOL5rD1VppTi4rcIdq2Eej2NlEbxlnv/mhD91DPeLP960rGKT68mroUnZWIB9ZHDOuOh+AUAz9YwRjr1Pu1ddzQeWbJyiBKk5OCetmDckCr0eD4NFWPWHjM96rLSf0+UqLoWO2SyFVPkPAFWdo2MBfJDB158UbQf6V1XFk/3LGEpMvAe470mhB003aB0b4LqJvvOWDWLjsWo7DNjqeggfJPNtcJIydIBgoPXWizmnDNfq+ta2ZVgKkeOPOL1UQm9QKjhffZVpyHPMP2SMx6a019ej21VFfuyfqiHhfG83aq/xJvHDqw/fe7bPRI9Jbmt4t880XzSRsY9lNmfdVyZ40RfYYjoo0oBJGWsrRamaaipO3ax6P3CPMISgdHTQRCQvQEtjMisVvH0A6BZRrZPWUNXyMyADD9T6vNdJ3SWTmesuXPdn8vFLqCwj4NpQT+ooAUk0EV5AVvm44KBdFxjKeo90iqphaHTKIHpRaASPPnTC3SlvQqjXINeO4zBL6yk5DPIwki0WX0NBX3Wgv9P/KLjI/ccF2vDE4iUFkj+dgHb6jSTjIf91GfxqBP3nO50P6FiQ1wLHCAquhVJNWHv75ZyZb/4i/C6macmR3lmKHB4BLZ7TeUJnSSGTqgH6ktulL470shxP6w71oOjUWO3eS2YEdjNljZk2QBoGIFwNixW6EX/2Yh4lee6km4J8+bnuYI/QVjwrw5aj07cBHg0OD2cYAg5rCr7koIuVqWEWQrpIlegvoxZc6+cwCDdY2cMFXMpS+LVURMaXel3eXorO6JFzlamcI8FtGeavipORRqGh0DJ8EUJT/A43oJ6pFHueBvBY077G1Ypn4fAbuWpsN+IkFMa6mEBvVzDo+yv+io886QrJTR8jzKJARCgq+CaNeOuQTWTWH96nvT42O+b6bLHWTL1P8oaw1hb2U4TW5QOQ9zgtqxNDZjXesOhEzz0vZzKa/2XdgJw+J1hANMQ2/71xl7IPkCXJ6M0JDtnwjUlQMVck81+OT5c2CpPKm7YiI3K7gNFv3NgalA7A3RUsEzdj2mKaXud0vzu0QYX2twaqc9c/H/FVwYtW/WgTYUglh9BvwPZjyjDcd+n2j/xWM4ovUj7aVQkGYzvW8lPxvNlNTg+HQoAewohegxbzLggwnF41kb7weTiwJRTwpf98UWBhVnTqOU/ZTwUCOMlnaV76PpPoyPOmE7L0+NR/dcnupIuXWcp3a8N/15yZVeHsQAV9tAyS2fj2EDMVfr8gbYbwKs6I7OZ54GgO4W5nsGlyYKaASQgJC23Ajqr3Qo9CK3AOAbTkn/CdG8r5JbnElSZ9KJFYdNSoUh/pulX/zKcQIKi57D8Q+COT8+FyaMvLxi3dsrJWPd/fuzv4FGm41Dvnw5DSK/coVMf1xO+wgOibOhYnRyIjL/qETxtJka+OxqPLYWOByh67uTxNjkoXqcVFAii/liBoVkzKCalYeIEUIY1dLKEAgfvgqfeKhdd3he2bjxMpcpYYpSX4WMZ5inhQ7kzaLseKIPSKfHOGtpDVvGtmE2apbFiJnKaro+7de9pgHeW3MDDdRNE01vtjEpANiEj44g9nFHCDGmNAErhVkNQ7ZCUZy77v+KX9n5LnDoPhF7QP3h8nIYVU6CYJh35/9LfxKNMP/Cj8cVrtnJ4eRBZQi3U7X07Bmhri6tHohezvxblmcdYVQD98vLjSaFHNwHHpv/eUPHEuZiKT/1HyGDIrcYu64GgUy5Nt2yiZptlMl1w2QqfvIOiZx1yf3ezbzS1gmMaQzXpv9BY2FjIMkXNbyNL90THODty0SAPY5BOtqqtMCw3ETc33lGnkqOutyk4uueF3owaKj+zIA9j0HJXSJicu/C0rS8CkT9qbJ9p+rp3dwNyLAjE+N3K4J736zPZKa/JyDcI7I94/tVP41Gl3Vv99GfO3Q77bz1B6YhnIWRIDl7pqxnwq1jrY/BWMQw0x9Hx+JJ4FWGz4Oq00ONWt4NyxQWk1HvkboJ0Ws+LyzTftf05I3bUQhiQj9lzkYtgfRb33g9WcOsu4YJdUUfii8RU1Z08nc5+UEuEAtAyN/9eW04mTDAKMIMWD3LyUVQva3CBxWlVyrdvdeqYOYEdaPHgBtpJiFqyMVitz3YJRjXyQsCzTjuwHkk9hjBGW3kAbboUoJtje3i243UaH/2RZ/8Mvab/+X87DqSmf5T7J7281nrSyrrshHzxyZzmzXzNu/EYkuUGDS9r+Myt9tOSX+h/GPUEtRgXvg6n6T+Qnql6Lvmqdhm/ULfEhQ2r/m+i/1wEE9BO48rGtrGanwoBoC0kohrK4LKCQniuRo8X8hnpJtPthA5HxQugcOJFdB6GoEQUr/P4PY8FLqqHhbA3eKfiANoqt3XQtNVhLOFRxyeUBu2dAjAmvWXp8oLQdLbjnY689ozTfiiJvEalHcZiGkfKnpdsbF7GQuJGh9Dt25r+4iMJCey0/MAd6CmbNHxWZOsh1rn6fBMlECNuqbN3bvwL78azTxwrLz3BOyHJWogeIn5ckjG6mehSyWSGB9SA3ID5KqWSW61H9H8fz/nyRRf0hbQtup4Q88TRH1Wd5ZB6cpJLw9chGya7ApL8HeTHE1S58qcAk1bEMF9NrR6giYVpAO1jgUsMU9VhBc76p5ZCLSJcnuQaSQc6v4pnK7cT0F1upaLGAlquIJoi8bNNX/eeUsZmoGJgx5Q4k5WBsK0M6nF61O4BfN+PPI4dAn/kB87PlKH4kUn2UXJLjcXJ8qHgdVZFSNje9a+6x6cfQyiAIE+5fwGPwmZfJgUNvR4PpbT1jMCPs181dvTqUv9RXxLE0rmxemcUFw1YkB4wF7OYVIfVw6RzYehe9g31xmUahEX/Ac+4avd2U7P4xWRJS+mvOAkak7JhNihAZ/ItwVkJy+n6VG9vF9pGLS4eAfFpWb8C4XyM0QbgJ2VFZHwWyJdngwV/Fm8vmPpYcFXDAebyDqF4SHl57tkl7kTP3tCnUizzx//7M775rNKf/p/u3vP+0IKq8TCwm7y/KITM4+Bre+L1wEcOc5T759+NR5FCK1OfdDr92JI1SALSzQiad4OWm/AJsmHMLj3LXm+BWBhLR80u8m+sxzTnT2eU2oCGBEvX1wcTvINx0qaL49GSAIqP9gp+/fTJ1Irky/NsK8uglgLscBSytE/iIJHgYkh1WhbFsjM1RTivayxHGJqVOIr7Agy4mE5tJb7HyTnm5ZVrlVefed+7wXgMaQfWr/uVFXLZ08GaDfm4XUqFyTiiDAn5zZgrFWJ/xPXb/8Kzibd+/91j/qG/eRj2JdykDzuYjPZpi+O7lSLLuGX6bV+PR5VyjCjLjzEkoPo/9OwYh61O8VdPxnNnKDRU2B2ts0w6TjQ4xzjTGRTH6an6jwv998A0cd8W/S466rd8sVqwSsfOrGOSrAvRI84OGspGzP2igSqwgTrJbFOeEpy9594EqI989Sx3B180Drl0wBerEtdtba+86PBksodSa3OK+rU0ImkgdGL5CNK/+B5ABZ2A6Vu3xukV0VnV/CVMybtdIX7ip4Bv+wH4F9Nz3UH1+z8JKjL46hUPVdpiZS73U8Z40rg70ps5912iLVzub0Z9LDsCctymQC0Lw48lhf5LKCnBNvmOjnlquBnHbwaRnqqv5uQw9jX25Tj58HjDhyY9WgXB+XASN7ST9ViHvsl16EwuS7nsfXL0MCZDBQZBFw9gbSNZAEfPLk9EKr5FTlqa9MlRG3ovLG9OCQThTcqzbselQ9m2YplFPI2UzOQrDK6B3d53xubSe+h165arR5F+x798LmSBC3QI+m/JF6YEnWNbiywKblLO6vOIKPzE34X9B9//9ocF/v7PH9P/HViT4sOY3ZqB1oUMeqy11cpGvE8VLRTkd78PjyfliOWs4pEiaii9tyhShun0CSc/f4NOSDplUYnO+ATQFv3PG+hsMa0tdsCwvdkWZcAFiLdtdApo7muEQ+li9o1Vnn5IL7Kc/Hwmff11vxnEWRkG9WhVqPthLOjyEt88W3dpx3Ir0IrCQ+H5XaYUDfQc61pN8/mjI6ZBdnSw5eCjPO5qJ3rvj2iqtoPqb/6a8hDE5J2Jysu4MtAOvNYZxMEaq4Ui8nIH1X/ze+B/8W/gbUmffhX4/f8V8IN/AxWmOfvQOR2893KJ1Pxln71k6zTgEUjaF61+w9fisaXmvXkPej2aRP2nMZMnIfthTLJ9LwEovE7neNALLbdl1X96iqi3FRjyBYINXpV9DRuwfmcI6WC1YXE/U/+lTRYPo66PtiK/Sw00/je9kSCqi0dUzOpyOcYSLw1mKUEK0vrYWHqpx6fGwRw2Vt3cOuEwTp/opUk94rEoR12oOeV3iq8iydk/yyIam3E8+4OuR/qdX5+Crwtu8Bonz2kQusnlDIJWhjycHdyvf899Qenf+m7gU6/iLUl7/PZP/WXgP7yHG3gsoHjPJeRMm8hK9aFmJWUgEMXP/seBLb/hvXisKXVrrnQ/luQ1fXZYM+KpK+lusQzkIR0cTtg5ptbGtZsSepkVW0/9p7uo+gjkYlJOZrzrflKa9jjivi0eDNGfcKMERzgTOrNYk0F+TxWk4XiRXXI0wTwLeG24lV7aAkvhCXIQctEJrZPnxm7H4lAVD3BsmckhklB+TNOJfzowvQL5zpVJWiewH5AdDzdk3PbsBujhEaizjKD8owHXr3rX4bXaX/kU8rGrg0cV1Ld4lj66VuN0gI5O53CC202E9Cb17d7rH/r+o03/ll8P+9p3n+2/kbR7qD/4N4G/9re7YHPqTgVyykvQqosFOa7RoTQgF+3t/f7ldxp/49c8njE7koOrwaLOOU6PilYr8AT0O0KX4rrqlnmf+eAmIAy0lXiX+riQpXpOOcw92FXPUw1RkxOsNAYN6TGbHnuvGGN5jXSfb4ptdjzyxq8XFcBsLCQJcQm8wqva+Hv+47jy6ELoj7BBLCEZ600ka/nTAh63bSHaLiTPW1nJkHFTMQrqJfu2GIAWBDe9/Ii2W2n6ve8DfvTv3GOV/1AGnoCJ4jXEE883bUoelkmGW0kMZHby06/B/tO/fPLive8BvvZXwv7przpPjJpAu++J3Tf7/1/3xbC/dqfxH/z8YlhtTuHCxWgKoTRFnnzSR4qWClgqrr3/7tX/sjdoAN7u5HjnJBddP8TES75attOIVwTN0+28LBP3mseEctwIsIdDkzgs+qqL18fnJthgnf6EAzEC+UgraSi6uv6HTkH03woz6c0ml/Z7LxJ4ojJTD0AsjF3xwrS6dYqsK+np+SZzo37PvkeHCMI3MMBt0u/ziau1LZN/05I4maL47fJpyZjT45F+uNLERqo/jyrtYPY77uDxZ19JD7Os8MhLfrt4qbTcBFV9rQRqvNJ7kBi13UMDvnuhrbEaVNcFyxpEqf+8UIob/L0NWbypB1ReQwF+GG6jYkf+3Vt9bFus9lRdQ6EG8Fh3BRCrjE7KARYmoGsDMDlUMiPyDbo/3l3BmkWtZJNHBd4sZSWfuGyeaq34d7Gvb2WjvYliEBK3YrovWZv+o+j2YIi5t1aoI+fLBAkYVMggqoiTWnk3mefNq+zJ4n8P5lm2Nb1CuxUzzvirrPYqE6bgudKiVq6UrgOMUDoC1zZJt85kH7jwqNIea/2nvhLl7dV5kmcqD9A1VhWKksZoB9X5ZKClJoSxcYlBBWNSdqqggmrGe9ULzl1hDn1dtd1CRvhs9w3xjqVTSbMtW0T+2FYDNX6/7zfhMSfCBQbvHldy9VSQ3xQ8ObU/utEx4yi6qf7L9XDQdHW9eZWQhdfjp3dQJa5safNrC6j39ZVG9P5PnmdgA0BNL0fRQkYLB5C1t4gW4/83ARwb6IzsGKkqMajVQU2eRDCfq8JkNh9tFCo67w/FbjMGKvLBO5cHGaIuQ65IWhIi1DsGjIoi2qAjPo10PFbh33cI/Ee/BTEy5wvcFIQOftEzjH29jDvvf5tYr3OA42fcM96K1fkQ4JPXQzBFwBPoWXXODlDtUBin4Btq47m+FTTHEEl/Ws9j4OPIwN1T/YZ/Fo85mQKRP15oLVTx0n/lPT1MNb7hfVa50qdMibo+DmNB5XVxrhIDyhE0PtzC+0b/WeLBIZOX+u/e5fFunBf9PzvVTIuSVNAbLsStNAYcWVdvJkGqJvtte8T+2aZ7QM7dU+kMtcMAGJiWPWpPByngO71cBMiynRi8aRBmQJv9iAbrYBYk8Eznx7If8ZkLco8wFMC0nx/wO/6l2r1ArNn/uXgJ32XS14PQ6t4QW132e/LmS0OtEA99KEFWg0ZB3bJetas5KKzIrOXhB3eAnNelV2oU94cB/u334VGn5I+3i49OvtTB8gvn4gi/bF0Jj4HScBP6zJNfmv6j4u2UBQu55UFUdLIOnAhDqwe845RRXMBertiz3HGj9qeW8ZAnF+N30oHV+JmWYSfznH4+pcIKUla9wEfDBtKoi/dwAuFQqtmZwX+o1ZtMT5AVRon1SbpaL5GD0uslMIg1I/iz7CLVpNDk2yNO//43nwALSwuqcQyCXHZTjFje44CKxSZAU7TIM1k/UB2p35m8xppv7aVwTJ7qARxsxHVIpV9acKMjcKfzP/uWR3CY9etN4ixge3zydXiEW4tdl5pQ/9MqitMyHLSp//QUU/8xnBneO2lgmTSe3MFy4UhBQxOQelPvH9L/buRIm6OMvwWdzcRw0dhCttsDArIoUfnpEeo9ndZvDXLyUNscBH/Ys0S56qeBO1XH/XrK7QRSGzSwDlPPtq7XxuWOurRYNVJoXo/Lhdfl7T2WtIcEfsW7SrAT8crjrkvV9xQ46/eSTyqkG5/EkTym4QUU0MW4niJmaagLKj3f3ElFBWq8OUXUvYWltAqucf/3/WuwX/7IdgFcpNzVoMcfPkYpu9Go+oXRDP0/wmS30v90sjzzFwjWX82GUdNtylXUm85NyM0CiJFykSyFGwnOFcOv5gthvAA1FrMLTolQ9Egh8mss3eg8F6/Q4wZciMpFBVqaFiMt0NFjBC2Y0w5jsCJkAUKU4tfgcBq7TolseputTpduenUYoqAoQ5GDutAJ1LRfa3kHpX2XwH/yO2G/5BfAVBMkpCGdhfIMIh+5XSkHyWtrFqfjOk5Oo2jQ1decuvkZr60FT5GIGypWS3mJ+jM1AeL4RYyNdPzul+6x1X8Fjz659H6bEvvIUo6HoS1UDnCyiEWW/pecFQwBROd+vjI5IJgDi4LlfpW3GTJIsPIAZjkno68tRA0ij9YAWEGSFIoymIyN1WdflypQrtOtgCL2KODCVGlRGi6FtKanltBul1sWkEDNgLNCILIjK5BLvWLpmNFHzw3KgAAJerWkTaxMaywFQwYF9lhFf03/zFfdwfV3ZXfKsyxmtVX8VBqXFU0B2/0X82jMPM8RjYZuEC5xfC22qNgZBmCdEqLI7+nxWn5vcuES63MkHce4vv/rYY89rsqUuBP9U/l7bElJojG7yEOPNtVfHSeOLVfwE4i94voCsM0B2CirbCty0SARFNN5sE4jHQIu2nJXTJsBiSyyn8PcZW5fO88nuhKUb3pflcsnUV32CxYrlpeAKtsc+mEs8U3PZ9Rg9UIuoA5XsYrgCKhXZNqG1GKTad4BI/tuYaVMqxHPqAHtOyDtsdY/9lsCyGQQj99nX1MYdZZBYd8qRsaV0RRoCu5WBhi38B5Rl9KYUWlcris/UymAlCmxjBXTr6lg+/0b3wv8/m/GOyqp8rE/P/MMz8F9KFHHjj+rz+bcONphLCgDuTzDn8c6gr5LTy4YkiA5ZEBipqn/YpjFcoXcSUN5GIs0HIBsCrSRxcRjhl2TnNvFKN+3BDWXEpYLWSSeXqwl0NH7oy9HCxD5FZjic2Ee+8Yp5MiiC2dkaNXqmHviTv2vaT+axxX2T/rbgum+AnL7SvZcGIBHnX7ze8+wwP5UFI0Eea1TKbHQR2qeiQo1aszyDE5OE6OOEhLxbpnEiwWGh0Mml1dxFtGB0oh+FPnt96n/H/6teMelTbqWInvv3996FY8rif7vPwULOI/LvazMH/n6NiugrWko3mh5lT3H6sgw762cOSPYy97oSvRQIV6tBgghOrB0nRYF5c7RQyWBtU0sF+3zEBaZ+qY3g+mdWbcFYh1cOw00ItPyiBVpwQluD7K1vbR6AtYteKGgBxl8rEAZ49WqN21Kabvo95ke4art50u/7tcAH/mWWNBCeQC8v3gMuL7g54HGZ/ktHurQRcBIfFVKhgCuwjo1rtpMAji95v13vEbjHJ6t7UTA73kJ9sgfAngwGdridyrqn/0fz6MUH1ti2IUPa+SYyzjqArjzNw2t1fUWnPR8KKSL3qmP9TRmNlFtBdicW668HjTyi3pMHD7B8PyS3bFyIOKevpGDD9/Q6Tg2rabHG8Vu3muvuJtYIiFQ13rmqlxamovLaIMALNobVuYStKxsBWtIsAXgD5VjbjLf2uVoVk3nhTGhdTO887xVTb/6qwpc95RCxgUnQFdGG+haGCQN8Ce/xnifctb2zS6zGc2bBb0+5IDjCrN6Ae/++xf/gtNLfafEVGdSsQOEx/f/f/KngD/0Z4DH5LnSM9wNHMf2IrxUO0OYdB1FnLAWU0dsp2LYrjWKNiMy0X9Tp0vkR0FR9FlnqxCMh7iLpLLGx6prYgic9cHzv6zvdAYKSNvUL+nyLvxccbP4ToY/CG4dRi9BcFgHLQdhqENCFAIC5W0P2gV8wZ0GEwQand3bdZseVbNC77y07xb4r38f8K/rUYPhfQ4713opMnsCgIz77dbe7X6ISG6dcuROj6xqzmj6wJ9jdY6T3YYxozeyb/7/U996xlXfyWlu7NS+7rHWP/5997+PAv/Lp/DME+mMtzic4COvuIYOqfWCHlB0/L/V5DUXmlB/AdxnPSDegXrtSo9f0AcTY2xttrTsNFr0vw+BGy70H4sTmH03cSJfNK03CLE57a6FhlQoWaA6L9sKmhadGxamcSQGycQboXIJjoeFRLNIlhSStmBODoQPzJW4qpVc14KVMk7GNGgz8djesfC6P/r6733zuWvgv3nlfL8VF6/21GJNo6fkkeaP6zl+9GRoECMGSy94n/J16+YXbYWccPVY29vjqb/npXfQ5v8HUnbV0RYNJyjtXuvf+gz8z78C+zdeAr7pWRgT1f1zLI5tc1arUKqamRb9j5wNELfjRYTGab0ubG8iU6D/FDwydZiEbwKky2FNr1v/C2Q9frtZLs5lP+5GxueiFQH6RWUCGUC33Ggnzgyev7UTVoHc4Z00K1KY3B8UyPES0FUmea/LRYknzJ2YoIsbnILSOMx2UFuFGg+qA80StT69w9M3v/c88u+jnwT+h0+VIeMYx6JTCo+Jwdrl42ayCnvGwDidoKE86wt+e8TQA1Tbhm1VS86H1ZjteXdv+w//NuBr34MviVRq1S7Z8utkpP3M5+Df9XHYHWDxu156JgDr6vSEUqT+B6lNtz0HsV3PFXyJSx59vA0jnvpnXf8R3NEv9E4JcHEs5n7IO26nC5wPqpgL/TIQJk0rGWYXvsYwglk2vrTtVkw3iLs+WiIQmcRODv702EqP1aKsgV2FDAQ9uc9Nt1wk8dXznBjwgQYUYNrYLfDgqf80XUhSOznxXfuCh+p6J6YdrP7oPU755//gHbDejb6Cy/7ymZPqtbXXGZdHkvomPDsXnTYwjHPsXczqNN4umrl/RBv+j99jqX/g7mH/t9/2pQOqezK0fbgHr3aAct0qEBmNcm3n2bbf/XHg938Y+MQXKURg5xgmoKQehGHNA3IiNJDjj44T9OZYL/tJxObnbsy5Ep/FuiXKtvNjyxBVOgHx0IlJKa0Dvij6mtyH/g/gnVX5uWMAL5YdyU/1EhUqid7NK9WGEvDouVx4ieigf1qgW1qbVCqHDIpYOZ7NGPFSk8abVwx6Xl7WDBH2Pi6FsMqA6eNyyS21VsrJL6W0A+xHvhX4q586//bXr7T4lEjcDpJuuYOjOZzEZMrQnufJdiIxPdobAfTMeWlk93HcAfW3fwNsn/q/06f9V8lRW4Wmt6R7NOmx5yfOsfnpzwLf88N3D/YTdw/2m95eDzZ2AbQQW6q54MVNHpjO6TP7KF33Atszz630+3j+/5YerQUB5zm7IUtN/63Z5MKLM1wJ9Hv51J/ym3nQQROBN31WK30TYE6n2oIHLxbeLUSc+dgiVWwscHmheBFWIFaAJnVGG1hirjUoRY8oOJlfUln7MWPAi1Yqr8R2UARY7q/0jN1YGo2gw4qm7Cu+hDzWmfbwwP63A+sdYO2vfqrz8nT/0Q73jZmKH3Mfz5lLxp5MgjPuqZSpdFLv0czXvBv4Te+F/dpf86UJqExNYbzOnqXCcnsZk+qlhFdwDxHge+4e7NsZIpBVeQLTQdJB33aCz8apeOBB5D0B+YzHmnrmMe1JFWOFFayPa+IwkTdi0bl/dNH/jMvbCD1a5mfTlEOCo/hqiUWl/6RZ4qvwCo9znF5UNI5SlpVmNcjpngoD0LYgFICOzmBd1NJ7MXZJWbMijJtwsHSLxZ6H7+/2AunpeWpAIQGWgNyweCvANbHKEJ58yaKqpD32uv/9u/cp+I/97fvf/wH8tf8zbqon4RnXHkGbzJv51PM37wsRX/Oec5q/A+o74PCUty7ZMfU/WMGYtTgNZyJftzJIco/6ht2D/e4fOgDWf9f7YN/0dXjLEg3p3nbsYyZ6Gj1IE/r2/DeDrpk0+TAThw2n3iHA0Kp6brg38RDdTPSfvKL+n3X3RfShx22TbdVkqufwDrCUb/GOobWks2G1LvWi5GpN0eGLfywYrMBCGJseadX3eby7owJuv3E06xX8iix5jQBXezBDSeO7WkHPMspM9qbHYc/6g63STlo8d3zZpX0HAb3YPe2e7P63v4rlJ/4u8LP/EBluOZKh7axQiebX/Qmw/f1T7/1qYH9P1jd+iXumD6Xwzk7W5btw0IJ2jCHGdLS4qTy2AqD92s98Fnb3YM9dBN8EvPQWeLCpUzHW9Pq89pC69eHG2OpUfR7ycOhX6CONbaJgzY70d4Ev9f8Ei5q9Qt4+Qe0PRDw8zZO+U3ZvnacN0bIrvW908tCxo9WjuwIsQdQLkBJgNQZpQLwCo4ESwW54nScDttyukORsynwr131anMVMiIvvSGXW0FTtYGDdcS2nUUA3P575UHvNynMVg/Nlm+jJMu2vsP6Jnzo/90WVv/dzOQhpancg/cW/CLaD9L7F68vKI31K2nVi83yfkykQEFTlt7cQDMG09M/a9Pf+9f9+7fBg/R6DtXsM1u8Aa3iTKXDhDJvdRP9FH+g5blvXPZlKl/4j8nq9y+zYD30uftW2TIR3W/UoUYkki/572wZ1fNliW9ftNpxEX/taLnP8dLQiQAsDKI5kbS+iMy8pzGkJaiGJKO1tDT7Lpz+oDDRe2x9F2FDPlEedzCpBii4AA1TlsuZzwWxr96z6QQ83+bdhXYyT7+IprHQ9T4dHq0D7PL2xdKhZ6MAxzb5LIoFJXqB3ZG2LOfzu6dAc9TDu5wEJO4j8zGvw7/7Be4jgE8DvfOkeg32TIQKpl0agaSZfBWS1YJUeNYgZPvQf5TRtW8aVbSraBNXJCwh8mcVOgIFlAfaHMbMAxk1AP8EDncf0mA0NqNPYaX8gPLmRsDA4yEpRBKsLPCrI14DE9gsbpFbaxEBE/c3LjeuyxcpxBamcOqAz3NGZQkBUF1NWuSnM52UT2LRWZ4vXWr/9PD1PX0hKcaKDGoZcZ2GnDMtULGW7e4QJzvu9m2Xc77xnpwf7X9wXuf7Ad8I/8eN43SlP26q6CGoEFp6af/YnOkP9E++76X8ahQGM4Rlz25I3BODM80L/4355yleukGXYwJJp5SgmiDD5jLXGj+YRV3+zC3tihIGbZwtyrbw8XKUgxc9N32SdCzirt6eA6G1KgPJc+V36YAtIR6higj+8gv/hZp8eKjBB3purixFD9XJ5czeCr8L+PD1PX1DS2KEAEq/T4aJclidTnpR4UxBdM06pe3NnugOs3QHW/53vBF55HQD7v/7t5g02oPRzv2md9FTQoV5dkWABVgPwjICdP/Ma9S41z0Sb2e/82XX48FAV5MG61CgRJKf+lwFJh436n/kDa26d9qPo4bEawUvhy5UdkhpE5SqYCZcIfRU+GIx0eqber+U9l3ZGbDfBEk0wjym9WVkes4VOkCa5Dtl10CzWagzF6DxPz9MXmHbRiz293lCpKzE9NwqfnsFgN4kjAiXXAVJ5poPEE3PL2x4iODzY//wE2KvTtF69L1D+hU8kuFwpRW7A745eLIPYAfI+O06YbDPOrfQ+DuEh3S4Al1R4N0xVszU15v0MT+Z3ue2+qnXDIGasOtigowwLwT8eECBlsipvesW1nvHd4G1QfSwEWy0WyT3TDfumoAnZv1dCUc/oR13Sv7J/lecEX42bojzTc6Tu/29VlwI33XoVlPxpA5ifp+fpC0ibIGoA0ZFUyTLFj2MR5gbdS5wLW+q5NWX1RXdyA/3/c5/q/5d3gP0nPwH8c199xmB3kP3ffxL4K3+9qqH+HBc8wpznojTEs2wA6AW8p/57edsZTkCu8NeFaDAWtEr/rfWt6tkvnPuok6PuYxYuOyc2LyzQdZ2xtkS+E8GYcm3bhjHTva355JWicQLf8E6htZNZ1rZDnVdlgDMeYjmYBYZklS4olbU766gtVbqIpjsN6G8zv3qoJg8B1PPJtTNgmZhI3KdiQyb9sufA+jy9RYnuCVLwufikXoGpaX+hjn5qOCyA1aa4BDMRa4t7qXR72gF291w/+eOnXsTqeQcUmSpauTOJErtTtIVGqb4hrt+sGQQ6W57TduveIxea/dw9YdyJRONAtslUvnY0BU9QAJh8TezeypnPTgajAoyBaee0LWGH910ad14EQqtbbgV0zWiiFpmsaizmen2CoOrIgTbJX8mT98lsLoaxXANuQztFCTMMIbSIZT6Gy3KprvVzWRyw2WfPdh6KOD9Pz9MbSlSNUqS44WgKlXoU149X5vA8AcYQS1MJLLrAtHhdB2haeMzWZ2l08uJ5/RY9NetOE9skGHLLGGnS15hbAVu5KadGlQsVdR+OpOxZJY5IyXQ2rZyps+migd/Lm/fYPeTpITfn70r/DckDDXkqCpiEXrL99vrrkQyJZVCX+YhlSs0pFgFUlhZhJaLJUF7z9B4x8qp8ZV7MvOqz1qJZB//TVTetCuViu61tqHebAnPFqOfpeXoT6ZTPAs6aBRPwEA6C90K3Oqg2p8kXotk8VvW+CMj2AFEEQHtI/3Gt/yAoMrsX2DKnX7R5XN8GTWE4SJB7fU6eQPFj9YqP3RZRjW0E163tLpgL2tmZhO2JN1KGRg6o0MdNONr6nKga5bawfuF201pUoQA3gpT4vJlX6lT6mVdXBnm5lW2eowndcy+qGCGoxa3WUkhYll6tjr0sGmg89nl6nr7g5JDzEgL0CLDMsLgaopBxz7cnodCQsmf5vklfQEun9KIfWXbEeg8vjItQJjjbyPKs2tPDrPyZj4WbnoVG2wCINAjWsIYeLS+6GqXwQBs+bUGYsc6oZ6tFJyNYTy89SbG6ZqfHr7HWJIwG4SadVF7Vq2WBfJdMWg00phq/AC0WCmHchYER6KWFHlQ0gpIYYFgP005puRgA76MIqHebW70K2JOJGph6DqjP01uZdhHbthIvghHBRM4m5ZN/XYlCH/VJIn4/bt4Wz0vbTt8nHkTwm4nKlgeWQHosmNXtXlfUf7PcJQQFV0wMj4cgjuMkJ5D50s+2Qk5D5N0t6+0Vqp+XPXlbM16krpe6h+PYYo/eqwx6DkoNwkt9mGDfscE4xkRpgq9yZbTX4c2z7NmR2P50NO6936ZeY49beAO+7AfUiudDBK4ep6cZVYPsECFS79Ya8VHuAjxvtvT1eXqe3opkIvHnftAtFfN8kWIEoY5pJc86DVBhKCAUwRN4KcxnHLZCXAWWZ3sx9Y4XNhZoKhp277nrf19k8no96vF0E6IvCXFtul0b9PWhIt2XW1TIdR90sQ1DbS3T7sL7uR/Sf5P6WeBS/9PxFFyMy2nQhhE62u0x1g6VR6e9ACrG5rwrTzFlrYuL6bXKH65zn24LlUnGOcryuH51Ii0jrWLQaIPmYOKZO4cWFS7gQw0auqjFMBlBIA3P8/Q8vYUpp7gFLmd8TiQtwDUXmdTC61pDQ53hmR6AFnlNVrTVs/D5pbTTBIwyNgvvTx6hg7GuRnNBBy/czql3GgJpqjyf/Ncy3MGnyKRrjJnGddVNRSHS35s6cYPOmgvgz/2tTf9nxdmgpSesI2A3bZUZ26e3IHZOm3OOYHI9WdEgmmVquuPQVUU+Z9yAWsCxCPS877P/KXdFv4gH5E70Kf6KSlTI27BMR67k8Hl6nt508gSe+HX+G9PjI5lKf8jmzSo/gSseYa2X+7VWajGnLeqIx1UEFILkfnKTFfqaJuvuA+bJBRzIbgWW4avMW79pODYsr3QxAdpU4ShDgBYjw9V+X/RUNLwAIDHNFh5HycV7NYWfaLb6adbx1m9XhaMQFqsm3p+jmBd9rk3/gL4epUo6asuT9PY2mSr3hDbPawO81aM1BV5+98xHL1rNi7kOAq07emI9g4HP0/P05hIVg6vJddmaYQ9wCtl0d0yvxXI6ag3Qcppquhl/Be0EPLZHwGhve0ABm2PoPxeQchd5LTDpVFkxPD01r9gw83PmqAtGBE3GQeFt0Sixxounyl881F1A9s6yArvQ/z7d75WtKTxWwhCtUC3o9AoU/fuiUb7Z1eqJhwJ9lymITMejic50I2+6BUExRAEVOvbcVtXaEFB1LWc5HQANgfcslUi7Cvzz9Dx9oUmcCKcTIGCSIBbfYSnfWkW9ZkTCYlzM4qITAcF062AnJf1ZE/CZOBDT09xWJAu+dVYqna0qd2zuv8m0HtEe2z36HzFTOYMA4r0f5TaNhVp6snS6KgohBqIhehIEJzpw0W2CpwlzgAwxYnipLn/k/eGx5n6uhYmt9moiBcCqk3wCy6UIYztSRwcz3rUEyXLRkVa6oyK91eF5KoVeT2OxngUPkzE6eBKO0O7HaHHwnqfn6QtPng6BBs5U/hIA06A7iJLpZDScLS+4FpS2AhBtG7UwVYciDcchvcpeEvL8v1ewctX/rB9grNi5f9R0w2T9Q083Pd7esmJpgqd0qQwUcYRHf/oKFqnVA6dbnQVGiVuIRXm6e1bwdRY7dgWgwMTcFpzyjsUxpagYae49bVN/dtgKidkGanHprNCwbLfAZEKInwC2RZv8M9Kqj+OKxcngsxiPBZNhC+u71/08PU9vYRIvkr+bh8Y8fIleA67QP/cOZOWygc/ClxokFIheSvwUMr0+vMNNQg+RhzHd9OKqgKmrm3TZ8FOibJzAlWR5pzFBEnWvvUlEMQT0NsVY7f9wyxrjvOkkuTiHPXUb1Q2SLf+2EmKgDo/VBIm9zTJ42Y9TW5U7asICzBpzDO0FgOg22WW7VF+gauiHlKKMq/ZbfmEIsBg5bYvfiz5XV3myWh/XxRUQP0/P01uQWhzyStoMsowdoEeXx+owF0N8Fy8ywTR+B+hVPNSbbprETU9Q77sCCLBJI2OsZuggg+aR5lNVPrZP+XyAqMAwP2PRe8Lg4omn0RG+AqhQA6T/e9YNutitzZ51yd5U90X/1WCF63fycC/3IrxvZViIB84Xf1n+LqtauSRLWctJhpX1s6K9tyaHuuSUP365V9smxpFfLrvQVv7rRKtet9ST9e2DudH4Cz38/jw9T19g2sU9X/UOXMSrzg/eo8IQGKg8PK2JHpJ6kQGiJ4CFDtM79fJCpy+T7WBtR2ebLHOcLSBg2HSTC2GCMwT19qYEhgui/fbWASDpPdq7eC11d4pQ16V/lnnH/qUEI+WFo80ccOXBIp+g4/GOx/XDY7WL3ASwBHvax9WrreTJUG8Q7LDh8erpYGoxc28qy5lc59avuHY6y6epc6WB95nHy9imMcdTpvYcsDSlKIuG5yGB5+mtSGHgN66oU9xCuZtesIiVsu/36anOp6bE/F85AucTT7UAteh/thMAuD82G+BYGuHVVCllTtHFVzyvb703+TgvT8MihbKQlFN4sivozTa8tLiF7NIo+Pko7pE3MuljrLgwZI19i7URx1oALAioNSGcp1u1R9Vm8Dr+bF6DTLHZcTELlX92IeJCHvc0PmodfKuI7FvLuMsmWcZ+1CPL1oA4hTYfKrAhbVD+Zb1Kw0PD8Tw9T288efM8azInK9V57XxxX/Om9u8vmHiyaF4m8yd4AlgWjOB1TGG03WN6UU97AV95qdUOCgQd6REqlmjerItF4f1Ak+i/glbNVj15Z4JF2Z5Dwh92erZmov/hHNmtY8yl/qPzQXuR9KunTO/a69UsWbnGNqIzuX0K8sSSbLcqjzbyt++DNgK1sUEhSF/xIkTlWx+t6LpagfRZLgUTY1WQ+/2EUt3VUGMndF8YjefpeXqzSTzPIxlkyokEOMubopfUEjkoO4/4E/B0OVmKQJqLytBPVN0JjnLZBapdPGwCjcu2JiE1AXYmgrA4NyaGBkpVxoOlJ9R/dH64AXUMo9C1f26i0MfXrZ285YopbFfyQ2auNh0yOLw5gve/mysWQ7EOzUM7+FBblCzZscU1Dp2CY8VFFbMWa+cFztaoi2sZIyEDCeoOfWTNMo8XgCsgI8DbZqgh+kZeWNQtYJp1+oWgPE/P0xtNx6HQ9az7knTRaE8EPIlHunzP1zorII4HbxIzBmi2RSCTOgRQCZjEQqqEY/wWJ6aRC1m0yt0Gnn1Sxzu9ZsZ4XUHV+8LYVk+baV/zGoveTJyy2oNLzIjJbPEiwxBe4M0QCZthnxgPNmHGTcCyuA2lEnbhdpLlFUBWOI17qHr6STA6/nagu43tWk1IrCg+Wx9xYZjaAdRjd/z3rP9kzkWM2OqTtHMQs7/B2+fpeXpL0q7EOxgaMs4K9bCMMVA6Hz4Ar2KJVad6WQVaGi89tIeHvYQro290vUoLYBF8bujlzMQJteYQtb2rOTVHOj02PMEzgigofuhfPfrqYxqvE1KL82oN6hEH/aR5GClmarAC6e/kdTiTDSohefQ81jRBjFXEdfWIu2fp6Ah4gT1phuziRnzWbtsihV/HgBPfLKP9AHRfrVTfQhT+QGzUI7yRbxkAKlZMMPe2Cfs5vj5Pb0Vqs61wCc2WXCX0Arpp7LlXc4sFqeP7WJqlcxP/Oj0/UcH0xthOTpNNQB8ZXkigKrQHX3Uija2fTOmxDkMAdKAb1/XcA2XW4rB5PIxAEvlQA38nWNMtlNg2Oh3Z3uyKQbxZ9ERg9bnnirjF5/9jqPqhBdJAXAkDlYNYfREwPvrdF7TaNy/m1JRHxSJ+jxiIqwAuh6xoyhokX2zFyjv1V3bB8NTdBM/T8/S6U6gzp808xm9PMYPUk5dSeU22IW1SJvNY6e7NFielvZfJShMYn9XFo1PkPaQe9VbYoykv0GoAR/D38lYPr1j13xuOYtZJTzfioq74YJ2GrFJzxWE0h0dJlZ7t0HAMp7hc38KX0v/gOw0NG/fCuCSnTrci+y5MjHWf1LKigEsX73bPwYdEyvBInWdP21TgyGR48ISbW5kXFQqlL2m0gnEutCXd2gfQYGT3ox/XHukpRL3M8/Q8vem0C9GNk0mEeNOLPAWain5eMvHcQswjlFALYSOkoK9FceQhLC5gAnU4CWgDq3MKf0ylY7eC1QMG6g3SFTFv5J6NFxLX4rUVAU3/n5x7yM8+Wnq3D+u/CXATAgs8MRbAjLyQbi5xbWECx+A8ON8uDBS/R99eRDG8Ecqs4f2xdc7A2Yl8oV9bFMICdCTeIB6slpGbbUBwDjjZogacm6LzursSB1wcC2jSxumlsiWT/KtnmvXv37/xQ/JYr/ZoerP7lVvRotMXEfDWL6ALt1W75+8p+WuZOvhXhFabliKjoaXOhbbR5yyjA8/pmgEXc9vWzpkvFCdZM+L6fPunLtAwXGXFEv1+0JDAdapLk6KF8bxuh8dztlVyn4tNOl0XD/No/4VbeTOR77THoeyWcHnSI8qe8cCjrq2/JVV4A2Fzax9Ai2Hy86grYoHeu8rvXf9VfzBAtsa1sljGLU+HqhhrA6FLS9jVGBPxksljglg9/OAyJrxu3QsfMt/AtsmH0iAMEVzrcm+1lmSn9+0X+qJjjRsKINwwBA2dySKPDeuj0VxVF3D0/DeAFAJeBnliS1b69+s5jYnI0fAWNe6pOp33LkDu5GkJkD5cUP9eAKQVU49vI8TgUv+Zn7TTp98kf3CPwoIVuHy9WHW6j+FUIrzpBdti8br8gIYt9K9k9AYGWnPwLZRGPCjIiUUungFXZVOiGP5Jsbd835pxP6euBIt81v5ooZFnlMIaANOwHa16SExcP3KHx5cskjYboAUIHJ7cFmepmgDiVifpW+N1gR97nxvZx3TXIczyegzTSUP0M0MH0dHczxkVpJwOHecQNKmeQhj1moyhFDyzbNUHF82vdrq8c0zbzDYXsniRTzLdom2gnBKvcYf0O7i7LKwdbPIcv/4G2xwFwYOgXfXfNT+kd6ny51/twxXPseF28M5FSaFCYqNWwpMm3fu6kqQCVsjsHQCURov2rZcrgLOEVscgM2NQFwte0G0XUAloNJv0S9ABjAd58MsTRC2FAcVGnC8lgw4hkrOXXormnvdQNLiK83ptOTXIbNDgqi+jDRXintQw16o2BIAKh5iVinJk45QWJdj5xE8YQS7SoIE2Fx5uQfvW6gPBU+pHtKEb822OhnYxDH0+IqoMEk/CKBMcTfbHSiZO+rdsl82Bh5uk7A+QDr4bGEMUcsnvQuGabpOy6dFh7qZB07l0QjaX2Kf1WCuECHqacKw5yjv1UvSgi2xke+epXDTI2gbFwERB01C6AngZb9WlM/Z8azKmlHKHhAu+NGfGCuWA4ony7CD7Js/mV34PQSui6uSrQga18CePKAzV0Pr4a9nbekZ6r2ZLgIVYq6bAorgpv6THvNE4wZ2y3445hApZ0VfMY1sOfcGYz3th3T0E+aiZFtJkuufITczkgbAghQZiHauXPgZRaUABt9RTdkEnaFWkMocwKrsbD7yEN0AtaeGntsf6WNZLngpzvMXUPOgkTwqILafXFHTLT8vOHvXsCllMVLzLsgoYVB5W43oCv/I5vNd0iL046aj+Xxm+7AskG7zF6NLYxHATDNJrZ5f4HitR6jrQRPnN256yUfyTvDRKTf8tCWcPj6k+p+jJVG9j2XiVfPAyFMmNAnxTEIesu9xEEG/zVC/SKa2G8pjQVKoUXNm2PoMCHtB/1jV+C18EskEvvmoxzrgZ6zwvulSWnwcCh/jmdVXO7EVO9yuTgp3mRXlwAlwnyaGaznFUMLOyTO5Q9uDCI06Q4R/vGyZEZpvjEjgtchdhSVqlLVhaSy2eHY72zftEKVouYecdy0LNy0w+aktmoBc/+2BxH8OAKGxfTj9lrCqW7TLwAvraXuufAqDLd+RCStFfvAgrWLKCDuZtg7l0zbvoiYeJtnCT7WBtvzFRQDbrQ+lGnvWZCmv9DatKlHvfDxn9UxlSeVagUCFOum/iPSb9BAGHHtycY7rJmLBaocsFMJK5e9deiIUyTnFNvWOInLjIX5Q1yZJYRj6GLu+V78ZrE0Ox/ykgRnM5NOmhInmvC1LVZoUXDu4Zx27DTFV6GAvqtciP91xlNI9ZVtWYMtor9hOwXISbjTnWpICLoeTC1MxnXdnPPlMJT0INPS7Un4iyBZ5MEP+U9wDFY5C1LzNU4H3w817RcxoKy9Z61iG0AOpRQ+bwpgRagalXJvynoLXfQVdO30QpzCZNRVuZcwns46q/UIe5Fl7C0Ir2XwJywDxSEzhF2rbiBWdFOf3qsqBEpAq6KKLKUwq9QwksMAFk2tK8tKa4LO/SnnuDPMuTieL0M4IH++AdbBqwuYy/DEe20QcvDFkBUBtHL/qaDKTnLXImq/kZjx3g4U0mtmpn/xag1/Q/yxuZJWMw+hz0ZB+su0DJF0MaX5NDX0xOx9JZVdMHRLjB9HfInXjnKmv5rxiGBQRyVgcpg6RtpoP+mxcYNU9j2VDvJcxZY4lxU1DZumU2puUuwpPgLNZRBNPb9AUl7Nqeq5eqcWKIkvee1Du2pKzL4l3pZdE54BuzTrjE3mQQp/6PkiZ1u4mAah5p4/g9aEuPrBCrgW+jkXTEokoqdYJH9VH7qXQ+IE1NkZfpJcdBQOZ4Qmb2VGYu0uP8V8HuZHWckK+s3/Pwtc5stxnz0Wq+9RNN+a1TVh6by4WjXi+lB6ALdNlf8kYXmVw0RzzmfF6eRG0Sj3X0va0AZDq2KH8zaqHjBFkav+yOyo3XzK6Gxqo9apD7qv8ISSNZprMhLr6JMjS+4wzpEMgbVmhbVb5miepobMLXAeB8XQ0oU1Z8bU5b9aaSLfpIetxSAGJXAIVZthspeBY6sDPhCebjsJ0St+7TuYy2Q2O3U5G8MVgN3OEpXoFk0CWlku0tvmNYEW6W5RNYqaQqyIq66IIQA2KjT8UQZxfQAxVs1jpdsHb//O4pKLyZuZu3hd6+s/Tgqxn6ymstGnlyRccUJQNjCE7Styb0c6W25WWPVFlsLtygwEYU3hp/vaZ4e4Y4sIjfs7qUsUIefasoZDU727d1NnNc36RM9s+aDhy8bJvpUcButw40Wb2nfPcprhjAYnYHI+GZi6yx6abCjZ/MW/LW2knUVUUMmvh4KbdA0SkggJNlynceV5gyJPqfs44CNht6VNvCrPMBtjgVbgGefiGs29YwQMfJ8YB8QhmCbPf8bqX//H0jB4A2K2972wgwdbcPlCqOcSpeQFg09HsJWiLBOeRtLPd/tgClVVFbv+WAlrpWUNVePyNzCs/jBGtRzUJLuxpInwWoT0Cmsnq2WaCBGgfpLYQWU/C67ly1Z31sJ4kW9fjgmUn9KTL0oIYIqRU2v5bRqAA2PYMEQB/d0VigViGxNPHu+vgB3VBa/A6+pyK50KUtCy302L04lHVGvabjayuDO+iHPET7zq1ax/7bMGI+80FCCOiPomYeqzLTaCnAMj8BPQAxPbjk1X69wDDlwUQed3qOvalbteNCm6NeUujeDEe177V/thShAP/4jK1WEqrpzoxDjUbHmyYUxSOTcIYcHcbxTYQ5aL2lPOjs0lRXLEqnxZYkNDpcDLifhv2zULf/JKiOCnQBBIO3DqW61vdY9nYRAJ6s7cZds+fjo56b5gsMEw/DKyazXNX2Ahw9+0jhC6YwLOHiPQtoUykaSMUNV+vYgMencwk9RMaqRqoFSgYNCXjSnjfLKEkUX1WbU/MZ5a1yZ+sD7p6a6KVWjaWkoacJwq4NNW8lxsPFCzQ1MJ4tIUHUUyGalzLBTPifDN0TN+4TQBRoN+/jnYqtuzYoP+xEAR1omtRrbt75EA32UwFLPB9XuiF5ALQQE/lnEFCO1nZ9YL+OIhJTjfrP/sgjr9uWfSm+eXnrGPSTjKb/nF4Xryp81j1+bq06jczGntaEQPNkKMYKD3gwTSiVu7Bgy/lbyp4Lz0jiIb/OXrOfIlPyUsRFi3zIuHywrmwf1LSq67M7sH4Oemi0qRaJtTkJp9X3hQ4XePWBBBIDlZ6U98g4J3pZpQmy40A36LsLmAX4z6nLUQVjvZ574GJoY8BlFwI91TalbprTdV7aS0CV/Nb+dLgsFbvPAKTaW1/IYn9rpTWAziFq6SVMkSc3XVNGtD2rMEAzLubC3+hb5kXnDa27K1CgQFXyZoxt/z+fd3fhoXy6flrv4QReF1oEY6092knQ3NA2mRfXA7tMAIVssuJXClxdU8VLhU+ZghgOQxlMa4DfKEkSZFxiTDI+ncaEffPGfIPQSGln9ptli52VCqa2XvYapeqLxjel0vjuydqohBv+SbfqV852ZADCCXPqhHsjqvTfZa0i7rMnlq5h3mF8Nv9zF1pRvPSOeKsDUPq2p8/dSPkGtI0eraPypwwKoCqPsxhRe/K8GI4BiqLETbBZLj0I7nH1Bgao4iHjStOJPnwoAXMxTg+FsLOsDQVzUXYlT5W+CPDujTRB7eCiSp6AdZWcAmnZZhcaaSrHBKH454DpghG9TTT87N6Ke/XvbA9V52wYveAEutQvlLzUI6EEMJSip/h4fMbvqNukRsGOprCkeyZpMvRWANEETP1qzEng1kBM+Xo+hirF6I1TtpKvMkbCJB6TZ8J7GgqVDw8m0QvEzWoMrS9GZWelDyq3bbHqydbXQlKOqbeQAelTa5118O8oNhZI+5TeBZAkvr5fk8dYyQOjvJDem4xDGilkvzg2+rirOxpuKJbUf64UYvliGHxMoGvY+9o+OX91v6XbkFCeHC7UyVfSRoNVJrdOzFils51oI6VstnZ6dT6bHBau8Maq09knQN/K6k360JUphNyH2WohhCgzz4RMYXaFZAUuGejI24DMJ/x6EwgTAGnB+vRaAoClPwRiN6ERZZVXQK58tgz86IuU4zROHxcdOAuge98cbQ2HV1ZLGTlidc5HQw+NjVoq3KBTwF4PClQIVCHnpiAY49A8T1/HJftMwDNpdJ9a60YHeZy2fcpTV3tYLGVARdo9OZzAhBqrNALyzHxqt/vlTIDkprzwN06DndNvtl+YIXxSibbSnaCHbZLac+uRlTFrOkdM8CNMCOlnNbrVGKg86ttob+MJxtRvyk0Z5n5iGHqbNBLitULrHDPYRf/zp9+B9d7p14RP+ZkS2uzl+AygEkG00MiMMcX1WW79JdQpSOWdkyACHkVGg/9H9nyQIfIFcBDAsz+mTQ7Bz6MEvQQgG3TJKXwI8DrrNnHea5rtY/pgEEWJa0j4oEEqL+YUZCW+2jI+AggFbvEsppIk+S2yl3WwAxPsysM0tBypkFjL5ZUuD9QzfdTXeUNQhk/9nLJ9EkBWmVn3QOk9Ui62mh6bCU9g6e0VeZVX+WeTfN4Tj+qgicDCP/UmWbd6oPSUsj0vevLglL3OigUmu9OouYygyIxZ40kbd+v97js4UMYoOq/ylDyWPqkhTx4f/ArDkvFg4VfKYpUt3DHR0erT2aSjDB7OcMZWB2BDt87t+fQwm+hccxiybrnIritbfchuo/2kKzHoXt/nbvcLn9OWrfpZSmxpO0XckzE2m/IielFm1EJZMe9i8UgYnoJjQ2Gzw/RMLUIaGLQxv3riyRFpk5/ira8IkULH6d1B2k0EGQW0JTClKDDhpGnQm0o3qDThrnX+tGEWwSzPQpUmyjTBlX77RSxyKiWfG0/Vpsdc9bUFLNKVNAiPgMXUWrSJ0TcIXTOVmNq50hvxu4O3+SI8rOXkzaEpskvNAgqqYNmmlJfV/4MHGyqOe9y7lSGIvqhRIdifnhWqHogXpfqUVin67lwkqrHDRb9sdlF/pP4LqjjQzp8IWfIufee/BO3DsNzkbIcC7TNOisIN68DXJEN0PEGT6Wb53q+cLW3DmLr2TZyUpZ89pVak2ljKQBocFQUe4RiFP3vbDD/JTC2GKV7nGCAy8lwUUcIVLDthKgwp6CaVZjscTN0FQFb72hasFptIN0aIIRVd46Zs2zCnAgnANuvJXNmRnA66j3qQi2QTvHMo/aEwgQ9wtFa2019f8gCJC/DJ+r32JQzsRnVFAMWsK2K5iknVvF84ytjZ2b4KcYhbI8CHh5ULc3FtYixUsbfw7LgSrlK+pxuE3y67KgogljJJdpSa3mejNYoN3lurw6EGC/ppEnPN/tJLF/IsRRRNNBwly94a1h52nSMtchxfA2CZQeUM5qZVdGeCBqDq58yhTv3K+CtprO0HJSewzqeQ6SazJrFTWYQ7+VP9cBINGT/WiwuZyhmzywKvF454x7Kqb5OxA169+RN8JgfZLgCcIGbSf66vR5kBnt5yAu0kf8c1kUGpS5v5WwTJm6Wp31wGqnq45cvSo0o6HBB/KyU2BzIsXgmAo52zWVKQFPNeCXopbe1vRYJXLchU31PZBexNaEWWyyIDIHANeFR+0dIFo6wLTAdUjU3JiLEt6+2gtWs6qtJ+0aS6Dm0TBSxHsc17W+IduWRU4+BPAmi3Tje9S/MaDypwKThSURvQsQ651hTHOJby9I8ByxSa4nJahhpFLzEiAOYTX9sEh8qjDweYd35UXDekZRPjtW3J/QxlhH5mH7UNzkQgvBdjo15ePaMfaYtFvsOjH/KSUkydPGWAnia2DraMLyOOa9SxS/sSxhZtprAJbqD6zrpjP7E1EFf9r6Tf9SGaV293a/VZ1AVLKyLK0EhQjxCAbqhv+c+WGthZ5U9XXUk8BCI80NHOsWE5hfn87klP0J4UqjetYBrNsB0A9oAXq3CQgJADg8EViDKhlNay56OvyIB7q0UVIe9M2qQvw9uxBgYoRVDr3moUwJX6+yEq3q4j88s9ehjicdfZoBhgzppLWLW3klGMVmRLAQtl903i1hqTLGA4QwFWAEUFJWgAGHtSkK5hkuUJpLkI2EASueUtCY46TD0tljXIW1Vrmp+yznzKH+lXrnrzQJTw2rI8rPPVIgyRctjj0jqePVYtcsBHhB0ClCb0mAyPZ31qBKhHllN1BS/kb31EO+XJZKodQJeb+o25i395vck+eRE0RH+KSl/qb86CiUy2EqEXvHVzfOZmL+DTTVkBfaWJNXVAeWXagPWvYrA6CZ2mfi875Qvxmm9gQKmp2ZoniLiOk1KJ+p7YDqYYA2PV8INdUatKY9BhiPma7lJBcopCoS+BpfpRQaoqF8CdCjW8YmTV4JmpA8+qzyDtJoCTxJShgi98ynNIXWEcCTAGypLJXaVU+BJ8OLvp2ec6Qb5AKJUneVTA5l0woN5zHyNfFIrZux/fv+Wqs5ZT/ifeeG2XovfF75hq4wU0qXsWr5DWPghFAbT05NSbbJ61XwCfq1EMaItY8VFVHeCcfKJ3mV0GLuGngb0Cqsu9MXbZRmRuBxV5tZoH498gC83RFOtyaZigbmjjk/pvJvTovYtkTRmxvzXktePS1//J8ynesLL0+DqLammF36tOVYqr/PHbYmpOr5UKlh10EAhpSVTvak+ql4BlPQPo+fSXSfshVCkHE/inhTjq2DrfgKKdHnTmV4WN+gRAG0ejj03JEyQuKcqrWU9OUdCE+6Sxe5Br34Tuz9Ne1j30gphsS+/G56zUi87ydOZCI7ryNV4LX134wOrFmy0+8ea2TOfo4bTOBTDVEYCGfrBH0ZiHcc8+stKr17qY5FGPdY8H+ob22pHsbzY4FiCROtPrRTya6kufJ58d5Zy0uqQ/WgfBKg2zTf0X2RBQTlq2eP0MQZyb/jVfq3b0gTe2rb+yBcpTO8OroWeuRQnmf+/vdxBC12EdRu3TULmuUz/8vcbdY/hMelabgCcEuQfwTmFME6Hg3MQ9gaQeY/WqO3N6Tp9a/QF0pej8LvtTIbFfK+NwNrsDpHi2IuEjuCHCWYYE8i2tnFdMyMVbSnZkAf0acWcHGiwFUEgrYpFPsQhTNqZr6IPaLD86TcaaWpcSM4vU6NMEG5t1XSRXEXb5iAYpkQoycBXpQmxtx4VuHj34gJyYAFb7C9mxpBMylpUl37FlYYyP61uCnD4xBOvKr3Swby7bxXKKzcZDoWvGVfHAk7Yi7DyIO3hHyeNwx/TaXXU25Iy7JEgPJExz5HPYBHgM75s7HgzoT5Fp34dxQ2JaNOP1aX0ubCLLpq/YTn6WvpaRjXqCn6WNSB6dhpdViMzdSvg9ZwUdVM9xQaPElJxL/Qc+ddQfjXwqFZvmJdtFe0TUfHi+J+X1OmsFiK4wHkEIb8ReeCrAAG1U+6GcniRqTDX+ShrQ3kwwUc7YfoAwgUc9iTJvEy7ym059ffFaZxJNLkbJANJgUCtcyI32KKAmXBaDoS1fs3FrXO+hEpmXKEAlGzwV1iNPjQNEhgC1vinyDSjVg1sn2T5YmABIXpm8wZMZBNws641rW1ei4yNPthK5zngi1dsHfSgD6NKGJWwt5ZILXMGW5929yZYVDUDJn8W0nG8RyHol/MFr2c/idX2WYdFxQHrdjj5l9wbU0RSIEfVAgDfDaPkK6gLxpj/ihTd6ArxLXaUwUTrPk0XyyKJnxWskb/sWOcmRH1ayjq7pimCud5VFQOn//b/P7BcPYL0PxKtZKapRA+jLOZUK8onT0mWwuFkTqSPrCqZdLRhBqi7MrS6F1rqCu7Pr6hlzl0KfxhdESR8bCQGkqCdAdIqoZJmUaVZQmMtpYxMArF9cKqx4GJoSdPsd45EKR0jzCxDSurwBXzvLQKfmgHCT/I6WrTMh8Q1j2sYy9M5Qyqr/rotXEKH1HAPhFGqaG+9FylIEyFDzKNvgy5AeZ27eN9S4bS7y5n3qngR6X9RQWXWIabyS730KnF9RnisKoKXeExQgOhUydeSTOvl1K2+UOx6UioMfnC3Au0eaM1bpMDfXk04et7d59pKymLH8pDUExG6L3iR/EliUH178UNlRGaZB1p0N0oCL7ChUOnmkbQhwohkjNJkuDezhiHoQo4zEjx+8O/5xfDKKNzkSYGOlq7jIvsiHH7tpI1zAlxRmx5ujZ1rViJfGb1P6gvnntS1DF0cJLzotCXJUn6hILoBhi+ILyUFWDJQoBFc2DegzGJaTwYIId7Cl9fmgwtG8yiWmfEVTDrQCql/nNTGgwh2EYpfsxz1VSFgZQxcBdsjqdk11s41myIMYmQIjzy1Vs+KindaZ69HOTTw3TAAaWoNaYEswYmsECn37AGlM0IAYDySo1D7aUmIFiBzvWOm24H9/DJUOg/e2aRjgTZZyJpE8jvFjeT7JJSc6nVX2mUJT3e1JTaNZo63K3c4c0DHib/TfR+5t8IzHK7KIAW2WEOOTRi/H+uz7CbQbNMRQZc8YLB+LtsGzfKBFZxdszy90Jvvoov8ly5/ePw5g9SdHXMChniSn1uSsCziUQHvcO4TAJSbFdrMDUi/rbuXRmAgfQ2KkyeSzpp/Jjcyvo1uMyB5yipMPAxisCX4XIJuMlc+D/wpc1kunsKAr4bLH76pVD4ErdAmwExCTfjoNhNLHr14t+GwHBL6mIuW1e/l+JvVTUK0BDy4WOoCK4XmWlZZKiB1yv2JoSS09GBkPF6BzPXHfKE6UwbQCUC7ok001Tt4O+6jdFyVDQaKMvYBfWv4y1gSM5kGErB+X5R1WJUcxrhhpk2MB91z0wl1oZF3MJ7Jk2YeSS52VNG+M/fQBKnLdBWSSZ9pGVHIaWuH5TXmGE5R0j6sV349VIQHUBOeWrF9LQyeOxlZb9dohP65a41ojK8P82vXfzxhrFvj6/9g/e//xLg5Cr/fIWeenxm8VGDZEUDSMlf1ZYZX3SbzyBAQ+1N6zy0JFQ65YsvaY5iTAuvSHdChze1da56a1SyIuVpvxEJ1aVhuyfimBa9Z3IUcdeUqRqLBs18VzXAiwAhEhdvTLhbMFtJhTOk5rrWLPyzPZrFENgbsSPDoupSlfdiFZZrgawWqvQOUEkpts20Jfcd+2sTIv/Ys6QPHiXtHBp5LBMkTrKn1KOjTWZ1djc/V9/9wB6UnpSJJr/XMphwvZ0QqSQkCdh2UbHnMdzsCtznhYnBzrMhLXTGlIDsiYuOys8MEX5WPoe/l/hiZbLnX/vb9/fr5R/Z9yFeU/8/Hvta/ef+dhPHdGvJIKIuJh0YINEIV4nGKQvNOh/YX72CUATrwURqoyBZiKCZrovVoYYaKTUM9Op1hkpbL7YAxsw7oQxmYbUpks+uW42sKzMkfnA9kd+eyApt4fuzEXdDzZYGmVmycBaUinOgJaSZNOMeECFpMmj7oFXLKOk2lTULW8tn61B7V4ZVKpdAOAntPA8TLpx+k4Cd/ZJwJytJV9QMkhvaHjKD0ZY45/E20rviboIn8kaEA82AJcE9paB065NAEPB2qWVaBInTn+C8LaFijrapiCQR649IZ00vOENzlNmqN8PoyRf7UdrTsPVWe2aSY61mWiQiYyNl4A46pXye/RnkHoclHBuLe3LzFaGC5B1eK6jm85LZb0UP8/xT4ksN4b+aQI4DLWFGKCIz8nU4DuVRZnVuOS3QpR1PvGzslF0yt7uVsoign/tmTGEKneLNTriN8yAGBpUfjsKacV7qXozOulvFl13CPgBDtqvK212P4dxNQAg0BYvNIpF/t1OYUkaLFOa02c5YYXmbW6gBXKFMIGz4ahqS1iOPlgaErvow8p8Kw0p22jPQIm+dCMRzaei0CG3u7ZuB5JiP7WASvlQgMuoY0jloDhCRjWCPWkL8cqFDyZQzC0dfzLCPFtAElQGJs59e4jn+Ek5X0pwBlTJb/ipmLVqSObGEWL15t0GWPfkz+WZKJ523RQlJUEvlt5qHnT0WUGVp6sVwjIMEMxQZVLZ1wOOnfpYynshf6T0NB/DP2///sKi9+E658ytFheIjR/KDjK1iYXflnyQFkdG5oMUp7MZny1iD6+bWcd1lXs/G7RPsjsWnJJMACm9sDV605GxeAihMFqDElBXuBgUQ0pIwYRSJPVWA6uZbnLlXUfKpAXCdL0Rm7Zu1Lcytd7y/pLDL3u9LEdHmF+RJ55PoJIRI23K58VVKv9FPQGAJFLBBgigwkRXr6ZbjFKOmil8jnwCu8UU7x1tSiOf33IjaEtzHjmiRIui00H3RvQc/d6R58bXQm4srjUnqX3RVYMU9nRp9bePc6WFOBIL2cnAmINbcwwV8CNR/alTrGY6+DJrM5FcIwfLUZ/nu0Q0355rUuGELJLDvV+q5s+gAalS8UA9LAGmrF3RTH2OeXS6x5E/++g9Wn0Zs/0Dfc46/3jXUm2ZxMFbhKXRA2CS2Vl3RmXPVv2tk0KKYyWxFNxamSznSuCWWdw5qxz0KflOL0wbUlhwkuetKkEGM2JonvrT8o0bll5tiWrKgzaY+9tPpBSCAj0zqvA53tyiz2cOwQOGlT4Fq9T81PAowUxEMorU+HEA13Sfgwq25TxUL6rSnTE4krG98RG2SjKp6Fy83xXpFTQJJyAEljDp4OiLZBnN2tjHNVJZ7VepZuKETKkrx9pSoMGlrqLYeGHUf7I0x7DTZlmf4SMZdxsobTyN5q6bDm9dnnAIt81FYtti/6LTPsyFquc2MXY9acS2QGN0fox+7af/dnOfn6d8iLe80P6/7l7fPUrmX++2f0VIfpcRFVA5ULSiLcavQatiYtCZDAtrkBZCLSnVhYoJg2Qlf/KJu3KzoLmuVoTwEaX13Cc2Sv+Y9LXbFCVBMXcBJicYhomqdZaDoHJA1i89bgeKTSkJEfz6gCcexCFdgGA6hMwn7Y5+0XKkAqrsdUef4SUF9YznIEx7Y5xVFDVfLzXC1W5opOeTA9HgP120szC3sXCC4GOHt+UGjQwL36V0pl6ocI1ery66m9PnqikpEyYAIx680JF3DAImqH2hKPl0/FH5tlpuKGA9/Q6IRprW/XlqDMP3/aSF/bZRa6sQhbK6QItoKaplAPtm8i/vsKbMworw+EDR0g96XJty6UNiM9uXRZrljeIp7yrAbjSf53NPVX/a9H6FaGsA+smNx3pYbZBLjHLwWZLtUIr4CtlCgCDTpve8FXSegSEG4MfLk0lOtu+RfuiZlaSbFR8AXNvnjQ6M0IBzQYddkED75stW5NIhvQyBhNJF4XOJE9yhn1o6HJeL2grQtpigd06PKowC0UNRIXWGYLISmjhp1emApuC1EpCQY39M5kJUAFcCtucbpsA4AKinnxJpbF1ash8CrR6WlU+qsqnqbg1iy/6g2FhQWPTuDGmz8mQGJMEQUPjZ/bF0MCwhUKO13Fvebg31SibVlk78nPPpy15c9h0W9tRxy3inShPNfpZPTXYMnXHsiibBaRPZz4rsAMJE31xx8LsYYjVZRAwWvUfqv94QP+zOD6ubTZg/UVP8H3asawS0sPe9xQ6l5jn8VdK7UqYK1GW4Ho+jTWn8LzGcnxt9g0uVrpU4oLA9rXXDQFoqm2rQYXbxzX+LC0E0JXzentRxd5cvE1diKo2BfyjbbWrEIv7EKjbKKOK0IVQNUditzF6LjDmvTuA5G0eT1MA5Ym26OWht3q9teFh6XIqpyDA9kLAlOpiFRUTWKb6m7zKBXq/uFbgZc2LOu7zNdnzYYKrvgi/CdDtJYUi1+lBxub5NHrpQYUBGbFdAvpRHevRfvfOhf5BLjoeRFPpA9cT1iwB4pQLfSMu+yzG84C6rcbNJE/Jm2V/TnixrEtBW88AUMqafhOcj2xe0DblIl8rrl3veuYooP+kZOvA+srLtr//6pXoDokh4DUVZMUl5cGsc0o+F5QMAimOFGQC8NyNEFyExaEwyeALZT3KHXToUyUOfTzw6IcARWtoMi4ZTWGw5kDN5IsR4q8CTdJ+1nZWPklY3nsugAoqhhVx5IsNRWmUpLcnY0oP3UqzbClpUE/j+JSpsqPzh83rDKeUwjtNo00qnKsBSXmST227ddZTV8+xGiEK6Vs9p+KdR8FIi3vVEZfrerqVSz3FgzJWAYDpNU6jKEpsISt6pqoJkBiG513A0J+CE94RsynI+REG3QW0FuAImUfRXe3IFFsAG8I3GzzKBV3iKnniWaNKXaV8pHarPNMjpVxwWi7YYEJztusn6F9OI5THNvqAkby+7F9f+fiftlcb7VjTKwSiqNG06mOQMRRLOyq5BzWm9blVvA0av53UEATOoS5BGEPhCiYoIMqsW1wOcZ4ekRI4hLWdXCX3GPposSKLur3aMolvpTKpCUjhAHqcKoSaiu+lrKnwNqrzsvrpA6SHE1mdWifg0ABLygb9SOVGg4eKMycDC0KiTxVq6SnbExBhnXoohgKebszPMbvZpbxpK+nmosCuG94rJSveZDIsNCZ/xtGB5xmh1sMUpKnbBegJTTmu6aVihFUckMfHjSCXdJ8j0I7hE3A8h4Qv2VMeBG2pAwKUmcf6E1MIoFJ9NOuYkXe8wGrbZG0lRMRPJChZFl6T1hzo6n+OEyp/pwPImXG8icHznAmETDvUmF7rP671/46iLQxw8GZewD0c4EUIlZg8oLd5sMdLOTTArwRnamA9F7L2uq7CAKixYbvZGTSwOGm8MBNenlAbSKVLhFMHTIH6uK3CYANcpM82BqgGpffNs27T4o1uK1MAfYrFG8g7lk3mKK8twdQki+IMBPxbMrRpE8TAWKMW2kHedgV7X+vO0bsAnsPUNsAPcqj4VyR4fbhMpXNKSm5pOGExmprX68xQ9m2vkC+so6IpjfIsvuspUzJ2yVOXMW167eORzoF7wk8LQc1V7Hx7hRXwBc9Sh5u3Zm3/a967dc/4KKuHvGS/o/1SkuxbGxSrkc1HUuVVK7n/WwbUh2yknJro/1ZjVTxin4vHlPPj3u00LEgrEzpbgKaUJ0DXiWGi/ydj8MMYaYGiv/7y3aU1vCKNnn+O9dG02iikA68CcVxKpZfwwtEZeqpeLymLQXIFc+2IKAfo1udwxMZpsdouZa6g48wqAxB0GwqaKIaWtZjKJcjoGLne6gSNgQaW7WsbjtVTQHkmCgiHotyaQVI+UaEJdAQUFVd9+4LaahuCDRVqti0KMTEu9Tc9a52G+igBQRYu+nTw7SomfUjGrV62yk2T33ivEWQ2cJRTkEIpMLd6nbsMUOCVNCiNISn5CmsFiVNmdeteyg/3bHrJMAgKcs3ltS5t+q1CpMCt/aOhUPAxnb4HVTTEyUeZHTVpG/dUj0iSMFN13MRx0IVGjmJJJcfv1vpV/FRZoNFJ05j8zcVFWSm71H8gaUp7gQf0//79UzMMsKerUMBe6ocBCOhDT9+3ZiFyJHECZgl0Y2b8UOviec0SPI8rpvch9SPrz+mVTr/MhsBbhhDYL6jV0dpjiuKDD1BVSQFECa+Magq71GsCKopupgNGABC6WwxMvye9RUbbGibiBJalUhnQASqy5PXiXfYTpRgdEKsfIEAlcZJfdEyNkIpIdUr7MYqZDZkoviENDml3qFfXEJjjbNpHb5U2ujYe1RfFubJ+g7z6hGPnMlsB+pNxJv0z2ZPro0Moo0LwSID2PF3/BFVOwZ2FMHnXHjNVZgRgZx8DjJBeO6DGglPn3EY2+xS64OqVy1h3APSMHQv0VegDhnbwDgd6q50mPO8VfO00rzcDQBi07MspJ95krfRp6IYP3caF/t//PoKLdAmsv2DDR0vHT+grk1Q3EmKVSD+fmvJBIE5BK6G9+E7rFvHX5U0DgKw0G/oWjT6JIN1J6vFpcrpPKaFuhB/Gtn0uaNCQUe95++7iXZIfFPZTvq0BIOkQBy4VC9rUeVForEGzVDQM2vSneDQ5AF7l4rqu7p/NdSVl/K6VoYKMVpeQg/DUlZ8uACAVt61iXoZHqWJdyr8sFMqi098qkwRUG+p1hgKnDQha03AqPQNQ2so/ZAoMDDo4VxPl32p1Og/oyjerWgNB5V1wjB2HhlZMgYbgVKyQ1fUzr01gPgnDnHmcoRJZRCI9Xj0jc0yA06KfudBHAN9vb2FAKIvwZezRvHAI/wfNapgSVEtSV/33B/S/dPEVXKRLYD12B9i5O8DPhrmpXgGVhNlQ4PTGOHbGvA0im+dI+LT4pxSCgjOXybwAoT0cgJTJ9KnTW9zKiyr9QReW1pU2QBW3c6jnlxZeS3K8zWQ8HFCPkIBkD7YOFccWKyouDAEQpVQF91nv+V0gpACONVq1QW8A4tlX/4cMaFMJyn7Rfl3O4UjbcKXIvoCoGkmQjodYyt4RIMez6JZvVpA2pP4M2+wpY6kFZI3RW01oPfsThFlNuVVX/Yo1auhkMHcwJH9dgXqrFfSUXy/eGGkhJnMKTrozJJfIhe7axLVYcV1CIjfLWe1RxaZhD5EcwYXsQ9Jihz6DtLJvyROyInijnupxfxP59MZ/3zSMsChHS+RV01VxgHb6P3oVBgg+XqcXgA/Ssggo6raojJCSSQ2wvHtdB5AOL9WL4fByycm8DIib1Mk2kT2Hi0eVcSUDdLsHC5zTDDbgoWAETVKGHMgSLjLTBgAMQEAIVQxtX3lGB/akbSimczqm0MX+TFiVfgqi+KAxp/uGNgYOUVyVNUlmmr9ITcUFoDG7Ijv62vYWTiHuQOntuq85Te96gsspQsrH2UJ8V4/5dqspZcrHhZLp+QP7v1wgioNCkr/cHhTFuJpf/As5pDEl7dEPGzSQvzN0lVNhH0BtAZ6jC64yAdQm/vYKduaZ8ihhCOdUf79W3qrr4dnpgCEeCit9a7Kn+qn8Ip1cHFRBc5dFs2pv1f/b0Iui68AFMRrV7ufT/+Jl9uE+BN+HB5LhKekbPuQ/eW/1PXg9SRSURHLa5t5cbKTnVQLl+VkLYmdIYO4UGHXJ9Me1LgWss2gCB2k8frZrQJuGnq0VcIqlSqW5UH5TfnhZ4so/YUTaKcTNwc32oxMu30yuIS2+CEC2qzRS4Czba2xI8qoP9dn7OdmnfHqYr/xdT/dkexjC2+jGxVhYMxQPJeWatTYsO3LkIdjQO5Gpfp370HkxBLIZH31887iep+R38Jrj3vjggycqG4YuZ8mbqNMe4iSwhCay+t6fLhjaOxSB/DGzNGNuBZQb+S26MWX1CFNIqErv30SeUpZqFmJx6taFcObngUs/+w9eh/77Oi73f37y499rvwoPpAc91qMRH4hcy1ZUzbIqlE4vBjLXGFuv6mQV1gooXPNYtlvbtCDXgDYtF0DRFl0s1JnfOihxxOllQTxNCqt4dl4UQIvn/lGdntKARA8RXKzFIBS/FGSs9O4kf8umzs8LpTFbhEmBR3uuQHSCgK1CljR50qEAV3sLgbbly0YLXgBeW1ZuS+yuPQop5V11VhSqbQLHNYgQvO0ip3McqPN73duTAgSp0hqYIulNEM58cY+gIBiqe3WvyfX2PcMwLJPXtX09Aq9B5KIH578iY6ILbcHMZTYjfYhbcIyjC1m/8sh9LC4L7fv34wAbgqqMS7ZddKfjQEL0/WTpMXvEi6132UP/kxdyQA+84ZHOTkr/DXOWsf/3ITwlPRVYv8Lx4XtNrwnjzuk9Y6A+ZEOVJKbsQxABFDwPZnZltHPwXH6XloLwznDB6eIP+gU0TZQdIoTeFHsIplltVWGMxhpuVN+yaAioTFl4/ZCVnGJ4KkxtNSnRZ7m2LWcqlgBzTXFOIarDbwCFz+mlJp+saPMHuJh0MI8X0HUv07IUW/Pku/BKPAMkgHQKcsiiQWP94km3XRHeva/kJ/OmV9d1pZ6k2s5n/bU/4qmcP1dgd23/qMPkhC0pz37nSnyUY9xs4bnwQ99Oaogtiifv+Kqi1CFrvUcxFOofNPpEWNPZYT85cGcIJO41Ixjtp76I08A61FnYvcV2Atl2dkiNBkGx9SKYKPLKOg01BjXjQI67Inw+cDNBWBNlS4xFcPt4E+sreEp6KrDui1jYtxMIUHoBnGs/eOXoNyHPy8r7Rf2GRviR7RDKaC1O6sm9rtJhNjq9Rg5aAirQB5ipF2sCwAEzyejJUtYnIEc9g4shKSXO6dkASVXc5i3yJXOD6uJxGYoSqJIuE6VqAiecOMGYSjjUIwdYe108skIjpKczqGy/eN9RhgneBD29lKRC7qGArDpUwKPAVo+PCg+i/dwLKv1QbDuM0H5RN/nX4GJZT8l/z79c3EtPbMQwlTX51BKge7IVENvCEMdbPUABQj3vgNmPLFajRyPYDljxVll2jnokLmp83Yb+b6jDrx100at+L31Vmg09LHLjAS5eseqB6w3k2M9EVpPfyJl0OTgDAVQOoEMz9V/6KnlfeWjRiumpwLqnw2sFXoN4qalU1ScbrXN4uLi1wIQAUN2Lp6fEk7GWf06dzzYX0DRbVDMz60UT/y2tW5VwycsFrhKYfvxZAioHcigxjXnXCpoN4WUIDwGpSFetljCCidq40GAPiYVW4zJWkk89+1CK9gho6GDvT9G4bggfG+JVa1yned2MJU0zL3o7zW8yDKUMpc7ZAUbZDudGWqKiNlyi0Km0QJ9CMzu9HanA2K4ietSjzkBLDdzWtjP/3t4m8pZhow4gmTcVts9S2i4V67SYGnUA9UjvrUDvREzoI9i5iq76AJP8QQXxUR43tZYfx5rLnCe3HnDctos61Iik/nuWL/3XejEA+szyQXye9HmB9fBacYDrIRzkn0MYVozp+C+epm6hCoY24GIpm2A6qox66WGo8Bd7q/2+hUUqSpprOp7Ca6pkUlrbMqvVRIIPqpxJa6VDXgB+UtfyKVLxWoqdPO+NoPco6zKNF4WwxgflkBqMocQLGAvA7uDIRxFDAWwxHgEYfgkRIymvlUudFBq968pEKSFNizFIfnuXBbv4lmTIjKgNZhB2ggW63HqfvCfQbKWQOU6bymDVm2MmQJ06RiIUXJNu8cpctCDG4+RLgWjjZRhMa3UywyZ1V96aonviAO8XB6pPxTphmBrJ1CWWKWPRMWWrQRZH6MiyJTyeZW834ZtnO03/0+CK56xGeAgdPfyPfj5v9WgfryN9xfl0wWuiVAfJ8lkkqKIhb3RjZSDoVqmKn5VhCa9MBLy3pYMK9AOKHXog7woCLL9NuEnm4ikeZwEXdyrUtM0lfwNO2MXqZ9zxfg6BNBX3zyvZBmlkvgUUHXq0okJsZfXqb36qkijPxhQ08oioJu0zXwquodV3BZZL2eBVejTJVSStCQo65Wd/rNo+Lk1jkupIvu/82vJ7GjzloUnsDcA8ZMUujMQxhd88uBFyKjTmmC91AT5mSHWH5WVc87FNoC12MkyBNfmYBSH7ZuPgICA91oEDy0IuU74TS/qsgHgOWBqds0bSsPWZn0loDVhAXR9kSUfnyMvHeJ8Ugck+0qYMudL/6OEvfB3e6tnk60j0WkUWTmEXOF0E1sqzRTCexDmt/BTBPW29Fgpx1BnFRZhkMUIVnYxOIXEsHhrQrONDTyu11qMDVOk0wgrwVeUK2myLGWxca8nHNy9FCoFkI+XZBBEBBhBe+XXVYoiY3ZtQsV8aonEFYPGWeqx45EWNYNKJK6CTNpnLpW+j9JQha9N+h3bHhmepHkteF37ysVW+f2ny8GAzp58QL24rKPH4nQJEOYv9sLWQZb3y7BBW4CDwmOheeMc8eMPyAA6pmUDWqj/dmvlUXHKZdNLAPOEGfKvxt1tnCnmxbS2GX94uPy0YhAIzK4o1zJPSE3nNRP9xof+Zeav6G43D6HBccpyUD+etj37sdXire3pdwLqn8Fo/i5re6yBkkDpRRacXhFZXnkUeDpF1hqAmyu3ABayqyIGs32F9zXIQ0AC6Q5ZOsZvXBhlnoIGJMRetbXoxaHRERwVroi3pD9trQpf99yonxFMPPT2ZqL8aSm8nf6sXqkIzFE1TVu2Sn2Dknvw77sliRFZnFbJIZrKfPAxZCHdpF9lHz/60l+3NdBjXaj85bGgY3uTHy1ulx5S7OhALUWII09tMYCz+tD7neIwFp8zsAb4uOkIm124Yjk+hR/BNZj1Zd/Kfj7s6ctrcKrQ0zMlv7zqQXvK2QQXvkPXbmD7LgxJnxVsYAkjfkCgA5VPOKoIWblELY5ZalzojHrR6buM7H1rwNGRo5dSDbofSJL86Cu3ps9vr9FaPfrzejOG1fhfBLjqRahW7BTyFG9RssejRsfxkXcV6Hh+Yh6LwZYMj+fxFsBNv5dxZEPUCUG9UBbKd8RmFE5/0mWlwqlkAcyoksHh4wABzT8FrgOedZu2XCmQCJetNoDLBDRKmICzTWQzjUw0lcLTrklx4THDWmG5WRPpSr0OEg1fnd5S3IfSUTMSHAF0xZexTFD4RHHWhTM/b4HvkybDcjW22tqsgSkMN4WA+D5+WQuoSYxEA2viq4LYJDz1ryb6kQRTHxXDFO5azakS+51kHvReN1pQBQABP86gR8TqgJmjwPE6R9KL6RI9w0iy8rXh0nyHoSWWk39OJs6YHfkPXf7YBlrek5WpXTOn/kL37x3d9/HV6q3t63cC6p9gh8CrmPlYH5AjATO7A3Ovq9SAARZV1HDsClr2xKMCTVD9rIF0EIKhq+dNTK4nEOi1n4f4+n2pLFJKenom4srjSQyEXryBlJIXVU4gU8EHaqMNUXBtKVL0EUFOiNlVyVLnm7QhqS34diAYYAGyOhwIRqry1e7aOreQtz8Wrj0sJQUooj1FA7JkzsYZjfBprYHXRPcexNRmARErSoN1u0Kl/FpN6uf1OD7xOLE7FRRqgZhg4E2okusgAxBiR0C1eExP34vSrY5rOJ5wQssmHCtLwDnlPWpvwJHNya5kaeOqGkHTKQIBfeoMUaa+zWbMp9e6t0yKpDpHRDf0yEN6k9byUL1ZEEUiap0B7H9tXf/BP28t4A+kNAetxOIvjg5bQcoKkKqIhXfliDERZkKDaJufBnKqqg96EEObvJ8Fb2xJEKFDYyUqywsgxPTVaM1ynfoYpGtCn+JleRVrK9IoA+PAc1UAkL1LYsSzCmfzrjSJk/cxSxlcEsIFnB0U0Q+RgaEJ5kvwVGstLdllAQzcqmlQR0pOo0fOlAJVjeEHJMJmiz3sYspRG2Xq2ypFAjZugNKctIntt1kJex7T0vGaKqbgkr5EqoDb42yks+c3ROV7vHbJJ79pDNm/cDhU0iaFNAhLwVIM8//QM05Q+lsvfpH9rdNG41Q6D6muTedX/1A3lzdB/WJ+hcIiMRizkyi/A4VL/GZ58AyGALI83kX7ty/6Je8MvORYQOInZhnA0JPv8BHiFAjBKt2wgtKOspzQzDxzpDVJpTVQqWspHBK211ujQ7LhQYgIn6arsVZMpJK788VFlNwZAP6ug1Vx1DIBZeSm0EeAG3xx2WSZ5wHxmZVSv2jaJy2F0zr2UpdiT/dXpWtYtfKVBb/tltb+N1lPZbHRp8RClDhpMVzmTV023MFJqtoCt2agNpyfLxR0FUdP8Z+7mhtjViHqXNUOXa9Iy651l1EuEzF5StkLjjocgwsvVjf4maynKA1tG5Ey3C47vbd+u+uJAHnbNMbQAzorppoMyjcUU/p3+n/v5izGvvu7/fuqHvte+Dm8wvSGPlekfAz6weE38EkxMy77/f0Of3klaLAYtVa+/eXaoKXkL4KtVmwsG4oFSATxQ0Tsh0f6FALJfkU2fdGndCU/gaJpeWxZ1NI+K/3gPjGieZeBvHQE6/RAPTyDR/WFQJb/DUOpZnSdRMXbpXlTxME8NVPMw4uBv5XdgjGMbs2hPRKd4gTZC6cmcH+GpmCyqAM2zR9JW/a6xRwNyAjXl2aS9/jCIvIaEcujC5fRmqapav8W0fY1jss/pTZup2Mk4eGsnyWry68kL3blCnThyMVShoGrisSY2c7fBGf9sdZBmF/0X2nQsz8pEpjilx/l5GknKWxhMvvGB8ep4rJYHIjX953g4Ok/DQ3bhU5OBTDIm9wLvx5tIbwpY7yGBV+89ehmecZFT/2itBESPjj/JPApkBXAoSxT3JgSYTE2Ou8m8oehUwua9egduGbQC/65k6YFAhDaVCNGvAiXWbXmv6ErQku650Awpn4IMIUjQ1Vs2VUxV3kLtijupqehTKhNv8bibhnEonGkN1UzuHzUMhfJ+YLLww9kOadA2FWNEDBRz2lg0wBS+JyA7Wp/ZBwVTV+5RIGTAlA7lR5NZfhPZh0rzSXMBMA6ASKHRao7V+AEy7lMtSPDZqsRJW/iEhvMmDksuvnkJleiJxfjldqjjNKkN3TCWXvhW5xhUHNqqbcoDaXOgP36MEzQ5/gnOJwjnzgoTI07emHBejfAt+rV5HUMoxig7sIA/2WH44BtZsNL0poB1T7H96tWDEN0krLsECmAN41HY49HVAOIj34buhQ1FoKkJa3zKvYs8epPNXKSAhApQygahxUwEn20NweyK0zEP6IrWH90TEIrGzACbAqqet7wg7cFFO+0320BfQKjFCYEWkip9Tb0KIvXxPe2tXklsY1kqpY+neBwr30TZThIEnCYosDHluswCdATaLEP6bTY22gmvPQC0Fg2FlqzYpGzR6+qd0ftxkSEfit54EHx44r3/piwzyQwxQNpHhGyFt0752gbQQ9cfPOWwQb/MAJRHrS251vohZ7tmb9KztqRvNfAa4gAHpIzEwQNDOUN0ZMozPWXXe2/DO6Ue5JsgmiOBjgmq/3d4evXjb3DBStObBtZ9IcsiJOBNf07ANMWm/jRVfIGhLGDKI0qX8rE+0A8OhTd0xUBZTkibFq2c+a7ARZTEhmJaCeKlnh95CEBZM4sWgWawpQatpCvyARjy+hj2q/G3qx7tTcf/AFil165qCKWsMr3/zLvUE/WngRKjIRUXX9qYSWglQO2qbw2ZjaLvQqe1/D73uAr/tEo9SIR0u7VG05v2sjqdrORDyOWTWqBhr33K0D6u9ODpQY34JMYM6KxQGtdVf1BHkBZueZIwQNYFSMooh35tUc7Fq/Op1MGrG3keN8OzTp8vVo/8NqV+y3vVLepNGRcP3h/T+5vof3bTW/ivFkRNxvkUkDrnFRIK8ezDov+qQF9h+FfxBaQ3Dax7+rGX7ZU7MR/k74O4eoDgVKjoRCIASmHEe7QAtj4Y3ixntzjIewlNtNZSA0TYm7EnyRQ4EaL5FNl8qioVRazvQTuD+ZSf9F5dwFFLoFHaUliN4mESs+bVrgZDSMfp9Iy4o6mCRYHGN6EBMmRCi9qwEmfvxCyZulGs+oQ/ep6mU/krb6l1ja0P2o67t5ItGo/kPA2AemHqKatcImhQvrbElXZ6i6HUMNQbMiJt5Imf54bK9DmZugO0W6rI2mh4YtGO+2ik6UfUeXyK0eFugTwUugA9j68MApq0OfugPGraifSan2x0MJMfpTjK5/Mieadb9upZ/q6/Tf9lZuWtDuEpBDuk/5SLE4SR/TpCAB97kyGA7BvegvRrv8M/ca/oJT6iavrcv+x1TbW4L2bZJiBXVrqudTzJlNMr10sCAjL1z6mCX6/4CnCVsfK2UnpcmYOlScotBFMA1k5Ae6pAnSAjQKD0hxgC4pEw//HTa/pbAooSIrXQU9AVXKRri0MpoJS9EBDqT9dAgCGmfuZrffozPdq6mHJkgnA2SFJJUo87vcB1HM+y+i+KYPLrgTHUmo4stzpP9Dy0pt5GcLmDQwC832L/0zKeGXhq/k13I8hY8qCcSWr2Q7UrPm7DaDe+i35A5QpdVrzkrfKTR2XEoDIJLSPjk8Mbx4amhWG7/RFZ6U0ApNfiaRoVX3cI7Cl2BQBdN179oT9jX40vMH1BHivTE8MH7tS+xpf6eU3dC2BvyfTzcRPaoRLpYpZ3hPWaLugG/fN+MQ9RW04LCKqDXP7W6agPIcp0DNCG6+QyxbCMM9IrUcWv+rIkmnIBSWsBe4Fg8oqSZwIB4Uan12Wl9se/8qhjcmmCqpCnM4eU6xiHumE5jUYotm7P8dI/4YWtPLn6bTI9Fg/brcPZnFlYZKxHUhsXoNv3+jGGVp1knyB0u46hyokqq53TYiuQXRYwpQ4y5/i21VS6zSiqcJXaaeGReLHhvR0+NBl7NONFe8jqkfdWsn9lzMF+ILlbHMz+mzitMWMU3le8v/aEdvJC34Zzk1vZSJtHuEJlo+l9GUPK+qL/IczJR+szuZ0vr94F45vwFqS3BFj/+sv26p3CDyCevUqC9QGAM5bWwOtgFqCPR1IFhO95xawUvQMhYM1KegMg1RviiX6KNKEF39jY4rJJOqZS0dMBKtqFczApxHKPBiCEkzKqSiIQKlDhcg8l3F4kZghAFgISo1uXHNOjGb0crUVfokFOla2dRkSQi3KhbHSfG8ut/9YvCp7tWyjw+cu70iRPSqgEWrJsgoRP0PP+09AAtBZGUfIlYAmJc7ZHejEUHRzrW3EkB0gadh/9RcVos2NeccKjwa1mMeHBlTwJYFG+bzZW2IMCxk9J3hWv6O1Rn1H7WE/vkcbCj2m2Gk7XtyIIPXPPrtFgZr4YNp7XYHi6/u/fY8tWvQ5qaPO9rpc//gWGALIuvEXpR1+2j98p/ggZyFhrdIoKTmt2JBOGTcsSnCPwNXG8YDLgC1gohpkA11lFKSWBrDE6BS9+Viv1i3R73ck2VACdIIHWFkbdaTDEg5hT7raohepjf4KLMSspI7wrmqSdUGDCigJJ9knKKhh2JXA5Hb/Grwyg9tdl5wIKiKti1NY9yBA3dcACWDlbqdtwMS3ObzVtTPqTkKys6mg/hX8e4kIcp5cnbxBQr7Jgk0bIs+I8xYvI4dIJL15yjNWynn3rB7Ar6GU33IVPcki19TbpCCVYC6/8Qr5Z5qiG4539j+4PPT8OybbbskumgHrrTdDIcPvl1g15AYaLTgRvcruZNyNFnfzQX/pe+z68RcnwFqdvvMdb74S/DyO24p5TWnX5mxIDApIjNDAzapmmB2XJ2U7brxgVad2UGQ4IWrkkVvJXzAlC1hrHjbwNzCCECUD5LF/tLP1FNczp/0pnp6IlU++k1LyVF8BtBsyUe70PKsakr+rSn54Kak+hVh8brgpFZtIYjPGcuGjL1z52OQBjzIVOUIntWgyvrjc6zw5JnV5gRamXaawT8FhG6Qygq+LnNYI1Jv+TL1bx62xTT/9HxonXt6DSm7yVcaOMRFMeZ86m12nWADvzsu6F36hdCaQrAVNkNM+cPetuM55NPXVc6P9JberVP/i549un73HVN/x01dPSW+axMr1oeL/tL9tSEAEqJsNBLItBH/ZUkb6BeoLF8ivApXssKGVS4bK0XWWqCAqlzZKXlfVW2wLZUNrT0WB/xHJuVSa9HAHVsz3thwp/cMmU7rK01zCvBNODnZ7yAFUFEbbho47qZV3Plg2rUoeSuZLT6Vjy5q/ejo5DneJfXkgD3ajOB2eKu7Wo6lRq4Uy2GQN0jNctpacoFBlqsyegOc0tbU9ylqNT4YqrW0zBUfHXHCprq9oK1BVDXmX2yK74jCBOnh475GyL33u7PFNWvP2ccYpBpT7VO8FMPHTSfWuzzJR5Jw8gO0bUoXBRzug3d1ewPT4AkM6CV1HpMfX1+MWnF3esujf8pp6ueloyvA3ppZf9PU8cP37/+q68WCLXRRPifSCnhs26i8Ur8JleipX3JoOU9482DPqO8kJF7ybNhK60tCWoBLTmfVz2rlq/BhJk+82bYH8lu9acfRv91aobSOw/bjaalvFQzzBpqcZ9KWe9PC7Gg7kS+AwtNJDVyxwixwUob134O723FUVxORug0VCsMSkjPO1Vlsz1RRNrvF+HvPgxY3mLzI5yubPAZX/vpZJWw+khHj/KY4OtMx59fJn16so99eQcDsuXFKaOMhzgK49rl4OME6TjKt/RhVZ386apX7eob5PXiW9t4fkox5cRmokN6rLQZmph2F578g/xdR97i+Kqmt5yj3VP8cjr+90lhnSdLE3eCqp+AUDUTJN7Hvcc1VQH7wCVDBO41FcA4RgA1QYa0H2KuPSodd05K0mAyWte/XG/UDAvYDLhEz0Xq+ZauQmd/J0b8asB5FNWEIj0ULKyKlKPjmM3Mg3AqGBUTqdZ8eyQqefQ6kcKBAHXlb8XMlFPOqGDpUmtLhRnnhXkF4y0jtsFqgNsMCW8+ME85i75g6+pH9I6zyCFiknJa5N1ka/zm2e/9ajGuIDW/ARfAo+NWWWMF0MNx6OrW38Nd8oTr21xXCFqLtqAVvSugWzwJI3w0a7IHY/9E5lmO8csQOo3qZTyl6+3Ibje63j/2wGqe3pbgHVPP7Y/PHDD77UJPfrFUXxXAYEIdVdi6FREgIaGtAG1lGvnR6KDaHoeGIBsaKCqClkLPhzfBgFJo15Jr0mts4KqFaAk8ljlb9aEeRqvUIIs/x5in541QVuEW6dmwdOpCO4TPIq2AgFR5VSMooRt1eIciY+R9g6mMpTZH77AUR+XbjMO9EKWfO106M4V2GhL5ccg4MP7VotMS5Nef3QQUjaqkGv9Ks+QNpI9BTRWJANqrA7gIGae4E+ASqMAFx6zcRK0QTWmVtWVpHBo9k8+EBFyaZDHghXEAejZEwmcqU9nP1RGVW95P6sln3jWwUHTrb/p4WZt/MxU/8l/w7f9wIftFbxN6W0D1j396Mv20XtHPhQ/m2I6KnZIpqayDRUWrze9IbnnPUum9migeAfeMw1h1VscoBLQfNwOhcQHObc+7bKhanWcni+zpKaMCF1RT2zkTcAcFXn7dKh3qPsXVfirQRJqxdOshx4mgdyyHzozJy98GJlGY4K3CDmn1WYLmC59l3zzselpeOaWqnMIBm3Lq17UyKDJjSq53i9QHDW5jKcJP+Va7YiQHQRJp6N5dxRy6sn+c5OZmnV6XY2bzAQaMG8rP9IYTBEkKAJyngUNmwkvGpukP405Zx/yLQHMo4DO/laFTtA3E1mtsU06lbce/SSI709W/cB32kfwNqa3FVj39GMfspf9PCiWyof4LAfA2jVVj4O1DQM4YsVgE8vdyoHgSqFCBdwnkMrAL9+kQDwZ3pU0hbkH3VWRqq4AurDefZ8jMGMcPr0V4YEN1yzlTe+IcpeQYjFySSNBhfxlEfEmcnsLvBQiFUPGubUtzannbg71KH21OrxTBscVmM+xTy8GKGW71ZhnF+KLPgXV6EtPygEtZ1iAO/lCoEcfQ3JMJgQiT0hDVmMTQHj5Xi8vQuwGPXzbjByCeI23AO54mEDku2YNKD08B7bknPU4oLOYBCoD1gPtve84SNI9dSfPGuD4jeM9m17SrljV05yXELR2/m2WC36kcak1jA/9uQ/bB/E2J8MXKX3jn/CX7419B1IEmgJeLb6sCjmsn8nUXgakb+fxtQ4HHtratDx9YqkOaF6BGfqiTQmTet+trdYpET5T4Wg6HeAagJ6K6E1RhcJSlN7ri29Rzp4iA0NRyCkFtbmFR3XNpZ1etiuePiYJUzaNipJofyrdwaYOJrxHQJj0JRNLFlp9IhtdNmUsdBwxaNZy4mkd8vHCDf3oxhpRlSf2fRnkRVG8tjHp6pp7LQBln0vY1Kc8rtxMVMD7bJHXaORYwz4lf/Lk+DwKy2O9RYZ3QCX4YYzT7Bb7RLwYspQ2UTqhoL2Xe/nPfdfbD6ps74uWfv0dXO+9/g4dUAGUNYlQDCFYBG/rK4LMY+k3oAnAg6kpWF0jMM4BrzAGavENXWmzpgb2l7BY1wTQS3jFIxQlKcXGWKWm1caDhotgN+mqb7Vi3IzM7KRyRJQtYcrEwwEWwG7tJvAI6KHTMDm4EnVhtPBgoVam+ivXrvI9APDNoLoan5OABlTRryZrKk+Qvt/mGwusGxD1lOW8DqW6hiz4OHVCdVL7Mk+rOvasbpjnHaRxkTFrOwGWJIZiqoQlsbj0ODD0P9/rZQ02zn7fDk/1ZXyR0tseCtD0I/ewgMX7Y3TqKwLM1NVjAqHz/7Po1oHngIMJ2Al6F6DqrjAKFbJjvKPYlRJZDngAU06lUDM3sxE/tCE0bFWETL0HCqtimrUIcFPm05Pg6rLBV6LR9uI2MryRVU8HYZ2mB53zBC9rnl3AM2mDqsTsO5p3o6DiWA2Wfg6iRl0EkahuKeTtb3nzAMMPo5W2vUiaJg60Zkw8Rde+bhU3NgniWOELso1BgwEaijiLOfj67KV/VotMMAyjYw1Uj3MZboY6rWu0zT64LyPZZJp6me1wai6dSJmN8hJaSvJnX1T/6QF71W08TyHG5osKqnv6ogLrnnZwxXaC6wA0y39qsPsjh5CYpAheG5i4QKGg95SgE2WGl3CminkWUHta0wk+qYgIuvKPuihtpMciwqKCjAJBUfGuWEMesw6C6gBjQK6poaFVB8bUtSNOm55xGKpzDSAcnY/nT08FXm2JoTiI4bmJIpL3tDkXilx8bbVVK4eRGdc4bgCaOxUg16+N31Fe+xHkDzREghf5Y9OA0ztVmfLqvzV9QJOjIw83yydIirAmUJXMhxJJ7+u76xQb5U2fTgVl1ZvuaPyzcx4pIzqTPPLkoUbdiGUMVsY+H4qR/Iv+74mLUyz7wgsJJR+8T/9fxhc5GZ5R+nV/3L/t3vh3cqxxMvYYhE1iQUrgnJ7J9ArwtS8ybXBRzONKiw2WYKcH8pSpYMvb2qIQrgKm5wSoELLfTXF9/E4F9BbLrOkmCjCDH/mEjPXFgcJ12YDONkKBlsUHTFzpCNL4c9BJIPMGLMKiyGpSH4MGvZ1sSRRJj3hbaBqK3rzIVq9Oo3tY4vqRWF+ZcRWuiOtzvKruPv3PPt0uxl83vFuPw0MMs6vxid5BYqnJO5PYuHQj61NQo/G9Afr03XlvvACRstN0tnpH41VrEn6hU5GbIYbbbeiF6OTQA96vRTZWfsMH7p7qR/EM0jMD1j299O3+0mb4wfvXd5l4LfZA7ImW3S4UUPVKPFUFyOskBfmMtgJhy9UBjfUbaVChMX12G1JOBMKwxj+bd8O2uzCWUHrv61HcW9lGvwJb4zcqjuYah0MHjjQatIYBiMt4kB+osVKQWbTKl1hdRzYURct5nANgbS2SdE9D2mjDgHXvfSGLL0FdSjwA5MDa7bxm/V4ZE8P69NlFRc1A8asHUGpeDrTKvMPbc/k6WxhGmVULyJ8LUbeazUBl7WpcOSAeT0uJnOy3Nj3HVmYaUzaHU9Cw//7Pa/cFtPd/7Hvevn2qny8ZnnHaH3+9M/ATd6a9pylFDNIQrunM6aJIV+Qtfx8fzXugagVgCcDZgl5dCFX8SwHQF1+BFWzNxuN0kaYAQj23odxNwWzsbiA9vYHiz0Vb7suqPvQ6TYMC9VMMVdd3l3+pCF5xNNK5eNQXBmQAwMQKqBcGNITyS6ArGptCopfTPj8041C6YfYgD2yMXeOjgiDYT6AZzpmGYVJi/AY8dN5u63kC6v53E6MV7QofG7BGH0y92wy90TkJUDTJq3Xsv/fdEHyBIBzLlCaNdvGudjvgnP7fhhN2b/sz90jDN33sw2/PE1WvNxkeQdrBdftH+KH716+FKPi0ci0N+NqF2gV6EghR4MqiWp0Kty0yhAS6BqzeKVgAteqkIGT4gEKIstxjni31z+kOgDG11PxPTUqj96lgToUfUOLyUmeFgw9Cj1/QeraNPq3Xu9J+X11WDR9tHJgwp8kyZgvJD4CUV5vKm8aDBD67XvkebaiBXAwcywExuylu2FW9o1wC/E2P/eOugTEiaZgElMTIl7d+wfvAuT1U0Wpt0/Gd16QpOjBmFk2Nh86xoZKZTneeuAVcYkHy8N7mJ3/uBbz/4x+21/CM06MAVqZf/+3+8p1B3zEYvljMkI281QRRlFaUODLkILRQQTTVDr7IElhCAwTu7t2uwgTxvbr3hWxz9SCHZ2RYt+5gpKEkrBoD1DLeqTwRDww6VQcuAOYClEZP1bPAsBnZbQl3JJhMHj0FuJMncNj0/hrhjmU2YAZ9sOAhGZu9u5x5RDVTxpZf3o+yW2ZdcMyZRoIJ6Z9g2yrx4uCcjZhjyRo8hADqPPSm2YDdm96EDvVQN463y0iyPZHhK8MJiP5Igw+NRepEyem5o+Is85H/7rvs2/BI0hd9V8DT0o/8yWM71gfunHr1uOCyUolkth4unZ4k8/mIg6LE1anNkpdeatzpPhEHTeohMC9CEa+CmHVA6qYAp1KHkLWYKxqxJTyR4VL3jz5YlTdVbBugalWLKw1UCSR961Nka98KIB367L+BBiwzdDAX2k0BIWhOBVTMtAeIyDE0UUoBeC3k1R9nA1K3x13nGKWhUt4ws5fBU9ql/NyCx2q1Dx3Kohsh05WB32scT1l3MvEkV8oQ3GockMfltSP82D/tb4CoC+CZ9nkHWjlshYpCED3jtPFm1uR98X2Rc/ntYRCP72L0OTp5pGL08bV/dMP7HxOo7snwCNMRd/3/8Ik7de/R6w3IJBZnF1POy4qHtRfP6UGv8MrDo7XMsms9Si6vH9WlcnnW1WKqw4se5I9rVxCuWb2DKrB4kPYUHmXZVN+JbKQ3yoHjgYvZAkZZXI+fNyy+CB3IGLY60OOKGfMsw6GAyAqvaZTrw+NtjeLqp8hWk7UNfWU/pQOXuxI4WJlN6+VYKBgbMNsKj7ItSuoqv7annr+4uI02Q/XUy2Acf7vnmotlU7KG/LCNg56Sd5e+tJcx5vXIxD7ev34SL+ADzzqeepUeJbAyvfTtx5NafwIqhzJNEZCDgAgHvZTB2mCqEmZdKMVVH6LHpChU28WUfNaEpa2kU9DtElAxlNXwVFCdit2814spY57ZaXh4YQtIJdbUwCadCB/KGfwTQDirf2BcSPe8dJUMi8fjs6865YQv4Awpfw2gQAOtmfcy+cO/mgxcADUmb5Qu+R4AlmePHteuZzEVFvCej7zhdN7VsO1l6iV+S/1JBFbZMDFwKrCcFUoI5sRGWwwcyTty7UD9wg02ZU1M5Yc+9gz2p77eZHjk6aU/evdeXzi9Vwom1AMREVahjbwAumek4DpAsNchHljUZwQlWMXpq2DlFzCz4QEmHaNMSxQuTOWq/kBxHkNQox9LTEobSGNxVeEamrikU/qA2YbMCOyiTP4bgzVX+9WPRx+J80p6g2vNy2OkdhFbdlzERoX24MNlX7TNCw+y5XPSW3QhTXb3vhuXJ+A00OsNuJC8JJ1hGVaAshGvnfLTDL6fK/58lFXbvMlYEfyPn1s3JLnAZv0e/xG9ZRHnQT3hgb96//2BZ7mV6vUkwzskHd6rH4e49CmRpCHkDTJHCOC8puV6zMlvI3/z+qRJBHiqTmheuV5fdWrkDyouQaL/VmWzRXBTZa3Kzqlm0m5RHy4AYwIdp2eQRY4EZ7sugw6HJoZRwxPQ+xf0IQEI2WYZqacBviy2ZF1SH4pOYILh7D9SPtYZR8/fFlekXse1kUkZyvdP9X4V/5SbvDNqtFlzyMmlMUBO3xs4u3iVyW87H2LYhu40I2lF4w6g+2EszKeHsSR1tvRJPXV+Ufn+4M+/iA8/hlX/z5cM76C0x16xb8tyvFe1IacLATR6S75zMCFK0r3eJn1NshdwsD6duwKU6RV4VvCA53D83DodCaoNgjpQTkAC0DeWFwBfFhEluT7ZCbhGobigXpnSodNbIaUvyqCDjoxhW3RBN37eaGB1E8oHyXHraWDc+i2yMSGsWvLL60HQqF6ntT6JFyAefQ0Gpryld2l1+BDlJA2xzAJsyNM25N4MetCP0pPghpvcE3OiMwd1Igy1tZDysfPKuHVqOjOCqJPe+7VX8OLjjKU+lAzvwPTSH/NvvVP+Hfev7/ZhaUc8hv/a9HJ9DCDKc+y66RdxR51aFuIsnk/V3Dyb9RoSKGoaCxHqor+V1TbcofHgNexxZWSAHqO7Bqa8S/oIvg1BUntQ8T1pB6W0FRrhGKwetRonBJ1tFb7RvZbCFUC020+PqaYHJ8Yg6b5VvFBpewhhj68JkEVWl7cLEJx1mq18IbxfAfHVrG5PXDDKhxKqvg525UWvi1jo7Qd9KZeuZTUnuhxoNWyXnvH9/k/ev37oY9/9bB5L/UKS4R2cIjzwB01fWrin6QWqpe1TvIfAOGuZCtwE8kqxAgAgHoADy967RumFgCltk2bmuwSKqza0mKPv5TT00MgKrH0aXQDbaJG2lqfcLoXMpcD86isWvh5BDYW+vA4Moxh89YsxZh8vePFge+Uy9rBB5AsbKb8JVtHfpxpv4DKEtYSQphUZNkVCNg/G0yNzPtgifTn5IjolBVLf9vpeuH9uQNOPlLX9/3NWdsriC6inv5A8ee3m+Mg7Zdp/ld7RwLqnfXELL+Dl+5B8y1QERZaUIw8hUmgTb+ooZyO+ulQDPA3sADxtq5FL/qc/eig31avJ8tQCf1ip/MJAEBDskkHQ7WLAoHoxVrhOQi8vGDYsW+FtOnpe1S5eegFQsynwNX967L6GQNI7FMDxdTwfWtzq3tugMTs3QKX1cfaZQAvUe5+uQ01p5Oh1HoY+Hkc92pMp+2whytb2K3kl0q3iu6txv4mobNAnvCq0ZiU76rlGHSc/p6NR/SPwfvb+8V3/7zsYUJne8cDKdADsDd9xH5xvfSB+9fTOKrCKh2FX+KyKNJUfBSrDO8IFGXNRRWlNYLSLLowLCS5S1QrufRpPCLNFea3tYii4U8XnvQL3h6bWaawWhQdmvHqGQXpncdmb2V4Qul678gQFaAC0sWpeorSa+a7kDMDltrLJD+gQ+spzuxiPhwzxnDEl/Yjrt97y1Yxihjgy7opwNIro83JN9TPWOw5jKfBHAC4k3sp6zzZ2EP3wHVA/8k4HVKYvGWBlSoC9f73/fM8QxFXoRdBV/rPMqhiZeSiCNNIFVz6X59G9t9WPzuteVKfk/GW25pulH5z+X01f8VA/gPZseIsx+2i3G6CkxRoUJw2sk2xl22ebgrHWaVqm0lqGCnxhXC5pXQwVRiy3G58sb934EeCuDtJZZOXCO2yAiocNaQtJkS8QQ9/isdHYAsAxLrEvtozM4LU1IvPTQ4gbQLONIyRwW7cZttkV8Fl8iXioM33JAStTAOxLOLdovdtsVbALj+TSQw0hO9KMdTm6J6GgSTBFy96+2wLIwxPsFNc1mwD8gEfIqqL+WgQaAI9Vz7tN6CCLhTK7AIIRv7tKF+ClRuvhss1sFMmNsQ/QeuWJfl5FENqSbsjeVHQPVfsPYL4H7cgpYJwe3CFQwyCUJUJjiBjHZWxSZkuaC+CAFgqzYSj3W8deVNQTYBDePWCcsjWec2CTRhohx2fuN7/vSxFQmb5kgVXTHWRf2kME979v8Wvvbk9dhjoIAcDVJvbmhXlNxx/a0qPe3FzJNcm0bF1KocS1t9jAYvV82zcbmAlISMOXaW7ev6jv+poASzSgxRNsJJ7bZhETeJJHNkwVhoEBNCaOcb1tdZoGUvuqxYLfaiT1m9bXzcsKPmTE+rTbACb9TiBrBgh4aDoPbfk4NDrqj6l9e3Ej0BfHIF4vel0F8oNSPhjwZKvYvAJxyCzH6ZUXgA8+9s39b0X6sgBWpsOLvX/cB/kP3j/fu18THbgCQyrLfEKmNp/HJdP8gApmegletS7Tosi4eJ7irfSnjVagm85F39ReGda4b4fhKw939m8BINTRjUq2PSBgxbaxoqyZBrBmZQlI6nVPMGvo1emVeOISLhF+dTCJ67jo00U8/cGT8lMOruvq+a/DHf2BEMbMH4LmdQyVL0s58kYBmwAJET2Rr6Yjw6js1z55r/OH/9E/ho9+qXqnV+nLClg17SB7F6DfdpeB33pnwvsweRGgQzDqKg8Mzyc9QfGEhg/XAIuPNrZFAVyBll9pMq6A9epuA7w25bvKP8BI8tfVQRs02inec1qriJ9KHU3ZNYmR8dHlfvr/MHYLpvh1bPQqxOATUB8ut4aBJsidN6z9in7F6WeL56kgNHisINxDEGv89vhFmUrkkxjpDANRfoE+XmVNqo+Dd3Py0reE7YtYL9zB9Ak++eJX4KPvpE39b2X6sgVWTQfI7otdht96F5733QVEXxVzJI2RsdyDQm5YhR6wC+XXEot34QWMUO92piuQggh8uhsXdOHK2bmadl4B66AZg09eeaYyt8W0/O2fJ4QyvKiHktf0F9LGXPgC65RxWPe1KpBKXyJvf2/XNd3zlzWAneElFF3A5wkXsXx43dYqKCNym54uLowE+juvgMX5bQZYeXb/77W7/nzyTuAnv9w804fSc2C9SHtM9i5ke6jgfXehee9diN7jw6I3sJGpE8VcgTNA5nqz9YVnxCvWIVunmP06skxOHYXOS6MwU+K5AuR6glLHZwG6uQBDHsV7jRb6so9s/PrEsIAM4HLGACx7TRNMtTwabef4IAt2Y6HAkkyRzFenSvnFWAzPk/wQWcj8F3zK0Z6GyoDFkKYRPr9fvmxxGk0Bdih/rfa71hNQUj5itp+7/71y//mK3fDpv/hlEDN9o+k5sL6OtHu0L9yB9i6M770L4Nfehek9O+BKFvpAlx7gSOV9XQNquyZTwAYEbQoGcMqtv7uX8RBJ3rzHvmLMUvLL0B9r1STtZVttCq+elQAUPaIHvcXiwYxhataHHsqYXh8aVnaDqLFea32u/h3ZNJxDGiUE1GXB1RqdtPO8UQHAhNMHNvln2yoTLKneudllyaST15PfOqNYefbqnc5P3SMZn7nfe+UXvohPfblO799Ieg6sX0B66Y/4e198Ae+6C90eSnjP3Zq/2/Y3zt5DCXfFededu/ujtr/0Lqhf+UD88PIBAxSAzQHysYhjDyhTA+UGQFchCMlj6nXj2qsTBZzhBRcntnlSuDjLIOnE2sj+Gd5R3zEghmB6YWi+HuppJhTfvcCub1FS4OskJVvaPbZUvy/BGBc8fFrIIw2XgrMAP3C9TjUMcvLDgKuzFV47/s5KXr1/vhbXXr3/fQa3+/c7gH78OYC+6fT/A+JdeuomMTbPAAAAAElFTkSuQmCC\"\n />\n </defs>\n </svg>\n);\n\nexport default AllowMicAccess;\n","import {\n forwardRef,\n useEffect,\n useImperativeHandle,\n useRef,\n useState,\n} from \"react\";\n\nimport classNames from \"classnames\";\nimport { noop } from \"neetocist\";\nimport {\n SCREEN_RECORDER_ERROR,\n SCREEN_RECORDER_EVENT,\n SCREEN_RECORDER_STATUS,\n UPLOAD_EVENT,\n UPLOAD_STATUS,\n IS_SAFARI_EXTENSION,\n COUNTDOWN_TIME,\n} from \"neetomediarecorder/constants\";\nimport {\n getMultipartS3Uploader,\n screenRecorder,\n useMultipartS3UploadStatus,\n} from \"neetomediarecorder/core\";\nimport PageLoader from \"neetomolecules/PageLoader\";\nimport { Alert, Button, Callout, Typography } from \"neetoui\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { useCreateRecording } from \"hooks/reactQuery/useRecordingApi\";\nimport { getSupportedMimeType } from \"src/core/screenRecorder/utils\";\n\nimport AbortUpload from \"./AbortUpload\";\nimport Controls from \"./Controls\";\nimport useAudioIsCapturing from \"./hooks/useAudioIsCapturing\";\nimport useHandleErrors from \"./hooks/useHandleErrors\";\nimport useRecorderStatus from \"./hooks/useRecorderStatus\";\nimport Timer from \"./Timer\";\nimport UnSupportedBrowser from \"./UnSupportedBrowser\";\nimport UploadingInProgress from \"./UploadingInProgress\";\nimport UseDesktopAppCallout from \"./UseDesktopAppCallout\";\nimport {\n getDeviceInfo,\n getRecorderTimeLimitInHumanFormat,\n hasRecordingDiscarded,\n} from \"./utils\";\n\nimport AllowMicAccess from \"../commons/AllowMicAccess\";\n\nconst { useRecorderStore, restartRecording, discardRecording } = screenRecorder;\nconst globalProps = window?.globalProps || {};\n\nconst MediaRecorder = (\n {\n onUploadComplete = noop,\n onDiscard = noop,\n appName = globalProps.appName,\n mimeType = getSupportedMimeType(),\n folderId,\n isMicOn = false,\n onAudioNotCapturing = () => {},\n onError = () => {},\n },\n ref\n) => {\n const { t } = useTranslation();\n\n const [isDiscardAlertOpen, setIsDiscardAlertOpen] = useState(false);\n const [isRestartAlertOpen, setIsRestartAlertOpen] = useState(false);\n const [uploadProgress, setUploadProgress] = useState(0);\n const [isRetryUpload, setIsRetryUpload] = useState(false);\n const recordingRef = useRef({});\n\n const { hasAudio, reset } = useAudioIsCapturing({ isMicOn });\n\n useEffect(() => {\n if (hasAudio) return;\n onAudioNotCapturing();\n setTimeout(() => {\n reset();\n }, 1000);\n }, [hasAudio]);\n\n /**\n * @type {React.RefObject<Promise<unknown> | null>}\n */\n const createRecordingPromise = useRef(null);\n\n const {\n status: recorderStatus,\n error,\n countdownTimeLeft,\n showTimeLimitWarning,\n elapsedTime,\n } = useRecorderStore.pick();\n\n const { isStatus: isRecorderStatus } = useRecorderStatus();\n const { isStatus: isUploadStatus, status: uploadStatus } =\n useMultipartS3UploadStatus();\n\n const shouldShowTimeLimitWarning =\n showTimeLimitWarning &&\n isRecorderStatus(\n SCREEN_RECORDER_STATUS.recording,\n SCREEN_RECORDER_STATUS.paused\n );\n\n const {\n mutateAsync: createRecording,\n isPending: isCreatingRecording,\n data: { recording = {} } = {},\n } = useCreateRecording({\n onSuccess: ({ recording, uploadId }) => {\n const multipartS3Uploader = getMultipartS3Uploader();\n multipartS3Uploader.setRecording(recording.id, uploadId);\n multipartS3Uploader.setMimeType(mimeType);\n\n const uploadStatus = multipartS3Uploader.status;\n const recorderStatus = useRecorderStore.getState().status;\n\n if (uploadStatus === UPLOAD_STATUS.uploading || isRetryUpload) {\n setIsRetryUpload(false);\n multipartS3Uploader.completeUpload();\n } else if (hasRecordingDiscarded({ recorderStatus, uploadStatus })) {\n handleDiscardRecording({ forceAbort: true });\n }\n },\n });\n\n useEffect(() => {\n const elapsedTimeInSec = Math.round(elapsedTime / 1000);\n const checkDelay = 7; // we get data every 5 sec, 7 for safety\n // If data is insufficient after n secs, there is some issue with media recorder, discard.\n if (elapsedTimeInSec < checkDelay) return;\n\n if (\n !screenRecorder.hasData() &&\n recorderStatus === SCREEN_RECORDER_STATUS.recording\n ) {\n screenRecorder.setError(SCREEN_RECORDER_ERROR.InsufficientData);\n onError(SCREEN_RECORDER_ERROR.InsufficientData);\n }\n }, [elapsedTime]);\n\n recordingRef.current = recording;\n\n const handleCreateRecording = async () => {\n const payload = { folderId };\n payload.deviceInfo = await getDeviceInfo(mimeType);\n createRecordingPromise.current = createRecording(payload);\n };\n\n const handleUploadComplete = () => onUploadComplete(recordingRef.current?.id);\n\n const handleDiscardRecording = async ({ forceAbort = false } = {}) => {\n const multipartS3Uploader = getMultipartS3Uploader();\n await multipartS3Uploader.abortUpload(forceAbort);\n\n if (multipartS3Uploader.status === UPLOAD_STATUS.aborting) return;\n\n onDiscard();\n };\n\n const handleRestartRecording = () => {\n getMultipartS3Uploader().abortUpload();\n };\n\n const onDiscardAlertClose = () => setIsDiscardAlertOpen(false);\n const onRestartAlertClose = () => setIsRestartAlertOpen(false);\n\n const handleConfirmDiscard = () => {\n discardRecording();\n onDiscardAlertClose();\n };\n\n const handleConfirmRestart = () => {\n restartRecording();\n onRestartAlertClose();\n };\n\n const handleUploadError = () => {\n setUploadProgress(0);\n };\n\n const handleUploadProgress = progress => {\n setUploadProgress(progress);\n };\n\n const handleReUpload = () => {\n const multipartS3Uploader = getMultipartS3Uploader();\n setIsRetryUpload(true);\n setUploadProgress(0);\n multipartS3Uploader.abortUpload();\n\n // Create a new multipartS3Uploader instance to push the blob\n const newMultipartS3Uploader = getMultipartS3Uploader({ initialize: true });\n newMultipartS3Uploader.push(screenRecorder.getWebmMediaBlob());\n\n // Attach callbacks to the new multipartS3Uploader instance\n const uploaderCallbacks = {\n [UPLOAD_EVENT.onComplete]: handleUploadComplete,\n [UPLOAD_EVENT.onError]: handleUploadError,\n [UPLOAD_EVENT.onProgress]: handleUploadProgress,\n [UPLOAD_EVENT.onAbort]: () => {\n Object.keys(uploaderCallbacks).forEach(key => {\n multipartS3Uploader.removeCallback(key, uploaderCallbacks[key]);\n });\n\n multipartS3Uploader.removeCallback(\n UPLOAD_EVENT.onAbort,\n uploaderCallbacks[UPLOAD_EVENT.onAbort]\n );\n },\n };\n\n Object.keys(uploaderCallbacks).forEach(key => {\n newMultipartS3Uploader.addCallback(key, uploaderCallbacks[key]);\n });\n\n handleCreateRecording();\n };\n\n useImperativeHandle(ref, () => ({\n handleDiscardRecording: () => setIsDiscardAlertOpen(true),\n handleRestartRecording: () => setIsRestartAlertOpen(true),\n }));\n\n useHandleErrors({ error, recorderStatus });\n\n useEffect(() => {\n let cleanupFunction = noop;\n\n const handleOnScreenRecorderStart = () => {\n const multipartS3Uploader = getMultipartS3Uploader({ initialize: true });\n\n const recorderCallbacks = {\n [SCREEN_RECORDER_EVENT.onDataAvailable]: multipartS3Uploader.push,\n [SCREEN_RECORDER_EVENT.onStop]: async () => {\n if (createRecordingPromise.current) {\n await createRecordingPromise.current;\n createRecordingPromise.current = null;\n }\n\n multipartS3Uploader.completeUpload();\n },\n [SCREEN_RECORDER_EVENT.onDiscard]: handleDiscardRecording,\n [SCREEN_RECORDER_EVENT.onRestart]: handleRestartRecording,\n };\n\n const uploaderCallbacks = {\n [UPLOAD_EVENT.onComplete]: handleUploadComplete,\n [UPLOAD_EVENT.onError]: handleUploadError,\n [UPLOAD_EVENT.onProgress]: handleUploadProgress,\n };\n\n Object.keys(recorderCallbacks).forEach(key => {\n screenRecorder.addCallback(key, recorderCallbacks[key]);\n });\n\n Object.keys(uploaderCallbacks).forEach(key => {\n multipartS3Uploader.addCallback(key, uploaderCallbacks[key]);\n });\n\n cleanupFunction = () => {\n Object.keys(recorderCallbacks).forEach(key => {\n screenRecorder.removeCallback(key, recorderCallbacks[key]);\n });\n\n Object.keys(uploaderCallbacks).forEach(key => {\n multipartS3Uploader.removeCallback(key, uploaderCallbacks[key]);\n });\n\n multipartS3Uploader.removeCallback(\n UPLOAD_EVENT.onAbort,\n cleanupFunction\n );\n };\n\n multipartS3Uploader.addCallback(UPLOAD_EVENT.onAbort, cleanupFunction);\n\n handleCreateRecording();\n };\n\n screenRecorder.addCallback(\n SCREEN_RECORDER_EVENT.onStart,\n handleOnScreenRecorderStart\n );\n\n screenRecorder.addCallback(\n SCREEN_RECORDER_EVENT.onDiscardDuringCountdown,\n onDiscard\n );\n\n return () => {\n screenRecorder.revokePermissions();\n screenRecorder.resetState();\n cleanupFunction();\n };\n }, []);\n\n useEffect(() => {\n if (!isUploadStatus(UPLOAD_STATUS.insufficient_data)) return;\n\n handleDiscardRecording();\n }, [uploadStatus]);\n\n const shouldShowSafariExtensionCalloutToStartRecording =\n isRecorderStatus(SCREEN_RECORDER_STATUS.idle) &&\n IS_SAFARI_EXTENSION &&\n error === SCREEN_RECORDER_ERROR.None;\n\n if (error === SCREEN_RECORDER_ERROR.UnSupportedBrowser) {\n return <UnSupportedBrowser />;\n }\n\n if (error === SCREEN_RECORDER_ERROR.FailedToStart) {\n return (\n <div className=\"flex h-screen w-full flex-col items-center justify-center gap-4\">\n <Callout\n className=\"p-5\"\n data-cy=\"recorder-unsupported-browser-callout\"\n style=\"danger\"\n >\n {t(\"neetoMediaRecorder.notSupportedError\")}\n </Callout>\n <Button\n label={t(\"neetoMediaRecorder.record.retry\")}\n size=\"large\"\n onClick={() => window.location.reload()}\n />\n </div>\n );\n }\n\n const isBeingUploadedOrHasErrorUploading = isUploadStatus(\n UPLOAD_STATUS.uploading,\n UPLOAD_STATUS.error\n );\n\n if (hasRecordingDiscarded({ recorderStatus, uploadStatus })) {\n return <AbortUpload />;\n }\n\n if (\n isRetryUpload ||\n (isRecorderStatus(SCREEN_RECORDER_STATUS.stopped) &&\n (isCreatingRecording || isBeingUploadedOrHasErrorUploading))\n ) {\n return (\n <UploadingInProgress\n {...{ isRetryUpload, recording, uploadProgress, uploadStatus }}\n onDiscard={handleDiscardRecording}\n onRetryUpload={handleReUpload}\n />\n );\n }\n\n if (\n isRecorderStatus(SCREEN_RECORDER_STATUS.stopped) &&\n isUploadStatus(UPLOAD_STATUS.completed)\n ) {\n return (\n <div className=\"h-screen w-full\">\n <UseDesktopAppCallout />\n <PageLoader />\n </div>\n );\n }\n\n return (\n <div className=\"flex h-screen w-full flex-col items-center justify-start py-10 xl:py-14 2xl:py-20\">\n <div className={classNames(\"w-full max-w-3xl\")}>\n <UseDesktopAppCallout />\n {error === SCREEN_RECORDER_ERROR.InsufficientData && (\n <Callout\n className=\"mb-2 p-3\"\n data-cy=\"recorder-insufficient-data-error-callout\"\n style=\"danger\"\n >\n {t(\"neetoMediaRecorder.insufficientDataError\")}\n </Callout>\n )}\n {error === SCREEN_RECORDER_ERROR.NotAllowedError && (\n <div className=\"flex flex-col items-center\">\n <Typography className=\"mb-2\" style=\"h3\">\n {t(\"neetoMediaRecorder.record.screenSharePermissionDeniedTitle\", {\n appName,\n })}\n </Typography>\n <Typography>\n <Trans\n i18nKey=\"neetoMediaRecorder.record.screenSharePermissionDenied\"\n components={{\n Bold: <Typography component=\"span\" weight=\"bold\" />,\n }}\n />\n </Typography>\n </div>\n )}\n {error === SCREEN_RECORDER_ERROR.MicPermissionDenied && (\n <div className=\"flex flex-col items-center\">\n <Typography className=\"mb-2\" style=\"h3\">\n {t(\"neetoMediaRecorder.record.micPermissionDeniedTitle\", {\n appName,\n })}\n </Typography>\n <Typography>\n {t(\"neetoMediaRecorder.record.micPermissionDeniedMessage\")}\n </Typography>\n <AllowMicAccess />\n </div>\n )}\n {isRecorderStatus(SCREEN_RECORDER_STATUS.acquiring_media) && (\n <Callout\n className=\"mb-2 p-3\"\n data-cy=\"recorder-grant-permission-info-callout\"\n style=\"info\"\n >\n {t(\"neetoMediaRecorder.record.grantPermissionMessage\")}\n </Callout>\n )}\n {shouldShowSafariExtensionCalloutToStartRecording && (\n <Callout\n className=\"mx-auto mb-2 w-1/2 p-3\"\n data-cy=\"recorder-start-recording-info-callout\"\n style=\"info\"\n >\n {t(\"neetoMediaRecorder.record.clickToStartRecording\")}\n </Callout>\n )}\n {shouldShowTimeLimitWarning && (\n <Callout\n className=\"mx-auto mb-2 w-1/2 p-3\"\n data-cy=\"recorder-time-limit-warning-callout\"\n style=\"warning\"\n >\n <Typography component=\"span\" style=\"body2\">\n <Trans\n i18nKey=\"neetoMediaRecorder.record.timeLimitWarning\"\n components={{\n Bold: <Typography component=\"span\" weight=\"bold\" />,\n }}\n values={{\n duration: getRecorderTimeLimitInHumanFormat(\n screenRecorder.timeLimit\n ),\n endsIn: getRecorderTimeLimitInHumanFormat(\n screenRecorder.timeLimit - elapsedTime\n ),\n }}\n />\n </Typography>\n </Callout>\n )}\n {isRecorderStatus(\n SCREEN_RECORDER_STATUS.media_acquired,\n SCREEN_RECORDER_STATUS.restarting\n ) && (\n <div\n className=\"neeto-ui-rounded-lg mx-auto mb-8 flex w-full max-w-4xl flex-col items-center justify-center p-12\"\n data-cy=\"recorder-countdown-wrapper\"\n >\n <div className=\"relative mb-8\">\n <div className=\"relative flex h-32 w-32 items-center justify-center\">\n <svg\n className=\"absolute h-32 w-32 -rotate-90 transform\"\n viewBox=\"0 0 120 120\"\n >\n <circle\n cx=\"60\"\n cy=\"60\"\n fill=\"transparent\"\n r=\"50\"\n stroke=\"rgba(2, 128, 105, 0.2)\"\n strokeWidth=\"4\"\n />\n <circle\n className=\"transition-all duration-1000 ease-linear\"\n cx=\"60\"\n cy=\"60\"\n fill=\"transparent\"\n r=\"50\"\n stroke=\"rgb(2, 128, 105)\"\n strokeDasharray={2 * Math.PI * 50}\n strokeLinecap=\"round\"\n strokeWidth=\"4\"\n strokeDashoffset={\n 2 * Math.PI * 50 * (countdownTimeLeft / COUNTDOWN_TIME)\n }\n />\n </svg>\n <Typography className=\" text-6xl font-bold\" weight=\"semibold\">\n {countdownTimeLeft}\n </Typography>\n </div>\n </div>\n <Typography className=\"mb-4\" style=\"h3\">\n {t(\"neetoMediaRecorder.record.startsIn\")}\n </Typography>\n </div>\n )}\n {isRecorderStatus(\n SCREEN_RECORDER_STATUS.recording,\n SCREEN_RECORDER_STATUS.paused\n ) && <Timer />}\n </div>\n <Controls\n {...{ onDiscard, setIsDiscardAlertOpen, setIsRestartAlertOpen }}\n className=\"mt-5\"\n />\n <Alert\n isOpen={isDiscardAlertOpen}\n message={t(\"neetoMediaRecorder.record.discardConfirmation.message\")}\n submitButtonLabel={t(\"neetoMediaRecorder.record.discard\")}\n title={t(\"neetoMediaRecorder.record.discardConfirmation.title\")}\n onClose={onDiscardAlertClose}\n onSubmit={handleConfirmDiscard}\n />\n <Alert\n isOpen={isRestartAlertOpen}\n message={t(\"neetoMediaRecorder.record.restartConfirmation.message\")}\n submitButtonLabel={t(\"neetoMediaRecorder.record.restart\")}\n title={t(\"neetoMediaRecorder.record.restartConfirmation.title\")}\n onClose={onRestartAlertClose}\n onSubmit={handleConfirmRestart}\n />\n </div>\n );\n};\n\nexport default forwardRef(MediaRecorder);\n"],"names":["_typeof","arrayLikeToArray","arrayWithHoles","iterableToArrayLimit","unsupportedIterableToArray","nonIterableRest","require$$0","ONE_SECOND_IN_MILLISECONDS","ONE_MINUTE_IN_MILLISECONDS","ONE_HOUR_IN_MILLISECONDS","UPLOAD_STATUS","uploading","completed","aborting","insufficient_data","error","HAS_CHROME_NAMESPACE","chrome","IS_EXTENSION","isNotNil","extension","platform","name","MIME_TYPE","mp4","webmH264","getSupportedMimeType","formatTime","time","Math","floor","toString","padStart","getTimeString","date","hours","minutes","seconds","concat","downloadRecordingBlob","blob","blobUrl","URL","createObjectURL","linkElement","document","createElement","href","download","body","appendChild","dispatchEvent","MouseEvent","bubbles","cancelable","view","window","removeChild","revokeObjectURL","hasRecordingDiscarded","_ref","recorderStatus","uploadStatus","SCREEN_RECORDER_STATUS","stopped","getRecorderTimeLimitInHumanFormat","timeInMs","getDeviceInfo","_ref2","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_yield$chrome$storage","_platform$os","mimeType","isCameraEnabled","_args","arguments","wrap","_callee$","_context","prev","next","length","undefined","storage","local","get","t2","sent","t1","t3","isCameraOn","t0","abrupt","os","app","runtime","getManifest","version","browser","isMicEnabled","screenRecorder","audioConfiguration","displaySurface","stop","apply","isMp4Supported","includes","baseUrl","create","payload","axios","post","recording","_objectSpread","isMp4","deviceInfo","recordingsApi","useCreateRecording","options","useMutation","mutationFn","AbortUpload","withT","t","_jsx","className","children","_jsxs","Typography","style","Spinner","objectWithoutPropertiesLoose","PlayIcon","_ref$size","size","other","_objectWithoutProperties","_excluded","height","viewBox","width","xmlns","d","fill","StopIcon","_ref2$size","_excluded2","RestartIcon","_ref3","_ref3$size","_excluded3","clipRule","fillRule","useRecorderStatus","useRecorderStore","_useRecorderStore","store","status","shallow","isStatus","_len","statuses","Array","_key","Controls","_ref$className","setIsRestartAlertOpen","setIsDiscardAlertOpen","onDiscard","_useTranslation","useTranslation","startRecording","pauseRecording","stopRecording","resumeRecording","setAudioConfiguration","_useRecorderStatus","hasRecordingStarted","paused","shouldShowSelectScreenButton","SCREEN_RECORDER_ERROR","NotAllowedError","IS_SAFARI_EXTENSION","idle","shouldShowGrantMicPermissionButton","MicPermissionDenied","classNames","_defineProperty","isNotEmpty","Button","icon","Computer","label","loading","acquiring_media","onClick","Delete","setState","Unlock","iconSize","tooltipProps","content","position","Pause","getAnalyser","_screenRecorder$getAu","stream","getAudioStream","call","ctx","AudioContext","webkitAudioContext","source","createMediaStreamSource","analyser","createAnalyser","fftSize","connect","data","Uint8Array","hasChrome","onMessage","useAudioIsCapturing","isMicOn","_useState","useState","_useState2","_slicedToArray","hasAudio","setHasAudio","_useState3","_useState4","disable","setDisable","_useState5","_useState6","timerStarted","setTimerStarted","timerRef","useRef","remainingRef","MIC_NOT_WORKING_SILENCE_TIMEOUT","startedAtRef","clearTimer","current","clearTimeout","armTimer","logger","info","Date","now","setTimeout","pauseTimer","elapsed","max","resumeTimer","reset","useCallback","useEffect","handleMessage","message","type","addListener","_chrome","_chrome$runtime","_chrome$runtime$onMes","removeListener","noop","analyserObj","rafId","loop","isSilent","getByteTimeDomainData","every","v","requestAnimationFrame","cancelAnimationFrame","disconnect","close","_callbacks","callbacks","SCREEN_RECORDER_EVENT","onStart","onRestart","onResume","onPause","onStop","disableMicNotWorkingWarning","Object","entries","forEach","ev","fn","addCallback","_ref4","_ref5","removeCallback","useHandleErrors","isRecorderStatus","UnSupportedBrowser","FailedToStart","cleanupFunction","navigator","permissions","query","then","micPermission","handleChange","state","addEventListener","removeEventListener","Timer","elapsedTime","weight","Callout","generatePublicUrl","recordingId","baseURL","location","origin","UseDesktopAppCallout","component","Trans","i18nKey","values","appName","components","Download","UploadingInProgress","uploadProgress","onRetryUpload","isRetryUpload","setBaseURL","isDiscardAlertOpen","fetchBaseURL","hasFocus","id","isEmpty","copyToClipboard","handleRecordingBlobDownload","_recording$title","getWebmMediaBlob","title","ProgressBar","progressPercentage","CopyToClipboardButton","Copy","value","disabled","Refresh","Close","Alert","isOpen","submitButtonLabel","onClose","onSubmit","AllowMicAccess","xmlnsXlink","clipPath","rx","y","transform","opacity","stroke","strokeWidth","cx","cy","r","strokeOpacity","mask","patternContentUnits","xlinkHref","restartRecording","discardRecording","globalProps","_window","MediaRecorder","ref","_ref$onUploadComplete","onUploadComplete","_ref$onDiscard","_ref$appName","_ref$mimeType","folderId","_ref$isMicOn","_ref$onAudioNotCaptur","onAudioNotCapturing","_ref$onError","onError","isRestartAlertOpen","setUploadProgress","_useState7","_useState8","setIsRetryUpload","recordingRef","_useAudioIsCapturing","createRecordingPromise","countdownTimeLeft","showTimeLimitWarning","_useMultipartS3Upload","useMultipartS3UploadStatus","isUploadStatus","shouldShowTimeLimitWarning","_useCreateRecording","onSuccess","uploadId","multipartS3Uploader","getMultipartS3Uploader","setRecording","setMimeType","getState","completeUpload","handleDiscardRecording","forceAbort","createRecording","mutateAsync","isCreatingRecording","isPending","_useCreateRecording$d","_useCreateRecording$d2","_useCreateRecording$d3","elapsedTimeInSec","round","checkDelay","hasData","setError","InsufficientData","handleCreateRecording","handleUploadComplete","_recordingRef$current","_callee2","_ref5$forceAbort","_args2","_callee2$","_context2","abortUpload","handleRestartRecording","onDiscardAlertClose","onRestartAlertClose","handleConfirmDiscard","handleConfirmRestart","handleUploadError","handleUploadProgress","progress","handleReUpload","_uploaderCallbacks","newMultipartS3Uploader","initialize","push","uploaderCallbacks","UPLOAD_EVENT","onComplete","onProgress","onAbort","keys","key","useImperativeHandle","handleOnScreenRecorderStart","_recorderCallbacks","_uploaderCallbacks2","recorderCallbacks","onDataAvailable","_callee3","_callee3$","_context3","onDiscardDuringCountdown","revokePermissions","resetState","shouldShowSafariExtensionCalloutToStartRecording","None","reload","isBeingUploadedOrHasErrorUploading","PageLoader","Bold","duration","timeLimit","endsIn","media_acquired","restarting","strokeDasharray","PI","strokeLinecap","strokeDashoffset","COUNTDOWN_TIME","forwardRef"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,21,22]}
|